/* Playfair for navigation landmarks; Inter for all working content. */
:root{--st-body:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--st-heading:"Playfair Display",Georgia,serif}
html[data-theme=light]{--sc-bg:#f4f8f6;--sc-surface:#fff;--sc-surface-soft:#edf4f0;--sc-surface-raised:#fff;--sc-border:#d4e0d9;--sc-text:#24332e;--sc-muted:#53655d}
html:lang(ar),html:lang(ur),html:lang(fa),html:lang(pa-Arab),html:lang(ks){--st-body:"Noto Sans Arabic","Segoe UI",Tahoma,sans-serif;--st-heading:var(--st-body)}
html:lang(hi){--st-body:"Noto Sans Devanagari","Nirmala UI",sans-serif;--st-heading:var(--st-body)}
html:lang(pa-Guru){--st-body:"Noto Sans Gurmukhi",Raavi,sans-serif;--st-heading:var(--st-body)}
html:lang(zh){--st-body:Inter,"PingFang SC","Microsoft YaHei",sans-serif;--st-heading:var(--st-body)}
html:lang(ja){--st-body:Inter,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;--st-heading:var(--st-body)}
html:lang(ko){--st-body:Inter,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;--st-heading:var(--st-body)}
html body,html body :is(button,input,select,textarea,nav,.timer,#timer,#clock,.task,.grid-block,.today-timeline-item,#currentTask){font-family:var(--st-body)!important}
html body :is(h1,h2,h3,.today-greeting,.today-section-label){font-family:var(--st-heading)!important;font-weight:600!important;font-style:normal!important;text-transform:none!important;letter-spacing:-.015em!important;line-height:1.25!important;overflow-wrap:normal;word-wrap:normal}
html body :is(#currentTask,.task h3,.grid-block h3,.today-timeline-item h3){font-family:var(--st-body)!important;font-weight:600!important}
html body :is(.brand,.login-brand,.brand-title,.wordmark){font-family:"Segoe UI",Arial,sans-serif!important}
html body :is(.timer,#timer,#clock,#groupClock,[role=timer]){font-family:Inter,ui-sans-serif,"Segoe UI",sans-serif!important;font-variant-numeric:tabular-nums;font-weight:500!important;letter-spacing:-.035em}
html body :is(.today-kicker,.eyebrow,.kicker){text-transform:none!important;letter-spacing:.03em!important}
html body :is(h2,.today-section-label){font-size:clamp(1.25rem,2.1vw,1.65rem)!important}
html body .today-greeting{font-size:clamp(1.8rem,3vw,2.65rem)!important}
html body .login-copy h1{font-size:clamp(2.8rem,4.6vw,4.6rem)!important;font-weight:500!important;max-width:11ch}
html body .login-heading h2{font-size:clamp(1.65rem,2.5vw,2.3rem)!important}
.login-copy p{max-width:29ch;color:#f0f5f2!important;font-size:clamp(1rem,1.5vw,1.25rem)!important;line-height:1.65!important}
.login-scene:after{background:linear-gradient(90deg,rgba(8,29,21,.68),rgba(8,29,21,.28))!important}
html body{--login-muted:#53645e}
html[data-theme=dark] body{--login-muted:#b4c5be}
#accountGuest{display:flex;flex-direction:column}
.login-guest-entry{order:0}.login-divider{order:1}#loginStartForm,#loginCredentials{order:2}
.login-guest-entry .login-guest{background:#bcead7;color:#153b2c;border-color:#70bc9d;margin:0}
.login-guest-entry .login-guest:hover{background:#a7e0c7}
.login-guest-note{line-height:1.5;margin-top:12px!important}
#loginStartForm .login-button{background:transparent;color:var(--login-ink);border-color:var(--login-border);margin-top:16px}
.credentials-open #loginCredentials{order:0}.credentials-open .login-divider{order:1}.credentials-open .login-guest-entry{order:2}
.credentials-open .login-guest{background:transparent;color:var(--login-accent);border-color:var(--login-accent)}
.login-panel{padding-top:40px!important;padding-bottom:32px!important}.login-footer{margin-top:28px!important}
.st-start{position:relative;margin:0 0 24px;padding:24px 28px;border-inline-start:3px solid var(--sc-accent-strong,#168365);background:var(--sc-accent-soft,#e6f5ee);border-radius:12px;color:var(--sc-text,#203b30)}
.st-start h2{margin:0 38px 10px 0}.st-start p{margin:0 0 18px;line-height:1.65;max-width:65ch}
.st-start-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
html body .st-start-actions button{min-height:44px;padding:10px 16px;white-space:normal}
.st-start-dismiss{position:absolute;inset-inline-end:12px;top:12px;min-width:44px;min-height:44px;padding:8px;border:0;background:transparent;color:inherit;font-size:22px}
.st-save-help{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 18px;color:var(--sc-muted,#526b60);font-size:.85rem;line-height:1.5}
html body .st-save-help button{border:0;background:transparent;color:var(--sc-accent-strong,#17654e);text-decoration:underline;text-underline-offset:3px;min-height:44px;padding:6px 8px}
.st-first-empty .st-ux-empty-add{display:none!important}
.st-first-empty .focus.st-ux-idle{display:none!important}
html[data-theme] body#studyTickApp.today-dashboard-preview.st-first-empty:not(.focus-view) .focus.st-ux-idle{display:none!important}
html[data-theme] body#studyTickApp .restart-strip:not(.is-visible){display:none!important}
html[data-theme] body#studyTickApp .st-start-actions button.primary{background:#184e3a!important;color:#fff!important;border:1px solid #184e3a!important;font-weight:600!important}
html[data-theme=dark] body#studyTickApp .st-start-actions button.primary{background:#bcead7!important;color:#153b2c!important;border-color:#bcead7!important}
html[data-theme] body#studyTickApp #taskDialog #uxTimeSuggestion[hidden]{display:none!important}
.st-first-empty #studyTickAccountEntry{margin-bottom:8px!important}
#stCompletionFeedback{margin:12px 0;color:var(--sc-accent-strong,#17654e);font-size:.9rem;line-height:1.5}
#stCompletionFeedback:empty{display:none}
html[data-theme] body#studyTickApp.focus-view :is(#stFirstSession,#stResumeActions,.st-save-help,#stCompletionFeedback){display:none!important}
#stStorageDialog p{line-height:1.7}
html body dialog :is(input,textarea,select){scroll-margin-block:28px;font-size:16px!important}
html body :is(a,button,input,textarea,select,summary):focus-visible{outline:3px solid #006b52!important;outline-offset:3px!important}
html[data-theme=dark] body :is(a,button,input,textarea,select,summary):focus-visible{outline-color:#90e4c2!important}
html body [hidden]{display:none!important}
html body .language-picker{min-width:0;max-width:100%;flex-wrap:wrap!important}
html body .language-picker select{min-width:0;max-width:100%}
html[data-theme] body#studyTickApp.today-dashboard-preview [hidden]{display:none!important}
html[data-theme] body#studyTickApp #stReportSettings{margin:12px 0;padding:0;border:0;background:transparent}
html[data-theme] body#studyTickApp #stReportSettings>summary{min-height:44px;padding:10px 0;font-family:var(--st-body);font-size:.9rem;font-weight:500;cursor:pointer}
@media(max-width:700px){html body .today-greeting{font-size:clamp(1.65rem,7vw,2rem)!important}.st-start{padding:20px 16px;margin-bottom:18px}.st-start-actions{display:grid;grid-template-columns:1fr 1fr}.st-start-actions .primary{grid-column:1/-1}.st-start h2{margin-inline-end:32px}.st-start p{font-size:.95rem}.login-panel{justify-content:flex-start!important;padding:32px 20px!important}.login-heading{margin-bottom:24px!important}.login-input{height:52px!important}.login-button{min-height:52px!important}.login-divider{margin:20px 0!important}.login-label{margin-top:0}.login-content.credentials-open .login-label{margin-top:16px}.login-nav{gap:10px}.login-brand{font-size:21px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}}
