:root{--bg: #0b1114;--surface: #131b1e;--surface-sunk: #0f171a;--line: #1b2427;--line-strong: #2b3a3f;--ink: #e4edea;--muted: #7c9198;--faint: #63797f;--signal: #e9a93a;--protein: #3fa697;--phase: #4fbaa9;--danger: #e4674f;--ui: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, "Helvetica Neue", sans-serif;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--radius-card: 18px;--radius-control: 14px;--gap: .7rem}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--ui);font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}#root{max-width:30rem;margin:0 auto;padding:.6rem .95rem calc(1.4rem + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--gap)}h1{margin:.2rem 0 0;font-size:1.35rem;font-weight:650;letter-spacing:-.02em}h2{margin:0;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}h3{margin:0;font-size:.95rem;font-weight:650;letter-spacing:-.01em}p{margin:0;color:var(--ink)}section>p,fieldset>p{color:var(--muted);font-size:.88rem}a{color:var(--phase)}main section,fieldset{background:var(--surface);border:none;border-radius:var(--radius-card);padding:.9rem 1rem;display:flex;flex-direction:column;gap:.5rem}main section section{background:none;border-radius:0;border-top:1px solid var(--line);padding:.55rem 0 0;gap:.3rem}main section section:first-of-type{border-top:none;padding-top:.1rem}main section section>h3{font-size:.68rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--phase)}legend{padding:0;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}header{display:flex;flex-direction:column;gap:.4rem}nav{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:.35rem;padding-bottom:.15rem;scrollbar-width:none;-ms-overflow-style:none}nav::-webkit-scrollbar{display:none}nav button{white-space:nowrap}nav button{flex:0 0 auto;padding:.5rem .7rem;font-size:.8rem;font-weight:600;background:var(--surface);color:var(--muted);border-radius:999px}nav button:hover{color:var(--ink)}header>button{align-self:flex-end;padding:.35rem .7rem;font-size:.75rem;background:none;color:var(--faint)}button{font:inherit;border:none;border-radius:var(--radius-control);padding:.85rem 1rem;background:#1b2529;color:var(--ink);font-size:.9rem;font-weight:650;cursor:pointer;min-height:2.75rem}button:disabled{opacity:.45;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--phase);outline-offset:2px}label{display:block;font-size:.78rem;font-weight:600;letter-spacing:.01em;color:var(--muted);margin-top:.35rem}input,select,textarea{font:inherit;width:100%;background:var(--surface-sunk);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-control);padding:.7rem .8rem;margin-top:.25rem}input[type=number]{font-family:var(--mono);font-size:1.15rem}textarea{min-height:6.5rem;resize:vertical}select{-webkit-appearance:none;-moz-appearance:none;appearance:none}ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem;font-size:.9rem;color:var(--ink)}li button{padding:.35rem .6rem;min-height:0;font-size:.75rem;font-weight:600;background:none;color:var(--faint)}[role=alert]{color:var(--danger);font-size:.88rem}[role=status]{color:var(--muted);font-size:.88rem}[role=progressbar]{height:7px;border-radius:4px;background:var(--line);overflow:hidden;color:transparent;font-size:0;position:relative}[role=progressbar]:after{content:"";position:absolute;inset:0 auto 0 0;width:calc(var(--progress, 0) * 1%);background:var(--signal);border-radius:4px}.hero{font-family:var(--mono);font-size:2.7rem;font-weight:600;letter-spacing:-.05em;line-height:1;color:var(--signal);display:block}.hero-unit{font-family:var(--ui);font-size:.85rem;font-weight:600;letter-spacing:0;color:var(--muted);margin-left:.3rem}.pair{display:flex;gap:.55rem}.pair>section,.pair>div{flex:1;background:var(--surface);border-radius:var(--radius-card);padding:.75rem .85rem;display:flex;flex-direction:column;gap:.25rem}.value{font-family:var(--mono);font-size:1.35rem;font-weight:600;letter-spacing:-.03em}.value-protein{color:var(--protein)}.phase-band{display:flex;align-items:center;gap:.5rem;background:#12292b;color:var(--phase);border-radius:999px;padding:.42rem .85rem;font-size:.73rem;font-weight:700}.actions{display:flex;gap:.55rem;margin-top:.2rem}.actions>button{flex:1}.actions>button.primary,button.primary{background:var(--signal);color:#0b1114}.login{display:flex;flex-direction:column;gap:.55rem;min-height:70vh;justify-content:center}.login h1{font-size:2.4rem;font-weight:700;letter-spacing:-.03em}.login h2{font-size:.95rem;font-weight:500;letter-spacing:0;text-transform:none;color:var(--muted);margin-bottom:1.2rem}.login button{margin-top:.6rem}.estimated{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#0b1114;background:var(--signal);padding:.06rem .35rem;border-radius:999px}@media (prefers-reduced-motion: no-preference){button,nav button{transition:background-color .12s ease,color .12s ease}}
