:root{--brand-navy:#053763;--brand-deep:#06111f;--brand-ink:#081a2f;--brand-green:#005a3d;--brand-teal:#00a99d;--brand-cyan:#20d6c5;--brand-red:#e7232c;--brand-plate:#f8fcfcf5}*{box-sizing:border-box}body{background:radial-gradient(circle at top left, #00a99d33, transparent 34rem), radial-gradient(circle at bottom right, #0537632e, transparent 28rem), linear-gradient(135deg, var(--brand-deep) 0%, var(--brand-ink) 52%, #04131f 100%);color:#e8f3ff;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}.app-shell{grid-template-columns:280px 1fr;min-height:100vh;display:grid}.sidebar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#07111fd6;border-right:1px solid #88d5ff29;height:100vh;padding:24px 18px;position:sticky;top:0}.logo{align-items:center;gap:12px;margin-bottom:28px;display:flex}.logo-mark{color:#061527;background:linear-gradient(135deg,#22c55e,#2dd4bf);border-radius:16px;place-items:center;width:46px;height:46px;font-weight:900;display:grid;box-shadow:0 12px 40px #22c55e47}.logo-image-mark{width:82px;height:48px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;overflow:hidden}.logo-image-mark img{object-fit:contain;filter:drop-shadow(0 0 1px #ffffffb3)drop-shadow(0 10px 24px #00a99d29);width:100%;height:100%;display:block}.logo-title{color:#f4fbff;font-size:20px;font-weight:900;line-height:1.05}.logo-subtitle{color:#9fb7d1;margin-top:4px;font-size:13px}.nav{gap:8px;display:grid}.nav-button{color:#cfe6ff;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:16px;align-items:center;gap:12px;width:100%;padding:13px 14px;display:flex}.nav-button.active{color:#061527;background:linear-gradient(135deg,#00a99df5,#20d6c5f0);font-weight:900}.sidebar-user{background:#030a165c;border:1px solid #88d5ff29;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;padding:12px;display:flex}.sidebar-user strong{color:#e8f3ff;font-size:14px;display:block}.sidebar-user span{color:#9fb7d1;margin-top:3px;font-size:12px;display:block}.icon-btn{color:#cfe6ff;cursor:pointer;background:#88d5ff14;border:1px solid #88d5ff2e;border-radius:12px;place-items:center;width:36px;height:36px;display:grid}.main{padding:28px}.app-loading,.login-screen{place-items:center;min-height:100vh;padding:24px;display:grid}.app-loading{color:#cfe6ff;font-weight:900}.test-loading{color:#dffdf7;background:#2dd4bf14;border:1px solid #2dd4bf3d;border-radius:18px;place-items:center;min-height:240px;font-weight:900;display:grid}.login-layout{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:20px;width:min(620px,100%);display:grid}.login-card{background:#0a192ddb;border:1px solid #2dd4bf57;border-radius:24px;gap:16px;width:100%;padding:28px;display:grid;box-shadow:0 24px 80px #00000047}.login-demo-toggle{justify-content:center}.login-card .login-demo{box-shadow:none;background:linear-gradient(135deg,#0e233bd1,#071222c7),#0a192db8;border-radius:18px;padding:16px}.login-card .login-demo h2{font-size:24px}.login-card .login-demo p{font-size:14px}.login-card .demo-stage{padding:12px}.login-card .reaction-stage{grid-template-columns:88px minmax(0,1fr)}.login-card .reaction-signal{width:74px;height:74px;font-size:15px}.login-card .demo-result{grid-template-columns:58px minmax(0,1fr)}.login-card .demo-score-ring{width:52px;height:52px;font-size:16px}.login-mark{color:#061527;background:linear-gradient(135deg,#22c55e,#2dd4bf);border-radius:18px;place-items:center;width:58px;height:58px;display:grid}.login-brand-logo{width:min(320px,100%);box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.login-brand-logo img{object-fit:contain;filter:drop-shadow(0 0 1px #ffffffb3)drop-shadow(0 18px 42px #00a99d2e);width:100%;height:auto;display:block}.login-card h1{margin:4px 0 6px;font-size:30px}.login-card p{color:#9fb7d1;margin:0;line-height:1.55}.auth-mode-switch{background:#050f1e6b;border:1px solid #2dd4bf3d;border-radius:14px;grid-template-columns:1fr 1fr;gap:8px;padding:4px;display:grid}.auth-mode-switch button{color:#9fb7d1;cursor:pointer;background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:11px 12px;font-weight:900;display:inline-flex}.login-error{color:#fecaca;background:#7f1d1d47;border:1px solid #f871715c;border-radius:14px;padding:10px 12px;font-weight:800}.login-demo{background:linear-gradient(135deg,#0e233beb,#071222e6),#0a192ddb;border:1px solid #88d5ff2e;border-radius:24px;gap:14px;padding:24px;display:grid;overflow:hidden;box-shadow:0 24px 80px #00000047}.login-demo-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.login-demo h2{margin:4px 0 8px;font-size:32px;line-height:1.05}.login-demo p{color:#abc4dd;margin:0;line-height:1.5}.demo-reset{color:#cfe6ff;cursor:pointer;background:#88d5ff14;border:1px solid #88d5ff33;border-radius:14px;flex:none;place-items:center;width:42px;height:42px;display:grid}.demo-stage{background:#030a1657;border:1px solid #88d5ff29;border-radius:18px;gap:12px;padding:14px;display:grid}.demo-stage-title{color:#e8f3ff;align-items:center;gap:8px;font-weight:900;display:inline-flex}.reaction-stage{grid-template-columns:120px minmax(0,1fr);align-items:center}.reaction-stage .demo-stage-title,.reaction-stage p,.reaction-stage .button-row{grid-column:2}.reaction-signal{color:#d7edff;background:radial-gradient(circle at 35% 28%,#ffffff2e,#3b82f657 48%,#0f172acc);border:1px solid #88d5ff2e;border-radius:50%;grid-row:1/span 3;place-items:center;width:96px;height:96px;font-size:18px;font-weight:950;display:grid}.reaction-signal.waiting{background:radial-gradient(circle at 35% 28%,#ffffff2e,#f59e0b6b 48%,#0f172acc)}.reaction-signal.ready{color:#061527;background:radial-gradient(circle at 35% 28%,#fff3,#22c55ec7 48%,#065f46c7);box-shadow:0 0 0 8px #22c55e1a,0 0 36px #22c55e57}.reaction-signal.done{background:radial-gradient(circle at 35% 28%,#ffffff29,#2dd4bf94 48%,#0f172acc)}.demo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.pattern-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.pattern-row span,.demo-option,.attention-dot{color:#e8f3ff;background:#88d5ff14;border:1px solid #88d5ff2e;border-radius:16px;place-items:center;min-height:48px;font-weight:950;display:grid}.demo-option-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.demo-option,.attention-dot{cursor:pointer}.demo-option:hover,.attention-dot:hover,.demo-reset:hover{filter:brightness(1.08);border-color:#2dd4bf8c}.attention-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.attention-dot.demo-hit{background:linear-gradient(135deg,#22c55e38,#2dd4bf1f);border-color:#2dd4bf57}.attention-dot.demo-decoy{background:linear-gradient(135deg,#f8717126,#3b82f61a)}.demo-result{background:linear-gradient(135deg,#22c55e1f,#2dd4bf12);border:1px solid #2dd4bf38;border-radius:18px;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:14px;padding:14px;display:grid}.demo-score-ring{color:#061527;background:linear-gradient(135deg,#22c55e,#2dd4bf);border-radius:50%;place-items:center;width:64px;height:64px;font-size:18px;font-weight:950;display:grid}.demo-result strong{margin-bottom:4px;display:block}.demo-result-tags{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.demo-result-tags span{color:#cfe6ff;background:#88d5ff14;border:1px solid #88d5ff29;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:900}.demo-result-tags span.good{color:#bbf7d0;border-color:#22c55e61}.demo-result-tags span.warning{color:#fecaca;border-color:#f871715c}.demo-result-tags span.normal{color:#fde68a;border-color:#f59e0b5c}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}h1{letter-spacing:-.035em;margin:0 0 6px;font-size:34px}.muted{color:#9fb7d1}.grid{gap:16px;display:grid}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:#0a192dcc;border:1px solid #88d5ff29;border-radius:24px;padding:20px;box-shadow:0 20px 60px #00000038}.card.highlight{background:linear-gradient(135deg,#22c55e26,#2dd4bf1a);border-color:#2dd4bf59}.card-title{margin:0 0 12px;font-size:18px;font-weight:900}.metric{letter-spacing:-.04em;font-size:32px;font-weight:900}.metric.small-metric{letter-spacing:0;word-break:break-word;font-size:20px}.form{gap:12px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}label{color:#cfe6ff;gap:6px;font-size:14px;display:grid}input,select,textarea{color:#e8f3ff;background:#030a168c;border:1px solid #88d5ff2e;border-radius:15px;outline:none;width:100%;padding:12px 13px}textarea{resize:vertical;min-height:90px}.btn{color:#e8f3ff;cursor:pointer;background:#17314f;border:0;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-weight:900;display:inline-flex}.btn:hover{filter:brightness(1.1)}.btn.primary{background:linear-gradient(135deg, #00a96f, var(--brand-cyan));color:#061527}.btn.ghost{color:#cfe6ff;background:#88d5ff14}.button-row{flex-wrap:wrap;gap:10px;display:flex}.confirm-backdrop{z-index:1200;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#020812b8;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.confirm-dialog{background:radial-gradient(circle at 0 0,#2dd4bf29,#0000 18rem),#071425fa;border:1px solid #88d5ff33;border-radius:22px;grid-template-columns:48px minmax(0,1fr);gap:14px;width:min(460px,100%);padding:20px;display:grid;box-shadow:0 30px 100px #0000007a}.confirm-dialog.danger{background:radial-gradient(circle at 0 0,#f8717126,#0000 18rem),#071425fa;border-color:#f8717157}.confirm-icon{color:#061527;background:linear-gradient(135deg,#f59e0b,#facc15);border-radius:16px;place-items:center;width:48px;height:48px;display:grid}.confirm-dialog.danger .confirm-icon{color:#fff;background:linear-gradient(135deg,#ef4444,#fb7185)}.confirm-copy h2{margin:0 0 8px;font-size:22px;line-height:1.1}.confirm-copy p,.confirm-details{color:#cfe6ff;margin:0;line-height:1.45}.confirm-details{color:#9fb7d1;margin-top:10px}.confirm-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.table-wrap{overflow:hidden visible}.table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:0}.table-wrap-compact{overflow-x:hidden}.table-compact{table-layout:fixed;min-width:0}.table th,.table td,.table-compact th,.table-compact td{overflow-wrap:anywhere}.table th,.table td{text-align:left;vertical-align:top;border-bottom:1px solid #88d5ff1f;padding:12px}.table th{color:#9fb7d1;font-size:13px;font-weight:900}.badge{color:#a7fff0;background:#2dd4bf1a;border:1px solid #2dd4bf57;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900;display:inline-flex}.checkbox-line{color:#e8f3ff;align-items:center;gap:10px;font-weight:900;display:flex}.checkbox-line input{flex:none;width:18px;height:18px}.account-chip{color:#a7fff0;background:#2dd4bf1a;border:1px solid #2dd4bf47;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:13px;font-weight:900;display:inline-flex}.athlete-account-mini{grid-template-columns:minmax(110px,1fr) minmax(110px,1fr) auto;align-items:center;gap:8px;min-width:340px;display:grid}.athlete-account-mini input{border-radius:12px;min-height:38px;padding:8px 10px}.checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.check-card{cursor:pointer;background:#030a1661;border:1px solid #88d5ff29;border-radius:16px;padding:12px}.test-screen{text-align:center;place-items:center;min-height:520px;display:grid}.stimulus{color:#061527;background:linear-gradient(135deg,#22c55e,#2dd4bf);border-radius:999px;place-items:center;width:min(320px,70vw);height:min(320px,70vw);font-size:34px;font-weight:900;display:grid;box-shadow:0 30px 90px #22c55e47}.big-word{letter-spacing:-.04em;font-size:72px;font-weight:900}.target-area{background:#030a1652;border:1px solid #88d5ff24;border-radius:22px;height:480px;position:relative;overflow:hidden}.target{cursor:pointer;-webkit-user-select:none;user-select:none;border:2px solid #ffffff8c;border-radius:999px;place-items:center;font-weight:900;display:grid;position:absolute;transform:translate(-50%,-50%)}.mini-card{background:#030a1657;border:1px solid #88d5ff24;border-radius:16px;padding:14px}.mini-card span,.mini-card small{line-height:1.4;display:block}.mini-card strong{color:#9fb7d1;text-transform:uppercase;margin-bottom:8px;font-size:12px;display:block}.eye-check{gap:14px;display:grid}.eye-check-area{cursor:crosshair;background:linear-gradient(#2dd4bf0d 1px,#0000 1px) 0 0/42px 42px,linear-gradient(90deg,#2dd4bf0d 1px,#0000 1px) 0 0/42px 42px,radial-gradient(circle,#2dd4bf2e,#0000 34%),#030a166b;border:1px solid #88d5ff2e;border-radius:18px;height:min(58vh,520px);min-height:360px;position:relative;overflow:hidden}.eye-check-target{color:#0000;-webkit-user-select:none;user-select:none;background:#88d5ff0d;border:1px solid #88d5ff38;border-radius:999px;place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%)}.eye-check-target.active{color:#061527;background:radial-gradient(circle,#7dd3fc 0 22%,#2dd4bf 23% 46%,#2dd4bf24 47% 100%);border:2px solid #2dd4bfeb;font-size:12px;font-weight:900;box-shadow:0 0 0 10px #2dd4bf14,0 24px 70px #2dd4bf3d}.eye-check-crosshair{pointer-events:none;border:2px solid #ffffff47;border-radius:999px;width:26px;height:26px;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.eye-check-caption{color:#cfe6ff;background:#030a16a8;border:1px solid #88d5ff2e;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:800;position:absolute;bottom:14px;left:14px}.gaze-game{gap:14px;display:grid}.gaze-game-arena{cursor:crosshair;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 18% 22%,#38bdf82e,#0000 24%),radial-gradient(circle at 82% 72%,#2dd4bf29,#0000 26%),linear-gradient(135deg,#030a16fa,#061725f5);border:1px solid #2dd4bf38;border-radius:18px;height:min(62vh,560px);min-height:390px;position:relative;overflow:hidden}.gaze-game-grid{pointer-events:none;background-color:#0000;background-image:linear-gradient(#7dd3fc0f 1px,#0000 1px),linear-gradient(90deg,#7dd3fc0f 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:42px 42px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000 0 72%,#0000 100%);mask-image:radial-gradient(circle,#000 0 72%,#0000 100%)}.gaze-game-hud{z-index:5;pointer-events:none;flex-wrap:wrap;gap:8px;display:flex;position:absolute;top:14px;left:14px}.gaze-game-hud span{color:#dffdf7;text-transform:uppercase;background:#030a169e;border:1px solid #7dd3fc33;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.gaze-game-target{z-index:3;background:radial-gradient(circle,#f0fdfaf5 0 18%,#2dd4bfe0 19% 46%,#14b8a62e 47% 100%);border:2px solid #a7f3d0f0;border-radius:999px;place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 10px #2dd4bf14,0 0 48px #2dd4bf61,inset 0 0 28px #ffffff3d}.gaze-game-target span{z-index:2;color:#042f2e;text-transform:uppercase;font-size:12px;font-weight:950;position:relative}.gaze-game-target i{background:conic-gradient(#fde047f2 var(--progress), #0f766e38 0);opacity:.86;border-radius:999px;position:absolute;inset:-9px;-webkit-mask:radial-gradient(circle,#0000 62%,#000 64%);mask:radial-gradient(circle,#0000 62%,#000 64%)}.gaze-live-dot{z-index:6;pointer-events:none;border-radius:999px;width:30px;height:30px;transition:left 60ms linear,top 60ms linear;position:absolute;transform:translate(-50%,-50%)}.gaze-live-dot span{background:#fef08a;border-radius:999px;position:absolute;inset:7px;box-shadow:0 0 18px #fef08aeb,0 0 42px #2dd4bf6b}.gaze-live-dot:before,.gaze-live-dot:after{content:"";border:1px solid #fef08abd;border-radius:999px;position:absolute;inset:0}.gaze-live-dot:after{border-color:#2dd4bf61;inset:-9px}.gaze-live-dot.mouse span{background:#93c5fd;box-shadow:0 0 18px #93c5fdcc,0 0 42px #3b82f652}.gaze-trail-dot{z-index:4;pointer-events:none;background:#5eead4cc;border-radius:999px;width:13px;height:13px;position:absolute;box-shadow:0 0 14px #5eead49e}.gaze-no-signal{z-index:7;color:#fecaca;pointer-events:none;background:#450a0a9e;border:1px solid #f871714d;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:900;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.schulte-grid{grid-template-columns:repeat(5,70px);justify-content:center;gap:10px;display:grid}.schulte-cell{color:#e8f3ff;cursor:pointer;background:#17314f;border:0;border-radius:16px;padding:18px;font-weight:900}.schulte-cell.done{opacity:.35}@media (width<=1000px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:static}.login-layout,.grid.cols-2,.grid.cols-3,.form-grid,.checkbox-grid{grid-template-columns:1fr}}@media (width<=640px){.login-screen{place-items:start center;padding:14px;overflow-x:hidden}.login-layout{width:100%;max-width:340px}.login-layout,.login-demo,.login-card,.demo-stage{min-width:0;max-width:100%}.login-demo,.login-card{border-radius:20px;padding:18px}.login-demo h2{font-size:25px}.reaction-stage{grid-template-columns:1fr}.reaction-signal{grid-row:auto;width:82px;height:82px}.reaction-stage .demo-stage-title,.reaction-stage p,.reaction-stage .button-row{grid-column:auto}.demo-grid,.demo-result,.pattern-row,.demo-option-row,.attention-grid{grid-template-columns:1fr}.demo-score-ring{width:58px;height:58px}}details{background:#030a1633;border:1px solid #88d5ff1f;border-radius:18px;margin:12px 0;padding:12px}details summary{list-style:none}details summary::-webkit-details-marker{display:none}.battery-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.battery-chip{color:#dff3ff;text-align:left;cursor:pointer;background:#071221b3;border:1px solid #88d5ff2e;border-radius:18px;gap:4px;padding:12px 10px;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s;display:grid}.battery-chip:hover{border-color:#2dd4bf6b;transform:translateY(-1px)}.battery-chip.active{background:linear-gradient(135deg,#22c55e2e,#2dd4bf1f);border-color:#2dd4bf6b;box-shadow:0 10px 30px #2dd4bf1f}.battery-chip-time{font-size:15px;font-weight:900}.battery-chip-count{color:#9fb7d1;font-size:12px}.battery-preview{background:#030a166b;border:1px solid #88d5ff1f;border-radius:16px;margin-top:12px;padding:12px 14px}.battery-preview-title{margin-bottom:6px;font-weight:900}.section-summary{justify-content:space-between;align-items:center;display:flex}.pick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.pick-card{color:#e8f3ff;text-align:left;cursor:pointer;background:#030a166b;border:1px solid #88d5ff29;border-radius:18px;grid-template-columns:26px 1fr;align-items:center;gap:12px;width:100%;padding:14px 16px;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s;display:grid}.pick-card:hover{border-color:#2dd4bf57;transform:translateY(-1px)}.pick-card.selected{background:linear-gradient(135deg,#22c55e24,#2dd4bf14);border-color:#2dd4bf66;box-shadow:0 12px 28px #2dd4bf1a}.pick-mark{color:#061527;background:#091424e6;border:1px solid #88d5ff42;border-radius:999px;place-items:center;width:22px;height:22px;font-size:14px;font-weight:900;display:grid}.pick-mark.selected{background:linear-gradient(135deg,#22c55e,#2dd4bf);border-color:#0000}.pick-text{gap:4px;font-size:15px;display:grid}.pick-text small{color:#9fb7d1;font-size:12px}@media (width<=1200px){.battery-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1000px){.pick-grid,.battery-row{grid-template-columns:1fr}}.main{min-width:0}.home-page{gap:18px;display:grid}.home-hero{grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);align-items:stretch;gap:18px;display:grid}.home-hero-content,.home-status-card,.home-step-card{background:#0a192dcc;border:1px solid #88d5ff29;border-radius:28px;box-shadow:0 20px 60px #00000038}.home-hero-content{background:radial-gradient(circle at 100% 0,#2dd4bf2e,#0000 22rem),linear-gradient(135deg,#22c55e24,#0a192ddb);align-content:center;gap:14px;min-height:300px;padding:34px;display:grid}.home-hero-content h1{margin:0;font-size:clamp(42px,6vw,72px);line-height:.95}.home-hero-content p{color:#b9d3ef;max-width:760px;margin:0;font-size:17px;line-height:1.55}.home-kicker{color:#a7fff0;background:#2dd4bf1a;border:1px solid #2dd4bf57;border-radius:999px;width:fit-content;padding:7px 12px;font-size:13px;font-weight:900}.home-status-card{align-content:space-between;gap:16px;padding:24px;display:grid}.home-status-top{color:#a7fff0;justify-content:space-between;align-items:center;display:flex}.home-status-title{font-size:22px;font-weight:900}.home-metrics .card{min-height:134px}.home-step-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.home-step-card{color:#e8f3ff;text-align:left;cursor:pointer;gap:10px;padding:18px;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s;display:grid}.home-step-card:hover{border-color:#2dd4bf6b;transform:translateY(-2px);box-shadow:0 16px 42px #2dd4bf1a}.home-step-icon{color:#061527;background:linear-gradient(135deg, #00a96f, var(--brand-cyan));border-radius:15px;place-items:center;width:42px;height:42px;display:grid}.home-step-title{font-size:16px;font-weight:900}.home-step-text{color:#9fb7d1;min-height:62px;line-height:1.45}.home-dashboard-page{gap:16px;display:grid}.home-command-center{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:stretch;gap:16px;display:grid}.home-command-copy,.home-focus-panel,.home-approach-card,.home-stat-strip{background:#0a192dcc;border:1px solid #88d5ff29;border-radius:24px;box-shadow:0 18px 50px #0003}.home-command-copy{background:radial-gradient(circle at 100% 0,#20d6c52e,#0000 24rem),radial-gradient(circle at 0 100%,#0537633d,#0000 18rem),linear-gradient(135deg,#005a3d3d,#0a192de6);align-content:center;gap:16px;min-height:300px;padding:34px 38px;display:grid}.visiolab-hero-logo{width:min(380px,100%);box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.visiolab-hero-logo img{object-fit:contain;filter:drop-shadow(0 0 1px #ffffffb8)drop-shadow(0 22px 50px #00a99d2e);width:100%;height:auto;display:block}.home-command-copy h1{margin:0;font-size:clamp(42px,5vw,68px);line-height:.98}.home-command-copy p{color:#b9d3ef;max-width:780px;margin:0;font-size:17px;line-height:1.55}.home-focus-panel{align-content:space-between;gap:18px;padding:24px;display:grid}.home-focus-panel p{margin:10px 0 0;line-height:1.5}.home-focus-actions{flex-wrap:wrap;gap:10px;display:flex}.home-stat-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px;display:grid}.home-stat-strip div{background:#030a164d;border:1px solid #88d5ff1a;border-radius:18px;align-content:center;gap:2px;min-height:82px;padding:14px 16px;display:grid}.home-stat-strip strong{font-size:30px;line-height:1}.home-stat-strip span{color:#9fb7d1}.home-approach-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.home-approach-card{color:#e8f3ff;text-align:left;cursor:pointer;gap:10px;min-height:190px;padding:20px;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s;display:grid}.home-approach-card.primary{background:linear-gradient(135deg,#22c55e24,#0a192dd6);border-color:#2dd4bf47}.home-approach-card:hover{border-color:#2dd4bf6b;transform:translateY(-2px);box-shadow:0 16px 42px #2dd4bf1a}.home-approach-stat{color:#a7fff0;background:#2dd4bf14;border:1px solid #2dd4bf38;border-radius:999px;width:fit-content;padding:6px 10px;font-size:12px;font-weight:900}.home-bottom-grid{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:16px;display:grid}.recent-session-list.compact{margin-top:0}.home-quick-links .btn{min-width:136px}.battery-help{margin:0 0 12px;line-height:1.45}.battery-card-grid{gap:10px;margin-top:10px;display:grid}.battery-card{color:#dff3ff;text-align:left;cursor:pointer;overflow-wrap:anywhere;white-space:normal;background:#071221b3;border:1px solid #88d5ff2e;border-radius:18px;gap:8px;width:100%;min-width:0;padding:13px 14px;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s;display:grid}.battery-card:hover{border-color:#2dd4bf6b;transform:translateY(-1px)}.battery-card.active{background:linear-gradient(135deg,#22c55e2e,#2dd4bf1f);border-color:#2dd4bf80;box-shadow:0 10px 30px #2dd4bf1f}.battery-card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.battery-card-tests{color:#9fb7d1;max-width:100%;font-size:13px;line-height:1.38}.sessions-layout{align-items:start}.selected-tests-summary{background:#2dd4bf12;border:1px solid #2dd4bf38;border-radius:16px;padding:12px 14px;line-height:1.45}.selected-tests-summary p{color:#cfe6ff;margin:6px 0 0;font-size:13px}.custom-battery-panel{background:#030a1657;border:1px solid #88d5ff29;border-radius:16px;gap:12px;margin-top:12px;padding:14px;display:grid}.custom-battery-panel p{margin:4px 0 0}.custom-battery-controls{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.session-picker-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.session-picker-head p{margin:4px 0 0}.session-test-picker{gap:12px;margin-top:14px;display:grid}@media (width<=1280px){.home-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1000px){.home-hero,.home-command-center,.home-bottom-grid{grid-template-columns:1fr}.home-command-copy{min-height:auto}.home-approach-grid,.assignment-battery-options,.assignment-context-grid,.assignment-athlete-list{grid-template-columns:1fr}}@media (width<=640px){.main{padding:18px}.home-stat-strip{grid-template-columns:1fr}.home-command-copy,.home-focus-panel,.home-approach-card{border-radius:20px}.home-command-copy,.home-hero-content{padding:24px}.home-step-grid{grid-template-columns:1fr}.home-step-text{min-height:auto}.battery-card-head{flex-direction:column;align-items:flex-start}.custom-battery-controls{grid-template-columns:1fr}}.home-hero-main{grid-template-columns:minmax(0,1fr) 320px;align-items:stretch;gap:18px;display:grid}.home-copy{align-content:center;gap:14px;display:grid}.home-logo-panel{background:#030a165c;border:1px solid #88d5ff29;border-radius:24px;gap:12px;padding:16px;display:grid}.home-logo-panel-head{color:#a7fff0;align-items:center;gap:8px;font-size:13px;font-weight:900;display:flex}.home-logo-grid{gap:10px;display:grid}.home-logo-tile{background:#0a192db8;border:1px solid #88d5ff24;border-radius:18px;grid-template-columns:54px 1fr;align-items:center;gap:12px;padding:12px;display:grid}.home-logo-mark{color:#061527;letter-spacing:.04em;background:linear-gradient(135deg,#22c55ef2,#2dd4bff2);border-radius:18px;place-items:center;width:54px;height:54px;font-size:15px;font-weight:900;display:grid}.home-logo-title{margin-bottom:4px;font-weight:900}.home-logo-subtitle{color:#9fb7d1;font-size:12px;line-height:1.35}.info-note{color:#cfeef0;background:#2dd4bf14;border:1px solid #2dd4bf3d;border-radius:18px;padding:13px 14px;line-height:1.5}.discipline-group{gap:10px;display:grid}.discipline-group-title{color:#a7fff0;font-size:14px;font-weight:900}.check-card.selected{background:linear-gradient(135deg,#22c55e24,#2dd4bf14);border-color:#2dd4bf66}.selected-counter{color:#a7fff0;font-weight:900}.discipline-detail-card{gap:12px;display:grid}.discipline-detail-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.discipline-hint{color:#9fb7d1;margin-top:-2px;line-height:1.45}@media (width<=1180px){.home-hero-main{grid-template-columns:1fr}}.athlete-layout{align-items:start}.discipline-checkbox-grid{margin-bottom:6px}.discipline-inline-card{background:#030a164d;border:1px solid #88d5ff29;border-radius:20px;margin-top:14px;padding:16px}.discipline-inline-card .card-title,.discipline-detail-card .card-title{margin-bottom:0}@media (width<=1400px){.athlete-layout{grid-template-columns:1fr}}body:before{content:"";pointer-events:none;background-image:linear-gradient(#88d5ff09 1px,#0000 1px),linear-gradient(90deg,#88d5ff09 1px,#0000 1px);background-size:42px 42px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#0009,#0000 70%);mask-image:linear-gradient(#0009,#0000 70%)}.card,.home-hero-content,.home-status-card,.home-step-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.home-kicker{align-items:center;gap:7px;display:inline-flex}.home-feature-row{flex-wrap:wrap;gap:8px;margin-top:2px;display:flex}.home-feature-row span{color:#b9d3ef;background:#030a164d;border:1px solid #88d5ff26;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;font-weight:800;display:inline-flex}.official-logo-panel{background:radial-gradient(circle at 100% 0,#2dd4bf24,#0000 12rem),#030a1666;border:1px solid #88d5ff29;border-radius:26px;align-content:start;gap:12px;min-width:320px;padding:16px;display:grid}.official-logo-card{background:#00000038;border:1px solid #88d5ff29;border-radius:20px;place-items:center;min-height:96px;padding:13px;display:grid;overflow:hidden}.official-logo-card img{object-fit:contain;max-width:100%;max-height:100px;display:block}.status-redesign{background:radial-gradient(circle at 100% 0,#2dd4bf1f,#0000 16rem),#0a192dcc}.home-signature{color:#b9d3ef33;letter-spacing:.02em;-webkit-user-select:none;user-select:none;margin-top:-4px;padding-left:4px;font-size:10px}.multi-select{gap:10px;margin-top:12px;display:grid;position:relative}.multi-select-trigger{color:#e8f3ff;cursor:pointer;text-align:left;background:linear-gradient(135deg,#22c55e1a,#2dd4bf0f),#030a168c;border:1px solid #2dd4bf42;border-radius:20px;justify-content:space-between;align-items:center;gap:14px;width:100%;min-height:68px;padding:13px 16px;display:flex;box-shadow:inset 0 1px #ffffff08}.multi-select-trigger:hover,.multi-select-trigger.open{border-color:#2dd4bf94;box-shadow:0 16px 38px #2dd4bf1a}.multi-select-title{font-size:16px;font-weight:900;display:block}.multi-select-hint{color:#9fb7d1;margin-top:4px;font-size:13px;line-height:1.35;display:block}.multi-select-arrow{color:#a7fff0;flex:none;transition:transform .18s}.multi-select-trigger.open .multi-select-arrow{transform:rotate(180deg)}.selected-chip-row{flex-wrap:wrap;gap:8px;display:flex}.selected-chip{color:#cffff7;cursor:pointer;background:#2dd4bf1a;border:1px solid #2dd4bf47;border-radius:999px;align-items:center;gap:8px;padding:7px 10px;font-size:12px;font-weight:900;display:inline-flex}.selected-chip span{opacity:.8;font-size:14px}.multi-select-panel{background:#06111ff5;border:1px solid #88d5ff29;border-radius:24px;gap:14px;padding:14px;display:grid;box-shadow:0 24px 70px #00000057}.multi-select-group{gap:10px;display:grid}.multi-select-group-title{color:#a7fff0;letter-spacing:.01em;font-size:13px;font-weight:900}.multi-select-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.multi-option{color:#e8f3ff;text-align:left;cursor:pointer;background:#030a1675;border:1px solid #88d5ff24;border-radius:18px;grid-template-columns:30px 1fr;align-items:center;gap:10px;min-height:58px;padding:11px 12px;transition:transform .15s,border-color .15s,background .15s,box-shadow .15s;display:grid}.multi-option:hover{border-color:#2dd4bf66;transform:translateY(-1px)}.multi-option.selected{background:linear-gradient(135deg,#22c55e2e,#2dd4bf1a);border-color:#2dd4bf8c;box-shadow:0 12px 28px #2dd4bf1a}.multi-option-mark{color:#061527;background:#071221d1;border:1px solid #88d5ff3d;border-radius:11px;place-items:center;width:30px;height:30px;display:grid}.multi-option.selected .multi-option-mark{background:linear-gradient(135deg,#22c55e,#2dd4bf);border-color:#0000}.multi-option-label{font-weight:900;line-height:1.25}.check-card input[type=checkbox]{opacity:0;pointer-events:none;position:absolute}.check-card{align-items:center;min-height:56px;padding-left:48px;display:flex;position:relative}.check-card:before{content:"";background:#071221d1;border:1px solid #88d5ff3d;border-radius:10px;width:26px;height:26px;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.check-card.selected:before{background:linear-gradient(135deg,#22c55e,#2dd4bf);border-color:#0000}.check-card.selected:after{content:"✓";color:#061527;font-weight:1000;position:absolute;top:50%;left:20px;transform:translateY(-53%)}@media (width<=1180px){.official-logo-panel{min-width:0}.multi-select-options{grid-template-columns:1fr}}@media (width<=640px){.official-logo-card{min-height:76px}.home-signature{font-size:9px}}.sidebar,.card,.home-hero-content,.home-status-card,.home-step-card{-webkit-backdrop-filter:none!important}.card{box-shadow:0 12px 34px #0000002e}.home-step-card,.pick-card,.battery-card,.multi-option,.selected-chip,.btn{transition:border-color .12s,background .12s,box-shadow .12s,filter .12s!important}.home-step-card:hover,.pick-card:hover,.battery-card:hover,.multi-option:hover{transform:none!important}label{color:#d7edff;letter-spacing:.01em;font-size:13px;font-weight:850}input,select,textarea{color:#f3faff;background:linear-gradient(#0c1e34c7,#040d1bc7);border:1px solid #88d5ff30;border-radius:18px;min-height:52px;padding:14px 16px;box-shadow:inset 0 1px #ffffff09,0 8px 20px #0000001a}select{cursor:pointer;appearance:auto}textarea{min-height:116px;line-height:1.45}input:hover,select:hover,textarea:hover{border-color:#88d5ff57}input:focus,select:focus,textarea:focus{background:linear-gradient(#0e2741eb,#040f1eeb);border-color:#2dd4bfd9;box-shadow:0 0 0 4px #2dd4bf1c,0 12px 30px #00000029}.form-grid{gap:14px}.clean-logo-panel{box-shadow:none!important;background:0 0!important;border:0!important;align-content:center!important;gap:18px!important;padding:0!important}.clean-logo-card{box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;min-height:auto!important;padding:0!important;overflow:visible!important}.clean-logo-card img{filter:drop-shadow(0 12px 24px #00000038)}details{content-visibility:auto;contain-intrinsic-size:76px 460px;overflow:hidden}details summary.section-summary{cursor:pointer;min-height:56px;margin:0;padding:2px 4px}details summary.section-summary:after{content:"Показать";color:#a7fff0;background:#2dd4bf14;border:1px solid #2dd4bf40;border-radius:999px;margin-left:auto;padding:6px 10px;font-size:12px;font-weight:900}details[open] summary.section-summary:after{content:"Скрыть"}.pick-grid,.multi-select-panel,.battery-card-grid,.discipline-inline-card{content-visibility:auto;contain-intrinsic-size:320px}.multi-select-panel{scrollbar-width:thin;max-height:520px;overflow:auto;box-shadow:0 16px 42px #0000003d}.multi-option{background:#051222b3;border-radius:17px;min-height:54px}.multi-option.selected{box-shadow:none}.selected-chip-more{cursor:default;opacity:.82}@media (width<=1180px){.clean-logo-panel{grid-template-columns:repeat(2,minmax(0,1fr))}}select option{color:#06111f;background:#f5fbff}.clean-logo-panel{justify-items:start;align-content:start!important;gap:100px!important;padding-top:10px!important}.home-signature{letter-spacing:.02em;padding-left:6px;font-weight:700;color:#ffffffc7!important;font-size:15px!important}.session-test-group-stack{gap:18px;margin-top:8px;display:grid}.session-test-group{background:#030a1638;border:1px solid #88d5ff1f;border-radius:20px;padding:16px}.session-test-group-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.session-test-group-title{font-size:18px;font-weight:900}.session-test-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.session-test-card{text-align:left;color:#e8f3ff;cursor:pointer;background:#06111f9e;border:1px solid #88d5ff29;border-radius:20px;gap:8px;width:100%;padding:15px 16px;display:grid}.session-test-card:hover{border-color:#2dd4bf57}.session-test-card.active{background:linear-gradient(135deg,#22c55e24,#2dd4bf14);border-color:#2dd4bfb3}.session-test-card.done{box-shadow:inset 0 0 0 1px #2dd4bf1f}.session-test-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.session-test-icon-wrap{color:#a7fff0;background:#2dd4bf1a;border-radius:12px;place-items:center;width:34px;height:34px;display:grid}.session-test-state{border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900}.session-test-name{font-size:16px;font-weight:900;line-height:1.3}.session-test-meta{color:#9fb7d1;font-size:13px;line-height:1.4}.test-panel-toolbar{gap:12px;margin-bottom:14px;display:grid}.test-panel-status-row{flex-wrap:wrap;gap:10px;display:flex}.test-status-pill{border:1px solid #88d5ff2e;border-radius:999px;align-items:center;gap:6px;padding:7px 11px;font-size:12px;font-weight:900;display:inline-flex}.test-status-pill.done{color:#bdf7d3;background:#22c55e24}.test-status-pill.pending,.test-status-pill.default{color:#cde2f7;background:#88d5ff14}.test-status-pill.changed{color:#a7fff0;background:#2dd4bf1a;border-color:#2dd4bf57}.test-settings-wrap{background:#030a1638;border:1px solid #88d5ff24;border-radius:20px;gap:12px;margin-bottom:18px;padding:15px;display:grid}.test-settings-grid{gap:14px}.test-settings-note,.test-settings-changed{color:#9fb7d1;line-height:1.45}.test-component-wrap{border-top:1px solid #88d5ff1a;padding-top:12px}@media (width<=1180px){.session-test-grid{grid-template-columns:1fr}}.test-modal-backdrop{z-index:1000;background:#020812b8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.test-modal-shell{background:radial-gradient(circle at 0 0,#22c55e29,#0000 28rem),linear-gradient(135deg,#071425fa,#040e1cfa);border:1px solid #2dd4bf5c;border-radius:30px;width:min(1280px,96vw);max-height:94vh;padding:22px;overflow:auto;box-shadow:0 34px 110px #0000008a}.test-modal-header{border-bottom:1px solid #88d5ff1f;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:14px;display:flex}.test-modal-header h2{margin:4px 0 0;font-size:28px;line-height:1.1}.test-modal-kicker{color:#a7fff0;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:900}.test-modal-close{color:#e8f3ff;cursor:pointer;background:#88d5ff14;border:1px solid #88d5ff2e;border-radius:16px;place-items:center;width:44px;height:44px;display:grid}.test-modal-close:hover{background:#ef444429;border-color:#ef44446b}.modal-toolbar{margin-top:16px}.modal-settings-wrap{margin-top:12px}.test-modal-body{background:#030a1642;border:1px solid #88d5ff1f;border-radius:24px;margin-top:16px;padding:18px;overflow-x:auto}.test-start-instruction{background:#2dd4bf14;border:1px solid #2dd4bf42;border-radius:18px;margin-bottom:14px;padding:14px 16px}.test-start-instruction-title{color:#a7fff0;text-transform:uppercase;margin-bottom:6px;font-size:13px;font-weight:900}.test-start-instruction p{color:#cfe6ff;margin:0;line-height:1.5}.test-modal-body .test-screen{min-height:460px}@media (width<=720px){.test-modal-backdrop{padding:10px}.test-modal-shell{border-radius:22px;width:100%;max-height:96vh;padding:14px}.test-modal-header h2{font-size:22px}}.clean-logo-panel{gap:100px!important}.btn.danger{color:#ffd6d6;background:#ef444426;border:1px solid #ef444459}.btn.danger:hover{filter:brightness(1.12)}.btn.compact{border-radius:13px;padding:9px 12px}.home-recent-card{align-content:start}.profile-layout{margin-bottom:16px}.profile-wide-card{grid-column:1/-1}.profile-wide-card .card{padding:16px 22px}.profile-wide-card .card-title{margin-bottom:10px}.profile-message{margin-bottom:16px}.profile-stack{gap:14px;display:grid}.assignment-builder{gap:18px}.assignment-step-label{color:#a7fff0;text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;font-size:12px;font-weight:900}.assignment-battery-options,.assignment-context-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.assignment-context-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-battery-option,.assignment-context{color:#e8f3ff;text-align:left;cursor:pointer;background:#030a1657;border:1px solid #88d5ff29;border-radius:16px;gap:7px;padding:14px;display:grid}.assignment-battery-option strong,.assignment-context strong{font-size:14px}.assignment-battery-option span,.assignment-context span,.assignment-battery-option small{color:#9fb7d1;line-height:1.35}.assignment-battery-option.active,.assignment-context.active,.assignment-athlete-row.active{background:#2dd4bf1a;border-color:#2dd4bf94;box-shadow:0 0 0 3px #2dd4bf12}.assignment-target-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.assignment-athlete-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:260px;padding-right:2px;display:grid;overflow-y:auto}.assignment-athlete-row{cursor:pointer;background:#030a164d;border:1px solid #88d5ff24;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 12px;display:grid}.assignment-athlete-row input{width:16px;height:16px}.assignment-athlete-row span{overflow-wrap:anywhere}.assignment-athlete-row small{color:#9fb7d1}.assignment-extra{background:#030a1642;border:1px solid #88d5ff24;border-radius:16px;padding:12px 14px}.assignment-extra summary{cursor:pointer;color:#cfe6ff;font-weight:900}.assignment-extra[open] summary{margin-bottom:12px}.athlete-code-box{color:#e8f3ff;letter-spacing:0;text-align:center;background:#2dd4bf1f;border:1px solid #2dd4bf57;border-radius:16px;width:100%;padding:18px;font-size:34px;font-weight:950}.athlete-access-panel{grid-template-columns:minmax(220px,320px) minmax(260px,1fr) auto;align-items:center;gap:12px;display:grid}.athlete-code-compact{background:#2dd4bf1f;border:1px solid #2dd4bf57;border-radius:14px;gap:2px;padding:10px 14px;display:grid}.athlete-code-compact span{color:#a7fff0;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:900}.athlete-code-compact strong{color:#e8f3ff;letter-spacing:0;font-size:27px;font-weight:950;line-height:1.05}.athlete-access-info{gap:8px;min-width:0;display:grid}.athlete-access-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.athlete-access-actions .btn{white-space:nowrap}.btn.notify{color:#dffdf7;background:#2dd4bf24;border-color:#2dd4bf94;position:relative}.notification-badge{color:#061527;background:#22c55e;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 7px;font-size:12px;font-weight:950;display:inline-flex}.compact-note{margin:0;line-height:1.4}.compact-tags{margin-top:0}.athlete-request-panel{gap:10px;margin-top:14px;display:grid}.profile-tags{flex-wrap:wrap;gap:8px;display:flex}.profile-tags span{color:#dffdf7;background:#22c55e1f;border:1px solid #2dd4bf3d;border-radius:999px;align-items:center;min-height:30px;padding:6px 10px;font-size:13px;font-weight:800;display:inline-flex}.connection-request{gap:10px;display:grid}.profile-summary-row{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;display:grid}.profile-summary-row p{margin:4px 0 0}.profile-icon{color:#061527;background:linear-gradient(135deg,#22c55e,#2dd4bf);border-radius:14px;place-items:center;width:42px;height:42px;display:grid}.profile-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.profile-stats-grid .mini-card span{color:#e8f3ff;font-size:24px;font-weight:900}.profile-table{min-width:0}@media (width<=720px){.profile-stats-grid{grid-template-columns:1fr}.profile-table{min-width:0}.athlete-access-panel{grid-template-columns:1fr}.profile-wide-card .card{padding:16px}.athlete-access-actions{justify-content:stretch}.athlete-access-actions .btn{justify-content:center;width:100%}.athlete-code-compact strong{font-size:24px}}.active-session-mini{gap:10px;margin-top:12px;display:grid}.recent-session-list{gap:9px;margin-top:8px;display:grid}.recent-session-row{color:#e8f3ff;text-align:left;cursor:pointer;background:#030a165c;border:1px solid #88d5ff24;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:11px 12px;display:flex}.recent-session-row span:first-child{gap:4px;display:grid}.status-dot{white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:900}.test-modal-body .test-screen{outline:none}.test-modal-body{min-height:520px}.save-toast-inline{color:#dffdf7;background:linear-gradient(135deg,#22c55e2e,#2dd4bf1a);border:1px solid #2dd4bf6b;border-radius:18px;margin-bottom:16px;padding:14px 16px;font-weight:900}.method-card-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;display:grid}.test-info-hero{grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:18px;margin-bottom:18px;display:grid}.test-info-hero h2{letter-spacing:-.035em;margin:12px 0 8px;font-size:clamp(26px,3.6vw,42px)}.test-info-hero p{color:#b9d3ef;margin:0;line-height:1.55}.test-info-counter{text-align:center;background:#2dd4bf14;border:1px solid #2dd4bf4d;border-radius:24px;justify-items:center;gap:4px;padding:18px;display:grid}.test-info-counter strong{font-size:48px;line-height:1}.test-info-counter span{color:#a9c6df;font-weight:800}.test-info-layout{grid-template-columns:minmax(300px,.42fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.search-label span{align-items:center;gap:7px;display:inline-flex}.test-info-filter-row{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.chip-btn{color:#cfe6ff;cursor:pointer;background:#88d5ff14;border:1px solid #88d5ff29;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:900}.chip-btn.active{color:#061527;background:linear-gradient(135deg,#22c55e,#2dd4bf);border-color:#0000}.test-info-list-panel{gap:8px;max-height:calc(100vh - 360px);padding-right:4px;display:grid;overflow:auto}.test-info-nav-card{color:#e8f3ff;text-align:left;cursor:pointer;background:#030a165c;border:1px solid #88d5ff24;border-radius:18px;gap:4px;width:100%;padding:12px 13px;display:grid}.test-info-nav-card span{font-weight:900}.test-info-detail-head{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.ghost-badge{color:#cfe6ff;background:#88d5ff14;align-items:center;gap:6px;display:inline-flex}.test-info-lead{color:#d8ecff;margin:0 0 14px;font-size:17px;line-height:1.55}.test-info-section{border-top:1px solid #88d5ff1c;margin-top:14px;padding-top:14px}.test-info-section h3{color:#a7fff0;margin:0 0 9px;font-size:17px}.test-info-section p{color:#cfe0f1;margin:0;line-height:1.6}.test-info-list{color:#cfe0f1;margin:0;padding-left:20px;line-height:1.55}.test-info-list li+li{margin-top:5px}.test-info-two-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}@media (width<=1180px){.method-card-row,.test-info-hero,.test-info-layout,.test-info-two-cols{grid-template-columns:1fr}.test-info-list-panel{max-height:none}}.memory-grid{justify-content:center;gap:12px;min-height:150px;margin:18px auto;display:grid}.memory-cell{border:2px solid #ffffff40;border-radius:16px;width:54px;height:54px;box-shadow:0 10px 24px #0003}.clock-face{background:radial-gradient(circle,#2dd4bf1a,#030a1675);border:2px solid #2dd4bf73;border-radius:999px;width:260px;height:260px;margin:18px auto;position:relative;box-shadow:inset 0 0 60px #2dd4bf14}.clock-hand{transform-origin:50% 0;background:linear-gradient(#2dd4bf,#22c55e);border-radius:999px;width:4px;height:105px;position:absolute;top:50%;left:50%}.clock-center{background:#2dd4bf;border-radius:999px;width:18px;height:18px;position:absolute;top:calc(50% - 9px);left:calc(50% - 9px)}.timewall-wrap{text-align:left;gap:14px;width:clamp(360px,82vw,780px);display:grid}.timewall-brief{grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:12px;display:grid}.timewall-brief>div{border:1px solid var(--border);background:color-mix(in srgb, var(--surface-strong) 76%, transparent);box-shadow:var(--shadow-soft);border-radius:18px;padding:14px 16px}.timewall-brief strong,.timewall-brief span{display:block}.timewall-brief strong{color:var(--text);margin-bottom:6px;font-size:.94rem}.timewall-brief span{color:var(--muted);line-height:1.45}.timewall-status{flex-wrap:wrap;gap:8px;display:flex}.timewall-status span{border:1px solid color-mix(in srgb, var(--accent) 42%, transparent);background:color-mix(in srgb, var(--accent-soft) 78%, transparent);color:var(--text);border-radius:999px;padding:7px 11px;font-size:.84rem;font-weight:800}.timewall-message{color:var(--text);text-align:center;margin:0;font-weight:800;line-height:1.45}.timewall-track{border:1px solid color-mix(in srgb, var(--accent) 34%, var(--border));background:linear-gradient(90deg, color-mix(in srgb, var(--surface) 92%, transparent), color-mix(in srgb, var(--surface-strong) 92%, transparent)), repeating-linear-gradient(90deg, transparent 0 38px, #7fc9ff14 38px 40px);border-radius:22px;height:112px;margin-top:2px;position:relative;overflow:hidden}.timewall-track:after{content:"";background:linear-gradient(180deg, var(--accent), var(--accent-2));width:4px;box-shadow:0 0 20px color-mix(in srgb, var(--accent) 44%, transparent);border-radius:999px;position:absolute;top:18px;bottom:18px;right:18px}.timewall-occluder{background:repeating-linear-gradient(45deg, color-mix(in srgb, var(--accent) 20%, transparent), color-mix(in srgb, var(--accent) 20%, transparent) 10px, color-mix(in srgb, var(--surface-strong) 80%, transparent) 10px, color-mix(in srgb, var(--surface-strong) 80%, transparent) 20px);border-left:2px solid color-mix(in srgb, var(--accent) 46%, transparent);width:55%;position:absolute;top:0;bottom:0;left:45%}.timewall-label{z-index:2;color:var(--muted);text-transform:uppercase;font-size:.74rem;font-weight:900;position:absolute;top:10px}.timewall-label.start{left:16px}.timewall-label.hidden{left:calc(45% + 16px)}.timewall-label.finish{color:var(--text);right:28px}.timewall-dot{will-change:left;background:linear-gradient(135deg,#22c55e,#2dd4bf);border-radius:999px;width:28px;height:28px;position:absolute;top:calc(50% - 14px);left:0%;transform:translate(-50%);box-shadow:0 0 24px #2dd4bf61}.timewall-actions{justify-content:center;margin-top:2px}.timewall-response{min-width:min(100%,260px)}@media (width<=720px){.timewall-wrap{width:min(100%,94vw)}.timewall-brief{grid-template-columns:1fr}.timewall-track{height:100px}.timewall-label.hidden{left:calc(45% + 8px)}.timewall-message{text-align:left}}.corsi-area{background:#030a1657;border:1px solid #88d5ff29;border-radius:24px;width:clamp(420px,82vw,720px);height:420px;margin:16px auto;position:relative}.corsi-block{color:#0000;cursor:pointer;background:#102641db;border:1px solid #88d5ff38;border-radius:18px;width:62px;height:62px;position:absolute;transform:translate(-50%,-50%)}.corsi-block.active{background:linear-gradient(135deg,#22c55e,#2dd4bf);box-shadow:0 0 26px #2dd4bf73}.trail-area{background:#030a1657;border:1px solid #88d5ff29;border-radius:24px;width:clamp(560px,84vw,820px);height:520px;margin:16px auto;position:relative}.trail-node{color:#e8f3ff;cursor:pointer;background:#102641eb;border:1px solid #2dd4bf52;border-radius:999px;width:54px;height:54px;font-weight:900;position:absolute;transform:translate(-50%,-50%)}.trail-node.done{color:#061527;background:linear-gradient(135deg,#22c55e,#2dd4bf)}.matrix-grid{grid-template-columns:repeat(3,92px);justify-content:center;gap:10px;margin:16px auto;display:grid}.matrix-cell{background:#030a1666;border:1px solid #88d5ff2e;border-radius:18px;justify-content:center;align-items:center;gap:2px;min-height:82px;font-size:22px;font-weight:900;display:flex}.matrix-cell.hidden{color:#a7fff0;font-size:30px}.matrix-options{grid-template-columns:repeat(4,92px);justify-content:center;gap:10px;margin-top:14px;display:grid}.matrix-option{cursor:pointer;background:0 0;border:0;padding:0}.peripheral-field{background:#030a1657;border:1px solid #88d5ff29;border-radius:24px;place-items:center;width:clamp(360px,80vw,640px);height:420px;margin:16px auto;display:grid;position:relative}.central-arrow{color:#e8f3ff;font-size:96px;font-weight:900}.peripheral-dot{background:linear-gradient(135deg,#22c55e,#2dd4bf);border-radius:999px;width:30px;height:30px;position:absolute;box-shadow:0 0 26px #2dd4bf80}.peripheral-dot.top{top:24px;left:calc(50% - 15px)}.peripheral-dot.right{top:calc(50% - 15px);right:24px}.peripheral-dot.bottom{bottom:24px;left:calc(50% - 15px)}.peripheral-dot.left{top:calc(50% - 15px);left:24px}@media (width<=720px){.matrix-grid{grid-template-columns:repeat(3,74px)}.matrix-options{grid-template-columns:repeat(2,92px)}.clock-face{width:220px;height:220px}.clock-hand{height:88px}}.clean-logo-panel{align-content:center!important;justify-items:stretch!important;gap:24px!important;min-width:min(360px,100%)!important}.clean-logo-card{justify-content:center!important;align-items:center!important;min-height:86px!important;display:flex!important}.clean-logo-card img{object-fit:contain;width:100%;max-width:100%;filter:none!important}.official-logo-card.logo-fmba img{max-height:128px!important}.official-logo-card.logo-kk img{max-height:88px!important}.test-modal-shell{contain:layout paint;background:#071425fa!important;box-shadow:0 18px 48px #0000006b!important}.test-modal-body{contain:layout;background:#030a1638!important}.stimulus,.clock-face,.corsi-block.active,.peripheral-dot,.timewall-dot{box-shadow:none!important}.btn.subtle{color:#9fb7d1;background:0 0;border:1px solid #88d5ff24}.btn.subtle:hover{color:#e8f3ff;background:#88d5ff0f;border-color:#88d5ff47}.home-next-step{gap:12px;display:grid}.active-session-mini{gap:10px;display:grid}.active-session-mini small{color:#9fb7d1;line-height:1.4}.recent-session-title{color:#a7fff0;text-transform:uppercase;margin-bottom:2px;font-size:12px;font-weight:900}.session-progress-panel{background:#030a164d;border:1px solid #2dd4bf3d;border-radius:20px;grid-template-columns:minmax(0,1.2fr) minmax(180px,.8fr) auto;align-items:center;gap:14px;margin-bottom:16px;padding:16px;display:grid}.session-progress-panel p{margin:5px 0 0}.session-progress-bar{background:#071221e0;border:1px solid #2dd4bf38;border-radius:999px;height:12px;overflow:hidden}.session-progress-bar span{border-radius:inherit;background:linear-gradient(90deg,#22c55e,#2dd4bf);height:100%;display:block}.save-toast-inline{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}@media (width<=980px){.session-progress-panel{grid-template-columns:1fr}}.practice-gate{text-align:center;background:#030a163d;border:1px dashed #2dd4bf47;border-radius:20px;align-content:center;place-items:center;gap:18px;min-height:360px;padding:22px;display:grid}.practice-title{color:#a7fff0;margin-bottom:8px;font-size:18px;font-weight:900}.practice-gate p{color:#cfe6ff;max-width:680px;margin:0;line-height:1.55}.session-report-head{grid-template-columns:minmax(0,1fr) minmax(220px,.38fr);align-items:start;gap:18px;margin-bottom:16px;display:grid}.session-report-head h2{margin:4px 0 0;font-size:24px}.report-kicker{color:#a7fff0;text-transform:uppercase;font-size:12px;font-weight:900}.report-summary-pill{color:#dffdf7;background:#2dd4bf14;border:1px solid #2dd4bf47;border-radius:18px;padding:12px;font-weight:800}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.report-box{background:#030a1642;border:1px solid #88d5ff24;border-radius:18px;padding:14px}.report-list{color:#cfe6ff;margin:10px 0 0;padding-left:18px;line-height:1.5}.quality-flag-list{gap:8px;margin-top:10px;display:grid}.quality-flag,.quality-inline{background:#88d5ff14;border:1px solid #88d5ff29;border-radius:12px;padding:8px 10px}.quality-flag span{font-weight:900;display:block}.quality-flag small{color:#cfe6ff;margin-top:3px;display:block}.quality-flag.warning,.quality-inline.warning{color:#fff0ba;background:#eab3081f;border-color:#eab3086b}.quality-flag.critical,.quality-inline.critical{color:#ffd6d6;background:#ef44441f;border-color:#ef44446b}.quality-flag.info,.quality-inline.info{color:#dffdf7;background:#2dd4bf14;border-color:#2dd4bf47}.quality-inline{margin:0 6px 6px 0;padding:5px 8px;font-size:12px;font-weight:900;display:inline-flex}.compare-controls{margin:10px 0 12px}.compare-table{margin-top:14px}.compare-direction{color:#cfe6ff;background:#88d5ff14;border-radius:999px;padding:5px 9px;font-weight:900;display:inline-flex}.compare-direction.better{color:#bdf7d3;background:#22c55e24}.compare-direction.worse{color:#ffd6d6;background:#ef444424}.game-test-screen{gap:12px;display:grid}.game-hud{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.game-hud-item{color:#cfe6ff;background:#030a1657;border:1px solid #88d5ff29;border-radius:12px;align-items:center;gap:5px;min-height:34px;padding:7px 10px;font-size:13px;font-weight:800;display:inline-flex}.game-hud-item strong{color:#a7fff0}.game-test-actions{justify-content:flex-start;display:flex}.cs2-arena{cursor:crosshair;background:linear-gradient(90deg,#ffffff0b 1px,#0000 1px) 0 0/42px 42px,linear-gradient(0deg,#ffffff09 1px,#0000 1px) 0 0/42px 42px,linear-gradient(135deg,#4b4639 0%,#262b2d 46%,#1b2528 100%);border:1px solid #b1976c59;border-radius:14px;height:min(52vh,520px);min-height:380px;position:relative;overflow:hidden}.cs2-arena-grid{pointer-events:none;background:linear-gradient(28deg,#0000 0 33%,#b1976c24 33% 38%,#0000 38% 100%),linear-gradient(150deg,#0000 0 55%,#0f172a61 55% 62%,#0000 62% 100%);position:absolute;inset:0}.cs2-map-props,.dota-map-dressing{pointer-events:none;position:absolute;inset:0}.cs2-cover,.cs2-bombsite,.cs2-lane,.cs2-topbar,.cs2-radar,.cs2-feedback{pointer-events:none}.cs2-cover{background:linear-gradient(145deg,#7a6846,#3b3329);border:1px solid #e2e8f01f;border-radius:6px;position:absolute;box-shadow:inset 0 0 0 2px #0000002e,0 12px 24px #0000002e}.cs2-cover.cover-1{width:96px;height:54px;top:22%;left:18%;transform:rotate(-8deg)}.cs2-cover.cover-2{width:116px;height:46px;top:26%;left:63%;transform:rotate(7deg)}.cs2-cover.cover-3{width:128px;height:52px;top:58%;left:42%;transform:rotate(-3deg)}.cs2-cover.cover-4{width:78px;height:78px;top:68%;left:76%;transform:rotate(12deg)}.cs2-lane{background:#e2e8f01a;border-radius:999px;height:16px;position:absolute}.cs2-lane.lane-mid{top:48%;left:16%;right:18%;transform:rotate(-13deg)}.cs2-lane.lane-long{top:78%;left:48%;right:5%;transform:rotate(16deg)}.cs2-bombsite{color:#fde68abd;border:2px solid #f59e0b6b;border-radius:50%;place-items:center;width:78px;height:78px;font-size:28px;font-weight:900;display:grid;position:absolute}.cs2-bombsite.site-a{top:62%;left:9%}.cs2-bombsite.site-b{top:14%;right:10%}.cs2-topbar{z-index:3;color:#dbeafe;background:#030a169e;border:1px solid #e2e8f024;border-radius:10px;align-items:center;gap:10px;min-height:34px;padding:6px 12px;font-size:13px;font-weight:900;display:inline-flex;position:absolute;top:10px;left:50%;transform:translate(-50%)}.cs2-topbar strong:first-of-type{color:#86efac}.cs2-topbar strong:last-of-type{color:#fca5a5}.cs2-radar{z-index:3;background:linear-gradient(90deg,#0000 48%,#e2e8f01f 48% 52%,#0000 52%),linear-gradient(#0000 48%,#e2e8f01f 48% 52%,#0000 52%),#030a16a8;border:1px solid #e2e8f02e;border-radius:50%;width:96px;height:96px;position:absolute;top:14px;left:14px}.radar-site{border:2px solid #fde68aa6;border-radius:50%;width:16px;height:16px;position:absolute}.radar-site.a{top:65%;left:22%}.radar-site.b{top:22%;right:20%}.radar-blip{background:#22c55e;border-radius:50%;width:10px;height:10px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 6px #22c55e24}.radar-blip.decoy{background:#ef4444;box-shadow:0 0 0 6px #ef444424}.radar-blip.friendly{background:#60a5fa;box-shadow:0 0 0 6px #60a5fa29}.cs2-crosshair{z-index:3;pointer-events:none;width:42px;height:42px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cs2-crosshair:before,.cs2-crosshair:after{content:"";background:#cfe6ffb8;border-radius:999px;position:absolute}.cs2-crosshair:before{width:2px;height:42px;top:0;left:20px}.cs2-crosshair:after{width:42px;height:2px;top:20px;left:0}.cs2-target{z-index:4;color:#e2e8f0;text-align:center;cursor:pointer;background:#030a16b8;border:2px solid #e2e8f047;border-radius:14px;grid-template-rows:1fr auto;place-items:end center;width:76px;height:92px;padding:0;font-size:10px;font-weight:900;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 7px #ffffff0d,0 14px 30px #00000042}.cs2-target-label{background:#0f172ab8;border-radius:0 0 11px 11px;width:100%;min-height:22px;padding:4px 3px;line-height:1.1;display:block}.cs2-target-silhouette{align-content:center;justify-items:center;width:48px;height:58px;display:grid;position:relative}.cs2-target-head{background:currentColor;border-radius:50%;width:22px;height:22px;display:block}.cs2-target-body{background:currentColor;border-radius:14px 14px 8px 8px;width:38px;height:30px;margin-top:-2px;display:block}.cs2-target.enemy{color:#86efac;border-color:#22c55e}.cs2-target.decoy{color:#fca5a5;border-color:#ef4444}.cs2-target.friendly{color:#bfdbfe;border-color:#60a5fa}.cs2-target.fast{outline:3px solid #fde68ab8}.cs2-feedback{z-index:5;width:78px;height:78px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cs2-feedback.hit:before,.cs2-feedback.hit:after,.cs2-feedback.wrong:before,.cs2-feedback.wrong:after,.cs2-feedback.miss:before,.cs2-feedback.miss:after{content:"";transform-origin:50%;border-radius:999px;width:54px;height:4px;position:absolute;top:50%;left:50%}.cs2-feedback.hit:before,.cs2-feedback.hit:after{background:#86efac}.cs2-feedback.wrong:before,.cs2-feedback.wrong:after,.cs2-feedback.miss:before,.cs2-feedback.miss:after{background:#fca5a5}.cs2-feedback.hit:before,.cs2-feedback.wrong:before,.cs2-feedback.miss:before{transform:translate(-50%,-50%)rotate(45deg)}.cs2-feedback.hit:after,.cs2-feedback.wrong:after,.cs2-feedback.miss:after{transform:translate(-50%,-50%)rotate(-45deg)}.dota-playfield{grid-template-columns:minmax(0,1fr) 190px;align-items:stretch;gap:14px;display:grid}.dota-lane{background:linear-gradient(110deg,#16653475,#0000 42%,#7f1d1d4d),linear-gradient(#0000,#0f172a5c),#142312;border:1px solid #84cc1633;border-radius:14px;min-height:380px;position:relative;overflow:hidden}.dota-lane-line{z-index:1;background:linear-gradient(90deg,#b484449e,#5f442d94),#cfe6ff14;border-radius:999px 28px;height:70px;position:absolute;top:50%;left:7%;right:7%;transform:translateY(-50%);box-shadow:inset 0 0 0 1px #ffffff14}.dota-river{background:#3b82f633;border-radius:999px;width:120%;height:46px;position:absolute;top:49%;left:-10%;transform:rotate(-18deg)}.dota-base{opacity:.82;border-radius:20px;width:110px;height:110px;position:absolute;transform:rotate(45deg)}.dota-base.radiant{background:#22c55e38;border:1px solid #86efac47;bottom:-34px;left:-34px}.dota-base.dire{background:#ef44442e;border:1px solid #fca5a547;top:-34px;right:-34px}.dota-tower{z-index:2;background:linear-gradient(#cbd5e1,#64748b);border-radius:8px 8px 4px 4px;width:36px;height:58px;position:absolute;box-shadow:0 10px 18px #00000047}.dota-tower:before{content:"";background:#fde68a;border-radius:50% 50% 4px 4px;width:24px;height:20px;position:absolute;top:-11px;left:50%;transform:translate(-50%)}.dota-tower.tower-1{bottom:23%;left:20%}.dota-tower.tower-2{top:22%;right:19%}.dota-tree{z-index:1;background:#166534b3;border-radius:50%;width:72px;height:40px;position:absolute;box-shadow:22px 8px #15803d9e,-18px 10px #14532d9e}.dota-tree.tree-1{top:16%;left:10%}.dota-tree.tree-2{bottom:17%;right:13%}.dota-tree.tree-3{bottom:8%;left:47%}.dota-hero-cursor{z-index:3;background:#0f172a85;border:2px solid #fde68ad6;border-radius:8px;width:34px;height:34px;position:absolute;bottom:42px;left:50%;transform:translate(-50%)rotate(45deg)}.dota-creep{z-index:4;color:#dffdf7;cursor:pointer;background:#030a16c2;border:1px solid #88d5ff33;border-radius:16px;place-items:center;width:76px;height:88px;padding:8px;display:grid;position:absolute;transform:translate(-50%,-50%)}.dota-creep.low{background:#713f1294;border-color:#fde68adb;box-shadow:0 0 0 6px #fde68a1a,0 14px 24px #0000003d}.creep-hp-bar{background:#ef44443d;border-radius:999px;height:8px;position:absolute;top:8px;left:8px;right:8px;overflow:hidden}.creep-hp-bar span{background:#22c55e;height:100%;display:block}.dota-creep.low .creep-hp-bar span{background:#facc15}.creep-hp-text{color:#dffdf7;font-size:12px;font-weight:900;position:absolute;bottom:8px;left:8px;right:8px}.creep-unit{align-content:center;justify-items:center;width:52px;height:54px;margin-top:6px;display:grid;position:relative}.creep-head,.creep-torso,.creep-weapon{display:block}.creep-head{z-index:2;background:#cbd5e1;border-radius:50% 50% 42% 42%;width:22px;height:20px;position:relative;box-shadow:inset 0 -5px #0f172a38}.creep-head:before,.creep-head:after{content:"";background:#0f172abf;border-radius:50%;width:4px;height:4px;position:absolute;top:7px}.creep-head:before{left:5px}.creep-head:after{right:5px}.creep-torso{z-index:1;background:#94a3b8;border-radius:12px 12px 8px 8px;width:36px;height:28px;margin-top:-1px;position:relative;box-shadow:inset 0 -7px #0f172a3d}.creep-weapon{background:#d6a85f;border-radius:999px;width:28px;height:5px;position:absolute;top:18px;right:2px;transform:rotate(-24deg);box-shadow:0 0 0 1px #0f172a3d}.dota-creep.ranged .creep-weapon{background:#bfdbfe;width:34px;height:4px;right:-2px}.dota-creep.radiant .creep-torso{background:#4ade80}.dota-creep.radiant .creep-head{background:#bbf7d0}.dota-creep.dire .creep-torso{background:#f87171}.dota-creep.dire .creep-head{background:#fecaca}.dota-creep.low .creep-head,.dota-creep.low .creep-torso{background:#fde68a}.last-hit-badge{color:#fef3c7;background:#713f12e0;border:1px solid #fde68ac7;border-radius:999px;min-width:62px;padding:5px 7px;font-size:11px;font-weight:900;line-height:1;position:absolute;top:-16px;left:50%;transform:translate(-50%);box-shadow:0 8px 18px #00000042}.dota-minimap{background:linear-gradient(135deg,#22c55e2e,#0000 45%,#ef444429),#08111f;border:1px solid #88d5ff33;border-radius:16px;min-height:180px;position:relative;overflow:hidden}.minimap-river{background:#60a5fa47;width:120%;height:18px;position:absolute;top:50%;left:-10%;transform:rotate(-34deg)}.minimap-tower,.minimap-wave{display:block;position:absolute}.minimap-tower{background:#e2e8f0;border-radius:4px;width:14px;height:14px}.minimap-tower.radiant{bottom:22%;left:24%;box-shadow:0 0 0 4px #22c55e24}.minimap-tower.dire{top:22%;right:24%;box-shadow:0 0 0 4px #ef444424}.minimap-wave{background:#fde68a99;border-radius:999px;width:38%;height:5px;top:51%;left:32%;transform:rotate(-32deg)}.map-ping{cursor:pointer;background:#eab30859;border:3px solid #fde68a;border-radius:50%;width:24px;height:24px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 8px #eab3081f}.map-ping:focus-visible{outline-offset:3px;outline:2px solid #a7fff0}.game3d-screen{gap:12px;display:grid}.game3d-canvas{cursor:crosshair;touch-action:manipulation;background:#111827;border:0;border-radius:0;width:100%;height:min(56vh,560px);min-height:410px;display:block}.three3d-stage{background:#111827;position:relative;overflow:hidden}.three3d-stage canvas{width:100%;height:100%;display:block}.three-crosshair{pointer-events:none;width:44px;height:44px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.three-crosshair:before,.three-crosshair:after{content:"";background:#e2e8f0db;border-radius:999px;position:absolute}.three-crosshair:before{width:2px;height:44px;top:0;left:21px}.three-crosshair:after{width:44px;height:2px;top:21px;left:0}.dota3d-canvas{cursor:pointer}.three-dota-minimap{background:linear-gradient(135deg,#22c55e33,#0000 45%,#ef44442e),#030a16bd;border:1px solid #e2e8f038;border-radius:14px;width:128px;height:128px;position:absolute;top:14px;right:14px;overflow:hidden;box-shadow:0 18px 38px #00000047}.three-minimap-river{background:#60a5fa57;width:124%;height:18px;position:absolute;top:49%;left:-12%;transform:rotate(-34deg)}.three-minimap-base{border-radius:5px;width:16px;height:16px;position:absolute}.three-minimap-base.radiant{background:#22c55e;bottom:22px;left:22px}.three-minimap-base.dire{background:#ef4444;top:22px;right:22px}.three-map-ping{cursor:pointer;background:#eab30870;border:3px solid #fde68a;border-radius:50%;width:26px;height:26px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 8px #eab30824}.three-map-ping:focus-visible{outline-offset:3px;outline:2px solid #a7fff0}.game3d-items{margin-top:0}.dota-bottom-ui{background:#030a1657;border:1px solid #88d5ff29;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;display:grid}.dota-item-cue{color:#cfe6ff;font-size:13px;font-weight:800}.dota-item-bar{grid-template-columns:repeat(3,82px);gap:8px;display:grid}.dota-item{color:#dffdf7;cursor:pointer;background:#0f172ae0;border:1px solid #e2e8f029;border-radius:10px;grid-template-rows:auto 1fr auto;justify-items:center;gap:3px;min-height:82px;padding:7px;display:grid;position:relative}.dota-item.active{border-color:#fde68ae0;box-shadow:0 0 0 5px #fde68a1f,inset 0 0 18px #fde68a1a}.dota-item-key{color:#fff;background:#030a16c2;border-radius:6px;place-items:center;min-width:22px;height:22px;font-size:13px;font-weight:900;display:grid;position:absolute;top:6px;left:6px}.dota-item-icon{background:#94a3b8;border-radius:10px;width:34px;height:34px;margin-top:16px;position:relative}.dota-item.stick .dota-item-icon{background:linear-gradient(90deg,#0000 43%,#ffffffb8 43% 57%,#0000 57%),linear-gradient(#0000 43%,#ffffffb8 43% 57%,#0000 57%),#22c55e;border-radius:50%}.dota-item.flask .dota-item-icon{background:linear-gradient(0deg,#60a5fa 0 64%,#ffffffd1 64% 72%,#2563eb 72% 100%);border-radius:8px 8px 14px 14px}.dota-item.ward .dota-item-icon{background:radial-gradient(circle at 50% 36%,#fde68a 0 28%,#0000 29%),linear-gradient(#a855f7,#6d28d9);border-radius:50% 50% 8px 8px}.dota-item-title{color:#cfe6ff;max-width:100%;font-size:11px;font-weight:900;line-height:1.1}.fpv3d-stage{cursor:grab;background:#08111f}.fpv3d-stage:active{cursor:grabbing}.fpv-reticle{pointer-events:none;border:1px solid #67e8f961;border-radius:50%;width:64px;height:64px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.fpv-reticle:before,.fpv-reticle:after{content:"";background:#67e8f9e0;border-radius:999px;position:absolute}.fpv-reticle:before{width:2px;height:84px;top:-10px;left:50%;transform:translate(-50%)}.fpv-reticle:after{width:84px;height:2px;top:50%;left:-10px;transform:translateY(-50%)}.fpv-control-help{pointer-events:none;grid-template-columns:repeat(2,minmax(130px,auto));gap:7px;max-width:min(520px,100% - 28px);display:grid;position:absolute;bottom:14px;left:14px}.fpv-control-help span{color:#dffdf7;background:#030a169e;border:1px solid #67e8f933;border-radius:10px;align-items:center;min-height:30px;padding:6px 9px;font-size:12px;font-weight:900;display:inline-flex}.game-test-screen,.game3d-screen,.gaze-game,.gaze-game-arena,.timewall-track,.cs2-arena,.dota-playfield,.dota-lane,.game3d-canvas,.three3d-stage{contain:layout paint}.game3d-canvas canvas,.three3d-stage canvas{contain:strict}.gaze-live-dot,.gaze-trail-dot,.gaze-game-target i,.three-crosshair,.fpv-reticle{will-change:transform, left, top}@media (width<=980px){.session-report-head,.report-grid,.dota-playfield{grid-template-columns:1fr}.dota-minimap{min-height:160px}.dota-bottom-ui{grid-template-columns:1fr}.dota-item-bar{grid-template-columns:repeat(3,minmax(72px,1fr))}.fpv-control-help{grid-template-columns:1fr}.game3d-canvas{min-height:360px}}@media (width<=640px){.athlete-account-mini{grid-template-columns:1fr;min-width:220px}.cs2-arena,.dota-lane{min-height:320px}.cs2-target{width:64px;height:64px}.dota-creep{width:64px;height:78px}.game3d-canvas{height:58vh;min-height:320px}}@media print{body{color:#111!important;background:#fff!important}.sidebar,.page-header,.main>.card:not(.highlight){display:none!important}.main>.card:not(:has(.session-report-head)){display:none!important}.app-shell{display:block!important}.main{padding:0!important}.report-print-area,.report-print-area .card{color:#111!important;box-shadow:none!important;background:#fff!important;border:0!important;display:block!important}.muted,.report-list,.quality-flag small{color:#333!important}.report-summary-pill,.report-box,.quality-flag{color:#111!important;background:#fff!important;border-color:#999!important}}@media (width<=1024px){body{overflow-x:hidden}.app-shell{min-width:0;display:block}.sidebar{z-index:30;border-bottom:1px solid #88d5ff29;border-right:0;height:auto;padding:12px;position:sticky;top:0}.logo{margin-bottom:12px}.nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.nav-button{text-align:center;border-radius:14px;justify-content:center;gap:8px;min-height:44px;padding:10px 8px}.sidebar-user{margin-top:12px}.main{min-width:0;padding:18px}.page-header{align-items:flex-start;gap:12px}.home-hero-main,.home-hero,.home-command-center,.home-bottom-grid,.home-dashboard-grid,.profile-layout,.athlete-layout,.sessions-layout,.test-info-layout,.report-grid,.session-report-head,.grid.cols-2,.grid.cols-3{grid-template-columns:1fr!important}.home-logo-panel,.official-logo-panel{min-width:0}.assignment-battery-options,.assignment-context-grid,.assignment-athlete-list,.session-test-grid,.pick-grid,.form-grid,.checkbox-grid,.compare-controls{grid-template-columns:1fr!important}.table-wrap,.table-wrap-compact,.compare-table{width:100%;max-width:100%;overflow-x:visible}.table,.table-compact,.profile-table,.compare-table table{table-layout:fixed;width:100%;min-width:0!important}.table th,.table td,.table-compact th,.table-compact td{overflow-wrap:anywhere;word-break:normal;padding:11px 8px;font-size:13px}.test-modal-shell{border-radius:18px;width:min(100%,960px);max-height:calc(100vh - 18px)}}@media (width<=720px){.sidebar{padding:10px}.logo{gap:10px;margin-bottom:10px}.logo-mark{border-radius:13px;width:38px;height:38px;font-size:13px}.logo-title{font-size:17px}.logo-subtitle,.sidebar-user span{font-size:11px}.nav{grid-template-columns:repeat(3,minmax(0,1fr))}.nav-button{flex-direction:column;min-height:54px;font-size:12px;line-height:1.1}.nav-button svg{width:18px;height:18px}.sidebar-user{border-radius:14px;padding:10px}.sidebar-user strong{font-size:13px}.main{padding:14px 10px 22px}.page-header{grid-template-columns:1fr;display:grid}.page-header h1,.home-command-copy h1,.login-card h1{font-size:clamp(26px,9vw,36px);line-height:1.05}.card,.login-card,.login-demo,.home-command-copy,.home-focus-panel,.home-approach-card,.test-info-hero{border-radius:18px;padding:16px}.card-title{font-size:19px}.button-row,.home-focus-actions,.auth-mode-switch,.custom-battery-controls,.assignment-target-head,.test-panel-toolbar,.test-panel-status-row{grid-template-columns:1fr;align-items:stretch;display:grid}.btn,.button-row .btn,.home-focus-actions .btn,.page-header .btn{justify-content:center;width:100%;min-height:44px}.icon-btn,.demo-reset,.test-modal-close{width:42px;min-width:42px;height:42px}.home-feature-row,.profile-tags,.compact-tags{gap:6px}.home-feature-row span,.profile-tags span,.badge,.test-status-pill{white-space:normal;font-size:12px}.athlete-access-panel,.profile-summary-row,.home-status-top,.session-picker-head,.session-test-card-top,.recent-session-row,.assignment-athlete-row{grid-template-columns:1fr!important}.athlete-code-compact strong,.athlete-code-box{font-size:clamp(24px,8vw,32px)}.profile-stats-grid,.home-stat-strip{grid-template-columns:1fr}.table th,.table td,.table-compact th,.table-compact td{padding:10px 6px;font-size:12px}.table .btn,.table-compact .btn{min-height:38px;padding:8px 10px}.test-modal-backdrop{padding:6px}.test-modal-shell{border-radius:16px;width:100%;max-height:calc(100vh - 12px)}.test-modal-header,.test-panel-toolbar,.test-modal-body{padding:12px}.test-modal-header{grid-template-columns:1fr auto;gap:10px}.test-modal-header h2{font-size:20px}.test-start-instruction,.test-loading{border-radius:14px}.game3d-canvas,.cs2-arena,.dota-lane,.fpv3d-stage{height:min(58vh,440px);min-height:300px}.schulte-grid{grid-template-columns:repeat(5,minmax(44px,1fr));gap:6px}.schulte-cell{border-radius:12px;min-height:44px;padding:10px 6px}.mobile-card-table,.mobile-card-table tbody,.mobile-card-table tr,.mobile-card-table td{display:block}.mobile-card-table thead{display:none}.mobile-card-table tbody{gap:10px;display:grid}.mobile-card-table tr{background:#030a164d;border:1px solid #88d5ff24;border-radius:16px;padding:10px 12px}.mobile-card-table td{overflow-wrap:anywhere;grid-template-columns:minmax(92px,.34fr) minmax(0,1fr);align-items:start;gap:10px;display:grid;border:0!important;padding:8px 0!important;font-size:13px!important}.mobile-card-table td:before{content:attr(data-label);color:#9fb7d1;letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:900}.mobile-card-table .mobile-table-empty{color:#9fb7d1;display:block!important}.mobile-card-table .mobile-table-empty:before{content:none}.mobile-card-table .button-row,.mobile-card-table .athlete-account-mini{grid-template-columns:1fr;display:grid}.mobile-card-table .btn{width:100%}}@media (width<=420px){.nav{grid-template-columns:repeat(2,minmax(0,1fr))}.main{padding-inline:8px}.card,.login-card,.login-demo,.home-command-copy,.home-focus-panel,.home-approach-card,.test-info-hero{padding:14px}.table th,.table td,.table-compact th,.table-compact td{font-size:11px}.mobile-card-table td{grid-template-columns:1fr;gap:4px}}@media (width<=720px){.app-shell{display:block}.sidebar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#07111ff0;justify-content:space-between;align-items:center;gap:10px;min-height:64px;padding:10px 12px;display:flex}.logo{min-width:0;margin:0}.logo-mark{flex:none}.logo-image-mark{border-radius:13px;width:68px;height:40px;padding:3px 5px}.logo-title{text-overflow:ellipsis;white-space:nowrap;max-width:172px;overflow:hidden}.logo-subtitle,.sidebar-user span{display:none}.sidebar-user{border-radius:14px;flex:none;gap:8px;max-width:150px;margin:0;padding:7px 8px}.sidebar-user strong{text-overflow:ellipsis;white-space:nowrap;max-width:88px;font-size:12px;overflow:hidden}.sidebar-user .icon-btn{border-radius:12px;width:34px;min-width:34px;height:34px}.nav{z-index:60;min-height:calc(72px + env(safe-area-inset-bottom));padding:8px 6px calc(8px + env(safe-area-inset-bottom));overscroll-behavior-x:contain;scrollbar-width:none;background:#07111ff5;border-top:1px solid #88d5ff29;grid-template-columns:none;grid-auto-columns:minmax(54px,1fr);grid-auto-flow:column;gap:4px;display:grid;position:fixed;left:0;right:0;overflow-x:auto;top:calc(100vh - 72px - env(safe-area-inset-bottom))!important;top:calc(100dvh - 72px - env(safe-area-inset-bottom))!important;bottom:auto!important}.nav::-webkit-scrollbar{display:none}.nav-button{white-space:normal;border-radius:14px;min-height:54px;padding:7px 5px;font-size:10px;line-height:1.05}.nav-button svg{width:18px;height:18px}.main{padding-top:14px;padding-bottom:calc(96px + env(safe-area-inset-bottom))}.login-brand-logo,.visiolab-hero-logo{border-radius:0;width:100%;max-width:300px;padding:0}}body{background:radial-gradient(circle at 8% 0,#00a99d42,#0000 28rem),radial-gradient(circle at 92% 12%,#e7232c14,#0000 24rem),linear-gradient(135deg,#061315 0%,#0b2329 45%,#071521 100%)}.logo{background:#ffffff09;border:1px solid #2cd6c51a;border-radius:18px;gap:10px;margin-bottom:22px;padding:8px 6px}.logo-image-mark{background:linear-gradient(135deg,#f8fffdf5,#dff6f2e6);border:1px solid #00a99d3d;border-radius:14px;width:76px;height:44px;padding:5px 6px;box-shadow:0 14px 32px #00a99d29}.logo-image-mark img{filter:none}.logo-title{color:#f5fffd;font-size:19px}.logo-subtitle{color:#9cc8c9}.nav-button{color:#cfe6e6;border-radius:14px}.sidebar-user{background:#ffffff0b;border-color:#2cd6c524}.home-command-center{grid-template-columns:minmax(0,1.05fr) minmax(300px,.62fr)}.home-command-copy,.home-focus-panel,.home-approach-card,.home-stat-strip,.home-dashboard-page>.card{background:linear-gradient(145deg,#0c2b30e0,#081723eb);border-color:#3ddecd33;box-shadow:0 22px 70px #0000002e}.home-command-copy{background:radial-gradient(circle at 88% 12%,#42ddcf29,#0000 18rem),linear-gradient(145deg,#0a3838eb,#081723f0);align-content:center;gap:13px;min-height:270px;padding:30px 36px}.visiolab-hero-logo{width:min(230px,42vw);margin-bottom:2px}.visiolab-hero-logo img{filter:drop-shadow(0 0 1px #ffffff9e)drop-shadow(0 16px 34px #00a99d29)}.home-command-copy h1{font-size:clamp(40px,4.2vw,58px)}.home-command-copy p{color:#c6dde0;max-width:720px}.home-kicker{color:#b9fff2;background:#d7fff814;border-color:#42ddcf57;padding:6px 11px;font-size:12px}.home-feature-row span,.badge{color:#c8fff6;background:#04121c7a;border-color:#42ddcf38}.home-focus-panel{grid-template-rows:auto 1fr auto;align-content:stretch}.home-focus-panel>div:nth-child(2){align-self:center}.home-status-title{color:#f6fffd;font-size:21px;line-height:1.18}.home-focus-panel p,.muted{color:#a9c4c8}.home-stat-strip div{background:#04121c5c;border-color:#42ddcf1a}.home-stat-strip strong,.metric{color:#f2fffc}.home-approach-card.primary,.home-approach-card:hover{border-color:#42ddcf52}@media (width<=1024px){.logo{padding:6px}.home-command-center{grid-template-columns:1fr!important}}@media (width<=720px){.logo-image-mark{border-radius:12px;width:70px;height:40px;padding:4px 5px}.home-command-copy{min-height:auto;padding:22px}.visiolab-hero-logo{width:min(190px,72vw);max-width:190px}.home-command-copy h1{font-size:clamp(34px,11vw,44px)}}body{color:#102836;background:radial-gradient(circle at 0 0,#00a99d29,#0000 30rem),radial-gradient(circle at 100% 8%,#0537631a,#0000 26rem),linear-gradient(135deg,#eef7f5 0%,#f7fbfa 46%,#e8f1f5 100%)}.sidebar{background:#f8fcfbf0;border-right-color:#0d47531f;box-shadow:18px 0 56px #0d273414}.logo{background:0 0;border:0;padding:4px 0}.logo-image-mark{width:88px;height:50px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.logo-image-mark img,.login-brand-logo img,.visiolab-hero-logo img{filter:none}.logo-title,.sidebar-user strong{color:#102836}.logo-subtitle,.sidebar-user span{color:#5a7479}.nav-button{color:#254452}.nav-button:hover{background:#00a99d14}.nav-button.active{color:#06252b;background:linear-gradient(135deg,#18c58f,#34d5ca);box-shadow:0 14px 28px #00a99d2e}.sidebar-user,.icon-btn{color:#244856;background:#ffffffb8;border-color:#0d47531f}.main{background-color:#0000;background-image:linear-gradient(#0d475309 1px,#0000 1px),linear-gradient(90deg,#0d475309 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:70px 70px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box}.card,.login-card,.login-demo,.home-command-copy,.home-focus-panel,.home-approach-card,.home-stat-strip,.home-status-card,.home-step-card,.home-dashboard-page>.card{color:#102836;background:linear-gradient(145deg,#ffffffe0,#f3faf9cc);border-color:#0d475321;box-shadow:0 22px 60px #0d27341a}.login-card p,.login-demo p,.home-command-copy p,.home-focus-panel p,.home-step-text,.home-stat-strip span,.home-logo-subtitle,.muted{color:#496973}label,.table th,.card-title,.home-status-title,.home-step-title,.home-approach-card,.metric,.home-stat-strip strong{color:#102836}input,select,textarea{color:#102836;background:#ffffffb8;border-color:#0d475329}input:focus,select:focus,textarea:focus{border-color:#00a99d9e;box-shadow:0 0 0 4px #00a99d1f}.table th,.table td{border-bottom-color:#0d47531a}.btn.primary{color:#05292c;background:linear-gradient(135deg,#13bd88,#28ccc4);box-shadow:0 14px 28px #00a99d2e}.btn.ghost,.btn.subtle{color:#173d4a;background:#0d475314}.home-command-copy{background:radial-gradient(circle at 82% 12%,#00a99d21,#0000 20rem),linear-gradient(145deg,#ffffffeb,#ebf8f6d6);min-height:260px;position:relative;overflow:hidden}.home-command-copy>:not(.visiolab-hero-logo){z-index:1;position:relative}.visiolab-hero-logo{z-index:0;opacity:.16;pointer-events:none;mix-blend-mode:multiply;width:min(260px,28vw);margin:0;position:absolute;top:28px;right:36px}.home-command-copy h1{color:#102836}.home-kicker,.badge,.home-feature-row span,.account-chip{color:#086253;background:#00a99d17;border-color:#00a99d3d}.home-focus-panel{background:radial-gradient(circle at 100% 0,#00a99d1a,#0000 16rem),#ffffffd1}.home-stat-strip div,.mini-card,.battery-preview,.check-card,.pick-card,.session-test-card,.test-info-nav-card{color:#102836;background:#ffffff94;border-color:#0d47531c}.home-approach-card.primary{background:radial-gradient(circle at 0 0,#00a99d1f,#0000 16rem),#ffffffd1}.login-brand-logo{background:0 0;border:0;width:min(300px,100%);padding:0}.auth-mode-switch,.demo-stage,.demo-result,.pattern-row span,.demo-option,.attention-dot{color:#102836;background:#ffffff94;border-color:#0d47531f}.auth-mode-switch button{color:#496973}.auth-mode-switch button.active{color:#05292c;background:linear-gradient(135deg,#13bd88,#28ccc4)}@media (width<=1024px){.sidebar{background:#f8fcfbf5}}@media (width<=720px){.logo-image-mark{width:76px;height:42px;box-shadow:none;background:0 0;border:0;padding:0}.home-command-copy{padding:24px 20px}.visiolab-hero-logo{opacity:.12;width:150px;max-width:150px;top:18px;right:18px}}.home-step-action{color:#00796f;font-weight:950}.home-approach-stat{color:#00796f;background:#00a99d14;border-color:#00a99d33}.recent-session-row{color:#102836;background:#ffffffad;border-color:#0d47531f}.recent-session-row:hover{background:#ebf8f6e0;border-color:#00a99d38}.recent-session-row small{color:#496973}.status-dot.active{color:#08765f;background:#13bd881f}.status-dot.finished{color:#33515b;background:#0d475314}.home-signature{color:#1028368f!important}.sidebar{flex-direction:column;display:flex}.nav{align-content:start}.sidebar-footer{gap:10px;margin-top:auto;display:grid}.theme-toggle{color:#173d4a;cursor:pointer;text-align:left;background:#ffffffb8;border:1px solid #0d47531f;border-radius:18px;align-items:center;gap:10px;width:100%;padding:10px;display:flex;box-shadow:0 12px 28px #0d27340f}.theme-toggle:hover{filter:brightness(1.02);border-color:#00a99d42}.theme-toggle-track{background:#0d47531f;border-radius:999px;align-items:center;width:48px;min-width:48px;height:28px;padding:3px;display:flex;box-shadow:inset 0 0 0 1px #0d475314}.theme-toggle-thumb{color:#05292c;background:linear-gradient(135deg,#13bd88,#28ccc4);border-radius:999px;place-items:center;width:22px;height:22px;transition:transform .18s,background .18s;display:grid;transform:translate(0)}.theme-toggle[aria-pressed=true] .theme-toggle-thumb{transform:translate(20px)}.theme-toggle-text{gap:1px;min-width:0;line-height:1.15;display:grid}.theme-toggle-text strong{color:inherit;font-size:13px;font-weight:950}.theme-toggle-text small{color:#5a7479;font-size:11px;font-weight:800}.profile-layout,.profile-wide-card,.profile-wide-card .card,.athlete-access-panel,.athlete-access-info,.athlete-access-actions{min-width:0}.profile-wide-card .card{overflow:hidden}.athlete-access-panel{grid-template-columns:minmax(168px,236px) minmax(240px,1fr) minmax(220px,max-content);gap:14px}.athlete-code-compact{background:#00a99d13;border-color:#00a99d33;align-content:center;max-width:236px;min-height:74px;box-shadow:inset 0 1px #ffffff4d}.athlete-code-compact span{color:#08766b;letter-spacing:.02em;font-size:10px}.athlete-code-compact strong{color:#143947;overflow-wrap:anywhere;font-size:clamp(21px,2vw,28px)}.athlete-access-actions{align-items:center}.athlete-access-actions .btn{white-space:normal;text-align:center;min-height:42px}.self-test-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 14px;display:grid}.self-test-card strong,.self-test-card span,.self-test-card small{grid-column:1;min-width:0}.self-test-card .btn{white-space:nowrap;grid-area:1/2/span 3;align-self:center}@media (width<=1280px){.athlete-access-panel{grid-template-columns:minmax(168px,236px) minmax(0,1fr)}.athlete-access-actions{grid-column:1/-1;justify-content:flex-start}}@media (width<=760px){.athlete-access-panel{grid-template-columns:1fr}.athlete-code-compact{max-width:none}.athlete-access-actions{justify-content:stretch}.self-test-card{grid-template-columns:1fr}.self-test-card .btn{grid-area:auto/1;width:100%}}@media (width<=720px){.sidebar{flex-direction:row}.sidebar-footer{grid-template-columns:auto auto;align-items:center;gap:8px;margin-top:0;margin-left:auto}.theme-toggle{border-radius:14px;justify-content:center;width:46px;min-width:46px;height:42px;padding:7px}.theme-toggle-track{width:32px;min-width:32px;height:24px;padding:2px}.theme-toggle-thumb{width:20px;height:20px}.theme-toggle[aria-pressed=true] .theme-toggle-thumb{transform:translate(8px)}.theme-toggle-text{display:none}}@media (width<=520px){.logo-image-mark{width:54px;height:34px}.logo-title{max-width:116px;font-size:16px}.sidebar-user{justify-content:center;width:42px;min-width:42px;max-width:42px;padding:4px}.sidebar-user>div{display:none}}html[data-theme=dark] body{color:#e8f3ff;background:radial-gradient(circle at 8% 0,#00a99d42,#0000 28rem),radial-gradient(circle at 92% 12%,#e7232c14,#0000 24rem),linear-gradient(135deg,#061315 0%,#0b2329 45%,#071521 100%)}html[data-theme=dark] .sidebar{background:linear-gradient(#05131efa,#081927f5),#07111ff0;border-right-color:#2cd6c52e;box-shadow:18px 0 70px #00000029}html[data-theme=dark] .main{background-color:#0000;background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:72px 72px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box}html[data-theme=dark] .logo-title,html[data-theme=dark] .sidebar-user strong,html[data-theme=dark] .card-title,html[data-theme=dark] .home-status-title,html[data-theme=dark] .home-step-title,html[data-theme=dark] label,html[data-theme=dark] .metric,html[data-theme=dark] .home-stat-strip strong{color:#f4fbff}html[data-theme=dark] .logo-subtitle,html[data-theme=dark] .sidebar-user span,html[data-theme=dark] .muted,html[data-theme=dark] .home-command-copy p,html[data-theme=dark] .home-focus-panel p,html[data-theme=dark] .home-step-text,html[data-theme=dark] .home-stat-strip span,html[data-theme=dark] .home-logo-subtitle{color:#a9c4c8}html[data-theme=dark] .nav-button{color:#cfe6e6}html[data-theme=dark] .nav-button:hover{background:#2cd6c51a}html[data-theme=dark] .sidebar-user,html[data-theme=dark] .theme-toggle,html[data-theme=dark] .icon-btn{color:#dffdf7;background:#ffffff0b;border-color:#2cd6c524}html[data-theme=dark] .theme-toggle-text small{color:#9cc8c9}html[data-theme=dark] .theme-toggle-track{background:#050f1eb3;box-shadow:inset 0 0 0 1px #2cd6c533}html[data-theme=dark] .theme-toggle-thumb{color:#061315;background:linear-gradient(135deg,#2dd4bf,#84f3e7)}html[data-theme=dark] .card,html[data-theme=dark] .login-card,html[data-theme=dark] .login-demo,html[data-theme=dark] .home-command-copy,html[data-theme=dark] .home-focus-panel,html[data-theme=dark] .home-approach-card,html[data-theme=dark] .home-stat-strip,html[data-theme=dark] .home-status-card,html[data-theme=dark] .home-step-card,html[data-theme=dark] .home-dashboard-page>.card{color:#e8f3ff;background:linear-gradient(145deg,#0c2b30e0,#081723eb);border-color:#3ddecd33;box-shadow:0 22px 70px #0000002e}html[data-theme=dark] .card.highlight{background:linear-gradient(135deg,#22c55e26,#2dd4bf1a);border-color:#2dd4bf59}html[data-theme=dark] input,html[data-theme=dark] select,html[data-theme=dark] textarea{color:#e8f3ff;background:#030a168c;border-color:#88d5ff2e}html[data-theme=dark] .table th{color:#9fb7d1}html[data-theme=dark] .table th,html[data-theme=dark] .table td{border-bottom-color:#88d5ff1f}html[data-theme=dark] .btn.ghost,html[data-theme=dark] .btn.subtle{color:#cfe6ff;background:#88d5ff14}html[data-theme=dark] .home-kicker,html[data-theme=dark] .badge,html[data-theme=dark] .home-feature-row span,html[data-theme=dark] .account-chip{color:#c8fff6;background:#04121c7a;border-color:#42ddcf38}html[data-theme=dark] .home-stat-strip div,html[data-theme=dark] .mini-card,html[data-theme=dark] .battery-preview,html[data-theme=dark] .check-card,html[data-theme=dark] .pick-card,html[data-theme=dark] .session-test-card,html[data-theme=dark] .test-info-nav-card{color:#e8f3ff;background:#030a1657;border-color:#88d5ff24}html[data-theme=dark] .mini-card strong,html[data-theme=dark] .assignment-battery-option span,html[data-theme=dark] .assignment-context span,html[data-theme=dark] .assignment-battery-option small{color:#9fb7d1}html[data-theme=dark] .athlete-code-compact{box-shadow:none;background:#2dd4bf1c;border-color:#2dd4bf47}html[data-theme=dark] .athlete-code-compact span{color:#a7fff0}html[data-theme=dark] .athlete-code-compact strong{color:#e8f3ff}html[data-theme=dark] .profile-tags span{color:#dffdf7;background:#22c55e1f;border-color:#2dd4bf3d}html[data-theme=dark] .recent-session-row{color:#e8f3ff;background:#030a165c;border-color:#88d5ff24}html[data-theme=dark] .recent-session-row small,html[data-theme=dark] .mobile-card-table td:before{color:#9fb7d1}@media (width<=1024px){html[data-theme=dark] .sidebar,html[data-theme=dark] .nav{background:#07111ff5}}.session-progress-panel{background:linear-gradient(135deg,#ffffffc7,#e7f8f5b3);border-color:#00a99d33;box-shadow:0 18px 46px #0d273414}.session-progress-panel strong{color:#102836}.session-progress-bar{background:#0d475329;border-color:#0d475314}.session-test-group{background:#ecf8f6c7;border-color:#0d47531a;box-shadow:inset 0 1px #ffffffc2}.session-test-group-title{color:#102836}.session-test-card{color:#102836;background:linear-gradient(145deg,#ffffffeb,#f6fbfadb);border-color:#0d47531f;min-height:132px;box-shadow:0 12px 28px #0d273412}.session-test-card:hover{border-color:#00a99d4d;transform:translateY(-1px);box-shadow:0 16px 34px #0d27341a}.session-test-card.done{background:linear-gradient(145deg,#ebfdf7f5,#f7fcfbe0);border-color:#13bd8847;box-shadow:inset 0 0 0 1px #13bd880f,0 12px 28px #0d273412}.session-test-icon-wrap{color:#08766b;background:#00a99d1a}.session-test-state.pending{color:#38596a;background:#0d475314}.session-test-state.done{color:#08765f;background:#13bd881f}.session-test-name{color:#102836}.session-test-meta{color:#6c8890}.test-info-hero p{color:#496973}.test-info-counter{background:#00a99d14;border-color:#00a99d33}.test-info-counter strong{color:#08766b}.test-info-counter span{color:#496973}.chip-btn{color:#38596a;background:#0d47530f;border-color:#0d47531f}.chip-btn:not(.active):hover{color:#086253;background:#00a99d14;border-color:#00a99d33}.test-info-nav-card{color:#102836;background:#ffffffb8;border-color:#0d47531c;box-shadow:0 10px 24px #0d27340d}.test-info-nav-card:hover,.test-info-nav-card.active{background:linear-gradient(135deg,#e8faf7f0,#ffffffd1);border-color:#00a99d47}.test-info-nav-card small{color:#7a96a1}.ghost-badge{color:#38596a;background:#0d47530f}.test-info-lead,.test-info-section p,.test-info-list{color:#31515b}.test-info-section{border-top-color:#0d47531a}.test-info-section h3{color:#08766b}html[data-theme=dark] .session-progress-panel{box-shadow:none;background:#030a164d;border-color:#2dd4bf3d}html[data-theme=dark] .session-progress-panel strong,html[data-theme=dark] .session-test-group-title,html[data-theme=dark] .session-test-name{color:#e8f3ff}html[data-theme=dark] .session-progress-bar{background:#071221e0;border-color:#2dd4bf38}html[data-theme=dark] .session-test-group{box-shadow:none;background:#030a1638;border-color:#88d5ff1f}html[data-theme=dark] .session-test-card{color:#e8f3ff;box-shadow:none;background:#06111f9e;border-color:#88d5ff29}html[data-theme=dark] .session-test-card.done{background:#06111f9e;border-color:#2dd4bf3d;box-shadow:inset 0 0 0 1px #2dd4bf1f}html[data-theme=dark] .session-test-icon-wrap{color:#a7fff0;background:#2dd4bf1a}html[data-theme=dark] .session-test-state.pending{color:#c9dcf1;background:#88d5ff1a}html[data-theme=dark] .session-test-state.done{color:#bdf7d3;background:#22c55e24}html[data-theme=dark] .session-test-meta{color:#9fb7d1}html[data-theme=dark] .test-info-hero p,html[data-theme=dark] .test-info-counter span{color:#b9d3ef}html[data-theme=dark] .test-info-counter strong{color:#e8f3ff}html[data-theme=dark] .test-info-counter{background:#2dd4bf14;border-color:#2dd4bf4d}html[data-theme=dark] .chip-btn{color:#cfe6ff;background:#88d5ff14;border-color:#88d5ff29}html[data-theme=dark] .test-info-nav-card{color:#e8f3ff;box-shadow:none;background:#030a165c;border-color:#88d5ff24}html[data-theme=dark] .test-info-nav-card:hover,html[data-theme=dark] .test-info-nav-card.active{background:linear-gradient(135deg,#22c55e24,#2dd4bf14);border-color:#2dd4bf80}html[data-theme=dark] .test-info-nav-card small{color:#9fb7d1}html[data-theme=dark] .ghost-badge{color:#cfe6ff;background:#88d5ff14}html[data-theme=dark] .test-info-lead{color:#d8ecff}html[data-theme=dark] .test-info-section{border-top-color:#88d5ff1c}html[data-theme=dark] .test-info-section h3{color:#a7fff0}html[data-theme=dark] .test-info-section p,html[data-theme=dark] .test-info-list{color:#cfe0f1}.aim-stability-test{gap:14px;display:grid}.aim-stability-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.aim-stability-stats div{background:#ffffffa8;border:1px solid #0d47531a;border-radius:16px;gap:3px;padding:12px;display:grid}.aim-stability-stats strong{color:#102836;font-size:26px;line-height:1}.aim-stability-stats span{color:#607b84;font-size:12px;font-weight:850}.aim-stability-area{touch-action:none;cursor:crosshair;background:linear-gradient(#0d475309 1px,#0000 1px) 0 0/42px 42px,linear-gradient(90deg,#0d475309 1px,#0000 1px) 0 0/42px 42px,#fff6;place-items:center;min-height:min(46vh,430px);display:grid;position:relative}.aim-stability-progress{background:linear-gradient(90deg,#13bd88,#28ccc4);border-radius:999px;height:6px;transition:width .12s linear;position:absolute;top:0;left:0}.aim-stability-target{color:#05292c;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 34% 28%,#ffffff52,#0000 34%),linear-gradient(135deg,#22c55e,#2dd4bf);border:3px solid #ffffffb3;border-radius:999px;place-items:center;font-weight:950;transition:transform .12s,box-shadow .12s;display:grid;box-shadow:0 24px 70px #13bd883d}.aim-stability-target.inside{transform:scale(1.04);box-shadow:0 0 0 10px #13bd881a,0 24px 76px #13bd8852}html[data-theme=dark] .aim-stability-stats div{background:#030a1657;border-color:#88d5ff24}html[data-theme=dark] .aim-stability-stats strong{color:#e8f3ff}html[data-theme=dark] .aim-stability-stats span{color:#9fb7d1}html[data-theme=dark] .aim-stability-area{background:linear-gradient(#7dd3fc0b 1px,#0000 1px) 0 0/42px 42px,linear-gradient(90deg,#7dd3fc0b 1px,#0000 1px) 0 0/42px 42px,#030a1652}@media (width<=640px){.aim-stability-stats{grid-template-columns:1fr}.aim-stability-area{min-height:320px}}html[data-theme=dark] h1,html[data-theme=dark] h2,html[data-theme=dark] h3,html[data-theme=dark] .page-header h1,html[data-theme=dark] .login-card h1,html[data-theme=dark] .home-command-copy h1,html[data-theme=dark] .home-status-title,html[data-theme=dark] .card-title,html[data-theme=dark] .session-test-group-title,html[data-theme=dark] .session-test-name,html[data-theme=dark] .test-info-section h3,html[data-theme=dark] .test-info-counter strong,html[data-theme=dark] .metric,html[data-theme=dark] .home-stat-strip strong{color:#f4fbff}html[data-theme=dark] .home-command-copy h1{text-shadow:0 2px 18px #00000057}html[data-theme=dark] .home-command-copy p,html[data-theme=dark] .home-focus-panel p,html[data-theme=dark] .card p,html[data-theme=dark] .muted,html[data-theme=dark] .home-step-text,html[data-theme=dark] .home-stat-strip span,html[data-theme=dark] .session-test-meta,html[data-theme=dark] .test-info-lead,html[data-theme=dark] .test-info-section p,html[data-theme=dark] .test-info-list,html[data-theme=dark] .test-info-counter span,html[data-theme=dark] .recent-session-row small{color:#c8ddeb}html[data-theme=dark] .home-command-copy,html[data-theme=dark] .home-focus-panel,html[data-theme=dark] .home-approach-card,html[data-theme=dark] .home-stat-strip,html[data-theme=dark] .card,html[data-theme=dark] .session-test-group,html[data-theme=dark] .test-info-hero{color:#edf8ff}html[data-theme=dark] .home-command-copy{background:radial-gradient(circle at 82% 12%,#42ddcf21,#0000 19rem),linear-gradient(145deg,#0a3135f0,#071521f5)}html[data-theme=dark] .visiolab-hero-logo{opacity:.09;mix-blend-mode:normal}html[data-theme=dark] .home-kicker,html[data-theme=dark] .badge,html[data-theme=dark] .home-feature-row span,html[data-theme=dark] .home-approach-stat,html[data-theme=dark] .home-step-action,html[data-theme=dark] .ghost-badge,html[data-theme=dark] .chip-btn{color:#dffdf7}html[data-theme=dark] .btn.primary{color:#031b1e}html[data-theme=dark] .btn.ghost,html[data-theme=dark] .btn.subtle,html[data-theme=dark] .recent-session-row,html[data-theme=dark] .table td,html[data-theme=dark] .profile-tags span{color:#e8f3ff}.login-screen{background:radial-gradient(circle at 18% 14%, #28ccc41f, transparent 24rem), radial-gradient(circle at 82% 86%, #0537631a, transparent 28rem), var(--page-bg)}.login-screen ::selection{color:#05292c;background:#28ccc457}.login-layout{width:min(560px,100%)}.login-card{gap:15px;padding:clamp(22px,4vw,30px)}.login-brand-logo{opacity:.94;width:min(214px,54vw);margin:0 auto 2px}.login-brand-logo img{object-fit:contain;filter:drop-shadow(0 1px #ffffff6b)drop-shadow(0 18px 34px #00a99d24);max-height:104px}.login-copy{text-align:left;gap:8px;display:grid}.login-copy .home-kicker{width:fit-content}.login-card h1{margin:0;font-size:clamp(30px,5vw,40px);line-height:1.02}.login-card p{max-width:48ch;font-size:16px}.auth-mode-switch{border-radius:18px;gap:6px;padding:5px}.auth-mode-switch button{border-radius:14px;min-height:44px}.login-card label{gap:8px;display:grid}.login-card input,.login-card select{border-radius:18px;min-height:52px}.login-help-actions{grid-template-columns:1fr 1fr;gap:10px}.login-help-actions .btn{min-height:42px;font-size:14px}.login-demo-toggle{min-height:48px}html[data-theme=dark] .login-screen{background:radial-gradient(circle at 18% 14%,#28ccc424,#0000 24rem),radial-gradient(circle at 82% 86%,#05376338,#0000 28rem),linear-gradient(135deg,#06111f,#071b28)}html[data-theme=dark] .login-screen ::selection{color:#061315;background:#84f3e76b}html[data-theme=dark] .login-brand-logo img{filter:drop-shadow(0 1px #ffffff3d)drop-shadow(0 18px 34px #2dd4bf29)}@media (width<=720px){.login-screen{align-items:start;padding:16px}.login-layout{max-width:430px}.login-card{border-radius:22px;padding:18px}.login-brand-logo{width:min(176px,58vw)}.login-brand-logo img{max-height:84px}.login-card h1{font-size:clamp(28px,9vw,34px)}.login-card p{font-size:15px}.auth-mode-switch,.login-help-actions{grid-template-columns:1fr}}
