/* self-hosted fonts (latin), font-display:swap */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/inter-latin-0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/inter-latin-0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/inter-latin-0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/inter-latin-0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/oswald-latin-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/oswald-latin-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/oswald-latin-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root{--ink:#16181b;--char:#24272b;--cream:#f6f1e7;--paper:#fffdf8;--navy:#1d2b44;--red:#b8312f;--line:#e4dccd;--mute:#5b5e63;
--green:#2f7d4f;--amber:#b7791f;--s1:8px;--s2:16px;--s3:24px;--s4:32px;--s5:48px;--r:14px;--sh:0 1px 2px #0000000d,0 6px 20px #1d2b4414;
--disp:'Oswald','Arial Narrow',Impact,sans-serif;--body:'Inter',system-ui,-apple-system,'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:var(--body);font-size:18px;line-height:1.5;color:var(--ink);background:var(--cream);padding-bottom:96px}
svg{width:24px;height:24px;flex:none}.ic{width:32px;height:32px;color:var(--red)}.ic.sm{width:22px;height:22px}
h1,h2,h3,.btn,.tabs a,.amt,.big,.num,.eyebrow,.season button{font-family:var(--disp);text-transform:uppercase;letter-spacing:.02em}
h1{font-size:40px;line-height:1.05;margin:var(--s2) 0;color:var(--navy);font-weight:700}
h2{font-size:26px;margin:var(--s4) 0 var(--s2);color:var(--navy)}h3,.h3{font-size:22px;margin:0 0 var(--s1);color:var(--navy);font-weight:600}
.eyebrow{display:block;font-size:15px;font-weight:600;letter-spacing:.14em;color:var(--red);margin:var(--s4) 0 var(--s2)}
.small{font-size:15px;color:var(--mute)}.lead{font-size:19px;color:#d8d3c8;max-width:34ch}
.top{background:var(--ink);padding:var(--s2);display:flex;align-items:center;justify-content:space-between;gap:var(--s1)}
.brand{display:flex;align-items:center;gap:10px;color:var(--cream);text-decoration:none;font-family:var(--disp);font-weight:700;font-size:24px;letter-spacing:.12em}
.unused-badge{width:40px;height:40px;border-radius:50%;border:2px solid var(--cream);display:grid;place-items:center;box-shadow:inset 0 0 0 3px var(--ink),inset 0 0 0 4px var(--red)}.badge-logo svg{color:var(--cream);width:24px;height:24px}
.pill{display:inline-block;font-family:var(--body);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:4px 10px;border-radius:99px;background:#b8312f14;color:var(--red);border:1px solid #b8312f40;white-space:nowrap}
.top .pill,.pill.light{background:#ffffff14;color:#efe7d6;border-color:#ffffff33}
main{max-width:1040px;margin:0 auto;padding:var(--s2)}
.screen{display:none}.screen.on{display:block;animation:in .35s ease}@keyframes in{from{opacity:0;transform:translateY(8px)}}
.rowhead{display:flex;align-items:center;justify-content:space-between;gap:var(--s1);flex-wrap:wrap}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:var(--s3);margin:var(--s2) 0;box-shadow:var(--sh)}
.btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:var(--red);color:#fff;font-size:22px;font-weight:600;letter-spacing:.06em;border:0;border-radius:12px;padding:var(--s2);margin:var(--s2) 0;min-height:64px;text-decoration:none;cursor:pointer;transition:transform .15s,background .2s}
.btn:hover{background:#9e2826}.btn:active{transform:scale(.98)}.btn .ic{color:#fff}
:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
.hero{position:relative;overflow:hidden;background:radial-gradient(120% 90% at 100% 0,#2c3a55 0,var(--ink) 60%);color:var(--cream);border-radius:20px;padding:var(--s5) var(--s3) var(--s4);margin-top:var(--s1)}
.hero h1{color:var(--cream);font-size:52px;margin:var(--s2) 0}.accent{color:#e0625f}.hero .btn{max-width:360px}
.stitch{position:absolute;right:-90px;top:-90px;width:260px;height:260px;border-radius:50%;border:2px dashed #e0625f55;pointer-events:none}
.steps{display:grid;gap:var(--s2)}.step{position:relative;margin:0}.step p{margin:var(--s1) 0 0}.num{position:absolute;right:var(--s3);top:var(--s2);font-size:30px;color:var(--line);font-weight:700}
.grid2{display:grid;gap:var(--s2);margin-top:var(--s2)}.grid2 .card{margin:0}
.price{text-align:center;border-top:4px solid var(--navy)}.amt{font-size:56px;color:var(--navy);font-weight:700;margin-top:var(--s1)}.amt small{font-size:20px;color:var(--mute)}
.parent ul{padding-left:20px}.parent li{margin:6px 0}.parent h3{display:flex;gap:8px;align-items:center}
label{font-weight:600;font-size:16px}input[type=email],.cin input{display:block;width:100%;font:inherit;padding:14px;border:1.5px solid #c9c0ad;border-radius:12px;margin-top:6px;background:#fff}.ok{font-weight:700;color:var(--green)}
.season{display:flex;background:#e9e1d1;border-radius:14px;padding:4px;margin:var(--s2) 0}.season button{flex:1;font-size:20px;font-weight:600;padding:14px;min-height:56px;border:0;border-radius:10px;background:transparent;color:var(--navy);cursor:pointer;transition:.2s}.season button.on{background:var(--navy);color:#fff;box-shadow:var(--sh)}
.days{display:flex;gap:6px;overflow-x:auto;padding:2px 0 var(--s1)}.days button{flex:1;min-width:52px;min-height:64px;border:1.5px solid var(--line);background:var(--paper);border-radius:12px;font:600 14px var(--body);color:var(--navy);cursor:pointer;transition:.2s}.days button b{display:block;font:600 18px var(--disp)}.days button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.dayhead{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.tagd{font:700 13px var(--body);text-transform:uppercase;letter-spacing:.08em;padding:4px 10px;border-radius:99px;background:var(--navy);color:#fff}.tagd.red{background:var(--red)}
.feel{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s1);margin-top:var(--s2)}
.feel button{display:flex;flex-direction:column;align-items:center;gap:8px;font:600 17px var(--body);padding:var(--s2) 6px;min-height:96px;border-radius:12px;border:2px solid var(--line);background:#fff;cursor:pointer;transition:.2s}
.feel i{width:22px;height:22px;border-radius:50%}.g i,.dot.g{background:var(--green)}.y i,.dot.y{background:#e0a526}.r i,.dot.r{background:var(--red)}
.feel .g.on{border-color:var(--green);background:#2f7d4f12}.feel .y.on{border-color:#e0a526;background:#e0a52614}.feel .r.on{border-color:var(--red);background:var(--red);color:#fff}.feel .r.on i{background:#fff}
.list{list-style:none;padding:0;margin:0}.list li{border-top:1px solid var(--line)}.list li:first-child{border:0}
.list label{display:flex;gap:var(--s2);align-items:flex-start;padding:var(--s2) 0;cursor:pointer;font-weight:400}.list input{appearance:none;width:32px;height:32px;flex:none;border:2px solid #b5ab96;border-radius:9px;margin:0;cursor:pointer;transition:.15s;background:#fff center/20px no-repeat}
.list input:checked{background-color:var(--green);border-color:var(--green);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7' fill='none' stroke='white' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E")}
.list b{font-weight:600;display:block}.list .why{display:block;font-size:15px;color:var(--mute)}.list input:checked+span{opacity:.5;text-decoration:line-through}
.bar-p{height:8px;background:#ece5d6;border-radius:99px;overflow:hidden;margin-top:var(--s2)}.bar-p i{display:block;height:100%;background:var(--green);transition:width .4s}
.done{font-weight:600;color:var(--navy);margin:var(--s1) 0 0;font-size:16px}
.stop{background:var(--red);color:#fff;border-radius:var(--r);padding:var(--s3);box-shadow:var(--sh);margin:var(--s2) 0}.stop h2{color:#fff;margin:0 0 var(--s1);display:flex;gap:10px;align-items:center;font-size:30px}.stop svg{width:34px;height:34px}.stop p{margin:var(--s1) 0}
.note{background:#e0a5261a;border:1px solid #e0a52666;border-radius:12px;padding:12px var(--s2);font-weight:600;font-size:16px}
.good{border-left:5px solid var(--green)}.work{border-left:5px solid var(--red)}ol{padding-left:22px;margin:0}ol li{margin:8px 0}
.vids{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}.vid{background:linear-gradient(160deg,var(--char),var(--ink));color:var(--cream);border-radius:var(--r);aspect-ratio:16/10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;padding:var(--s1)}.vid svg{width:40px;height:40px;padding:8px;border-radius:50%;background:var(--red)}.vid span{font:600 17px var(--disp);text-transform:uppercase;letter-spacing:.04em}.vid small{font-size:13px;opacity:.7}
.stat{display:flex;justify-content:space-between;align-items:flex-end}.stat .eyebrow{margin:0}.big{font-size:56px;font-weight:700;color:var(--navy);line-height:1}.big small{font-size:20px;color:var(--mute)}.up{font-weight:700;color:var(--green);font-size:15px;background:#2f7d4f14;padding:4px 10px;border-radius:99px}
.chart svg{width:100%;height:auto;display:block;margin-top:var(--s2)}
.checks{width:100%;border-collapse:collapse;margin-top:var(--s2)}.checks th{font:600 13px var(--body);text-transform:uppercase;letter-spacing:.08em;color:var(--mute);padding:8px}.checks td{padding:14px 8px;border-top:1px solid var(--line);text-align:center}.checks td:first-child,.checks th:first-child{text-align:left;font-weight:600}
.dot{display:inline-block;width:16px;height:16px;border-radius:50%;vertical-align:middle;margin:0 4px 0 10px}.legend .dot:first-child{margin-left:0}
.tabs{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--ink);padding:6px 6px calc(6px + env(safe-area-inset-bottom));z-index:6;border-top:3px solid var(--red)}
.tabs a{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;color:#b9b3a7;text-decoration:none;font-size:15px;font-weight:600;letter-spacing:.06em;padding:8px 2px;border-radius:10px;min-height:64px;transition:.2s}.tabs a svg{width:26px;height:26px}.tabs a.on{color:#fff;background:#ffffff12}.tabs a.on svg{color:#e0625f}
.coachbtn{position:fixed;right:var(--s2);bottom:96px;display:flex;gap:8px;align-items:center;background:var(--navy);color:#fff;font:600 18px var(--disp);text-transform:uppercase;letter-spacing:.06em;border:2px solid var(--cream);border-radius:99px;padding:14px 20px;min-height:56px;box-shadow:0 8px 24px #0004;cursor:pointer;z-index:7}
.coach{position:fixed;right:0;bottom:0;width:100%;max-width:440px;height:86vh;background:var(--paper);border-radius:20px 20px 0 0;box-shadow:0 -8px 40px #0005;display:flex;flex-direction:column;z-index:10;animation:up .3s ease}@keyframes up{from{transform:translateY(40px);opacity:0}}
.coach[hidden]{display:none}.chead{background:var(--ink);color:#fff;padding:var(--s2);border-radius:20px 20px 0 0;display:flex;gap:10px;align-items:center;font-family:var(--disp);font-size:22px;letter-spacing:.08em}.chead button{margin-left:auto;background:none;border:0;color:#fff;cursor:pointer;min-width:48px;min-height:48px}
.msgs{flex:1;overflow:auto;padding:var(--s2)}.m{padding:12px var(--s2);border-radius:16px;margin:var(--s1) 0;max-width:88%;font-size:17px}.m.c{background:#efe8da;border-bottom-left-radius:4px}.m.u{background:var(--navy);color:#fff;margin-left:auto;border-bottom-right-radius:4px}.m.warn{background:var(--red);color:#fff;font-weight:600}
.starters{padding:0 var(--s2)}.starters button{display:block;width:100%;text-align:left;font:600 17px var(--body);padding:14px var(--s2);margin:var(--s1) 0;border:1.5px solid var(--navy);border-radius:12px;background:#fff;color:var(--navy);cursor:pointer;min-height:56px}
.cin{display:flex;gap:var(--s1);padding:12px var(--s2) var(--s2);border-top:1px solid var(--line)}.cin input{margin:0}.cin .btn{width:auto;margin:0;font-size:18px;padding:0 20px;min-height:52px}
@media(min-width:760px){.steps{grid-template-columns:repeat(3,1fr)}.grid2{grid-template-columns:1fr 1.4fr}.hero{padding:72px 56px 56px}.hero h1{font-size:76px}}
@media(min-width:900px){body{padding-bottom:0}.tabs{position:sticky;top:0;justify-content:center;gap:var(--s1);border-top:0;border-bottom:3px solid var(--red)}.tabs a{flex:0 0 150px;flex-direction:row;justify-content:center;min-height:52px}.coachbtn{bottom:var(--s3);right:var(--s3)}.coach{right:var(--s3);bottom:var(--s3);height:640px;border-radius:20px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* header toggle */
.topr{display:flex;align-items:center;gap:var(--s1)}
.themebtn{width:48px;height:48px;border-radius:12px;border:1.5px solid #ffffff33;background:#ffffff10;color:var(--cream);display:grid;place-items:center;cursor:pointer;transition:.2s}.themebtn:hover{background:#ffffff22}
body{transition:background .25s,color .25s}
/* day picker fits 7 at 390px */
.days{gap:4px;overflow:visible}.days button{min-width:0;padding:0;font-size:13px}.days button b{font-size:16px}
/* chart colors via CSS */
.chart .grid{stroke:var(--line)}.chart .lbl{fill:var(--mute)}.chart .val{fill:var(--navy)}.chart .pt{fill:var(--paper)}
/* ===== DARK THEME ===== */
[data-theme=dark]{--cream:#efe7d6;--paper:#1f2226;--line:#33373d;--mute:#a9a69e;--navy:#9fb4d8;--green:#4fb37a;--red:#b8312f;--sh:0 1px 2px #0006,0 8px 24px #0005;color-scheme:dark}
[data-theme=dark] body{background:#121315;color:#efe7d6}
[data-theme=dark] h1,[data-theme=dark] h2,[data-theme=dark] h3,[data-theme=dark] .h3,[data-theme=dark] .amt,[data-theme=dark] .big{color:#f3ecdd}
[data-theme=dark] .eyebrow,[data-theme=dark] .ic{color:#e0625f}
[data-theme=dark] .top,[data-theme=dark] .tabs{background:#0b0c0d}
[data-theme=dark] .hero{background:radial-gradient(120% 90% at 100% 0,#26324a 0,#0b0c0d 60%);border:1px solid #2a2d32}
[data-theme=dark] .pill{background:#e0625f1f;color:#f08a87;border-color:#e0625f55}
[data-theme=dark] .top .pill,[data-theme=dark] .pill.light{background:#ffffff10;color:#efe7d6;border-color:#ffffff33}
[data-theme=dark] .num{color:#3a3e45}
[data-theme=dark] .season{background:#1f2226;border:1px solid var(--line)}[data-theme=dark] .season button{color:#cfc8b8}[data-theme=dark] .season button.on{background:#efe7d6;color:#121315}
[data-theme=dark] .days button{background:#1f2226;color:#e6dfcf}[data-theme=dark] .days button.on{background:#efe7d6;color:#121315;border-color:#efe7d6}
[data-theme=dark] .tagd{background:#2f3e5c}[data-theme=dark] .tagd.red{background:var(--red)}
[data-theme=dark] .feel button{background:#17191c;color:#efe7d6;border-color:#3a3e45}
[data-theme=dark] .feel .g.on{background:#4fb37a22;border-color:#4fb37a}[data-theme=dark] .feel .y.on{background:#e0a52622;border-color:#e0a526}[data-theme=dark] .feel .r.on{background:var(--red);border-color:#e0625f}
[data-theme=dark] .list input{background-color:#17191c;border-color:#6b6860}[data-theme=dark] .list input:checked{background-color:#2f7d4f;border-color:#4fb37a}
[data-theme=dark] .bar-p{background:#33373d}
[data-theme=dark] .note{background:#e0a5261c;border-color:#e0a52655;color:#f3dca6}
[data-theme=dark] .stop{background:#9e2826;border:1px solid #e0625f}
[data-theme=dark] .vid{background:linear-gradient(160deg,#2a2d32,#0b0c0d);border:1px solid var(--line)}
[data-theme=dark] .up{background:#4fb37a22}
[data-theme=dark] input[type=email],[data-theme=dark] .cin input{background:#17191c;color:#efe7d6;border-color:#4a4e55}
[data-theme=dark] input::placeholder{color:#8f8c85}
[data-theme=dark] .chart .val{fill:#f3ecdd}[data-theme=dark] .chart polyline{stroke:#e0625f}[data-theme=dark] .chart circle{stroke:#e0625f}
[data-theme=dark] .coachbtn{background:#efe7d6;color:#121315;border-color:#121315}
[data-theme=dark] .coach{background:#1a1c1f;border:1px solid #33373d}[data-theme=dark] .chead{background:#0b0c0d}
[data-theme=dark] .m.c{background:#2a2d32;color:#efe7d6}[data-theme=dark] .m.u{background:#2f3e5c}[data-theme=dark] .m.warn{background:#9e2826}
[data-theme=dark] .starters button{background:#17191c;color:#efe7d6;border-color:#9fb4d8}
[data-theme=dark] .btn:hover{background:#c43b38}
[data-theme=dark] .ok{color:#4fb37a}
[data-theme=dark] :focus-visible{outline-color:#efe7d6}
@media(min-width:900px){.tabs{position:relative;top:auto}}
.feel button,.season button,.days button{transition:border-color .2s,background-color .2s}
/* sharing */
.btn.ghost{background:transparent;color:var(--red);border:2px solid var(--red)}.btn.ghost:hover{background:#b8312f12}.btn.ghost .ic{color:currentColor}
[data-theme=dark] .btn.ghost{color:#f08a87;border-color:#e0625f}
.sheet{position:fixed;inset:0;background:#0009;z-index:20;display:flex;align-items:flex-end;justify-content:center;animation:in .2s}.sheet[hidden]{display:none}
.sheet-in{background:var(--paper);width:100%;max-width:480px;max-height:94vh;display:flex;flex-direction:column;border-radius:20px 20px 0 0;overflow:hidden;animation:up .3s}
[data-theme=dark] .sheet-in{background:#1a1c1f;border:1px solid #33373d}
.sheet-body{overflow:auto;padding:var(--s2)}
.preview{display:flex;justify-content:center;background:#00000010;border-radius:12px;padding:var(--s1)}.preview canvas{max-width:100%;height:auto;border-radius:8px;box-shadow:var(--sh)}.preview.square canvas{width:260px}.preview.story canvas{width:170px}
.targets{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s1)}.targets button{min-height:56px;border-radius:12px;border:1.5px solid var(--line);background:var(--paper);color:var(--ink);font:600 16px var(--body);cursor:pointer}
[data-theme=dark] .targets button{background:#17191c;color:#efe7d6;border-color:#3a3e45}
.locked{text-align:center;padding:var(--s3) var(--s1)}.locked .ic{width:48px;height:48px}
.switch{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);cursor:pointer}.switch .why{display:block;font-weight:400;font-size:15px;color:var(--mute)}
.switch input{position:absolute;opacity:0}.switch i{flex:none;width:64px;height:36px;border-radius:99px;background:#c9c0ad;position:relative;transition:.2s}.switch i::after{content:'';position:absolute;top:4px;left:4px;width:28px;height:28px;border-radius:50%;background:#fff;transition:.2s}
.switch input:checked+i{background:var(--green)}.switch input:checked+i::after{left:32px}.switch input:focus-visible+i{outline:3px solid var(--navy);outline-offset:3px}
.radio{display:flex;gap:12px;align-items:center;min-height:52px;font-weight:500}.radio input{width:26px;height:26px;accent-color:var(--red)}
.field{display:block;width:100%;font:inherit;font-size:24px;letter-spacing:.4em;padding:14px;border:1.5px solid #c9c0ad;border-radius:12px;margin-top:6px;background:#fff}
[data-theme=dark] .field{background:#17191c;color:#efe7d6;border-color:#4a4e55}
.err{color:var(--red);font-weight:600}[data-theme=dark] .err{color:#f08a87}
.done .btn{margin-top:var(--s1)}
@media(min-width:900px){.sheet{align-items:center}.sheet-in{border-radius:20px}}
.plain{padding-left:20px}.plain li{margin:8px 0}
.field2{display:block;width:100%;font:inherit;padding:14px;border:1.5px solid #c9c0ad;border-radius:12px;margin:6px 0 var(--s2);background:#fff;color:var(--ink);min-height:52px}
.sig{font-family:'Brush Script MT',cursive;font-size:26px}
[data-theme=dark] .field2{background:#17191c;color:#efe7d6;border-color:#4a4e55}
.radio input[type=checkbox]{width:28px;height:28px;flex:none;accent-color:var(--green)}.radio{align-items:flex-start;padding:6px 0}
.btn:disabled{background:#c9c0ad;color:#6b665c;cursor:not-allowed}[data-theme=dark] .btn:disabled{background:#33373d;color:#8f8c85}
.kidbox{border-left:5px solid var(--green)}
.social .srow{display:flex;justify-content:space-between;align-items:center;gap:var(--s1);padding:var(--s1) 0;border-top:1px solid var(--line)}.sbtn{width:auto;margin:0;min-height:52px;font-size:17px;padding:0 18px}
.cstat{font-weight:600;color:var(--green)}.linkbtn{background:none;border:0;color:var(--red);font:700 16px var(--body);text-decoration:underline;cursor:pointer;min-height:44px}
[data-theme=dark] .linkbtn{color:#f08a87}
#guardian[hidden]{display:none}
.unused-badge2{font:700 12px var(--disp);color:var(--cream);letter-spacing:0}.wm{font-size:28px;letter-spacing:.06em}

/* wordmark */
.wm-img{height:38px;width:auto;display:block}.wm-darkth{display:none}
[data-theme=dark] .wm-light{display:none}[data-theme=dark] .wm-darkth{display:block}
.top{background:var(--paper);border-bottom:1px solid var(--line)}.themebtn{color:var(--ink);border-color:var(--line);background:transparent}
[data-theme=dark] .top{background:#0b0c0d;border-color:#1f2226}[data-theme=dark] .themebtn{color:#efe7d6;border-color:#ffffff33;background:#ffffff10}
.hero-wm{height:56px;width:auto;display:block;margin-bottom:var(--s2)}@media(min-width:760px){.hero-wm{height:84px}}

/* exercise cards */
.list .whyx{display:block;font-size:15px;margin-top:4px;color:var(--ink)}.list .whyx b{display:inline;color:var(--red);font-weight:700}
.ex{margin:0 0 var(--s2) 48px}.ex summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:700;color:var(--red);list-style:none}
.ex summary::-webkit-details-marker{display:none}.ex summary::before{content:'+';display:inline-grid;place-items:center;width:26px;height:26px;margin-right:8px;border:2px solid currentColor;border-radius:50%}
.ex[open] summary::before{content:'–'}
.exb img{width:100%;max-width:340px;height:auto;display:block;border-radius:12px;border:1px solid var(--line)}
.exb ol{padding-left:22px;margin:10px 0 0}.exb ol li{border:0;margin:6px 0;font-size:16px}
[data-theme=dark] .list .whyx{color:#efe7d6}[data-theme=dark] .list .whyx b,[data-theme=dark] .ex summary{color:#f08a87}
[data-theme=dark] .exb img{filter:brightness(.9)}
/* auth */
.authnav{display:flex;gap:6px}.hbtn{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:10px;font:600 15px var(--body);color:var(--ink);text-decoration:none;border:1.5px solid var(--line)}
.hbtn.pri{background:var(--red);border-color:var(--red);color:#fff}[data-theme=dark] .hbtn{color:#efe7d6;border-color:#ffffff33}[data-theme=dark] .hbtn.pri{color:#fff;border-color:var(--red)}
.topr{display:flex;align-items:center;gap:8px}
.heroauth .btn{max-width:360px}.btn.ghost.light{color:#fff;border-color:#ffffff88}
body:not(.authed) .tabs,body:not(.authed) .coachbtn{display:none}
.auth{max-width:480px;margin:0 auto}.auth h1{margin-top:4px}.auth .card label{display:block;margin:0 0 var(--s2)}
.auth input[type=email],.auth .field2,.auth select{margin-bottom:0}.center{text-align:center}
.pwrap{position:relative;display:block}.pwrap .field2{padding-right:76px;margin-top:6px}.showpw{position:absolute;right:8px;top:50%;transform:translateY(-50%);min-height:44px;padding:0 12px;border:0;background:none;color:var(--red);font:700 15px var(--body);cursor:pointer}
.seg{border:0;padding:0;margin:0 0 var(--s2)}.seg legend{font-weight:600;font-size:16px;margin-bottom:6px}.seg{display:flex;gap:8px;flex-wrap:wrap}.seg legend{width:100%}
.seg label{flex:1;margin:0!important}.seg input{position:absolute;opacity:0}.seg span{display:flex;align-items:center;justify-content:center;min-height:52px;border:1.5px solid var(--line);border-radius:12px;font-weight:600;cursor:pointer;background:var(--paper)}
.seg input:checked+span{border-color:var(--red);background:#b8312f14;color:var(--red)}.seg input:focus-visible+span{outline:3px solid var(--navy)}
.pfields{display:grid;grid-template-columns:2fr 1fr;gap:8px;margin:0}
.prow{display:flex;flex-direction:column;padding:10px 0;border-top:1px solid var(--line)}.prow:first-of-type{border:0}
.lmode button{font-size:18px}.note{font-size:15px}
[data-theme=dark] .seg span{background:#17191c;border-color:#3a3e45;color:#efe7d6}[data-theme=dark] .seg input:checked+span{border-color:#e0625f;color:#f08a87;background:#e0625f1a}
[data-theme=dark] .auth input[type=email],[data-theme=dark] .auth select{background:#17191c;color:#efe7d6;border-color:#4a4e55}
[data-theme=dark] .showpw{color:#f08a87}
@media(max-width:420px){.hbtn{padding:0 10px;font-size:14px}.wm-img{height:30px}}
.lmode{display:flex;background:#e9e1d1;border-radius:14px;padding:4px;margin:var(--s2) 0}.lmode button{flex:1;font:600 18px var(--disp);text-transform:uppercase;letter-spacing:.02em;padding:14px;min-height:56px;border:0;border-radius:10px;background:transparent;color:var(--navy);cursor:pointer}
.lmode button.on{background:var(--paper);box-shadow:var(--sh);color:var(--red)}[data-theme=dark] .lmode{background:#22252a}[data-theme=dark] .lmode button{color:#efe7d6}[data-theme=dark] .lmode button.on{background:#17191c;color:#f08a87}
.auth a{color:var(--red);font-weight:600}[data-theme=dark] .auth a{color:#f08a87}
/* pricing */
.founder{display:flex;gap:10px;align-items:center;background:var(--ink);color:var(--cream);border-radius:var(--r);padding:var(--s2);border-left:5px solid var(--red)}.founder p{margin:0;font-size:16px}.founder .ic{color:#e0625f}
.billtog{display:flex;background:#e9e1d1;border-radius:14px;padding:4px;margin:var(--s2) 0}.billtog button{flex:1;min-height:52px;border:0;border-radius:10px;background:transparent;font:600 17px var(--disp);text-transform:uppercase;letter-spacing:.03em;color:var(--navy);cursor:pointer}
.billtog button.on{background:var(--paper);box-shadow:var(--sh);color:var(--red)}.save{font:700 11px var(--body);background:var(--green);color:#fff;border-radius:99px;padding:2px 7px;margin-left:4px;vertical-align:2px}
.plans{display:grid;gap:var(--s2)}.plan{position:relative;margin:0;border-top:4px solid var(--navy)}.plan.pro{border:2px solid var(--red);border-top-width:4px}
.popular{position:absolute;top:-13px;right:var(--s3);background:var(--red);color:#fff;border-color:var(--red)}
.plan .amt{margin:0;font-size:52px}.per{margin:0 0 var(--s1)}.feat{list-style:none;padding:0;margin:var(--s2) 0}.feat li{padding:6px 0 6px 28px;position:relative}.feat li:before{content:"";position:absolute;left:2px;top:12px;width:12px;height:7px;border-left:3px solid var(--green);border-bottom:3px solid var(--green);transform:rotate(-45deg)}
.plan .btn{text-decoration:none;margin-bottom:0}.btn.ghost{background:transparent;color:var(--red);border:2px solid var(--red)}.btn.ghost:hover{background:#b8312f12}
.planchip{background:#b8312f12;border:1.5px solid #b8312f55;border-radius:12px;padding:12px var(--s2);margin:0 0 var(--s2);font-size:16px}.planchip a{margin-left:6px}
@media(min-width:760px){.plans{grid-template-columns:1fr 1fr}}
[data-theme=dark] .billtog{background:#22252a}[data-theme=dark] .billtog button{color:#efe7d6}[data-theme=dark] .billtog button.on{background:#17191c;color:#f08a87}
[data-theme=dark] .founder{background:#1b1d21;border:1px solid #33373d;border-left:5px solid var(--red)}[data-theme=dark] .plan .amt{color:#efe7d6}[data-theme=dark] .plan.pro{border-color:#e0625f}
[data-theme=dark] .btn.ghost{color:#f08a87;border-color:#e0625f}[data-theme=dark] .planchip{background:#e0625f14;border-color:#e0625f55;color:#efe7d6}
.hero .btn.ghost.light,[data-theme=dark] .hero .btn.ghost.light{color:#fff;border-color:#ffffff88}
[data-theme=dark] .pill.popular{background:var(--red);color:#fff;border-color:var(--red)}
/* recruiter bar */
.recbar{background:var(--red);text-align:center}.recbtn{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:6px 12px;border:0;background:none;color:#fff;font:600 14px var(--body);cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#ffffff80}
.recbtn:hover{text-decoration-color:#fff}.soon{font:700 10px var(--body);text-transform:uppercase;letter-spacing:.08em;background:#ffffff26;border:1px solid #ffffff66;border-radius:99px;padding:2px 7px;text-decoration:none;display:inline-block}
.rec .sheet-body p{font-size:18px;margin:0 0 var(--s1)}
[data-theme=dark] .recbar{background:#8f2624}
/* intake + profile bar */
.pbar2{height:12px;background:#e9e1d1;border-radius:99px;overflow:hidden;margin:8px 0 4px}.pbar2 i{display:block;height:100%;background:var(--red);border-radius:99px;transition:width .3s}
.pbl{margin:0}.idots{display:flex;gap:5px;justify-content:center;flex-wrap:wrap;margin:var(--s2) 0 4px}.idots i{width:10px;height:10px;border-radius:50%;background:#d8cfbd}.idots i.ok{background:#b8312f88}.idots i.cur{background:var(--red);transform:scale(1.35)}
.iqt{font-size:32px;margin:8px 0}.iqc .btn{margin-top:var(--s3)}.iqnav{display:flex;justify-content:space-between;align-items:center}.iqnav .linkbtn{min-height:48px;font-size:17px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--s2)}.chip input{position:absolute;opacity:0}.chip span{display:flex;align-items:center;justify-content:center;min-height:56px;min-width:56px;padding:0 18px;border:2px solid var(--line);border-radius:14px;background:var(--paper);font-weight:600;cursor:pointer}
.chip input:checked+span{border-color:var(--red);background:var(--red);color:#fff}.chip input:focus-visible+span{outline:3px solid var(--navy)}
.yn .chip{flex:1}.days7 .chip{flex:1 0 calc(25% - 8px)}.days7 .chip span{padding:0 6px}
.big2{font-size:22px!important;min-height:60px}.hrow{display:grid;grid-template-columns:1fr 1fr;gap:12px}.numrow{display:flex;align-items:center;gap:10px}.numrow span{font-weight:600;color:var(--mute)}
.mt{display:block;margin-top:var(--s2)}.sr{position:absolute;left:-9999px}#painMsg{margin-top:var(--s2)}
.pcard{border-left:5px solid var(--red)}.pcard .btn{margin-bottom:0;min-height:56px}.pdone{display:flex;align-items:center;gap:6px;color:var(--green);font-weight:700;margin:8px 0}.pdone .ic{color:var(--green)}
.pacct{margin-top:6px}.flag{display:inline-block;margin-top:6px;font:700 13px var(--body);color:#fff;background:var(--red);border-radius:8px;padding:4px 8px}
[data-theme=dark] .pbar2{background:#33373d}[data-theme=dark] .idots i{background:#3a3e45}[data-theme=dark] .idots i.ok{background:#e0625f88}[data-theme=dark] .idots i.cur{background:#e0625f}
[data-theme=dark] .chip span{background:#17191c;border-color:#3a3e45;color:#efe7d6}[data-theme=dark] .chip input:checked+span{background:var(--red);border-color:var(--red);color:#fff}
[data-theme=dark] .auth input[type=date],[data-theme=dark] .auth input[type=number]{color-scheme:dark}[data-theme=dark] .pdone,[data-theme=dark] .pdone .ic{color:#5fbf86}
body.inintake .coachbtn{display:none}
/* analytics: plan rating + insights */
.rate{margin-top:var(--s2)}.ratebtns{display:flex;gap:8px}.ratebtns button{flex:1;min-height:56px;border:2px solid var(--line);border-radius:12px;background:var(--paper);font:600 16px var(--body);color:var(--ink);cursor:pointer}
.ratebtns button.on{background:var(--red);border-color:var(--red);color:#fff}.ratebtns button:disabled:not(.on){opacity:.5}
.switchrow{display:flex;align-items:center;gap:10px;min-height:48px;font-weight:600}.switchrow input{width:24px;height:24px;accent-color:var(--red)}
.exbanner{background:#e0a52622;border:2px dashed #b7791f;border-radius:12px;padding:10px 14px;font-size:15px}.exbanner b{color:#8a5a12;margin-right:6px;letter-spacing:.08em}
.insgrid{display:grid;gap:var(--s2)}.insgrid .card{margin:0}.frow{display:flex;justify-content:space-between;gap:8px;font-size:16px;margin-top:10px}.pbar2.thin{height:8px}
.sugg{padding-left:22px;margin:0}.sugg li{margin:0 0 12px}.sugg li b{display:block}.itable{width:100%;border-collapse:collapse;font-size:15px}.itable td,.itable th{padding:7px 4px;border-bottom:1px solid var(--line);text-align:left}.num2{text-align:right!important;font-weight:700}
.ratebar{display:flex;height:18px;border-radius:99px;overflow:hidden;margin:8px 0}.r0{background:#e0a526}.r1{background:var(--green)}.r2{background:var(--red)}.sw{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:8px}
@media(min-width:900px){.insgrid{grid-template-columns:1fr 1fr}}
[data-theme=dark] .ratebtns button{background:#17191c;border-color:#3a3e45;color:#efe7d6}[data-theme=dark] .ratebtns button.on{background:var(--red);color:#fff}
[data-theme=dark] .exbanner b{color:#f0c060}[data-theme=dark] .itable td,[data-theme=dark] .itable th{border-color:#33373d}
/* feedback + ideas */
.foot{text-align:center;padding:var(--s4) 0 var(--s2);font-size:16px;color:var(--mute)}.foot .linkbtn,.foot a{font-size:16px;min-height:44px}
.fbq{font-weight:700;margin:var(--s2) 0 0}.fbtypes .chip{flex:1 0 100%}.fbtypes .chip span{justify-content:flex-start;font-size:17px}
.fbtext{resize:vertical;min-height:110px;font:inherit}.fbcount{text-align:right;margin:0}#fbPain{margin-top:var(--s1)}
.stars{display:flex;gap:6px;margin-top:8px}.stars button{flex:1;min-height:52px;font-size:28px;border:2px solid var(--line);border-radius:12px;background:var(--paper);color:#c9c0ad;cursor:pointer}.stars button.on{color:#e0a526;border-color:#e0a526}
.fbthanks{text-align:center;padding:var(--s3) 0}.fbthanks .big{font-size:56px}
.idea{display:flex;gap:var(--s2);align-items:center;padding:var(--s2)}.vote{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:64px;min-height:64px;border:2px solid var(--line);border-radius:12px;background:var(--paper);color:var(--navy);cursor:pointer;font:600 14px var(--body)}
.vote b{font-size:20px}.vote.on{background:var(--red);border-color:var(--red);color:#fff}.vote:disabled{opacity:.6;cursor:default}
.ititle{margin:0;font-weight:600}.itags{margin:6px 0 0;display:flex;gap:6px;flex-wrap:wrap}.stag{font:700 11px var(--body);text-transform:uppercase;letter-spacing:.06em;padding:3px 8px;border-radius:99px;background:#e9e1d1;color:var(--navy)}
.stag.s-Planned{background:#1d2b4418}.stag.s-Inprogress{background:#e0a52633;color:#7a4f0d}.stag.s-Done{background:#2f7d4f22;color:var(--green)}.stag.ex{background:transparent;border:1.5px dashed #b7791f;color:#8a5a12}.stag.new{background:#b8312f18;color:var(--red)}
.fblist{padding-left:0;list-style:none;margin:6px 0}.fblist li{font-size:15px;padding:6px 0;border-top:1px solid var(--line)}
[data-theme=dark] .stars button,[data-theme=dark] .vote{background:#17191c;border-color:#3a3e45;color:#efe7d6}[data-theme=dark] .stars button{color:#555}[data-theme=dark] .stars button.on{color:#f0c060;border-color:#f0c060}
[data-theme=dark] .vote.on{background:var(--red);border-color:var(--red);color:#fff}[data-theme=dark] .stag{background:#2a2d33;color:#efe7d6}[data-theme=dark] .stag.ex{background:transparent;color:#f0c060;border-color:#f0c060}
[data-theme=dark] .stag.s-Done{color:#5fbf86}[data-theme=dark] .stag.s-Inprogress{color:#f0c060}[data-theme=dark] .stag.new{color:#f08a87}[data-theme=dark] .fbtext{background:#17191c;color:#efe7d6}
.itags .stag{flex:none;display:inline-block;align-self:flex-start;min-height:0;height:auto;line-height:1.4;width:auto}
/* Fuel */
@media(max-width:430px){.tabs a{font-size:13px;letter-spacing:.03em;padding:8px 0}.tabs a svg{width:24px;height:24px}}
.fhabits{display:grid;gap:8px}.fh{display:flex;align-items:center;gap:12px;padding:12px;border:2px solid var(--line);border-radius:12px;font-weight:600;cursor:pointer;min-height:48px}
.fh input{width:24px;height:24px;accent-color:var(--green);flex:none}.fh:has(input:checked){border-color:var(--green);background:#2f7d4f14}
.fwater{margin-bottom:0;padding:10px 12px;border-radius:10px;background:#3d7ea61a;border-left:4px solid #3d7ea6}
.plate{display:block;width:min(240px,70vw);height:auto;margin:8px auto}
.pgrp{margin-top:12px}.pchips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.pchip{font:600 15px var(--body);padding:8px 12px;border-radius:999px;border:2px solid var(--line);background:var(--paper);color:var(--ink);min-height:40px;cursor:pointer}
.pchip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.pmeal{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:#2f7d4f1a}
.gplan{padding-left:20px;margin:8px 0 0}.gplan li{margin-bottom:10px}.gplan li b{display:block}.gplan li span{font-size:16px}
.ftips{padding-left:20px;margin:8px 0 0}.ftips li{margin-bottom:6px}
.gchart{width:100%;height:auto;color:var(--mute);margin:8px 0}
.gform{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0 12px}.gform label{font-size:14px;font-weight:600;display:flex;flex-direction:column;gap:4px}.gform label:last-child{grid-column:1/-1}
.gform input{font:16px var(--body);padding:10px;border:2px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);min-height:44px;box-sizing:border-box;width:100%}
.gfast{padding:12px;border-radius:10px;background:#b7791f22;border-left:4px solid var(--amber);margin:8px 0}
.pnote{background:var(--paper);border-left:4px solid var(--red);font-size:16px}
.flag.amber{background:var(--amber)}
[data-theme=dark] .pchip,[data-theme=dark] .gform input{background:#1c1f23;color:#f6f1e7;border-color:#3a3e44}
[data-theme=dark] .pchip.on{background:var(--red);border-color:var(--red)}
[data-theme=dark] .fh{border-color:#3a3e44}[data-theme=dark] .pnote{background:#1c1f23}
[data-theme=dark] .gchart{color:#b9b3a7}
/* ---- new: approval, guardrails, dashboard, legal, coach disclaimer ---- */
.footwm{height:22px;width:auto;margin:12px auto 0;opacity:.85}
.mailsim{border:2px dashed var(--line);background:var(--cream)}
.draftbar{background:#c8312c;color:#fff;font:600 15px var(--disp);letter-spacing:.06em;text-transform:uppercase;text-align:center;padding:8px;border-radius:10px;margin:8px 0}
.legal .card p,.legal .card li{font-size:16px}
.auth.wide{max-width:640px}
.note.guard{border-left:5px solid #c8312c}.note.day1{border-left:5px solid var(--green)}
.note.warn{background:#fde7e5;color:#7a1513;border-left:5px solid #c8312c}
.plist{list-style:none;padding:0;margin:12px 0}.plist li{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:10px 0;border-top:1px solid var(--line)}.plist li span{flex:1}
.rules td,.rules th{text-align:left}
.dstats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.dstats>div{background:var(--cream);border-radius:12px;padding:10px;text-align:center}.dstats .eyebrow{display:block;margin:0 0 4px;font-size:12px}.dstats .big{font-size:30px}
.wk{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:8px 0}.wk span{display:flex;flex-direction:column;align-items:center;border:1.5px solid var(--line);border-radius:10px;padding:6px 0;font-weight:700;font-size:15px}.wk i{font-style:normal;font-size:11px;font-weight:600;opacity:.7}.wk .th{background:#c8312c;color:#fff;border-color:#c8312c}.wk .cr{border-color:var(--green)}
.flags{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.flags .eyebrow{margin:0}
.cdisc{font-size:13px;margin:0;padding:0 var(--s2) 12px;opacity:.75;text-align:center}
[data-theme=dark] .mailsim,[data-theme=dark] .dstats>div{background:#17191c}
[data-theme=dark] .note.warn{background:#3a1715;color:#ffd9d6}
[data-theme=dark] .wk span{border-color:#4a4e55}[data-theme=dark] .wk .cr{border-color:#4fb37a}
.plogin{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-top:8px;padding-top:8px;border-top:1px dashed var(--line)}.plogin .sbtn{width:auto;margin:0;padding:0 14px;min-height:40px}
.trial{border-left:5px solid var(--green)}.trial .tl{margin:6px 0;font-size:34px}
[data-theme=dark] .plogin{border-color:#4a4e55}
