@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f0edf3;--bg-elev:#f7f5fa;--surface:#fff;--surface-2:#e8e5ee;--surface-3:#dcd8e4;--ink:#0c0a19;--ink-2:#45425a;--ink-3:#737089;--line:#dad6e3;--brand:#355bd7;--brand-strong:#2747b8;--brand-ink:#fff;--brand-soft:#dde4fa;--cream:#eee5cc;--cream-ink:#5c4a17;--pink:#eddde5;--pink-ink:#6d2f4c;--lavender:#cccad9;--lavender-ink:#34315a;--go:#1b9c62;--go-strong:#148553;--go-soft:#d6f2e4;--warn:#b7791f;--warn-soft:#fbeccf;--danger:#d8373f;--danger-soft:#fbe0e1;--phase-prepare-a:#f7b733;--phase-prepare-b:#f08a24;--phase-work-a:#2fbf7a;--phase-work-b:#169a5f;--phase-rest-a:#f5636a;--phase-rest-b:#de3b58;--shadow-sm:0 1px 2px #0c0a190f, 0 1px 1px #0c0a190a;--shadow:0 6px 24px -8px #0c0a192e, 0 2px 6px -2px #0c0a1914;--shadow-lg:0 24px 60px -20px #0c0a1959;--radius-sm:10px;--radius:16px;--radius-lg:24px;--font:"Plus Jakarta Sans Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--header-h:64px;--tabbar-h:68px;--content-w:1160px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b0a14;--bg-elev:#110f1c;--surface:#16141f;--surface-2:#1f1d2b;--surface-3:#2a2839;--ink:#f3f1f8;--ink-2:#bfbccf;--ink-3:#8c89a0;--line:#2a2838;--brand:#5b7cf0;--brand-strong:#7892f4;--brand-ink:#fff;--brand-soft:#1c2448;--cream:#2f2a1d;--cream-ink:#eadcb2;--pink:#34222c;--pink-ink:#f0cddd;--lavender:#25243a;--lavender-ink:#d3d1ee;--go:#2fbf7a;--go-strong:#3fd08a;--go-soft:#123324;--warn:#f0b44c;--warn-soft:#3a2c12;--danger:#f06369;--danger-soft:#3b1619;--shadow-sm:0 1px 2px #0006;--shadow:0 8px 28px -10px #0009;--shadow-lg:0 24px 60px -20px #000c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0b0a14;--bg-elev:#110f1c;--surface:#16141f;--surface-2:#1f1d2b;--surface-3:#2a2839;--ink:#f3f1f8;--ink-2:#bfbccf;--ink-3:#8c89a0;--line:#2a2838;--brand:#5b7cf0;--brand-strong:#7892f4;--brand-ink:#fff;--brand-soft:#1c2448;--cream:#2f2a1d;--cream-ink:#eadcb2;--pink:#34222c;--pink-ink:#f0cddd;--lavender:#25243a;--lavender-ink:#d3d1ee;--go:#2fbf7a;--go-strong:#3fd08a;--go-soft:#123324;--warn:#f0b44c;--warn-soft:#3a2c12;--danger:#f06369;--danger-soft:#3b1619;--shadow-sm:0 1px 2px #0006;--shadow:0 8px 28px -10px #0009;--shadow-lg:0 24px 60px -20px #000c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:16px;line-height:1.55;overflow-x:hidden}img,svg,iframe{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{letter-spacing:-.02em;text-wrap:balance;margin:0;line-height:1.2}h1{font-size:clamp(1.75rem,1.3rem + 2vw,2.6rem);font-weight:800}h2{font-size:clamp(1.3rem,1.1rem + .8vw,1.65rem);font-weight:750}h3{font-size:1.1rem;font-weight:700}p{text-wrap:pretty;margin:0}:focus-visible{outline:3px solid color-mix(in srgb, var(--brand) 60%, transparent);outline-offset:2px;border-radius:6px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tabular{font-variant-numeric:tabular-nums}.muted{color:var(--ink-3)}.small{font-size:.875rem}.xsmall{font-size:.78rem}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-size:.75rem;font-weight:700}.app{flex-direction:column;min-height:100dvh;display:flex}.header{z-index:30;height:var(--header-h);background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(14px);border-bottom:1px solid color-mix(in srgb, var(--line) 70%, transparent);position:sticky;top:0}.header-inner{max-width:var(--content-w);align-items:center;gap:16px;height:100%;margin:0 auto;padding:0 16px;display:flex}.brand{color:var(--ink);letter-spacing:-.02em;align-items:center;gap:10px;font-size:1.15rem;font-weight:800;display:flex}.brand:hover{text-decoration:none}.brand-mark{width:34px;height:26px;color:var(--brand)}.brand-mark svg{width:100%;height:100%}.nav{gap:4px;margin-left:12px;display:flex}.nav a{color:var(--ink-2);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:.95rem;font-weight:600;display:inline-flex}.nav a:hover{background:var(--surface-2);color:var(--ink);text-decoration:none}.nav a.active{background:var(--brand-soft);color:var(--brand)}.header-actions{gap:6px;margin-left:auto;display:flex}.app-main{width:100%;max-width:var(--content-w);flex:1;margin:0 auto;padding:24px 16px 48px}.tabbar{display:none}.footer{max-width:var(--content-w);width:100%;color:var(--ink-3);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:8px 20px;margin:0 auto;padding:24px 16px 40px;font-size:.85rem;display:flex}@media (width<=860px){.nav{display:none}.tabbar{z-index:30;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(16px);border-top:1px solid var(--line);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{color:var(--ink-3);flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.7rem;font-weight:650;display:flex}.tabbar a:hover{text-decoration:none}.tabbar a.active{color:var(--brand)}.app-main{padding-bottom:calc(var(--tabbar-h) + 40px)}.footer{padding-bottom:calc(var(--tabbar-h) + 32px)}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px;display:flex}.page-head p{color:var(--ink-2);max-width:60ch;margin-top:6px}.section{margin-top:36px}.section-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.stack{flex-direction:column;gap:12px;display:flex}.row{align-items:center;gap:10px;display:flex}.wrap{flex-wrap:wrap}.grid{gap:16px;display:grid}.grid-2{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr))}.grid-3{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}.grid-4{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr))}.spacer{flex:1}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card-pad{padding:18px}.card-link{color:inherit;transition:transform .15s,box-shadow .15s,border-color .15s}.card-link:hover{box-shadow:var(--shadow);border-color:color-mix(in srgb, var(--brand) 35%, var(--line));text-decoration:none;transform:translateY(-2px)}.divider{background:var(--line);border:0;height:1px;margin:16px 0}.btn{--btn-bg:var(--surface-2);--btn-ink:var(--ink);background:var(--btn-bg);min-height:44px;color:var(--btn-ink);white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.95rem;font-weight:700;transition:background .15s,transform .1s,box-shadow .15s;display:inline-flex}.btn:hover{background:color-mix(in srgb, var(--btn-bg) 88%, var(--ink));text-decoration:none}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{--btn-bg:var(--brand);--btn-ink:var(--brand-ink);box-shadow:0 6px 18px -8px color-mix(in srgb, var(--brand) 80%, transparent)}.btn-primary:hover{background:var(--brand-strong)}.btn-go{--btn-bg:var(--go);--btn-ink:#fff;box-shadow:0 8px 22px -8px color-mix(in srgb, var(--go) 85%, transparent)}.btn-go:hover{background:var(--go-strong)}.btn-ghost{--btn-bg:transparent;border-color:var(--line)}.btn-ghost:hover{background:var(--surface-2)}.btn-danger{--btn-bg:var(--danger-soft);--btn-ink:var(--danger)}.btn-lg{min-height:54px;padding:14px 28px;font-size:1.05rem}.btn-sm{min-height:34px;padding:6px 12px;font-size:.85rem}.btn-block{width:100%}.icon-btn{width:42px;height:42px;color:var(--ink-2);background:0 0;border:0;border-radius:999px;flex-shrink:0;place-items:center;transition:background .15s;display:inline-grid}.icon-btn:hover{background:var(--surface-2);color:var(--ink)}.icon-btn.sm{width:34px;height:34px}.icon-btn[aria-pressed=true]{background:var(--brand-soft);color:var(--brand)}.chip{background:var(--surface-2);color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.78rem;font-weight:650;line-height:1.4;display:inline-flex}.chip-brand{background:var(--brand-soft);color:var(--brand)}.chip-go{background:var(--go-soft);color:var(--go)}.chip-warn{background:var(--warn-soft);color:var(--warn)}.chip-cat-CARDIO{background:var(--pink);color:var(--pink-ink)}.chip-cat-MOBILITY{background:var(--go-soft);color:var(--go)}.chip-cat-STATIC{background:var(--lavender);color:var(--lavender-ink)}.chip-cat-STRENGTH{background:var(--cream);color:var(--cream-ink)}.seg{flex-wrap:wrap;gap:8px;display:inline-flex}.seg button,.pill{border:1.5px solid var(--line);background:var(--surface);min-height:42px;color:var(--ink-2);border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:.92rem;font-weight:700;transition:all .15s;display:inline-flex}.seg button:hover,.pill:hover{border-color:color-mix(in srgb, var(--brand) 45%, var(--line));color:var(--ink)}.seg button[aria-pressed=true],.pill[aria-pressed=true]{border-color:var(--brand);background:var(--brand);color:var(--brand-ink)}.pill.sm{min-height:34px;padding:4px 12px;font-size:.82rem}.diff{align-items:center;gap:3px;display:inline-flex}.diff i{background:var(--surface-3);border-radius:3px;width:7px;height:14px}.diff i.on{background:var(--brand)}.diff.d4 i.on,.diff.d5 i.on{background:var(--danger)}.diff.d3 i.on{background:var(--warn)}.input{border:1.5px solid var(--line);background:var(--surface);border-radius:12px;outline:none;width:100%;min-height:46px;padding:10px 14px;transition:border-color .15s}.input:focus{border-color:var(--brand)}.search{position:relative}.search svg{color:var(--ink-3);position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search .input{padding-left:42px}select.input{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink-3) 50%), linear-gradient(135deg, var(--ink-3) 50%, transparent 50%);background-position:calc(100% - 18px),calc(100% - 13px);background-repeat:no-repeat;background-size:5px 5px;padding-right:34px}.switch{flex-shrink:0;width:50px;height:30px;position:relative}.switch input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.switch span{background:var(--surface-3);pointer-events:none;border-radius:999px;transition:background .2s;position:absolute;inset:0}.switch span:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.switch input:checked+span{background:var(--brand)}.switch input:checked+span:after{transform:translate(20px)}.switch input:focus-visible+span{outline:3px solid color-mix(in srgb, var(--brand) 60%, transparent);outline-offset:2px}.setting-row{align-items:center;gap:14px;padding:14px 18px;display:flex}.setting-row+.setting-row{border-top:1px solid var(--line)}.setting-row .text{flex:1;min-width:0}.setting-row .text small{color:var(--ink-3);font-size:.82rem;display:block}.stepper{background:var(--surface-2);border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.stepper label{font-size:.92rem;font-weight:700}.stepper .ctrl{align-items:center;gap:6px;display:flex}.stepper input{text-align:center;background:var(--surface);font-variant-numeric:tabular-nums;border:0;border-radius:10px;width:64px;min-height:38px;font-size:1.05rem;font-weight:800}.stepper .unit{color:var(--ink-3);width:16px;font-size:.8rem}.video{aspect-ratio:16/9;border-radius:var(--radius);background:#000;position:relative;overflow:hidden}.video iframe,.video img{object-fit:cover;border:0;width:100%;height:100%;position:absolute;inset:0}.video .play{color:#fff;background:linear-gradient(#0000000d 40%,#00000073);border:0;place-items:center;display:grid;position:absolute;inset:0}.video .play span{background:color-mix(in srgb, var(--brand) 92%, transparent);border-radius:50%;place-items:center;width:68px;height:68px;transition:transform .15s;display:grid;box-shadow:0 10px 30px #00000059}.video .play:hover span{transform:scale(1.07)}.video .caption{color:#fff;text-shadow:0 1px 8px #00000080;pointer-events:none;font-weight:700;position:absolute;bottom:12px;left:14px;right:14px}.thumb{aspect-ratio:16/10;background:var(--surface-2);border-radius:10px;flex-shrink:0;width:88px;position:relative;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%}.sheet-backdrop{z-index:60;background:#08061280;animation:.18s fade-in;position:fixed;inset:0}.sheet{z-index:61;background:var(--bg-elev);width:min(560px,100vw);box-shadow:var(--shadow-lg);flex-direction:column;animation:.22s cubic-bezier(.2,.8,.2,1) slide-in;display:flex;position:fixed;top:0;bottom:0;right:0}.sheet-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:14px 16px 12px 20px;display:flex}.sheet-head h2{font-size:1.15rem}.sheet-body{overscroll-behavior:contain;flex:1;padding:18px 20px 28px;overflow-y:auto}@media (width<=640px){.sheet{border-radius:22px 22px 0 0;width:100%;max-height:92dvh;animation:.24s cubic-bezier(.2,.8,.2,1) slide-up;top:auto;left:0}.sheet:before{content:"";background:var(--surface-3);border-radius:3px;width:44px;height:5px;margin:8px auto 0;display:block}}@keyframes fade-in{0%{opacity:0}}@keyframes slide-in{0%{opacity:0;transform:translate(40px)}}@keyframes slide-up{0%{opacity:0;transform:translateY(60px)}}.toast{z-index:80;background:var(--ink);color:var(--bg);box-shadow:var(--shadow-lg);border-radius:14px;max-width:calc(100vw - 32px);padding:12px 18px;font-weight:650;animation:.2s slide-up;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}@media (width<=860px){.toast{bottom:calc(var(--tabbar-h) + 18px)}}.steps{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.steps li{align-items:flex-start;gap:12px;display:flex}.steps .n{background:var(--brand-soft);width:28px;height:28px;color:var(--brand);border-radius:50%;flex-shrink:0;place-items:center;font-size:.85rem;font-weight:800;display:grid}.steps .note{color:var(--ink-2);font-style:italic}.steps .heading{margin-top:4px;font-weight:750}.fact-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.fact{background:var(--surface-2);border-radius:14px;padding:12px 14px}.fact .label{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:700}.fact .value{margin-top:4px;font-weight:700}.notice{border-radius:14px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:.9rem;display:flex}.notice svg{flex-shrink:0;margin-top:2px}.notice-ok{background:var(--go-soft);color:var(--go)}.notice-warn{background:var(--warn-soft);color:var(--warn)}.notice-info{background:var(--brand-soft);color:var(--brand)}.notice .body{color:var(--ink)}.notice ul{margin:4px 0 0;padding-left:18px}.empty{text-align:center;color:var(--ink-3);padding:48px 16px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.img-fallback{background:linear-gradient(135deg, var(--brand-soft), var(--lavender));width:100%;height:100%;color:color-mix(in srgb, var(--brand) 55%, transparent);place-items:center;display:grid}.img-fallback>span{width:38%;max-width:90px;display:block}.img-fallback svg{width:100%;height:auto}.video .img-fallback{position:absolute;inset:0}.yt-consent{text-align:center;color:#fff;background:linear-gradient(135deg,#1b2c74,#355bd7);place-content:center;gap:12px;padding:16px 20px;font-size:.9rem;line-height:1.45;display:grid;position:absolute;inset:0}.yt-consent p{max-width:46ch;margin:0 auto}.yt-consent a{color:#fff;text-decoration:underline}.yt-consent .btn-ghost{color:#fff;background:0 0;border-color:#ffffff8c}.yt-notice{border-radius:var(--radius);background:var(--brand-soft);flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:16px;padding:12px 16px;font-size:.9rem;display:flex}.yt-notice p{flex:260px;margin:0}.page-loading{min-height:60vh}.rot{transform:rotate(180deg)}svg.rot,.options-toggle svg,.prog-head>svg{transition:transform .2s}@media (width<=640px){.hide-sm{display:none!important}}.back-link{color:var(--ink-2);background:0 0;border:0;align-items:center;gap:6px;padding:6px 0;font-size:.92rem;font-weight:650;display:inline-flex}.back-link:hover{color:var(--brand);text-decoration:none}.tint-blue{--tint:var(--brand-soft);--tint-ink:var(--brand)}.tint-cream{--tint:var(--cream);--tint-ink:var(--cream-ink)}.tint-pink{--tint:var(--pink);--tint-ink:var(--pink-ink)}.tint-lavender{--tint:var(--lavender);--tint-ink:var(--lavender-ink)}.tint-green{--tint:var(--go-soft);--tint-ink:var(--go)}.hero{grid-template-columns:1.1fr 1fr;align-items:end;gap:28px;display:grid}.hero h1{margin-top:6px}.hero-sub{color:var(--ink-2);max-width:48ch;margin-top:10px;font-size:1.05rem}.stat-cards{grid-template-columns:.9fr 1.1fr;gap:12px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:16px}.stat-list{gap:6px;margin:10px 0 0;display:grid}.stat-list>div{align-items:baseline;gap:10px;display:flex}.stat-list dd{color:var(--brand);font-variant-numeric:tabular-nums;order:-1;min-width:1.6ch;margin:0;font-size:1.5rem;font-weight:800}.stat-list dt{color:var(--ink-2);font-weight:600}.streaks{gap:10px;display:grid}.streak strong{font-size:1.6rem;font-weight:800;line-height:1}.flame{color:var(--ink-3)}.flame.on{color:#f08a24}.week{border-top:1px solid var(--line);justify-content:space-between;padding-top:8px;display:flex}.week .day{flex-direction:column;align-items:center;gap:4px;display:flex}.week .dot{background:var(--surface-2);border:1.5px solid var(--line);border-radius:50%;width:14px;height:14px}.week .dot.w{background:var(--brand);border-color:var(--brand)}.week .dot.m{background:var(--go);border-color:var(--go)}.week .dot.w.m{background:linear-gradient(135deg, var(--brand) 50%, var(--go) 50%)}.week .today .dot{outline:2px solid color-mix(in srgb, var(--ink) 25%, transparent);outline-offset:2px}.resume{border-color:color-mix(in srgb, var(--brand) 40%, var(--line));align-items:center;gap:14px;margin-top:24px;padding:14px 16px;display:flex}.resume-icon{background:var(--brand-soft);width:42px;height:42px;color:var(--brand);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.resume-icon.green{background:var(--go-soft);color:var(--go)}.type-grid{grid-template-columns:repeat(5,1fr);gap:14px;display:grid}.type-card{border-radius:var(--radius-lg);background:var(--tint);min-height:210px;color:var(--ink);border:1px solid color-mix(in srgb, var(--tint-ink) 12%, transparent);flex-direction:column;gap:6px;padding:18px;transition:transform .15s,box-shadow .15s;display:flex}.type-card:hover{box-shadow:var(--shadow);text-decoration:none;transform:translateY(-3px)}.type-icon{background:var(--surface);width:54px;height:54px;color:var(--tint-ink);box-shadow:var(--shadow-sm);border-radius:16px;place-items:center;margin-bottom:8px;display:grid}.type-name{letter-spacing:-.01em;font-size:1.12rem;font-weight:800}.type-blurb{color:var(--ink-2);flex:1;font-size:.86rem}.type-go{color:var(--tint-ink);align-items:center;gap:4px;font-size:.9rem;font-weight:750;display:inline-flex}.rec-card{grid-template-columns:minmax(220px,340px) 1fr;display:grid;overflow:hidden}.rec-card.big{grid-template-columns:minmax(240px,460px) 1fr}.rec-thumb{aspect-ratio:16/9;background:#000;position:relative}.rec-thumb img{object-fit:cover;width:100%;height:100%}.rec-play{background:var(--go);color:#fff;border-radius:50%;place-items:center;width:56px;height:56px;margin:auto;display:grid;position:absolute;inset:0;box-shadow:0 8px 24px #00000059}.rec-body{align-self:center;padding:18px 20px}.cov-chips{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.activity-row{color:inherit;align-items:center;gap:14px;padding:12px 16px;display:flex}.activity-row+.activity-row{border-top:1px solid var(--line)}.activity-row.link:hover{background:var(--surface-2);text-decoration:none}@media (width<=1000px){.type-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=860px){.hero{grid-template-columns:1fr}}@media (width<=640px){.type-grid{grid-template-columns:repeat(2,1fr);gap:10px}.type-card{min-height:0;padding:14px}.type-blurb{display:none}.stat-cards,.rec-card,.rec-card.big{grid-template-columns:1fr}}.type-tabs{scrollbar-width:none;gap:8px;margin-bottom:18px;padding-bottom:4px;display:flex;overflow-x:auto}.type-tabs button{border:1.5px solid var(--line);background:var(--surface);color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-weight:700;display:inline-flex}.type-tabs button.active{background:var(--ink);border-color:var(--ink);color:var(--bg)}.builder-grid{grid-template-columns:360px 1fr;align-items:start;gap:24px;display:grid}.options{top:calc(var(--header-h) + 16px);padding:6px 18px 18px;position:sticky}.options-toggle{display:none}.opt-group{border:0;margin:14px 0 0;padding:0}.opt-group+.opt-group{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.opt-group legend{float:left;width:100%;margin-bottom:10px;padding:0;font-weight:800}.opt-group legend+*{clear:both}.equip-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.equip{border:1.5px solid var(--line);background:var(--surface);cursor:pointer;color:var(--ink-2);border-radius:14px;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;transition:all .15s;display:flex;position:relative}.equip input{opacity:0;cursor:pointer;position:absolute;inset:0}.equip:has(input:focus-visible){outline:3px solid color-mix(in srgb, var(--brand) 60%, transparent);outline-offset:2px}.equip.on{border-color:var(--brand);background:var(--brand-soft);color:var(--brand)}.equip-name{color:var(--ink);font-size:.92rem;font-weight:750}.equip-hint{color:var(--ink-3);font-size:.72rem;line-height:1.3}.custom-total{background:var(--brand);color:var(--brand-ink);border-radius:14px;justify-content:space-between;align-items:baseline;padding:10px 14px;display:flex}.custom-total .eyebrow{color:color-mix(in srgb, var(--brand-ink) 75%, transparent)}.custom-total strong{font-size:1.6rem;font-weight:800}.circuit-head{background:var(--ink);color:var(--bg);border:0;align-items:center;gap:18px;padding:14px 18px;display:flex}.circuit-total{border-right:1px solid color-mix(in srgb, var(--bg) 20%, transparent);flex-direction:column;padding-right:18px;display:flex}.circuit-total .eyebrow{color:color-mix(in srgb, var(--bg) 60%, transparent)}.circuit-total strong{font-size:2rem;font-weight:800;line-height:1.1}.circuit-plan{color:color-mix(in srgb, var(--bg) 75%, transparent);flex-wrap:wrap;gap:4px 18px;font-size:.92rem;display:flex}.circuit-plan strong{color:var(--bg)}.ex-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.ex-row{touch-action:manipulation;align-items:center;gap:6px;padding:8px 8px 8px 4px;display:flex;position:relative}.ex-row.flagged{border-color:var(--warn);box-shadow:inset 4px 0 0 var(--warn)}.ex-row.dragging{z-index:5;box-shadow:var(--shadow-lg);opacity:.95}.drag{width:28px;height:44px;color:var(--ink-3);cursor:grab;touch-action:none;background:0 0;border:0;border-radius:8px;flex-shrink:0;place-items:center;display:grid}.drag:active{cursor:grabbing}.ex-num{background:var(--surface-2);border-radius:50%;flex-shrink:0;place-items:center;width:26px;height:26px;font-size:.82rem;font-weight:800;display:grid}.ex-main{text-align:left;background:0 0;border:0;border-radius:12px;flex:1;align-items:center;gap:12px;min-width:0;padding:4px;display:flex}.ex-main:hover{background:var(--surface-2)}.ex-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.ex-name{font-weight:750;line-height:1.3}.ex-meta{color:var(--ink-3);font-size:.8rem}.ex-meta .role{color:var(--brand);font-weight:650}.ex-tags{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.ex-actions{align-items:center;gap:2px;display:flex}.begin-bar{margin-top:18px}.swap-current{background:var(--surface-2);border-radius:14px;align-items:center;gap:12px;padding:12px;display:flex}.swap-opt{text-align:left;align-items:center;gap:12px;width:100%;padding:10px;transition:border-color .15s,background .15s;display:flex}.swap-opt:hover{border-color:var(--brand)}.swap-opt.warn{border-style:dashed}.swap-issue{color:var(--warn);align-items:center;gap:4px;margin-top:4px;font-size:.78rem;font-weight:650;display:inline-flex}@media (width<=960px){.builder-grid{grid-template-columns:1fr}.options{padding:0;position:static}.options-toggle{text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:14px 18px;display:flex}.options-body{padding:0 18px 18px;display:none}.options-body.open{display:block}.opt-group:first-child{margin-top:0}}@media (width<=860px){.begin-bar{bottom:calc(var(--tabbar-h) + 10px + env(safe-area-inset-bottom));z-index:5;position:sticky}}@media (width<=480px){.equip-hint{display:none}.circuit-head{flex-direction:column;align-items:flex-start;gap:8px}.circuit-total{border-right:0;padding-right:0}.ex-row .thumb{width:64px}}.player{--phase-a:var(--phase-work-a);--phase-b:var(--phase-work-b);color:#fff;background:linear-gradient(160deg, var(--phase-a), var(--phase-b));flex-direction:column;min-height:100dvh;transition:background .4s;display:flex}.player.phase-prepare{--phase-a:var(--phase-prepare-a);--phase-b:var(--phase-prepare-b)}.player.phase-rest{--phase-a:var(--phase-rest-a);--phase-b:var(--phase-rest-b)}.player.paused{--phase-a:#3a3852;--phase-b:#1c1a2c}.player-top{padding:calc(10px + env(safe-area-inset-top)) 12px 6px;justify-content:space-between;align-items:center;display:flex}.player-title{letter-spacing:.02em;font-weight:750}.p-icon{color:#fff;background:#ffffff24;border:0;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.p-icon:hover{background:#ffffff3d}.player-body{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:28px;width:100%;max-width:1200px;margin:0 auto;padding:10px 20px 28px;display:grid}.player-timer{flex-direction:column;align-items:center;gap:18px;display:flex}.dots-panel{gap:8px;width:100%;max-width:440px;display:grid}.dots-row{border:1px solid #ffffff40;border-radius:14px;justify-content:space-between;align-items:center;padding:10px 16px;font-weight:700;display:flex}.dots{gap:6px;display:flex}.dots i{background:#0000002e;border-radius:50%;width:12px;height:12px}.dots i.done{background:#ffffff8c}.dots i.on{background:#fff;box-shadow:0 0 0 3px #ffffff4d}.ring-wrap{aspect-ratio:1;width:min(340px,72vw);position:relative}.ring{width:100%;height:100%;transform:rotate(-90deg)}.ring-track{fill:none;stroke:#00000024;stroke-width:4px}.ring-bar{fill:none;stroke:#fff;stroke-width:4px;stroke-linecap:round;transition:stroke-dashoffset .12s linear}.ring-center{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ring-phase{letter-spacing:.12em;text-transform:uppercase;opacity:.9;font-size:.95rem;font-weight:800}.ring-time{letter-spacing:-.03em;font-size:clamp(3.6rem,12vw,5.6rem);font-weight:800;line-height:1}.ring-total{opacity:.9;align-items:center;gap:6px;margin-top:8px;font-weight:700;display:flex}.player-name{text-align:center;min-height:72px}.player-name h1{font-size:clamp(1.5rem,1.1rem + 2vw,2.3rem)}.player-name p{opacity:.88;margin-top:6px;font-weight:600}.controls{align-items:center;gap:28px;display:flex}.ctl{color:#fff;background:#ffffff29;border:0;border-radius:50%;place-items:center;width:60px;height:60px;display:grid}.ctl:hover{background:#ffffff42}.ctl.main{width:92px;height:92px;color:var(--phase-b);background:#fff;box-shadow:0 12px 30px #00000040}.kbd-hint{opacity:.7;font-size:.78rem}.media-card{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000029;padding:14px}.media-label{letter-spacing:.1em;text-transform:uppercase;opacity:.85;margin:0 0 8px 4px;font-size:.75rem;font-weight:800}.media-name{justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding:0 4px;display:flex}.how-btn{color:#fff;background:#ffffff2e;border:0;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:.85rem;font-weight:700;display:inline-flex}.how{color:#0c0a19;background:#fffffff2;border-radius:14px;max-height:40vh;margin-top:12px;padding:14px;overflow:auto}.pause-sheet{z-index:50;background:#08061273;place-items:center;padding:20px;animation:.15s fade-in;display:grid;position:fixed;inset:0}.pause-card{background:var(--bg-elev);width:min(400px,100%);color:var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);text-align:center;flex-direction:column;gap:10px;padding:24px;display:flex}.pause-card p{margin-bottom:8px}@media (width<=860px){.player-body{grid-template-columns:1fr;gap:18px;padding-top:0}.player-media{width:100%;max-width:560px;margin:0 auto}.ring-wrap{width:min(280px,66vw)}}.complete{max-width:760px;margin:0 auto}.complete-hero{text-align:center;border-radius:var(--radius-lg);background:linear-gradient(150deg, var(--brand), #1b2c74);color:#fff;flex-direction:column;align-items:center;gap:10px;padding:36px 20px 28px;display:flex}.complete-hero .eyebrow{color:#fffc}.complete-stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px;display:grid}.cstat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:4px;padding:14px 16px;display:flex}.cstat strong{font-size:1.7rem;font-weight:800;line-height:1.1}.cstat small{color:var(--ink-3);font-size:.9rem;font-weight:650}.name-card{flex-direction:column;gap:8px;margin-top:16px;display:flex}.complete-actions{gap:8px;margin-top:18px}@media (width<=640px){.complete-stats{grid-template-columns:repeat(2,1fr)}}.program-card{flex-direction:column;display:flex;overflow:hidden}.program-thumb{aspect-ratio:16/8;background:#000;position:relative}.program-thumb img,.program-thumb .img-fallback{object-fit:cover;opacity:.92;width:100%;height:100%}.program-num{background:var(--brand);color:#fff;width:44px;height:44px;box-shadow:var(--shadow);border:3px solid var(--surface);border-radius:14px;place-items:center;font-size:1.2rem;font-weight:800;display:grid;position:absolute;bottom:-18px;left:12px}.program-done{background:var(--go);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:10px;right:10px}.program-card .card-pad{padding-top:26px!important}.coverage-bar{grid-template-columns:repeat(14,1fr);gap:3px;margin-top:12px;display:grid}.coverage-bar i{background:var(--surface-3);border-radius:3px;height:6px}.coverage-bar i.on{background:var(--go)}.program-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.program-main{top:calc(var(--header-h) + 16px);position:sticky}.program-video .yt-host,.program-video .yt-host iframe,.program-video .yt-host>div{width:100%;height:100%;position:absolute;inset:0}.program-video .yt-host img{object-fit:cover;opacity:.6;width:100%;height:100%}.program-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.prog-head{text-align:left;border-radius:var(--radius);background:0 0;border:0;align-items:center;gap:12px;width:100%;padding:12px 14px;display:flex}.prog-head:hover{background:var(--surface-2)}.prog-num{background:var(--brand-soft);width:32px;height:32px;color:var(--brand);border-radius:50%;flex-shrink:0;place-items:center;font-weight:800;display:grid}.prog-item.open{border-color:color-mix(in srgb, var(--brand) 40%, var(--line))}.prog-body{padding:4px 16px 18px}@media (width<=960px){.program-grid{grid-template-columns:1fr}.program-main{position:static}}.lib-tabs{background:var(--surface-2);border-radius:999px;gap:4px;margin-bottom:14px;padding:4px;display:inline-flex}.lib-tabs button{color:var(--ink-2);background:0 0;border:0;border-radius:999px;padding:8px 18px;font-weight:700}.lib-tabs button[aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.lib-tabs .count{color:var(--ink-3);margin-left:4px;font-size:.78rem}.lib-toolbar{gap:10px;display:flex}.filters{flex-direction:column;gap:14px;margin-top:12px;display:flex}.filter-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.filter-label{width:96px;font-size:.88rem;font-weight:750}.lib-card{flex-direction:column;display:flex;overflow:hidden}.lib-thumb{aspect-ratio:16/9;background:var(--surface-2)}.lib-thumb img{object-fit:cover;width:100%;height:100%}.lib-body{padding:12px 14px 14px}.lib-body h3{font-size:1rem}.detail-grid{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:24px;display:grid}.detail-page.narrow{max-width:820px}.detail-aside{top:calc(var(--header-h) + 16px);position:sticky}@media (width<=900px){.detail-grid{grid-template-columns:1fr}.detail-aside{position:static}}.about-hero{background:var(--brand);color:#fff;border:0;align-items:center;gap:20px;padding:24px;display:flex}.about-hero .eyebrow{color:#ffffffbf}.about-mark{color:#fff;flex-shrink:0;width:84px;height:64px}.about-mark svg{width:100%;height:100%}.prose{flex-direction:column;align-items:flex-start;gap:14px;max-width:72ch;display:flex}.prose p{color:var(--ink-2);font-size:1.05rem}.prose h2{margin-top:10px;font-size:1.2rem}.prose>.card{align-self:stretch}.prose code{background:var(--brand-soft);border-radius:6px;padding:1px 5px;font-size:.9em}.tip-card ul,.rule-card ul{color:var(--ink-2);flex-direction:column;gap:8px;margin:10px 0 0;padding-left:18px;display:flex}.tip-card h3,.rule-card h3{color:var(--ink)}.guide{max-width:72ch;color:var(--ink-2);flex-direction:column;gap:10px;margin:0;padding-left:22px;display:flex}.guide strong{color:var(--ink)}.settings-h{padding:16px 18px 4px;font-size:1.05rem}
