@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2");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}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2");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}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2");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}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2");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}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2");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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2)format("woff2");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}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-600-normal-C8RAYTDA.woff2)format("woff2");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}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2)format("woff2");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}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-latin-600-normal-DjKNqYRj.woff2)format("woff2");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}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2)format("woff2");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}.pwa-bar{left:50%;top:calc(var(--topbar-h) + 12px + env(safe-area-inset-top,0px));z-index:110;width:max-content;max-width:calc(100vw - 32px);font-size:calc((13.5px) * var(--fs,1));color:var(--text-2);background:var(--surface-strong);border:1px solid var(--border-strong);box-shadow:var(--shadow);animation:pwa-bar-in .35s var(--ease) both;border-radius:14px;align-items:center;gap:10px;padding:8px 8px 8px 14px;line-height:1.35;display:flex;position:fixed;transform:translate(-50%)}.pwa-bar>svg{width:18px;height:18px;color:var(--accent-2);flex:none}.pwa-bar__text{min-width:0}.pwa-bar b{color:var(--text);font-weight:600}.pwa-bar__actions{flex:none;align-items:center;gap:4px;display:flex}.pwa-bar .btn--small{height:44px;padding:0 16px}.pwa-bar .icon-btn{background:0 0;border-color:#0000;width:44px;height:44px}.pwa-bar .icon-btn svg{width:16px;height:16px}.pwa-bar.is-leaving{animation:pwa-bar-out .25s var(--ease) both}@keyframes pwa-bar-in{0%{opacity:0;transform:translate(-50%,-10px)}}@keyframes pwa-bar-out{to{opacity:0;transform:translate(-50%,-10px)}}@media (width<=520px){.pwa-bar{flex-wrap:wrap;width:calc(100vw - 32px);padding:10px 8px 8px 14px}.pwa-bar__text{flex:calc(100% - 40px)}.pwa-bar__actions{margin-left:auto}}@media (prefers-reduced-motion:reduce){.pwa-bar,.pwa-bar.is-leaving{animation:none}}:root{--fs-pick:1;--fs-site:min(1.5, calc(var(--fs-user,1) * var(--fs-pick)));--fs:var(--fs-site)}:root[data-text="2"]{--fs-pick:1.125}:root[data-text="3"]{--fs-pick:1.25}.topbar{--fs:1}.topbar .menu{--fs:var(--fs-site)}:root[data-text-large] .btn{white-space:normal;text-align:center;height:auto;min-height:48px;padding-top:6px;padding-bottom:6px}:root[data-text-large] .btn--small{min-height:36px;padding-top:5px;padding-bottom:5px}:root[data-text-large] .btn--power{min-height:56px}:root[data-text-large] .seg--text .seg__btn,:root[data-text-large] .wseg button,:root[data-text-large] .teaser-btn,:root[data-text-large] .academy__cta{height:auto;min-height:32px;padding-top:4px;padding-bottom:4px}:root[data-text-large] .academy__cta{min-height:46px}@media (pointer:coarse){:root[data-text-large] .btn--small,:root[data-text-large] .wseg button,:root[data-text-large] .teaser-btn{min-height:44px}}:root[data-text-large] .btn--session b,:root[data-text-large] .learn-bar__due,:root[data-text-large] .pcar-bar__due,:root[data-text-large] .train-find__count{height:auto;min-height:18px;line-height:1.2}@media (width>=821px){:root[data-text-large] .intro{scrollbar-width:none;justify-content:safe center;overflow-y:auto}}:root[data-text-large] .part-item__name,:root[data-text-large] .sys-item__name,:root[data-text-large] .menu__label,:root[data-text-large] .menu__desc{overflow-wrap:anywhere}.disp{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.disp__legend{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);align-items:center;gap:8px;margin-bottom:2px;padding:0;font-weight:600;display:flex}.disp__legend svg{width:15px;height:15px}.disp__row{border:1px solid var(--border);background:#ffffff08;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:10px 12px;display:flex}.disp__label{min-width:0;font-size:calc((13.5px) * var(--fs,1));color:var(--text);align-items:center;gap:8px;font-weight:600;display:inline-flex}.disp__label svg{width:17px;height:17px;color:var(--accent-2);flex:none}.disp-seg{border:1px solid var(--border);background:#ffffff0a;border-radius:12px;flex-wrap:wrap;gap:2px;min-width:0;padding:3px;display:flex}.disp-seg__opt{flex:auto;display:inline-flex;position:relative}.disp-seg__opt input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.disp-seg__opt span{width:100%;min-height:36px;font-size:calc((13px) * var(--fs,1));color:var(--text-3);text-align:center;border-radius:9px;justify-content:center;align-items:center;padding:4px 12px;font-weight:600;transition:color .2s,background .2s;display:inline-flex}.disp-seg__opt:hover span{color:var(--text)}.disp-seg__opt input:checked+span{color:#e2deff;box-shadow:inset 0 0 0 1px var(--accent-line);background:#8e80ff38}.disp-seg__opt input:focus-visible+span{outline:2px solid var(--accent-2);outline-offset:1px}@media (pointer:coarse){.disp-seg__opt span{min-height:44px}}@media (width<=420px){.disp__row{flex-direction:column;align-items:stretch}.disp-seg{width:100%}}.topbar .menu{max-height:calc(100dvh - var(--topbar-h) - 16px);overscroll-behavior:contain;scrollbar-width:thin;overflow-y:auto}:root{--bg:#07090d;--surface:#0d1017eb;--surface-strong:#0f131cf0;--surface-raised:#ffffff09;--surface-hover:#ffffff0f;--border:#ffffff13;--border-strong:#ffffff24;--text:#e9ecf3;--text-2:#a4acbe;--text-3:#858da2;--accent:#8e80ff;--accent-2:#52d3ff;--accent-soft:#8e80ff24;--accent-line:#8e80ff73;--grad:linear-gradient(120deg, #a89dff 0%, #7f8cff 45%, #52d3ff 100%);--ok:#45d99e;--ok-soft:#45d99e1f;--err:#ff6f81;--err-soft:#ff6f811f;--warn:#ffc56b;--warn-soft:#ffc56b1f;--radius-lg:20px;--radius:14px;--radius-sm:10px;--ease:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--shadow:0 24px 60px -24px #000000bf, 0 2px 10px -4px #0006;--blur:none;--font:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--display:"Space Grotesk", "Inter", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, "Cascadia Code", monospace;--topbar-h:64px;--gutter:20px}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);font-size:calc((15px) * var(--fs,1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;margin:0;line-height:1.5;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}[hidden]{display:none!important}svg{display:block}[data-icon]{flex:none;justify-content:center;align-items:center;display:inline-flex}[data-icon] svg{width:1.15em;height:1.15em}kbd{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));border:1px solid var(--border-strong);color:var(--text);background:#ffffff0a;border-radius:6px;padding:2px 6px}.stage{touch-action:none;cursor:grab;outline:none;width:100vw;height:100dvh;display:block;position:fixed;inset:0}.stage:active{cursor:grabbing}body.is-hovering-part .stage{cursor:pointer}.vignette{pointer-events:none;background:radial-gradient(120% 90% at 50% 45%,#0000 55%,#0304078c 100%),linear-gradient(#03040773,#0000 18%);position:fixed;inset:0}.loader{z-index:100;background:radial-gradient(60% 50% at 50% 50%, #10131c 0%, var(--bg) 70%);transition:opacity .9s var(--ease), visibility .9s;place-content:center;justify-items:center;gap:14px;display:grid;position:fixed;inset:0}.loader.is-done{opacity:0;visibility:hidden}.loader__mark svg{width:52px;height:52px;animation:pulse 2.4s var(--ease-in-out) infinite}.loader__name{font-family:var(--display);font-size:calc((22px) * var(--fs,1));letter-spacing:.02em;color:var(--text-2)}.loader__name b{color:var(--text);font-weight:600}.loader__bar{background:#ffffff12;border-radius:3px;width:180px;height:3px;overflow:hidden}.loader__bar span{background:var(--grad);border-radius:inherit;width:0%;height:100%;transition:width .4s var(--ease);display:block}.loader__hint{font-size:calc((12px) * var(--fs,1));color:var(--text-3);font-family:var(--mono)}@keyframes pulse{0%,to{opacity:.65;transform:scale(.96)}50%{opacity:1;transform:scale(1)}}.topbar{z-index:20;height:var(--topbar-h);padding:0 var(--gutter);pointer-events:none;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:fixed;top:0;left:0;right:0}.topbar>*{pointer-events:auto}.brand{transition:background .3s var(--ease);border-radius:12px;justify-self:start;align-items:center;gap:10px;padding:6px 10px 6px 6px;display:inline-flex}.brand:hover{background:var(--surface-hover)}.brand__mark svg{width:30px;height:30px}.brand__name{font-family:var(--display);font-size:calc((17px) * var(--fs,1));color:var(--text-2);letter-spacing:.01em}.brand__name b{color:var(--text);font-weight:600}.modes{background:var(--surface);border:1px solid var(--border);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow);border-radius:999px;padding:4px;display:inline-flex;position:relative}.modes__indicator{width:var(--ind-w,0px);transform:translateX(var(--ind-x,0px));border:1px solid var(--accent-line);opacity:var(--ind-o,0);transition:transform .55s var(--ease), width .55s var(--ease), opacity .3s;background:linear-gradient(#8e80ff47,#8e80ff24);border-radius:999px;position:absolute;top:4px;bottom:4px;left:0;box-shadow:0 0 24px -6px #8e80ff99}.modes__btn{font-size:calc((14px) * var(--fs,1));color:var(--text-2);transition:color .3s var(--ease);border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-weight:500;display:inline-flex;position:relative}.modes__btn:hover,.modes__btn[aria-selected=true]{color:var(--text)}.nav{align-items:center;gap:8px;display:flex}.nav__short{display:none}.apps .modes__btn [data-icon] svg{width:17px;height:17px}.topbar__actions{justify-self:end;gap:8px;display:flex}.icon-btn{width:40px;height:40px;color:var(--text-2);background:var(--surface);border:1px solid var(--border);-webkit-backdrop-filter:var(--blur);transition:color .25s var(--ease), background .25s var(--ease), border-color .25s var(--ease), transform .25s var(--ease);border-radius:12px;place-items:center;display:inline-grid}.icon-btn:hover{color:var(--text);border-color:var(--border-strong);background:#1e2330d9}.icon-btn:active{transform:scale(.94)}.icon-btn[aria-pressed=true]{color:#d9d4ff;border-color:var(--accent-line);background:#8e80ff29}.dock .icon-btn{-webkit-backdrop-filter:none;background:0 0;border-color:#0000}.dock .icon-btn:hover{background:var(--surface-hover)}.dock .icon-btn[aria-pressed=true]{border-color:var(--accent-line);background:#8e80ff29}.btn{height:48px;font-weight:600;font-size:calc((15px) * var(--fs,1));letter-spacing:.005em;white-space:nowrap;transition:transform .3s var(--ease), box-shadow .3s var(--ease), background .3s var(--ease), border-color .3s var(--ease), color .3s var(--ease);border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:0 22px;display:inline-flex}.btn:active{transform:scale(.97)}.btn--primary{color:#0b0c14;background:linear-gradient(120deg,#b3aaff 0%,#8f9bff 50%,#6cdcff 100%);box-shadow:0 10px 30px -10px #808cffb3,inset 0 1px #ffffff80}.btn--primary:hover{transform:translateY(-1px);box-shadow:0 16px 40px -12px #808cffd9,inset 0 1px #ffffff80}.btn--ghost{color:var(--text);border:1px solid var(--border-strong);-webkit-backdrop-filter:var(--blur);background:#161a23eb}.btn--ghost:hover{background:#ffffff14;border-color:#ffffff38}.btn--small{height:36px;font-size:calc((13.5px) * var(--fs,1));border-radius:10px;padding:0 14px}.btn--ok{color:#06140e;background:linear-gradient(120deg,#6ff0bd,#45d99e);box-shadow:0 10px 28px -12px #45d99ecc}.btn--power{height:56px;font-size:calc((16px) * var(--fs,1));color:#0b0c14;animation:glow 2.2s var(--ease-in-out) infinite;background:linear-gradient(120deg,#b3aaff 0%,#8f9bff 50%,#6cdcff 100%);border-radius:999px;padding:0 28px;box-shadow:0 0 0 6px #8e80ff1f,0 18px 50px -12px #808cffe6}@keyframes glow{0%,to{box-shadow:0 0 0 6px #8e80ff1f,0 18px 50px -12px #808cffe6}50%{box-shadow:0 0 0 12px #8e80ff0d,0 18px 60px -8px #808cff}}.link-btn{font-size:calc((13px) * var(--fs,1));color:var(--text-2);border-radius:8px;align-items:center;gap:6px;padding:6px 8px;font-weight:500;transition:color .2s,background .2s;display:inline-flex}.link-btn:hover{color:var(--text);background:var(--surface-hover)}.link-btn:disabled{opacity:.35;pointer-events:none}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow)}.panel__head{justify-content:space-between;align-items:center;padding:16px 18px 10px;display:flex}.panel__count{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:var(--text-3)}.kicker{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-weight:600}.screen{z-index:10;pointer-events:none;position:fixed;inset:0}.screen>*{pointer-events:auto}.intro{z-index:10;width:min(640px,100%);padding:var(--topbar-h) clamp(24px, 6vw, 96px) 40px;pointer-events:none;background:linear-gradient(90deg,#07090dd1 0%,#07090d66 65%,#0000 100%);flex-direction:column;justify-content:center;display:flex;position:fixed;inset:0 auto 0 0}.intro__content{pointer-events:auto}.intro>*{transition:opacity .8s var(--ease), transform .8s var(--ease)}body:not([data-mode=intro]) .intro{pointer-events:none}body:not([data-mode=intro]) .intro__content{opacity:0;pointer-events:none;transform:translate(-30px)}.eyebrow{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);border:1px solid var(--border);background:#ffffff0a;border-radius:999px;align-items:center;gap:10px;margin:0 0 22px;padding:6px 12px 6px 10px;font-weight:500;display:inline-flex}.eyebrow__dot{background:var(--accent-2);width:7px;height:7px;box-shadow:0 0 12px var(--accent-2);border-radius:50%}.intro__title{font-family:var(--display);font-weight:600;font-size:calc((clamp(40px, 5.4vw, 72px)) * var(--fs,1));letter-spacing:-.025em;margin:0;line-height:1.02}.grad{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text}.intro__lead{max-width:470px;font-size:calc((17px) * var(--fs,1));color:var(--text-2);margin:22px 0 34px;line-height:1.6}.intro__cta{flex-wrap:wrap;gap:12px;display:flex}.intro__stats{border-top:1px solid var(--border);gap:34px;max-width:470px;margin:48px 0 0;padding:22px 0 0;list-style:none;display:flex}.intro__stats li{flex-direction:column;gap:2px;display:flex}.intro__stats b{font-family:var(--display);font-size:calc((24px) * var(--fs,1));font-weight:600}.intro__stats span{font-size:calc((12.5px) * var(--fs,1));color:var(--text-3)}.intro__content>*{animation:rise 1s var(--ease) both}.intro__content>:nth-child(2){animation-delay:60ms}.intro__content>:nth-child(3){animation-delay:.12s}.intro__content>:nth-child(4){animation-delay:.18s}.intro__content>:nth-child(5){animation-delay:.24s}body[data-mode=loading] .intro__content>*{animation-play-state:paused}@keyframes rise{0%{opacity:0;transform:translateY(18px)}}.parts{top:calc(var(--topbar-h) + 12px);left:var(--gutter);width:252px;max-height:calc(100dvh - var(--topbar-h) - 120px);animation:slide-left .7s var(--ease) both;flex-direction:column;display:flex;position:fixed;overflow:hidden}.parts__list{scrollbar-width:thin;scrollbar-color:#ffffff1a transparent;margin:0;padding:0 8px 10px;list-style:none;overflow-y:auto}.part-item{text-align:left;width:100%;transition:background .25s var(--ease), border-color .25s var(--ease);border:1px solid #0000;border-radius:12px;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;padding:8px 10px;display:grid}.part-item:hover,.part-item.is-hover{background:var(--surface-hover)}.part-item.is-active{background:var(--accent-soft);border-color:var(--accent-line)}.part-item__icon{width:34px;height:34px;color:var(--text-2);border:1px solid var(--border);background:#ffffff0a;border-radius:10px;place-items:center;transition:color .25s;display:grid}.part-item__icon svg{width:18px;height:18px}.part-item.is-active .part-item__icon{color:#d6d0ff;border-color:var(--accent-line)}.part-item__text{flex-direction:column;min-width:0;display:flex}.part-item__name{font-size:calc((14px) * var(--fs,1));white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.part-item__tag{font-size:calc((12px) * var(--fs,1));color:var(--text-3)}.part-item__num{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:var(--text-3)}@keyframes slide-left{0%{opacity:0;transform:translate(-24px)}}@keyframes slide-up{0%{opacity:0;transform:translateY(24px)}}.info{top:calc(var(--topbar-h) + 12px);right:var(--gutter);width:384px;max-height:calc(100dvh - var(--topbar-h) - 120px);scrollbar-width:thin;scrollbar-color:#ffffff1a transparent;opacity:0;pointer-events:none;transition:opacity .5s var(--ease), transform .6s var(--ease);position:fixed;overflow-y:auto;transform:translate(28px)}.info.is-open{opacity:1;pointer-events:auto;transform:none}.info__inner{padding:20px 22px 22px}.info__inner.is-swapping{animation:fade-swap .45s var(--ease)}@keyframes fade-swap{0%{opacity:0;transform:translateY(8px)}}.info__top{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.chip{font-size:calc((12px) * var(--fs,1));color:#d3ceff;background:var(--accent-soft);border:1px solid #8e80ff47;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-weight:500;display:inline-flex}.chip--muted{color:var(--text-2);border-color:var(--border);background:#ffffff0a}.info__head{align-items:center;gap:14px;display:flex}.info__icon{color:#d8d3ff;border:1px solid var(--accent-line);background:linear-gradient(145deg,#8e80ff38,#52d3ff14);border-radius:14px;place-items:center;width:50px;height:50px;display:grid}.info__icon svg{width:24px;height:24px}.info__title{font-family:var(--display);font-size:calc((24px) * var(--fs,1));letter-spacing:-.01em;margin:0;font-weight:600;line-height:1.15}.info__abbr{font-family:var(--mono);font-size:calc((12px) * var(--fs,1));color:var(--text-3);margin-left:6px;font-weight:500}.info__tagline{font-size:calc((13.5px) * var(--fs,1));color:var(--accent-2);margin:2px 0 0;font-weight:500}.info__desc{color:var(--text-2);font-size:calc((14.5px) * var(--fs,1));margin:16px 0 0;line-height:1.62}.info__section{margin-top:20px}.info__section h3{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin:0 0 10px;font-weight:600}.role-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.role-list li{font-size:calc((14px) * var(--fs,1));color:var(--text);grid-template-columns:18px 1fr;gap:10px;line-height:1.45;display:grid}.role-list li:before{content:"";background:var(--accent);width:6px;height:6px;box-shadow:0 0 10px var(--accent);border-radius:50%;margin:7px 0 0 5px}.location{border-radius:var(--radius);background:var(--surface-raised);border:1px solid var(--border);font-size:calc((13.5px) * var(--fs,1));color:var(--text-2);grid-template-columns:30px 1fr;gap:10px;padding:12px 14px;line-height:1.5;display:grid}.location [data-icon]{width:30px;height:30px;color:var(--accent-2);background:#52d3ff14;border-radius:9px}.specs{grid-template-columns:1fr 1fr;gap:8px;display:grid}.spec{background:var(--surface-raised);border:1px solid var(--border);border-radius:12px;padding:10px 12px}.spec dt{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);margin-bottom:2px}.spec dd{font-size:calc((13.5px) * var(--fs,1));color:var(--text);margin:0;font-weight:500}.meter{align-items:center;gap:12px;display:flex}.meter__bars{gap:4px;display:flex}.meter__bars i{background:#ffffff14;border-radius:4px;width:26px;height:6px}.meter__bars i.on{background:var(--grad);box-shadow:0 0 10px -2px #808cffcc}.meter__label{font-size:calc((13px) * var(--fs,1));color:var(--text-2)}.tip{border-radius:var(--radius);background:var(--warn-soft);font-size:calc((13.5px) * var(--fs,1));color:#f1e3c8;border:1px solid #ffc56b38;grid-template-columns:22px 1fr;gap:10px;padding:12px 14px;line-height:1.5;display:grid}.tip [data-icon]{color:var(--warn);margin-top:1px}.fact{font-size:calc((13.5px) * var(--fs,1));color:var(--text-2);border-left:2px solid var(--accent-line);padding-left:14px;line-height:1.55}.info__nav{border-top:1px solid var(--border);justify-content:space-between;margin-top:22px;padding-top:14px;display:flex}.dock{animation:dock-in .8s var(--ease) both;border-radius:18px;align-items:center;gap:6px;padding:8px 8px 8px 18px;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%)}@keyframes dock-in{0%{opacity:0;transform:translate(-50%,20px)}}.explode{align-items:center;gap:12px;padding-right:6px;display:flex}.explode__label{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);min-width:60px;font-weight:500}.explode__label:first-child{text-align:right}.dock__sep{background:var(--border-strong);width:1px;height:24px;margin:0 6px}input[type=range]{appearance:none;cursor:pointer;--p:0%;background:0 0;width:200px;height:24px}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, #9d92ff 0%, #6cd6ff var(--p), #ffffff1a var(--p));border-radius:4px;height:4px}input[type=range]::-moz-range-track{background:linear-gradient(90deg, #9d92ff 0%, #6cd6ff var(--p), #ffffff1a var(--p));border-radius:4px;height:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;transition:transform .2s var(--ease);background:#f3f4ff;border:3px solid #8e80ff;border-radius:50%;margin-top:-7px;box-shadow:0 0 0 4px #8e80ff2e,0 4px 10px #00000080}input[type=range]::-moz-range-thumb{background:#f3f4ff;border:3px solid #8e80ff;border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 4px #8e80ff2e}input[type=range]:active::-webkit-slider-thumb{transform:scale(1.15)}.gesture-hint{font-size:calc((12.5px) * var(--fs,1));color:var(--text-3);white-space:nowrap;transition:opacity 1s var(--ease);gap:18px;margin:0;display:flex;position:fixed;bottom:92px;left:50%;transform:translate(-50%);pointer-events:none!important}.gesture-hint span{align-items:center;gap:6px;display:inline-flex}.gesture-hint.is-hidden{opacity:0}[tabindex="-1"]:focus{outline:none}.hotspots{z-index:9;pointer-events:none;position:fixed;inset:0;overflow:hidden}.hotspot{pointer-events:auto;opacity:0;transition:opacity .4s var(--ease);will-change:transform;align-items:center;gap:8px;display:flex;position:absolute;top:0;left:0}.hotspots.is-visible .hotspot.is-onscreen{opacity:1}.hotspot:not(.is-onscreen),.hotspots:not(.is-visible) .hotspot{pointer-events:none}.hotspot__dot{width:24px;height:24px;font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));color:#fff;transition:transform .3s var(--ease), background .3s, border-color .3s;background:#0e1018d1;border:1.5px solid #beb6ffd9;border-radius:50%;place-items:center;margin:-12px 0 0 -12px;font-weight:600;display:grid;position:relative;box-shadow:0 0 0 4px #8e80ff29,0 4px 14px #00000080}.hotspot__dot:after{content:"";animation:ring 2.8s var(--ease) infinite;border:1px solid #8e80ff80;border-radius:50%;position:absolute;inset:-6px}@keyframes ring{0%{opacity:.9;transform:scale(.7)}70%,to{opacity:0;transform:scale(1.45)}}.hotspot__label{font-size:calc((12px) * var(--fs,1));white-space:nowrap;color:var(--text);border:1px solid var(--border);opacity:0;transition:opacity .3s var(--ease), transform .3s var(--ease);pointer-events:none;background:#0c0f16e6;border-radius:8px;margin-top:-12px;padding:4px 10px;font-weight:500;transform:translate(-4px)}.hotspots.show-labels .hotspot__label,.hotspot:hover .hotspot__label,.hotspot.is-hover .hotspot__label{opacity:1;transform:none}.hotspot:hover .hotspot__dot,.hotspot.is-hover .hotspot__dot{background:#8e80ff;border-color:#fff;transform:scale(1.15)}.hotspot.is-active .hotspot__dot{background:#8e80ff;border-color:#fff}.hotspot.is-crowded .hotspot__label{opacity:0!important}.hotspot.is-flipped .hotspot__label{position:absolute;top:0;right:calc(100% + 20px);transform:translate(4px)}.hotspots.show-labels .hotspot.is-flipped .hotspot__label,.hotspot.is-flipped:hover .hotspot__label,.hotspot.is-flipped.is-hover .hotspot__label{transform:none}.hotspot:hover,.hotspot.is-hover,.hotspot.is-active{z-index:2}.hotspot.is-crowded:hover .hotspot__label,.hotspot.is-crowded.is-hover .hotspot__label{transform:none;opacity:1!important}.hotspots.has-selection .hotspot:not(.is-active){opacity:.25!important}.hotspots.has-selection .hotspot:not(.is-active) .hotspot__label{opacity:0}.tooltip{z-index:30;font-size:calc((13px) * var(--fs,1));pointer-events:none;background:var(--surface-strong);border:1px solid var(--border-strong);box-shadow:var(--shadow);opacity:0;white-space:nowrap;border-radius:10px;padding:8px 12px;transition:opacity .2s;position:fixed;top:0;left:0}.tooltip.is-visible{opacity:1}.tooltip b{font-weight:600}.tooltip small{color:var(--text-3);font-size:calc((11.5px) * var(--fs,1));display:block}.step{top:calc(var(--topbar-h) + 12px);left:var(--gutter);width:380px;animation:slide-left .7s var(--ease) both;padding:18px 20px;position:fixed}.step__top{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.step__count{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));letter-spacing:.14em;color:var(--text-3);text-transform:uppercase;font-weight:600}.step__count b{color:var(--accent-2)}.step__stats{font-family:var(--mono);font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);gap:12px;display:flex}.step__stats span{align-items:center;gap:4px;display:inline-flex}.step__stats svg{width:13px;height:13px}.progress{grid-template-columns:repeat(var(--n,11), 1fr);gap:4px;margin-bottom:16px;display:grid}.progress i{height:4px;transition:background .5s var(--ease);background:#ffffff14;border-radius:4px}.progress i.done{background:linear-gradient(90deg,#9d92ff,#6cd6ff)}.progress i.current{animation:blink 1.6s var(--ease-in-out) infinite;background:#8e80ff73}@keyframes blink{50%{background:#8e80ffd9}}.step__title{font-family:var(--display);font-size:calc((22px) * var(--fs,1));letter-spacing:-.01em;margin:0;font-weight:600;line-height:1.2}.step__text{color:var(--text-2);font-size:calc((14px) * var(--fs,1));margin:8px 0 0;line-height:1.6}.step__text b{color:var(--text);font-weight:600}.step__zones{border-top:1px solid var(--border);flex-wrap:wrap;gap:6px;margin-top:14px;padding-top:14px;display:flex}.step__zones-label{width:100%;font-size:calc((12px) * var(--fs,1));color:var(--text-3);margin-bottom:2px}.zone-chip{font-size:calc((12.5px) * var(--fs,1));color:var(--text);border:1px solid var(--border-strong);background:#ffffff0a;border-radius:9px;padding:6px 10px;font-weight:500;transition:background .2s,border-color .2s}.zone-chip:hover{background:var(--accent-soft);border-color:var(--accent-line)}.step.is-shake{animation:shake .5s var(--ease)}@keyframes shake{15%,55%{transform:translate(-6px)}35%,75%{transform:translate(6px)}}.feedback{top:calc(var(--topbar-h) + 12px);right:var(--gutter);pointer-events:none;gap:10px;width:370px;display:grid;position:fixed}.toast{pointer-events:auto;border-radius:var(--radius-lg);background:var(--surface-strong);border:1px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:var(--blur);animation:toast-in .55s var(--ease) both;padding:16px 18px;position:relative;overflow:hidden}.toast.is-leaving{animation:toast-out .35s var(--ease) both}.toast:before{content:"";background:var(--tone,var(--accent));width:3px;position:absolute;top:0;bottom:0;left:0}.toast--ok{--tone:var(--ok);border-color:#45d99e40}.toast--err{--tone:var(--err);border-color:#ff6f8147}.toast--hint{--tone:var(--warn);border-color:#ffc56b40}.toast__head{align-items:center;gap:10px;margin-bottom:6px;display:flex}.toast__icon{width:28px;height:28px;color:var(--tone);background:color-mix(in srgb, var(--tone) 14%, transparent);border-radius:9px;place-items:center;display:grid}.toast__icon svg{width:16px;height:16px}.toast__title{font-weight:600;font-size:calc((15px) * var(--fs,1))}.toast__close{color:var(--text-3);border-radius:6px;margin-left:auto;padding:4px}.toast__close:hover{color:var(--text);background:var(--surface-hover)}.toast__text{font-size:calc((13.5px) * var(--fs,1));color:var(--text-2);margin:0;line-height:1.58}.toast__text+.toast__text{margin-top:8px}.toast__text b{color:var(--text);font-weight:600}.toast__actions{justify-content:flex-end;margin-top:14px;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(-10px)scale(.98)}}@keyframes toast-out{to{opacity:0;transform:translateY(-8px)scale(.98)}}.inventory{width:min(1060px, calc(100vw - 2 * var(--gutter)));animation:dock-in .8s var(--ease) both;padding:12px 14px 14px;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.inventory__head{justify-content:space-between;align-items:baseline;gap:16px;padding:0 4px 10px;display:flex}.inventory__hint{font-size:calc((12.5px) * var(--fs,1));color:var(--text-3);text-align:right}.inventory__list{scrollbar-width:none;gap:8px;padding:2px;display:flex;overflow-x:auto}.inventory__list::-webkit-scrollbar{display:none}.card{border:1px solid var(--border);touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;min-width:96px;max-width:124px;transition:background .25s var(--ease), border-color .25s var(--ease), transform .35s var(--ease), opacity .35s var(--ease);background:#ffffff09;border-radius:14px;flex-direction:column;flex:1 0 96px;align-items:center;gap:8px;padding:12px 8px 10px;display:flex;position:relative}.card:hover{border-color:var(--border-strong);background:#ffffff12;transform:translateY(-3px)}.card__icon{color:#cfc9ff;background:linear-gradient(145deg,#8e80ff29,#52d3ff0d);border:1px solid #8e80ff38;border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.card__icon svg{width:22px;height:22px}.card__name{font-size:calc((12.5px) * var(--fs,1));text-align:center;font-weight:500;line-height:1.25}.card.is-selected{background:var(--accent-soft);border-color:#a79dff;transform:translateY(-4px);box-shadow:0 0 0 3px #8e80ff2e}.card.is-dragging{opacity:.35}.card.is-hinted{border-color:var(--warn);animation:hint-bounce 1.4s var(--ease) infinite;box-shadow:0 0 0 3px #ffc56b33}@keyframes hint-bounce{0%,to{transform:translateY(0)}40%{transform:translateY(-6px)}}.card.is-wrong{animation:shake .5s var(--ease);border-color:var(--err)}.card.is-installed{opacity:.4;cursor:default;pointer-events:none}.card.is-installed .card__icon{color:var(--ok);background:var(--ok-soft);border-color:#45d99e4d}.card__check{color:#06140e;background:var(--ok);opacity:0;width:18px;height:18px;transition:opacity .3s, transform .4s var(--ease);border-radius:50%;place-items:center;display:grid;position:absolute;top:6px;right:6px;transform:scale(.5)}.card__check svg{width:11px;height:11px}.card.is-installed .card__check{opacity:1;transform:none}.inventory.is-locked .card{pointer-events:none}.drag-ghost{z-index:40;pointer-events:none;background:var(--surface-strong);font-size:calc((13.5px) * var(--fs,1));will-change:transform;border:1px solid #a79dff;border-radius:14px;align-items:center;gap:10px;padding:8px 14px 8px 8px;font-weight:500;display:none;position:fixed;top:0;left:0;box-shadow:0 0 0 4px #8e80ff29,0 20px 40px -10px #000000b3}.drag-ghost.is-visible{display:flex}.drag-ghost .card__icon{width:34px;height:34px}.drag-ghost.is-over-zone{border-color:var(--accent-2)}.drag-ghost.is-returning{transition:transform .4s var(--ease), opacity .4s;opacity:0}.zone-label{z-index:41;font-size:calc((12px) * var(--fs,1));pointer-events:none;color:#0b0c14;opacity:0;white-space:nowrap;background:#bfe9ff;border-radius:8px;padding:5px 10px;font-weight:600;transition:opacity .15s;position:fixed;top:0;left:0;box-shadow:0 8px 20px -6px #0009}.zone-label.is-visible{opacity:1}.power-cta{animation:dock-in .8s var(--ease) both;position:fixed;bottom:40px;left:50%;transform:translate(-50%)}.modal{z-index:50;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal__backdrop{animation:fade-in .4s var(--ease) both;background:#040509b8;position:absolute;inset:0}.modal__card{background:var(--surface-strong);border:1px solid var(--border-strong);width:min(560px,100%);max-height:calc(100dvh - 40px);animation:modal-in .55s var(--ease) both;border-radius:24px;padding:28px;position:relative;overflow-y:auto;box-shadow:0 40px 100px -30px #000000e6}.modal.is-closing .modal__backdrop{animation:fade-out .3s var(--ease) both}.modal.is-closing .modal__card{animation:modal-out .3s var(--ease) both}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(16px)scale(.97)}}@keyframes modal-out{to{opacity:0;transform:translateY(10px)scale(.98)}}.modal__kicker{align-items:center;gap:8px;margin-bottom:10px;display:inline-flex}.modal__title{font-family:var(--display);font-size:calc((28px) * var(--fs,1));letter-spacing:-.015em;margin:0;font-weight:600;line-height:1.15}.modal__text{color:var(--text-2);font-size:calc((15px) * var(--fs,1));margin:12px 0 0;line-height:1.6}.modal__actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:26px;display:flex}.modal__close{position:absolute;top:16px;right:16px}.choice-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;display:grid}.choice{text-align:left;border:1px solid var(--border-strong);background:#ffffff08;border-radius:16px;flex-direction:column;gap:6px;padding:16px;transition:background .25s,border-color .25s,box-shadow .25s;display:flex}.choice:hover{background:#ffffff0f}.choice[aria-checked=true]{background:var(--accent-soft);border-color:#a79dff;box-shadow:0 0 0 3px #8e80ff29}.choice__title{font-weight:600;font-size:calc((15px) * var(--fs,1));align-items:center;gap:8px;display:flex}.choice__title [data-icon]{color:var(--accent-2)}.choice__text{font-size:calc((13px) * var(--fs,1));color:var(--text-2);line-height:1.5}.help-grid{gap:10px;margin-top:18px;display:grid}.help-row{border:1px solid var(--border);font-size:calc((13.5px) * var(--fs,1));color:var(--text-2);background:#ffffff08;border-radius:12px;grid-template-columns:150px 1fr;align-items:center;gap:12px;padding:10px 12px;display:grid}.help-row>span:first-child{flex-wrap:wrap;gap:4px;display:flex}.quiz__progress{gap:6px;margin:18px 0 6px;display:flex}.quiz__progress i{background:#ffffff14;border-radius:4px;flex:1;height:4px}.quiz__progress i.done{background:var(--ok)}.quiz__progress i.current{background:#8e80ffb3}.quiz__question{font-family:var(--display);font-size:calc((19px) * var(--fs,1));margin:18px 0 14px;font-weight:600;line-height:1.35}.quiz__options{gap:8px;display:grid}.quiz__option{text-align:left;font-size:calc((14.5px) * var(--fs,1));border:1px solid var(--border-strong);background:#ffffff09;border-radius:14px;grid-template-columns:28px 1fr;align-items:center;gap:12px;padding:12px 14px;line-height:1.4;transition:background .25s,border-color .25s,opacity .3s;display:grid}.quiz__option:hover:not(:disabled){background:#ffffff12;border-color:#ffffff3d}.quiz__letter{width:28px;height:28px;font-family:var(--mono);font-size:calc((12px) * var(--fs,1));color:var(--text-2);border:1px solid var(--border);background:#ffffff0d;border-radius:8px;place-items:center;font-weight:600;display:grid}.quiz__option.is-wrong{background:var(--err-soft);animation:shake .45s var(--ease);border-color:#ff6f8173}.quiz__option.is-wrong .quiz__letter{color:var(--err);border-color:#ff6f8173}.quiz__option.is-right{background:var(--ok-soft);border-color:#45d99e80}.quiz__option.is-right .quiz__letter{color:#06140e;background:var(--ok);border-color:var(--ok)}.quiz__option:disabled{cursor:default}.quiz__options.is-solved .quiz__option:not(.is-right){opacity:.45}.quiz__feedback{font-size:calc((14px) * var(--fs,1));animation:fade-swap .4s var(--ease);border-radius:12px;margin-top:14px;padding:12px 14px;line-height:1.55}.quiz__feedback--err{background:var(--err-soft);color:#ffd3d9}.quiz__feedback--ok{background:var(--ok-soft);color:#c9f5e2}.results__stars{gap:8px;margin:6px 0 4px;display:flex}.results__stars svg{color:#ffffff1f;width:34px;height:34px}.results__stars .on svg{color:#ffd36b;filter:drop-shadow(0 0 10px #ffd36b99)}.results__stars span{animation:star-pop .6s var(--ease) both}.results__stars span:nth-child(2){animation-delay:.12s}.results__stars span:nth-child(3){animation-delay:.24s}@keyframes star-pop{0%{opacity:0;transform:scale(.4)rotate(-20deg)}}.results__grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px;display:grid}.stat{border:1px solid var(--border);background:#ffffff09;border-radius:14px;padding:14px}.stat b{font-family:var(--display);font-size:calc((24px) * var(--fs,1));font-weight:600;display:block}.stat span{font-size:calc((12.5px) * var(--fs,1));color:var(--text-3)}.recap{gap:6px;margin:20px 0 0;padding:0;list-style:none;display:grid}.recap li{font-size:calc((13.5px) * var(--fs,1));color:var(--text-2);grid-template-columns:20px 1fr;gap:10px;display:grid}.recap [data-icon]{color:var(--ok);margin-top:2px}.modes__btn{white-space:nowrap}@media (width<=1280px) and (width>=821px){.topbar{grid-template-columns:auto 1fr auto;gap:10px}.nav{justify-self:center}.brand__name{display:none}.modes__btn{gap:7px;padding:8px 12px}.modes__btn:has(.nav__short) .nav__label{display:none}.nav__short{display:inline}}@media (width<=1024px) and (width>=821px){.modes__btn [data-icon],.topbar .quality{display:none}}@media (width<=1100px){.info{width:340px}.parts{width:228px}.step{width:340px}.feedback{width:330px}}@media (width<=820px){:root{--topbar-h:58px;--gutter:10px}body{font-size:calc((14px) * var(--fs,1))}.brand__name{display:none}.brand{padding:4px}.brand__mark svg{width:28px;height:28px}.topbar .quality{display:none}.nav{gap:4px}.submodes .nav__label{display:none}.submodes .nav__short{display:inline}.submodes .modes__btn:not(:has(.nav__short)) .nav__label{display:inline}.modes__btn{font-size:calc((13px) * var(--fs,1));gap:6px;padding:7px 10px}.modes__btn [data-icon]{display:none}.icon-btn{width:38px;height:38px}.intro{width:100%;padding:var(--topbar-h) 22px 30px;background:linear-gradient(#0000 25%,#07090db3 55%,#07090df0 100%);justify-content:flex-end}.intro__title{font-size:calc((clamp(34px, 9vw, 48px)) * var(--fs,1))}.intro__lead{font-size:calc((15px) * var(--fs,1));margin:14px 0 22px}.intro__stats{gap:22px;margin-top:26px;padding-top:16px}.intro__stats b{font-size:calc((19px) * var(--fs,1))}.intro__cta .btn{flex:1}.parts{width:auto;max-height:none;box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:0;animation-name:slide-up;inset:auto 0 76px}.parts .panel__head{display:none}.parts__list{scrollbar-width:none;gap:6px;padding:0 10px;display:flex;overflow-x:auto}.parts__list>li{flex:none}.part-item{background:var(--surface);border-color:var(--border);width:auto;-webkit-backdrop-filter:var(--blur);flex:none;grid-template-columns:28px auto;gap:8px;padding:6px 12px 6px 6px}.part-item__icon{width:28px;height:28px}.part-item__tag,.part-item__num{display:none}.info{z-index:12;width:auto;max-height:56dvh;inset:auto 8px 8px;transform:translateY(40px)}.info__inner{padding:16px 18px 18px}.dock{max-width:calc(100vw - 20px);padding:6px 6px 6px 14px;bottom:12px}.explode__label{display:none}input[type=range]{width:min(180px,42vw)}.gesture-hint{display:none}.step{top:calc(var(--topbar-h) + 4px);width:auto;padding:12px 14px;left:8px;right:8px}.step__title{font-size:calc((17px) * var(--fs,1))}.step__text{font-size:calc((13px) * var(--fs,1));line-height:1.5}.progress{margin-bottom:10px}.feedback{width:auto;inset:auto 8px 150px}.inventory{width:calc(100vw - 16px);padding:10px;bottom:8px}.inventory__hint{display:none}.card{flex:0 0 84px;min-width:84px;padding:10px 6px 8px}.card__icon{width:38px;height:38px}.choice-grid,.results__grid{grid-template-columns:1fr}.modal__card{padding:22px}.help-row{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.info .info__close{border-radius:10px;width:32px;height:32px}.btn svg,.link-btn svg,.chip svg,.zone-chip svg{flex:none;width:1.15em;height:1.15em}.chip svg{width:14px;height:14px}.step{width:400px;max-height:calc(100dvh - var(--topbar-h) - 200px);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;overflow-y:auto}.step__top{gap:10px}.step__stats{margin-left:auto}.step__restart{border-radius:9px;width:30px;height:30px}.step__restart svg{width:15px;height:15px}.tasks__meter{align-items:center;gap:10px;margin:14px 0 2px;display:flex}.tasks__meter-bar{background:#ffffff14;border-radius:4px;flex:1;height:4px;overflow:hidden}.tasks__meter-bar i{border-radius:inherit;height:100%;transition:width .5s var(--ease);background:linear-gradient(90deg,#9d92ff,#6cd6ff);display:block}.tasks__meter-label{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:var(--text-3)}.tasks{gap:2px;margin:0;padding:0;list-style:none;display:grid}.tasks__group{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);padding:12px 0 5px 6px;font-weight:600}.task{transition:background .3s var(--ease), border-color .3s var(--ease), opacity .3s var(--ease);border:1px solid #0000;border-radius:12px;grid-template-columns:24px 1fr;gap:10px;padding:7px 10px 7px 6px;display:grid}.task__box{width:22px;height:22px;color:var(--text-3);border:1.5px solid #ffffff38;border-radius:7px;place-items:center;margin-top:1px;display:grid}.task__box svg{width:13px;height:13px}.task__label{font-size:calc((13.5px) * var(--fs,1));font-weight:500;line-height:1.4;display:block}.task.is-todo{opacity:.5}.task.is-todo .task__label{color:var(--text-2);font-weight:400}.task.is-done .task__box{color:#06140e;background:var(--ok);border-color:var(--ok)}.task.is-done .task__label{color:var(--text-3);font-weight:400}.task.is-just .task__box{animation:check-pop .45s var(--ease)}@keyframes check-pop{0%{transform:scale(.4)}60%{transform:scale(1.18)}}.task.is-current{border-color:var(--accent-line);background:#8e80ff17}.task.is-current .task__box{border-color:#a79dff;box-shadow:0 0 0 3px #8e80ff2e}.task--main .task__box{border-style:dashed}.task--main.is-current .task__box{color:#cfc9ff}.task--warn.is-current{background:var(--warn-soft);border-color:#ffc56b66}.task--warn.is-current .task__box{border-color:var(--warn);box-shadow:0 0 0 3px #ffc56b26}.task__warn{font-size:calc((11.5px) * var(--fs,1));color:#1c1406;background:var(--warn);border-radius:999px;align-items:center;gap:5px;margin-top:6px;padding:2px 8px;font-weight:600;display:inline-flex}.task__warn svg{width:12px;height:12px}.task__detail{font-size:calc((13px) * var(--fs,1));color:var(--text-2);margin:6px 0 0;line-height:1.55}.task__detail b{color:var(--text)}.task__actions{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:10px;display:flex}.btn--check{color:#0b0c14;background:linear-gradient(120deg,#b3aaff 0%,#8f9bff 50%,#6cdcff 100%);box-shadow:0 8px 22px -10px #808cffcc}.task__or{font-size:calc((12px) * var(--fs,1));color:var(--text-3);align-items:center;gap:6px;display:inline-flex}.task__or svg{width:14px;height:14px;color:var(--accent-2)}.task .step__zones{margin-top:10px;padding-top:10px}.step__done{background:var(--ok-soft);animation:fade-swap .45s var(--ease);border:1px solid #45d99e4d;border-radius:14px;gap:10px;margin-top:14px;padding:14px;display:grid}.step__done-head{font-size:calc((15px) * var(--fs,1));align-items:center;gap:10px;display:flex}.step__done-icon{color:#06140e;background:var(--ok);border-radius:50%;place-items:center;width:26px;height:26px;display:grid}.step__done-icon svg{width:14px;height:14px}.step__fact{font-size:calc((13px) * var(--fs,1));color:var(--text-2);margin:0;line-height:1.55}.step__fact b{color:var(--accent-2)}.step__done .btn{justify-self:start}.task-marker{z-index:15;will-change:transform;align-items:center;gap:10px;padding:0;display:flex;position:fixed;top:0;left:0}.task-marker__dot{width:26px;height:26px;transition:transform .25s var(--ease);background:#8e80ff;border:2px solid #fff;border-radius:50%;margin:-13px 0 0 -13px;position:relative;box-shadow:0 0 0 6px #8e80ff40,0 6px 18px #00000080}.task-marker__dot:after{content:"";animation:ring 1.6s var(--ease) infinite;border:2px solid #beb6ffd9;border-radius:50%;position:absolute;inset:-10px}.task-marker__label{font-size:calc((12px) * var(--fs,1));white-space:nowrap;color:#16122e;background:#f1efff;border-radius:8px;margin-top:-13px;padding:5px 10px;font-weight:600;box-shadow:0 8px 20px -6px #0009}.task-marker:hover .task-marker__dot{transform:scale(1.15)}.inventory.is-locked .card:not(.is-installed){opacity:.45}.inventory.is-locked .inventory__hint{color:var(--warn)}.inventory:not(.is-locked){border-color:var(--accent-line)}.quality{position:relative}.menu{z-index:30;background:var(--surface-strong);border:1px solid var(--border-strong);width:270px;box-shadow:var(--shadow);animation:fade-swap .25s var(--ease);border-radius:14px;padding:6px;position:absolute;top:calc(100% + 8px);right:0}.menu__title{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);padding:8px 10px 6px;font-weight:600}.menu__item{text-align:left;border-radius:10px;grid-template-columns:18px 1fr;gap:10px;width:100%;padding:9px 10px;transition:background .2s;display:grid}.menu__item:hover{background:var(--surface-hover)}.menu__radio{border:1.5px solid #ffffff4d;border-radius:50%;width:16px;height:16px;margin-top:2px}.menu__item[aria-checked=true] .menu__radio{background:radial-gradient(circle,#a79dff 40%,#0000 46%);border-color:#a79dff}.menu__label{font-size:calc((13.5px) * var(--fs,1));font-weight:500;display:block}.menu__desc{font-size:calc((12px) * var(--fs,1));color:var(--text-3);margin-top:1px;display:block}.menu__foot{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);border-top:1px solid var(--border);margin-top:4px;padding:8px 10px 6px}@media (width<=1100px){.step{width:360px}}@media (width<=820px){.step{width:auto;max-height:40dvh}.task-marker__label{font-size:calc((11px) * var(--fs,1))}}.account-btn{max-width:190px;height:40px;font-size:calc((13px) * var(--fs,1));color:var(--text-2);background:var(--surface);border:1px solid var(--border);-webkit-backdrop-filter:var(--blur);transition:color .25s var(--ease), background .25s var(--ease), border-color .25s var(--ease);border-radius:12px;align-items:center;gap:8px;padding:0 12px 0 10px;font-weight:600;display:inline-flex}.account-btn:hover{color:var(--text);border-color:var(--border-strong);background:#1e2330d9}.account-btn__icon{flex:none;display:inline-grid;position:relative}.account-btn__icon svg{width:17px;height:17px}.account-btn__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-btn.is-in{color:var(--text);border-color:#45d99e66}.account-btn.is-in .account-btn__icon:after{content:"";background:var(--ok);width:7px;height:7px;box-shadow:0 0 6px var(--ok);border-radius:50%;position:absolute;bottom:-1px;right:-2px}body[data-mode=account] .account-btn{border-color:var(--accent-line);background:var(--accent-soft)}.account-btn__sync{color:var(--ok);flex:none;display:inline-grid}.account-btn__sync[hidden]{display:none}.account-btn__sync svg{width:16px;height:16px}.account-btn[data-sync=syncing] .account-btn__sync,.account-btn[data-sync=idle] .account-btn__sync{color:var(--accent-2);animation:1s ease-in-out infinite sync-pulse}.account-btn[data-sync=offline] .account-btn__sync,.account-btn[data-sync=error] .account-btn__sync{color:#ffc56b}.account-btn.is-in[data-sync=syncing] .account-btn__icon:after,.account-btn.is-in[data-sync=idle] .account-btn__icon:after{background:var(--accent-2);box-shadow:0 0 6px var(--accent-2)}.account-btn.is-in[data-sync=offline] .account-btn__icon:after,.account-btn.is-in[data-sync=error] .account-btn__icon:after{background:#ffc56b;box-shadow:0 0 6px #ffc56b}@keyframes sync-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.account-btn__sync{animation:none!important}}@media (width<=820px){.account-btn{justify-content:center;width:40px;padding:0}.account-btn__name,.account-btn__sync{display:none}}.home{z-index:5;background:var(--bg);scrollbar-width:thin;scrollbar-color:#ffffff1a transparent;position:fixed;inset:0;overflow:hidden auto}.home__inner{flex-direction:column;min-height:100%;display:flex;position:relative}.academy{color:inherit;text-decoration:none}.academy:focus-visible{outline:2px solid var(--accent-2);outline-offset:4px}body[data-app=home] .vignette{display:none}.hub-bg{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.hub-glow{filter:blur(90px);opacity:.5;border-radius:50%;position:absolute}.hub-glow--a{background:radial-gradient(circle,#7e6cff8c,#0000 65%);width:620px;height:620px;top:-220px;left:-160px}.hub-glow--b{background:radial-gradient(circle,#3cbeff59,#0000 65%);width:700px;height:700px;bottom:-260px;right:-240px}.hub-floor{perspective:520px;perspective-origin:50% 0;height:58vh;position:absolute;bottom:0;left:-40%;right:-40%;-webkit-mask-image:linear-gradient(#0000 20%,#000 95%);mask-image:linear-gradient(#0000 20%,#000 95%)}.hub-floor__grid{transform-origin:50% 0;background-image:linear-gradient(#8e80ff38 1px,#0000 1px),linear-gradient(90deg,#8e80ff38 1px,#0000 1px);background-size:64px 64px;animation:9s linear infinite floor-run;position:absolute;inset:-64px 0 0;transform:rotateX(68deg)}@keyframes floor-run{to{transform:rotateX(68deg)translateY(64px)}}.home__inner{width:min(1180px,100%);padding:calc(var(--topbar-h) + clamp(8px, 3vh, 36px)) clamp(18px, 4vw, 48px) 0;flex:1;margin:0 auto}.hub-hero{text-align:center;max-width:720px;margin:0 auto clamp(24px,4.5vh,48px)}.hub-hero>*{animation:rise .9s var(--ease) both}.hub-hero>:nth-child(2){animation-delay:60ms}.hub-hero>:nth-child(3){animation-delay:.12s}.hub-title{font-family:var(--display);font-weight:600;font-size:calc((clamp(36px, 4.6vw, 62px)) * var(--fs,1));letter-spacing:-.025em;margin:0;line-height:1.02}.hub-lead{max-width:560px;font-size:calc((17px) * var(--fs,1));color:var(--text-2);margin:16px auto 0}.hub-teaser{width:min(900px,100%);animation:rise .9s .18s var(--ease) both;margin:0 auto clamp(28px,5vh,56px)}.hub-teaser__frame{aspect-ratio:16/9;border:1px solid var(--border-strong);background:#04050a;border-radius:18px;max-width:100%;position:relative;overflow:hidden;box-shadow:0 30px 80px -30px #000000e6,0 0 0 1px #8e80ff14,0 0 70px -20px #52d3ff59}.hub-teaser__video{object-fit:cover;cursor:pointer;width:100%;height:100%;display:block}.hub-teaser__bar{pointer-events:none;background:#ffffff14;height:3px;position:absolute;bottom:0;left:0;right:0}.hub-teaser__bar i{background:var(--grad);width:0;height:100%;transition:width .25s linear;display:block}.hub-teaser__controls{gap:8px;display:flex;position:absolute;top:14px;right:14px}.teaser-btn{min-width:40px;height:40px;font:inherit;font-size:calc((13px) * var(--fs,1));color:var(--text);-webkit-backdrop-filter:blur(10px);cursor:pointer;background:#07090d9e;border:1px solid #ffffff29;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-weight:600;transition:background .2s,border-color .2s,box-shadow .25s;display:inline-flex}.teaser-btn svg{width:17px;height:17px}.teaser-btn:hover{border-color:var(--accent-line);background:#141628bf}.teaser-btn:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teaser-btn--sound{border-color:#52d3ff73}.hub-teaser.is-sound .teaser-btn--sound{color:#dff6ff;border-color:#52d3ffcc;box-shadow:0 0 18px #52d3ff59}.hub-teaser__caption{font-size:calc((12.5px) * var(--fs,1));letter-spacing:.06em;color:var(--text-3);justify-content:center;align-items:center;gap:10px;margin-top:12px;display:flex}.hub-teaser__dot{background:var(--err);width:7px;height:7px;box-shadow:0 0 10px var(--err);border-radius:50%}.hub-teaser:not(.is-playing) .hub-teaser__dot{background:var(--text-3);box-shadow:none}.hub-cards{perspective:1400px;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2.4vw,28px);display:grid}.academy{--rx:0deg;--ry:0deg;--mx:50%;--my:30%;background:radial-gradient(420px circle at var(--mx) var(--my), #8e80ff1f, transparent 60%), var(--surface);border:1px solid var(--border);transform:rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;transition:transform .5s var(--ease), border-color .4s var(--ease), box-shadow .4s var(--ease);animation:card-in 1s var(--ease) both;border-radius:24px;flex-direction:column;animation-delay:.18s;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 70px -30px #000000d9,inset 0 1px #ffffff0d}.academy+.academy{animation-delay:.26s}.academy:hover{border-color:var(--accent-line);transition:transform .12s linear, border-color .4s var(--ease), box-shadow .4s var(--ease);box-shadow:0 40px 90px -30px #5046c88c,inset 0 1px #ffffff12}.academy__stage{border-bottom:1px solid var(--border);background:linear-gradient(#ffffff05,#0000);place-items:center;height:clamp(170px,23vh,240px);display:grid;position:relative}.academy__art{filter:drop-shadow(0 0 14px #8e80ff47);width:min(86%,380px);height:auto;animation:6s ease-in-out infinite float;overflow:visible}.academy+.academy .academy__art{animation-delay:-3s}@keyframes float{50%{transform:translateY(-7px)}}.academy__plinth{filter:blur(4px);background:radial-gradient(closest-side,#8e80ff59,#0000);border-radius:50%;width:58%;height:26px;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.x{transition:transform .7s var(--ease)}.academy__guides{transition:opacity .5s var(--ease)}.academy:hover .academy__guides,.academy:focus-visible .academy__guides{opacity:.8}.academy:hover .x--gpu,.academy:focus-visible .x--gpu{transform:translate(12px,5px)}.academy:hover .x--fans,.academy:focus-visible .x--fans{transform:translate(-12px)}.academy:hover .x--psu,.academy:focus-visible .x--psu{transform:translateY(12px)}.academy:hover .x--cpu,.academy:focus-visible .x--cpu{transform:translate(-3px,-8px)}.academy:hover .x--ram,.academy:focus-visible .x--ram{transform:translate(8px,-7px)}.academy:hover .x--case,.academy:focus-visible .x--case{transform:translateY(2px)}.academy:hover .x--body,.academy:focus-visible .x--body{transform:translateY(-14px)}.academy:hover .x--wheel-r,.academy:focus-visible .x--wheel-r{transform:translate(-10px,4px)}.academy:hover .x--wheel-f,.academy:focus-visible .x--wheel-f{transform:translate(10px,4px)}.academy:hover .x--engine,.academy:focus-visible .x--engine{transform:translate(14px,-6px)}.academy:hover .x--drive,.academy:focus-visible .x--drive{transform:translateY(5px)}.academy__body{flex-direction:column;flex:1;padding:22px 26px 24px;display:flex}.academy__kicker{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);align-items:center;gap:10px;font-weight:600;display:flex}.academy__kicker span{color:#cbc4ff}.academy__title{font-family:var(--display);font-size:calc((clamp(26px, 2.6vw, 32px)) * var(--fs,1));letter-spacing:-.015em;margin:8px 0;font-weight:600}.academy__text{color:var(--text-2);margin:0}.academy__chips{flex-wrap:wrap;gap:6px;margin:16px 0 20px;padding:0;list-style:none;display:flex}.academy__chips li{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);border:1px solid var(--border);background:#ffffff0a;border-radius:8px;padding:5px 10px}.academy__cta{color:#0b0c14;height:46px;transition:gap .3s var(--ease);background:linear-gradient(120deg,#b3aaff 0%,#8f9bff 50%,#6cdcff 100%);border-radius:14px;align-self:flex-start;align-items:center;gap:10px;margin-top:auto;padding:0 20px;font-weight:600;display:inline-flex;box-shadow:0 10px 30px -10px #808cffb3,inset 0 1px #ffffff80}.academy:hover .academy__cta{gap:14px}.hub-foot{font-size:calc((12.5px) * var(--fs,1));color:var(--text-3);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding:18px clamp(18px,4vw,48px) 24px;display:flex}@keyframes card-in{0%{opacity:0;translate:0 22px}}.hub-teaser__poster{position:absolute;inset:0}.hub-teaser__poster img{object-fit:cover;width:100%;height:100%;display:block}.hub-teaser__video{opacity:0;transition:opacity .4s var(--ease);position:relative}.hub-teaser.is-started .hub-teaser__video{opacity:1}.hub-resume{width:min(900px,100%);animation:rise .9s .14s var(--ease) both;margin:0 auto clamp(20px,3.5vh,36px)}.hub-resume__title{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin:0 0 10px;font-weight:600}.hub-resume__list{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.resume-card{height:100%;min-height:64px;color:var(--text);background:var(--surface);border:1px solid var(--border);transition:border-color .25s var(--ease), background .25s var(--ease);border-radius:16px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 14px 10px 10px;text-decoration:none;display:grid}.resume-card:hover{border-color:var(--accent-line);background:#1e2330e6}.resume-card:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.resume-card__icon{color:#d9d4ff;background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.resume-card__icon svg{width:19px;height:19px}.resume-card__text{gap:1px;min-width:0;display:grid}.resume-card__text small{font-size:calc((12px) * var(--fs,1));color:var(--text-3)}.resume-card__text b{font-size:calc((14.5px) * var(--fs,1));overflow-wrap:anywhere;font-weight:600}.resume-card__go{color:var(--text-3);display:grid}.resume-card__go svg{width:17px;height:17px}.academy__chips .academy__chip--warn{color:var(--warn);background:var(--warn-soft);border-color:#ffc56b66}@media (prefers-reduced-motion:reduce){.hub-teaser__video{transition:none}}@media (width<=820px){.hub-cards{grid-template-columns:1fr}.hub-lead{font-size:calc((15.5px) * var(--fs,1))}.hub-teaser__frame{border-radius:14px}.hub-teaser__controls{top:8px;right:8px}.teaser-btn{min-width:34px;height:34px;font-size:calc((12px) * var(--fs,1));padding:0 10px}.academy__body{padding:18px 20px 20px}.academy__cta{justify-content:center;align-self:stretch}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.systems{width:272px}.search{height:38px;color:var(--text-3);border:1px solid var(--border);transition:border-color .25s var(--ease), background .25s var(--ease);background:#ffffff09;border-radius:11px;align-items:center;gap:8px;margin:0 12px 8px;padding:0 12px;display:flex}.search:focus-within{color:var(--text-2);border-color:var(--accent-line);background:#8e80ff0f}.search input{min-width:0;height:100%;color:var(--text);font:inherit;font-size:calc((13.5px) * var(--fs,1));background:0 0;border:0;outline:none;flex:1}.search input::placeholder{color:var(--text-3)}.search input::-webkit-search-cancel-button{filter:invert(.7)}.systems__list{scrollbar-width:thin;scrollbar-color:#ffffff1a transparent;padding:0 8px 10px;overflow-y:auto}.systems__list[data-empty=true]:after{content:"Aucune pièce ne correspond.";font-size:calc((13px) * var(--fs,1));color:var(--text-3);text-align:center;padding:18px 12px;display:block}.sys+.sys{margin-top:2px}.sys__head{text-align:left;width:100%;transition:background .25s var(--ease), border-color .25s var(--ease);border:1px solid #0000;border-radius:12px;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;padding:7px 10px 7px 8px;display:grid}.sys__head:hover{background:var(--surface-hover)}.sys.is-current .sys__head{background:var(--accent-soft);border-color:var(--accent-line)}.sys__icon{width:34px;height:34px;color:var(--text-2);border:1px solid var(--border);background:#ffffff0a;border-radius:10px;place-items:center;transition:color .25s,border-color .25s;display:grid}.sys__icon svg{width:18px;height:18px}.sys.is-current .sys__icon{color:#d6d0ff;border-color:var(--accent-line)}.sys__text{flex-direction:column;min-width:0;display:flex}.sys__name{font-size:calc((14px) * var(--fs,1));white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.sys__tag{font-size:calc((12px) * var(--fs,1));color:var(--text-3)}.sys__chev{color:var(--text-3);transition:transform .35s var(--ease)}.sys__chev svg{width:15px;height:15px}.sys.is-open .sys__chev{transform:rotate(90deg)}.sys__body{transition:grid-template-rows .42s var(--ease);grid-template-rows:0fr;display:grid}.sys.is-open .sys__body{grid-template-rows:1fr}.sys__parts{margin:0;padding:0 0 0 26px;list-style:none;position:relative;overflow:hidden}.sys__parts:before{content:"";background:var(--border-strong);width:1px;position:absolute;top:6px;bottom:10px;left:25px}.sys.is-open .sys__parts{padding-top:4px;padding-bottom:6px}.sys-item{text-align:left;width:100%;font-size:calc((13.5px) * var(--fs,1));color:var(--text-2);transition:background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);border:1px solid #0000;border-radius:10px;grid-template-columns:24px 1fr;align-items:center;gap:8px;padding:6px 10px 6px 12px;display:grid}.sys-item:hover,.sys-item.is-hover{color:var(--text);background:var(--surface-hover)}.sys-item.is-active{color:var(--text);background:var(--accent-soft);border-color:var(--accent-line)}.sys-item__num{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));color:var(--text-3)}.sys-item.is-active .sys-item__num{color:#cfc9ff}.sys-item__name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.chip--link{cursor:pointer;transition:background .25s var(--ease), border-color .25s var(--ease)}.chip--link:hover{border-color:var(--accent-line);background:#8e80ff3d}.chip--link svg{width:13px;height:13px}.btn--block{width:100%;height:42px;font-size:calc((14px) * var(--fs,1))}.btn--block svg{width:16px;height:16px}.sys-facts{flex-wrap:wrap;gap:6px;margin:0 0 18px;padding:0;list-style:none;display:flex}.sys-facts li{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);border:1px solid var(--border);background:#ffffff0a;border-radius:8px;padding:5px 10px}.sys-grid{gap:6px;display:grid}.sys-card{text-align:left;border:1px solid var(--border);transition:background .2s var(--ease), border-color .2s var(--ease), transform .2s var(--ease);background:#ffffff06;border-radius:12px;grid-template-columns:26px 1fr;align-items:center;gap:12px;padding:9px 12px 9px 10px;display:grid}.sys-card:hover{background:var(--accent-soft);border-color:var(--accent-line)}.sys-card:active{transform:scale(.985)}.sys-card__num{width:26px;height:26px;font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));color:#e5e2ff;background:#0e101899;border:1.5px solid #beb6ffb3;border-radius:50%;place-items:center;font-weight:600;display:grid}.sys-card__text{flex-direction:column;min-width:0;display:flex}.sys-card__text b{font-size:calc((13.5px) * var(--fs,1));font-weight:500}.sys-card__text small{font-size:calc((12px) * var(--fs,1));color:var(--text-3)}.hotspot--system .hotspot__dot{color:#e3dfff;width:30px;height:30px;margin:-15px 0 0 -15px}.hotspot--system .hotspot__dot svg{width:15px;height:15px}.hotspot--system .hotspot__label{margin-top:-15px;font-weight:600}.hotspot--system.is-flipped .hotspot__label{right:calc(100% + 24px)}.seg{border:1px solid var(--border);background:#ffffff0a;border-radius:12px;gap:2px;padding:3px;display:flex}.seg__btn{width:36px;height:32px;color:var(--text-3);transition:color .25s var(--ease), background .25s var(--ease);border-radius:9px;place-items:center;display:grid}.seg__btn:hover{color:var(--text)}.seg__btn[aria-checked=true]{color:#e2deff;box-shadow:inset 0 0 0 1px var(--accent-line);background:#8e80ff38}.stroke{width:min(480px,100vw - 32px);animation:stroke-in .5s var(--ease) both;border-radius:16px;padding:12px 16px 14px;position:fixed;bottom:88px;left:50%;transform:translate(-50%)}@keyframes stroke-in{0%{opacity:0;transform:translate(-50%,12px)}}.stroke__head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.stroke__cyl{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:var(--text-3)}.stroke__steps{grid-template-columns:repeat(4,1fr);gap:6px;margin:0;padding:0;list-style:none;display:grid}.stroke__steps li{font-size:calc((12px) * var(--fs,1));color:var(--text-3);flex-direction:column;gap:7px;font-weight:500;transition:color .2s;display:flex}.stroke__steps i{background:#ffffff1a;border-radius:4px;height:4px;transition:background .2s,box-shadow .2s}.stroke__steps li.is-on{color:var(--text)}.stroke__steps li.is-on i{background:var(--grad);box-shadow:0 0 12px #8e80ff99}.stroke__steps li[data-stroke=combustion].is-on i{background:linear-gradient(90deg,#ffb45c,#ff7a4a);box-shadow:0 0 14px #ff9650b3}.stroke__text{min-height:2.9em;font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);margin:10px 0 0;line-height:1.45}body[data-mode=explore] .gesture-hint{bottom:88px}@media (width<=1100px){.systems{width:246px}}@media (width<=820px){.systems{width:auto}.systems .search{display:none}.systems__list{scrollbar-width:none;gap:6px;padding:0 10px;display:flex;overflow:auto hidden}.sys{flex:none}.sys+.sys{margin-top:0}.sys__body,.sys__tag,.sys__chev{display:none}.sys__head{background:var(--surface);border-color:var(--border);grid-template-columns:28px auto;gap:8px;width:auto;padding:6px 12px 6px 6px}.sys__icon{width:28px;height:28px}.sys__icon svg{width:16px;height:16px}.sys__name{font-size:calc((13px) * var(--fs,1))}.dock .dock__sep,.dock #car-labels{display:none}.dock{gap:4px}.dock input[type=range]{width:min(84px,22vw)}.seg__btn{width:29px}.seg--text .seg__btn{padding:0 9px}.seg--text .seg__btn[aria-checked=false]{display:none}.systems,#car-dock{transition:opacity .35s var(--ease)}#car-explorer:has(.info.is-open) .systems{opacity:0;pointer-events:none}#car-explorer:has(.info.is-open) #car-dock{opacity:0;pointer-events:none}.stroke{top:calc(var(--topbar-h) + 6px);padding:10px 12px;bottom:auto}.stroke__head{margin-bottom:8px}.stroke__steps li{font-size:calc((11px) * var(--fs,1))}.stroke__text{display:none}}.app-auto .loader__mark{color:#b1a7ff}.sys__icon{color:var(--sys,var(--text-2))}.sys.is-current .sys__icon{color:var(--sys,#d6d0ff)}.sys__group{font-family:var(--mono);font-size:calc((10px) * var(--fs,1));letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);padding:10px 12px 3px;font-weight:600}.sys__group:first-child{padding-top:4px}.sys-item{grid-template-columns:24px 1fr auto}.sys-item__fuel,.info__fuel b{text-transform:capitalize}.sys-item__fuel{font-size:calc((10.5px) * var(--fs,1));color:#ffd6a8;background:#ffa45c1f;border:1px solid #ffa45c4d;border-radius:6px;padding:1px 6px}.info__group{min-width:0;font-size:calc((12px) * var(--fs,1));color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0 10px;overflow:hidden}.info__fuel{font-size:calc((13px) * var(--fs,1));color:#ffd6a8;background:#ffa45c14;border:1px solid #ffa45c40;border-radius:10px;align-items:center;gap:8px;margin:14px 0 0;padding:8px 12px;display:flex}.info__fuel svg{flex:none;width:16px;height:16px}.sys-grid__group{font-family:var(--mono);font-size:calc((10px) * var(--fs,1));letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);margin:10px 0 2px;font-weight:600}.sys-grid__group:first-child{margin-top:0}.seg--text .seg__btn{width:auto;font-size:calc((12.5px) * var(--fs,1));padding:0 11px;font-weight:600}#car-hotspots .hotspot__dot{border-color:color-mix(in srgb, var(--sys,#beb6ff) 85%, white);box-shadow:0 0 0 4px color-mix(in srgb, var(--sys,#8e80ff) 18%, transparent), 0 4px 14px #00000080}#car-hotspots .hotspot__dot:after{border-color:color-mix(in srgb, var(--sys,#8e80ff) 55%, transparent)}#car-hotspots.is-all-parts .hotspot:not(.hotspot--system) .hotspot__dot{background:var(--sys,#8e80ff);width:12px;height:12px;margin:-6px 0 0 -6px;font-size:0;box-shadow:0 0 0 3px #07090db3}#car-hotspots.is-all-parts .hotspot__dot:after{display:none}#car-hotspots.is-all-parts .hotspot__label{font-size:calc((11.5px) * var(--fs,1));border-left:2px solid var(--sys,#8e80ff);padding:3px 8px}#car-hotspots.is-all-parts .hotspot.is-flipped .hotspot__label{right:calc(100% + 14px)}.repair-card{width:410px;max-height:calc(100dvh - var(--topbar-h) - 28px);padding-bottom:20px}.repair-card .step__top{align-items:center;gap:8px;display:flex}.repair-card .step__top .link-btn{margin-left:-8px}.repair-card .step__stats{margin-left:auto}.repair-card__sheet{display:none}.repair-card__sheet svg{width:18px;height:18px}.repair-card__title{margin-top:12px}.repair-card__title .kicker{color:var(--accent-2);margin-bottom:4px;display:block}.repair-card.is-shake{animation:repair-shake .45s var(--ease)}@keyframes repair-shake{20%{transform:translate(-6px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.phases{grid-template-columns:repeat(5,1fr);gap:4px;margin-top:14px;display:grid}.phase{font-size:calc((10.5px) * var(--fs,1));text-align:center;color:var(--text-3);padding-top:9px;font-weight:600;position:relative}.phase:before{content:"";background:#ffffff14;border-radius:4px;height:4px;position:absolute;top:0;left:0;right:0}.phase.is-done{color:var(--text-2)}.phase.is-done:before{background:var(--ok)}.phase.is-current{color:var(--text)}.phase.is-current:before{background:var(--grad);box-shadow:0 0 12px #8e80ff80}.solutions{gap:8px;margin:14px 0 4px;display:grid}.solution{border:1px solid var(--border);background:#ffffff08;border-radius:12px;padding:11px 13px}.solution__head{font-size:calc((14px) * var(--fs,1));justify-content:space-between;align-items:center;gap:8px;display:flex}.solution p{font-size:calc((13px) * var(--fs,1));color:var(--text-2);margin:4px 0 8px;line-height:1.5}.solution__meta{font-size:calc((12px) * var(--fs,1));color:var(--text-3);flex-wrap:wrap;gap:6px 14px;display:flex}.solution__meta span{align-items:center;gap:5px;display:inline-flex}.solution__meta svg{width:13px;height:13px}.choices{gap:6px;margin-top:10px;display:grid}.choice-btn{text-align:left;font-size:calc((13.5px) * var(--fs,1));color:var(--text);border:1px solid var(--border-strong);transition:background .2s var(--ease), border-color .2s var(--ease);background:#ffffff0a;border-radius:10px;padding:9px 12px}.choice-btn:hover{background:var(--accent-soft);border-color:var(--accent-line)}.choice-btn.is-wrong{color:var(--text-3);background:var(--err-soft);cursor:default;border-color:#ff6f8159;text-decoration:line-through}.choice-feedback{font-size:calc((12.5px) * var(--fs,1));color:#ffb3bd;gap:6px;margin:8px 0 0;line-height:1.45;display:flex}.choice-feedback svg{flex:none;width:13px;height:13px;margin-top:3px}.badge{font-size:calc((11.5px) * var(--fs,1));white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:2px 8px;font-weight:600;display:inline-flex}.badge i{background:currentColor;border-radius:50%;width:6px;height:6px}.badge--ok{color:var(--ok);background:var(--ok-soft);border-color:#45d99e40}.badge--warn{color:var(--warn);background:var(--warn-soft);border-color:#ffc56b40}.badge--err{color:var(--err);background:var(--err-soft);border-color:#ff6f814d}.badge--muted{color:var(--text-2);border-color:var(--border);background:#ffffff0d}.badge--fuel{color:#ffd6a8;background:#ffa45c1a;border-color:#ffa45c4d}.repair-card.is-catalog .step__title{margin-top:6px}.repair-cat__head{justify-content:space-between;align-items:center;display:flex}.repair-search{margin:14px 0 10px}.symptoms{flex-wrap:wrap;gap:6px;display:flex}.symptom{font-size:calc((12px) * var(--fs,1));color:var(--text-2);border:1px solid var(--border);background:#ffffff0a;border-radius:999px;padding:5px 10px;font-weight:500;transition:color .2s,background .2s,border-color .2s}.symptom:hover{color:var(--text)}.symptom[aria-pressed=true]{color:#e6e2ff;background:var(--accent-soft);border-color:var(--accent-line)}.repair-list{margin-top:16px}.repair-group+.repair-group{margin-top:14px}.repair-group__head{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);align-items:center;gap:8px;margin-bottom:6px;font-weight:600;display:flex}.repair-group__head svg{width:14px;height:14px}.repair-item{text-align:left;border:1px solid var(--border);width:100%;transition:background .2s var(--ease), border-color .2s var(--ease), transform .2s var(--ease);background:#ffffff06;border-radius:12px;flex-direction:column;gap:4px;padding:11px 13px;display:flex}.repair-item+.repair-item{margin-top:6px}.repair-item:hover{background:var(--accent-soft);border-color:var(--accent-line)}.repair-item:active{transform:scale(.99)}.repair-item__title{font-size:calc((14px) * var(--fs,1));font-weight:600}.repair-item__sum{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);line-height:1.45}.repair-item__tags{flex-wrap:wrap;gap:5px;margin-top:4px;display:flex}.repair-empty{font-size:calc((13px) * var(--fs,1));color:var(--text-3)}.repair-side{top:calc(var(--topbar-h) + 12px);right:var(--gutter);width:330px;max-height:calc(100dvh - var(--topbar-h) - 28px);scrollbar-width:thin;scrollbar-color:#ffffff1a transparent;animation:repair-slide-right .6s var(--ease) both;position:fixed;overflow-y:auto}@keyframes repair-slide-right{0%{opacity:0;transform:translate(24px)}}.repair-side__inner{padding:18px 20px 20px}.repair-side__top{justify-content:space-between;align-items:center;display:flex}.repair-side__close{display:none}.repair-side__title{font-family:var(--display);font-size:calc((20px) * var(--fs,1));margin:12px 0 8px;font-weight:600;line-height:1.2}.repair-side__badges{flex-wrap:wrap;gap:6px;display:flex}.repair-side__sum{font-size:calc((13.5px) * var(--fs,1));color:var(--text-2);margin:12px 0 14px;line-height:1.55}.repair-side .specs{grid-template-columns:1fr}.repair-side .spec dd{align-items:center;gap:8px;display:flex}.repair-side .meter__bars{display:inline-flex}.phase-list{color:var(--accent-2);gap:10px;margin:14px 0 16px;padding:0 0 0 20px;display:grid}.phase-list li{padding-left:4px}.phase-list b{font-size:calc((13.5px) * var(--fs,1));color:var(--text);display:block}.phase-list span{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2)}.part-chips{flex-wrap:wrap;gap:6px;display:flex}.part-chip{font-size:calc((12px) * var(--fs,1));color:var(--text-2);border:1px solid var(--border);background:#ffffff0a;border-radius:8px;padding:4px 10px;transition:color .2s,border-color .2s}.part-chip:hover{color:var(--text);border-color:var(--accent-line)}.part-chip.is-faulty{color:#ffc2ca;background:var(--err-soft);border-color:#ff6f8173}#repair-feedback{top:auto;bottom:20px;right:calc(var(--gutter) + 346px);width:360px}.task-marker.is-offscreen{opacity:0}.results__grid--4{grid-template-columns:repeat(4,1fr)}@media (width<=820px){.results__grid--4{grid-template-columns:repeat(2,1fr)}}.recap__title{font-size:calc((14px) * var(--fs,1));margin:18px 0 8px;font-weight:600}@media (width<=1100px){.repair-side{width:290px}#repair-feedback{right:calc(var(--gutter) + 306px);width:320px}}@media (width<=820px){.repair-card{width:auto;max-height:54dvh;animation-name:slide-up;inset:auto 8px 8px}.repair-card.is-catalog{max-height:64dvh}.repair-card__sheet{display:inline-grid}.repair-side{top:calc(var(--topbar-h) + 6px);z-index:12;width:auto;max-height:40dvh;display:none;left:8px;right:8px}.repair-side.is-open{display:block}.repair-side__close{display:inline-grid}#repair-feedback{top:calc(var(--topbar-h) + 6px);width:auto;bottom:auto;left:8px;right:8px}}@media (width<=1180px){.apps .modes__btn [data-icon]{display:none}.modes__btn{padding:8px 13px}}@media (width<=820px){:root{--topbar-h:100px}body[data-app=home]{--topbar-h:58px}.topbar{grid-template-rows:58px 42px;grid-template-columns:auto 1fr auto;gap:0 6px}.nav{display:contents}.brand{grid-area:1/1}.apps{grid-area:1/2;justify-self:center}.submodes{grid-area:2/1/auto/-1;place-self:start center}.topbar__actions{grid-area:1/3}.apps [data-app-btn=body] .nav__label{display:none}.apps [data-app-btn=body] .nav__short{display:inline}}.hub-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.academy+.academy+.academy{animation-delay:.34s}.academy+.academy+.academy .academy__art{animation-delay:-1.5s}.x--scan{animation:body-scan 3.4s var(--ease-in-out) infinite}@keyframes body-scan{0%,8%{opacity:0;transform:translateY(196px)}15%{opacity:1}85%{opacity:1}92%,to{opacity:0;transform:translateY(4px)}}.academy:hover .x--head,.academy:focus-visible .x--head{transform:translateY(-8px)}.academy:hover .x--arm-l,.academy:focus-visible .x--arm-l{transform:translate(-10px,2px)}.academy:hover .x--arm-r,.academy:focus-visible .x--arm-r{transform:translate(10px,2px)}.academy:hover .x--leg-l,.academy:focus-visible .x--leg-l{transform:translate(-6px,8px)}.academy:hover .x--leg-r,.academy:focus-visible .x--leg-r{transform:translate(6px,8px)}@media (width<=1100px){.hub-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=820px){.hub-cards{grid-template-columns:1fr}}#body-app .info__latin{font-size:calc((12.5px) * var(--fs,1));color:var(--text-3);margin:2px 0 0;font-style:italic}#body-app .info__title+.info__latin{margin-top:4px}#body-app .info__tagline{margin-top:6px}.info__p{font-size:calc((14px) * var(--fs,1));color:var(--text-2);margin:0;line-height:1.6}.chip-row{flex-wrap:wrap;gap:6px;display:flex}.chip-row .chip svg{width:13px;height:13px}.chip--primary{color:#ffd6d0;background:#ff281e29;border-color:#ff3c2d80}.chip--secondary{color:#fff0c2;background:#ffc4141f;border-color:#ffc4146b}.chip--stabilizer{color:#d3e6ff;background:#2882ff1f;border-color:#4696ff66}.chip--primary:hover{background:#ff281e47;border-color:#ff3c2dbf}.chip--secondary:hover{background:#ffc41438}.chip--stabilizer:hover{background:#2882ff38}.dot{border-radius:50%;width:8px;height:8px;display:inline-block}.dot--primary{background:#ff2418;animation:.72s step-end infinite role-blink;box-shadow:0 0 8px #ff2418}.dot--secondary{background:#ffc414;animation:.72s step-end -.36s infinite role-blink;box-shadow:0 0 8px #ffc414cc}.dot--stabilizer{background:#3d8bff;box-shadow:0 0 6px #3d8bffb3}@keyframes role-blink{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.dot--primary,.dot--secondary{animation:none}}.attach{gap:6px;display:grid}.attach__row{font-size:calc((13.5px) * var(--fs,1));color:var(--text-2);background:var(--surface-raised);border:1px solid var(--border);border-radius:12px;grid-template-columns:76px 1fr;gap:10px;padding:9px 12px;line-height:1.45;display:grid}.attach__k{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));letter-spacing:.1em;text-transform:uppercase;color:var(--accent-2);padding-top:2px;font-weight:600}.specs--one{grid-template-columns:1fr}.spec--row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.spec--row dt{font-size:calc((13px) * var(--fs,1));color:var(--text-2);margin:0}.spec--row dd{font-family:var(--mono);font-size:calc((12.5px) * var(--fs,1));white-space:nowrap}.specs--3{grid-template-columns:repeat(3,1fr)}.specs--gap{margin-top:8px}.steps-list{counter-reset:step;gap:8px;margin:0;padding:0;list-style:none;display:grid}.steps-list li{counter-increment:step;font-size:calc((14px) * var(--fs,1));grid-template-columns:24px 1fr;gap:10px;line-height:1.45;display:grid}.steps-list li:before{content:counter(step);width:22px;height:22px;font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:#e5e2ff;background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:50%;place-items:center;font-weight:600;display:grid}.error-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.error-list li{font-size:calc((13.5px) * var(--fs,1));color:var(--text-2);grid-template-columns:18px 1fr;gap:9px;line-height:1.45;display:grid}.error-list svg{width:16px;height:16px;color:var(--err);margin-top:1px}.feel{border-radius:var(--radius);font-size:calc((13.5px) * var(--fs,1));color:#ffe0d8;background:#ff5a3c14;border:1px solid #ff6e5040;grid-template-columns:22px 1fr;gap:10px;padding:12px 14px;line-height:1.5;display:grid}.feel svg{color:#ff7a5c;width:20px;height:20px}.atlas-move,.exo-add{margin-top:16px}.atlas{width:286px}.seg--tabs{margin:0 12px 10px}.seg--tabs .seg__btn{font-size:calc((12px) * var(--fs,1));flex:1;padding:0 6px}.atlas-dot{color:var(--sys)}.atlas-dot i{background:var(--sys);width:12px;height:12px;box-shadow:0 0 12px color-mix(in srgb, var(--sys) 60%, transparent);border-radius:50%}.atlas-item{grid-template-columns:22px 1fr auto}.atlas-item__icon{width:18px;height:18px;color:var(--text-3)}.atlas-item__icon svg{width:16px;height:16px}.atlas-item.is-active .atlas-item__icon{color:#cfc9ff}.atlas-item__kind{font-family:var(--mono);font-size:calc((10px) * var(--fs,1));color:var(--text-3)}.atlas-flat{padding-left:0}.atlas-flat:before{display:none}#atlas-dock .seg--text .seg__btn{height:32px}body[data-app=body] .info .chip{max-width:100%}.training{width:318px}.train-groups{flex-wrap:wrap;gap:5px;padding:0 12px 10px;display:flex}.train-chip{font-size:calc((12px) * var(--fs,1));color:var(--text-2);border:1px solid var(--border);background:#ffffff0a;border-radius:999px;padding:5px 10px;font-weight:500;transition:color .2s,background .2s,border-color .2s}.train-chip:hover{color:var(--text)}.train-chip[aria-checked=true]{color:#e2deff;background:var(--accent-soft);border-color:var(--accent-line)}.train-list{align-content:start;gap:4px;display:grid}.exo-card{transition:background .2s var(--ease), border-color .2s var(--ease);border:1px solid #0000;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:4px;padding-right:6px;display:grid}.exo-card:hover{background:var(--surface-hover)}.exo-card.is-active{background:var(--accent-soft);border-color:var(--accent-line)}.exo-card__main{text-align:left;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;min-width:0;padding:7px 4px 7px 8px;display:grid}.exo-card__icon{width:32px;height:32px;color:var(--text-2);border:1px solid var(--border);background:#ffffff0a;border-radius:10px;place-items:center;display:grid}.exo-card__icon svg{width:17px;height:17px}.exo-card.is-active .exo-card__icon{color:#d6d0ff;border-color:var(--accent-line)}.exo-card__text{flex-direction:column;min-width:0;display:flex}.exo-card__name{font-size:calc((13.5px) * var(--fs,1));white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.exo-card__meta{font-size:calc((12px) * var(--fs,1));color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.exo-card__level{gap:2px;display:flex}.exo-card__level i{background:var(--accent-2);border-radius:2px;width:4px;height:10px}.exo-card__level i.off{background:#ffffff1f}.exo-card__add{width:30px;height:30px;color:var(--text-2);border:1px solid var(--border-strong);transition:color .2s, background .2s, border-color .2s, transform .2s var(--ease);background:#ffffff0d;border-radius:9px;place-items:center;display:grid}.exo-card__add svg{width:15px;height:15px}.exo-card__add:hover{color:#fff;border-color:var(--accent-line);background:#8e80ff4d;transform:scale(1.06)}.exo-card__add.is-added{color:#0b0c14;background:var(--ok);border-color:var(--ok)}#train-dock .icon-btn svg{width:17px;height:17px}.btn--session{gap:8px}.btn--session b{min-width:20px;height:20px;font-size:calc((11.5px) * var(--fs,1));color:var(--text-2);background:#ffffff14;border-radius:999px;place-items:center;padding:0 5px;display:inline-grid}.btn--session.has-items b{color:#0b0c14;background:var(--ok)}.btn--session.is-bump b{animation:bump .5s var(--ease)}@keyframes bump{40%{transform:scale(1.45)}}.session{right:var(--gutter);z-index:14;width:384px;max-height:calc(100dvh - var(--topbar-h) - 120px);scrollbar-width:thin;animation:session-in .45s var(--ease) both;padding:16px 16px 18px;position:fixed;bottom:90px;overflow-y:auto}@keyframes session-in{0%{opacity:0;transform:translateY(16px)}}#body-train.is-session .info{opacity:0;pointer-events:none}.session__head{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.session__title{font-family:var(--display);font-size:calc((20px) * var(--fs,1));margin:4px 0 0;font-weight:600}.session__list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.session-item{background:var(--surface-raised);border:1px solid var(--border);border-radius:12px;grid-template-columns:26px 1fr auto;align-items:center;gap:10px;padding:8px 8px 8px 10px;display:grid}.session-item__num{width:24px;height:24px;font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:#e5e2ff;border:1.5px solid var(--accent-line);border-radius:50%;place-items:center;display:grid}.session-item__body{min-width:0}.session-item__name{font-size:calc((13.5px) * var(--fs,1));text-align:left;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-weight:600;overflow:hidden}.session-item__name:hover{color:var(--accent-2)}.session-item__ctrl{font-size:calc((12px) * var(--fs,1));color:var(--text-3);flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:4px;display:flex}.stepper{border:1px solid var(--border);border-radius:8px;align-items:center;gap:2px;padding:1px;display:inline-flex}.stepper button{width:20px;height:20px;color:var(--text-2);border-radius:6px;place-items:center;display:grid}.stepper button:hover{color:var(--text);background:var(--surface-hover)}.stepper svg{width:12px;height:12px}.stepper b{text-align:center;min-width:14px;color:var(--text)}.session-item__rest{align-items:center;gap:4px;display:inline-flex}.session-item__rest svg{width:13px;height:13px}.session-item__move{gap:2px;display:flex}.session-item__move .icon-btn{border-radius:8px;width:28px;height:28px}.session-item__move .icon-btn svg{width:14px;height:14px}.session-item__move .icon-btn:disabled{opacity:.25;pointer-events:none}.session__stats{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px;display:grid}.session__stats .stat{padding:10px}.session__stats .stat b{font-size:calc((15.5px) * var(--fs,1))}.session__stats .stat span{font-size:calc((11px) * var(--fs,1))}.session__groups{flex-wrap:wrap;gap:4px;margin-top:10px;display:flex}.gchip{font-size:calc((11px) * var(--fs,1));color:var(--text-3);border:1px dashed var(--border-strong);border-radius:999px;padding:3px 8px}.gchip.is-on{color:#d8fff0;background:var(--ok-soft);border:1px solid #45d99e73}.session__actions{justify-content:space-between;align-items:center;margin-top:14px;display:flex}.session__empty{font-size:calc((13.5px) * var(--fs,1));color:var(--text-2);margin:0 0 12px;line-height:1.55}.session__presets{border-top:1px solid var(--border);margin-top:14px;padding-top:12px}.session__presets .chip-row{margin-top:8px}.session-player{z-index:15;width:min(460px,100vw - 20px);animation:dock-in .6s var(--ease) both;padding:14px 18px 16px;position:fixed;bottom:90px;left:50%;transform:translate(-50%)}#body-train.is-playing .training{opacity:.35}.player__top{justify-content:space-between;align-items:center;display:flex}.player__top .icon-btn{width:30px;height:30px}.player__progress{gap:4px;margin:8px 0 10px;display:flex}.player__progress i{background:#ffffff14;border-radius:4px;flex:1;height:4px}.player__progress i.done{background:var(--ok)}.player__progress i.current{background:var(--grad)}.player__title{font-family:var(--display);font-size:calc((22px) * var(--fs,1));margin:0;font-weight:600}.player__set{font-size:calc((14.5px) * var(--fs,1));color:var(--text-2);margin:6px 0 0}.player__set b{color:var(--text)}.player__cue{font-size:calc((13px) * var(--fs,1));color:#ffd9cf;gap:8px;margin:8px 0 0;line-height:1.5;display:flex}.player__cue svg{color:#ff7a5c;flex:none;width:17px;height:17px}.player__actions{justify-content:space-between;align-items:center;gap:10px;margin-top:14px;display:flex}.player__next{border-top:1px solid var(--border);font-size:calc((12.5px) * var(--fs,1));color:var(--text-3);margin:12px 0 0;padding-top:10px}.player__next b{color:var(--text-2)}.player__rest{grid-template-columns:96px 1fr;align-items:center;gap:16px;margin-top:10px;display:grid}.player__rest .btn{margin-top:10px}.ring{--p:0;background:radial-gradient(closest-side, var(--surface-strong) 80%, transparent 81%), conic-gradient(var(--accent-2) calc(var(--p) * 1%), #ffffff14 0);border-radius:50%;place-items:center;width:96px;height:96px;display:grid}.ring span{font-family:var(--mono);font-size:calc((20px) * var(--fs,1));font-weight:600}.player__end{text-align:center;padding:6px 0 2px}.player__end h3{font-family:var(--display);font-size:calc((22px) * var(--fs,1));margin:10px 0 4px}.player__end p{color:var(--text-2);font-size:calc((13.5px) * var(--fs,1));margin:0 0 8px}.player__hint{font-size:calc((12.5px) * var(--fs,1))!important;color:var(--text-3)!important}.player__badge{color:#0b0c14;background:var(--ok);border-radius:50%;place-items:center;width:52px;height:52px;display:inline-grid;box-shadow:0 0 30px #45d99e80}.player__badge svg{width:26px;height:26px}.weight-form,.weight-results{top:calc(var(--topbar-h) + 12px);max-height:calc(100dvh - var(--topbar-h) - 110px);scrollbar-width:thin;scrollbar-color:#ffffff1a transparent;padding:16px 16px 18px;position:fixed;overflow-y:auto}.weight-form{left:var(--gutter);width:330px;animation:slide-left .7s var(--ease) both}.weight-results{right:var(--gutter);width:390px;animation:slide-right .7s var(--ease) both}@keyframes slide-right{0%{opacity:0;transform:translate(24px)}}.wsec+.wsec{border-top:1px solid var(--border);margin-top:16px;padding-top:14px}.wsec__title{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);align-items:center;gap:8px;margin:0 0 12px;font-weight:600;display:flex}.wsec__title svg{width:15px;height:15px;color:var(--accent-2)}.wfold__head{text-align:left;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 10px;width:100%;margin:-4px 0;padding:4px 0;display:grid}.wfold__head .wsec__title{color:var(--text-2);margin:0;transition:color .2s}.wfold__head:hover .wsec__title,.wfold.is-open .wfold__head .wsec__title{color:var(--text)}.wfold__sum{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;grid-column:1;overflow:hidden}.wfold__chev{width:28px;height:28px;color:var(--text-2);transition:transform .25s var(--ease), background .2s;background:#ffffff0a;border-radius:8px;grid-area:1/2/span 2;place-items:center;display:grid;transform:rotate(90deg)}.wfold__head:hover .wfold__chev{background:#ffffff14}.wfold__chev svg{width:16px;height:16px}.wfold.is-open .wfold__chev{transform:rotate(-90deg)}.wfold.is-open .wfold__sum{display:none}.wfold__body{padding-top:14px;display:none}.wfold.is-open .wfold__body{display:block}.field{grid-template-columns:1fr auto;align-items:center;gap:4px 10px;margin-bottom:12px;display:grid}.field label,.field__label{font-size:calc((13px) * var(--fs,1));color:var(--text-2)}.field__value{font-family:var(--mono);font-size:calc((13px) * var(--fs,1));color:var(--text);align-items:baseline;gap:4px;display:inline-flex}.field__value input{width:64px;height:28px;font:inherit;text-align:right;color:var(--text);border:1px solid var(--border);background:#ffffff0a;border-radius:8px;outline:none;padding:0 8px}.field__value input:focus{border-color:var(--accent-line)}.field__value small{color:var(--text-3);font-size:calc((11px) * var(--fs,1))}.field input[type=range]{grid-column:1/-1;width:100%}.nstep{align-items:center;gap:6px;display:inline-flex}.nstep__btn{color:#e2deff;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;width:30px;height:30px;transition:color .2s, border-color .2s, box-shadow .25s, transform .12s var(--ease), opacity .2s;background:linear-gradient(160deg,#8e80ff42,#52d3ff12 70%),#090b14eb;border:1px solid #8e80ff80;border-radius:10px 3px;flex:none;place-items:center;display:grid;position:relative;box-shadow:inset 0 0 12px #8e80ff38}.nstep__btn:before{content:"";pointer-events:none;border-top:1px solid #ffffff59;border-left:1px solid #ffffff59;border-radius:5px 0 0;width:7px;height:7px;position:absolute;top:3px;left:3px}.nstep__btn svg{stroke-width:2.4px;filter:drop-shadow(0 0 4px #8e80ffcc);width:14px;height:14px}.nstep__btn:hover{color:#fff;border-color:#a094fff2;box-shadow:inset 0 0 14px #8e80ff61,0 0 14px #8e80ff73}.nstep__btn:active,.nstep__btn.is-pressed{color:#fff;background:linear-gradient(160deg,#8e80ff80,#52d3ff4d),#090b14eb;border-color:#52d3ff;transform:scale(.9);box-shadow:inset 0 0 16px #52d3ff80,0 0 18px #52d3ff8c}.nstep__btn.is-limit{opacity:.45}.nstep__btn:focus-visible{outline-offset:2px;outline:2px solid #52d3ff}.nstep__screen{background:repeating-linear-gradient(0deg,#ffffff06 0 1px,#0000 1px 3px),linear-gradient(#52d3ff12,#8e80ff0a),#04060ce0;border:1px solid #52d3ff3d;border-radius:8px;align-items:center;gap:5px;height:30px;padding:0 10px;transition:border-color .2s,box-shadow .2s;display:inline-flex;box-shadow:inset 0 0 12px #52d3ff14}.nstep__screen input{width:calc(var(--w,4ch) + 2px);height:100%;font-family:var(--mono);font-size:calc((14px) * var(--fs,1));font-variant-numeric:tabular-nums;text-align:right;color:#e3f7ff;text-shadow:0 0 8px #52d3ff8c;caret-color:#52d3ff;background:0 0;border:0;outline:none;padding:0;font-weight:600}.nstep__screen input::selection{background:#52d3ff59}.nstep__screen small{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));color:var(--text-3);white-space:nowrap}.nstep__screen:focus-within{border-color:#52d3ffbf;box-shadow:inset 0 0 14px #52d3ff2e,0 0 12px #52d3ff4d}.nstep.is-clamped .nstep__screen{animation:nstep-clamp .7s var(--ease)}@keyframes nstep-clamp{30%{border-color:var(--warn);box-shadow:0 0 12px #ffc56b80}}input.wrange{height:22px}input.wrange::-webkit-slider-runnable-track{background:linear-gradient(90deg, #8e80ff 0%, #52d3ff var(--p), #ffffff14 var(--p));border-radius:3px;height:6px;box-shadow:0 0 10px #52d3ff29}input.wrange::-moz-range-track{background:#ffffff14;border-radius:3px;height:6px}input.wrange::-moz-range-progress{background:linear-gradient(90deg,#8e80ff,#52d3ff);border-radius:3px;height:6px}input.wrange::-webkit-slider-thumb{background:#0b0f1c;border:2px solid #52d3ff;border-radius:3px;width:15px;height:15px;margin-top:-4.5px;transform:rotate(45deg);box-shadow:0 0 10px #52d3ffd9,inset 0 0 4px #52d3ff99}input.wrange::-moz-range-thumb{background:#0b0f1c;border:2px solid #52d3ff;border-radius:3px;width:11px;height:11px;transform:rotate(45deg);box-shadow:0 0 10px #52d3ffd9}input.wrange:active::-webkit-slider-thumb{transform:rotate(45deg)scale(1.2)}input.wrange:focus-visible{outline:none}input.wrange:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px #52d3ff59,0 0 12px #52d3ffe6}.field__hint{font-size:calc((12px) * var(--fs,1));color:var(--text-3);grid-column:1/-1}.wseg{border:1px solid var(--border);background:#ffffff0a;border-radius:12px;gap:2px;padding:3px;display:flex}.wseg button{height:30px;font-size:calc((12.5px) * var(--fs,1));color:var(--text-3);border-radius:9px;flex:1;font-weight:600;transition:color .2s,background .2s}.wseg button:hover{color:var(--text)}.wseg button[aria-checked=true]{color:#e2deff;box-shadow:inset 0 0 0 1px var(--accent-line);background:#8e80ff38}.wseg--goal button[data-goal=lose][aria-checked=true]{color:#d7fff0;background:#45d99e29;box-shadow:inset 0 0 0 1px #45d99e80}.wseg--goal button[data-goal=gain][aria-checked=true]{color:#ffe9c9;background:#ffb34726;box-shadow:inset 0 0 0 1px #ffb34780}.field--full{grid-template-columns:1fr}.rcard{background:var(--surface-raised);border:1px solid var(--border);border-radius:16px;padding:14px}.rcard+.rcard{margin-top:10px}.rcard__head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.rcard__label{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-weight:600}.rcard__big{font-family:var(--display);font-size:calc((30px) * var(--fs,1));font-weight:600;line-height:1.1}.rcard__big small{font-size:calc((14px) * var(--fs,1));color:var(--text-3);font-weight:500}.rcard__text{font-size:calc((13px) * var(--fs,1));color:var(--text-2);margin:8px 0 0;line-height:1.55}.rcard__text b{color:var(--text)}.wdays{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:12px;display:grid}.wday{justify-items:center;gap:4px;display:grid}.wday b{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:var(--text-2);font-weight:500}.wday__bar{background:#ffffff0a;border-radius:8px;align-items:flex-end;width:100%;height:54px;display:flex;overflow:hidden}.wday__bar i{background:linear-gradient(#b1a7ff,#6f62e6);border-radius:8px;width:100%}.wday.is-sport .wday__bar i{background:linear-gradient(#ffb39e,#ff7a5c)}.wday__name{font-size:calc((11.5px) * var(--fs,1));color:var(--text-2);font-weight:600}.wday.is-today .wday__name{color:var(--accent-2)}.wdays__hint{align-items:flex-start;gap:6px;display:flex}.wdays__hint svg{width:15px;height:15px;color:var(--accent-2);flex:none;margin-top:2px}.bmi-tag{font-size:calc((12px) * var(--fs,1));color:var(--c);background:color-mix(in srgb, var(--c) 14%, transparent);border:1px solid color-mix(in srgb, var(--c) 45%, transparent);border-radius:999px;padding:3px 9px;font-weight:600}.bmi-bar{border-radius:6px;height:10px;margin:14px 0 20px;display:flex;position:relative;overflow:visible}.bmi-bar span{opacity:.8;height:100%}.bmi-bar span:first-child{border-radius:6px 0 0 6px}.bmi-bar span:last-of-type{border-radius:0 6px 6px 0}.bmi-bar__marker{width:4px;height:20px;transition:left .5s var(--ease);background:#fff;border-radius:3px;margin-left:-2px;position:absolute;top:-5px;box-shadow:0 0 12px #ffffffb3}.bmi-bar__ticks{font-family:var(--mono);font-size:calc((9.5px) * var(--fs,1));color:var(--text-3);position:absolute;top:14px;left:0;right:0}.bmi-bar__ticks i{font-style:normal;position:absolute;transform:translate(-50%)}.energy{gap:6px;margin-top:12px;display:grid}.energy__row{font-size:calc((13px) * var(--fs,1));color:var(--text-2);grid-template-columns:1fr auto;align-items:center;gap:4px 12px;display:grid}.energy__row b{font-family:var(--mono);font-size:calc((12.5px) * var(--fs,1));color:var(--text)}.energy__bar{background:#ffffff0f;border-radius:4px;grid-column:1/-1;height:6px;overflow:hidden}.energy__bar i{background:var(--c,var(--grad));height:100%;transition:width .5s var(--ease);border-radius:4px;display:block}.energy__row--total{border-top:1px solid var(--border);color:var(--text);padding-top:8px;font-weight:600}.delta{font-family:var(--mono);font-size:calc((12.5px) * var(--fs,1));border-radius:999px;padding:2px 8px}.delta--minus{color:#bff5df;background:var(--ok-soft)}.delta--plus{color:#ffe6c2;background:var(--warn-soft)}.delta--zero{color:var(--text-2);background:#ffffff0d}.proj{width:100%;height:auto;margin-top:10px;overflow:visible}.macros{grid-template-columns:110px 1fr;align-items:center;gap:14px;margin-top:10px;display:grid}.donut{width:110px;height:110px}.macro-list{gap:7px;display:grid}.macro{font-size:calc((13px) * var(--fs,1));color:var(--text-2);grid-template-columns:10px 1fr auto;align-items:center;gap:8px;display:grid}.macro i{background:var(--c);border-radius:3px;width:10px;height:10px}.macro b{font-family:var(--mono);font-size:calc((12.5px) * var(--fs,1));color:var(--text)}.macro small{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);grid-column:2/-1;margin-top:-4px}.extras{grid-template-columns:1fr 1fr;gap:6px;margin-top:12px;display:grid}.extra{border:1px solid var(--border);font-size:calc((12px) * var(--fs,1));color:var(--text-3);background:#ffffff08;border-radius:12px;grid-template-columns:26px 1fr;align-items:center;gap:8px;padding:9px 10px;display:grid}.extra svg{width:20px;height:20px;color:var(--accent-2)}.extra b{font-family:var(--mono);font-size:calc((13px) * var(--fs,1));color:var(--text);display:block}.learn{border:1px solid var(--border);border-radius:14px;margin-top:10px;overflow:hidden}.learn summary{font-size:calc((13.5px) * var(--fs,1));cursor:pointer;background:#ffffff06;align-items:center;gap:8px;padding:11px 14px;font-weight:600;list-style:none;display:flex}.learn summary::-webkit-details-marker{display:none}.learn summary svg{width:16px;height:16px;color:var(--accent-2)}.learn[open] summary .learn__chev{transform:rotate(90deg)}.learn__chev{transition:transform .3s var(--ease);margin-left:auto}.learn__body{font-size:calc((13px) * var(--fs,1));color:var(--text-2);padding:4px 14px 14px;line-height:1.6}.learn__body p{margin:8px 0 0}.learn__body b{color:var(--text)}.warn-box{font-size:calc((12.5px) * var(--fs,1));color:#f1e3c8;background:var(--warn-soft);border:1px solid #ffc56b40;border-radius:12px;grid-template-columns:20px 1fr;gap:10px;margin-top:10px;padding:11px 13px;line-height:1.5;display:grid}.warn-box svg{width:17px;height:17px;color:var(--warn)}.body-disclaimer{font-size:calc((12px) * var(--fs,1))!important;color:var(--text-3)!important}.weight-disclaimer{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);margin:12px 2px 0;line-height:1.5}.avatar-tune{top:calc(var(--topbar-h) + 12px);right:var(--gutter);z-index:13;width:390px;max-height:calc(100dvh - var(--topbar-h) - 110px);scrollbar-width:thin;scrollbar-color:#ffffff1a transparent;animation:slide-right .45s var(--ease) both;padding:14px 16px 10px;position:fixed;overflow-y:auto}.avatar-tune__head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}#body-weight.is-tuning .weight-results{visibility:hidden}.avatar-tune__acts{align-items:center;gap:6px;display:flex}.avatar-tune .icon-btn{border-radius:9px;width:30px;height:30px}.avatar-tune .icon-btn svg{width:14px;height:14px}.avatar-tune__grid{grid-template-columns:1fr 1fr;gap:2px 18px;display:grid}.avatar-tune .field{margin-bottom:8px}.avatar-tag{z-index:11;left:50%;top:calc(var(--topbar-h) + 18px);pointer-events:none;gap:8px;display:flex;position:fixed;transform:translate(-50%)}.avatar-tag span{font-family:var(--mono);font-size:calc((12px) * var(--fs,1));color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:5px 11px}.avatar-tag b{color:var(--text)}.weight-mtabs{display:none}.role-block+.role-block{margin-top:10px}.role-block__title{font-size:calc((12px) * var(--fs,1));color:var(--text-3);align-items:center;gap:7px;margin-bottom:6px;display:flex}.role-note{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);gap:8px;margin:12px 0 0;line-height:1.5;display:flex}.role-note svg{color:#ffd166;flex:none;width:15px;height:15px;margin-top:2px}.role-source{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);margin:8px 0 0}.role-source a{color:var(--text-2);text-underline-offset:2px;text-decoration:underline}.exo-role{font-size:calc((12px) * var(--fs,1));color:var(--text-3);align-items:center;gap:7px;margin:0 0 6px;display:flex}.chip-row+.exo-role{margin-top:10px}.train-sep{font-size:calc((11px) * var(--fs,1));letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin:8px 4px 2px;font-weight:600}.train-sep:first-child{margin-top:0}.exo-card--also .exo-card__meta{color:#ffd98a}.train-caption{top:calc(var(--topbar-h) + 14px);text-align:center;border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);background:#0c0c168c;border-radius:16px;flex-direction:column;align-items:center;gap:6px;width:max-content;max-width:min(560px,100vw - 780px);padding:9px 16px 10px;display:flex;position:fixed;left:50%;transform:translate(-50%)}#body-train .train-caption{pointer-events:none}.train-caption:empty{display:none}.train-caption.is-in{animation:caption-in .5s var(--ease) both}@keyframes caption-in{0%{opacity:0;transform:translate(-50%,-6px)}}.train-caption__name{font-size:calc((19px) * var(--fs,1));letter-spacing:-.01em;color:var(--text);font-weight:650}.train-caption__legend{font-size:calc((12px) * var(--fs,1));color:var(--text-2);flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.cap-pill{align-items:center;gap:6px;display:inline-flex}#body-train.is-playing .train-caption{display:none}.dock-toggle{white-space:nowrap;height:32px;padding:0 12px}.dock-toggle svg{width:15px;height:15px}.dock-toggle[aria-pressed=true]{color:#e2deff;background:var(--accent-soft);border-color:var(--accent-line)}.bone-labels{z-index:9;pointer-events:none;position:fixed;inset:0;overflow:hidden}.bone-labels__lines{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.bone-labels__lines path{fill:none;stroke:#e2deff8c;stroke-width:1px}.bone-labels__lines circle{fill:#e2deff}.bone-label{font:inherit;font-size:calc((12px) * var(--fs,1));line-height:calc((16px) * var(--fs,1));white-space:nowrap;color:var(--text);pointer-events:auto;cursor:pointer;will-change:transform;background:#0c0c169e;border:1px solid #ffffff1a;border-radius:7px;padding:1px 7px;transition:background .2s,border-color .2s;position:absolute;top:0;left:0}.bone-label:hover{background:var(--accent-soft);border-color:var(--accent-line)}body:not([data-app=body]) .bone-labels{display:none}.train-chips__sep{width:100%;height:0}.train-chip--warmup,.train-chip--stretch{align-items:center;gap:6px;display:inline-flex}.train-chip--warmup svg,.train-chip--stretch svg{width:13px;height:13px}.train-chip--warmup{color:#ffd2a6;border-color:#ff9f4359}.train-chip--stretch{color:#b8f5e9;border-color:#2ee6c552}.train-chip--warmup[aria-checked=true]{color:#fff1e2;background:#ff9f4333;border-color:#ff9f43b3}.train-chip--stretch[aria-checked=true]{color:#e6fffa;background:#2ee6c529;border-color:#2ee6c5a6}.train-intro{font-size:calc((12.5px) * var(--fs,1));color:var(--text-3);margin:0 4px 6px;line-height:1.5}.exo-card--warmup .exo-card__icon{color:#ffb36b}.exo-card--stretch .exo-card__icon{color:#5ff0d4}.train-caption__kind{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));letter-spacing:.12em;text-transform:uppercase}.train-caption__kind--warmup{color:#ffb36b}.train-caption__kind--stretch{color:#5ff0d4}.session-block{border:1px solid var(--border);background:#ffffff06;border-radius:14px;margin:8px 0;padding:8px 10px;transition:border-color .2s,background .2s}.session-block--warmup.is-on{background:#ff9f430f;border-color:#ff9f4352}.session-block--stretch.is-on{background:#2ee6c50d;border-color:#2ee6c54d}.session-block__toggle{text-align:left;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;width:100%;display:grid}.session-block__icon{background:#ffffff0d;border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.session-block--warmup .session-block__icon{color:#ffb36b}.session-block--stretch .session-block__icon{color:#5ff0d4}.session-block__icon svg{width:16px;height:16px}.session-block__text{gap:1px;display:grid}.session-block__text b{font-size:calc((13.5px) * var(--fs,1));color:var(--text)}.session-block__text small{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3)}.switch{background:#ffffff1f;border-radius:999px;width:34px;height:20px;transition:background .2s;position:relative}.switch i{width:14px;height:14px;transition:transform .25s var(--ease);background:#f3f4ff;border-radius:50%;position:absolute;top:3px;left:3px}.session-block--warmup.is-on .switch{background:#ff9f43bf}.session-block--stretch.is-on .switch{background:#2ee6c5b3}.session-block.is-on .switch i{transform:translate(14px)}.session-block__list{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.session-block__list .chip{font-size:calc((11.5px) * var(--fs,1));padding:3px 8px}.session-block:not(.is-on) .session-block__list{display:none}.player__kind--warmup{color:#ffb36b}.player__kind--stretch{color:#5ff0d4}.player__progress i.is-warmup{background:#ff9f432e}.player__progress i.is-stretch{background:#2ee6c529}.player__progress i.is-warmup.done{background:#ff9f43}.player__progress i.is-stretch.done{background:#2ee6c5}.player__timed--warmup .ring{background:radial-gradient(closest-side, var(--surface-strong) 80%, transparent 81%), conic-gradient(#ff9f43 calc(var(--p) * 1%), #ffffff14 0)}.player__timed--stretch .ring{background:radial-gradient(closest-side, var(--surface-strong) 80%, transparent 81%), conic-gradient(#2ee6c5 calc(var(--p) * 1%), #ffffff14 0)}.player__steps{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);gap:3px;margin:6px 0 0;padding-left:18px;line-height:1.4;display:grid}.stretch-link{margin-top:8px}@media (width<=1100px){.atlas{width:250px}.training{width:280px}.weight-form{width:300px}.weight-results,.avatar-tune{width:340px}}@media (width<=820px){#body-app .seg--text .seg__btn[aria-checked=false]{display:grid}#body-app .dock{scrollbar-width:none;max-width:calc(100vw - 16px);overflow-x:auto}#body-app .dock .seg--text .seg__btn{font-size:calc((11.5px) * var(--fs,1));padding:0 8px}.atlas{width:auto;max-height:none;box-shadow:none;background:0 0;border:0;inset:auto 0 64px}.atlas .panel__head,.atlas .search{display:none}.atlas .seg--tabs{background:var(--surface);margin:0 10px 6px}#atlas-list{padding:0 10px 2px;display:block;overflow:auto hidden}#atlas-list .sys__parts{gap:6px;padding:0;display:flex}#atlas-list .sys__parts:before,#atlas-list .sys__group{display:none}#atlas-list .atlas-item{white-space:nowrap;background:var(--surface);border-color:var(--border);align-items:center;gap:7px;width:auto;display:inline-flex}#atlas-list .sys-item__name{overflow:visible}#train-views,#train-dock .dock__sep,#atlas-list .atlas-item__kind{display:none}#body-analyse:has(.info.is-open) .atlas{opacity:0;pointer-events:none}#body-analyse:has(.info.is-open) #atlas-dock{opacity:0;pointer-events:none}#body-train:has(.info.is-open) .training{opacity:0;pointer-events:none}#body-train:has(.info.is-open) #train-dock{opacity:0;pointer-events:none}#body-app .info{max-height:52dvh}.training{width:auto;max-height:none;box-shadow:none;transition:opacity .35s var(--ease);background:0 0;border:0;inset:auto 0 64px}.training .panel__head{display:none}.train-groups{scrollbar-width:none;flex-wrap:nowrap;padding:0 10px 6px;overflow-x:auto}.train-chip{background:var(--surface);flex:none}.train-list{scrollbar-width:none;gap:6px;padding:0 10px 2px;display:flex;overflow-x:auto}.exo-card{background:var(--surface);border-color:var(--border);flex:none;width:236px}.session{width:auto;max-height:70dvh;bottom:8px;left:8px;right:8px}.session-player{bottom:8px}#body-train.is-playing .training,#body-train.is-playing #train-dock{opacity:0;pointer-events:none}.weight-mtabs{z-index:12;display:flex;position:fixed;top:calc(46dvh - 44px);left:8px;right:8px}.weight-form,.weight-results{width:auto;max-height:none;inset:46dvh 8px 8px}#body-weight[data-mtab=form] .weight-results,#body-weight[data-mtab=results] .weight-form{display:none}#weight-dock{top:calc(var(--topbar-h) + 8px);border-radius:14px;flex-direction:column;align-items:stretch;gap:4px;max-width:none;padding:4px;animation:none;bottom:auto;left:auto;right:8px;transform:none}#weight-dock .seg{flex-direction:column}#weight-dock .seg--text .seg__btn{height:30px;padding:0 10px}#weight-dock .btn--small{height:32px;font-size:calc((12px) * var(--fs,1));padding:0 10px}#weight-dock .dock__sep,#avatar-rotate{display:none}.avatar-tag{top:calc(var(--topbar-h) + 8px);flex-direction:column;align-items:flex-start;gap:4px;left:10px;transform:none}.avatar-tag span{font-size:calc((11px) * var(--fs,1));padding:4px 9px}.avatar-tune{z-index:16;width:auto;max-height:none;animation:dock-in .4s var(--ease) both;inset:46dvh 8px 8px}.avatar-tune__grid{gap:2px 14px}#body-weight.is-tuning .weight-form,#body-weight.is-tuning .weight-mtabs{visibility:hidden}.macros{grid-template-columns:90px 1fr}.donut{width:90px;height:90px}}@media (width<=1180px){.train-caption{max-width:calc(100vw - 700px)}.train-caption__legend{gap:8px}}@media (width<=980px){.train-caption__legend{display:none}}@media (width<=820px){.train-caption{top:calc(var(--topbar-h) + 6px);gap:3px;max-width:calc(100vw - 16px);padding:6px 12px 7px}.train-caption__name{font-size:calc((15px) * var(--fs,1))}.train-caption__legend{font-size:calc((11px) * var(--fs,1));display:flex}.train-sep{background:var(--surface);border:1px solid var(--border);border-radius:999px;flex:none;align-self:center;margin:0 2px;padding:4px 8px}.bone-label{font-size:calc((10.5px) * var(--fs,1));line-height:calc((13px) * var(--fs,1));padding:1px 5px}#body-analyse.is-names .atlas{opacity:0;pointer-events:none}.train-intro,.train-chips__sep{display:none}.dock-toggle{font-size:calc((11.5px) * var(--fs,1));padding:0 9px}}.rcard--meals .rcard__head .rcard__label:last-child{color:var(--accent-2)}.meal-count{grid-template-columns:auto 1fr;align-items:center;gap:12px;margin-top:12px;display:grid}.mp-count button{min-width:34px;font-family:var(--mono)}.meal-mini{margin:12px 0 0;padding:0;list-style:none}.meal-mini li{border-top:1px solid var(--border);grid-template-columns:52px 1fr auto;align-items:center;gap:8px;padding:8px 0;display:grid}.meal-mini__time{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:var(--text-3)}.meal-mini__name{min-width:0;font-size:calc((12.5px) * var(--fs,1));line-height:1.3}.meal-mini__name b{font-weight:600;display:block}.meal-mini__name small{font-size:calc((12px) * var(--fs,1));color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.meal-mini__kcal{font-family:var(--mono);font-size:calc((13px) * var(--fs,1));text-align:right;font-weight:600}.meal-mini__kcal small{font-size:calc((10px) * var(--fs,1));color:var(--text-3);margin-left:3px;font-weight:400}.meal-open{width:100%;margin-top:12px}.meal-open svg{width:18px;height:18px}.mp-tag{font-family:var(--mono);font-size:calc((10px) * var(--fs,1));letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:2px 8px;font-weight:600}.mp-tag--meal{color:#ffd9b8;background:#ff9f5a21;border:1px solid #ff9f5a66}.mp-tag--snack{color:#c9f7ff;background:#52d3ff1c;border:1px solid #52d3ff61}#body-weight.is-menu:before{content:"";z-index:17;background:#0405099e;animation:.3s both fade-in;position:fixed;inset:0}#body-weight.is-menu>:not(.meal-plan){opacity:0;pointer-events:none}.meal-plan{z-index:18;top:calc(var(--topbar-h) + 12px);width:min(1240px, calc(100vw - 2 * var(--gutter)));background:var(--surface-strong);animation:mp-in .5s var(--ease) both;flex-direction:column;display:flex;position:fixed;bottom:14px;left:50%;overflow:hidden;transform:translate(-50%)}.meal-plan[hidden]{display:none}@keyframes mp-in{0%{opacity:0;transform:translate(-50%,18px)}}.mp-head{border-bottom:1px solid var(--border);background:radial-gradient(120% 140% at 0 0,#8e80ff24,#0000 55%),radial-gradient(90% 140% at 100% 0,#52d3ff1a,#0000 60%);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;padding:16px 20px 14px;display:flex;position:relative}.mp-head h2{font-family:var(--display);font-size:calc((24px) * var(--fs,1));margin:4px 0 0;font-weight:600}.mp-head h2 small{font-family:var(--mono);font-size:calc((13px) * var(--fs,1));color:var(--accent-2);margin-left:8px;font-weight:500}.mp-tools{align-items:center;gap:10px;display:flex}.mp-tools .btn svg{width:17px;height:17px}.mp-body{scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;flex:1;padding:16px 20px 22px;overflow-y:auto}.mp-day{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;display:grid}.mp-stat{background:var(--surface-raised);border:1px solid var(--border);--c:var(--ok);border-radius:14px;gap:2px;padding:10px 12px 11px;display:grid}.mp-stat.is-warn{--c:var(--warn)}.mp-stat__label{font-family:var(--mono);font-size:calc((10px) * var(--fs,1));letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.mp-stat__value{font-size:calc((12px) * var(--fs,1));color:var(--text-3)}.mp-stat__value b{font-family:var(--display);font-size:calc((21px) * var(--fs,1));color:var(--text);font-weight:600}.mp-stat__goal,.mp-stat__hint{font-size:calc((11px) * var(--fs,1));color:var(--text-3)}.mp-stat__bar{background:#ffffff12;border-radius:4px;height:4px;margin:5px 0 1px;overflow:hidden}.mp-stat__bar i{border-radius:inherit;background:var(--c);height:100%;box-shadow:0 0 10px color-mix(in srgb, var(--c) 60%, transparent);display:block}.mp-day+.warn-box{margin-top:10px}.mp-variety{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:8px;margin-top:10px;display:grid}.mp-var{border:1px dashed var(--border-strong);border-radius:14px;padding:10px 12px}.mp-var__k{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);align-items:center;gap:7px;display:flex}.mp-var__k svg{width:15px;height:15px;color:var(--accent-2)}.mp-var__k b{color:var(--text)}.mp-var__chips{flex-wrap:wrap;gap:4px;margin-top:7px;display:flex}.mp-chip{font-size:calc((11.5px) * var(--fs,1));color:var(--text-2);background:#ffffff0d;border-radius:999px;padding:2px 8px}.mp-legend{font-size:calc((12px) * var(--fs,1));color:var(--text-3);margin:12px 2px 0;line-height:2}.mp-legend .mp-tag{margin-right:4px}.mp-meals{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));align-items:start;gap:12px;margin-top:14px;display:grid}.mp-meal{border:1px solid var(--border);background:linear-gradient(#ffffff0b,#ffffff04);border-radius:18px;padding:14px 14px 10px;position:relative;overflow:hidden}.mp-meal:before{content:"";opacity:.8;background:linear-gradient(90deg,#ff9f5a,#ffc56b 50%,#0000);height:2px;position:absolute;inset:0 0 auto}.mp-meal--snack:before{background:linear-gradient(90deg,#52d3ff,#8e80ff 50%,#0000)}.mp-meal.is-new{animation:mp-new .9s var(--ease)}@keyframes mp-new{0%{border-color:var(--accent-line);box-shadow:0 0 0 3px #8e80ff40}}.mp-meal__head{align-items:center;gap:8px;display:flex}.mp-meal__time{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:var(--text-3)}.mp-meal__slot{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);font-weight:600}.mp-meal__kcal{font-size:calc((12px) * var(--fs,1));color:var(--text-3);white-space:nowrap;margin-left:auto}.mp-meal__kcal b{font-family:var(--display);font-size:calc((19px) * var(--fs,1));color:var(--text)}.mp-meal__title{font-family:var(--display);font-size:calc((19px) * var(--fs,1));margin:10px 0 0;font-weight:600;line-height:1.2}.mp-meal__sub{font-size:calc((13px) * var(--fs,1));color:var(--text-2);margin:3px 0 0;line-height:1.45}.mp-sauce{color:#e2deff}.mp-meal__meta{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.mp-meal__meta span{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);background:#ffffff0a;border-radius:8px;align-items:center;gap:5px;padding:2px 8px;display:inline-flex}.mp-meal__meta svg{width:13px;height:13px}.mp-meal__meta .mp-veg{color:#c4f5df;background:var(--ok-soft)}.mp-macros{grid-template-columns:repeat(5,1fr);gap:4px;margin-top:12px;display:grid}.mp-macros span{font-size:calc((10.5px) * var(--fs,1));color:var(--text-3);display:grid}.mp-macros b{font-family:var(--mono);font-size:calc((13px) * var(--fs,1));color:var(--c)}.mp-macrobar{border-radius:4px;gap:2px;height:5px;margin-top:8px;display:flex;overflow:hidden}.mp-ings{margin:12px 0 0;padding:0;list-style:none}.mp-ings li{font-size:calc((13px) * var(--fs,1));border-top:1px solid #ffffff0b;grid-template-columns:8px 1fr auto 38px;align-items:baseline;gap:4px 9px;padding:6px 0;display:grid}.mp-ings li>i{background:var(--c);border-radius:50%;width:7px;height:7px;transform:translateY(-1px)}.mp-ings .mp-ings__head{font-family:var(--mono);font-size:calc((9.5px) * var(--fs,1));letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);border-top:0;padding-top:0}.mp-ings .mp-ings__head span:nth-child(n+3){text-align:right}.mp-ing__name small{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);margin-top:1px;display:block}.mp-ing__qty{font-family:var(--mono);font-size:calc((12.5px) * var(--fs,1));text-align:right;white-space:nowrap;font-weight:600}.mp-ing__kcal{font-family:var(--mono);font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);text-align:right}.mp-det{border:1px solid var(--border);border-radius:12px;margin-top:8px}.mp-det summary{font-size:calc((13px) * var(--fs,1));cursor:pointer;align-items:center;gap:8px;padding:9px 12px;font-weight:600;list-style:none;display:flex}.mp-det summary::-webkit-details-marker{display:none}.mp-det summary svg{width:15px;height:15px;color:var(--accent-2)}.mp-det[open] summary .learn__chev{transform:rotate(90deg)}.mp-steps,.mp-why{font-size:calc((13px) * var(--fs,1));color:var(--text-2);margin:0;padding:0 14px 12px 32px;line-height:1.55}.mp-steps li+li,.mp-why li+li{margin-top:6px}.mp-steps li::marker{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:var(--accent-2)}.mp-goaltip{font-size:calc((12.5px) * var(--fs,1));color:#e2deff;background:var(--accent-soft);border-radius:10px;margin:0 12px 12px;padding:9px 11px;line-height:1.5}.mp-swap{margin-top:6px}.mp-swap svg{width:15px;height:15px}.mp-learn{margin-top:14px}@media (width<=820px){.meal-plan{top:calc(var(--topbar-h) + 6px);border-radius:16px;width:auto;animation-name:mp-in-mobile;bottom:6px;left:6px;right:6px;transform:none}.mp-head{padding:12px 56px 10px 12px}.mp-head h2{font-size:calc((19px) * var(--fs,1))}.mp-head h2 small{margin:2px 0 0;display:block}.mp-tools{gap:8px;width:100%}.mp-tools>.field__label{display:none}.mp-tools .mp-count{flex:1}.mp-tools [data-menu-close]{position:absolute;top:10px;right:10px}.mp-body{padding:12px 10px 18px}.mp-day{grid-template-columns:repeat(2,1fr)}.mp-stat__value b{font-size:calc((18px) * var(--fs,1))}.mp-meals{grid-template-columns:1fr}.mp-meal{padding:12px 11px 8px}.mp-macros{grid-template-columns:repeat(3,1fr);row-gap:6px}}@keyframes mp-in-mobile{0%{opacity:0;transform:translateY(18px)}}#body-meals:before{content:"";pointer-events:none;background:#04050980;position:fixed;inset:0}.planner{z-index:12;top:calc(var(--topbar-h) + 12px);width:min(1420px, calc(100vw - 2 * var(--gutter)));background:var(--surface-strong);animation:mp-in .6s var(--ease) both;flex-direction:column;display:flex;position:fixed;bottom:14px;left:50%;overflow:hidden;transform:translate(-50%)}.pl-head{background:radial-gradient(120% 140% at 0 0,#8e80ff24,#0000 55%),radial-gradient(90% 140% at 100% 0,#52d3ff1a,#0000 60%);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;padding:16px 20px 12px;display:flex}.pl-head h2{font-family:var(--display);font-size:calc((23px) * var(--fs,1));margin:4px 0 0;font-weight:600}.pl-tabs button{height:34px;font-size:calc((13px) * var(--fs,1));white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:0 14px;display:inline-flex}.pl-tabs svg{width:15px;height:15px}.pl-bar{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#ffffff04;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:10px 20px;display:flex}.pl-bar__group{align-items:center;gap:10px;display:flex}.pl-bar .btn svg{width:16px;height:16px}.pl-bar .btn--primary{margin-left:auto}.pl-toggle{max-width:420px;font-size:calc((12.5px) * var(--fs,1));text-align:left;color:var(--text-2);border:1px solid var(--border);border-radius:12px;align-items:center;gap:10px;padding:6px 10px;line-height:1.35;transition:border-color .2s,background .2s;display:flex}.pl-toggle:hover{border-color:var(--border-strong)}.pl-toggle b{color:var(--text)}.pl-toggle .switch{flex:none}.pl-toggle[aria-pressed=true]{border-color:var(--accent-line);background:var(--accent-soft)}.pl-toggle[aria-pressed=true] .switch{background:#8e80ffd9}.pl-toggle[aria-pressed=true] .switch i{transform:translate(14px)}.pl-progress{min-width:150px;font-size:calc((12.5px) * var(--fs,1));color:var(--text-3);flex-direction:column;gap:5px;display:inline-flex;position:relative}.pl-progress b{color:var(--text)}.pl-progress i{background:linear-gradient(90deg, var(--ok) var(--p), #ffffff14 var(--p));border-radius:4px;height:4px;display:block}.pl-banner{font-size:calc((13px) * var(--fs,1));color:var(--text-2);background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:10px 20px 0;padding:10px 14px;display:flex}.pl-banner>svg{width:18px;height:18px;color:var(--accent-2)}.pl-banner span{flex:1;min-width:220px}.pl-banner b{color:var(--text)}.pl-body{scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;flex:1;padding:14px 20px 22px;overflow:auto}.pl-grid{grid-template-columns:132px repeat(7,minmax(0,1fr));gap:6px;display:grid}.pl-corner,.pl-dayhead{z-index:2;border:1px solid var(--border);background:#121620;border-radius:12px;align-content:end;gap:3px;padding:8px 10px 9px;display:grid;position:sticky;top:-14px}.pl-corner span{font-family:var(--mono);font-size:calc((10px) * var(--fs,1));letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.pl-corner b{font-family:var(--mono);font-size:calc((13px) * var(--fs,1));color:var(--accent-2)}.pl-dayhead__name{font-size:calc((13px) * var(--fs,1));color:var(--text-2);font-weight:600}.pl-dayhead__name b{font-family:var(--display);font-size:calc((17px) * var(--fs,1));color:var(--text)}.pl-dayhead__kcal{font-family:var(--mono);font-size:calc((12px) * var(--fs,1));color:var(--text-2)}.pl-dayhead__bar,.pl-track__bar{background:#ffffff12;border-radius:4px;height:4px;display:block;overflow:hidden}.pl-dayhead__bar i,.pl-track__bar i{border-radius:inherit;background:var(--ok);height:100%;display:block;box-shadow:0 0 8px #45d99e99}.pl-dayhead.is-today{border-color:var(--accent-line);background:linear-gradient(#8e80ff33,#121620)}.pl-dayhead.is-today .pl-dayhead__name:after{content:"aujourd’hui";font-family:var(--mono);font-size:calc((9.5px) * var(--fs,1));letter-spacing:.06em;text-transform:uppercase;color:var(--accent-2);margin-left:6px;font-weight:500}.pl-rowhead{align-content:center;justify-items:start;gap:3px;padding:6px 4px;display:grid}.pl-rowhead span{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));color:var(--text-3)}.pl-rowhead b{font-size:calc((12.5px) * var(--fs,1));line-height:1.25}.pl-rowhead small{font-size:calc((12px) * var(--fs,1));color:var(--text-3)}.pl-cell{border:1px solid var(--border);min-height:76px;transition:border-color .2s, background .2s, transform .2s var(--ease);background:linear-gradient(#ffffff0d,#ffffff05);border-radius:12px;position:relative}.pl-cell:before{content:"";opacity:.75;background:linear-gradient(90deg,#ff9f5a,#ffc56b);border-radius:0 0 2px 2px;height:2px;position:absolute;top:0;left:10px;right:10px}.pl-cell--snack:before{background:linear-gradient(90deg,#52d3ff,#8e80ff)}.pl-cell:hover{border-color:var(--border-strong);background:linear-gradient(#ffffff14,#ffffff08)}.pl-cell__open{width:100%;height:100%;min-height:inherit;text-align:left;border-radius:inherit;align-content:start;gap:5px;padding:10px 34px 9px 10px;display:grid}.pl-cell__open:focus-visible{outline:2px solid var(--accent-2);outline-offset:1px}.pl-cell__name{font-size:calc((13px) * var(--fs,1));-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.pl-cell__meta{font-family:var(--mono);font-size:calc((11.5px) * var(--fs,1));color:var(--text-2);flex-wrap:wrap;align-items:center;gap:4px;display:flex}.pl-cell__meta em{color:#e2deff;background:var(--accent-soft);border-radius:6px;padding:0 5px;font-style:normal}.pl-cell__meta .pl-pin{place-items:center;padding:1px 3px;display:inline-grid}.pl-cell__meta svg{width:11px;height:11px}.pl-eat{color:#0000;width:24px;height:24px;transition:background .2s, border-color .2s, color .2s, transform .2s var(--ease);border:1.5px solid #ffffff38;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:6px;right:6px}.pl-eat svg{width:14px;height:14px}.pl-eat:hover{color:var(--text-3);border-color:var(--ok)}.pl-eat:active{transform:scale(.88)}.pl-cell.is-eaten{background:linear-gradient(#45d99e1f,#45d99e08);border-color:#45d99e73}.pl-cell.is-eaten .pl-eat{color:#06140e;background:var(--ok);border-color:var(--ok);box-shadow:0 0 12px #45d99e8c}.pl-cell.is-free{border-style:dashed;border-color:var(--border-strong);background:0 0}.pl-cell.is-free:before,.pl-cell.is-empty:before{display:none}.pl-cell.is-free .pl-cell__name{color:var(--text-2)}.pl-cell.is-empty{background:0 0;border-style:dashed}.pl-mobile{display:none}.pl-warn{margin:0 0 12px}.pl-help{font-size:calc((13px) * var(--fs,1));color:var(--text-2);gap:10px;margin:14px 2px 0;line-height:1.55;display:flex}.pl-help>svg{width:17px;height:17px;color:var(--accent-2);flex:none}.pl-help span svg{vertical-align:-2px;width:13px;height:13px;display:inline-block}.pl-help b{color:var(--text-2)}.pl-drawer-wrap{z-index:5;background:#04050980;animation:.25s both fade-in;position:absolute;inset:0}.pl-drawer{border-left:1px solid var(--border-strong);width:min(500px,100%);animation:pl-drawer-in .4s var(--ease) both;background:#0e1119;flex-direction:column;display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-30px 0 60px -30px #000c}@keyframes pl-drawer-in{0%{opacity:0;transform:translate(40px)}}.pl-drawer__head{align-items:center;gap:10px;padding:14px 14px 10px 16px;display:flex}.pl-drawer__head>div{flex:1;min-width:0}.pl-drawer__head h3{font-family:var(--display);font-size:calc((19px) * var(--fs,1));margin:3px 0 0;font-weight:600;line-height:1.2}.pl-actions{border-bottom:1px solid var(--border);grid-template-columns:repeat(2,1fr);gap:6px;padding:0 14px 12px 16px;display:grid}.pl-act{height:38px;font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);border:1px solid var(--border);background:#ffffff0a;border-radius:11px;align-items:center;gap:8px;padding:0 12px;font-weight:600;transition:color .2s,background .2s,border-color .2s;display:flex}.pl-act svg{width:16px;height:16px;color:var(--accent-2)}.pl-act:hover{color:var(--text);border-color:var(--border-strong)}.pl-act[data-act=eat][aria-pressed=true]{color:#d7fff0;background:var(--ok-soft);border-color:#45d99e80}.pl-act[data-act=eat][aria-pressed=true] svg{color:var(--ok)}.pl-act[data-act=lock][aria-pressed=true]{color:#e2deff;background:var(--accent-soft);border-color:var(--accent-line)}.pl-drawer__body{scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;flex:1;padding:12px 14px 20px 16px;overflow-y:auto}.pl-drawer__body .mp-meal{background:0 0;border:0;padding:0}.pl-drawer__body .mp-meal:before{display:none}.pl-note{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);background:#52d3ff12;border:1px solid #52d3ff38;border-radius:11px;gap:9px;margin:0 0 10px;padding:9px 11px;line-height:1.5;display:flex}.pl-note>svg{width:16px;height:16px;color:var(--accent-2);flex:none;margin-top:1px}.pl-note b{color:var(--text)}.pl-free{border:1px dashed var(--border-strong);border-radius:16px;padding:16px}.pl-free h4{font-family:var(--display);font-size:calc((17px) * var(--fs,1));margin:0}.pl-free p{font-size:calc((13px) * var(--fs,1));color:var(--text-2);margin:8px 0 14px;line-height:1.55}.pl-free b{color:var(--text)}.pl-free .btn svg{width:16px;height:16px}.pl-filters{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:6px;padding:0 14px 12px 16px;display:flex}.pl-filters .mp-chip{font-size:calc((12px) * var(--fs,1));border:1px solid #0000;padding:5px 11px;transition:color .2s,border-color .2s}.pl-filters .mp-chip:hover{color:var(--text)}.pl-filters .mp-chip[aria-checked=true]{color:#e2deff;background:var(--accent-soft);border-color:var(--accent-line)}.pl-filters--cuisine{scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;flex-wrap:nowrap;padding-top:10px;overflow-x:auto}.pl-filters--cuisine .mp-chip{white-space:nowrap;flex:none;align-items:center;gap:6px;display:inline-flex}.pl-filters:has(+.pl-filters--cuisine){border-bottom:0;padding-bottom:0}.flag{border-radius:2px;flex:none;width:18px;height:12px;box-shadow:0 0 0 1px #ffffff24}.mprefs{flex-wrap:wrap;align-items:center;gap:10px 18px;display:flex}.pl-prefs{flex-basis:100%}.mp-prefs{border-bottom:1px solid var(--border);margin-bottom:14px;padding-bottom:14px}.mprefs__group{align-items:center;gap:10px;display:flex}.mprefs__diet button{padding:0 12px}.mprefs__diet button[data-diet=veg][aria-checked=true]{color:#d7fff0;background:#45d99e29;box-shadow:inset 0 0 0 1px #45d99e80}.mprefs__toggle{min-height:38px;font-size:calc((12.5px) * var(--fs,1));text-align:left;color:var(--text-2);border:1px solid var(--border);border-radius:12px;align-items:center;gap:8px;padding:6px 10px;transition:border-color .2s,background .2s;display:inline-flex}.mprefs__toggle:hover{border-color:var(--border-strong)}.mprefs__toggle b{color:var(--text)}.mprefs__toggle>svg{width:17px;height:17px;color:var(--accent-2);flex:none}.mprefs__toggle.is-set{border-color:var(--accent-line);background:var(--accent-soft)}.mprefs__flags{gap:3px;display:inline-flex}.mprefs__chev{color:var(--text-3);transition:transform .25s var(--ease);margin-left:auto;display:inline-grid}.mprefs__chev svg{width:14px;height:14px}.mprefs__toggle[aria-expanded=true] .mprefs__chev{transform:rotate(90deg)}.mprefs__panel{flex-basis:100%;min-width:0}.mprefs__panel[hidden]{display:none}.mprefs__chips{flex-wrap:wrap;gap:6px;display:flex}.mprefs__chip{min-height:32px;font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);background:#ffffff0d;border:1px solid #0000;border-radius:999px;align-items:center;gap:7px;padding:4px 11px 4px 9px;transition:color .2s,border-color .2s,background .2s;display:inline-flex}.mprefs__chip:hover{color:var(--text)}.mprefs__chip>svg:not(.flag){width:14px;height:14px}.mprefs__chip[aria-pressed=true]{color:#e2deff;background:var(--accent-soft);border-color:var(--accent-line)}.mprefs__help{font-size:calc((12.5px) * var(--fs,1));color:var(--text-3);gap:8px;margin:10px 0 0;line-height:1.45;display:flex}.mprefs__help svg{width:16px;height:16px;color:var(--accent-2);flex:none}.pl-bar .mprefs__panel{padding:2px 0 4px}.mprefs__sum{flex-wrap:wrap;gap:6px;margin:10px 0 0;display:flex}.mprefs__sum span{font-size:calc((11.5px) * var(--fs,1));color:var(--text-2);background:#ffffff0d;border-radius:8px;align-items:center;gap:6px;padding:2px 8px;display:inline-flex}.mprefs__sum .mp-veg{color:#c4f5df;background:var(--ok-soft)}.mp-meal__meta .mp-origin{color:var(--text-2)}.mp-meal__meta .flag,.pl-pick__meta .flag{width:16px;height:11px}.pl-pick__origin{align-items:center;gap:5px;display:inline-flex}.pl-cell__meta .flag{width:14px;height:9.5px;box-shadow:0 0 0 1px #ffffff1f}.pl-cell__flag{display:inline-flex}@media (width<=820px){.mprefs{gap:8px 10px}.mprefs__group{flex:100%}.mprefs__group .wseg{flex:1}.mprefs__toggle{flex:100%}.mprefs__chip{min-height:34px;font-size:calc((12px) * var(--fs,1))}.pl-bar .pl-prefs{order:1}.pl-bar .mprefs__panel{order:2}.pl-bar>[data-fill]{order:3}}.pl-picks{gap:6px;margin:0;padding:0;list-style:none;display:grid}.pl-pick{text-align:left;border:1px solid var(--border);background:#ffffff09;border-radius:12px;gap:3px;width:100%;padding:10px 12px;transition:border-color .2s,background .2s;display:grid}.pl-pick:hover{border-color:var(--accent-line);background:#8e80ff14}.pl-pick.is-current{border-color:var(--accent-line)}.pl-pick__name{font-size:calc((14px) * var(--fs,1));font-weight:600}.pl-pick__name small{color:var(--accent-2);font-weight:400}.pl-pick__side{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2)}.pl-pick__meta{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:var(--text-3);flex-wrap:wrap;align-items:center;gap:4px;display:flex}.pl-pick__meta svg{width:12px;height:12px}.pl-pick__meta .mp-veg{color:#c4f5df;background:var(--ok-soft);border-radius:6px;padding:0 5px;font-style:normal}.pl-pick__warn,.pl-pick__used{font-size:calc((11.5px) * var(--fs,1));color:var(--warn)}.pl-pick__used{color:var(--text-3)}.pl-empty{font-size:calc((13px) * var(--fs,1));color:var(--text-3);text-align:center;padding:18px}.pl-intro{font-size:calc((13px) * var(--fs,1));color:var(--text-2);margin:0 0 12px;line-height:1.55}.pl-intro b{color:var(--text)}.pl-aisles{columns:3 320px;column-gap:12px}.pl-aisle{break-inside:avoid;border:1px solid var(--border);background:#ffffff06;border-radius:16px;margin-bottom:12px;padding:12px 12px 6px}.pl-aisle h3{font-size:calc((13.5px) * var(--fs,1));align-items:center;gap:8px;margin:0 0 6px;font-weight:600;display:flex}.pl-aisle h3 svg{width:16px;height:16px;color:var(--accent-2)}.pl-aisle h3 small{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:var(--text-3);margin-left:auto;font-weight:400}.pl-aisle__note{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);margin:0 0 6px;line-height:1.45}.pl-aisle ul{margin:0;padding:0;list-style:none}.pl-item{cursor:pointer;border-top:1px solid #ffffff0b;grid-template-columns:20px 1fr auto;align-items:center;gap:10px;padding:7px 2px;display:grid;position:relative}.pl-item input{opacity:0;pointer-events:none;position:absolute}.pl-item__box{color:#0000;border:1.5px solid #ffffff40;border-radius:6px;place-items:center;width:20px;height:20px;transition:background .2s,border-color .2s,color .2s;display:grid}.pl-item__box svg{width:13px;height:13px}.pl-item input:focus-visible+.pl-item__box{outline:2px solid var(--accent-2);outline-offset:2px}.pl-item__name{font-size:calc((13px) * var(--fs,1));line-height:1.3}.pl-item__name small,.pl-item__qty small{font-size:calc((11px) * var(--fs,1));color:var(--text-3);font-weight:400;display:block}.pl-item__qty{font-family:var(--mono);font-size:calc((12.5px) * var(--fs,1));text-align:right;font-weight:600}.pl-item.is-checked .pl-item__box{color:#06140e;background:var(--ok);border-color:var(--ok)}.pl-item.is-checked .pl-item__name,.pl-item.is-checked .pl-item__qty{opacity:.45;text-decoration:line-through}.pl-sub{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);align-items:baseline;gap:10px;margin:18px 0 10px;font-weight:600;display:flex}.pl-sub:first-child{margin-top:2px}.pl-sub small{letter-spacing:0;text-transform:none;font-weight:400}.pl-checks{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.pl-checks li{background:var(--surface-raised);border:1px solid var(--border);--c:var(--ok);border-radius:14px;grid-template-columns:26px 1fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.pl-checks li.is-warn{--c:var(--warn)}.pl-checks__icon{width:26px;height:26px;color:var(--c);background:color-mix(in srgb, var(--c) 14%, transparent);border-radius:50%;place-items:center;display:grid}.pl-checks__icon svg{width:15px;height:15px}.pl-checks__label b{font-size:calc((13px) * var(--fs,1))}.pl-checks__label small{font-size:calc((12px) * var(--fs,1));color:var(--text-3);margin-top:2px;line-height:1.45;display:block}.pl-checks__value{font-family:var(--mono);font-size:calc((12.5px) * var(--fs,1));text-align:right;color:var(--c);font-weight:600}.pl-track{gap:6px;max-width:640px;display:grid}.pl-track__day{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);grid-template-columns:40px 1fr 110px;align-items:center;gap:12px;display:grid}.pl-track__day.is-today span:first-child{color:var(--accent-2);font-weight:600}.pl-track__bar{height:8px}.pl-track__day small{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:var(--text-3);text-align:right}@media (width<=1200px){.pl-grid{grid-template-columns:104px repeat(7,minmax(0,1fr));gap:4px}.pl-cell__open{padding:9px 8px 30px}.pl-cell__name{font-size:calc((12px) * var(--fs,1))}.pl-rowhead .mp-tag{display:none}}@media (width<=820px){.planner{top:calc(var(--topbar-h) + 6px);border-radius:16px;width:auto;animation-name:mp-in-mobile;bottom:6px;left:6px;right:6px;transform:none}.pl-head{gap:10px;padding:12px 12px 10px}.planner{scrollbar-width:none;overflow-y:auto}.pl-body{flex:none;overflow:visible}.pl-head .kicker{font-size:calc((10px) * var(--fs,1))}.pl-head h2{font-size:calc((17px) * var(--fs,1))}.pl-daynav{z-index:3;border-bottom:1px solid var(--border);background:#10131b;margin:0 -10px;padding:8px 10px;position:sticky;top:0}.pl-drawer-wrap{top:calc(var(--topbar-h) + 6px);border-radius:16px;position:fixed;bottom:6px;left:6px;right:6px;overflow:hidden}.pl-tabs{width:100%}.pl-tabs button{flex:1;padding:0 8px}.pl-bar{gap:8px 10px;padding:10px 12px}.pl-bar .btn--primary{margin-left:0}.pl-toggle{width:100%;max-width:none}.pl-banner{margin:8px 10px 0}.pl-body{padding:10px 10px 18px}.pl-grid{display:none}.pl-mobile{display:block}.pl-daynav{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.pl-daynav button{font-size:calc((11px) * var(--fs,1));color:var(--text-3);border:1px solid var(--border);border-radius:11px;justify-items:center;gap:1px;padding:6px 0 7px;display:grid}.pl-daynav b{font-family:var(--display);font-size:calc((16px) * var(--fs,1));color:var(--text-2)}.pl-daynav i{background:linear-gradient(90deg, var(--ok) var(--p), #ffffff1a var(--p));border-radius:3px;width:70%;height:3px;margin-top:3px}.pl-daynav .is-today{color:var(--accent-2)}.pl-daynav [aria-selected=true]{border-color:var(--accent-line);background:var(--accent-soft)}.pl-daynav [aria-selected=true] b{color:var(--text)}.pl-mday__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 10px;margin:12px 2px 8px;display:flex}.pl-mday__head b{font-family:var(--display);font-size:calc((17px) * var(--fs,1))}.pl-mday__head span{font-family:var(--mono);font-size:calc((11.5px) * var(--fs,1));color:var(--text-3)}.pl-mrow{grid-template-columns:82px 1fr;align-items:stretch;gap:8px;display:grid}.pl-mrow+.pl-mrow{margin-top:6px}.pl-mrow__time{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));color:var(--text-3);align-content:center;gap:2px;display:grid}.pl-mrow__time b{font-family:var(--font);font-size:calc((12px) * var(--fs,1));color:var(--text-2);line-height:1.25}.pl-mrow .pl-cell{min-height:64px}.pl-mrow .pl-cell__name{font-size:calc((13.5px) * var(--fs,1))}.pl-mrow .pl-eat{width:30px;height:30px;top:50%;bottom:auto;right:10px;transform:translateY(-50%)}.pl-mrow .pl-cell__open{padding-right:48px}.pl-drawer{border-left:0;width:100%}.pl-aisles{columns:1}.pl-checks{grid-template-columns:1fr}.pl-track__day{grid-template-columns:36px 1fr 96px}}.train-sports{margin:12px 12px 2px}.train-sports button{height:34px;font-size:calc((13px) * var(--fs,1));justify-content:center;align-items:center;gap:7px;display:inline-flex}.train-sports button span[data-icon],.train-sports button svg{width:15px;height:15px;display:inline-grid}.train-sports button[data-sport=hyrox][aria-checked=true]{color:#fff0c2;background:#ffd23f24;box-shadow:inset 0 0 0 1px #ffd23f80}.exo-card__num{font-family:var(--display);font-size:calc((15px) * var(--fs,1));color:#ffe08a;background:#ffd23f14;border-color:#ffd23f4d;font-weight:700}.exo-card--hyrox.is-active{background:#ffd23f1a;border-color:#ffd23f73}.exo-card--hyrox.is-active .exo-card__num{color:#1a1400;background:#ffd23f;border-color:#ffd23f}.train-intro--hyrox a{color:var(--accent-2)}.train-run{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);border-left:1px dashed #ffd23f66;align-items:center;gap:8px;margin:2px 0 0 22px;padding:2px 0 2px 16px;display:flex}.train-run svg{color:#ffd23f;width:13px;height:13px}.train-run--end{color:#ffe08a}.chip--hyrox{color:#fff0c2!important;background:#ffd23f1a!important;border-color:#ffd23f73!important}.train-caption__kind--hyrox{color:#ffd23f}.specs--4{grid-template-columns:repeat(4,1fr);margin-top:8px}.specs--4 dd{font-size:calc((12.5px) * var(--fs,1))}.rule-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.rule-list li{font-size:calc((13.5px) * var(--fs,1));color:var(--text-2);grid-template-columns:18px 1fr;gap:9px;line-height:1.45;display:grid}.rule-list svg{color:#ffd23f;width:16px;height:16px;margin-top:1px}@media (width<=820px){.specs--4{grid-template-columns:repeat(2,1fr)}.train-run{font-size:calc((9.5px) * var(--fs,1));white-space:nowrap;background:var(--surface);border:1px solid #ffd23f4d;border-radius:999px;flex:none;align-self:center;margin:0 2px;padding:4px 9px}}.acts{gap:10px;margin-bottom:12px;display:grid}.act{border:1px solid var(--border);background:#ffffff06;border-radius:14px;padding:10px 10px 8px}.act .field{margin-bottom:8px}.act__head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.act__num{width:22px;height:22px;font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:#e5e2ff;background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:50%;place-items:center;font-weight:600;display:grid}.act__title{min-width:0;font-size:calc((13px) * var(--fs,1));flex:1;font-weight:600}.act__del{border-radius:9px;width:30px;height:30px}.act__del svg{width:15px;height:15px}.act__sports{grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:10px;display:grid}.act__sports button{height:28px;font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);border:1px solid var(--border);background:#ffffff08;border-radius:8px;padding:0 4px;font-weight:600;transition:color .2s,background .2s,border-color .2s}.act__sports button:hover{color:var(--text)}.act__sports button[aria-checked=true]{color:#e2deff;background:var(--accent-soft);border-color:var(--accent-line)}.act__sports button[data-act-sport=hyrox][aria-checked=true]{color:#fff0c2;background:#ffd23f1f;border-color:#ffd23f80}.act__level button{height:28px;font-size:calc((11.5px) * var(--fs,1))}.act__kcal{align-items:center;gap:6px;display:flex}.act__kcal svg{color:#ff7a5c;flex:none;width:14px;height:14px}.act__kcal b{color:var(--text)}.act__add{justify-self:start}.act__add svg{width:15px;height:15px}.tr-summary{font-size:calc((13px) * var(--fs,1));color:var(--text-2)}.tr-summary b{font-family:var(--mono);color:var(--text)}.tr-grid{grid-template-columns:repeat(7,minmax(0,1fr));align-items:start;gap:8px;display:grid}.tr-day{gap:6px;display:grid}.tr-day .pl-dayhead{position:static}.tr-card{background:linear-gradient(180deg, color-mix(in srgb, var(--c) 14%, transparent), #ffffff05);border:1px solid color-mix(in srgb, var(--c) 35%, transparent);transition:border-color .2s, transform .2s var(--ease);border-radius:12px;position:relative}.tr-card:hover{border-color:color-mix(in srgb, var(--c) 70%, transparent)}.tr-card__open{text-align:left;border-radius:inherit;gap:4px;width:100%;min-height:92px;padding:10px 34px 10px 10px;display:grid}.tr-card__open:focus-visible{outline:2px solid var(--accent-2);outline-offset:1px}.tr-card__sport{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));letter-spacing:.08em;text-transform:uppercase;color:var(--c);align-items:center;gap:5px;font-weight:600;display:inline-flex}.tr-card__sport svg{width:13px;height:13px}.tr-card__name{font-size:calc((13.5px) * var(--fs,1));font-weight:600;line-height:1.25}.tr-card__meta{font-family:var(--mono);font-size:calc((11.5px) * var(--fs,1));color:var(--text-2)}.tr-card.is-done{border-color:#45d99e8c}.tr-card.is-done .pl-eat{color:#06140e;background:var(--ok);border-color:var(--ok);box-shadow:0 0 12px #45d99e8c}.tr-card.is-done .tr-card__name{opacity:.75}.tr-rest{min-height:92px;color:var(--text-3);border:1px dashed var(--border-strong);border-radius:12px;align-content:center;justify-items:center;gap:3px;padding:10px;transition:color .2s,border-color .2s;display:grid}.tr-rest:hover{color:var(--text-2);border-color:var(--accent-line)}.tr-rest svg{color:#b1a7ff;width:18px;height:18px}.tr-rest b{font-size:calc((13px) * var(--fs,1));color:var(--text-2)}.tr-rest small{font-size:calc((12px) * var(--fs,1))}.tr-add{height:28px;color:var(--text-3);border:1px dashed var(--border);opacity:.6;border-radius:10px;place-items:center;transition:opacity .2s,color .2s,border-color .2s;display:grid}.tr-add:hover{opacity:1;color:var(--text);border-color:var(--accent-line)}.tr-add svg{width:14px;height:14px}.tr-mlist{gap:8px;display:grid}.tr-madd{justify-self:start}.tr-madd svg{width:15px;height:15px}.pl-dayhead__sport{vertical-align:-3px;width:18px;height:18px;color:var(--c);background:color-mix(in srgb, var(--c) 16%, transparent);border-radius:6px;place-items:center;margin-left:4px;display:inline-grid}.pl-dayhead__sport svg{width:11px;height:11px}.pl-dayhead__need{font-family:var(--mono);font-size:calc((11px) * var(--fs,1));white-space:nowrap;border-radius:999px;justify-self:start;align-items:center;gap:3px;padding:1px 6px 1px 4px;display:inline-flex}.pl-dayhead__need svg{width:11px;height:11px}.pl-dayhead__need.is-sport{color:#ffb39e;background:#ff7a5c24}.pl-dayhead__need.is-rest{color:#c9c2ff;background:#8e80ff1f}.pl-mday__head .pl-dayhead__need{margin-left:8px}.pl-daynav i.is-rest{background:repeating-linear-gradient(90deg,#b1a7ff66 0 3px,#0000 3px 6px)}.tr-groups{flex-wrap:wrap;gap:6px;display:flex}.tr-group{font-size:calc((12px) * var(--fs,1));color:var(--text-2);border:1px solid var(--border);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.tr-group b{font-family:var(--mono);font-size:calc((11.5px) * var(--fs,1))}.tr-group--ok{background:var(--ok-soft);border-color:#45d99e73}.tr-group--ok b{color:var(--ok)}.tr-group--low{background:var(--warn-soft);border-color:#ffc56b73}.tr-group--low b{color:var(--warn)}.tr-group--none b{color:var(--text-3)}.pl-act--go{color:#e2deff;background:var(--accent-soft);border-color:var(--accent-line);grid-column:1/-1}.tr-detail{background:color-mix(in srgb, var(--c) 8%, transparent);border:1px solid color-mix(in srgb, var(--c) 30%, transparent);border-radius:14px;gap:10px;padding:12px;display:grid}.tr-detail p{font-size:calc((13px) * var(--fs,1));color:var(--text-2);margin:0;line-height:1.5}.tr-detail__sport{font-size:calc((13px) * var(--fs,1));color:var(--c);align-items:center;gap:7px;font-weight:600;display:inline-flex}.tr-detail__sport svg{width:16px;height:16px}.tr-field{gap:6px;display:grid}.tr-chips{flex-wrap:wrap;gap:5px;display:flex}.tr-chips .mp-chip{border:1px solid #0000;padding:4px 10px}.tr-chips .mp-chip[aria-pressed=true]{color:#e2deff;background:var(--accent-soft);border-color:var(--accent-line)}.tr-kcal{align-items:center;gap:7px;display:flex!important}.tr-kcal svg{color:#ff7a5c;flex:none;width:15px;height:15px}.tr-kcal b{color:var(--text)}.tr-h{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);margin:16px 0 8px}.tr-items{counter-reset:tr;gap:5px;margin:0;padding:0;list-style:none;display:grid}.tr-items li{counter-increment:tr}.tr-items button{text-align:left;border:1px solid var(--border);background:#ffffff09;border-radius:11px;grid-template-rows:auto auto;grid-template-columns:22px 1fr auto;align-items:center;column-gap:10px;width:100%;padding:8px 10px;transition:border-color .2s,background .2s;display:grid}.tr-items button:before{content:counter(tr);width:22px;height:22px;font-family:var(--mono);font-size:calc((11px) * var(--fs,1));color:#e5e2ff;background:var(--accent-soft);border-radius:50%;grid-row:1/3;place-items:center;display:grid}.tr-items button:hover{border-color:var(--accent-line);background:#8e80ff14}.tr-items b{font-size:calc((13px) * var(--fs,1))}.tr-items small{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);grid-column:2}.tr-items svg{width:14px;height:14px;color:var(--text-3);grid-area:1/3/3}.act__agenda,.session__agenda{color:var(--accent-2);justify-self:start;margin-top:4px}.act__agenda svg,.session__agenda svg{width:15px;height:15px}.session__agenda{margin:0 0 10px;display:flex}@media (width<=1200px){.tr-grid{gap:5px}.tr-card__open{padding:9px 30px 9px 8px}.tr-card__name{font-size:calc((12px) * var(--fs,1))}}@media (width<=820px){.tr-grid{display:none}.pl-tabs button{font-size:calc((12px) * var(--fs,1));gap:0;padding:0 4px}.pl-tabs button svg{display:none}.pl-bar .link-btn{white-space:nowrap}.pl-bar .pl-bar__group{flex-wrap:wrap}.tr-card__open,.tr-rest{min-height:70px}.tr-card__name{font-size:calc((14px) * var(--fs,1))}.tr-card .pl-eat{width:30px;height:30px;top:50%;bottom:auto;right:10px;transform:translateY(-50%)}.tr-card__open{padding-right:48px}}.tr-grid .tr-card__open{cursor:grab}.tr-grid{-webkit-user-select:none;user-select:none}.tr-card.is-dragging{opacity:.3}.tr-ghost{z-index:100;pointer-events:none;opacity:.95;box-shadow:0 18px 40px -10px #000c, 0 0 0 1px var(--c);transition:none;position:fixed;top:0;left:0}.tr-day{border-radius:14px;transition:background .15s,box-shadow .15s}.tr-day.is-drop{background:var(--accent-soft);box-shadow:0 0 0 2px var(--accent-line)}.tr-day.is-full{background:var(--err-soft);box-shadow:0 0 0 2px #ff6f8180}body.is-dragging-session,body.is-dragging-session *{cursor:grabbing!important}.tr-del{width:22px;height:22px;color:var(--text-3);opacity:.55;border-radius:50%;place-items:center;transition:opacity .2s,color .2s,background .2s;display:grid;position:absolute;top:6px;right:6px}.tr-del svg{width:12px;height:12px}.tr-card:hover .tr-del,.tr-del:focus-visible{opacity:1}.tr-del:hover{color:#ffd3d9;background:var(--err-soft)}.pl-act--del:hover{color:#ffd3d9;background:var(--err-soft);border-color:#ff6f8173}@media (width<=820px){.tr-del{opacity:.8;width:30px;height:30px;top:50%;right:48px;transform:translateY(-50%)}.tr-del svg{width:14px;height:14px}.tr-card__open{padding-right:86px}}.train-method-link{text-align:left;font-size:calc((12px) * var(--fs,1));color:var(--text-2);background:#ffd23f12;border:1px solid #ffd23f4d;border-radius:12px;align-items:center;gap:10px;margin:0 0 8px;padding:10px 12px;line-height:1.4;transition:background .2s,border-color .2s;display:flex}.train-method-link:hover{background:#ffd23f1f;border-color:#ffd23f8c}.train-method-link b{font-size:calc((13px) * var(--fs,1));color:#fff0c2;display:block}.train-method-link small{font-size:calc((12px) * var(--fs,1))}.train-method-link>svg{color:#ffd23f;flex:none;width:18px;height:18px}.train-method-link>svg:last-child{width:14px;height:14px;color:var(--text-3);margin-left:auto}.exo-card--guide .exo-card__main{grid-column:1/-1}.exo-card--guide .exo-card__icon{color:#ffd23f;background:#ffd23f14;border-color:#ffd23f4d}.exo-card--guide.is-active{background:#ffd23f1a;border-color:#ffd23f73}.guide-zones,.guide-sessions,.guide-people{gap:8px;display:grid}.guide-zone{background:color-mix(in srgb, var(--c) 7%, transparent);border:1px solid color-mix(in srgb, var(--c) 30%, transparent);border-left:3px solid var(--c);border-radius:12px;padding:10px 12px}.guide-zone>b{font-size:calc((13.5px) * var(--fs,1));color:var(--c)}.guide-zone dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;margin:8px 0;display:grid}.guide-zone dt{font-family:var(--mono);font-size:calc((10px) * var(--fs,1));letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.guide-zone dd{font-size:calc((12.5px) * var(--fs,1));color:var(--text);margin:1px 0 0;line-height:1.4}.guide-zone p{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);margin:0;line-height:1.45}.guide-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.guide-facts div{border:1px solid var(--border);background:#ffffff09;border-radius:12px;gap:3px;padding:10px 12px;display:grid}.guide-facts b{font-family:var(--display);font-size:calc((19px) * var(--fs,1));color:#ffe08a}.guide-facts span{font-size:calc((12px) * var(--fs,1));color:var(--text-2);line-height:1.4}.guide-session,.guide-person{border:1px solid var(--border);background:#ffffff09;border-radius:12px;padding:10px 12px}.guide-session b,.guide-person>b{font-size:calc((13.5px) * var(--fs,1));color:var(--text)}.guide-session p{font-size:calc((13px) * var(--fs,1));color:var(--text-2);margin:4px 0 0;line-height:1.5}.guide-session small,.guide-person>small{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);margin-top:5px;line-height:1.45;display:block}.guide-person ul{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);gap:4px;margin:8px 0 0;padding:0 0 0 16px;line-height:1.45;display:grid}.guide-person .link-btn{color:var(--accent-2);margin-top:6px}.guide-links{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.guide-links>span{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin-right:2px}.guide-links .mp-chip{align-items:center;gap:6px;display:inline-flex}.guide-links .mp-chip svg{color:#ffd23f;width:13px;height:13px}.guide-go{margin-top:8px}.info .tip+.guide-go{margin-top:10px}.tr-guide{color:var(--accent-2);justify-self:start}.tr-guide svg{width:15px;height:15px}.tr-plan{margin:0}@media (width<=820px){.train-method-link{white-space:nowrap;flex:none;align-self:center;margin:0;padding:7px 10px}.train-method-link small{display:none}.guide-zone dl{grid-template-columns:1fr}}.train-sports button[data-sport=triathlon][aria-checked=true]{color:#d6f3ff;background:#52d3ff24;box-shadow:inset 0 0 0 1px #52d3ff80}.train-sports button[data-sport=velo][aria-checked=true]{color:#e6ffd0;background:#9be15d24;box-shadow:inset 0 0 0 1px #9be15d80}.train-sports button{min-width:0;font-size:calc((12px) * var(--fs,1));white-space:nowrap;gap:5px;padding:0 6px}.chip--tri{color:#d6f3ff!important;background:#52d3ff1a!important;border-color:#52d3ff73!important}.train-caption__kind--tri{color:#52d3ff}.exo-card--tri .exo-card__icon{color:#52d3ff;background:#52d3ff14;border-color:#52d3ff4d}.exo-card--tri.is-active{background:#52d3ff1a;border-color:#52d3ff73}.exo-card--workout .exo-card__main{grid-column:1/-1}.exo-card--workout .exo-card__icon{color:#ffd23f;background:#ffd23f14;border-color:#ffd23f4d}.exo-card--workout.exo-card--triathlon .exo-card__icon,.exo-card--workout.exo-card--velo .exo-card__icon{color:#52d3ff;background:#52d3ff14;border-color:#52d3ff4d}.exo-card--workout.is-active{background:#ffd23f1a;border-color:#ffd23f73}.exo-card--workout.exo-card--triathlon.is-active,.exo-card--workout.exo-card--velo.is-active{background:#52d3ff1a;border-color:#52d3ff73}.train-quick{gap:6px;margin:0 0 8px;display:grid}.train-quick .train-method-link{margin:0}.train-intro--tri{color:var(--text-3)}.train-sub{font-size:calc((12px) * var(--fs,1));color:var(--text-2);align-items:center;gap:7px;margin:8px 4px 2px;font-weight:600;display:flex}.train-sub svg{color:#ffd23f;width:14px;height:14px}button.train-run{text-align:left;cursor:pointer;width:calc(100% - 22px);transition:color .2s}button.train-run:hover,button.train-run.is-active{color:#ffe08a}.wk-plan .tr-chips small{font-family:var(--mono);font-size:calc((10px) * var(--fs,1));color:var(--text-3)}.wk-note{font-size:calc((13px) * var(--fs,1));border-radius:10px;align-items:flex-start;gap:8px;margin:10px 0 0;padding:8px 10px;line-height:1.45;display:flex}.wk-note>svg{flex:none;width:16px;height:16px;margin-top:1px}.wk-note--ok{color:#c9f5e2;background:var(--ok-soft)}.wk-note--ok>svg{color:var(--ok)}.wk-note--full{color:#ffd3d9;background:var(--err-soft)}.wk-note .link-btn{color:var(--accent-2)}.wk-load{margin-top:10px}.wk-load svg{width:15px;height:15px}.guide-links .mp-chip[aria-pressed=true]{color:#e2deff;background:var(--accent-soft);border-color:var(--accent-line)}.wk-adapt{gap:8px;display:grid}.wk-adapt div{border:1px solid var(--border);background:#ffffff09;border-radius:12px;gap:3px;padding:9px 12px;display:grid}.wk-adapt b{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.wk-adapt span{font-size:calc((13px) * var(--fs,1));color:var(--text-2);line-height:1.45}.session__presets .chip svg{width:13px;height:13px}@media (width<=820px){.train-quick{flex:none;gap:6px;display:flex}.train-sub{white-space:nowrap;background:var(--surface);border:1px solid var(--border);border-radius:999px;flex:none;align-self:center;margin:0 2px;padding:4px 9px}button.train-run{width:auto}}.wtoggle{text-align:left;border:1px solid var(--border);background:#ffffff09;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:10px;width:100%;margin:2px 0 6px;padding:10px 12px;transition:background .2s,border-color .2s;display:grid}.wtoggle__text{gap:1px;display:grid}.wtoggle__text b{font-size:calc((13.5px) * var(--fs,1));color:var(--text)}.wtoggle__text small{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3)}.wtoggle.is-on{border-color:var(--accent-line);background:var(--accent-soft)}.wtoggle.is-on .switch{background:#8e80ffd9}.wtoggle.is-on .switch i{transform:translate(14px)}.pzones{border-collapse:collapse;width:100%;font-size:calc((12.5px) * var(--fs,1));margin-top:12px}.pzones th,.pzones td{text-align:left;border-bottom:1px solid var(--border);padding:7px 8px}.pzones thead th{font-family:var(--mono);font-size:calc((10px) * var(--fs,1));letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);font-weight:500}.pzones tbody th{color:var(--text-2);border-left:3px solid var(--zc);font-weight:500}.pzones tbody th b{color:var(--zc);margin-right:4px}.pzones td{font-family:var(--mono);color:var(--text);white-space:nowrap}.pzone--z1,.wk-zone--z1{--zc:#52d3ff}.pzone--z2,.wk-zone--z2{--zc:#45d99e}.pzone--z3,.wk-zone--z3{--zc:#ffd23f}.pzone--z4,.wk-zone--z4{--zc:#ffb35c}.pzone--z5,.wk-zone--z5{--zc:#ff6f81}.pzones__notes{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);gap:4px;margin:10px 0 0;padding:0 0 0 16px;line-height:1.45;display:grid}.pzones__empty{gap:6px;margin-top:10px;display:flex}.pzones__empty svg{flex:none;width:15px;height:15px}.wk-zones,.tr-zones{gap:6px;margin:0;padding:0;list-style:none;display:grid}.wk-zone{border:1px solid var(--border);border-left:3px solid var(--zc);background:#ffffff09;border-radius:12px;gap:2px;padding:8px 12px;display:grid}.wk-zone b{font-size:calc((13px) * var(--fs,1));color:var(--zc)}.wk-zone span{font-family:var(--mono);font-size:calc((12.5px) * var(--fs,1));color:var(--text)}.tr-zones li{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.tr-zones svg{color:#ff6f81;width:14px;height:14px}.tr-zones span{font-family:var(--mono);color:var(--text)}.tr-power{margin-top:8px}.tr-power svg{color:#9be15d}.wk-power__title{font-size:calc((12px) * var(--fs,1));color:var(--text-2);align-items:center;gap:6px;margin:12px 0 8px;font-weight:600;display:flex}.wk-power__title svg{color:#9be15d;width:15px;height:15px}.wk-power{gap:6px;margin:0;padding:0;list-style:none;display:grid}.wk-power li{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);border:1px solid var(--border);background:#9be15d0d;border-left:3px solid #9be15d;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 10px;padding:8px 12px;display:grid}.wk-power b{font-family:var(--mono);color:var(--text);white-space:nowrap;font-weight:600}.wk-power small{font-family:var(--mono);font-size:calc((10.5px) * var(--fs,1));text-align:right;color:var(--text-3);grid-column:2}.pzones--bike th,.pzones--bike td{padding:7px 6px}.guide-zone__mine{align-items:center;gap:6px;display:flex;color:var(--text)!important;margin:0 0 6px!important}.guide-zone__mine svg{width:14px;height:14px;color:var(--c);flex:none}.guide-zone__mine b{font-family:var(--mono);font-weight:600}.account-form .acc-form{gap:12px;display:grid}.afield{gap:6px;display:grid}.afield label{font-size:calc((13px) * var(--fs,1));color:var(--text-2)}.afield__screen{height:38px;padding:0 6px 0 12px;display:flex}.afield__screen input{text-align:left;width:auto;min-width:0;font-size:calc((14px) * var(--fs,1));--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;flex:1}.afield__screen input::placeholder{color:var(--text-3);text-shadow:none}#acc-code{font-size:calc((20px) * var(--fs,1));letter-spacing:.45em;text-align:center}.afield__eye{width:30px;height:30px;color:var(--text-3);border-radius:8px;flex:none;place-items:center;transition:color .2s;display:grid}.afield__eye:hover,.afield__eye[aria-pressed=true]{color:#e3f7ff}.afield__eye svg{width:16px;height:16px}.afield .field__hint.is-ok{color:var(--ok)}.afield .field__hint.is-err{color:#ff9aa8}.pw-rules{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 10px;margin:-4px 0 0;padding:0;list-style:none;display:grid}.pw-rules li{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);align-items:center;gap:6px;transition:color .2s;display:flex}.pw-rules li svg{color:#0000;border:1px solid var(--border-strong);border-radius:50%;flex:none;width:13px;height:13px;padding:1px;transition:color .2s,background .2s,border-color .2s}.pw-rules li.is-ok{color:var(--text)}.pw-rules li.is-ok svg{color:#06140e;background:var(--ok);border-color:var(--ok)}.acc-consent{margin:0}.acc-submit{margin-top:2px}.acc-submit svg{width:16px;height:16px}.acc-msg{font-size:calc((12.5px) * var(--fs,1));border-radius:10px;align-items:flex-start;gap:8px;margin:0;padding:9px 11px;line-height:1.45;display:flex}.acc-msg svg{flex:none;width:15px;height:15px;margin-top:1px}.acc-msg--err{color:#ffd3d9;background:var(--err-soft);border:1px solid #ff6f8159}.acc-msg--ok{color:#c9f5e2;background:var(--ok-soft);border:1px solid #45d99e4d}.acc-links{flex-wrap:wrap;justify-content:space-between;gap:6px 12px;margin-top:10px;display:flex}.acc-links .link-btn{font-size:calc((12.5px) * var(--fs,1));color:var(--accent-2)}.acc-links .link-btn:disabled{color:var(--text-3);cursor:default}.acc-links .link-btn svg{width:14px;height:14px}.acc-lead{margin:0 0 12px;line-height:1.5;display:block}.acc-sync{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);align-items:flex-start;gap:8px;margin:10px 0 12px;line-height:1.45;display:flex}.acc-sync svg{flex:none;width:15px;height:15px;margin-top:1px}.acc-sync.is-ok{color:#c9f5e2}.acc-sync.is-ok svg{color:var(--ok)}.acc-sync.is-warn{color:#ffe2a8}.acc-actions{gap:8px;display:grid}.acc-actions--row{grid-template-columns:1fr 1fr}.acc-alt{border-top:1px solid var(--border);margin:16px 0 8px;padding-top:12px;line-height:1.5;display:block}.acc-lead b{color:var(--text)}.account-form .btn--block svg{width:16px;height:16px}.acc-id{align-items:center;gap:12px;margin-bottom:12px;display:flex}.acc-id__avatar{width:44px;height:44px;font-family:var(--display);font-size:calc((20px) * var(--fs,1));color:#e3f7ff;border:1px solid var(--accent-line);background:linear-gradient(160deg,#8e80ff59,#52d3ff1f);border-radius:14px;place-items:center;font-weight:700;display:grid}.acc-id b{font-size:calc((16px) * var(--fs,1));display:block}.acc-id small{font-size:calc((12px) * var(--fs,1));color:var(--ok)}.acc-row{font-size:calc((13px) * var(--fs,1));border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:7px 0;display:flex}.acc-row span{color:var(--text-3)}.acc-row b{text-align:right;overflow-wrap:anywhere;font-weight:600}.account-form .acc-msg{margin-top:10px}.acc-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.acc-list li{font-size:calc((13px) * var(--fs,1));color:var(--text-2);gap:9px;line-height:1.45;display:flex}.acc-list svg{width:15px;height:15px;color:var(--accent-2);flex:none;margin-top:2px}@media (width<=820px){#body-account .account-info{display:none}#body-account .account-form{top:40dvh}}.train-sports button[data-sport=course][aria-checked=true]{color:#ffe6cc;background:#ff9f4324;box-shadow:inset 0 0 0 1px #ff9f4380}.train-sports{grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.train-sports button{height:46px;font-size:calc((11px) * var(--fs,1));letter-spacing:-.02em;text-overflow:ellipsis;flex-direction:column;gap:3px;padding:0 1px;line-height:1.1;overflow:hidden}.train-sports button span[data-icon],.train-sports button svg{flex:none;width:16px;height:16px;display:inline-grid}.run-goal,.run-paces{background:#ff9f430d;border:1px solid #ff9f4338;border-radius:14px;gap:10px;margin:0 0 10px;padding:12px;display:grid}.run-goal__now{font-size:calc((12.5px) * var(--fs,1));color:var(--text-2);align-items:flex-start;gap:8px;margin:0;line-height:1.45;display:flex}.run-goal__now svg{color:#ff9f43;flex:none;width:16px;height:16px;margin-top:1px}.run-goal__now b{color:var(--text)}.run-goal__dists button{height:28px;font-size:calc((12px) * var(--fs,1))}.run-goal__presets .mp-chip small{color:var(--text-3)}.run-goal__field{font-size:calc((12px) * var(--fs,1));color:var(--text-2);gap:4px;display:grid}.run-goal__field small{color:var(--text-3)}.run-goal__field input{height:32px;font-family:var(--mono);font-size:calc((13px) * var(--fs,1));color:var(--text);border:1px solid var(--border);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#ffffff0a;border-radius:9px;outline:none;padding:0 10px}.run-goal__field input:focus{border-color:#ff9f4399}.run-goal__clear{font-size:calc((12px) * var(--fs,1));justify-self:start}.run-paces__head{font-size:calc((13px) * var(--fs,1));flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 10px;margin:0;display:flex}.run-paces__head span{font-family:var(--mono);font-size:calc((11.5px) * var(--fs,1));color:var(--text-3)}.run-paces__list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.run-paces__list li{background:#ffffff08;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;gap:0 10px;padding:6px 8px;display:grid}.run-paces__list li.is-race{background:#ff9f431f}.run-paces__list b{font-size:calc((12.5px) * var(--fs,1))}.run-paces__list span{font-family:var(--mono);font-size:calc((12.5px) * var(--fs,1));text-align:right;color:var(--text)}.run-paces__list span small{font-size:calc((11px) * var(--fs,1));color:var(--text-3);display:block}.run-paces__list>li>small{font-size:calc((11.5px) * var(--fs,1));color:var(--text-3);grid-column:1/-1}.run-paces__pred{font-size:calc((12px) * var(--fs,1));color:var(--text-2);margin:0;line-height:1.6}.run-paces__pred b{font-family:var(--mono);color:var(--text);font-weight:600}.run-paces__none{margin:0 4px 10px}.run-goal .role-source,.run-paces .role-source{margin:0}.run-fold{display:none}@media (width<=820px){.train-list{align-items:flex-end}.run-goal,.run-paces{overscroll-behavior:contain;background:var(--surface);flex:none;width:min(300px,82vw);max-height:min(52dvh,440px);margin:0;padding:10px 12px;overflow-y:auto}.run-goal:not(.is-open)>:not(.run-goal__now),.run-paces:not(.is-open)>:not(.run-paces__head){display:none}.run-goal:not(.is-open),.run-paces:not(.is-open){cursor:pointer}.run-goal__now,.run-paces__head{padding-right:34px;position:relative}.run-goal:not(.is-open) .run-goal__now span,.run-paces:not(.is-open) .run-paces__head span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.run-fold{width:28px;height:28px;color:var(--text-2);border:1px solid var(--border);cursor:pointer;background:#ffffff0d;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:0;transform:translateY(-50%)}.run-goal__now .run-fold svg,.run-fold svg{width:14px;height:14px;color:inherit;transition:transform .25s var(--ease);margin:0;transform:rotate(90deg)}.run-goal__now .run-fold[aria-expanded=true] svg,.run-fold[aria-expanded=true] svg{transform:rotate(-90deg)}.is-open>.run-goal__now .run-fold,.is-open>.run-paces__head .run-fold{top:0;transform:none}}.avatar-tune__hint{font-size:calc((12px) * var(--fs,1));margin:-4px 0 10px;line-height:1.45}.skip-link{z-index:200;color:#0b0c14;min-height:44px;box-shadow:var(--shadow);transition:transform .2s var(--ease);background:linear-gradient(120deg,#b3aaff 0%,#8f9bff 50%,#6cdcff 100%);border-radius:12px;align-items:center;padding:0 18px;font-weight:600;text-decoration:none;display:inline-flex;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.skip-link:focus,.skip-link:focus-visible{outline-offset:2px;outline:2px solid #fff;transform:none}.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}:where(a[href],summary):focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}main:focus,[tabindex="-1"]:focus:not(:focus-visible){outline:none}a.modes__btn{text-decoration:none}a.modes__btn:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}@media (width<=820px){.topbar__actions{gap:4px}}@media (width<=400px){.modes__btn{padding:7px 8px}.topbar{padding:0 8px}}@media (width>=821px) and (width<=1100px){.account-btn{justify-content:center;width:40px;padding:0}.account-btn__name,.account-btn__sync{display:none}}@media (width>=1101px) and (width<=1440px){.account-btn{max-width:140px}.topbar:has(#btn-account:not([hidden])) .brand__name{display:none}}@media (width<=350px){.topbar__actions:has(#btn-account:not([hidden])) #btn-sound{display:none}}@media (width<=820px){.intro{overscroll-behavior:contain;scrollbar-width:none;justify-content:flex-start;overflow:hidden auto}.intro__content{margin-top:auto}}@media (width<=820px) and (height<=740px){.intro .eyebrow{margin-bottom:12px}.intro__lead{font-size:calc((14.5px) * var(--fs,1));margin:10px 0 16px;line-height:1.5}.intro__cta{gap:8px}.intro__cta .btn{height:44px;padding:0 16px}.intro__stats{display:none}}.loader.is-failed{z-index:15;padding:calc(var(--topbar-h) + 16px) 20px 24px}.loader.is-failed .loader__mark svg{opacity:.55;animation:none}.loader.is-failed .loader__bar{display:none}.loader.is-failed .loader__hint{font-family:var(--display);font-size:calc((19px) * var(--fs,1));color:var(--text);text-align:center;font-weight:600}.loader__error{max-width:460px;font-size:calc((14.5px) * var(--fs,1));color:var(--text-2);text-align:center;margin:0;line-height:1.6}.loader__actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:6px;display:flex}.loader__actions .btn{min-height:48px}.notice{z-index:40;top:calc(var(--topbar-h) + 10px);width:min(620px,100vw - 24px);font-size:calc((13.5px) * var(--fs,1));color:var(--text-2);background:var(--surface-strong);border:1px solid var(--border-strong);box-shadow:var(--shadow);animation:notice-in .35s var(--ease) both;border-radius:14px;align-items:center;gap:12px;padding:10px 10px 10px 14px;line-height:1.5;display:flex;position:fixed;left:50%;transform:translate(-50%)}.notice--warn{border-color:#ffc56b73}.notice__icon{color:var(--accent-2);flex:none;display:inline-grid}.notice--warn .notice__icon{color:var(--warn)}.notice__icon svg{width:20px;height:20px}.notice__text{flex:1;margin:0}.notice__text b{color:var(--text)}.notice__actions{flex:none;align-items:center;gap:6px;display:flex}.notice__actions .btn{min-height:44px}.notice__close{width:44px;height:44px}.notice__close svg{width:16px;height:16px}@keyframes notice-in{0%{opacity:0;transform:translate(-50%,-10px)}}@media (width<=560px){.notice{font-size:calc((12.5px) * var(--fs,1));flex-wrap:wrap;gap:6px 10px;padding:8px 8px 8px 12px;line-height:1.4}.notice__actions .btn{min-height:40px;font-size:calc((12.5px) * var(--fs,1));padding:0 12px}.notice__close{width:40px;height:40px}.notice__text{flex-basis:calc(100% - 40px)}.notice__actions{justify-content:flex-end;width:100%}}.help-mode{background:var(--accent-soft);border:1px solid var(--accent-line);font-size:calc((14px) * var(--fs,1));color:var(--text-2);border-radius:14px;margin-top:16px;padding:14px 16px;line-height:1.6}.help-mode+.help-mode{border-color:var(--border);background:#ffffff08;margin-top:10px}.help-mode__title{font-family:var(--display);font-size:calc((16px) * var(--fs,1));color:var(--text);margin:0 0 6px;font-weight:600}.help-mode p{margin:0}.help-mode p+p,.help-mode ul{margin-top:8px}.help-mode ul{margin-bottom:0;padding-left:18px}.help-mode li+li{margin-top:4px}.help-mode b,.help-mode dt{color:var(--text)}.help-mode dl{grid-template-columns:max-content 1fr;gap:6px 12px;margin:8px 0 0;display:grid}.help-mode dd{margin:0}.help-mode a{color:var(--accent-2)}.help-foot{border-top:1px solid var(--border);gap:12px;margin-top:22px;padding-top:18px;display:grid}.help-pref{border:1px solid var(--border);cursor:pointer;background:#ffffff08;border-radius:12px;align-items:flex-start;gap:12px;min-height:44px;padding:10px 12px;display:flex}.help-pref input{width:20px;height:20px;accent-color:var(--accent);cursor:pointer;flex:none;margin:2px 0 0}.help-pref input:disabled,.help-pref input:disabled+.help-pref__text{cursor:default;opacity:.75}.help-pref__text{font-size:calc((13.5px) * var(--fs,1));gap:2px;display:grid}.help-pref__text b{color:var(--text);font-weight:600}.help-pref__text small{font-size:calc((12.5px) * var(--fs,1));color:var(--text-3)}.help-foot__report{justify-self:start;height:auto;min-height:44px;text-decoration:none}.help-foot__report svg{width:17px;height:17px;color:var(--warn)}.help-foot__hint{font-size:calc((12.5px) * var(--fs,1));color:var(--text-3);margin:-4px 0 0}.help-foot__keys{font-size:calc((12.5px) * var(--fs,1));color:var(--text-3);margin:0}.help-foot__legal{flex-wrap:wrap;gap:2px 4px;margin:0 -8px;display:flex}.help-foot__legal a,.hub-foot__legal a{min-height:40px;font-size:calc((13px) * var(--fs,1));color:var(--text-2);text-underline-offset:3px;border-radius:8px;align-items:center;padding:0 8px;-webkit-text-decoration:underline #fff3;text-decoration:underline #fff3;transition:color .2s,background .2s;display:inline-flex}.help-foot__legal a:hover,.hub-foot__legal a:hover{color:var(--text);background:var(--surface-hover)}.help-foot__legal a:focus-visible,.hub-foot__legal a:focus-visible,.help-foot__report:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}@media (hover:none) and (pointer:coarse){.help-foot__keys{display:none}}.legal{z-index:5;background:radial-gradient(70% 40% at 15% 0%, #7e6cff1f, transparent 70%), var(--bg);scrollbar-width:thin;scrollbar-color:#ffffff1a transparent;position:fixed;inset:0;overflow:hidden auto}body[data-app=legal] .vignette{display:none}.legal__inner{width:min(860px,100%);padding:calc(var(--topbar-h) + 18px) clamp(16px, 4vw, 40px) calc(32px + env(safe-area-inset-bottom,0px));margin:0 auto}.legal__inner>.btn{margin:0 8px 8px 0}.legal__status{color:var(--text-2);padding:30px 4px 16px}@media (width<=820px){body[data-app=legal]{--topbar-h:58px}}.hub-foot__legal{flex-wrap:wrap;flex-basis:100%;gap:2px 4px;margin:2px -8px 0;display:flex}.menu__check{border-radius:5px}.menu__item[aria-checked=true] .menu__check{background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%230b0c14' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px no-repeat;border-color:var(--accent)}.menu__item[aria-disabled=true]{cursor:default;opacity:.7}.menu__item:focus-visible{outline:2px solid var(--accent-2);outline-offset:-2px}:root[data-motion=reduce] *,:root[data-motion=reduce] :before,:root[data-motion=reduce] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){.notice,.skip-link{transition:none;animation:none}}.topbar{grid-template-columns:minmax(max-content,1fr) minmax(0,max-content) minmax(max-content,1fr)}.nav{min-width:0;max-width:100%}.nav>.apps{flex:none}.nav>.submodes{flex:0 auto;min-width:0}@media (width<=1280px) and (width>=821px){.topbar{grid-template-columns:auto minmax(0,1fr) auto}}@media (width<=820px){.topbar{grid-template-columns:auto minmax(0,1fr) auto}.apps,.submodes{min-width:0;max-width:100%}.nav>.apps .modes__btn{flex:none}}.topbar.is-tight #btn-sound,.topbar.is-tight .brand__name,.topbar.is-tighter .modes__btn [data-icon]{display:none}.topbar.is-tightest .modes__btn:has(.nav__short) .nav__label{display:none}.topbar.is-tightest .nav__short{display:inline}.topbar.is-tightest .account-btn{justify-content:center;width:40px;padding:0}.topbar.is-tightest .account-btn__name,.topbar.is-tightest .account-btn__sync{display:none}@media (width<=820px){.topbar.is-tighter .modes__btn{padding-left:8px;padding-right:8px}.topbar.is-tightest{column-gap:4px}.topbar.is-tightest .topbar__actions{gap:6px}}.topbar.is-scroll .apps,.topbar.is-scroll .submodes{overscroll-behavior-x:contain;scrollbar-width:none;overflow:auto hidden}.topbar.is-scroll .apps::-webkit-scrollbar{display:none}.topbar.is-scroll .submodes::-webkit-scrollbar{display:none}#btn-sound[aria-pressed=false]{color:var(--text-3)}@media (width<=1024px){.topbar .quality{display:none}}.help-foot__hint a{color:var(--accent-2);text-underline-offset:3px}:root[data-webgl=off] .stage{background:radial-gradient(60% 55% at 62% 42%, #7e6cff29, transparent 70%), radial-gradient(45% 40% at 30% 75%, #52d3ff14, transparent 70%), var(--bg);cursor:default}.no3d{z-index:2;border-radius:var(--radius);text-align:center;background:var(--surface);border:1px dashed var(--border-strong);pointer-events:none;justify-items:center;gap:6px;width:min(260px,100vw - 32px);padding:18px 18px 16px;display:grid;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.no3d__icon svg{width:30px;height:30px;color:var(--text-3)}.no3d__title{font-family:var(--display);font-size:calc((16px) * var(--fs,1));color:var(--text);margin:0;font-weight:600}.no3d__text{font-size:calc((13px) * var(--fs,1));color:var(--text-2);margin:0;line-height:1.55}body[data-mode=intro] .no3d{top:50%;left:auto;right:clamp(24px,6vw,96px);transform:translateY(-50%)}@media (width<=1100px){.no3d{display:none!important}}@media (width<=1360px){body[data-mode=intro] .no3d{display:none!important}}@media (pointer:coarse){.icon-btn,.account-btn{min-width:44px;min-height:44px}.btn--small,.link-btn,.menu__item,.teaser-btn,.help-foot__legal a,.hub-foot__legal a,.glossary__tab,.wseg button{min-height:44px}.teaser-btn{min-width:44px}.topbar .icon-btn,.topbar .account-btn{min-width:0;min-height:0;position:relative}.topbar .icon-btn:after,.topbar .account-btn:after,.topbar .brand:after{content:"";width:44px;min-width:100%;height:44px;min-height:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.topbar .brand{position:relative}.link-btn{padding-top:8px;padding-bottom:8px}button.chip,a.chip,.chip--link{min-height:44px}.info .info__close,.modal__close{min-width:44px;min-height:44px}.toast__close{place-items:center;min-width:44px;min-height:44px;margin:-10px -10px -10px auto;display:inline-grid}.quiz-setup__opt,input[type=text],input[type=search],input[type=email],input[type=password],input[type=number],input[type=date],input[type=tel],select,.search,input[type=range]{min-height:44px}input[type=range]::-webkit-slider-thumb{width:24px;height:24px;margin-top:-10px}input[type=range]::-moz-range-thumb{width:18px;height:18px}.nstep__btn{min-width:44px;min-height:44px}.nstep__screen{min-height:44px}.modes__btn,.seg__btn,.explode__label,.stepper button{position:relative}.modes__btn{justify-content:center;min-width:44px}.modes__btn:after,.seg__btn:after,.stepper button:after,.tr-del:after,.pl-eat:after,.explode__label:after{content:"";width:44px;min-width:100%;height:44px;min-height:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.modes__btn:after,.seg__btn:after,.stepper button:after{width:100%}.seg--text .seg__btn{min-width:44px}.tr-del:after,.pl-eat:after{width:calc(100% + 8px)}}@media (pointer:coarse) and (width<=820px){#weight-dock .seg__btn:after{height:100%}}@media (hover:none) and (pointer:coarse){.sp-opt__go{opacity:1}}
