:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f3ee;--surface:#fff;--sunken:#eceae3;--ink:#191b23;--muted:#5a5d6c;--rule:#dad7cd;--live:#0f7f76;--live-bg:#d9f1ee;--next:#b84f0f;--next-bg:#fbe7d8;--warn-bg:#fdf1cf;--warn-rule:#e3cf8e;--focus:#0f7f76;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "Cascadia Mono", "SFMono-Regular", Menlo, Consolas, monospace;--radius:10px;--width:75rem}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1117;--surface:#171a23;--sunken:#1f2330;--ink:#e8e9ef;--muted:#a0a4b6;--rule:#2e3345;--live:#4fd1c0;--live-bg:#14332f;--next:#f4a56e;--next-bg:#3f2716;--warn-bg:#352c14;--warn-rule:#5e4f22;--focus:#4fd1c0}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1117;--surface:#171a23;--sunken:#1f2330;--ink:#e8e9ef;--muted:#a0a4b6;--rule:#2e3345;--live:#4fd1c0;--live-bg:#14332f;--next:#f4a56e;--next-bg:#3f2716;--warn-bg:#352c14;--warn-rule:#5e4f22;--focus:#4fd1c0}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font:16px/1.5 var(--font);margin:0}a{color:var(--live)}code,.mono{font-family:var(--mono);font-size:.9em}h1,h2,h3,p,ol,ul{margin:0}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{border-radius:var(--radius);background:var(--surface);padding:.5rem .75rem;position:absolute;top:-3rem;left:.5rem}.skip:focus{top:.5rem}.top,main,.foot{width:min(100%, var(--width));margin-inline:auto;padding-inline:12px}.top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem 2rem;padding-block:1.25rem .75rem;display:flex}.brand{flex:22rem;min-width:0}.wordmark{letter-spacing:-.02em;align-items:center;gap:.55rem;font-size:1.75rem;display:flex}.mark{background:var(--ink);border-radius:1rem;width:1.5rem;height:.75rem;display:inline-block;overflow:hidden;transform:rotate(-35deg)}.mark i{background:var(--next);width:50%;height:100%;margin-left:50%;display:block}.lead{max-width:44rem;color:var(--muted);margin-top:.25rem}.links{flex-wrap:wrap;align-items:center;gap:.25rem .9rem;font-size:.92rem;display:flex}button{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--rule);cursor:pointer;border-radius:8px;padding:.4rem .7rem}button:hover:not(:disabled){border-color:var(--live)}button:disabled{color:var(--muted);cursor:default;opacity:.7}button.primary{background:var(--live);border-color:var(--live);color:var(--bg);font-weight:600}button.ghost{padding:.15rem .5rem;font-size:.85rem}.notice{border:1px solid var(--warn-rule);border-radius:var(--radius);background:var(--warn-bg);margin-block:.25rem 1rem;padding:.55rem .8rem;font-size:.94rem}.card{border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);min-width:0;padding:1rem}.card-head h3,.card>h3{font-size:1.05rem}.hint{color:var(--muted);font-size:.87rem}.label{color:var(--muted);letter-spacing:.03em;font-size:.78rem;font-weight:600;display:block}.stage{grid-template-columns:minmax(0,1fr);gap:1rem;display:grid}.phone-col{grid-template-columns:minmax(0,1fr);justify-items:center;gap:.6rem;display:grid}.steps{gap:.1rem;width:100%;max-width:336px;padding-left:1.3rem;font-size:.92rem;display:grid}.phone{background:#050507;border-radius:36px;width:336px;max-width:100%;padding:8px;box-shadow:0 0 0 1px #3a3a40,0 14px 34px #00000047}.phone-screen{background:#1c1c1e;border-radius:28px;width:320px;height:690px;overflow:hidden}#app-root{touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:grab;flex-direction:column;width:320px;height:690px;display:flex}.side{grid-template-columns:minmax(0,1fr);align-content:start;gap:1rem;min-width:0;display:grid}@media (min-width:58rem){.stage{grid-template-columns:336px minmax(0,1fr);align-items:start;gap:1.5rem}.phone-col{position:sticky;top:.75rem}}#controls{grid-template-columns:minmax(0,1fr);gap:.55rem;display:grid}.clock-row{align-items:baseline;gap:.6rem;display:flex}.clock-time{font:700 1.5rem/1 var(--mono);margin-right:auto}input[type=range]{width:100%;accent-color:var(--live);margin:0}.chips,.actions{flex-wrap:wrap;gap:.4rem;display:flex}.chip{border-radius:999px;align-items:center;gap:.4rem;padding:.25rem .6rem;font-size:.88rem;display:inline-flex}.chip[aria-pressed=true]{border-color:var(--ink);font-weight:600}.tile-chip i{background:var(--rule);border-radius:50%;width:.55rem;height:.55rem}.tile-chip[data-state=expanded] i{background:var(--live)}.chip.event{font-family:var(--mono);font-size:.8rem}.next-panel{background:var(--next-bg);border-radius:8px;grid-template-columns:minmax(0,1fr);gap:.1rem;padding:.6rem .75rem;display:grid}.next-panel .label,.next-panel .hint{color:var(--ink)}.next-time{color:var(--next);font:700 2.25rem/1.1 var(--font)}#machine{grid-template-columns:minmax(0,1fr);gap:.55rem;display:grid}.diagram svg{width:100%;max-width:30rem;height:auto;margin-inline:auto;display:block}.arrow-head{fill:var(--muted)}.edge path,.start path{fill:none;stroke:var(--muted);stroke-width:1.6px}.edge text{fill:var(--muted);font:12px var(--mono)}.edge.fired path{stroke:var(--live);stroke-width:3px}.edge.fired text{fill:var(--live);font-weight:700}.start circle{fill:var(--muted)}.node rect{fill:var(--sunken);stroke:var(--rule);stroke-width:1.5px;transition:fill .16s,stroke .16s}.node text{fill:var(--ink);font:600 16px var(--font)}.node.lit rect{fill:var(--live);stroke:var(--live)}.node.lit text{fill:var(--bg)}.rule{font-size:.92rem;font-weight:600}.log{overflow-wrap:anywhere;gap:.2rem;padding:0;font-size:.85rem;list-style:none;display:grid}.log li{background:var(--sunken);border-radius:6px;padding:.2rem .5rem}.log li:first-child{background:var(--live-bg)}.log li.empty{background:var(--sunken);color:var(--muted)}.log em{color:var(--next);font-style:normal;display:block}.section{margin-top:2rem}.section-head{margin-bottom:.75rem}.section-head h2{letter-spacing:-.01em;font-size:1.35rem}.day{grid-template-columns:minmax(0,1fr);gap:.5rem;display:grid}.legend{color:var(--muted);flex-wrap:wrap;gap:.2rem .9rem;font-size:.82rem;display:flex}.dot{background:var(--ink);vertical-align:-.05em;border-radius:50%;width:.7rem;height:.7rem;display:inline-block}.dot.past{border:2px solid var(--muted);background:0 0}.dot.next{background:var(--next)}.dot.tomorrow{border:2px solid var(--next);background:0 0}.axis{height:1.1rem;color:var(--muted);margin-inline:14px;font-size:.75rem;position:relative}.axis span{position:absolute;transform:translate(-50%)}.rows{grid-template-columns:minmax(0,1fr);gap:.25rem;display:grid}.row{border-top:1px solid var(--rule);min-width:0;padding:.3rem 0}.row[data-focus=true] .row-head strong{color:var(--live)}.row-head{flex-wrap:wrap;align-items:baseline;gap:0 .6rem;font-size:.9rem;display:flex}.every{color:var(--muted);font-size:.8rem}.row-next{color:var(--next);margin-left:auto;font-weight:600}.track{height:2.6rem;margin-inline:14px;position:relative}.track:before{content:"";background:var(--rule);height:2px;position:absolute;inset:.65rem 0 auto}.track .now{background:var(--live);width:2px;margin-left:-1px;position:absolute;top:0;bottom:.4rem}.dose{justify-items:center;width:2rem;margin-left:-1rem;display:grid;position:absolute;top:.3rem}.dose i{background:var(--ink);border-radius:50%;width:.75rem;height:.75rem}.dose b{color:var(--muted);font-size:.68rem;font-weight:500}.dose.past i{background:var(--surface);border:2px solid var(--muted)}.dose.next i{background:var(--next);box-shadow:0 0 0 3px var(--next-bg)}.dose.next b{color:var(--next);font-weight:700}.dose.tomorrow i{background:var(--surface);border:2px solid var(--next)}.how{grid-template-columns:minmax(0,1fr);gap:1rem;display:grid}@media (min-width:48rem){.how{grid-template-columns:repeat(2,minmax(0,1fr))}}.files{gap:.3rem;margin-block:.5rem;padding-left:1.1rem;font-size:.92rem;display:grid}.foot{color:var(--muted);margin-top:2rem;padding-block:1rem 1.5rem;font-size:.85rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.node rect{transition:none}}
