:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--glow:91 66 243;--card-border:transparent;--bg:#f4f2fb;--surface:#fff;--fill:#ebe8f7;--thumb:#fff;--text:#000;--muted:#5f5f66;--line:#3c3c4333;--tint:#5b42f3;--tint-ink:#fff;--tint-soft:rgb(var(--glow) / .12);--grad-a:#6a4dff;--grad-b:#5236e6;--accent:#ff6b57;--shadow-tint:0 8px 20px rgb(var(--glow) / .32);--danger:#c0211b;--danger-ink:#fff;--switch-off:#8a8a90;--glass:#fffc;--glass-edge:#ffffffb3;--glass-shadow:0 10px 32px #00000024, 0 1px 3px #00000014;--ok-bg:#dcf0e4;--ok-ink:#0f5132;--warn-bg:#fdeccc;--warn-ink:#6b4200;--bad-bg:#fbdcdc;--bad-ink:#8a1c1c;--neutral-bg:#ebe8f7;--neutral-ink:#48484d;--r-card:22px;--r-ctl:14px;--font:-apple-system, BlinkMacSystemFont, system-ui, "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-rounded:ui-rounded, "SF Pro Rounded", -apple-system, system-ui, sans-serif}:root[data-theme=dark]{--bg:#08080b;--surface:#121216;--fill:#1c1c23;--thumb:#3a3a45;--text:#f5f5f7;--muted:#9c9ca9;--line:#ffffff17;--tint:#4de3c4;--tint-ink:#02221c;--tint-soft:#4de3c424;--grad-a:#5df2d2;--grad-b:#38bdf8;--accent:#b8ff6a;--glow:77 227 196;--shadow-tint:0 8px 22px #00000080;--danger:#ff7b72;--danger-ink:#2a0503;--switch-off:#3a3a45;--glass:#16161cb8;--glass-edge:#ffffff1a;--glass-shadow:0 10px 32px #0000008c;--ok-bg:#0f3a2d;--ok-ink:#7dffc4;--warn-bg:#3d2c0a;--warn-ink:#ffd37a;--bad-bg:#451a1a;--bad-ink:#ff9d9d;--neutral-bg:#1c1c23;--neutral-ink:#c9c9d4;--ink:#f5f5f7;--ink-text:#0a0a0d;--card-border:#ffffff14;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root[data-theme=auto]{--bg:#08080b;--surface:#121216;--fill:#1c1c23;--thumb:#3a3a45;--text:#f5f5f7;--muted:#9c9ca9;--line:#ffffff17;--tint:#4de3c4;--tint-ink:#02221c;--tint-soft:#4de3c424;--grad-a:#5df2d2;--grad-b:#38bdf8;--accent:#b8ff6a;--glow:77 227 196;--shadow-tint:0 8px 22px #00000080;--danger:#ff7b72;--danger-ink:#2a0503;--switch-off:#3a3a45;--glass:#16161cb8;--glass-edge:#ffffff1a;--glass-shadow:0 10px 32px #0000008c;--ok-bg:#0f3a2d;--ok-ink:#7dffc4;--warn-bg:#3d2c0a;--warn-ink:#ffd37a;--bad-bg:#451a1a;--bad-ink:#ff9d9d;--neutral-bg:#1c1c23;--neutral-ink:#c9c9d4;--ink:#f5f5f7;--ink-text:#0a0a0d;--card-border:#ffffff14;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}@media (prefers-reduced-transparency:reduce){:root{--glass:var(--surface)}}@media (prefers-contrast:more){:root{--line:#3c3c4380;--glass-edge:var(--muted)}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:15px}html[data-text=small]{font-size:14px}html[data-text=large]{font-size:16px}body{background:var(--bg);color:var(--text);font:1rem/1.4 var(--font);-webkit-font-smoothing:antialiased;margin:0}h1{font:700 1.875rem/1.12 var(--font);letter-spacing:.012em;margin:.25rem 0 .75rem}h2{font:700 1.125rem/1.25 var(--font);margin:0 0 .5rem}p{margin:0 0 .75rem}a,.link{color:var(--tint)}.link{min-width:44px;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;padding:.5rem .25rem;text-decoration:underline}:focus-visible{outline:3px solid var(--tint);outline-offset:2px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--muted)}.center{text-align:center}.big{font:700 1.375rem/1.2 var(--font);margin:.25rem 0}.lead{color:var(--muted);font-size:1rem}.error{color:var(--danger);margin:.25rem}.error:empty{margin:0}.loading{text-align:center;padding:2rem 1rem}.app{max-width:36rem;padding:max(.75rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) 8.5rem max(1rem, env(safe-area-inset-left));min-height:100dvh;margin:0 auto}main:focus{outline:none}.list,.plain{margin:0 0 1rem;padding:0;list-style:none}.plain li{padding:.375rem 0}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.screen>.row-between{margin-bottom:.5rem}.screen>.row-between h1{margin:0}.actions{justify-content:flex-end;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.actions.wrap{flex-wrap:wrap;justify-content:flex-start}.back,.tap,.status-line a,.plain li a,.book-title{align-items:center;min-height:44px;display:inline-flex}.back{gap:.25rem;font-weight:500;text-decoration:none}.chevron-back{border-bottom:2.5px solid;border-left:2.5px solid;width:.6rem;height:.6rem;margin-right:.15rem;transform:rotate(45deg)translate(2px,-2px)}.card{background:var(--surface);border-radius:var(--r-card);margin:0 0 1rem;padding:1rem}.note{background:var(--neutral-bg);color:var(--neutral-ink);border-radius:var(--r-ctl);padding:.625rem .875rem}.btn{background:var(--fill);min-width:44px;min-height:44px;color:var(--tint);font:600 1rem/1.2 var(--font);cursor:pointer;text-align:center;border:0;border-radius:999px;justify-content:center;align-items:center;padding:.5rem 1.25rem;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--tint);color:var(--tint-ink)}.btn-danger{color:var(--danger)}.btn-danger-fill{background:var(--danger);color:var(--danger-ink)}.btn-big{width:100%;min-height:54px;font-size:1.0625rem}.btn-icon{min-width:48px;padding:.5rem;font-size:1.0625rem}.group-wrap{margin:0 0 1.25rem}.group-title{font:600 max(11.5px, .8rem) / 1.3 var(--font);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 .375rem 1rem}.group-footer{color:var(--muted);margin:.375rem 1rem 0;font-size:max(11.5px,.8rem);line-height:1.35}.group{background:var(--surface);border-radius:var(--r-card);overflow:hidden}.group>*+*{box-shadow:inset 0 1px 0 var(--line)}.row-field{align-items:center;gap:1rem;min-height:48px;padding:.25rem 1rem;display:flex;position:relative}.row-label{flex:none}.row-input{min-width:0;min-height:44px;color:var(--text);font:inherit;text-align:right;background:0 0;border:0;flex:1;padding:.5rem 0}.row-input::placeholder{color:var(--muted);opacity:1}.row-input:focus-visible{outline:none}.row-field:focus-within{outline:3px solid var(--tint);outline-offset:-3px}.row-select{min-width:0;min-height:44px;color:var(--muted);font:inherit;text-align:right;text-align-last:right;appearance:none;background:0 0;border:0;flex:1}.row-select:focus-visible{outline:none}.row-picker{cursor:pointer;overflow:hidden}.row-value{background:var(--fill);font-variant-numeric:tabular-nums;border-radius:999px;margin-left:auto;padding:.35rem .85rem}.picker-input,.seg-input,.day-input{opacity:0;cursor:pointer;appearance:none;border:0;width:100%;height:100%;min-height:0;margin:0;padding:0;font-size:16px;position:absolute;inset:0}.row-button{width:100%;min-height:48px;color:var(--tint);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;padding:.25rem 1rem;display:flex}.row-danger{color:var(--danger)}.switch{background:var(--switch-off);cursor:pointer;appearance:none;border:0;border-radius:999px;flex:none;width:51px;height:31px;margin-left:auto;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:27px;height:27px;position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #0000004d}.switch:checked{background:var(--tint)}.switch:checked:after{transform:translate(20px)}.row-field:has(.switch:focus-visible){outline:3px solid var(--tint);outline-offset:-3px}.switch:focus-visible{outline:none}.segmented{background:var(--fill);border:0;border-radius:999px;gap:2px;margin:.5rem;padding:3px;display:flex}.seg-item{text-align:center;border-radius:999px;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:44px;padding:.25rem .5rem;line-height:1.2;display:flex;position:relative}.seg-item.on{background:var(--thumb);font-weight:600;box-shadow:0 1px 4px #0000002e}.seg-item:focus-within{outline:3px solid var(--tint);outline-offset:1px}.seg-sub{color:var(--muted);font-size:max(11.5px,.8rem)}.seg-item.on .seg-sub{color:var(--text)}.days{grid-template-columns:repeat(7,1fr);justify-items:center;gap:.25rem;padding:.75rem .5rem;display:grid}.day{aspect-ratio:1;background:var(--fill);border-radius:50%;place-items:center;width:100%;min-width:0;max-width:46px;min-height:44px;font-weight:700;display:grid;position:relative}.day.on{background:var(--tint);color:var(--tint-ink)}.day:focus-within{outline:3px solid var(--tint);outline-offset:2px}.field{flex-direction:column;gap:.25rem;margin-bottom:.5rem;display:flex}.field-label{font-weight:600}.sheet-title{font:700 1.375rem/1.2 var(--font);margin:.25rem 0 .75rem}.inline-form{margin:.5rem 0}.chip{border-radius:999px;padding:.15rem .7rem;font-size:.875rem;font-weight:700;display:inline-block}.chip-on-track{background:var(--ok-bg);color:var(--ok-ink)}.chip-at-risk{background:var(--warn-bg);color:var(--warn-ink)}.chip-off-track{background:var(--bad-bg);color:var(--bad-ink)}.chip-no-data,.chip-paused{background:var(--neutral-bg);color:var(--neutral-ink)}.tag{color:var(--tint);margin-left:.5rem;font-size:max(11.5px,.8rem);font-weight:700}.switcher{margin:.25rem 0 .5rem;display:block;position:relative}.switcher select{background:var(--surface);width:100%;min-height:48px;color:var(--text);font:700 1.0625rem/1.2 var(--font);appearance:none;border:0;border-radius:999px;padding:.5rem 2.5rem .5rem 1.25rem}.switcher:after{content:"";border-right:2.5px solid var(--muted);border-bottom:2.5px solid var(--muted);pointer-events:none;width:.5rem;height:.5rem;position:absolute;top:50%;right:1.25rem;transform:translateY(-70%)rotate(45deg)}.hero{flex-direction:column;align-items:center;margin:.75rem 0 1rem;display:flex}.ring{aspect-ratio:1;width:min(70vw,15rem);position:relative}.ring svg{width:100%;height:100%;display:block}.ring-track{fill:none;stroke:var(--fill);stroke-width:8px}.ring-arc{fill:none;stroke:var(--tint);stroke-width:8px;transform-origin:50%;transform-box:view-box}.ring-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ring-kicker{color:var(--muted);font-size:.9375rem;font-weight:600}.ring-number{font:700 3.5rem/1 var(--font-rounded);font-variant-numeric:tabular-nums}.ring-sub{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.9375rem}.status-line{flex-wrap:wrap;align-items:center;gap:.25rem .75rem;margin:0 .25rem 1rem;display:flex}.stepper{grid-template-columns:auto auto 1fr auto auto;align-items:center;gap:.375rem;display:grid}.page-input{border-radius:var(--r-ctl);background:var(--fill);min-width:0;min-height:48px;color:var(--text);text-align:center;font:700 1.375rem/1 var(--font-rounded);font-variant-numeric:tabular-nums;border:0;padding:.25rem}.log-form .btn-big{margin-top:.5rem}.done{text-align:center}.done-head{font:700 1.25rem/1.25 var(--font);margin-bottom:.5rem}.done-line{font-size:1rem}.done-milestone{color:var(--tint);font-weight:600}.book-row{align-items:center;gap:.5rem;margin-bottom:.625rem;display:flex}.book-row.is-active{box-shadow:inset 0 0 0 2px var(--tint)}.book-main{flex:1;min-width:0}.book-title{overflow-wrap:anywhere;font-size:1.0625rem;font-weight:700;text-decoration:none}.book-pred{flex-wrap:wrap;align-items:center;gap:.25rem .5rem;margin-top:.25rem;font-size:.9375rem;display:flex}.handle{min-width:44px;min-height:44px;color:var(--muted);cursor:grab;touch-action:none;background:0 0;border:0;border-radius:12px;place-items:center;display:grid}.grip{background:currentColor;border-radius:2px;width:20px;height:2.5px;display:block;box-shadow:0 -6px,0 6px}.dragging{cursor:grabbing;position:relative;box-shadow:0 10px 28px #00000047;transition:none!important}.ghost-book{border:2px dashed var(--line);border-radius:var(--r-card);width:100%;min-height:56px;color:var(--tint);font:600 1rem/1.2 var(--font);cursor:pointer;background:0 0;margin-bottom:.5rem}details.card summary{cursor:pointer;align-items:center;min-height:44px;font-weight:700;display:flex}.facts div{justify-content:space-between;gap:1rem;display:flex}.facts dt{color:var(--muted)}.facts dd{text-align:right;margin:0}.whatif{margin-top:.5rem;font-weight:600}input[type=range]{width:100%;min-height:44px;accent-color:var(--tint)}.celebration{text-align:center;position:relative}.burst{pointer-events:none;width:8rem;height:8rem;margin:-4rem 0 0 -4rem;position:absolute;top:5rem;left:50%}.tabs{left:max(.75rem, env(safe-area-inset-left));right:max(.75rem, env(safe-area-inset-right));bottom:calc(.5rem + env(safe-area-inset-bottom));background:var(--glass);border:1px solid var(--glass-edge);max-width:28rem;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(24px)saturate(1.6);backdrop-filter:blur(24px)saturate(1.6);z-index:5;view-transition-name:tabbar;border-radius:999px;grid-template-columns:repeat(4,1fr);gap:2px;margin:0 auto;padding:5px;display:grid;position:fixed}.tabs a{min-height:54px;color:var(--muted);border-radius:999px;flex-direction:column;justify-content:center;align-items:center;gap:1px;font-size:max(11px,.6875rem);font-weight:600;text-decoration:none;display:flex}.tabs a[aria-current=page]{background:var(--tint-soft);color:var(--tint)}.tab-icon{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round}.banners{gap:.5rem;margin-bottom:.75rem;display:grid}.banner{background:var(--neutral-bg);color:var(--neutral-ink);border-radius:var(--r-card);flex-wrap:wrap;align-items:center;gap:.25rem .75rem;margin:0;padding:.5rem 1rem;display:flex}.banner-warn{background:var(--warn-bg);color:var(--warn-ink)}.toast-slot{left:0;right:0;bottom:calc(5.75rem + env(safe-area-inset-bottom));pointer-events:none;z-index:6;justify-content:center;padding:0 1rem;display:flex;position:fixed}.toast{pointer-events:auto;background:var(--glass);color:var(--text);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(24px)saturate(1.6);backdrop-filter:blur(24px)saturate(1.6);border-radius:999px;align-items:center;gap:1rem;padding:.125rem .5rem .125rem 1.25rem;display:flex}.toast .link{font-weight:700;text-decoration:none}.dialog{background:var(--surface);color:var(--text);text-align:center;width:min(21rem,100vw - 2.5rem);box-shadow:var(--glass-shadow);border:0;border-radius:34px;padding:1.5rem 1.25rem 1.25rem}.dialog::backdrop{background:#0006}.dialog h2{font-size:1.0625rem}.dialog-body{color:var(--muted);font-size:.9375rem}.dialog-actions{flex-direction:column;gap:.5rem;margin-top:1rem;display:flex}.dialog-actions .btn{width:100%;min-height:48px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes drop-in{0%{opacity:0;translate:0 -48px}to{opacity:1;translate:0}}@keyframes burst{0%{opacity:.9;scale:.2}to{opacity:0;scale:2.6}}@keyframes reveal{0%{opacity:0;translate:0 16px}to{opacity:1;translate:0}}@media (prefers-reduced-motion:no-preference){.ring-arc{transition:transform .9s cubic-bezier(.2,.8,.2,1)}.switch:after{transition:transform .2s}.switch{transition:background-color .2s}.book-row{transition:transform .18s}.toast,.done{animation:.2s ease-out both fade-in}.burst:before,.burst:after{content:"";border:3px solid var(--tint);border-radius:50%;animation:1s ease-out both burst;position:absolute;inset:0}.burst:after{animation-delay:.25s}@supports (animation-timeline:view()){.book-row,.ghost-book{animation:linear both reveal;animation-timeline:view();animation-range:entry entry 40%}}::view-transition-old(root){animation-duration:.16s}::view-transition-new(root){animation-duration:.16s}}@media (prefers-reduced-motion:reduce){.toast,.done{animation:.15s linear both fade-in}}.cover{object-fit:cover;background:var(--fill);border-radius:6px;flex:none;width:44px;height:66px;box-shadow:0 1px 3px #00000040}.cover-lg{border-radius:8px;width:56px;height:84px}.cover-ph{background:hsl(var(--spine-hue,150) 38% 38%);color:#fff;font:700 1.25rem/1 var(--font-rounded);place-items:center;display:grid}.cover-lg.cover-ph{font-size:1.5rem}.book-head{align-items:flex-start;gap:1rem;margin:0 0 .75rem;display:flex}.book-head-text{min-width:0}.book-head-text h1{overflow-wrap:anywhere;margin:0 0 .25rem;font-size:1.5rem}.book-head-text p{margin:0 0 .5rem}.row-end{margin-left:auto}.row-button:disabled{color:var(--muted);cursor:not-allowed}.row-hit{width:100%;min-height:72px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.75rem;padding:.5rem 1rem;text-decoration:none;display:flex}.hit-text{flex-direction:column;min-width:0;display:flex}.hit-title{overflow-wrap:anywhere;font-weight:700}.hit-meta{color:var(--muted);font-size:.9375rem}.lookup-note{margin:0 1rem 1rem;font-size:.9375rem}.lookup-detail{margin-top:.25rem;font-size:max(11.5px,.8rem);display:block}.chevron-fwd{border-top:2.5px solid;border-right:2.5px solid;width:.6rem;height:.6rem;transform:rotate(45deg)translate(-2px,2px)}.cal{padding:.75rem .5rem .5rem}.cal-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.cal-head h2{text-align:center;flex:1;margin:0}.cal-today{margin:0 auto;display:block}.cal-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.cal-wd{text-align:center;color:var(--muted);padding:.25rem 0;font-size:max(11.5px,.8rem);font-weight:600}.cal-day{min-height:48px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:14px;flex-direction:column;justify-content:flex-start;align-items:center;gap:2px;padding:4px 0 2px;display:flex}.cal-num{font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:2rem;height:2rem;display:grid}.cal-day.today .cal-num{background:var(--tint);color:var(--tint-ink);font-weight:700}.cal-day.sel{box-shadow:inset 0 0 0 2px var(--tint)}.cal-dots{align-items:center;gap:3px;min-height:8px;display:flex}.cal-dots i{background:hsl(var(--spine-hue) 45% 38%);border-radius:50%;width:7px;height:7px}.cal-dots i.done{box-shadow:inset 0 0 0 1.5px hsl(var(--spine-hue) 45% 38%);background:0 0}.cal-dots b{color:var(--muted);font-size:max(11px,.6875rem)}:root[data-theme=dark] .cal-dots i{background:hsl(var(--spine-hue) 60% 65%)}:root[data-theme=dark] .cal-dots i.done{box-shadow:inset 0 0 0 1.5px hsl(var(--spine-hue) 60% 65%);background:0 0}@media (prefers-color-scheme:dark){:root[data-theme=auto] .cal-dots i{background:hsl(var(--spine-hue) 60% 65%)}:root[data-theme=auto] .cal-dots i.done{box-shadow:inset 0 0 0 1.5px hsl(var(--spine-hue) 60% 65%);background:0 0}}.cal-list-title{justify-content:space-between;align-items:center;gap:.5rem;margin:1.25rem .25rem .5rem;display:flex}.chips-row{flex-wrap:wrap;align-items:center;gap:.375rem;margin-top:.25rem;display:flex}.chip-life{background:var(--neutral-bg);color:var(--neutral-ink)}.progress{background:var(--fill);border-radius:999px;height:8px;margin:.25rem 0 .75rem;overflow:hidden}.progress-fill{background:var(--tint);transform-origin:0;border-radius:999px;width:100%;height:100%}.facts{display:block}.facts-main{font-variant-numeric:tabular-nums;margin:0 0 .75rem}.facts dl{gap:.5rem;margin:0;display:grid}.primary-action{margin:0 0 1.25rem}.primary-action p{margin:0 .25rem .5rem}.row-action{width:100%;min-height:56px;color:var(--tint);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:.125rem;padding:.5rem 1rem;display:flex}.row-action:disabled{color:var(--muted);cursor:not-allowed}.row-nested{background:var(--bg);padding-left:2rem}.row-title{font-weight:600}.row-sub{color:var(--muted);font-size:max(11.5px,.8rem)}.row-log{width:100%;min-height:48px;color:var(--text);font:inherit;text-align:left;font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:1rem;padding:.25rem 1rem;display:flex}.row-log.static{cursor:default}.row-log .delta{color:var(--muted);margin-left:.25rem}.row-editor-actions{margin:0;padding:0 1rem .75rem}.spacer{flex:1}:root{--r-card:26px;--r-ctl:16px}h1{letter-spacing:-.015em;margin:.5rem .25rem 1rem;font-size:2.125rem}.group-wrap{margin-bottom:1.5rem}.group-title{text-transform:none;letter-spacing:0;margin-left:1.25rem;font-size:max(12px,.875rem)}.group-footer{margin-left:1.25rem;margin-right:1.25rem}.group>*+*{box-shadow:none;position:relative}.group>*+:before{content:"";background:var(--line);pointer-events:none;height:1px;position:absolute;top:0;left:1rem;right:0}.row-field,.row-button{min-height:52px;padding-left:1.25rem;padding-right:1.25rem}.card{padding:1.25rem}.btn{transition:transform .12s,opacity .12s}.btn:active,.row-button:active,.more-toggle:active{opacity:.8;transform:scale(.98)}.btn-big{min-height:56px;font-size:1.125rem}.sheet-inline .actions{flex-direction:row-reverse;justify-content:stretch;margin-top:.75rem}.sheet-inline .actions .btn-primary{flex:1;min-height:54px;font-size:1.0625rem}.row-split{justify-content:space-between;gap:1rem}.more-toggle{min-height:44px;color:var(--tint);font:500 1rem/1.2 var(--font);cursor:pointer;background:0 0;border:0;margin:-.5rem auto 1.25rem;padding:.5rem 1rem;display:block}.tabs{padding:4px}@media (prefers-reduced-motion:reduce){.btn,.btn:active,.row-button:active,.more-toggle:active{transition:none;transform:none}}input,select,textarea{font-size:max(16px,1rem)!important}html{-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}a,button,label,input,select,summary{touch-action:manipulation}button,.tabs,.btn,.row-button,.seg-item,.day{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body{background:radial-gradient(60rem 28rem at 90% -8%, #7c5cff29, transparent 62%), radial-gradient(44rem 22rem at -12% 6%, #ff6b5717, transparent 60%), var(--bg);background-repeat:no-repeat;background-attachment:fixed}:root[data-theme=dark] body{background:radial-gradient(60rem 28rem at 92% -10%, #38bdf829, transparent 62%), radial-gradient(44rem 22rem at -14% 4%, #b8ff6a12, transparent 60%), var(--bg);background-repeat:no-repeat;background-attachment:fixed}@media (prefers-color-scheme:dark){:root[data-theme=auto] body{background:radial-gradient(60rem 28rem at 92% -10%, #38bdf829, transparent 62%), radial-gradient(44rem 22rem at -14% 4%, #b8ff6a12, transparent 60%), var(--bg);background-repeat:no-repeat;background-attachment:fixed}}h1,.sheet-title,.big,.done-head{font-family:var(--font-rounded)}h1{font-weight:800}.btn{background:var(--tint-soft)}.btn-danger{background:var(--fill)}.btn-primary{background:linear-gradient(135deg, var(--grad-a), var(--grad-b));box-shadow:var(--shadow-tint)}.row-field:focus-within{background:var(--tint-soft);outline:none}.row-field:has(.switch:focus-visible){background:var(--tint-soft);outline:none}.row-value.is-empty{color:var(--muted);background:0 0;padding-right:0}.link-inline{min-height:44px;color:var(--tint);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline;display:block}.view-switch .segmented{margin:0 0 1.25rem}.segmented{background:var(--fill)}.seg-item.on{box-shadow:0 1px 2px #0000001a,0 4px 10px #3c28a01a}.group .segmented{margin:.5rem}@keyframes sheet-up{0%{opacity:0;translate:0 24px}to{opacity:1;translate:0}}.sheet{z-index:40;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:var(--bg);margin:0;position:fixed;inset:0;overflow-y:auto}@media (prefers-reduced-motion:no-preference){.sheet{animation:.3s cubic-bezier(.2,.9,.3,1) both sheet-up}}body:has(.sheet){overflow:hidden}.sheet-bar{z-index:2;padding:max(.5rem, env(safe-area-inset-top)) max(.5rem, env(safe-area-inset-right)) .5rem max(.5rem, env(safe-area-inset-left));background:var(--glass);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(24px)saturate(1.6);backdrop-filter:blur(24px)saturate(1.6);grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:sticky;top:0}.sheet-bar .sheet-title{text-align:center;margin:0;font-size:1.0625rem}.bar-btn{min-height:44px;color:var(--tint);font:500 1.0625rem/1 var(--font);cursor:pointer;background:0 0;border:0;justify-self:start;padding:0 .75rem}.bar-primary{justify-self:end;font-weight:700}.bar-btn:active{opacity:.5}.sheet-body{max-width:36rem;padding:1.25rem max(1rem, env(safe-area-inset-right)) calc(3rem + env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));margin:0 auto}.sheet-inline{margin:0 0 1.5rem}.book-row{border-radius:26px;gap:.75rem;padding:.875rem .875rem .875rem 1rem;box-shadow:0 6px 20px #281e6412}.book-row .cover{border-radius:9px;width:54px;height:81px;box-shadow:0 2px 6px #00000038,0 0 0 1px #0000000a}.book-row.is-active{background:linear-gradient(140deg, var(--tint-soft), var(--surface) 65%);box-shadow:inset 0 0 0 1.5px var(--tint-soft), 0 10px 26px rgb(var(--glow) / .14)}.book-title{color:var(--text);min-height:44px;line-height:1.2;font-family:var(--font-rounded);font-size:1.125rem}.tag{background:var(--tint);color:var(--tint-ink);letter-spacing:.01em;vertical-align:middle;border-radius:999px;margin:0 0 0 .5rem;padding:.1rem .6rem;font-size:max(11.5px,.75rem);display:inline-block}.book-main .muted{font-size:.9375rem}.mini-bar{background:var(--fill);border-radius:999px;height:6px;margin:.5rem 0 .25rem;overflow:hidden}.mini-bar span{border-radius:inherit;background:linear-gradient(90deg, var(--grad-a), var(--accent));height:100%;display:block}.book-row .handle{opacity:.45;order:3;min-width:44px}.book-row .btn{order:2;min-height:40px;padding:.25rem 1rem}.ghost-book{border-color:var(--tint-soft);background:var(--tint-soft);border-radius:26px}.ring-track{stroke:var(--fill)}.ring-number{font-weight:800}.switcher select{box-shadow:0 4px 14px #281e6412}.tabs a[aria-current=page]{background:var(--tint-soft)}.tabs{box-shadow:var(--glass-shadow), 0 0 0 .5px #0000000a}.btn.btn-danger-fill{background:var(--danger);color:var(--danger-ink);box-shadow:0 8px 20px #c0211b47}.dialog .btn:focus-visible{outline:3px solid var(--tint);outline-offset:2px}.book-row .book-main{min-width:0}.book-row .tag{width:-moz-fit-content;width:fit-content;margin:0 0 .25rem;display:block}.book-row .book-title{align-items:center;min-height:44px;display:flex}.book-resume{order:0;min-height:44px;margin-top:.5rem;padding:.25rem 1.25rem}details.card{padding:0;overflow:hidden}details.card summary{justify-content:space-between;min-height:56px;padding:0 1.25rem;list-style:none}details.card summary::-webkit-details-marker{display:none}details.card summary:after{content:"";border-right:2.5px solid var(--muted);border-bottom:2.5px solid var(--muted);width:.55rem;height:.55rem;margin-right:.25rem;transform:rotate(45deg)}details.card[open] summary:after{transform:rotate(-135deg)}details.card .plain{margin:0}details.card .plain li{flex-direction:column;gap:.125rem;padding:.5rem 1.25rem;display:flex;position:relative}details.card .plain li:before{content:"";background:var(--line);height:1px;position:absolute;top:0;left:1.25rem;right:0}details.card .plain li a{align-items:center;min-height:44px;padding-top:.25rem;font-weight:600;text-decoration:none;display:flex}details.card .plain li .muted{margin-top:-.25rem;padding-bottom:.375rem;font-size:.9375rem}input[type=range]{appearance:none;background:0 0;height:44px}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--tint) var(--p,0%), var(--fill) var(--p,0%));border-radius:999px;height:8px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--tint);width:28px;height:28px;box-shadow:0 0 0 4px var(--surface), 0 4px 10px rgb(var(--glow) / .4);border:0;border-radius:50%;margin-top:-10px}input[type=range]::-moz-range-track{background:var(--fill);border-radius:999px;height:8px}input[type=range]::-moz-range-thumb{border:4px solid var(--surface);background:var(--tint);border-radius:50%;width:24px;height:24px}.book-row{touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:24px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;margin-bottom:.625rem;padding:.75rem .25rem .75rem .75rem;display:grid;position:relative}.book-row.dragging{cursor:grabbing;scale:1.02}.card-link{z-index:0;border-radius:inherit;position:absolute;inset:0}.card-link:focus-visible{outline:3px solid var(--tint);outline-offset:-3px}.book-row .cover{pointer-events:none;border-radius:8px;width:46px;height:69px}.book-main{pointer-events:none;min-width:0}.book-row .book-title{-webkit-line-clamp:2;min-height:0;font:700 1.0625rem/1.2 var(--font-rounded);overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.book-sub{white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:.875rem;overflow:hidden}.prog{align-items:center;gap:.5rem;margin:.375rem 0;display:flex}.prog .mini-bar{flex:1;margin:0}.prog-n{color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:.8125rem}.book-meta{flex-wrap:wrap;align-items:center;gap:.25rem .5rem;display:flex}.book-meta .chip{padding:.05rem .55rem;font-size:max(11px,.75rem)}.meta-text{color:var(--muted);font-size:.8125rem}.book-resume{z-index:1;pointer-events:auto;cursor:pointer;background:0 0;border:0;align-items:center;min-height:44px;margin:-.5rem 0;padding:0 .25rem;display:inline-flex;position:relative}.book-resume .pill{background:var(--tint);color:var(--tint-ink);font:600 .8125rem/1.2 var(--font);border-radius:999px;padding:.2rem .75rem}.book-row.is-active{grid-template-columns:auto minmax(0,1fr) auto}.btn-quiet{background:var(--fill);white-space:nowrap;min-height:44px;padding:.5rem;font-size:.875rem}.done-actions{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.5rem;margin-top:.75rem;display:grid}.log-form>.link{margin:.25rem auto 0;display:block}.topbar{justify-content:space-between;align-items:center;margin-bottom:.25rem;display:flex}.menu-wrap{position:relative}.icon-btn{background:var(--tint-soft);width:44px;height:44px;color:var(--tint);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid}.menu{z-index:30;border:1px solid var(--line);background:var(--surface);border-radius:22px;min-width:13rem;padding:.375rem;position:absolute;top:calc(100% + .375rem);right:0;box-shadow:0 16px 40px #1e145a38}@media (prefers-reduced-motion:no-preference){.menu{transform-origin:100% 0;animation:.16s cubic-bezier(.2,.9,.3,1.1) both menu-in}}@keyframes menu-in{0%{opacity:0;scale:.92}to{opacity:1;scale:1}}.menu-item{width:100%;min-height:48px;color:var(--text);font:500 1.0625rem/1.2 var(--font);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:16px;align-items:center;padding:0 1rem;display:flex}.menu-item:focus-visible,.menu-item:active{background:var(--tint-soft);outline:none}.menu-danger{color:var(--danger);margin-top:.375rem;position:relative}.menu-danger:before{content:"";background:var(--line);height:1px;position:absolute;top:-.1875rem;left:1rem;right:1rem}.view-switch .seg-item{min-width:0;padding:.25rem .125rem}.archive-group{margin-bottom:.5rem}.archive-group .group-title{margin:.5rem 0 .5rem .25rem}.archive-row{grid-template-columns:auto minmax(0,1fr) auto;padding-right:1rem}.archive-row .book-main .meta-text{margin-top:.25rem}.row-chevron{border-right:2.5px solid var(--muted);border-top:2.5px solid var(--muted);width:.55rem;height:.55rem;transform:rotate(45deg)}:root{--ink:#17141f;--ink-text:#fff;--r-btn:16px}.btn{border-radius:var(--r-btn);min-height:44px;font:600 .9375rem/1.2 var(--font);letter-spacing:-.005em;gap:.375rem;padding:.5rem 1.125rem}.btn svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;flex:none}.btn-primary{background:var(--ink);color:var(--ink-text);box-shadow:inset 0 1px #ffffff29,0 1px 2px #140a3c40}.btn-primary:active{box-shadow:inset 0 1px #ffffff1a}.btn-big{border-radius:18px;min-height:52px;font-size:1rem}.btn:not(.btn-primary):not(.btn-danger-fill){background:var(--fill);color:var(--text)}.btn.btn-danger{color:var(--danger)}.btn.btn-danger-fill{box-shadow:none}.btn-quiet{background:var(--fill)}.book-resume .pill{background:var(--ink);color:var(--ink-text)}.book-row .tag{background:var(--tint-soft);color:var(--tint)}.sheet-inline .actions .btn-primary{border-radius:18px;min-height:52px}.finished-section{margin-top:.5rem}.section-head{justify-content:space-between;align-items:baseline;gap:1rem;margin:0 .25rem .5rem;display:flex}.section-title{margin:0}.count-badge{color:var(--tint);font-family:var(--font-rounded);margin-left:.25rem}.section-link{align-items:center;min-height:44px;font-weight:600;text-decoration:none;display:inline-flex}.head-actions{align-items:center;gap:.5rem;display:flex}.icon-btn{background:var(--fill);color:var(--text)}.icon-btn svg{fill:currentColor}.head-actions .icon-btn svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.bar-btn:disabled{opacity:.35;cursor:not-allowed}.dup-note{background:var(--warn-bg);color:var(--warn-ink);border-radius:22px;margin:0 0 1.25rem;padding:.875rem 1rem .25rem}.dup-note p{margin:0 0 .25rem}.dup-link{min-height:44px;color:inherit;justify-content:space-between;align-items:center;gap:.75rem;font-weight:700;text-decoration:none;display:flex}.dup-title{overflow-wrap:anywhere;text-decoration:underline}.dup-link .row-chevron{border-color:currentColor;flex:none}.book-row{grid-template-columns:auto minmax(0,1fr);padding-right:.875rem}.archive-row{grid-template-columns:auto minmax(0,1fr) auto}.switcher{background:var(--surface);border-radius:26px;align-items:center;gap:.875rem;margin:.25rem 0 .5rem;padding:.75rem 1rem .75rem .75rem;display:flex;position:relative;box-shadow:0 6px 20px #281e6412}.switcher:after{display:none}.switcher .cover{border-radius:7px;width:40px;height:60px}.now-text{flex-direction:column;flex:1;min-width:0;display:flex}.now-eyebrow{color:var(--muted);letter-spacing:.02em;font-size:max(11.5px,.8125rem);font-weight:600}.now-title{font:700 1.125rem/1.2 var(--font-rounded);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.now-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;overflow:hidden}.now-chevron{border-right:2.5px solid var(--muted);border-bottom:2.5px solid var(--muted);flex:none;width:.55rem;height:.55rem;margin-right:.25rem;transform:rotate(45deg)}.switcher select{border-radius:inherit;width:100%;height:100%;min-height:0;box-shadow:none;color:#0000;opacity:0;cursor:pointer;background:0 0;border:0;padding:0;position:absolute;inset:0}.switcher:focus-within{outline:3px solid var(--tint);outline-offset:2px}.hero{margin:.5rem 0 .75rem}.ring{width:min(58vw,13rem)}.ring-number{font-size:3.25rem}.scrub{width:100%;margin:0 0 .5rem;display:block}.log-form{padding:1rem 1rem .75rem}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:0 0 .75rem;display:grid}.stat{background:var(--surface);color:var(--text);text-align:center;border-radius:20px;flex-direction:column;gap:.125rem;padding:.75rem .5rem;text-decoration:none;display:flex;box-shadow:0 4px 14px #281e640d}a.stat:active{background:var(--tint-soft)}.stat-n{font:800 1.25rem/1.1 var(--font-rounded);font-variant-numeric:tabular-nums}.stat-l{color:var(--muted);font-size:max(11.5px,.8125rem)}.week-card{background:var(--surface);border-radius:24px;margin:0 0 1rem;padding:.875rem 1rem .75rem;box-shadow:0 4px 14px #281e640d}.week-title{justify-content:space-between;margin:0 0 .625rem;font-weight:700;display:flex}.week-title .muted{font-size:.875rem;font-weight:500}.week{text-align:center;grid-template-columns:repeat(7,1fr);margin:0;padding:0;list-style:none;display:grid}.wk{flex-direction:column;align-items:center;gap:.25rem;display:flex}.wk-dot{background:var(--fill);border-radius:50%;width:30px;height:30px}.wk.on .wk-dot{background:linear-gradient(135deg, var(--grad-a), var(--accent));box-shadow:0 3px 8px rgb(var(--glow) / .3)}.wk.today .wk-dot{box-shadow:inset 0 0 0 2.5px var(--tint)}.wk.today.on .wk-dot{box-shadow:0 0 0 3px var(--surface), 0 0 0 5.5px var(--tint)}.wk.rest .wk-dot{box-shadow:inset 0 0 0 2px var(--line);background:0 0}.wk-l{color:var(--muted);font-size:max(11.5px,.8125rem);font-weight:600}.wk.today .wk-l{color:var(--text)}.scrub:focus-visible{outline:none}.scrub:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px var(--surface), 0 0 0 7px var(--tint-soft), 0 4px 10px rgb(var(--glow) / .4)}.status-line{gap:.375rem .625rem;margin:0 .25rem .75rem;font-size:.9375rem;font-weight:600}.status-line .muted{font-weight:500}.status-line a{font-weight:600}.log-form>.link{color:var(--muted);font-size:.9375rem;font-weight:600;text-decoration:none}.card,.group,.stat,.week-card,.switcher,.menu,.dialog,.dup-note{border:1px solid var(--card-border)}.now{align-items:center;gap:1rem;margin:.25rem 0 1rem;display:flex}.now>.cover{aspect-ratio:2/3;border-radius:12px;flex:none;width:min(28vw,6.75rem);height:auto;box-shadow:0 18px 36px #00000059,0 0 0 1px #ffffff0f}.now>.cover-ph{font-size:2.5rem}.now-info{flex-direction:column;flex:1;gap:.75rem;min-width:0;display:flex}.switcher{box-shadow:none;background:0 0;border:0;border-radius:12px;align-items:flex-start;gap:.5rem;margin:0;padding:0;display:flex}.switcher .now-text{min-height:44px}.now-title{-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;font-size:1.375rem;line-height:1.15;display:-webkit-box;overflow:hidden}.now-chevron{margin:.75rem .25rem 0 0}.now-stop{align-items:center;gap:.75rem;display:flex}.now-stop .ring{flex:none;width:5.25rem}.now-stop .ring-number{font-size:1.75rem}.now-stop-text{flex-direction:column;min-width:0;display:flex}.now-stop-text .ring-kicker{color:var(--muted);font-size:max(11.5px,.8125rem);font-weight:600}.now-stop-text .ring-sub{font:700 1rem/1.2 var(--font-rounded);font-variant-numeric:tabular-nums}.wk.future .wk-dot{opacity:.45}.now-stop .ring-number-pct{letter-spacing:-.02em;font-size:1.05rem}.cal-section{margin-bottom:.5rem}.outlook{margin-top:1rem}.outlook .big{margin:.125rem 0 .25rem}.outlook .field{margin:1rem 0 0}img.cover{image-rendering:auto}
/*$vite$:1*/