:root{--bg:#0a0a0a;--card:#c4441c;--card-deep:#a73813;--card-light:#d65a2e;--ink:#f5efe8;--ink-dim:#f4d4c0;--ink-mute:#f4d4c09e;--line:#f5efe82e;--line-strong:#f5efe852;--panel:#141414;--panel-2:#1c1c1c;--good:#6cc28a;--warn:#e8a04a;--bad:#d96a4a}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-feature-settings:"ss01";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;letter-spacing:-.005em;margin:0;padding:0;font-family:Manrope,Inter,-apple-system,BlinkMacSystemFont,sans-serif}#root{width:100%;min-height:100vh}.serif{letter-spacing:-.025em;font-family:Manrope,Inter,sans-serif;font-weight:300}.serif em{letter-spacing:-.03em;font-style:normal;font-weight:700}.mono{font-feature-settings:"ss02";font-family:JetBrains Mono,ui-monospace,Menlo,monospace}.app{flex-direction:column;min-height:100vh;padding:18px;display:flex}.shell{background:linear-gradient(125deg,#e87142 0%,#c4441c 28%,#7d2509 58%,#2a0a02 84%,#0a0302 100%);border-radius:18px;flex-direction:column;flex:1;display:flex;position:relative;overflow:clip;box-shadow:0 30px 80px #c4441c40}.shell:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(70% 60% at 22% 38%,#ffb48238 0%,#ffb48200 60%);position:absolute;inset:0}.shell>*{z-index:1;position:relative}.nav{z-index:100;-webkit-backdrop-filter:blur(18px);background:#0a0302b3;border-bottom:1px solid #f5efe81f;justify-content:space-between;align-items:center;padding:22px 32px;display:flex;position:sticky;top:0}.nav-left{align-items:center;gap:36px;display:flex}.brand{letter-spacing:-.025em;color:var(--ink);align-items:center;gap:10px;font-size:18px;font-weight:700;text-decoration:none;display:flex}.brand-mark{background:var(--ink);width:28px;height:28px;color:var(--card-deep);border-radius:7px;place-items:center;font-size:13px;font-weight:700;display:grid}.nav-links{gap:28px;display:flex}.nav-link{color:var(--ink-dim);cursor:pointer;padding-left:12px;font-size:13px;text-decoration:none;transition:color .15s;position:relative}.nav-link:before{content:"";background:var(--ink-dim);opacity:.6;border-radius:50%;width:5px;height:5px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.nav-link.active,.nav-link:hover{color:var(--ink)}.nav-link.active:before{background:var(--ink);opacity:1}.nav-right{align-items:center;gap:10px;display:flex}.tools-header{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.nav-hamburger{color:var(--ink);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:18px;line-height:1;display:none}.nav-mobile-menu{border-top:0 solid #f5efe81f;flex-direction:column;gap:2px;max-height:0;padding:0 18px;transition:max-height .28s,padding .28s;display:flex;overflow:hidden}.nav-mobile-menu.open{border-top-width:1px;max-height:480px;padding:8px 18px 18px}.nav-mobile-link{cursor:pointer;color:var(--ink-dim);border-bottom:1px solid #f5efe814;padding:11px 0;font-size:15px}.nav-mobile-link.active{color:var(--ink);font-weight:500}.btn{border:1px solid var(--ink);color:var(--ink);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;align-items:center;padding:10px 18px;font-family:inherit;font-size:13px;text-decoration:none;transition:all .15s;display:inline-flex}.btn:hover,.btn-solid{background:var(--ink);color:var(--card-deep)}.btn-solid:hover{background:#fff}.btn-ghost{color:var(--ink-dim);border-color:#0000}.btn-ghost:hover{color:var(--ink);background:#f5efe814}.btn-sm{padding:7px 14px;font-size:12px}.icon-btn{justify-content:center;align-items:center;padding:7px;display:inline-flex}.btn-lg{padding:14px 26px;font-size:14px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:disabled:hover{color:var(--ink);background:0 0}.btn-solid:disabled:hover{background:var(--ink);color:var(--card-deep)}.hero{flex:1;grid-template-columns:1.05fr 1.4fr 1fr;min-height:0;display:grid}.hero-col{flex-direction:column;justify-content:space-between;padding:36px 32px;display:flex;position:relative}.hero-col+.hero-col{border-left:1px solid #f5efe81f}.hero-intro{color:var(--ink-dim);max-width:30ch;font-size:15px;line-height:1.45}.hero-display{letter-spacing:-.035em;color:var(--ink-dim);margin:0;font-family:Manrope,Inter,sans-serif;font-size:clamp(36px,4.8vw,72px);font-weight:300;line-height:1}.hero-display .accent{color:var(--ink);letter-spacing:-.04em;font-style:normal;font-weight:700}.hero-meta{color:var(--ink-mute);text-transform:uppercase;letter-spacing:.12em;justify-content:space-between;gap:24px;font-size:11px;display:flex}.hero-meta div span{color:var(--ink-dim);letter-spacing:.06em;margin-top:2px;font-size:12px;display:block}.hero-visual{place-items:center;padding:12px;display:grid;position:relative}.hero-dial-wrap{place-items:center;width:100%;height:100%;display:grid}.quick-calc{background:#0000002e;border:1px solid #f5efe824;border-radius:12px;flex-direction:column;gap:14px;padding:22px;display:flex}.quick-calc h4{text-transform:uppercase;letter-spacing:.16em;color:var(--ink-dim);margin:0 0 4px;font-size:12px;font-weight:500}.kv-row{color:var(--ink-dim);border-bottom:1px dashed #f5efe81f;justify-content:space-between;align-items:baseline;padding-bottom:8px;font-size:13px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field label{text-transform:uppercase;letter-spacing:.12em;color:var(--ink-mute);font-size:11px}.input{color:var(--ink);background:#00000038;border:1px solid #f5efe82e;border-radius:8px;outline:none;width:100%;padding:12px 14px;font-family:inherit;font-size:15px;transition:border .15s,background .15s}.input:focus{border-color:var(--ink);background:#00000052}.input::placeholder{color:var(--ink-mute)}.seg{background:#00000038;border:1px solid #f5efe82e;border-radius:8px;gap:2px;padding:3px;display:inline-flex}.seg button{color:var(--ink-dim);cursor:pointer;letter-spacing:.04em;background:0 0;border:0;border-radius:6px;padding:7px 14px;font-family:inherit;font-size:12px;transition:all .12s}.seg button.on{background:var(--ink);color:var(--card-deep)}.dark-surface .input{background:#ffffff0a;border-color:#ffffff1f}.dark-surface .input:focus{border-color:var(--card-light);background:#ffffff0f}.dark-surface .seg{background:#ffffff0a;border-color:#ffffff1f}.dark-surface .seg button.on{background:var(--card);color:var(--ink)}.stat-stack{flex-direction:column;gap:10px;margin-top:14px;display:flex}.stat-card{background:#00000047;border:1px solid #f5efe824;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.stat-label{color:var(--ink-dim);text-transform:uppercase;letter-spacing:.1em;font-size:11px;line-height:1.3}.stat-num{color:var(--ink);letter-spacing:-.025em;font-family:Manrope,sans-serif;font-size:26px;font-weight:700;line-height:1}.stat-sub{color:var(--ink-mute);letter-spacing:.06em;font-family:JetBrains Mono,monospace;font-size:10px}.screen{flex-direction:column;flex:1;min-height:0;display:flex}.screen-body{flex-direction:column;flex:1;gap:24px;padding:36px 48px;display:flex;overflow:auto}.calc-grid{flex:1;grid-template-columns:1fr 1.1fr;align-items:start;gap:48px;display:grid}.calc-side{flex-direction:column;gap:22px;display:flex;position:sticky;top:0}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--ink-mute);font-size:11px}.h-display{letter-spacing:-.035em;color:var(--ink-dim);margin:0;font-family:Manrope,Inter,sans-serif;font-size:clamp(46px,5.6vw,80px);font-weight:300;line-height:.95}.h-display em{color:var(--ink);letter-spacing:-.04em;font-style:normal;font-weight:700}.h2{letter-spacing:-.02em;margin:0 0 6px;font-family:Manrope,sans-serif;font-size:28px;font-weight:600}.lede{color:var(--ink-dim);max-width:46ch;font-size:15px;line-height:1.5}.stepper{color:var(--ink-mute);text-transform:uppercase;letter-spacing:.14em;align-items:center;gap:8px;font-size:12px;display:flex}.step-dot{background:#f5efe840;border-radius:50%;width:8px;height:8px}.step-dot.on{background:var(--ink)}.step-dot.done{background:var(--ink-dim)}.calc-form{background:#00000038;border:1px solid #f5efe824;border-radius:14px;flex-direction:column;gap:18px;padding:28px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-actions{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.result-grid{flex:1;grid-template-columns:1.1fr 1fr;gap:36px;display:grid}.score-card{background:#00000047;border:1px solid #f5efe824;border-radius:14px;flex-direction:column;gap:16px;padding:32px;display:flex;position:relative;overflow:hidden}.score-num{letter-spacing:-.055em;color:var(--ink);align-items:baseline;gap:14px;font-family:Manrope,Inter,sans-serif;font-size:clamp(80px,12vw,160px);font-weight:700;line-height:.85;display:flex}.score-unit{color:var(--ink-dim);text-transform:uppercase;letter-spacing:.12em;width:80px;font-family:JetBrains Mono,monospace;font-size:12px;line-height:1.3}.score-bar{background:#00000052;border:1px solid #f5efe81f;border-radius:999px;align-items:center;height:36px;display:flex;position:relative;overflow:hidden}.score-bar .seg-mark{text-transform:uppercase;letter-spacing:.08em;height:100%;color:var(--ink-mute);z-index:2;border-right:1px solid #f5efe81a;flex:1;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:9px;display:flex;position:relative}.score-bar .seg-mark:last-child{border-right:0}.score-bar .marker{background:var(--ink);z-index:3;border-radius:2px;width:3px;height:28px;animation:2.4s ease-in-out infinite pulse-mark;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #f5efe826}.bench-list{flex-direction:column;gap:12px;display:flex}.bench-row{color:var(--ink-dim);grid-template-columns:90px 1fr 60px;align-items:center;gap:14px;font-size:13px;display:grid}.bench-bar{background:#0000004d;border-radius:999px;height:8px;position:relative;overflow:hidden}.bench-bar>span{border-radius:999px;height:100%;display:block}.bench-bar.you>span{background:var(--ink)}.bench-bar:not(.you)>span{background:#f5efe866}.dash-shell{flex:1;grid-template-columns:220px 1fr;min-height:0;display:grid}.side{border-right:1px solid #f5efe81f;flex-direction:column;gap:22px;padding:28px 22px;display:flex;overflow-y:auto}.side-section{flex-direction:column;gap:4px;display:flex}.side-title{text-transform:uppercase;letter-spacing:.16em;color:var(--ink-mute);margin-bottom:6px;font-size:10px}.side-link{color:var(--ink-dim);cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13px;text-decoration:none;transition:background .12s,color .12s;display:flex}.side-link:before{content:"";opacity:.7;background:currentColor;border-radius:50%;width:5px;height:5px}.side-link:hover{color:var(--ink);background:#0000002e}.side-link.active{color:var(--ink);background:#00000047}button.side-link{text-align:left;background:0 0;border:none;width:100%;font-family:inherit;font-size:13px}.dash-body{flex-direction:column;gap:22px;padding:28px 36px;display:flex;overflow:auto}.dash-head{justify-content:space-between;align-items:flex-end;display:flex}.kpi-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.kpi{background:#00000038;border:1px solid #f5efe824;border-radius:12px;flex-direction:column;gap:8px;padding:18px;display:flex}.kpi .label{text-transform:uppercase;letter-spacing:.14em;color:var(--ink-mute);font-size:10px}.kpi .num{letter-spacing:-.03em;color:var(--ink);font-family:Manrope,Inter,sans-serif;font-size:44px;font-weight:700;line-height:1}.kpi .delta{color:var(--good);font-family:JetBrains Mono,monospace;font-size:11px}.kpi .delta.down{color:var(--bad)}.chart-card{background:#00000038;border:1px solid #f5efe824;border-radius:12px;flex-direction:column;gap:14px;padding:22px 24px;display:flex}.chart-svg{width:100%;height:180px;display:block}.history-table{border-collapse:collapse;width:100%;font-size:13px}.history-table th{text-align:left;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-mute);border-bottom:1px solid #f5efe81f;padding:10px 12px;font-size:10px;font-weight:500}.history-table td{color:var(--ink-dim);border-bottom:1px solid #f5efe814;padding:14px 12px}.history-table tr:hover td{color:var(--ink);background:#00000029}.history-table .del-btn{color:#f5efe840;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-family:inherit;font-size:15px;transition:color .12s}.history-table .del-btn:hover{color:var(--bad)}.auth-shell{flex:1;grid-template-columns:1fr 1fr;min-height:0;display:grid}.auth-left{flex-direction:column;justify-content:space-between;padding:48px;display:flex;position:relative}.auth-right{background:var(--panel);flex-direction:column;justify-content:center;align-items:stretch;gap:18px;padding:48px;display:flex}.auth-form{flex-direction:column;gap:14px;width:100%;max-width:380px;margin:0 auto;display:flex}.auth-form .social-btn{color:var(--ink);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:11px 16px;font-family:inherit;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.auth-form .social-btn:hover{background:#ffffff14;border-color:#ffffff38}.auth-form .divider{text-align:center;color:#f5efe84d;margin:2px 0;font-size:12px;position:relative}.auth-form .divider:before,.auth-form .divider:after{content:"";background:#f5efe81f;width:44%;height:1px;position:absolute;top:50%}.auth-form .divider:before{left:0}.auth-form .divider:after{right:0}.auth-form .error{color:var(--bad);background:#d96a4a1f;border:1px solid #d96a4a33;border-radius:8px;padding:10px 14px;font-size:13px}.tools-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:8px;display:grid}.tool-card{cursor:pointer;min-height:180px;color:inherit;background:#00000047;border:1px solid #f5efe824;border-radius:12px;flex-direction:column;justify-content:space-between;gap:14px;padding:18px;text-decoration:none;transition:border-color .18s,background .18s,transform .18s;animation:.2s both toolFadeIn;display:flex}@keyframes toolFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.tool-card:hover{background:#00000061;border-color:#f5efe866;transform:translateY(-2px)}.tool-card.featured{background:#f5efe814;border-color:#f5efe847;grid-column:span 2;min-height:200px}.tool-card-head{justify-content:space-between;align-items:flex-start;display:flex}.tool-glyph{background:#f5efe80f;border:1px solid #f5efe81f;border-radius:10px;place-items:center;width:40px;height:40px;font-size:18px;display:grid}.tool-name{color:var(--ink);letter-spacing:-.025em;margin-bottom:4px;font-size:18px;font-weight:700}.tool-card.featured .tool-name{font-size:24px}.tool-measures{color:var(--ink-dim);font-size:12px;line-height:1.4}.tool-card-foot{border-top:1px solid #f5efe81a;justify-content:space-between;align-items:center;padding-top:10px;display:flex}.tool-protocol{text-transform:uppercase;letter-spacing:.12em;color:var(--ink-mute);font-size:10px}.tool-open{color:var(--ink);letter-spacing:.04em;font-size:12px}.tag{color:var(--ink);text-transform:uppercase;letter-spacing:.1em;background:#f5efe81f;border-radius:999px;padding:3px 9px;font-size:10px;display:inline-flex}.tag.good{color:var(--good);background:#6cc28a2e}.tag.warn{color:var(--warn);background:#e8a04a2e}.tag.bad{color:var(--bad);background:#d96a4a2e}.zones-stack{background:#00000038;border:1px solid #f5efe824;border-radius:14px;flex-direction:column;gap:10px;padding:22px;display:flex}.zone-row{background:#00000040;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:10px 14px;display:grid;position:relative;overflow:hidden}.zone-bar{opacity:.32;z-index:0;position:absolute;inset:0}.zone-meta{z-index:1;position:relative}.zone-name{color:var(--ink);font-size:14px;font-weight:600}.zone-desc{color:var(--ink-dim);margin-top:2px;font-size:11px}.zone-bpm{z-index:1;text-align:right;white-space:nowrap;flex-direction:column;align-items:flex-end;gap:2px;min-width:120px;display:flex;position:relative}.pct-grid{grid-template-columns:repeat(7,1fr);gap:8px;margin-top:8px;display:grid}.pct-cell{text-align:center;background:#00000047;border:1px solid #f5efe81a;border-radius:8px;padding:10px 8px}.save-banner{color:var(--ink-dim);background:#00000052;border:1px solid #f5efe82e;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding:12px 16px;font-size:13px;display:flex}.toast{background:var(--ink);color:var(--card-deep);z-index:200;border-radius:999px;padding:12px 20px;font-size:13px;font-weight:500;animation:.25s toast-in;position:fixed;bottom:32px;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #0006}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.modal-bg{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#00000080;place-items:center;display:grid;position:fixed;inset:0}.modal{background:var(--panel);color:var(--ink);border:1px solid #f5efe81a;border-radius:14px;flex-direction:column;gap:14px;width:420px;max-width:92vw;padding:28px;display:flex}.shell-footer{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-mute);white-space:nowrap;border-top:1px solid #f5efe81f;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:16px 32px;font-size:10px;display:grid}.shell-footer>div:last-child{text-align:right}.shell-footer>div{flex-direction:column;gap:2px;display:flex}.shell-footer span{color:var(--ink-dim);letter-spacing:.04em;text-transform:none;font-size:11px;display:block}.spread{justify-content:space-between;align-items:center;gap:16px;display:flex}.col{flex-direction:column;gap:8px;display:flex}.row{align-items:center;gap:10px;display:flex}.gap-lg{gap:18px}.muted{color:var(--ink-mute)}.dim{color:var(--ink-dim)}.center{text-align:center}.divider{background:#f5efe81f;height:1px;margin:6px 0}@keyframes pulse-mark{0%,to{box-shadow:0 0 0 4px #f5efe826}50%{box-shadow:0 0 0 10px #f5efe80d}}@media (width<=1100px){.tools-grid{grid-template-columns:repeat(2,1fr)}.tool-card.featured{grid-column:span 2}.pct-grid{grid-template-columns:repeat(4,1fr)}.hero{grid-template-columns:1fr 1fr}.hero-col:nth-child(2){display:none}.calc-grid,.result-grid,.auth-shell{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(2,1fr)}.dash-shell{grid-template-columns:1fr}.side{display:none}}.about-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.about-card{background:#ffffff0f;border:1px solid #f5efe81a;border-radius:12px;padding:20px}.about-num{color:var(--ink);opacity:.25;font-family:Manrope,sans-serif;font-size:32px;font-weight:800;line-height:1}.formula{color:var(--ink-dim);background:#0003;border-radius:8px;padding:12px 16px;font-family:Courier New,monospace;font-size:14px}@keyframes aboutFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.about-detail{margin-top:28px;animation:.3s aboutFadeIn}.dash-view{flex-direction:column;gap:16px;animation:.25s aboutFadeIn;display:flex}@keyframes modalBackdrop{0%{opacity:0}to{opacity:1}}@keyframes modalCard{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-backdrop{animation:.2s modalBackdrop}.modal-card{animation:.25s cubic-bezier(.34,1.56,.64,1) modalCard}@media (width<=700px){.about-grid{grid-template-columns:1fr}}.tracking-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.spark-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px;transition:border-color .15s}.spark-card:hover{border-color:var(--line-strong)}.goal-progress-bar{background:#f5efe814;border-radius:4px;height:8px;overflow:hidden}.goal-progress-fill{background:#c4441c;border-radius:4px;height:100%;transition:width .6s}.splits-scroll::-webkit-scrollbar{width:4px}.splits-scroll::-webkit-scrollbar-track{background:0 0}.splits-scroll::-webkit-scrollbar-thumb{background:#f4d4c040;border-radius:4px}.splits-scroll::-webkit-scrollbar-thumb:hover{background:#f4d4c080}.splits-scroll{scrollbar-width:thin;scrollbar-color:#f4d4c040 transparent}@media (width<=600px){.app{padding:0}.shell{border-radius:0}.nav{padding:14px 18px}.nav-links,.nav-desktop{display:none}.nav-hamburger{display:block}.screen-body{padding:20px 18px}.hero{grid-template-columns:1fr}.hero-col:nth-child(2),.hero-col:nth-child(3){display:none}.tools-header{flex-direction:column;align-items:flex-start}.tools-header .seg{max-width:100%;overflow-x:auto}.dash-body{gap:14px;padding:18px 16px}.dash-head{flex-direction:column;align-items:flex-start;gap:10px}.dash-head>.row{width:100%}.kpi-grid{grid-template-columns:repeat(2,1fr)}.dash-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.shell-footer{grid-template-columns:1fr auto 1fr;padding:16px 18px}}
