
.testlab-hero{position:relative;overflow:hidden;padding:72px 0 42px}.testlab-hero:after{content:"";position:absolute;right:3%;top:4%;width:430px;height:300px;background:radial-gradient(circle,rgba(102,231,255,.15),transparent 65%);filter:blur(10px);pointer-events:none}.testlab-wordmark{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(48px,8vw,92px);line-height:.92;letter-spacing:-.075em;font-weight:900;background:linear-gradient(95deg,#efffff,#65e5ff 45%,#82b8ff 82%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 46px rgba(102,231,255,.15)}.testlab-tagline{font-size:clamp(18px,2.5vw,24px);color:#c7d7df;margin-top:20px}.testlab-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:22px 0 72px}.test-card{display:flex;min-height:210px;flex-direction:column;padding:22px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:linear-gradient(180deg,rgba(102,231,255,.035),rgba(255,255,255,.018)),rgba(8,11,24,.84);transition:.22s}.test-card:hover{transform:translateY(-4px);border-color:rgba(102,231,255,.28)}.test-card .family{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#72dff7}.test-card h2{margin:15px 0 9px;font-size:21px;letter-spacing:-.04em}.test-card p{margin:0;color:#abb5c2;line-height:1.65;font-size:13px}.test-card .open{margin-top:auto;padding-top:18px;color:#8eeaff;font-size:13px;font-weight:800}.diag-shell{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.8fr);gap:18px;padding:20px 0 72px}.diag-panel{border:1px solid rgba(255,255,255,.1);border-radius:22px;background:rgba(8,11,24,.82);padding:24px}.diag-panel h2{margin-top:0}.diag-zone{min-height:260px;border:1px dashed rgba(102,231,255,.27);border-radius:18px;background:rgba(102,231,255,.025);padding:22px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.diag-button{border:1px solid rgba(102,231,255,.32);background:linear-gradient(95deg,rgba(102,231,255,.16),rgba(90,167,255,.16));color:#efffff;border-radius:12px;padding:12px 18px;font:inherit;font-weight:800;cursor:pointer}.diag-button:hover{border-color:#7ae8ff}.diag-output{width:100%;margin-top:16px;min-height:52px;border-radius:12px;background:#030611;border:1px solid rgba(255,255,255,.08);padding:13px;color:#bff6ff;font:13px ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap;word-break:break-word}.knowledge h2{margin-top:32px}.knowledge p,.knowledge li{color:#b5bac6;line-height:1.8}.faq details{border-top:1px solid rgba(255,255,255,.08);padding:14px 0}.faq summary{cursor:pointer;font-weight:800}.meter{height:18px;width:100%;border-radius:999px;background:#111625;overflow:hidden}.meter>span{display:block;height:100%;width:0;background:linear-gradient(90deg,#65e5ff,#82b8ff)}.color-screen{position:fixed;inset:0;z-index:9999;display:none;background:#000;cursor:pointer}.color-screen.active{display:block}.cap-table{width:100%;border-collapse:collapse}.cap-table td{padding:9px;border-bottom:1px solid rgba(255,255,255,.07)}@media(max-width:900px){.testlab-grid{grid-template-columns:1fr 1fr}.diag-shell{grid-template-columns:1fr}}@media(max-width:620px){.testlab-grid{grid-template-columns:1fr}}
/* NovaTools Test Lab — shared player diagnostics styles */
.priority-tool-hero{padding-bottom:24px}.priority-tool-hero h1{max-width:980px;font-size:clamp(42px,6.2vw,72px)}.priority-tool-hero p{max-width:900px}.trust-strip{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.trust-strip span,.privacy-pill{border:1px solid rgba(101,229,255,.18);background:rgba(101,229,255,.045);color:#c8f6ff;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:800;letter-spacing:.02em}.priority-test-section{padding-top:0}.priority-live-panel{padding:26px;margin-bottom:18px;box-shadow:0 24px 70px rgba(0,0,0,.2)}.live-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}.live-head h2{font-size:30px;letter-spacing:-.045em;margin:4px 0 8px}.live-head p{margin:0;color:#aeb8c7;line-height:1.65;max-width:760px}.panel-kicker{display:block;color:#6fe4fb;font-size:10px;line-height:1.2;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.priority-zone{min-height:390px;justify-content:flex-start;align-items:stretch;text-align:left;padding:20px;background:linear-gradient(180deg,rgba(101,229,255,.035),rgba(90,167,255,.018)),rgba(2,5,16,.72)}.priority-zone .diag-output{margin-top:16px}.test-actionbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:100%;margin-bottom:14px}.diag-button.secondary{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12);color:#dfe5ef}.status-dot{margin-left:auto;display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:7px 10px;color:#9ea8b8;font-size:11px;font-weight:800}.status-dot i{width:7px;height:7px;border-radius:50%;background:#6c7481}.status-dot.live{color:#a7f7d2;border-color:rgba(75,211,154,.22);background:rgba(75,211,154,.04)}.status-dot.live i{background:#4bd39a;box-shadow:0 0 13px rgba(75,211,154,.65)}.metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;width:100%;margin-bottom:14px}.metric{border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.025);padding:12px;min-width:0}.metric span{display:block;color:#8f9aaa;font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.metric strong{display:block;color:#f7fbff;font-size:21px;line-height:1.1;margin:7px 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric small{display:block;color:#7d8795;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.test-note{width:100%;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.018);padding:11px 13px;color:#929dab;font-size:11.5px;line-height:1.6;margin-top:12px}.knowledge-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0}.knowledge-card,.method-card,.priority-faq,.howto-block,.related-tests{border:1px solid rgba(255,255,255,.09);border-radius:20px;background:rgba(8,11,24,.68);padding:24px}.knowledge-card h2,.method-card h2,.priority-faq h2,.howto-block h2,.related-tests h2{font-size:26px;letter-spacing:-.04em;margin:7px 0 12px}.knowledge-card p,.method-card p,.priority-faq p,.howto-block p,.related-tests p{color:#aeb7c5;line-height:1.75}.check-list{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}.check-list li{position:relative;padding-left:22px;color:#b8c2cf;line-height:1.65}.check-list li:before{content:'✓';position:absolute;left:0;top:0;color:#65e5ff;font-weight:900}.howto-block{margin:18px 0}.steps-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}.step-card{border:1px solid rgba(255,255,255,.075);border-radius:15px;background:rgba(255,255,255,.02);padding:17px}.step-no{color:#65e5ff;font:800 11px ui-monospace,SFMono-Regular,Menlo,monospace}.step-card h3{font-size:16px;letter-spacing:-.025em;margin:9px 0 7px}.step-card p{font-size:12px;line-height:1.65;margin:0}.method-card{display:flex;justify-content:space-between;align-items:center;gap:25px;margin:18px 0}.method-card>div{max-width:800px}.reference-link{flex:none;border:1px solid rgba(101,229,255,.22);border-radius:12px;padding:12px 14px;color:#8eeaff;font-size:12px;font-weight:800}.priority-faq{margin:18px 0}.priority-faq details{border-top:1px solid rgba(255,255,255,.075);padding:15px 0}.priority-faq details:first-of-type{margin-top:10px}.priority-faq summary{font-weight:850;cursor:pointer;letter-spacing:-.015em}.priority-faq details p{margin:9px 0 0}.related-tests{margin:18px 0 60px}.related-test-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.related-test-card{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.08);border-radius:13px;padding:15px;background:rgba(255,255,255,.02);transition:.18s}.related-test-card:hover{border-color:rgba(101,229,255,.26);transform:translateY(-2px)}.related-test-card strong{font-size:13px}.related-test-card span{color:#8eeaff;font-size:11px;white-space:nowrap}.priority-section-head{margin-top:2px}.priority-grid{padding-top:0;padding-bottom:44px}.priority-grid .test-card{border-color:rgba(101,229,255,.13);background:linear-gradient(180deg,rgba(101,229,255,.045),rgba(90,167,255,.02)),rgba(8,11,24,.84)}.secondary-grid{padding-top:0}.lab-method{margin-bottom:60px}.player-tools-feature{padding-top:40px}.feature-link{margin-top:-48px;margin-bottom:66px}.player-tools-feature .testlab-grid{padding-bottom:64px}
/* Gamepad */.controller-workspace{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.35fr);gap:14px;width:100%;margin-top:2px}.sticks-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stick-card{border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:13px;background:rgba(255,255,255,.02);text-align:center}.stick-card>span{display:block;font-size:10px;color:#8f9aaa;text-transform:uppercase;letter-spacing:.08em}.stick-card>small{display:block;color:#97dceb;font:11px ui-monospace,SFMono-Regular,Menlo,monospace;margin-top:7px}.stick-scope{position:relative;width:112px;height:112px;margin:13px auto;border:1px solid rgba(101,229,255,.25);border-radius:50%;background:radial-gradient(circle,rgba(101,229,255,.05),transparent 62%)}.stick-scope:before,.stick-scope:after{content:'';position:absolute;background:rgba(255,255,255,.08)}.stick-scope:before{width:1px;top:8%;bottom:8%;left:50%}.stick-scope:after{height:1px;left:8%;right:8%;top:50%}.stick-scope i{position:absolute;left:50%;top:50%;width:13px;height:13px;border-radius:50%;background:#65e5ff;box-shadow:0 0 18px rgba(101,229,255,.65);transform:translate(-50%,-50%);transition:transform .03s linear}.subhead{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px;font-size:12px}.subhead span{color:#8791a0;font-size:10px}.button-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.gamepad-button{border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:9px;background:rgba(255,255,255,.018);min-width:0}.gamepad-button span{display:block;color:#aeb6c2;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gamepad-button strong{display:block;font-size:12px;margin-top:3px;color:#6f7b89}.gamepad-button.pressed{border-color:rgba(101,229,255,.38);background:rgba(101,229,255,.08)}.gamepad-button.pressed strong{color:#baf8ff}
/* Mouse polling */.movement-zone{position:relative;display:flex;min-height:170px;flex-direction:column;justify-content:center;align-items:center;border:1px dashed rgba(101,229,255,.3);border-radius:16px;background:radial-gradient(circle at 50% 50%,rgba(101,229,255,.06),transparent 60%);overflow:hidden;cursor:crosshair}.movement-zone strong{font-size:20px}.movement-zone span{color:#8f9aaa;font-size:12px;margin-top:6px}.progress-track{position:absolute;left:18px;right:18px;bottom:16px;height:5px;border-radius:99px;background:rgba(255,255,255,.07);overflow:hidden}.progress-track i{display:block;height:100%;width:0;background:linear-gradient(90deg,#65e5ff,#82b8ff)}
/* Double click */.click-health-pad,.cps-pad{width:100%;min-height:180px;border:1px dashed rgba(101,229,255,.34);border-radius:17px;background:linear-gradient(180deg,rgba(101,229,255,.05),rgba(90,167,255,.03));color:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;font:inherit}.click-health-pad strong,.cps-pad strong{font-size:24px;letter-spacing:-.035em}.click-health-pad span,.cps-pad span{margin-top:7px;color:#94a0af;font-size:12px}.click-health-pad:active,.cps-pad:active{transform:scale(.996);background:rgba(101,229,255,.09)}.event-log{display:grid;gap:5px;margin-top:10px;max-height:120px;overflow:auto}.event-log span{font:10px ui-monospace,SFMono-Regular,Menlo,monospace;color:#8794a5;border-bottom:1px solid rgba(255,255,255,.04);padding:5px 2px}
/* Keyboard */.keyboard-capture,.rollover-capture{width:100%;border:1px solid rgba(101,229,255,.25);border-radius:16px;background:rgba(2,5,16,.74);padding:15px;outline:none}.keyboard-capture:focus,.rollover-capture:focus{border-color:#65e5ff;box-shadow:0 0 0 3px rgba(101,229,255,.07)}.keyboard-map{display:grid;gap:6px;overflow-x:auto;padding-bottom:4px}.key-row{display:flex;gap:5px;min-width:720px}.keycap{display:flex;align-items:center;justify-content:center;min-width:42px;height:39px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.025);color:#8f99a8;font:9px ui-monospace,SFMono-Regular,Menlo,monospace;padding:0 7px}.keycap[data-code=Space]{min-width:190px}.keycap[data-code=Backspace],.keycap[data-code=Enter],.keycap[data-code=ShiftLeft],.keycap[data-code=ShiftRight]{min-width:76px}.keycap.tested{border-color:rgba(90,167,255,.3);color:#c6dcff;background:rgba(90,167,255,.05)}.keycap.active{border-color:#65e5ff;color:#07121a;background:#65e5ff;box-shadow:0 0 14px rgba(101,229,255,.32)}.capture-hint{display:block;text-align:center;color:#7f8b9a;font-size:10px;margin-top:11px}.preset-row{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px}.preset-row button,.duration-tabs button{appearance:none;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.025);color:#b7c0cc;border-radius:10px;padding:9px 11px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.preset-row button.selected,.duration-tabs button.selected{border-color:rgba(101,229,255,.42);background:rgba(101,229,255,.09);color:#bff8ff}.rollover-capture{min-height:185px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.held-key-list{display:flex;gap:7px;flex-wrap:wrap;justify-content:center;margin:18px 0}.held-key-list span{border:1px solid rgba(101,229,255,.23);background:rgba(101,229,255,.05);border-radius:8px;padding:8px 10px;color:#bff6ff;font:11px ui-monospace,SFMono-Regular,Menlo,monospace}.rollover-capture small{color:#7f8997}
/* Refresh */.refresh-visual{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:170px;border:1px solid rgba(255,255,255,.08);border-radius:16px;overflow:hidden;background:linear-gradient(90deg,rgba(101,229,255,.02),rgba(90,167,255,.04))}.refresh-visual strong{font-size:20px}.refresh-visual span{color:#8893a3;font-size:11px;margin-top:6px}.scan-line{position:absolute;left:0;top:0;bottom:0;width:2px;background:#65e5ff;box-shadow:0 0 18px #65e5ff;opacity:.65;transform:translateX(-50%)}
/* CPS */.duration-tabs{display:flex;gap:6px}.cps-pad{min-height:230px}.cps-pad strong{font-size:38px}.cps-pad span{font-size:13px}
@media(max-width:980px){.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.steps-grid{grid-template-columns:1fr 1fr}.controller-workspace{grid-template-columns:1fr}.related-test-grid{grid-template-columns:1fr 1fr}.method-card{align-items:flex-start;flex-direction:column}.feature-link{margin-top:-36px}}
@media(max-width:650px){.priority-tool-hero h1{font-size:40px}.priority-live-panel{padding:16px}.priority-zone{padding:13px;min-height:340px}.live-head{flex-direction:column}.privacy-pill{align-self:flex-start}.metric-grid{grid-template-columns:1fr 1fr}.metric strong{font-size:18px}.knowledge-layout,.steps-grid,.related-test-grid{grid-template-columns:1fr}.knowledge-card,.method-card,.priority-faq,.howto-block,.related-tests{padding:18px}.test-actionbar{align-items:flex-start}.status-dot{margin-left:0}.sticks-grid{grid-template-columns:1fr 1fr}.stick-scope{width:96px;height:96px}.button-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.movement-zone{min-height:190px}.cps-pad{min-height:210px}.feature-link{margin-top:-42px}.player-tools-feature{padding-top:26px}}
