@font-face{font-family:Outfit;src:url(/fonts/outfit-latin.woff2)format("woff2");font-weight:400 700;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3fbf8;--surface:#fff;--border:#cfe6df;--text:#0b3b3a;--muted:#47645f;--accent:#0a6c6c;--primary:#0a6c6c;--on-primary:#fff;--alert:#c62f34;--on-alert:#fff;--code-bg:#e7f4f0;--ring-track:#d3e9e2;--contour:#0a6c6c;--contour-opacity:.13;--card-shadow:0 1px 2px #0b3b3a0f, 0 8px 24px #0b3b3a12}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#07201f;--surface:#0f302e;--border:#1c4744;--text:#d6f2e8;--muted:#9cc4ba;--accent:#7de2c3;--primary:#1b6f67;--on-primary:#e9fff4;--alert:#ff9a9d;--on-alert:#2b0708;--code-bg:#041614;--ring-track:#17423e;--contour:#7de2c3;--contour-opacity:.07;--card-shadow:none}.logo-dark,:root[data-theme=dark] .logo-light{display:none}:root[data-theme=dark] .logo-dark{display:inline}.icon-btn{width:48px;height:48px;min-height:48px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-btn:hover{background:var(--code-bg)}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.i{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:24px;height:24px}.icon-sun,:root[data-theme=dark] .icon-moon{display:none}:root[data-theme=dark] .icon-sun{display:block}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);font:400 17px/1.45 Outfit,system-ui,-apple-system,sans-serif}[hidden]{display:none!important}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.contours{background:var(--contour);height:62vh;opacity:var(--contour-opacity);-webkit-mask-composite:source-in;pointer-events:none;position:fixed;inset:0 0 auto;-webkit-mask-image:url(/bg/contours.svg),linear-gradient(#000 55%,#0000);mask-image:url(/bg/contours.svg),linear-gradient(#000 55%,#0000);-webkit-mask-position:top,0 0;mask-position:top,0 0;-webkit-mask-size:760px,auto;mask-size:760px,auto;-webkit-mask-repeat:no-repeat,repeat;mask-repeat:no-repeat,repeat;-webkit-mask-clip:border-box,border-box;mask-clip:border-box,border-box;-webkit-mask-origin:border-box,border-box;mask-origin:border-box,border-box;-webkit-mask-composite:source-in;mask-composite:intersect;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.app{flex-direction:column;max-width:560px;min-height:100dvh;margin:0 auto;display:flex;position:relative}.topbar{min-height:64px;padding:max(8px, env(safe-area-inset-top)) 12px 8px 20px;align-items:center;gap:4px;display:flex}.topbar:has(#close:not([hidden])){padding-left:8px}#brand{margin:0;line-height:0}#brand img{width:auto;height:34px}.topbar-right{align-items:center;gap:4px;margin-left:auto;display:flex}.chip{background:var(--code-bg);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:14px;display:inline-flex}.chip .i{width:16px;height:16px}.chip.offline{color:var(--alert)}main{padding:0 20px calc(92px + env(safe-area-inset-bottom));flex-direction:column;flex:1;display:flex}.tab{flex-direction:column;flex:1;display:flex}.idle{flex-direction:column;flex:1;gap:20px;display:flex}.hero{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:12px 0;display:flex}.hero-mark{height:min(148px,15vh);margin-bottom:16px}.hero-title{letter-spacing:-.5px;text-wrap:balance;margin:0;font-size:36px;font-weight:600;line-height:1.1}.hero-sub{color:var(--muted);text-wrap:balance;margin:10px 0 0;font-size:18px}.start{background:var(--primary);width:100%;min-height:72px;color:var(--on-primary);cursor:pointer;border:0;border-radius:36px;justify-content:center;align-items:center;gap:10px;font:600 22px/1 Outfit,sans-serif;display:flex}.start:disabled{opacity:.55;cursor:default}.start.alert{background:var(--alert);color:var(--on-alert)}.gap-choice{border:0;margin:0;padding:0}.gap-choice legend{color:var(--muted);margin-bottom:8px;padding:0;font-size:15px}.segments{background:var(--code-bg);border-radius:16px;grid-template-columns:repeat(4,minmax(0,1fr));padding:4px;display:grid}.segments input{opacity:0;position:absolute}.segments span{min-height:44px;color:var(--muted);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;font-weight:500;display:flex}.segments input:checked+span{background:var(--surface);color:var(--text);box-shadow:var(--card-shadow)}:root[data-theme=dark] .segments input:checked+span{background:var(--primary);color:var(--on-primary)}.segments input:focus-visible+span{outline:3px solid var(--accent);outline-offset:1px}.card{border:1px solid var(--border);background:var(--surface);width:100%;box-shadow:var(--card-shadow);color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:16px;padding:14px 16px}.last-heard{gap:2px;display:grid}.last-title{font-size:18px;font-weight:600;line-height:1.25}.kicker{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:13px;font-weight:600}.meta-line{color:var(--muted);align-items:center;gap:6px;margin:0;font-size:15px;display:flex}.meta-line .i{width:16px;height:16px}.footnote{color:var(--muted);text-align:center;margin:0;font-size:14px}a{color:var(--accent)}.code-form{gap:12px;margin:auto 0;display:grid}.code-form input{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px}.run{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:24px;display:flex}.run-kicker:empty{visibility:hidden}.deck{justify-content:center;align-items:center;gap:12px;width:100%;display:flex}.round{border:1px solid var(--border);background:var(--surface);width:64px;height:64px;box-shadow:var(--card-shadow);color:var(--text);cursor:pointer;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.round:disabled{opacity:.4;cursor:default}.round .i{width:28px;height:28px}.dial{aspect-ratio:1;flex:none;width:min(240px,100vw - 184px);position:relative}.ring{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:9px}.ring-track{stroke:var(--ring-track)}.ring-value{stroke:var(--accent);stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset .9s linear}.dial-btn{background:var(--primary);color:var(--on-primary);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset:14%}.dial-btn .i{width:64px;height:64px}.dial-btn:disabled{cursor:default}#countdown{font-variant-numeric:tabular-nums;font-size:56px;font-weight:600}.wait-mark{width:52%}.dial.busy .ring-value{stroke-dasharray:.22 .78;stroke-dashoffset:0;transform-box:fill-box;transform-origin:50%;transition:none;animation:1.3s linear infinite orbit}.dial.busy .wait-mark{animation:2.4s ease-in-out infinite float}.chip.busy:before{content:"";background:var(--accent);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite pulse}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes float{50%{opacity:.75;transform:translateY(-7px)}}@keyframes pulse{50%{opacity:.25;transform:scale(.7)}}@media (prefers-reduced-motion:reduce){.wait-mark,.dial.busy .wait-mark,.dial.busy .ring-value,.chip.busy:before{animation:none}.ring-value{transition:none}}.now{align-content:start;justify-items:center;gap:8px;width:100%;min-height:176px;display:grid}.now h2{letter-spacing:-.3px;text-wrap:balance;overflow-wrap:anywhere;margin:0;font-size:30px;font-weight:600;line-height:1.15}.error{color:var(--alert);text-align:center;margin:0}.pill{border:1px solid var(--border);background:var(--surface);min-height:48px;color:var(--text);cursor:pointer;border-radius:24px;align-items:center;gap:8px;margin-top:4px;padding:0 20px;font:500 17px Outfit,sans-serif;display:inline-flex}[aria-pressed=true] .i,.fav-mark{fill:currentColor;color:var(--accent)}.history-tools{gap:10px;margin-bottom:16px;display:grid}.search{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:16px;align-items:center;gap:10px;padding:0 14px;display:flex}.search input{min-width:0;min-height:50px;color:var(--text);font:inherit;background:0 0;border:0;outline:0;flex:1}.search:focus-within{outline:3px solid var(--accent);outline-offset:1px}.search input::placeholder{color:var(--muted)}.filter{border:0;margin:0;padding:0}.segments.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.fav-mark{width:20px;height:20px;margin-top:2px}.text-btn{min-height:48px;color:var(--alert);cursor:pointer;background:0 0;border:0;align-self:center;margin-top:16px;padding:0 16px;font:500 16px Outfit,sans-serif}.page-title{letter-spacing:-.3px;margin:4px 0 16px;font-size:32px;font-weight:600}.day{color:var(--muted);margin:20px 0 8px;font-size:15px;font-weight:500}.day:first-child{margin-top:0}#history-list .card{gap:4px;margin-bottom:8px;display:grid}.empty{color:var(--muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:0 24px;display:flex}.empty .i{stroke-width:1.5px;width:48px;height:48px}.empty p{margin:0}.settings-list{gap:24px;display:grid}.settings-hint{color:var(--muted);margin:0;font-size:15px}.reader{align-content:start;gap:10px;display:grid}.reader h2{letter-spacing:-.3px;margin:0 0 8px;font-size:32px;font-weight:600;line-height:1.15}.reader-text p{margin:0 0 16px;font-size:19px;line-height:1.55}.reader-bar{align-items:center;gap:4px;display:flex}.reader-bar .back{margin-right:auto}.back{min-height:44px;color:var(--accent);cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;gap:2px;margin-left:-8px;padding:0 8px 0 0;font:500 17px Outfit,sans-serif;display:inline-flex}.tabbar{padding:8px 20px calc(8px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--border);justify-content:center;gap:8px;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar button{min-height:56px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:14px;flex:0 200px;justify-items:center;gap:2px;padding:6px;font:500 13px Outfit,sans-serif;display:grid}.tabbar button[aria-current=true]{color:var(--accent)}
