:root{--iron:#1f2937;--plate:#2a3240;--plate-2:#313742;--plate-3:#37414f;--edge:#374151;--edge-2:#4b5563;--chalk:#f8fafc;--steel:#cbd5e1;--steel-dim:#64748b;--primary:#f97316;--on-primary:#0f172a;--accent:#22c55e;--on-accent:#0f172a;--c-str:#ef4444;--c-eng:#f97316;--c-ath:#22c55e;--c-up:#3b82f6;--c-sport:#eab308;--c-mob:#06b6d4;--danger:#ef4444;--danger-bg:#3a1f24;--ok:#22c55e;--warn:#eab308;--display:"Barlow Condensed", "Arial Narrow", system-ui, sans-serif;--body:"Barlow", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"Barlow Condensed", "Arial Narrow", system-ui, sans-serif;--r:14px;--r-sm:10px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--tap:48px;--nav-h:64px;--safe-b:env(safe-area-inset-bottom,0px);--safe-t:env(safe-area-inset-top,0px);--ease:cubic-bezier(.2, .8, .2, 1);--t-fast:.12s;--t-med:.22s;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{background:var(--iron)}body{color:var(--chalk);font-family:var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overscroll-behavior-y:none;font-size:16px;line-height:1.5}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation;background:0 0;border:0}button:disabled{cursor:not-allowed;opacity:.45}:focus-visible{outline:2px solid var(--chalk);outline-offset:2px;border-radius:6px}a{color:var(--chalk)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.shell{max-width:560px;min-height:100dvh;padding:calc(var(--safe-t) + var(--s4)) var(--s4) calc(var(--nav-h) + var(--safe-b) + 40px);margin:0 auto}.shell.full{padding-bottom:calc(var(--safe-b) + 24px)}.eyebrow{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--steel);font-size:14px;font-weight:600}.h1{font-family:var(--display);letter-spacing:-.01em;text-transform:uppercase;font-size:38px;font-weight:700;line-height:1}.h2{font-family:var(--display);font-size:24px;font-weight:700;line-height:1.1}.h3{font-family:var(--display);font-size:19px;font-weight:700;line-height:1.15}.muted{color:var(--steel)}.small{font-size:14px}.mono{font-family:var(--mono)}.num{font-family:var(--display);letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-weight:700}.stack>*+*{margin-top:var(--s3)}.stack-lg>*+*{margin-top:var(--s5)}.row{align-items:center;gap:var(--s3);display:flex}.between{justify-content:space-between}.grow{flex:1;min-width:0}.wrap{flex-wrap:wrap}.section-title{margin:var(--s5) 0 var(--s3);justify-content:space-between;align-items:baseline;display:flex}.card{background:var(--plate);border:1px solid var(--edge);border-radius:var(--r);padding:var(--s4)}.card.tight{padding:var(--s3)}.card.accent{border-top:3px solid var(--accent,var(--c-ath))}.btn{min-height:var(--tap);padding:0 var(--s4);border-radius:var(--r-sm);justify-content:center;align-items:center;gap:var(--s2);background:var(--plate-2);border:1px solid var(--edge-2);color:var(--chalk);transition:background var(--t-fast) var(--ease), border-color var(--t-fast), opacity var(--t-fast);font-size:15px;font-weight:600;display:inline-flex}.btn:active:not(:disabled){background:var(--plate-3)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn.primary:active:not(:disabled){opacity:.85}.btn.danger{background:var(--danger-bg);border-color:var(--danger);color:#ffd9d9}.btn.ghost{background:0 0;border-color:#0000}.btn.big{min-height:60px;font-size:21px;font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;border-radius:var(--r);width:100%;font-weight:700}.btn.block{width:100%}.btn.sm{min-height:44px;padding:0 var(--s3);font-size:14px}.icon-btn{width:var(--tap);height:var(--tap);color:var(--chalk);border-radius:12px;place-items:center;display:inline-grid}.icon-btn:active{background:var(--plate-2)}.chip{background:var(--plate-2);border:1px solid var(--edge-2);min-height:44px;transition:background var(--t-fast), border-color var(--t-fast);border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:15px;font-weight:500;display:inline-flex}.chip[aria-pressed=true]{background:var(--chalk);color:var(--on-accent);border-color:var(--chalk)}.seg{grid-auto-columns:1fr;grid-auto-flow:column;gap:6px;display:grid}.seg .chip{justify-content:center;padding:0 6px}.tag{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;background:var(--plate-2);color:var(--steel);border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:14px;font-weight:600;display:inline-flex}.tag.up{color:#4ade80;background:#173528}.tag.hold{color:#facc15;background:#3a3418}.tag.down{color:#fca5a5;background:var(--danger-bg)}.tag.new{color:#93c5fd;background:#1e2e4a}.banner{gap:var(--s3);padding:var(--s3) var(--s4);border-radius:var(--r);background:var(--danger-bg);border:1px solid var(--danger);color:#ffe3e3;align-items:flex-start;font-weight:600;display:flex}.banner.info{color:#dbeafe;background:#1e2e4a;border-color:#3b82f6;font-weight:500}.banner.warn{color:#fef9c3;background:#3a3418;border-color:#a16207;font-weight:500}.banner svg{flex:none;margin-top:2px}.top{justify-content:space-between;align-items:flex-start;gap:var(--s3);display:flex}.counter{align-items:baseline;gap:10px;display:flex}.counter .num{color:var(--chalk);font-size:72px;line-height:.85}.phase{font-family:var(--display);color:var(--primary);letter-spacing:.08em;text-transform:uppercase;font-size:16px;font-weight:700}.bar{background:var(--plate-3);border-radius:99px;height:8px;overflow:hidden}.bar>i{background:var(--primary);height:100%;transition:width var(--t-med) var(--ease);border-radius:99px;display:block}.coach{color:var(--chalk);border-left:3px solid var(--primary);padding:2px 0 2px 12px;font-size:16px}.coach small{font-family:var(--display);color:var(--steel);letter-spacing:.1em;text-transform:uppercase;margin-bottom:2px;font-size:13px;font-weight:600;display:block}.hero{background:var(--plate);border:1px solid var(--edge);padding:var(--s4) var(--s4) var(--s4);border-radius:18px}.hero .when{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--steel);font-size:15px;font-weight:600}.hero .title{font-family:var(--display);text-transform:uppercase;margin:6px 0;font-size:34px;font-weight:700;line-height:1}.timeline{list-style:none}.tl{grid-template-columns:52px 4px 1fr auto;align-items:stretch;gap:0 12px;min-height:64px;display:grid}.tl+.tl{border-top:1px solid var(--edge)}.tl .t{font-family:var(--display);color:var(--steel);font-variant-numeric:tabular-nums;padding-top:14px;font-size:17px;font-weight:600}.tl .rail{background:var(--rail,var(--steel-dim));border-radius:4px;margin:10px 0}.tl .body{min-width:0;padding:10px 0}.tl .body .h3{font-size:18px}.tl .body p{color:var(--steel);overflow-wrap:anywhere;font-size:14px}.tl .act{align-items:center;display:flex}.tl.done .h3{color:var(--steel);text-decoration:line-through;-webkit-text-decoration-color:var(--steel-dim);text-decoration-color:var(--steel-dim)}.tl.done .rail{opacity:.35}.tick{border:2px solid var(--edge-2);color:#0000;width:44px;height:44px;transition:background var(--t-fast), border-color var(--t-fast);border-radius:12px;place-items:center;display:grid}.tick[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.prio{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--primary);font-size:13px;font-weight:600}.nav{z-index:30;border-top:1px solid var(--edge);padding-bottom:var(--safe-b);-webkit-backdrop-filter:blur(10px);background:#171e29f7;position:fixed;bottom:0;left:0;right:0}.nav-in{max-width:560px;height:var(--nav-h);grid-template-columns:repeat(5,1fr);margin:0 auto;display:grid}.nav-ci{color:var(--chalk);flex-direction:column;justify-content:flex-end;align-items:center;gap:3px;padding-bottom:9px;font-size:12px;font-weight:600;display:flex}.nav-ci span{background:var(--chalk);width:52px;height:52px;color:var(--on-accent);transition:opacity var(--t-fast);border-radius:18px;place-items:center;margin-top:-22px;display:grid;box-shadow:0 6px 18px #00000080}.nav-ci:active span{opacity:.85}.nav a{color:var(--steel);flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:12px;font-weight:500;text-decoration:none;display:flex}.nav a[aria-current=page]{color:var(--chalk)}.nav a[aria-current=page] svg{color:var(--primary)}.fab{z-index:31;right:max(16px,50vw - 264px);bottom:calc(var(--nav-h) + var(--safe-b) + 14px);background:var(--chalk);min-height:52px;color:var(--on-accent);border-radius:999px;align-items:center;gap:8px;padding:0 20px;font-weight:700;display:inline-flex;position:fixed;box-shadow:0 8px 24px #00000073}.fab:active{opacity:.85}.scrim{z-index:50;animation:fade var(--t-med) var(--ease);background:#05070ab8;justify-content:center;align-items:flex-end;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.sheet{overscroll-behavior:contain;background:var(--plate);border:1px solid var(--edge-2);width:100%;max-width:560px;max-height:92dvh;padding:var(--s2) var(--s4) calc(var(--safe-b) + var(--s5));animation:up var(--t-med) var(--ease);border-bottom:0;border-radius:20px 20px 0 0;overflow-y:auto}.sheet .grab{background:var(--edge-2);border-radius:9px;width:40px;height:5px;margin:4px auto 10px}.sheet-head{margin-bottom:var(--s3);background:var(--plate);z-index:1;justify-content:space-between;align-items:center;padding:4px 0;display:flex;position:sticky;top:-8px}@keyframes up{0%{opacity:.4;transform:translateY(24px)}}@keyframes fade{0%{opacity:0}}.field>label,.field>.label{margin-bottom:6px;font-size:14px;font-weight:600;display:block}.field .hint{color:var(--steel);margin-top:4px;font-size:13px}.input,textarea.input{width:100%;min-height:var(--tap);border-radius:var(--r-sm);background:var(--iron);border:1px solid var(--edge-2);padding:10px 12px;font-size:16px}textarea.input{resize:vertical;min-height:88px}.input:focus{border-color:var(--chalk);outline:none}.stepper{background:var(--iron);border:1px solid var(--edge-2);border-radius:var(--r-sm);grid-template-columns:52px 1fr 52px;align-items:center;height:52px;display:grid}.stepper button{height:100%;color:var(--chalk);place-items:center;display:grid}.stepper button:active{background:var(--plate-2)}.stepper .v{text-align:center;font-family:var(--display);font-variant-numeric:tabular-nums;font-size:26px;font-weight:700}.stepper .v small{font-family:var(--body);color:var(--steel);margin-left:3px;font-size:13px;font-weight:500}.wk-top{align-items:center;gap:var(--s2);margin-bottom:var(--s3);display:flex}.dots{gap:4px;display:flex}.dots i{background:var(--edge-2);border-radius:4px;width:18px;height:4px}.dots i.on{background:var(--chalk)}.dots i.done{background:var(--accent)}.ex-name{font-family:var(--display);text-transform:uppercase;font-size:34px;font-weight:700;line-height:1}.setrow{grid-template-columns:34px 1fr 1fr 56px;align-items:center;gap:8px;min-height:64px;display:grid}.setrow+.setrow{border-top:1px solid var(--edge)}.setrow .n{font-family:var(--mono);color:var(--steel);font-size:14px}.val{background:var(--iron);border:1px solid var(--edge-2);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;min-height:52px;line-height:1.1;display:flex}.val b{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:26px;font-weight:700}.val span{color:var(--steel);font-size:12px}.val[aria-expanded=true]{border-color:var(--chalk)}.check{border:2px solid var(--edge-2);width:56px;height:56px;color:var(--steel);border-radius:14px;place-items:center;display:grid}.check[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.setrow.done .val b{color:var(--steel)}.editor{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:8px;padding-bottom:10px;display:grid}.restbar{z-index:40;background:var(--plate-2);border-top:1px solid var(--edge-2);padding:10px var(--s4) calc(10px + var(--safe-b));position:fixed;bottom:0;left:0;right:0}.restbar-in{align-items:center;gap:var(--s3);max-width:560px;margin:0 auto;display:flex}.restbar .num{min-width:96px;font-size:44px}.wk-foot{margin-top:var(--s4);grid-template-columns:1fr 1.6fr;gap:10px;display:grid}.ring{aspect-ratio:1;width:min(72vw,280px);margin:var(--s4) auto;position:relative}.ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring .c{text-align:center;place-items:center;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.ring .c .num{font-size:80px;line-height:1}.round-list{list-style:none}.round-list li{border-top:1px solid var(--edge);grid-template-columns:30px 1fr auto;align-items:center;gap:10px;min-height:56px;display:grid}.round-list li.cur{background:var(--plate-2);border-color:#0000;border-radius:10px;margin:0 -8px;padding:0 8px}.qa{grid-template-columns:1fr 1fr;gap:10px;display:grid}.qa button{border-radius:var(--r);background:var(--plate-2);border:1px solid var(--edge-2);text-align:left;flex-direction:column;justify-content:center;min-height:64px;padding:10px 14px;display:flex}.qa button:active{background:var(--plate-3)}.qa b{font-family:var(--display);font-size:24px;font-weight:700}.qa span{color:var(--steel);font-size:14px}.log li{border-top:1px solid var(--edge);align-items:center;gap:10px;min-height:52px;list-style:none;display:flex}.grid7{grid-template-columns:76px repeat(7,1fr);align-items:center;gap:6px;display:grid}.grid7 .d{text-align:center;font-family:var(--display);color:var(--steel);font-size:13px;font-weight:600}.cell{aspect-ratio:1;background:var(--plate-3);color:var(--on-accent);border-radius:8px;place-items:center;display:grid}.cell.on{background:var(--accent)}.cell.part{background:var(--warn)}.cell.miss{border:2px dashed var(--danger);color:var(--danger);background:0 0}.stat-row{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.stat{background:var(--plate);border:1px solid var(--edge);border-radius:var(--r);padding:12px}.stat .num{font-size:36px;line-height:1;display:block}.stat .k{font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--steel);font-size:13px;font-weight:600}.celebrate{text-align:center;padding:var(--s5) var(--s2)}.celebrate .num{color:var(--primary);font-size:104px;line-height:1;display:block}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:360px){.shell{padding-left:12px;padding-right:12px}.counter .num{font-size:46px}.setrow{grid-template-columns:26px 1fr 1fr 52px;gap:6px}.grid7{grid-template-columns:64px repeat(7,1fr);gap:4px}}@media (orientation:landscape) and (max-height:500px){.ring{width:200px}.fab{bottom:calc(var(--nav-h) + var(--safe-b) + 8px)}}.sheet:focus{outline:none}.pips{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:10px;display:grid}.pip{flex-direction:column;gap:4px;display:flex}.pip i{background:var(--plate-3);border-radius:6px;height:6px;display:block;overflow:hidden}.pip i b{background:var(--primary);border-radius:6px;height:100%;display:block}.pip span{font-family:var(--display);color:var(--steel);letter-spacing:.04em;text-transform:uppercase;font-size:13px;font-weight:600}.pip.hit span{color:var(--chalk)}.btn:hover:not(:disabled),.chip:hover,.qa button:hover{border-color:var(--steel-dim)}
