:root{color-scheme:light;--bg: #f2f2f7;--card: #ffffff;--fill: rgba(118, 118, 128, .12);--fill-2: rgba(118, 118, 128, .2);--text: #1c1c1e;--text-2: #5f5f64;--text-3: #737378;--sep: rgba(60, 60, 67, .16);--tint: #5b57e0;--tint-soft: rgba(91, 87, 224, .12);--on-tint: #ffffff;--danger: #e5352b;--warn: #b85c00;--warn-soft: rgba(230, 126, 0, .14);--material: rgba(242, 242, 247, .78);--shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 1px rgba(0, 0, 0, .02);--shadow-lift: 0 12px 32px rgba(0, 0, 0, .14), 0 2px 6px rgba(0, 0, 0, .06);--r-card: 14px;--ease: cubic-bezier(.2, .9, .25, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, "Segoe UI", Roboto, sans-serif;--font-display: -apple-system, BlinkMacSystemFont, "SF Pro Display", system-ui, "Segoe UI", Roboto, sans-serif;--font-round: ui-rounded, "SF Pro Rounded", -apple-system, system-ui, sans-serif}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #000000;--card: #1c1c1e;--fill: rgba(118, 118, 128, .24);--fill-2: rgba(118, 118, 128, .34);--text: #f5f5f7;--text-2: #b4b4ba;--text-3: #8e8e93;--sep: rgba(84, 84, 88, .55);--tint: #8b88ff;--tint-soft: rgba(139, 136, 255, .18);--on-tint: #0b0b1a;--danger: #ff5a4f;--warn: #ffb340;--warn-soft: rgba(255, 179, 64, .16);--material: rgba(18, 18, 20, .72);--shadow: none;--shadow-lift: 0 14px 36px rgba(0, 0, 0, .6), 0 0 0 .5px rgba(255, 255, 255, .08)}}:root[data-theme=dark]{color-scheme:dark;--bg: #000000;--card: #1c1c1e;--fill: rgba(118, 118, 128, .24);--fill-2: rgba(118, 118, 128, .34);--text: #f5f5f7;--text-2: #b4b4ba;--text-3: #8e8e93;--sep: rgba(84, 84, 88, .55);--tint: #8b88ff;--tint-soft: rgba(139, 136, 255, .18);--on-tint: #0b0b1a;--danger: #ff5a4f;--warn: #ffb340;--warn-soft: rgba(255, 179, 64, .16);--material: rgba(18, 18, 20, .72);--shadow: none;--shadow-lift: 0 14px 36px rgba(0, 0, 0, .6), 0 0 0 .5px rgba(255, 255, 255, .08)}:root[data-accent=yellow]{--tint: #946800;--tint-soft: rgba(255, 196, 0, .2);--on-tint: #ffffff}@media (prefers-color-scheme: dark){:root[data-accent=yellow]:not([data-theme=light]){--tint: #ffd60a;--tint-soft: rgba(255, 214, 10, .16);--on-tint: #1c1c1e}}:root[data-theme=dark][data-accent=yellow]{--tint: #ffd60a;--tint-soft: rgba(255, 214, 10, .16);--on-tint: #1c1c1e}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.4 var(--font);letter-spacing:-.01em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}::selection{background:var(--tint-soft)}input,textarea{caret-color:var(--tint)}button,input,textarea{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;-webkit-user-select:none;user-select:none}:focus-visible{outline:2px solid var(--tint);outline-offset:2px;border-radius:8px}*{scrollbar-width:thin;scrollbar-color:var(--fill-2) transparent}.app{max-width:640px;margin:0 auto}.bar{position:sticky;top:0;z-index:20;padding:max(10px,env(safe-area-inset-top)) 16px 10px;box-shadow:0 .5px 0 transparent;transition:box-shadow .2s ease}.bar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--material);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%)}.bar.is-scrolled{box-shadow:0 .5px 0 var(--sep)}.bar-top{display:flex;align-items:center;justify-content:space-between;height:32px;margin-bottom:8px}.mark{font:600 17px/1 var(--font-display);letter-spacing:-.03em}.bar-back{display:inline-flex;align-items:center;gap:2px;margin-left:-6px;padding:4px 6px;background:none;border:0;color:var(--tint);font-weight:500;border-radius:8px}.bar-back:active{opacity:.5}.bar-gear{position:relative;margin-right:-6px}.bar-gear.is-on{color:var(--tint)}.sync-dot{position:absolute;top:5px;right:5px;width:7px;height:7px;border-radius:50%;border:1.5px solid var(--bg);background:#34c759}.sync-dot.is-busy{background:var(--text-3)}.sync-dot.is-error{background:var(--danger)}.tabs{position:relative;display:grid;grid-template-columns:repeat(4,1fr);padding:2px;border-radius:10px;background:var(--fill)}.tabs button{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;height:30px;padding:0 4px;border:0;background:none;border-radius:8px;color:var(--text);font-size:13px;font-weight:500;letter-spacing:-.005em;transition:transform .15s var(--ease),color .15s ease}.tabs button svg{display:none}.tabs button[aria-selected=true]{font-weight:600}.tabs button:active{transform:scale(.96)}.tabs-thumb{position:absolute;top:2px;bottom:2px;left:2px;width:calc((100% - 4px)/4);border-radius:8px;background:var(--card);box-shadow:0 3px 8px #0000001f,0 0 0 .5px #0000000a;transform:translate(calc(var(--i) * 100%));transition:transform .38s var(--ease),opacity .2s ease}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .tabs-thumb{background:#636366;box-shadow:none}}:root[data-theme=dark] .tabs-thumb{background:#636366;box-shadow:none}.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:2px;padding:2px;border-radius:10px;background:var(--fill);margin-top:8px}.seg button{height:30px;border:0;border-radius:8px;background:none;font-size:13px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .2s var(--ease),transform .15s var(--ease)}.seg button:active{transform:scale(.96)}.seg button[aria-checked=true]{background:var(--card);font-weight:600;box-shadow:0 3px 8px #0000001f,0 0 0 .5px #0000000a}:root[data-theme=dark] .seg button[aria-checked=true]{background:#636366;box-shadow:none}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .seg button[aria-checked=true]{background:#636366;box-shadow:none}}.swatch{width:12px;height:12px;border-radius:50%}.pane{padding:6px 16px 48px;animation:pane-in .26s var(--ease-out)}@keyframes pane-in{0%{opacity:0;transform:translateY(6px)}}.page-head{padding:14px 4px 18px}.large-title{margin:0;font:700 30px/1.1 var(--font-display);letter-spacing:-.025em;text-wrap:balance}.large-title:first-letter{text-transform:uppercase}.subtitle{margin:4px 0 0;color:var(--text-2);font-size:15px}.subtitle:first-letter{text-transform:uppercase}.group{margin-bottom:28px}.group-title{display:flex;align-items:baseline;justify-content:space-between;margin:0 4px 7px;font-size:13px;font-weight:600;color:var(--text-2);letter-spacing:0}.group-count{font-weight:500;font-variant-numeric:tabular-nums;color:var(--text-3)}.footnote{margin:7px 4px 0;font-size:13px;line-height:1.4;color:var(--text-2)}.footnote em,.leave em{font-style:normal;color:var(--text);font-weight:500}.notice{margin:-10px 4px 22px}.card{background:var(--card);border-radius:var(--r-card);box-shadow:var(--shadow);overflow:hidden}.empty{margin:0;padding:14px 16px;color:var(--text-2);font-size:14px}.list,.swipe{position:relative}.swipe-action{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:flex-end;padding-right:22px;color:#fff;background:var(--danger)}.swipe-action span{display:inline-flex;transition:transform .12s var(--ease)}.swipe-body{position:relative;background:var(--card);touch-action:pan-y;transition:transform .38s var(--ease);will-change:transform}.swipe-body.is-tracking{transition:none}.swipe.is-leaving .swipe-body{transition-duration:.22s}.swipe.is-dragging{z-index:5}.swipe.is-dragging .swipe-body{border-radius:12px;box-shadow:var(--shadow-lift);transform:scale(1.02)}.row{position:relative;display:flex;align-items:center;gap:12px;min-height:46px;padding:8px 12px 8px 16px}.swipe~.swipe .row:before,.list+.composer:before{content:"";position:absolute;top:0;left:50px;right:0;height:.5px;background:var(--sep)}.check{flex:none;display:grid;place-items:center;width:22px;height:22px;padding:0;border-radius:50%;border:1.75px solid var(--text-3);background:none;color:transparent;transition:background .2s var(--ease),border-color .2s var(--ease),transform .15s var(--ease)}.check svg{transform:scale(.4);transition:transform .28s var(--ease)}.check:hover{border-color:var(--tint)}.check:active{transform:scale(.88)}.check.is-on{background:var(--tint);border-color:var(--tint);color:var(--on-tint)}.check.is-on svg{transform:scale(1)}.title{flex:1;min-width:0;padding:3px 0;border:0;background:none;text-align:left;color:var(--text);overflow-wrap:anywhere;cursor:text;-webkit-user-select:text;user-select:text;transition:color .2s ease}.is-done .title{color:var(--text-3);text-decoration:line-through;text-decoration-color:var(--text-3)}.title-input{flex:1;min-width:0;padding:2px 8px;margin:1px -8px;border:0;border-radius:7px;background:var(--fill);outline:none}.rank{flex:none;min-width:22px;padding:4px 0;text-align:center;border-radius:6px;font:500 13px/1 var(--font-round);font-variant-numeric:tabular-nums;color:var(--text-3)}.rank.is-grip{cursor:grab;touch-action:none}.rank.is-grip:hover{color:var(--text);background:var(--fill)}.rank.is-grip:active{cursor:grabbing}.icon-btn{display:inline-grid;place-items:center;width:32px;height:32px;padding:0;flex:none;border:0;border-radius:8px;background:none;color:var(--text-2);transition:background .15s ease,color .15s ease,opacity .15s ease,transform .15s var(--ease)}.icon-btn:hover{background:var(--fill);color:var(--text)}.icon-btn:active{transform:scale(.9)}.row-remove{opacity:0;margin:-6px -4px}.row:hover .row-remove,.row-remove:focus-visible{opacity:1}.row-remove:hover{color:var(--danger);background:none}.chip{position:relative;flex:none;display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 9px;border-radius:999px;background:var(--fill);font-size:12px;font-weight:500;color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap}.chip.is-urgent{background:var(--warn-soft);color:var(--warn)}.chip-date{cursor:pointer}.chip-date.is-empty{width:28px;padding:0;justify-content:center;background:none;color:var(--text-3)}.chip-date.is-empty:hover{background:var(--fill);color:var(--text-2)}.chip-date input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;cursor:pointer;border:0;padding:0}.chip-date input::-webkit-calendar-picker-indicator{position:absolute;top:0;right:0;bottom:0;left:0;width:auto;height:auto;opacity:0;cursor:pointer}.row .chip-date.is-empty{opacity:0}.row:hover .chip-date.is-empty,.chip-date.is-empty:focus-within{opacity:1}.composer{position:relative;display:flex;align-items:center;gap:12px;min-height:46px;padding:6px 12px 6px 16px}.composer input:not([type=date]){flex:1;min-width:0;padding:6px 0;border:0;background:none;outline:none;color:var(--text)}.composer input::placeholder{color:var(--text-3)}.composer-add{flex:none;display:grid;place-items:center;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:var(--tint-soft);color:var(--tint);transition:background .2s var(--ease),color .2s var(--ease),transform .15s var(--ease)}.composer-add.is-ready{background:var(--tint);color:var(--on-tint)}.composer-add:active{transform:scale(.88)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:36px;padding:0 16px;border:0;border-radius:999px;background:var(--fill);color:var(--text);font-weight:600;font-size:14px;white-space:nowrap;transition:transform .15s var(--ease),background .15s ease,opacity .15s ease}.btn:hover{background:var(--fill-2)}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-primary{background:var(--tint);color:var(--on-tint)}.btn-primary:hover{background:var(--tint);opacity:.88}.btn-danger{background:none;color:var(--danger);box-shadow:inset 0 0 0 1.5px currentColor}.btn-danger:not(:disabled):hover{background:var(--danger);color:#fff}.btn-lg{height:44px;padding:0 22px;font-size:15px}.link{padding:0;border:0;background:none;color:var(--tint);font-weight:500}.link.is-muted{color:var(--text-2);margin-left:auto;font-size:13px}.link.is-muted:hover{color:var(--danger)}.field{width:100%;margin-top:8px;padding:11px 14px;border:0;border-radius:12px;background:var(--card);color:var(--text);box-shadow:var(--shadow);outline:none;resize:vertical;transition:box-shadow .15s ease}.field:focus{box-shadow:0 0 0 2px var(--tint)}.field.is-valid{box-shadow:0 0 0 2px #34c759}.field.narrow{width:96px}.actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:22px}.actions.left{justify-content:flex-start;align-items:center;margin-top:12px}.auth{display:grid;gap:8px;margin-top:10px}.auth .field{margin-top:0}.start-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;margin-bottom:28px}.start-name{margin:0;font:600 17px/1.25 var(--font-display);letter-spacing:-.02em}.start-rhythm{margin:3px 0 0;font-size:13px;color:var(--text-2)}.method{position:relative;display:block;width:100%;padding:12px 16px;border:0;background:none;text-align:left;transition:background .15s ease}.method+.method:before{content:"";position:absolute;top:0;left:16px;right:0;height:.5px;background:var(--sep)}.method:hover{background:var(--fill)}.method:active{background:var(--fill-2)}.method-head{display:flex;align-items:baseline;gap:10px}.method-name{flex:1;font-weight:500}.method-rhythm{font-size:13px;color:var(--text-2);font-variant-numeric:tabular-nums}.method-tick{width:16px;color:var(--tint);align-self:center;display:grid}.method.is-on .method-name{color:var(--tint);font-weight:600}.method-desc{display:block;margin-top:6px;padding-right:26px;font-size:13px;line-height:1.45;color:var(--text-2);animation:reveal .26s var(--ease-out)}@keyframes reveal{0%{opacity:0;transform:translateY(-3px)}}.running{text-align:center;padding:36px 8px 24px}.running-meta{margin:0;font-size:13px;color:var(--text-2)}.running-phase{margin:6px 0 0;font:600 20px/1.2 var(--font-display);letter-spacing:-.02em}.running.is-work .running-phase{color:var(--tint)}.clock{margin:14px 0 22px;font:200 84px/1 var(--font-display);letter-spacing:-.045em;font-variant-numeric:tabular-nums}.progress{height:4px;max-width:300px;margin:0 auto 18px;border-radius:2px;background:var(--fill);overflow:hidden}.progress span{display:block;height:100%;background:var(--tint);transform-origin:left;transition:transform .25s linear;border-radius:inherit}.running.is-break .progress span{background:#34c759}.running-hint{margin:0 auto;max-width:300px;font-size:14px;color:var(--text-2)}.leave{display:grid;gap:6px;max-width:340px;margin:26px auto 0;text-align:center}.leave label{font-size:14px;color:var(--text-2)}.leave .field{text-align:center}.score-card{padding:18px 16px 14px;margin-bottom:28px}.week{display:flex;gap:8px}.week-day{flex:1;display:grid;gap:6px;justify-items:center}.week-bar{width:100%;height:64px;border-radius:7px;background:var(--fill);display:flex;align-items:flex-end;overflow:hidden}.week-bar span{display:block;width:100%;border-radius:7px;background:var(--tint);transition:height .5s var(--ease-out)}.week-day:not(.is-today) .week-bar span{background:color-mix(in srgb,var(--tint) 38%,var(--card))}.week-day.is-today .week-bar span{background:var(--tint)}.week-day small{font-size:11px;font-weight:600;color:var(--text-3);text-transform:uppercase}.week-day.is-today small{color:var(--tint)}.toast-host{position:fixed;left:0;right:0;bottom:max(16px,env(safe-area-inset-bottom));z-index:40;display:flex;justify-content:center;pointer-events:none;padding:0 16px}.toast{pointer-events:auto;display:flex;align-items:center;gap:14px;max-width:100%;padding:8px 8px 8px 16px;border-radius:14px;background:#1e1e20db;color:#fff;font-size:14px;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);box-shadow:var(--shadow-lift);animation:toast-in .38s var(--ease)}.toast>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast-undo{flex:none;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:0;border-radius:9px;background:#ffffff24;color:#fff;font-weight:600;font-size:14px}.toast-undo:active{transform:scale(.96)}@keyframes toast-in{0%{opacity:0;transform:translateY(16px) scale(.96);filter:blur(4px)}}.blocked-card{max-width:420px;margin:18vh auto 0;padding:0 20px;text-align:center;display:grid;gap:10px}.blocked-card h1{margin:10px 0 0;font:700 26px/1.15 var(--font-display);letter-spacing:-.025em;text-wrap:balance}.blocked-card p{margin:0;color:var(--text-2)}.blocked-card form{display:grid;gap:10px;margin-top:22px}.blocked-card label{font-size:14px;color:var(--text-2)}.blocked-card label em{font-style:normal;color:var(--text);font-weight:500}.blocked-card .field{text-align:center}@media (pointer: coarse){.row-remove{display:none}.row .chip-date.is-empty{opacity:1}}@media (max-width: 520px) and (pointer: coarse){.bar{padding-bottom:6px}.bar-top{margin-bottom:0}.tabs{position:fixed;left:0;right:0;bottom:0;z-index:30;grid-template-columns:repeat(4,1fr);padding:6px 8px max(8px,env(safe-area-inset-bottom));border-radius:0;background:var(--material);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);box-shadow:0 -.5px 0 var(--sep)}.tabs button{flex-direction:column;gap:3px;height:48px;font-size:10.5px;font-weight:500;color:var(--text-3)}.tabs button svg{display:block}.tabs button[aria-selected=true]{color:var(--tint);font-weight:600}.tabs-thumb{display:none}.pane{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.toast-host{bottom:calc(76px + env(safe-area-inset-bottom))}.large-title{font-size:32px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:1ms!important;transition-duration:1ms!important}.swipe-body{transition:none}}@media (prefers-reduced-transparency: reduce){.bar:before,.tabs,.toast{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--bg)}.toast{background:#1c1c1e}}@media (prefers-contrast: more){:root{--text-2: var(--text);--sep: var(--text-3)}.card{box-shadow:0 0 0 1px var(--text-3)}}.score-line{margin:0;font:600 17px/1.3 var(--font-display);letter-spacing:-.015em}.score-line strong{color:var(--tint);font-variant-numeric:tabular-nums}.score-sub{display:flex;align-items:center;gap:5px;margin:3px 0 16px;font-size:13px;color:var(--text-2)}.score-sub svg{color:var(--tint)}.score-card .week-bar{height:96px}.row:focus-within .row-remove,.row:focus-within .chip-date.is-empty{opacity:1}
