:root{color:#283442;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#f2f5fa;--surface:#fbfcff;--panel:#f7f9fd;--ink:#283442;--muted:#5e6f83;--line:#dce3ed;--primary:#46658c;--primary-ink:#fff;--tonal:#dce7f6;--tonal-ink:#2e486a;--soft:#e8eef7;--danger:#a34337;--shadow:0 12px 40px #213d6510;--radius:25px;--app-width:480px;background:#f2f5fa;font-family:Inter,Aptos,Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.36;cursor:default}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,div[tabindex]:focus-visible{outline:3px solid var(--primary);outline-offset:4px}button svg{flex-shrink:0}button{background:0 0;border:0}input{color:var(--ink)}::selection{background:var(--tonal)}h1,h2,h3,p{margin:0}em{color:var(--primary);font-style:normal}.header{z-index:5;border-bottom:1px solid var(--line);background:var(--bg);height:78px;position:relative}.header-inner{justify-content:space-between;align-items:center;gap:16px;max-width:100%;height:100%;margin:auto;padding:0 21px;display:flex}.brand{letter-spacing:-1.2px;align-items:center;gap:10px;min-width:0;font-size:25px;font-weight:700;display:flex}.brand>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.brand img{border-radius:50%;width:33px;height:33px}.header-actions{flex-shrink:0;align-items:center;gap:13px;display:flex}.icon-button{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.icon-button:hover{background:var(--soft)}.header-actions>.icon-button,.tonal{background:var(--tonal);color:var(--tonal-ink);width:48px;height:48px}.offline-badge{color:var(--muted);letter-spacing:.05em;align-items:center;gap:5px;font-size:9px;display:flex}.offline-badge.ready{color:var(--primary)}.home{max-width:100%;margin:auto;padding:16px 21px 160px}.eyebrow{color:var(--muted);letter-spacing:.17em;align-items:center;gap:8px;font-size:8px;font-weight:700;display:flex}.tiny-dot{background:var(--primary);border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}.timer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.timer-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:15px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.timer-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.active-card{background:var(--tonal);border-color:#0000}.card-top{justify-content:space-between;align-items:center;margin-bottom:17px;display:flex}.card-glyph{background:var(--soft);color:var(--primary);border-radius:11px;place-items:center;width:32px;height:32px;display:grid}.active-card .card-glyph{background:#ffffff50}.card-tools{color:var(--muted);gap:2px;display:flex}.card-tools .icon-button{width:24px;height:25px}.card-main{text-align:left;width:100%;padding:0;display:block}.card-main h3{letter-spacing:-.35px;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.card-main p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:6px;font-size:9px;overflow:hidden}.card-counter{font-variant-numeric:tabular-nums;letter-spacing:-1.4px;margin:19px 0;font-size:33px;font-weight:400;line-height:1.2;display:block}.card-bottom{justify-content:space-between;align-items:center;display:flex}.round-play{background:var(--tonal);color:var(--tonal-ink);border-radius:50%;place-items:center;width:34px;height:34px;font-size:19px;display:grid}.active-card .round-play{background:var(--primary);color:var(--primary-ink)}.round-play svg{width:16px;height:16px}.status-pill{color:var(--muted);letter-spacing:.07em;align-items:center;gap:4px;font-size:6px;font-weight:600;display:flex}.status-pill>span{background:var(--muted);border-radius:50%;width:4px;height:4px}.status-pill.running{color:var(--primary)}.status-pill.running>span{background:var(--primary)}.card-progress{background:color-mix(in srgb, var(--primary) 13%, transparent);height:3px;position:absolute;bottom:0;left:22px;right:22px}.card-progress span{background:var(--primary);border-radius:2px;height:100%;display:block}.empty-message{color:var(--muted);text-align:center;grid-column:1/-1;margin:48px 0;font-size:14px}.navigation{border:1px solid var(--line);z-index:10;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--bg);box-shadow:none;width:min(100%, var(--app-width));border-width:1px 0 0;border-radius:0;justify-content:center;gap:20px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.navigation a{color:var(--muted);border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:125px;padding:6px 12px;font-size:9px;display:flex}.navigation a.active{color:var(--primary);background:0 0}.fab{background:var(--primary);color:var(--primary-ink);z-index:10;right:max(21px, calc((100vw - var(--app-width)) / 2 + 21px));bottom:calc(96px + env(safe-area-inset-bottom));border-radius:19px;place-items:center;width:56px;height:56px;display:grid;position:fixed;box-shadow:0 8px 20px #28344224}.button,.outline-button,.text-button{border-radius:30px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:12px 21px;font-size:13px;font-weight:600;display:inline-flex}.button{background:var(--primary);color:var(--primary-ink)}.button:hover{filter:brightness(1.07)}.outline-button{border:1px solid var(--line);color:var(--primary)}.text-button{color:var(--primary);padding:9px 13px}.text-button:hover{background:var(--soft)}.text-button svg{width:18px}.full{width:100%}.danger{background:var(--danger)}.danger-text{color:var(--danger)}.secondary{background:var(--tonal);color:var(--tonal-ink)}.narrow{width:100%;margin:auto;padding:27px 21px 50px}.narrow>h1{letter-spacing:-1.3px;margin:15px 0 28px;font-size:29px;font-weight:500;line-height:1.15}.panel{background:var(--surface);border:1px solid var(--line);border-radius:22px;margin-bottom:18px;padding:20px}.section-title{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.section-title h2{letter-spacing:-.3px;font-size:15px;font-weight:600}.section-title>span,.section-title>svg{color:var(--muted);font-size:11px}fieldset{border:0;min-width:0;margin:0;padding:0}.field{flex-direction:column;gap:10px;font-size:12px;font-weight:500;display:flex}.field>span{justify-content:space-between;display:flex}.field small{color:var(--muted);font-size:10px}.field input{background:var(--panel);border:1px solid var(--line);outline-offset:1px;border-radius:14px;width:100%;height:52px;padding:0 15px;font-size:15px}.field input:focus{outline:2px solid var(--primary);outline-offset:0}.field input::placeholder{color:var(--muted);opacity:.7}.hint{color:var(--muted);margin-top:13px;font-size:12px;line-height:1.8}.segmented{background:var(--soft);border:1px solid var(--line);border-radius:30px;min-height:43px;margin-bottom:20px;display:flex;overflow:hidden}.segmented button{border-radius:27px;flex:1;justify-content:center;align-items:center;gap:7px;min-width:0;padding:10px 8px;font-size:12px;display:flex}.segmented button[aria-pressed=true]{background:var(--tonal);color:var(--tonal-ink);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--primary) 13%, transparent);font-weight:600}.segmented svg{width:15px;height:15px}.panel>.segmented:last-child{margin:0}.editor .time-panel{padding-bottom:19px}.editor-preview{letter-spacing:-1.5px;color:var(--primary);text-align:center;font-variant-numeric:tabular-nums;margin:9px 0 17px;font-size:36px;font-weight:400}.time-picker{background:var(--soft);border-radius:21px;justify-content:center;align-items:center;gap:3px;padding:12px 7px;display:flex}.wheel{text-align:center;flex:1;min-width:0}.wheel-label{color:var(--muted);letter-spacing:.03em;font-size:10px;font-weight:600}.wheel-rows{touch-action:pan-x;flex-direction:column;margin-top:9px;display:flex}.wheel-neighbor{height:38px;color:var(--muted);opacity:.5;font-variant-numeric:tabular-nums;flex-direction:column;justify-content:center;align-items:center;gap:0;font-size:19px;line-height:1.15;display:flex}.wheel-neighbor svg{opacity:.4}.wheel-number{background:var(--tonal);height:56px;color:var(--tonal-ink);letter-spacing:-1px;font-variant-numeric:tabular-nums;border-radius:14px;font-size:30px;font-weight:500}.wheel-colon{color:var(--muted);padding-top:24px;font-size:20px}.preset-row{justify-content:center;gap:8px;margin-top:19px;display:flex}.chip{border:1px solid var(--line);color:var(--muted);border-radius:25px;padding:7px 16px;font-size:11px}.chip:hover{background:var(--soft)}.setting-button{text-align:left;align-items:center;gap:13px;width:100%;padding:0;display:flex}.setting-button>span:nth-child(2){flex:1}.setting-button strong{font-size:12px;font-weight:600;display:block}.setting-button small{color:var(--muted);margin-top:5px;font-size:10px;display:block}.setting-button b{color:var(--primary);font-variant-numeric:tabular-nums;font-size:16px;font-weight:500}.setting-icon{color:var(--primary)}.editor-footnote{color:var(--muted);justify-content:center;align-items:center;gap:7px;padding:7px;font-size:10px;display:flex}.toggle-row{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;min-height:58px;display:flex;position:relative}.toggle-row>span:first-child{flex:1}.toggle-row strong{font-size:11px;font-weight:600;display:block}.toggle-row small{color:var(--muted);margin-top:5px;font-size:10px;line-height:1.6;display:block}.toggle-row input{opacity:0;cursor:pointer;width:48px;height:32px;position:absolute;right:0}.toggle-row input:focus-visible+.switch-track{outline:3px solid var(--primary);outline-offset:3px}.switch-track{background:var(--line);border:1px solid var(--muted);pointer-events:none;border-radius:30px;flex-shrink:0;width:43px;height:26px;position:relative}.switch-track span{background:var(--muted);border-radius:50%;width:17px;height:17px;transition:transform .18s;display:block;position:absolute;top:3px;left:4px}.toggle-row input:checked+.switch-track{background:var(--primary);border-color:var(--primary)}.toggle-row input:checked+.switch-track span{background:var(--primary-ink);transform:translate(17px)}.toggle-row input:disabled+.switch-track{opacity:.4}.panel>.toggle-row+.toggle-row{border-top:1px solid var(--line);margin-top:15px;padding-top:15px}.panel .toggle-row+.outline-button{margin-top:15px}.stages-section{margin:30px 0}.stage-card{border:1px solid var(--line);background:var(--surface);border-radius:21px;align-items:center;gap:10px;margin-bottom:11px;padding:14px 12px;display:flex}.stage-number{color:var(--primary);background:var(--soft);border-radius:10px;flex-shrink:0;place-items:center;width:25px;height:25px;font-size:10px;display:grid}.stage-fields{flex:1;min-width:0}.stage-fields input{background:0 0;border:0;border-bottom:1px solid #0000;border-radius:2px;width:100%;padding:4px 0;font-size:12px;font-weight:500}.stage-fields input:focus{border-bottom-color:var(--primary);outline:0}.stage-duration{color:var(--muted);align-items:center;gap:7px;padding:6px 0 0;font-size:11px;display:flex}.stage-tools{align-items:center;gap:0;display:flex}.stage-tools .icon-button{color:var(--muted);width:24px;height:30px}.sequence-total{color:var(--muted);justify-content:space-between;margin:15px 7px;font-size:11px;display:flex}.sequence-total strong{color:var(--primary);font-size:14px;font-weight:500}.repeat-field{margin-top:15px}.error-text{color:var(--danger);margin:15px 0;font-size:12px;line-height:1.6}.session-page{min-height:100dvh}.session-page .header{border-color:#0000}.session-page .brand{letter-spacing:-.5px;gap:0;font-size:15px;font-weight:500}.session-main{flex-direction:column;max-width:100%;min-height:calc(100dvh - 78px);margin:auto;padding:0 23px 18px;display:flex}.session-center{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:355px;padding:18px 0 24px;display:flex}.session-kicker{color:var(--primary);letter-spacing:.1em;margin-bottom:14px;font-size:8px;font-weight:600}.cycle-pill{color:var(--muted);background:var(--soft);border-radius:20px;align-items:center;gap:6px;margin-bottom:18px;padding:7px 12px;font-size:10px;display:flex}.session-center h1{letter-spacing:-1px;overflow-wrap:anywhere;max-width:100%;font-size:25px;font-weight:500}.session-counter{letter-spacing:-.065em;color:var(--primary);font-variant-numeric:tabular-nums;margin:10px 0 15px;font-size:97px;font-weight:300;line-height:1.25}.session-track{background:var(--line);border-radius:5px;width:195px;height:3px;overflow:hidden}.session-track span{background:var(--primary);border-radius:5px;height:100%;display:block}.session-status{color:var(--muted);max-width:320px;margin:18px auto 0;font-size:11px;line-height:1.7}.session-controls{align-self:center;width:100%;max-width:370px;margin:auto auto 0}.big{height:57px;padding:12px;font-size:12px}.big svg{width:19px;height:19px}.control-pair{gap:12px;display:flex}.control-pair>button{flex:1}.next-stage{min-height:48px;margin:0 auto;font-size:12px;display:flex}.snooze-small{color:var(--muted);justify-content:center;align-items:center;gap:6px;margin:16px auto;font-size:10px;display:flex}.session-controls .toggle-row{min-height:56px;margin-top:7px}.session-controls .toggle-row strong{font-size:11px;font-weight:500}.session-controls .toggle-row small{font-size:10px}.copy-link{color:var(--muted);margin:9px auto 0;font-size:10px;font-weight:400;display:flex}.stage-preview{border-radius:14px;align-items:center;gap:14px;margin:4px 0;padding:16px;font-size:13px;display:flex}.stage-preview>span{color:var(--muted);font-size:10px}.stage-preview strong{flex:1;font-weight:500}.stage-preview b{color:var(--primary);font-weight:500}.stage-preview.current{background:var(--soft)}.last-seconds{background:radial-gradient(ellipse at 50% 60%, color-mix(in srgb, var(--primary) 20%, transparent), transparent 65%), var(--bg)}.last-seconds .session-counter{animation:1s ease-in-out infinite alternate soft-pulse}.settings>h1{margin-bottom:30px}.theme-options{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.theme-options button{border:1px solid var(--line);color:var(--muted);border-radius:17px;flex-direction:column;align-items:center;gap:12px;padding:16px 3px 12px;font-size:9px;display:flex}.theme-options button.selected{background:var(--tonal);color:var(--tonal-ink);border-color:#0000}.theme-options svg{width:23px;height:23px}.theme-half{background:linear-gradient(90deg,currentColor 50%,#0000 50%);border:1px solid;border-radius:50%;width:23px;height:23px}.setting-inline{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin:10px 0 16px;font-size:10px;display:flex}.setting-inline .text-button{white-space:nowrap;font-size:10px}.offline-status{align-items:center;gap:9px;font-size:12px;display:flex}.offline-status strong{font-weight:500}.online-dot,.muted-dot{background:var(--primary);border-radius:50%;width:7px;height:7px}.muted-dot{background:var(--muted)}.settings .panel>.button,.settings .panel>.outline-button{margin-top:17px}.backup-actions{gap:10px;margin-top:20px;display:flex}.backup-actions>*{flex:1}.storage-button{margin:12px auto 0;font-size:10px;display:flex}.privacy-panel{background:0 0;border-style:dashed}.privacy-panel>strong{margin-top:15px;font-size:15px;font-weight:500;display:block}.privacy-panel .text-button{margin-left:-13px;font-size:11px}.version{text-align:center;letter-spacing:.12em;color:var(--muted);margin:30px 0 0;font-size:9px;line-height:2.2}.empty-missing{text-align:center}.empty-missing h1{margin:20px 0;font-size:26px}.empty-missing p{color:var(--muted);margin:15px 0 20px;font-size:13px}.forgotten{text-align:center;max-width:100%;margin:12vh auto;padding:30px}.forgotten>img{border-radius:50%;width:75px;margin:0 auto 30px}.forgotten h1{letter-spacing:-1.5px;font-size:33px;font-weight:500}.forgotten p{color:var(--muted);margin:20px 0;font-size:13px;line-height:1.8}.forgotten .button{margin:15px auto}.loading{min-height:60vh;color:var(--muted);justify-content:center;align-items:center;gap:14px;font-size:13px;display:flex}.spinner{border:2px solid var(--line);border-top-color:var(--primary);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin;display:block}.toast,.error-banner{z-index:100;background:var(--ink);color:var(--bg);box-shadow:var(--shadow);max-width:min(calc(100vw - 30px), calc(var(--app-width) - 30px));border-radius:16px;align-items:center;gap:10px;width:max-content;padding:15px 20px;font-size:12px;line-height:1.5;display:flex;position:fixed;bottom:110px;left:50%;transform:translate(-50%)}.error-banner{background:var(--danger);color:#fff;bottom:auto;top:calc(88px + env(safe-area-inset-top))}.error-banner svg,.toast svg{flex-shrink:0}dialog{background:var(--surface);color:var(--ink);border:1px solid var(--line);max-height:90dvh;width:min(calc(100vw - 28px), calc(var(--app-width) - 28px));border-radius:25px;padding:0;box-shadow:0 20px 80px #152b4830}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#14264055}.dialog-head{justify-content:space-between;align-items:center;gap:10px;padding:17px 18px 8px;display:flex}.dialog-head h2{letter-spacing:-.7px;font-size:18px;font-weight:500}.dialog-content{max-height:65dvh;padding:8px 19px 19px;overflow:auto}.dialog-content>p{color:var(--muted);font-size:13px;line-height:1.8}.dialog-actions{justify-content:flex-end;gap:9px;padding:0 18px 18px;display:flex}.dialog-time{font-variant-numeric:tabular-nums;letter-spacing:-1.5px;text-align:center;color:var(--primary);padding:5px 0 19px;font-size:35px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes soft-pulse{to{opacity:.6}}:root[data-theme=dark],:root[data-theme=amoled]{--bg:#1b222d;--surface:#242d3a;--panel:#202936;--ink:#e2e9f4;--muted:#a5b4c8;--line:#37465b;--primary:#a9c7f5;--primary-ink:#193453;--tonal:#304764;--tonal-ink:#dce8ff;--soft:#28364a;--danger:#edaa9e;color:var(--ink);background:var(--bg)}:root[data-theme=amoled]{--bg:#000;--surface:#070b12;--panel:#070b12;--line:#26384e;--soft:#0e1826;--tonal:#15263d;--shadow:none}:root[data-theme=amoled] .last-seconds{background:var(--bg)}:root[data-theme=amoled] .last-seconds .session-counter{animation:none}:root[data-theme=amoled] .timer-card{box-shadow:none;transform:none}@media (prefers-color-scheme:dark){:root[data-theme=system]{--bg:#1b222d;--surface:#242d3a;--panel:#202936;--ink:#e2e9f4;--muted:#a5b4c8;--line:#37465b;--primary:#a9c7f5;--primary-ink:#193453;--tonal:#304764;--tonal-ink:#dce8ff;--soft:#28364a;--danger:#edaa9e;color:var(--ink);background:var(--bg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.offline-badge svg{width:15px}.header-actions>.icon-button{width:43px;height:43px}.card-glyph svg{width:20px}.card-tools .icon-button svg{width:15px}.navigation a.active svg{background:var(--tonal);box-shadow:0 0 0 9px var(--tonal);border-radius:8px;margin:4px 0}.navigation a svg{margin:4px 0}.editor-header .brand{letter-spacing:-.5px;gap:3px;font-size:18px}.editor-header .brand .icon-button{margin-left:-10px}.editor-header .tonal{width:45px;height:45px}.stage-tools .icon-button svg{width:14px}.session-page .brand .icon-button{margin-left:-8px}.session-page .header-actions{gap:2px}.session-page .header-actions .text-button{padding:8px;font-size:10px}.session-controls .copy-link{padding:5px;font-size:9px}.backup-actions .outline-button{padding:10px 11px;font-size:12px}.toast{bottom:calc(164px + env(safe-area-inset-bottom));pointer-events:none}#root{width:min(100%, var(--app-width));min-height:100dvh;margin-inline:auto;position:relative}.header{height:calc(78px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);position:sticky;top:0}.session-main{min-height:calc(100dvh - 78px - env(safe-area-inset-top));padding-bottom:calc(18px + env(safe-area-inset-bottom))}.narrow{padding-bottom:calc(50px + env(safe-area-inset-bottom))}.card-counter.long-duration{letter-spacing:-1px;font-size:26px}
