:root{--cream:#faf8f5;--surface:#fff;--charcoal:#1a1a1a;--gray:#6b6b6b;--border:#e5dfd5;--blood:#a80000;--blood-light:#d42a2a;--blood-wash:#fef2f2;--on-blood:#fff;--success:#059669;--success-wash:#d1fae5;--warning:#d97706;--warning-wash:#fef3c7;--shadow-card:0 20px 60px #00000014;--shadow-item:0 4px 12px #00000014;--shadow-btn:0 8px 20px #a8000033;--blob-opacity:.12;--font-display:"Space Grotesk", system-ui, sans-serif;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--cream:#15120f;--surface:#1f1b17;--charcoal:#f3efe9;--gray:#a8a097;--border:#3a332c;--blood:#e0453f;--blood-light:#f06a5f;--blood-wash:#3a1715;--success:#34d399;--success-wash:#0f3326;--warning:#f59e0b;--warning-wash:#3a2a0c;--shadow-card:0 20px 60px #00000073;--shadow-item:0 4px 12px #0006;--shadow-btn:0 8px 20px #e0453f40;--blob-opacity:.08;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--cream);color:var(--charcoal);font-family:var(--font-body);margin:0;font-size:15px;line-height:1.5;overflow-x:hidden}button,input,select{font:inherit;color:inherit}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid var(--blood);outline-offset:2px}a{color:var(--blood)}.blob-bg{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.blob{background:radial-gradient(closest-side, var(--blood), transparent);opacity:calc(var(--blob-opacity) * 1.6);border-radius:40% 60% 70% 30%/40% 50% 60%;animation:20s ease-in-out infinite morph;position:absolute}.blob-1{width:520px;height:520px;top:-180px;right:-160px}.blob-2{width:420px;height:420px;animation-delay:-8s;bottom:-160px;left:-140px}@keyframes morph{0%,to{border-radius:40% 60% 70% 30%/40% 50% 60%;transform:rotate(0)scale(1)}50%{border-radius:30% 60% 70% 40%/50% 60% 30%;transform:rotate(180deg)scale(.95)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.app{z-index:1;background:var(--surface);max-width:480px;min-height:100dvh;box-shadow:var(--shadow-card);flex-direction:column;margin:0 auto;display:flex;position:relative}@media (width>=520px){.app{border:1px solid var(--border);border-radius:36px;min-height:calc(100dvh - 48px);margin:24px auto;overflow:hidden}}.body{padding:calc(env(safe-area-inset-top,0px) + 20px) 20px 24px;flex-direction:column;flex:1;gap:16px;display:flex}.body.spread{justify-content:space-between}.tabs{border-top:1px solid var(--border);font-family:var(--font-display);background:var(--surface);padding-bottom:env(safe-area-inset-bottom,0px);font-size:13px;font-weight:600;display:flex;position:sticky;bottom:0}.tabs a{text-align:center;color:var(--gray);flex:1;padding:12px 0 14px;text-decoration:none}.tabs a.active{color:var(--blood);box-shadow:inset 0 2px 0 var(--blood)}.kicker{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.15em;color:var(--blood);margin:0 0 4px;font-size:.7rem;font-weight:600}.title{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:26px;font-weight:700;line-height:1.1}.big{font-family:var(--font-display);letter-spacing:-.03em;color:var(--blood);margin:0;font-size:34px;font-weight:800;line-height:1}.small{color:var(--gray);margin:0;font-size:13px}.q{margin:0 0 8px;font-size:15px;font-weight:600}.muted{color:var(--gray);font-weight:400}.stack{flex-direction:column;gap:8px;display:flex}.row{align-items:center;gap:8px;display:flex}.btn{border:2px solid var(--blood);width:100%;font-family:var(--font-display);letter-spacing:.01em;background:var(--blood);color:var(--on-blood);cursor:pointer;text-align:center;border-radius:100px;padding:13px 20px;font-size:15px;font-weight:600;text-decoration:none;transition:all .3s;display:block}.btn:hover:not([disabled]){background:var(--blood-light);border-color:var(--blood-light);box-shadow:var(--shadow-btn);transform:translateY(-2px)}.btn.ghost{color:var(--charcoal);border-color:var(--border);background:0 0}.btn.ghost:hover:not([disabled]){border-color:var(--blood);color:var(--blood);box-shadow:none;background:0 0}.btn.quiet{background:var(--cream);color:var(--charcoal);border-color:#0000}.btn.quiet:hover:not([disabled]){background:var(--cream);border-color:var(--blood);color:var(--blood);box-shadow:none}.btn[disabled]{opacity:.4;cursor:default}.link{color:var(--blood);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:500;text-decoration:underline}.seg{gap:6px;display:flex}.seg button{background:var(--cream);font-family:var(--font-display);cursor:pointer;border:2px solid #0000;border-radius:12px;flex:1;padding:10px 6px;font-size:14px;font-weight:600;transition:all .2s}.seg button:hover:not([disabled]){border-color:var(--blood);color:var(--blood)}.seg button[aria-pressed=true]{background:var(--blood);border-color:var(--blood);color:var(--on-blood)}.seg button[disabled]{opacity:.5;cursor:default}.seg button[aria-pressed=true][disabled]{opacity:1}.seg.wrap{flex-wrap:wrap}.seg.wrap button{flex:1 0 20%}.field{background:var(--cream);width:100%;color:var(--charcoal);font-size:15px;font-family:var(--font-body);border:2px solid #0000;border-radius:12px;padding:12px 14px;transition:all .3s}.field:focus{border-color:var(--blood);background:var(--surface);outline:none}.pw{position:relative}.pw .field{padding-right:64px}.pw .link{position:absolute;top:50%;right:14px;transform:translateY(-50%)}label.lbl{margin:0 0 6px;font-size:14px;font-weight:600;display:block}.opt{text-align:left;background:var(--cream);cursor:pointer;border:2px solid #0000;border-radius:16px;width:100%;padding:12px 16px;transition:all .3s}.opt:hover{background:var(--surface);box-shadow:var(--shadow-item)}.opt b{font-family:var(--font-display);font-weight:600;display:block}.opt span{color:var(--gray);font-size:12.5px}.opt[aria-pressed=true]{background:var(--surface);border-color:var(--blood);box-shadow:var(--shadow-item)}.opt[aria-pressed=true] b{color:var(--blood)}.stepper{align-items:center;gap:10px;display:flex}.stepper button{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:50%;flex:none;width:48px;height:48px;font-size:24px;line-height:1;transition:all .3s}.stepper button:hover:not([disabled]){border-color:var(--blood);color:var(--blood)}.stepper button[disabled]{opacity:.3;cursor:default}.stepper .mid{text-align:center;flex:1}.list{border-top:1px solid var(--border)}.li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:12px;padding:11px 0;display:flex}.li .k{color:var(--gray);font-size:13.5px}.li .v{font-family:var(--font-mono);text-align:right;font-size:14px;font-weight:600}.li.col{flex-direction:column;align-items:stretch;gap:8px}.note{background:var(--cream);border-radius:12px;margin:0;padding:12px 14px;font-size:13.5px}.note.warn{background:var(--warning-wash);border-left:3px solid var(--warning)}.note.flag{background:var(--blood-wash);border-left:3px solid var(--blood)}.note.good{background:var(--success-wash);border-left:3px solid var(--success)}.error{color:var(--blood);margin:0;font-size:13.5px}.strip{align-items:flex-end;gap:2px;height:46px;display:flex}.strip i{transform-origin:bottom;border-radius:4px;min-width:3px;animation:.8s ease-out backwards growBar;display:block}.strip .wu,.strip .cd{background:repeating-linear-gradient(135deg, var(--border) 0 3px, transparent 3px 6px);border:1px solid var(--border);height:14px}.strip .rep{background:linear-gradient(to top, var(--blood), var(--blood-light));filter:drop-shadow(0 2px 6px #a8000040);height:46px}.strip.quiet .rep{background:var(--charcoal);filter:none;height:30px}.strip .jog{background:var(--gray);opacity:.5;height:22px}.strip .rec{background:var(--border);height:10px}.strip .ez{background:var(--border);height:18px}.strip-legend{font-family:var(--font-mono);color:var(--gray);justify-content:space-between;margin-top:6px;font-size:11px;display:flex}.skyline{align-items:flex-end;gap:2px;height:46px;display:flex}.skyline i{transform-origin:bottom;border-radius:4px;min-width:3px;animation:.8s ease-out backwards growBar;display:block}.skyline .above{background:var(--blood);height:46px}.skyline .threshold{background:linear-gradient(to top, var(--blood), var(--blood-light));height:38px}.skyline .steady{background:var(--warning);opacity:.75;height:24px}.skyline .easy{background:var(--gray);opacity:.45;height:14px}.skyline .rest{background:var(--border);height:6px}.ran{border-top:1px dashed var(--border);flex-direction:column;gap:10px;padding-top:12px;display:flex}.ran-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--gray);margin:0;font-size:11px}.ran-meta{font-family:var(--font-mono);color:var(--gray);margin:4px 0 0;font-size:11px}.ran.compact{border-top:none;gap:4px;padding-top:0}.ran.compact .ran-meta{margin-top:2px}.day-strips{flex-direction:column;gap:4px;margin-top:8px;display:flex}.strip.compact,.skyline.compact{gap:1px;height:16px}.strip.compact i,.skyline.compact i{border-radius:2px;min-width:2px}.strip.compact .rep{height:16px}.strip.compact.quiet .rep{background:var(--gray);opacity:.4}.strip.compact .jog{height:8px}.strip.compact .ez{height:6px}.strip.compact .wu,.strip.compact .cd{height:5px}.strip.compact .rec{height:3px}.skyline.compact .above{height:16px}.skyline.compact .threshold{height:13px}.skyline.compact .steady{height:8px}.skyline.compact .easy{height:5px}.skyline.compact .rest{height:2px}@keyframes growBar{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.session{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-item);border-radius:20px;flex-direction:column;gap:10px;padding:18px;display:flex}.session .name{font-family:var(--font-display);letter-spacing:-.03em;color:var(--blood);margin:0;font-size:34px;font-weight:800;line-height:1}.session .name.quiet{color:var(--charcoal);font-size:28px}.guide{grid-template-columns:auto 1fr;gap:6px 14px;margin:0;font-size:13.5px;display:grid}.guide dt{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--gray);padding-top:1px;font-size:11.5px}.guide dd{margin:0;font-weight:600}.guide dd span{color:var(--gray);font-size:12.5px;font-weight:400;display:block}.weekstrip{gap:4px;display:flex}.weekstrip div{text-align:center;font-family:var(--font-mono);color:var(--gray);border-radius:12px;flex:1;padding:6px 0;font-size:11px}.weekstrip b{background:0 0;border-radius:3px;height:6px;margin:4px 6px 0;display:block}.weekstrip .main b,.weekstrip .marked b{background:var(--blood)}.weekstrip .support b,.weekstrip .test b{background:var(--charcoal)}.weekstrip .long b,.weekstrip .easy b{background:var(--gray)}.weekstrip .done b{opacity:.35}.weekstrip .today{background:var(--blood-wash);color:var(--blood);font-weight:700}.ladder{flex-direction:column-reverse;gap:4px;display:flex}.rung{font-family:var(--font-mono);color:var(--gray);grid-template-columns:22px 1fr 52px;align-items:center;gap:10px;font-size:12px;display:grid}.rung .bar{background:var(--cream);border:1px solid var(--border);transform-origin:0;border-radius:4px;height:10px;animation:.8s ease-out backwards growBar}.rung.below .bar{background:var(--border)}.rung.cur{color:var(--blood);font-weight:600}.rung.cur .bar{background:linear-gradient(90deg, var(--blood), var(--blood-light));border-color:var(--blood);filter:drop-shadow(0 2px 6px #a800004d)}.rung .m{text-align:right}.days{flex-direction:column;display:flex}.day{border-bottom:1px solid var(--border);grid-template-columns:44px 1fr auto;align-items:start;gap:10px;padding:11px 0;display:grid}.day .d{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;padding-top:2px;font-size:12px;font-weight:600}.day .s{font-weight:600}.day .r{color:var(--gray);margin-top:2px;font-size:12.5px}.day.rest .s{color:var(--gray);font-weight:400}.day.today .d{color:var(--blood)}.badge{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--gray);border:1px solid var(--border);background:var(--surface);white-space:nowrap;border-radius:100px;padding:3px 8px;font-size:10.5px;font-weight:600}.badge.done{color:var(--success);border-color:var(--success-wash)}.badge.missed{color:var(--warning);border-color:var(--warning-wash)}.dot{vertical-align:1px;border-radius:50%;width:9px;height:9px;margin-right:6px;display:inline-block}.dot.main,.dot.marked{background:var(--blood)}.dot.support,.dot.test{background:var(--charcoal)}.dot.long,.dot.easy{background:var(--gray)}.result{background:linear-gradient(135deg, var(--blood) 0%, var(--blood-light) 100%);color:var(--on-blood);box-shadow:var(--shadow-btn);border-radius:20px;flex-direction:column;gap:6px;padding:18px;transition:all .3s;display:flex}.result p{margin:0}.result .t{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.15em;opacity:.85;font-size:11px;font-weight:600}.result .n{font-family:var(--font-display);letter-spacing:-.02em;font-size:26px;font-weight:800;line-height:1.1}.result .lv{font-size:13.5px;font-weight:600}.result .why{font-size:13.5px}.result.pending{background:var(--cream);color:var(--gray);box-shadow:none}.hist{flex-direction:column;display:flex}.hist .h{border-bottom:1px solid var(--border);grid-template-columns:62px 1fr;gap:10px;padding:9px 0;font-size:13.5px;display:grid}.hist .dt{font-family:var(--font-mono);color:var(--gray);padding-top:2px;font-size:11.5px}.hist .why{color:var(--gray);font-size:12.5px;display:block}.up{color:var(--success);font-weight:700}.down{color:var(--blood);font-weight:700}.wordmark{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:46px;font-weight:800;line-height:1}.wm-rule{align-items:flex-end;gap:3px;height:26px;margin-top:12px;display:flex}.wm-rule i{background:var(--border);border-radius:4px;width:14px}.wm-rule i.v{background:linear-gradient(to top, var(--blood), var(--blood-light));animation:3s ease-in-out infinite float}.wm-rule i.v:nth-child(4){animation-delay:.3s}.wm-rule i.v:nth-child(5){animation-delay:.6s}.wm-rule i.v:nth-child(6){animation-delay:.9s}.byline{font-family:var(--font-display);color:var(--gray);align-items:center;gap:7px;margin:14px 0 0;font-size:13px;font-weight:500;display:inline-flex}.byline svg{width:20px;height:17px;fill:var(--blood);flex:none}.byline svg path{animation:3s ease-in-out infinite float}.byline svg path:nth-child(2){animation-delay:.3s}.byline svg path:nth-child(3){animation-delay:.6s}.byline b{color:var(--blood);font-weight:600}.source{background:var(--cream);width:100%;font-family:var(--font-display);color:var(--charcoal);border:2px solid #0000;border-radius:16px;justify-content:space-between;align-items:center;padding:13px 16px;font-weight:600;text-decoration:none;transition:all .3s;display:flex}.source.active{background:var(--surface);border-color:var(--blood);box-shadow:var(--shadow-item);cursor:pointer}.source.active>span:last-child{color:var(--blood)}.source.off>span:first-child{color:var(--gray)}.landing{z-index:1;max-width:1080px;padding:calc(env(safe-area-inset-top,0px) + 16px) 20px calc(env(safe-area-inset-bottom,0px) + 32px);flex-direction:column;gap:72px;margin:0 auto;display:flex;position:relative}.landing section{scroll-margin-top:24px}.l-top{justify-content:space-between;align-items:center;display:flex}.l-brand{align-items:baseline;gap:12px;display:flex}.l-brand .byline{margin:0}.l-mark{font-family:var(--font-display);letter-spacing:-.03em;font-size:24px;font-weight:800}.l-signin{font-family:var(--font-display);color:var(--charcoal);border:1px solid var(--border);background:var(--surface);border-radius:100px;padding:8px 16px;font-size:14px;font-weight:600;text-decoration:none;transition:all .3s}.l-signin:hover{border-color:var(--blood);color:var(--blood)}.l-pill{background:var(--blood-wash);color:var(--blood);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;border-radius:100px;align-self:flex-start;align-items:center;gap:8px;margin:0;padding:6px 12px;font-size:11.5px;font-weight:600;display:inline-flex}.l-pill i{background:currentColor;border-radius:50%;width:7px;height:7px;animation:3s ease-in-out infinite float}.l-pill.on-blood{color:var(--on-blood);background:#ffffff29}.l-hero{gap:40px;padding-top:8px;display:grid}.l-hero-copy{flex-direction:column;gap:18px;display:flex}.l-h1{font-family:var(--font-display);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:clamp(38px,9vw,64px);font-weight:700;line-height:1}.l-h1 em{color:var(--blood);font-style:normal;display:block}.l-lead{max-width:34em;margin:0;font-size:17px;line-height:1.55}.l-cta{flex-wrap:wrap;gap:10px;display:flex}.l-cta .btn{flex:180px;width:auto;padding:15px 28px;font-size:16px}.l-phone{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:36px;flex-direction:column;justify-self:center;gap:14px;width:100%;max-width:400px;padding:22px;display:flex;position:relative}.l-phone .session{box-shadow:none}.l-result{animation:4s ease-in-out infinite float}.l-h2{font-family:var(--font-display);letter-spacing:-.03em;text-wrap:balance;margin:0 0 14px;font-size:clamp(28px,6vw,40px);font-weight:700;line-height:1.05}.l-text{max-width:38em;color:var(--gray);margin:0;font-size:16px;line-height:1.6}.l-steps{gap:12px;margin:8px 0 0;padding:0;list-style:none;display:grid}.l-steps li,.l-guard,.l-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:20px}.l-steps li{gap:16px;display:flex}.l-n{font-family:var(--font-mono);color:var(--blood);padding-top:3px;font-size:13px;font-weight:600}.l-steps b,.l-guard b{font-family:var(--font-display);font-size:17px;font-weight:600}.l-steps p,.l-guard p{color:var(--gray);margin:4px 0 0;font-size:14.5px}.l-ladder{align-items:center;gap:24px;display:grid}.l-grid{gap:12px;margin-top:8px;display:grid}.l-guard{border-left:3px solid var(--blood)}.l-beta{text-align:center;background:linear-gradient(135deg, var(--blood) 0%, var(--blood-light) 100%);color:var(--on-blood);box-shadow:var(--shadow-btn);border-radius:36px;flex-direction:column;align-items:center;gap:14px;padding:44px 24px;display:flex}.l-beta .l-pill{align-self:center}.l-beta .l-h2{margin:0}.l-beta p{max-width:30em;margin:0;font-size:16px}.btn.l-btn-invert{color:#a80000;background:#fff;border-color:#fff;width:auto;margin-top:6px;padding:15px 32px}.btn.l-btn-invert:hover{background:#fff;border-color:#fff;box-shadow:0 8px 20px #0000002e}.l-signin-inv{color:var(--on-blood);opacity:.9;text-underline-offset:3px;font-size:14px}.l-foot{border-top:1px solid var(--border);flex-direction:column;gap:14px;padding-top:32px;display:flex}.legal{gap:40px;max-width:720px}.legal .l-brand{color:inherit;text-decoration:none}.legal article{font-size:16px;line-height:1.6}.legal article h2{font-family:var(--font-display);margin:32px 0 6px;font-size:19px;font-weight:600}.legal article p,.legal article ul{margin:0 0 12px}.legal article ul{padding-left:20px}.legal a{color:var(--blood);text-underline-offset:3px}@media (width>=720px){.landing{gap:104px;padding-left:32px;padding-right:32px}.l-steps,.l-grid{grid-template-columns:repeat(2,1fr)}.l-steps{grid-template-columns:repeat(3,1fr)}.l-steps li{flex-direction:column;gap:10px}.l-ladder{grid-template-columns:1fr 1fr;gap:48px}.l-why{max-width:720px}}@media (width>=960px){.l-hero{grid-template-columns:1.15fr 1fr;align-items:center;gap:56px;padding-top:40px}.l-phone{transform:rotate(1.5deg)}}.center{color:var(--gray);flex:1;place-items:center;display:grid}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.dev-clock{z-index:100;background:var(--warning);color:#fff;font:600 11px/1.6 var(--font-mono);pointer-events:none;border-radius:6px;padding:2px 8px;position:fixed;top:6px;right:6px}
