.focus-page{padding:48px 0 96px}html:has(.focus-page){scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink-soft) 55%,transparent) transparent}body:has(.focus-page)::-webkit-scrollbar{width:10px;height:10px}body:has(.focus-page)::-webkit-scrollbar-track{background:transparent}body:has(.focus-page)::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink-soft) 45%,transparent);border-radius:999px}body:has(.focus-page)::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--ink-soft) 65%,transparent)}.focus-top-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,540px);align-items:end;column-gap:24px;margin-bottom:20px}.focus-top-row .focus-head{min-width:0}@media(max-width:760px){.focus-top-row{grid-template-columns:1fr;row-gap:0}}.focus-head{max-width:640px;transition:max-height .42s cubic-bezier(.22,1,.36,1),opacity .26s ease,margin-bottom .42s ease;overflow:hidden;max-height:210px}.focus-head .eyebrow{color:var(--accent)}.focus-head h1{margin:0}.focus-lede{max-width:640px;margin:16px 0 40px;transition:max-height .42s cubic-bezier(.22,1,.36,1),opacity .26s ease,margin .42s ease;overflow:hidden;max-height:80px}body.is-focus-running .focus-lede{max-height:0;opacity:0;margin:0;pointer-events:none}@media(prefers-reduced-motion:reduce){.focus-lede{transition-duration:1ms}}body.is-focus-running .focus-head{max-height:0;opacity:0;pointer-events:none}.site-header{transition:max-height .42s cubic-bezier(.22,1,.36,1),opacity .26s ease;max-height:100px}body.is-focus-running .site-header{max-height:0;opacity:0;overflow:hidden;pointer-events:none}.focus-bar{display:none;position:sticky;top:0;z-index:90;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);margin-top:-48px;margin-bottom:24px;background:color-mix(in srgb,var(--header-bg) 92%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}body.is-focus-running .focus-bar{display:block}.focus-bar[hidden]{display:none}.focus-bar-inner{max-width:var(--container);margin:0 auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.focus-bar-logo{display:inline-flex;align-items:center;gap:10px;min-width:0;color:var(--ink);transition:color .2s ease}.focus-bar-logo:hover,.focus-bar-logo:focus-visible{color:var(--accent)}.focus-bar-logo-label{font-family:var(--font-display);font-weight:700;font-size:.92rem;white-space:nowrap;overflow:hidden;max-width:0;opacity:0;transition:max-width .26s ease,opacity .2s ease}.focus-bar-logo:hover .focus-bar-logo-label,.focus-bar-logo:focus-visible .focus-bar-logo-label{max-width:160px;opacity:1}@media(hover:none){.focus-bar-logo-label{max-width:160px;opacity:1}}.focus-bar-actions{display:flex;align-items:center;gap:8px;flex:none}.focus-bar-btn{flex:none;width:36px;height:36px;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--line);color:var(--ink-soft);transition:border-color .2s ease,color .2s ease}.focus-bar-btn svg{width:15px;height:15px}.focus-bar-btn:hover{border-color:var(--accent);color:var(--accent)}.focus-bar-btn[aria-disabled=true]{opacity:.5;cursor:default}.focus-bar-btn[aria-disabled=true]:hover{border-color:var(--line);color:var(--ink-soft)}.focus-bar-minimal-btn{flex:none;display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border-radius:999px;background:none;border:1px solid var(--line);color:var(--ink-soft);font-weight:600;font-size:.82rem;opacity:.6;cursor:default}.focus-bar-minimal-btn svg{width:15px;height:15px}.focus-bar-theme-toggle{flex:none}.focus-bar-help-wrap{position:relative;flex:none}.focus-bar-help-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:20;min-width:220px;padding:10px 14px;background:var(--paper-card);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-soft)}.focus-bar-help-popover[hidden]{display:none}.focus-bar-help-popover p{display:flex;align-items:center;gap:10px;margin:0 0 8px;font-size:.84rem;color:var(--ink)}.focus-bar-help-popover p:last-child{margin-bottom:0}.focus-bar-help-popover p.focus-bar-help-soon{opacity:.55}.focus-keycap{flex:none;display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:22px;padding:0 6px;border-radius:6px;background:var(--paper-soft);border:1px solid var(--line);box-shadow:0 1px 0 var(--line);font-family:var(--font-display);font-size:.72rem;font-weight:700;color:var(--ink);letter-spacing:.02em}.focus-bar-exit{flex:none;display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-weight:600;font-size:.84rem;color:var(--ink-soft);transition:border-color .2s ease,color .2s ease}.focus-bar-exit svg{width:15px;height:15px}.focus-bar-exit:hover{border-color:var(--accent);color:var(--accent)}body:has([data-focus-active][data-mode=exam][data-status=running]) .focus-bar-exit{display:none}@media(max-width:480px){.focus-bar-exit span{display:none}.focus-bar-exit{padding:8px}.focus-bar-inner{padding:10px 16px;gap:8px}}@media(prefers-reduced-motion:reduce){.focus-head,.site-header,.focus-bar-logo-label{transition-duration:1ms}}.focus-session-header{display:flex;align-items:center;gap:14px;min-width:0;max-width:100%;grid-column:2;justify-self:end;align-self:end}body.is-focus-running .focus-session-header{grid-column:1;justify-self:start;align-self:start}.focus-session-header[hidden]{display:none}@media(max-width:760px){.focus-session-header{grid-column:1;justify-self:start;margin-top:24px;margin-bottom:16px}}.focus-session-header-icon{flex:none;width:64px;height:64px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}.focus-session-header-icon svg{width:32px;height:32px}.focus-session-header-text{min-width:0;flex:0 1 auto}.focus-session-header-name{font-family:var(--font-display);font-weight:800;font-size:1.9rem;line-height:1.15;color:var(--ink);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.focus-session-header-meta{font-size:1.05rem;line-height:1.35;color:var(--ink-soft);margin:4px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.focus-session-header-meta:empty{display:none}@media(max-width:480px){.focus-session-header{gap:12px}.focus-session-header-icon{width:48px;height:48px;border-radius:14px}.focus-session-header-icon svg{width:24px;height:24px}.focus-session-header-name{font-size:1.4rem}.focus-session-header-meta{font-size:.92rem}}.focus-shell{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:28px;align-items:start}@media(max-width:960px){.focus-shell{grid-template-columns:1fr}}.focus-visual{position:relative;overflow:hidden;background:var(--ink-surface);color:var(--on-surface);border-radius:var(--radius-xl);padding:30px 26px;min-height:220px;display:flex;flex-direction:column;justify-content:space-between;gap:18px;box-shadow:var(--shadow-soft)}@media(max-width:960px){.focus-visual{min-height:0;flex-direction:row;align-items:center;padding:22px 24px}}@media(max-width:560px){.focus-visual{flex-direction:column;align-items:flex-start;text-align:left}}.focus-visual-ring{position:absolute;top:50%;left:50%;width:260px;height:260px;margin:-130px 0 0 -130px;border:1px solid var(--on-surface-line);border-radius:38%;opacity:.45;pointer-events:none}@media(prefers-reduced-motion:no-preference){.focus-visual-ring{animation:focus-ring-spin 46s linear infinite}}@keyframes focus-ring-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.focus-visual-ring{animation:none}}.focus-visual-badge{position:relative;z-index:1;flex:none;width:64px;height:64px;border-radius:20px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--on-surface) 10%,transparent);border:1px solid var(--on-surface-line);color:var(--band-4);transition:transform .32s cubic-bezier(.22,1,.36,1),background .24s ease}.focus-visual-badge.is-swapping{transform:scale(.86) rotate(-6deg)}.focus-visual-badge svg{width:30px;height:30px;display:block}.focus-visual-badge-fallback{font-family:var(--font-display);font-weight:800;font-size:1.3rem}.focus-visual-copy{position:relative;z-index:1}.focus-visual-eyebrow{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--on-surface-soft);margin:0 0 6px}.focus-visual-title{font-family:var(--font-display);font-weight:700;font-size:1.15rem;color:var(--on-surface);margin:0;transition:opacity .22s ease}.focus-visual-hint{font-size:.82rem;color:var(--on-surface-soft);margin:6px 0 0;line-height:1.5}.focus-card{background:var(--paper-card);border:1px solid var(--line);border-radius:var(--radius-xl);padding:32px;box-shadow:var(--shadow-tight)}@media(max-width:620px){.focus-card{padding:24px 18px}}.focus-step{margin-bottom:30px}.focus-step:last-of-type{margin-bottom:0}.focus-step-label{display:flex;align-items:baseline;gap:8px;font-family:var(--font-display);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin:0 0 14px}.focus-step-label .focus-step-num{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);font-size:.7rem}.focus-chip-grid{display:flex;flex-wrap:wrap;gap:9px}.focus-chip{display:inline-flex;align-items:center;gap:9px;padding:10px 16px;border-radius:999px;border:1.5px solid var(--line);background:var(--paper);color:var(--ink);font-family:var(--font-body);font-weight:600;font-size:.88rem;transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease;max-width:100%}.focus-chip:hover{border-color:var(--accent);transform:translateY(-1px)}.focus-chip:active{transform:translateY(0) scale(.98)}.focus-chip.is-selected{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-tight)}.focus-chip.is-selected:hover{transform:translateY(-1px)}.focus-chip-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex:none;color:currentColor}.focus-chip-icon svg{width:100%;height:100%;display:block}.focus-chip-label{overflow-wrap:break-word;max-width:260px}@media(max-width:420px){.focus-chip-label{max-width:62vw}}.focus-chip--other{border-style:dashed}.focus-chip--other.is-selected{border-style:solid}.focus-chip--other.is-editing{border-style:solid;border-color:var(--accent)}.focus-chip-icon--plus svg{stroke:currentColor}.focus-chip-clear{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;flex:none;background:color-mix(in srgb,var(--on-accent) 25%,transparent);font-size:.72rem;line-height:1;margin-left:-2px}.focus-inline-input-wrap{display:flex;align-items:center;gap:6px;max-width:100%;overflow:hidden;max-height:0;opacity:0;margin-top:0;pointer-events:none;transform:translateY(-4px);transition:max-height .32s cubic-bezier(.22,1,.36,1),opacity .22s ease,margin-top .32s ease,transform .28s ease}.focus-inline-input-wrap.is-open{max-height:60px;opacity:1;margin-top:10px;pointer-events:auto;transform:none}@media(prefers-reduced-motion:reduce){.focus-inline-input-wrap{transition-duration:1ms}}.focus-inline-input{width:100%;max-width:280px;padding:9px 16px;border-radius:999px;border:1.5px solid var(--accent);background:var(--paper-card);color:var(--ink);font-family:inherit;font-size:.88rem;font-weight:600}.focus-inline-input::placeholder{color:var(--ink-soft);font-weight:500}.focus-inline-input:focus-visible,.focus-task-edit-input:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--accent)}.focus-inline-input-submit{flex:none;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--accent);color:var(--on-accent);border:none;transition:background .2s ease,transform .2s ease}.focus-inline-input-submit:hover{background:var(--accent-hover);transform:scale(1.05)}.focus-inline-input-submit svg{width:15px;height:15px}.focus-step--grade{overflow:hidden;max-height:0;opacity:0;margin-bottom:0;pointer-events:none;transition:max-height .36s cubic-bezier(.22,1,.36,1),opacity .24s ease,margin-bottom .36s ease}.focus-step--grade.is-open{max-height:200px;opacity:1;margin-bottom:30px;pointer-events:auto}@media(prefers-reduced-motion:reduce){.focus-step--grade{transition-duration:1ms}}.focus-chip--grade{min-width:46px;justify-content:center;padding:10px 0}.focus-advanced-toggle{display:inline-flex;align-items:center;gap:6px;background:none;border:none;padding:0;margin-bottom:18px;font-family:var(--font-display);font-weight:700;font-size:.84rem;color:var(--accent)}.focus-advanced-toggle:hover{color:var(--accent-hover)}.focus-advanced-toggle-chevron{display:flex;transition:transform .26s cubic-bezier(.22,1,.36,1)}.focus-advanced-toggle[aria-expanded=true] .focus-advanced-toggle-chevron{transform:rotate(180deg)}.focus-advanced-toggle-chevron svg{width:14px;height:14px}.focus-advanced-panel{overflow:hidden;max-height:0;opacity:0;transition:max-height .38s cubic-bezier(.22,1,.36,1),opacity .26s ease,margin .38s ease}.focus-advanced-panel.is-open{max-height:240px;opacity:1;margin-bottom:26px}@media(prefers-reduced-motion:reduce){.focus-advanced-panel{transition-duration:1ms}}.focus-summary{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:18px 22px;border-radius:var(--radius-lg);background:var(--paper-soft);border:1px solid var(--line);margin-top:8px}.focus-summary-main{flex:1 1 220px;min-width:0;display:flex;align-items:center;gap:12px}.focus-summary-icon{flex:none;width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);transition:background .22s ease,color .22s ease}.focus-summary-icon svg{width:19px;height:19px}.focus-summary-text{min-width:0}.focus-summary-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin:0 0 3px}.focus-summary-name-row{display:block;min-width:0;line-height:1.4}.focus-summary-name{display:inline;vertical-align:middle;font-family:var(--font-display);font-weight:700;font-size:1.02rem;line-height:1.4;color:var(--ink);margin:0;overflow-wrap:break-word}.focus-summary-name.is-placeholder{color:var(--ink-soft);font-weight:600}.focus-summary-rename{flex:none;width:26px;height:26px;border-radius:50%;margin:-3px 0 0 4px;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;background:none;border:none;color:var(--ink-soft);transition:color .2s ease,background .2s ease}.focus-summary-rename:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.focus-summary-rename svg{width:14px;height:14px}.focus-summary-rename-input{width:100%;max-width:320px;padding:7px 12px;border-radius:10px;border:1.5px solid var(--accent);background:var(--paper-card);color:var(--ink);font-family:var(--font-display);font-weight:700;font-size:1rem}.focus-summary-cta{flex:none}@media(max-width:560px){.focus-summary{flex-direction:column;align-items:stretch}.focus-summary-cta{width:100%;justify-content:center}}@media(prefers-reduced-motion:no-preference){.focus-card,.focus-visual,.focus-head{animation:focus-fade-rise .48s cubic-bezier(.22,1,.36,1) both}.focus-visual{animation-delay:40ms}.focus-card{animation-delay:90ms}}@keyframes focus-fade-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}[data-focus-scene].is-transitioning-out{opacity:0;transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease}@media(prefers-reduced-motion:reduce){[data-focus-scene].is-transitioning-out{transition-duration:1ms}}.focus-active{position:relative;display:flex;flex-direction:column;align-items:center;gap:26px;max-width:720px;margin:0 auto}@media(prefers-reduced-motion:no-preference){.focus-active{animation:focus-fade-rise .48s cubic-bezier(.22,1,.36,1) both}}.focus-active-main{display:contents}@media(min-width:860px){.focus-active{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,300px);column-gap:28px;row-gap:22px;align-items:start;max-width:980px}.focus-active-topbar,.focus-exam-fs-prompt{grid-column:1 / -1}.focus-active-main{display:flex;flex-direction:column;align-items:center;gap:26px;grid-column:1;min-width:0;width:100%}.focus-active-aside{grid-column:2}.focus-active-aside .focus-ambience-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1120px){.focus-active{grid-template-columns:minmax(0,1fr) minmax(300px,360px);column-gap:40px;max-width:1100px}}@media(min-width:1360px){.container:has(.focus-app[data-focus-screen=active]){max-width:1600px}.focus-active{grid-template-columns:minmax(0,1fr) minmax(560px,680px);column-gap:36px;max-width:1600px}.focus-tools.focus-active-aside{display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,320px);gap:20px}.focus-toolblock--tasks{grid-column:1;grid-row:1}.focus-toolblock--reminders{grid-column:1;grid-row:2}.focus-toolblock--sound{grid-column:2;grid-row:1 / span 2}.focus-active-aside .focus-sound-panel.is-open{max-height:640px}.focus-active-aside .focus-sound-panel.is-open[data-vinyl-active]{max-height:760px}}.focus-active-topbar{position:absolute;top:-60px;right:0;display:flex;align-items:center;justify-content:flex-end;gap:16px}@media(max-width:760px){.focus-active-topbar{position:static;width:100%;margin-bottom:8px}}.focus-active-exit{flex:none;display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-weight:600;font-size:.84rem;color:var(--ink-soft);transition:border-color .2s ease,color .2s ease}.focus-active-exit svg{width:15px;height:15px}.focus-active-exit:hover{border-color:var(--accent);color:var(--accent)}@media(max-width:480px){.focus-active-exit span{display:none}.focus-active-exit{padding:8px}}.focus-active-topbar-actions{flex:none;display:flex;align-items:center;gap:8px}[data-focus-active][data-mode=exam][data-status=running] .focus-active-topbar-actions .focus-active-exit{display:none}.focus-active-fs-toggle{flex:none;width:36px;height:36px;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--line);color:var(--ink-soft);transition:border-color .2s ease,color .2s ease}.focus-active-fs-toggle svg{width:15px;height:15px}.focus-active-fs-toggle:hover{border-color:var(--accent);color:var(--accent)}.focus-active-fs-toggle[hidden]{display:none}.focus-exam-menu-wrap{position:relative;flex:none}.focus-exam-menu-wrap[hidden]{display:none}.focus-exam-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:20;min-width:200px;padding:6px;background:var(--paper-card);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-soft)}.focus-exam-menu[hidden]{display:none}.focus-exam-menu-item{display:block;width:100%;text-align:left;padding:10px 12px;border-radius:8px;background:none;border:none;font-weight:600;font-size:.86rem;color:var(--ink);transition:background .16s ease}.focus-exam-menu-item:hover{background:var(--paper-soft)}.focus-active-config{width:100%;overflow:hidden;max-height:900px;opacity:1;transition:max-height .42s cubic-bezier(.22,1,.36,1),opacity .26s ease,margin-bottom .42s ease}[data-focus-active]:not([data-status=configuring]) .focus-active-config{max-height:0;opacity:0;margin-bottom:0;pointer-events:none}@media(prefers-reduced-motion:reduce){.focus-active-config{transition-duration:1ms}}.focus-mode-tabs{display:inline-flex;gap:3px;padding:4px;margin:0 auto 20px;background:var(--paper-soft);border-radius:999px}.focus-mode-tab{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;border-radius:999px;background:none;border:none;font-family:var(--font-display);font-weight:700;font-size:.86rem;color:var(--ink-soft);transition:background .2s ease,color .2s ease}.focus-mode-tab svg{width:16px;height:16px}.focus-mode-tab.is-active{background:var(--accent);color:var(--on-accent)}.focus-variant-switch{display:inline-flex;gap:3px;padding:3px;margin:0 auto 16px;background:var(--paper-soft);border-radius:999px}.focus-variant-tab{padding:7px 14px;border-radius:999px;background:none;border:none;font-weight:600;font-size:.82rem;color:var(--ink-soft);transition:background .2s ease,color .2s ease}.focus-variant-tab.is-active{background:var(--paper-card);color:var(--ink);box-shadow:var(--shadow-tight)}.focus-timer-config,.focus-pomodoro-config,.focus-exam-config{display:flex;flex-direction:column;align-items:center}.focus-timer-config[hidden],.focus-pomodoro-config[hidden],.focus-exam-config[hidden]{display:none}.focus-timer-config .focus-chip-grid,.focus-pomodoro-config .focus-chip-grid,.focus-exam-config .focus-chip-grid{justify-content:center}.focus-chip--preset.is-selected{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.focus-exam-config-note{max-width:420px;text-align:center;margin:0 0 16px;font-size:.86rem;color:var(--ink-soft)}.focus-custom-time{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;width:100%;overflow:hidden;max-height:0;opacity:0;margin-top:0;transition:max-height .36s cubic-bezier(.22,1,.36,1),opacity .24s ease,margin-top .36s ease}.focus-custom-time.is-open{max-height:160px;opacity:1;margin-top:18px}.focus-pomodoro-advanced{width:100%;display:flex;flex-direction:column;align-items:center;gap:14px;overflow:hidden;max-height:0;opacity:0;margin-top:0;transition:max-height .42s cubic-bezier(.22,1,.36,1),opacity .26s ease,margin-top .42s ease}.focus-pomodoro-advanced.is-open{max-height:640px;opacity:1;margin-top:20px}.focus-pomodoro-longbreak-fields{width:100%;max-width:360px;display:flex;flex-direction:column;gap:14px;overflow:hidden;max-height:0;opacity:0;margin-top:0;transition:max-height .34s cubic-bezier(.22,1,.36,1),opacity .22s ease,margin-top .34s ease;padding-left:18px;border-left:2px solid var(--line)}.focus-pomodoro-longbreak-fields.is-open{max-height:240px;opacity:1;margin-top:2px}@media(prefers-reduced-motion:reduce){.focus-custom-time,.focus-pomodoro-advanced,.focus-pomodoro-longbreak-fields{transition-duration:1ms}}.focus-stepper{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;max-width:360px}.focus-stepper-label{font-size:.88rem;font-weight:600;color:var(--ink)}.focus-stepper-controls{display:flex;align-items:center;gap:10px;flex:none}.focus-stepper-btn{width:38px;height:38px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;background:var(--paper-soft);border:1px solid var(--line);color:var(--ink);transition:border-color .2s ease,color .2s ease,background .2s ease,transform .2s ease}.focus-stepper-btn svg{width:14px;height:14px}.focus-stepper-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.focus-stepper-btn:active:not(:disabled){transform:scale(.92)}.focus-stepper-btn:disabled{opacity:.35;cursor:default}.focus-stepper-value{min-width:4.5ch;text-align:center;font-family:var(--font-display);font-weight:700;font-size:.92rem;color:var(--ink);font-variant-numeric:tabular-nums}.focus-switch-row{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;max-width:360px;background:none;border:none;padding:0;text-align:left}.focus-switch-label{font-size:.88rem;font-weight:600;color:var(--ink)}.focus-switch{flex:none;width:40px;height:24px;border-radius:999px;background:var(--line);position:relative;transition:background .22s ease}.focus-switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:var(--paper-card);box-shadow:var(--shadow-tight);transition:transform .22s cubic-bezier(.22,1,.36,1)}.focus-switch.is-on{background:var(--accent)}.focus-switch.is-on:after{transform:translate(16px)}.focus-clock{position:relative;width:min(74vw,300px);height:min(74vw,300px);display:flex;align-items:center;justify-content:center}.focus-clock-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.focus-clock-ring-track,.focus-clock-ring-progress{fill:none;stroke-width:8;stroke-linecap:round}.focus-clock-ring-track{stroke:var(--line)}.focus-clock-ring-progress{stroke:var(--accent);transition:stroke-dashoffset .22s linear,stroke .26s ease,opacity .22s ease}[data-focus-active][data-phase=short] .focus-clock-ring-progress,[data-focus-active][data-phase=long] .focus-clock-ring-progress{stroke:var(--band-2)}.focus-clock.is-indeterminate .focus-clock-ring-progress{opacity:0}.focus-clock.is-indeterminate .focus-clock-ring-track{opacity:.5}@media(prefers-reduced-motion:reduce){.focus-clock-ring-progress{transition:stroke .26s ease,opacity .22s ease}}.focus-clock-center{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:4px}.focus-clock-phase{font-family:var(--font-display);font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin:0;transition:color .22s ease}[data-focus-active][data-phase=short] .focus-clock-phase,[data-focus-active][data-phase=long] .focus-clock-phase{color:var(--accent)}.focus-clock-time{font-family:var(--font-display);font-weight:800;letter-spacing:-.01em;font-size:clamp(2.6rem,11vw,3.6rem);line-height:1;color:var(--ink);font-variant-numeric:tabular-nums;min-width:6.5ch;text-align:center}.focus-clock-cycle{font-size:.8rem;font-weight:600;color:var(--ink-soft);margin:2px 0 0}.focus-clock-live-dot{display:none;width:8px;height:8px;border-radius:50%;background:var(--band-4);margin-top:2px}.focus-clock-live-dot.is-live{display:block}@media(prefers-reduced-motion:no-preference){.focus-clock-live-dot.is-live{animation:focus-dot-pulse 1.8s ease-in-out infinite}}@keyframes focus-dot-pulse{50%{opacity:.3}}[data-focus-active][data-status=paused] .focus-clock-time,[data-focus-active][data-status=paused] .focus-clock-ring-progress{opacity:.55}.focus-phase-banner{width:100%;max-width:460px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;border-radius:var(--radius-lg);background:var(--paper-soft);border:1px solid var(--line);overflow:hidden;max-height:0;opacity:0;padding:0 26px;margin:0;transition:max-height .38s cubic-bezier(.22,1,.36,1),opacity .26s ease,padding .38s ease,margin .38s ease}.focus-phase-banner.is-open{max-height:240px;opacity:1;padding:22px 26px}.focus-phase-banner-icon{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}.focus-phase-banner-icon svg{width:17px;height:17px}.focus-phase-banner-title{font-family:var(--font-display);font-weight:700;font-size:1rem;color:var(--ink);margin:0}@media(prefers-reduced-motion:reduce){.focus-phase-banner{transition-duration:1ms}}.focus-active-controls{display:flex;align-items:center;gap:12px}.focus-active-primary{min-width:150px;justify-content:center}.focus-active-primary svg,.focus-active-pause svg{width:15px;height:15px}.focus-active-reset{width:44px;height:44px;border-radius:50%;flex:none;padding:0;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--line);color:var(--ink-soft);transition:border-color .2s ease,color .2s ease,transform .2s ease}.focus-active-reset svg{width:17px;height:17px}.focus-active-reset:hover{border-color:var(--accent);color:var(--accent)}.focus-active-reset:active{transform:scale(.94)}.focus-active-pause,[data-focus-active][data-status=running] .focus-active-primary{display:none}[data-focus-active][data-status=running] .focus-active-pause{display:inline-flex}[data-focus-active][data-status=awaitingAdvance] .focus-active-controls,[data-focus-active][data-status=finished] .focus-active-controls,[data-focus-active][data-status=configuring] .focus-active-reset,[data-focus-active][data-status=awaitingAdvance] .focus-active-reset,[data-focus-active][data-status=finished] .focus-active-reset{display:none}.focus-active-paused-note{display:none;font-size:.82rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.05em;margin:-14px 0 0}[data-focus-active][data-status=paused] .focus-active-paused-note{display:block}[data-focus-active][data-mode=exam] .focus-active-pause,[data-focus-active][data-mode=exam] .focus-active-reset{display:none!important}.focus-exam-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center}[data-focus-active]:not([data-mode=exam]) .focus-exam-controls,[data-focus-active][data-mode=exam]:not([data-status=running]) .focus-exam-controls{display:none}[data-focus-active].is-urgent .focus-clock-ring-progress{stroke-width:9}@media(prefers-reduced-motion:no-preference){.focus-clock.is-pulsing{animation:focus-clock-pulse .48s ease}}@keyframes focus-clock-pulse{0%,to{transform:scale(1)}45%{transform:scale(1.035)}}.focus-exam-notice{position:fixed;top:96px;left:50%;transform:translate(-50%,-14px);z-index:210;pointer-events:none;padding:10px 18px;border-radius:999px;background:var(--ink-surface);color:var(--on-surface);font-family:var(--font-display);font-weight:700;font-size:.86rem;box-shadow:var(--shadow-tight);opacity:0;transition:opacity .26s ease,transform .26s ease;white-space:nowrap;max-width:90vw;overflow:hidden;text-overflow:ellipsis}.focus-exam-notice.is-visible{opacity:1;transform:translate(-50%)}@media(prefers-reduced-motion:reduce){.focus-exam-notice{transition-duration:1ms}}.focus-exam-fs-prompt{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center;width:100%;margin:-8px 0 4px;padding:12px 16px;border-radius:var(--radius-md);background:var(--paper-soft);border:1px solid var(--line);font-size:.86rem;color:var(--ink);opacity:0;transform:translateY(-6px);transition:opacity .26s ease,transform .26s ease}.focus-exam-fs-prompt[hidden]{display:none}.focus-exam-fs-prompt.is-open{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.focus-exam-fs-prompt{transition-duration:1ms}}.focus-exam-break-eyebrow{font-family:var(--font-display);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:0 0 10px}.focus-exam-break-time{font-family:var(--font-display);font-weight:800;font-size:clamp(2.4rem,10vw,3rem);font-variant-numeric:tabular-nums;color:var(--ink);margin:0 0 12px}.focus-exam-break-overlay .focus-exam-break-note{margin:0 0 22px}.focus-exam-break-overlay.is-expired .focus-exam-break-time{color:var(--accent)}.focus-confirm-overlay{position:fixed;inset:0;z-index:400;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;transition:opacity .22s ease}.focus-confirm-overlay[hidden]{display:none}.focus-confirm-overlay.is-open{opacity:1}.focus-confirm-backdrop{position:absolute;inset:0;background:color-mix(in srgb,var(--ink-surface) 55%,transparent);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.focus-confirm-panel{position:relative;z-index:1;width:min(94vw,380px);background:var(--paper-card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:26px;text-align:center;opacity:0;transform:scale(.95) translateY(8px);transition:opacity .26s cubic-bezier(.19,1,.22,1),transform .26s cubic-bezier(.19,1,.22,1)}.focus-confirm-overlay.is-open .focus-confirm-panel{opacity:1;transform:none}.focus-confirm-panel h3{margin:0 0 10px}.focus-confirm-panel p{margin:0 0 20px;font-size:.9rem;color:var(--ink-soft)}.focus-confirm-actions{display:flex;gap:10px;justify-content:center}@media(prefers-reduced-motion:reduce){.focus-confirm-overlay,.focus-confirm-panel{transition-duration:1ms}}.focus-tools{width:100%;display:flex;flex-direction:column;gap:16px}[data-focus-active][data-mode=exam][data-status=running] .focus-tools{display:none}.focus-toolblock{border-radius:var(--radius-lg);background:var(--paper-soft);border:1px solid var(--line);overflow:hidden}.focus-toolblock-header{display:flex;align-items:center;gap:10px;width:100%;padding:14px 16px;background:none;border:none;text-align:left;font-weight:600;font-size:.92rem;color:var(--ink);transition:background .2s ease}.focus-toolblock-header:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.focus-toolblock-icon{flex:none;display:flex;color:var(--accent)}.focus-toolblock-icon svg{width:18px;height:18px}.focus-toolblock-title{flex:1 1 auto;min-width:0;overflow-wrap:break-word}.focus-toolblock-chevron{flex:none;display:flex;color:var(--ink-soft);transition:transform .26s cubic-bezier(.22,1,.36,1)}.focus-toolblock-chevron svg{width:14px;height:14px}.focus-toolblock-header[aria-expanded=true] .focus-toolblock-chevron{transform:rotate(180deg)}@media(prefers-reduced-motion:reduce){.focus-toolblock-chevron{transition-duration:1ms}}.focus-tool-panel{width:100%;overflow:hidden;max-height:0;opacity:0;transition:max-height .42s cubic-bezier(.22,1,.36,1),opacity .26s ease}.focus-tool-panel.is-open{opacity:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink-soft) 45%,transparent) transparent}.focus-tool-panel.is-open::-webkit-scrollbar{width:8px}.focus-tool-panel.is-open::-webkit-scrollbar-track{background:transparent}.focus-tool-panel.is-open::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink-soft) 45%,transparent);border-radius:999px}.focus-tasks-panel.is-open{max-height:620px}.focus-reminders-panel.is-open{max-height:460px}.focus-sound-panel.is-open{max-height:360px}.focus-sound-panel.is-open[data-vinyl-active]{max-height:520px}.focus-tool-panel-inner{padding:16px 18px 18px}@media(prefers-reduced-motion:reduce){.focus-tool-panel{transition-duration:1ms}}.focus-task-list{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.focus-task-list.is-empty{margin-bottom:0}.focus-task-empty{margin:0 0 4px;font-size:.86rem;color:var(--ink-soft);text-align:center}.focus-task-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-md);background:var(--paper-card);border:1px solid var(--line);overflow:hidden;max-height:200px;transition:max-height .24s cubic-bezier(.22,1,.36,1),opacity .22s ease,padding .24s ease,margin .24s ease,border-color .2s ease,background .2s ease,transform .22s ease}.focus-task-row.is-entering{opacity:0;transform:translateY(-6px)}.focus-task-row.is-leaving{opacity:0;padding-top:0;padding-bottom:0;margin:0;border-width:0}.focus-task-row.is-moved{background:color-mix(in srgb,var(--accent) 10%,var(--paper-card))}.focus-task-row.is-primary{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--paper-card))}@media(prefers-reduced-motion:reduce){.focus-task-row{transition-duration:1ms}}.focus-task-check{flex:none;width:26px;height:26px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:none;border:1.5px solid var(--line);color:var(--on-accent);transition:background .2s ease,border-color .2s ease,transform .16s ease}.focus-task-check svg{width:14px;height:14px}.focus-task-check:hover{border-color:var(--accent)}.focus-task-check:active{transform:scale(.9)}.focus-task-row.is-done .focus-task-check{background:var(--accent);border-color:var(--accent)}.focus-task-body{flex:1 1 auto;min-width:0}.focus-task-title{display:block;font-size:.9rem;font-weight:600;color:var(--ink);overflow-wrap:break-word;transition:color .22s ease,opacity .22s ease}.focus-task-row.is-done .focus-task-title{color:var(--ink-soft);text-decoration:line-through;opacity:.75}.focus-task-edit-input{width:100%;padding:6px 10px;border-radius:8px;border:1.5px solid var(--accent);background:var(--paper-card);color:var(--ink);font-family:inherit;font-size:.9rem;font-weight:600}.focus-task-actions{flex:none;display:flex;align-items:center;gap:2px}.focus-task-row:not(.is-editing) .focus-task-actions{display:flex}.focus-task-row.is-editing .focus-task-actions{display:none}.focus-task-action{flex:none;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--ink-soft);transition:color .2s ease,background .2s ease,transform .16s ease}.focus-task-action svg{width:14px;height:14px}.focus-task-action:hover:not(:disabled){color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.focus-task-action:active:not(:disabled){transform:scale(.92)}.focus-task-action:disabled{opacity:.3;cursor:default}.focus-task-action.focus-task-move-down svg{transform:rotate(180deg)}.focus-task-primary-btn.is-active{color:var(--accent)}.focus-task-delete-btn:hover:not(:disabled){color:var(--accent-hover)}.focus-tool-add-toggle{display:inline-flex;align-items:center;gap:6px;background:none;border:none;padding:4px 0;margin-top:4px;font-weight:700;font-size:.86rem;color:var(--accent)}.focus-tool-add-toggle svg{width:15px;height:15px}.focus-tool-add-toggle:hover{color:var(--accent-hover)}.focus-tool-limit-note{margin:8px 0 0;font-size:.8rem;color:var(--ink-soft)}.focus-reminder-list{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.focus-reminder-list.is-empty{margin-bottom:0}.focus-reminder-row{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:var(--radius-md);background:var(--paper-card);border:1px solid var(--line);transition:opacity .22s ease,border-color .2s ease}.focus-reminder-row.is-suspended{opacity:.6}.focus-reminder-icon{flex:none;width:26px;height:26px;margin-top:1px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.focus-reminder-icon svg{width:14px;height:14px}.focus-reminder-body{flex:1 1 auto;min-width:0}.focus-reminder-text{margin:0;font-size:.88rem;font-weight:600;color:var(--ink);overflow-wrap:break-word}.focus-reminder-meta{margin:2px 0 0;font-size:.78rem;color:var(--ink-soft)}.focus-reminder-actions{flex:none;display:flex;align-items:center;gap:2px}.focus-switch-mini{flex:none;padding:6px;background:none;border:none;display:flex;align-items:center}.focus-switch-mini .focus-switch{width:32px;height:19px}.focus-switch-mini .focus-switch:after{width:15px;height:15px}.focus-switch-mini .focus-switch.is-on:after{transform:translate(13px)}.focus-reminder-add-form{overflow:hidden;max-height:0;opacity:0;margin-top:0;display:flex;flex-direction:column;align-items:center;gap:14px;transition:max-height .42s cubic-bezier(.22,1,.36,1),opacity .26s ease,margin-top .42s ease}.focus-reminder-add-form.is-open{max-height:480px;opacity:1;margin-top:4px;margin-bottom:14px}.focus-reminder-text-input{width:100%;max-width:340px}.focus-reminder-mode-tabs{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:3px;padding:3px;background:var(--paper-card);border-radius:999px}.focus-reminder-fields{width:100%;display:flex;justify-content:center;gap:18px;flex-wrap:wrap;overflow:hidden;max-height:0;opacity:0;transition:max-height .32s cubic-bezier(.22,1,.36,1),opacity .22s ease}.focus-reminder-fields.is-open{max-height:120px;opacity:1}.focus-reminder-invalid-note{margin:-6px 0 0;font-size:.78rem;color:var(--ink-soft)}@media(prefers-reduced-motion:reduce){.focus-reminder-add-form,.focus-reminder-fields{transition-duration:1ms}}.focus-reminder-notice{position:fixed;top:96px;left:50%;z-index:220;display:flex;align-items:flex-start;gap:12px;width:min(92vw,360px);padding:16px 18px;border-radius:var(--radius-lg);background:var(--ink-surface);color:var(--on-surface);box-shadow:var(--shadow-soft);opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-16px);transition:opacity .28s ease,transform .28s ease,visibility 0s linear .28s}.focus-reminder-notice.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%);transition:opacity .28s ease,transform .28s ease,visibility 0s linear 0s}.focus-reminder-notice-icon{flex:none;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--band-4) 18%,transparent);color:var(--band-4)}.focus-reminder-notice-icon svg{width:17px;height:17px}.focus-reminder-notice-body{flex:1 1 auto;min-width:0}.focus-reminder-notice-title{margin:0 0 2px;font-family:var(--font-display);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--on-surface-soft)}.focus-reminder-notice-text{margin:0;font-size:.94rem;font-weight:600;color:var(--on-surface);overflow-wrap:break-word}.focus-reminder-notice-close{flex:none;width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--on-surface-soft);transition:color .18s ease,background .18s ease}.focus-reminder-notice-close svg{width:12px;height:12px}.focus-reminder-notice-close:hover{color:var(--on-surface);background:color-mix(in srgb,var(--on-surface) 12%,transparent)}@media(prefers-reduced-motion:reduce){.focus-reminder-notice{transition-duration:1ms}}.focus-ambience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px}.focus-ambience-chip{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;border-radius:var(--radius-md);background:var(--paper-card);border:1px solid var(--line);color:var(--ink);transition:border-color .2s ease,background .2s ease,color .2s ease,transform .16s ease}.focus-ambience-chip:hover{border-color:var(--accent);transform:translateY(-1px)}.focus-ambience-chip:active{transform:translateY(0) scale(.97)}.focus-ambience-chip.is-selected{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.focus-ambience-icon{width:22px;height:22px}.focus-ambience-icon svg{width:100%;height:100%;display:block}.focus-ambience-label{font-size:.76rem;font-weight:600;text-align:center;line-height:1.2;overflow-wrap:break-word}.focus-ambience-eq{position:absolute;top:7px;right:7px;display:flex;align-items:flex-end;gap:2px;height:12px;opacity:0;transition:opacity .2s ease}.focus-ambience-eq span{width:2.5px;background:currentColor;border-radius:1px;height:4px}.focus-ambience-eq.is-live{opacity:.85}@media(prefers-reduced-motion:no-preference){.focus-ambience-eq.is-live span:nth-child(1){animation:focus-eq-bounce .9s ease-in-out infinite}.focus-ambience-eq.is-live span:nth-child(2){animation:focus-eq-bounce .9s ease-in-out infinite -.3s}.focus-ambience-eq.is-live span:nth-child(3){animation:focus-eq-bounce .9s ease-in-out infinite -.6s}}@keyframes focus-eq-bounce{0%,to{height:4px}50%{height:12px}}.focus-sound-status{display:block;text-align:center;font-size:.8rem;color:var(--ink-soft);margin:-8px 0 14px;opacity:0;transition:opacity .2s ease;pointer-events:none}.focus-sound-status.is-error{color:var(--accent)}.focus-sound-status.is-visible{opacity:1;pointer-events:auto}.focus-sound-view-switch{margin:0 auto 18px;display:flex;justify-content:center}.focus-sound-view-switch .focus-variant-tab{display:inline-flex;align-items:center;gap:6px}.focus-sound-view-switch .focus-variant-tab svg{width:14px;height:14px}.focus-sound-view[hidden]{display:none}.focus-sound-vinyl{display:flex;flex-direction:column;align-items:center}.focus-sound-controls{position:relative;display:flex;align-items:center;justify-content:center;margin-bottom:16px}.focus-sound-transport{display:flex;align-items:center;justify-content:center;gap:10px}.focus-sound-transport-btn{flex:none;width:38px;height:38px;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;background:var(--paper-soft);border:1px solid var(--line);color:var(--ink);transition:border-color .2s ease,color .2s ease,background .2s ease,transform .16s ease}.focus-sound-transport-btn svg{width:16px;height:16px}.focus-sound-transport-btn:hover{border-color:var(--accent);color:var(--accent)}.focus-sound-transport-btn:active{transform:scale(.92)}.focus-sound-playpause{width:48px;height:48px;background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.focus-sound-playpause svg{width:18px;height:18px}.focus-sound-playpause:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--on-accent)}.focus-sound-volume-wrap{position:absolute;right:0;top:50%;transform:translateY(-50%)}.focus-volume-popover{position:absolute;bottom:calc(100% + 10px);right:0;z-index:30;max-width:calc(100vw - 48px);display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px 12px 14px;border-radius:var(--radius-md);background:var(--paper-card);border:1px solid var(--line);box-shadow:var(--shadow-soft);transition:opacity .18s ease,transform .18s cubic-bezier(.22,1,.36,1)}.focus-volume-popover[hidden]{display:none}@media(prefers-reduced-motion:no-preference){.focus-volume-popover:not([hidden]){animation:focus-volume-pop .2s cubic-bezier(.22,1,.36,1) both}}@keyframes focus-volume-pop{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.focus-volume-mute-btn{flex:none;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;white-space:nowrap;background:none;border:1px solid var(--line);color:var(--ink-soft);font-size:.78rem;font-weight:600;transition:border-color .2s ease,color .2s ease}.focus-volume-mute-btn svg{width:14px;height:14px}.focus-volume-mute-btn:hover{border-color:var(--accent);color:var(--accent)}.focus-volume-mute-btn[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.focus-volume{cursor:pointer;touch-action:none}.focus-volume--vertical{width:32px;height:108px;margin:0 auto;padding:0;display:flex;align-items:flex-end;justify-content:center}.focus-volume--horizontal{flex:1 1 auto;width:100%;height:24px;padding:0;display:flex;align-items:center;justify-content:flex-start}.focus-volume--vertical .focus-volume-track{position:relative;width:6px;height:100%;border-radius:999px;background:var(--line)}.focus-volume--horizontal .focus-volume-track{position:relative;width:100%;height:4px;border-radius:999px;background:var(--line)}.focus-volume--vertical .focus-volume-fill{position:absolute;bottom:0;left:0;width:100%;border-radius:999px;background:var(--accent);pointer-events:none}.focus-volume--horizontal .focus-volume-fill{position:absolute;top:0;left:0;height:100%;border-radius:999px;background:var(--accent);pointer-events:none}.focus-volume--vertical .focus-volume-thumb{position:absolute;left:50%;width:16px;height:16px;border-radius:50%;background:var(--paper-card);border:2px solid var(--accent);box-shadow:var(--shadow-tight);transform:translate(-50%,50%);transition:box-shadow .16s ease,transform .16s ease;pointer-events:none}.focus-volume--horizontal .focus-volume-thumb{position:absolute;top:50%;width:13px;height:13px;border-radius:50%;background:var(--paper-card);border:2px solid var(--accent);box-shadow:var(--shadow-tight);transform:translate(-50%,-50%);transition:box-shadow .16s ease,transform .16s ease;pointer-events:none}.focus-volume--vertical:hover .focus-volume-thumb{transform:translate(-50%,50%) scale(1.15)}.focus-volume--vertical:focus-visible .focus-volume-thumb{transform:translate(-50%,50%) scale(1.15);outline:3px solid var(--accent);outline-offset:3px}.focus-volume--vertical:active .focus-volume-thumb{transform:translate(-50%,50%) scale(1.25)}.focus-volume--horizontal:hover .focus-volume-thumb{transform:translate(-50%,-50%) scale(1.15)}.focus-volume--horizontal:focus-visible .focus-volume-thumb{transform:translate(-50%,-50%) scale(1.15);outline:3px solid var(--accent);outline-offset:3px}.focus-volume--horizontal:active .focus-volume-thumb{transform:translate(-50%,-50%) scale(1.25)}@media(prefers-reduced-motion:reduce){.focus-volume-thumb,.focus-volume-popover{transition-duration:1ms}}.focus-vinyl-volume-row{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;max-width:220px;margin:14px auto 0}.focus-vinyl-volume-icon{flex:none;display:flex;color:var(--ink-soft);opacity:.7}.focus-vinyl-volume-icon svg{width:14px;height:14px}.focus-vinyl{position:relative;width:180px;height:180px;margin:0 auto 18px}.focus-vinyl-plinth{position:absolute;top:50%;left:50%;width:208px;height:208px;transform:translate(-50%,-50%);border-radius:22px;z-index:0;background:linear-gradient(155deg,color-mix(in srgb,var(--ink-surface) 92%,black 8%),color-mix(in srgb,var(--ink-surface) 76%,black 24%));box-shadow:var(--shadow-soft),inset 0 1px color-mix(in srgb,white 8%,transparent)}.focus-vinyl-lights{position:absolute;bottom:12px;left:16px;z-index:1;display:flex;gap:6px}.focus-vinyl-light{display:block;width:6px;height:6px;border-radius:50%;opacity:.35;box-shadow:none;transition:opacity .26s ease,box-shadow .26s ease}.focus-vinyl-light--play{background:#2fa35c}.focus-vinyl-light--play.is-active{opacity:1;box-shadow:0 0 6px 1px color-mix(in srgb,#2FA35C 55%,transparent)}.focus-vinyl-light--pause{background:#c4483a}.focus-vinyl-light--pause.is-active{opacity:1;box-shadow:0 0 6px 1px color-mix(in srgb,#C4483A 55%,transparent)}@media(prefers-reduced-motion:reduce){.focus-vinyl-light{transition-duration:1ms}}.focus-vinyl-disc-wrap{position:relative;z-index:1;width:100%;height:100%;transition:transform .32s cubic-bezier(.22,1,.36,1)}.focus-vinyl-disc-wrap.is-swapping{transform:scale(.92) rotate(-8deg)}@media(prefers-reduced-motion:reduce){.focus-vinyl-disc-wrap{transition-duration:1ms}.focus-vinyl-disc-wrap.is-swapping{transform:none}}.focus-vinyl-disc{position:relative;width:100%;height:100%;border-radius:50%;background:repeating-radial-gradient(circle at 50% 50%,var(--ink-surface) 0px,var(--ink-surface) 2.1px,color-mix(in srgb,var(--ink-surface) 78%,black 22%) 2.6px,var(--ink-surface) 3.3px);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-soft)}.focus-vinyl-glyph{position:relative;z-index:1;width:46px;height:46px;border-radius:50%;background:var(--band-4);color:#0a2620;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease}.focus-vinyl-glyph.is-fading{transition:opacity 90ms ease;opacity:0}@media(prefers-reduced-motion:reduce){.focus-vinyl-glyph{transition-duration:1ms}}.focus-vinyl-glyph svg{width:38px;height:38px}.focus-vinyl-hole{position:absolute;top:50%;left:50%;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--paper-soft);z-index:2}.focus-vinyl-arm{position:absolute;top:2%;right:-4px;width:6px;height:46%;border-radius:6px;z-index:2;background:linear-gradient(var(--ink-soft),color-mix(in srgb,var(--ink-soft) 70%,black 20%));transform-origin:top center;transform:rotate(16deg);transition:transform .32s cubic-bezier(.22,1,.36,1)}.focus-vinyl-arm-head{position:absolute;bottom:-4px;left:50%;width:13px;height:8px;transform:translate(-50%);border-radius:3px;background:color-mix(in srgb,var(--band-4) 80%,var(--ink-soft))}.focus-vinyl-disc-wrap.is-spinning~.focus-vinyl-arm{transform:rotate(26deg)}@media(prefers-reduced-motion:reduce){.focus-vinyl-arm{transition-duration:1ms}}.focus-vinyl-name{font-family:var(--font-display);font-weight:700;font-size:1rem;color:var(--ink);margin:0 0 16px;text-align:center;overflow-wrap:break-word;max-width:100%;min-height:2.4em;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease}.focus-vinyl-name.is-fading{transition:opacity 90ms ease;opacity:0}@media(prefers-reduced-motion:reduce){.focus-vinyl-name{transition-duration:1ms}}@media(max-width:620px){.focus-clock-time{font-size:clamp(2.2rem,13vw,3rem)}.focus-active-controls{flex-wrap:wrap;justify-content:center}.focus-stepper,.focus-switch-row{max-width:none}.focus-toolblock-header{padding:12px 14px}.focus-tool-panel-inner{padding:14px 14px 16px}.focus-task-row{flex-wrap:nowrap}.focus-task-actions{gap:0}}@media(max-width:480px){.focus-ambience-grid{grid-template-columns:repeat(2,1fr)}.focus-vinyl{width:140px;height:140px}.focus-vinyl-plinth{width:164px;height:164px}.focus-vinyl-glyph{width:36px;height:36px}.focus-vinyl-glyph svg{width:30px;height:30px}}@media(hover:none)and (pointer:coarse){.focus-task-check{width:32px;height:32px}.focus-task-action{width:36px;height:36px}.focus-switch-mini{padding:8px}.focus-sound-transport-btn{width:42px;height:42px}.focus-sound-playpause{width:52px;height:52px}}@media(max-height:700px){.focus-active{gap:16px}.focus-clock{width:min(56vw,220px);height:min(56vw,220px)}.focus-vinyl{width:130px;height:130px;margin-bottom:12px}.focus-vinyl-plinth{width:152px;height:152px}.focus-tasks-panel.is-open{max-height:480px}.focus-reminders-panel.is-open{max-height:380px}.focus-sound-panel.is-open{max-height:300px}.focus-sound-panel.is-open[data-vinyl-active]{max-height:420px}}@media(max-height:560px){.focus-clock{width:min(46vw,180px);height:min(46vw,180px)}.focus-clock-time{font-size:clamp(1.8rem,11vw,2.4rem)}.focus-vinyl{width:100px;height:100px;margin-bottom:8px}.focus-vinyl-plinth{width:118px;height:118px}.focus-vinyl-glyph{width:30px;height:30px}.focus-vinyl-glyph svg{width:24px;height:24px}.focus-vinyl-lights{bottom:8px;left:10px}.focus-session-header-meta{display:none}.focus-tasks-panel.is-open{max-height:320px}.focus-reminders-panel.is-open{max-height:260px}.focus-sound-panel.is-open,.focus-sound-panel.is-open[data-vinyl-active]{max-height:220px}}@media(min-width:560px)and (max-width:899px)and (max-height:430px){.focus-active{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,240px);column-gap:16px;row-gap:10px;max-width:none}.focus-active-topbar,.focus-exam-fs-prompt{grid-column:1 / -1}.focus-active-main{display:flex;flex-direction:column;align-items:center;gap:10px;grid-column:1;min-width:0;width:100%}.focus-active-aside{grid-column:2}.focus-active-aside .focus-ambience-grid{grid-template-columns:repeat(2,1fr)}.focus-session-header-meta{display:none}.focus-tools{gap:10px}}
