@font-face{font-family:Barlow Condensed;font-weight:600;font-display:swap;src:url(/fonts/BarlowCondensed-600.woff2) format("woff2")}@font-face{font-family:Barlow Condensed;font-weight:800;font-display:swap;src:url(/fonts/BarlowCondensed-800.woff2) format("woff2")}@font-face{font-family:Barlow;font-weight:400;font-display:swap;src:url(/fonts/Barlow-400.woff2) format("woff2")}@font-face{font-family:Barlow;font-weight:600;font-display:swap;src:url(/fonts/Barlow-600.woff2) format("woff2")}:root{--bg: #141210;--surface: #1d1a17;--surface-2: #26221e;--line: #35302a;--text: #f2ede4;--text-muted: #a89f92;--text-faint: #877e71;--accent: #ff5c1f;--accent-press: #e04d14;--accent-ink: #1a0d05;--ok: #9fd08c;--radius: 10px;--radius-lg: 16px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--display: "Barlow Condensed", "Arial Narrow", sans-serif;--body: "Barlow", system-ui, sans-serif}*{box-sizing:border-box;margin:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.45;padding-bottom:calc(76px + env(safe-area-inset-bottom));max-width:560px;margin:0 auto;min-height:100dvh}.grain{position:fixed;inset:0;pointer-events:none;z-index:40;opacity:.3;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.04 0'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E")}.skip{position:absolute;left:var(--space-4);top:-48px;z-index:100;background:var(--accent);color:var(--accent-ink);font-weight:600;padding:var(--space-2) var(--space-4);border-radius:var(--radius);transition:top .15s ease-out}.skip:focus{top:var(--space-4)}.top{padding:calc(var(--space-5) + env(safe-area-inset-top)) var(--space-5) var(--space-3);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:var(--space-3)}.brand-mark{width:26px;height:26px;border-radius:7px;background:var(--accent);position:relative;flex:none}.brand-mark:after{content:"";position:absolute;left:4px;right:4px;top:11px;height:4px;border-radius:2px;background:var(--accent-ink)}.top h1{font-family:var(--display);font-weight:800;font-size:34px;letter-spacing:.06em;line-height:1}.strapline{color:var(--text-faint);font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-top:var(--space-1);padding-left:38px}main{padding:var(--space-5);outline:none}.kicker{font-family:var(--display);font-weight:600;font-size:14px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent)}h2.big{font-family:var(--display);font-weight:800;font-size:52px;line-height:.95;text-transform:uppercase;letter-spacing:.01em;margin:var(--space-1) 0 var(--space-2)}.sub{color:var(--text-muted);font-size:15px}.num{font-variant-numeric:tabular-nums}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4);margin-top:var(--space-4)}.pair-tag{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);border:1px solid color-mix(in oklab,var(--accent) 45%,transparent);border-radius:999px;padding:1px 8px;vertical-align:2px}.ex-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3)}.ex-name{font-family:var(--display);font-weight:600;font-size:22px;letter-spacing:.02em}.ex-scheme{color:var(--text-muted);font-size:13px;white-space:nowrap}.ex-note{color:var(--text-faint);font-size:13px;margin-top:2px}.ex-last{margin-top:var(--space-2);font-size:14px;color:var(--text-muted)}.ex-last strong{color:var(--ok);font-weight:600}.ex-last .goal{color:var(--accent);font-weight:600}.ex-last .why{color:var(--text-faint);display:block}.setrow{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.set{flex:1;min-height:52px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--text-faint);font-family:var(--body);font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .12s,background .12s,transform .06s}.set:active{transform:scale(.97)}.set.done{border-style:solid;border-color:color-mix(in oklab,var(--ok) 40%,var(--line));background:color-mix(in oklab,var(--ok) 9%,var(--surface));color:var(--text)}.set small{font-size:11px;font-weight:400;color:var(--text-muted);margin:0 1px}.finish{width:100%;margin-top:var(--space-6);min-height:54px;background:var(--accent);color:var(--accent-ink);font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:.1em;text-transform:uppercase;border:0;border-radius:var(--radius-lg);cursor:pointer;transition:background .12s,transform .06s}.finish:active{background:var(--accent-press);transform:scale(.99)}.finish:disabled{background:var(--surface-2);color:var(--text-faint);cursor:default}.switcher{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-3)}.chip{border:1px solid var(--line);background:transparent;color:var(--text-muted);font-family:var(--body);font-size:13px;font-weight:600;padding:6px 12px;border-radius:999px;cursor:pointer;min-height:32px}.chip.is-on{border-color:var(--accent);color:var(--accent)}.sheet-backdrop{position:fixed;inset:0;background:#0000008c;z-index:50;opacity:0;transition:opacity .18s ease-out}.sheet-backdrop.show{opacity:1}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:51;max-width:560px;margin:0 auto;background:var(--surface-2);border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-top:1px solid var(--line);padding:var(--space-5) var(--space-5) calc(var(--space-5) + env(safe-area-inset-bottom));transform:translateY(100%);transition:transform .2s ease-out}.sheet.show{transform:translateY(0)}.sheet h3{font-family:var(--display);font-weight:600;font-size:20px;letter-spacing:.02em}.sheet .which{color:var(--text-faint);font-size:13px;margin-top:2px}.stepper{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-4)}.stepper label{flex:none;width:64px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-weight:600}.stepper output{flex:1;text-align:center;font-family:var(--display);font-weight:800;font-size:40px;font-variant-numeric:tabular-nums;line-height:1}.stepper output small{font-size:16px;font-weight:600;color:var(--text-muted);margin-left:2px}.stepbtn{width:56px;height:56px;flex:none;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--text);font-size:26px;font-weight:600;cursor:pointer;font-family:var(--body);transition:background .1s,transform .06s}.sheet-actions{display:flex;gap:var(--space-3);margin-top:var(--space-5)}.btn-ghost{flex:1;min-height:52px;border-radius:var(--radius);border:1px solid var(--line);background:transparent;color:var(--text-muted);font-family:var(--body);font-size:16px;font-weight:600;cursor:pointer}.btn-solid{flex:2;min-height:52px;border-radius:var(--radius);border:0;background:var(--accent);color:var(--accent-ink);font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.btn-solid:active{background:var(--accent-press)}.plan-day{margin-top:var(--space-6)}.plan-day h3{font-family:var(--display);font-weight:800;font-size:28px;text-transform:uppercase;letter-spacing:.02em}.plan-day .tag{color:var(--text-faint);font-size:13px;letter-spacing:.1em;text-transform:uppercase}.plan-table{width:100%;border-collapse:collapse;margin-top:var(--space-3);font-size:14px}.plan-table td{padding:var(--space-2) 0;border-bottom:1px solid var(--line);vertical-align:top}.plan-table td:last-child{text-align:right;white-space:nowrap;color:var(--text-muted)}.plan-table .n{font-weight:600}.plan-table .note{display:block;color:var(--text-faint);font-size:12.5px;font-weight:400;white-space:normal}.rule{margin-top:var(--space-4)}.rule:first-child{margin-top:0}.rule h4{font-family:var(--display);font-weight:600;font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--space-1)}.rule p,.rule li{color:var(--text-muted);font-size:14.5px}.rule ul{padding-left:var(--space-5);display:grid;gap:var(--space-1)}.rule strong{color:var(--text)}.fuel-target{display:flex;gap:var(--space-4);align-items:baseline}.fuel-target .k{flex:none;width:84px;font-family:var(--display);font-weight:600;font-size:16px;text-transform:uppercase;letter-spacing:.06em}.fuel-target .v{font-weight:600}.fuel-target .d{color:var(--text-muted);font-size:13.5px;margin-top:2px}.meal{display:flex;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--line)}.meal:last-child{border-bottom:0;padding-bottom:0}.meal .dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--accent);margin-top:7px}.meal .n{font-weight:600}.meal .d{color:var(--text-muted);font-size:13.5px}.log-day{margin-top:var(--space-4)}.log-date{color:var(--text-faint);font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:var(--space-2)}.log-line{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-1) 0;font-size:14px}.log-line .sets{color:var(--text-muted)}.empty{color:var(--text-faint);text-align:center;padding:var(--space-8) 0;font-size:15px}.tabs{position:fixed;left:0;right:0;bottom:0;z-index:45;max-width:560px;margin:0 auto;display:flex;background:color-mix(in oklab,var(--bg) 88%,black);backdrop-filter:blur(12px);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.tab{flex:1;min-height:56px;border:0;background:none;cursor:pointer;color:var(--text-faint);font-family:var(--body);font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.tab svg{width:22px;height:22px;fill:currentColor}.tab.is-active{color:var(--accent)}:is(button,a):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius)}@media(prefers-reduced-motion:no-preference){.reveal{animation:rise .32s ease-out backwards}.reveal:nth-child(2){animation-delay:.04s}.reveal:nth-child(3){animation-delay:.08s}.reveal:nth-child(4){animation-delay:.12s}.reveal:nth-child(5){animation-delay:.16s}.reveal:nth-child(6){animation-delay:.2s}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}}body.player-open{overflow:hidden}.player[hidden]{display:none}.player{position:fixed;inset:0;z-index:60;max-width:560px;margin:0 auto;background:var(--bg);display:flex;flex-direction:column;padding-top:calc(var(--space-4) + env(safe-area-inset-top));padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom))}.player-top{display:flex;align-items:center;gap:var(--space-3);padding:0 var(--space-5) var(--space-2);color:var(--text-faint);font-size:13px;letter-spacing:.08em;flex-wrap:wrap}.player-bar{flex:1 0 100%;height:3px;border-radius:2px;background:var(--surface-2);overflow:hidden;margin-bottom:var(--space-2)}.player-bar span{display:block;height:100%;background:var(--accent);width:0;transition:width .25s ease-out}.player-progress{font-weight:600}.player-eta{margin-left:auto}.player-close{border:1px solid var(--line);background:transparent;color:var(--text-muted);width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:15px;line-height:1;flex:none}.deck{flex:1;display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none}.deck::-webkit-scrollbar{display:none}.slide{flex:0 0 100%;min-width:100%;scroll-snap-align:start;scroll-snap-stop:always;overflow-y:auto;padding:var(--space-5);display:flex;flex-direction:column}.slide-title{font-family:var(--display);font-weight:800;font-size:42px;line-height:.95;text-transform:uppercase;margin:var(--space-1) 0 var(--space-2)}.slide-detail{color:var(--text-muted);font-size:16px}.slide-center{flex:1;display:flex;align-items:center;justify-content:center}.ringwrap{position:relative;width:220px;height:220px;margin:0 auto}.ring{width:100%;height:100%;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:6}.ring-track{stroke:var(--surface-2)}.ring-fill{stroke:var(--accent);stroke-linecap:round;transition:stroke-dashoffset .9s linear}.ring-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1)}.slide-clock{font-family:var(--display);font-weight:800;font-size:56px;line-height:1;font-variant-numeric:tabular-nums}.slide-clock:empty{display:none}.ring-label{color:var(--text-faint);font-size:12px;letter-spacing:.14em;text-transform:uppercase}.player-exhead{display:flex;align-items:flex-start;gap:var(--space-3)}.info-btn{flex:none;width:34px;height:34px;border-radius:50%;margin-top:4px;border:1px solid var(--line);background:transparent;color:var(--text-muted);font-family:var(--display);font-weight:800;font-size:16px;cursor:pointer}.info-btn[aria-expanded=true]{border-color:var(--accent);color:var(--accent)}.player-scheme{color:var(--text-muted);font-size:15px;margin-bottom:var(--space-2)}.player-nav{display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-5) 0}.player-nav .btn-solid{flex:2}.player-nav .btn-ghost{flex:1}.inline-log{margin-top:var(--space-4);display:grid;gap:var(--space-3)}.istep{display:flex;align-items:center;gap:var(--space-3)}.istep-val{flex:1;display:flex;align-items:baseline;justify-content:center;gap:var(--space-2)}.istep-val output{font-family:var(--display);font-weight:800;font-size:36px;line-height:1;font-variant-numeric:tabular-nums}.istep-val span{color:var(--text-faint);font-size:13px}.stepbtn{width:52px;height:52px;flex:none;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--text);font-size:24px;font-weight:600;cursor:pointer;font-family:var(--body);transition:background .1s,transform .06s}.stepbtn:active{background:var(--line);transform:scale(.95)}.log-btn{min-height:52px;border-radius:var(--radius);border:0;background:var(--accent);color:var(--accent-ink);font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.log-btn:active{background:var(--accent-press)}.log-btn:disabled{background:var(--surface-2);color:var(--text-faint);cursor:default}.timer-chip{align-self:center;margin-top:var(--space-4)}.rest[hidden]{display:none}.rest{margin-top:var(--space-4);display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.rest .ringwrap{width:160px;height:160px}.rest .slide-clock{font-size:40px}.howto{margin-top:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4)}.howto ol{padding-left:var(--space-5);display:grid;gap:var(--space-2)}.fig{margin:0 0 var(--space-3)}.fig svg{display:block;width:100%;max-width:320px;margin:0 auto}.fig g{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.fig .fig-gear{stroke:var(--text-faint);stroke-width:2}.fig .fig-start{stroke:var(--text)}.fig .fig-end{stroke:var(--accent)}.fig .fig-head{fill:var(--surface)}.fig-labels{display:flex;justify-content:space-around;max-width:320px;margin:var(--space-1) auto 0;color:var(--text-faint);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.fig-labels span:last-child{color:var(--accent)}.swaprow{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.chip[aria-pressed=true]{background:color-mix(in oklab,var(--accent) 12%,transparent)}.howto li{color:var(--text-muted);font-size:14.5px}.finish.start{margin-top:var(--space-4)}.trend{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--line)}.trend:last-child{border-bottom:0}.trend-name{flex:1;font-weight:600;font-size:14px}.spark{width:120px;height:28px;flex:none}.spark polyline{fill:none;stroke:var(--accent);stroke-width:2;stroke-linejoin:round}.trend-val{color:var(--text-muted);font-size:14px;white-space:nowrap}.pr{color:var(--accent);font-size:11px;font-weight:600;letter-spacing:.08em;border:1px solid color-mix(in oklab,var(--accent) 45%,transparent);border-radius:999px;padding:0 6px}
