:root{font-family:Inter,system-ui,sans-serif;color:#e8f0f7;background:#07111f;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(circle at 15% 0,#143654 0,#07111f 38%);min-height:100vh}button,input,select{font:inherit}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr}.hero{display:flex;flex-direction:column;justify-content:center;padding:8vw;background:linear-gradient(135deg,rgba(45,212,191,.14),transparent)}.hero h1{font-size:clamp(3rem,7vw,6.5rem);margin:.2rem 0}.hero p{font-size:1.35rem;color:#9fb0c3}.hero small{margin-top:30px}.hero-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.hero-stats span{padding:8px 12px;border:1px solid #2a4d67;border-radius:999px;background:#0d2132}.brandmark{font-size:4rem}.auth-card{margin:auto;width:min(470px,92%);max-height:94vh;overflow:auto;padding:28px;border:1px solid #27425e;background:#0d1b2bf2;border-radius:22px;box-shadow:0 24px 80px #0008}.auth-card input,.auth-card select{width:100%;margin:7px 0 14px;padding:12px;border:1px solid #35506c;border-radius:10px;background:#07111f;color:#fff}.auth-card button,.header-actions button,.case-head button,.admin button,.admin-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:10px;padding:11px 15px;background:#2dd4bf;color:#03221e;font-weight:800;cursor:pointer}.auth-card .secondary{background:#fbbf24}.message{color:#fbbf24}.mini-board,.leaderboard{margin-top:22px}.mini-board h3,.leaderboard h3{display:flex;gap:8px}.mini-board>div,.leaderboard>div{display:grid;grid-template-columns:38px 1fr auto;gap:8px;padding:9px 4px;border-bottom:1px solid #20364c}.leaderboard small,.admin small{display:block;color:#7890a8}.app-shell header{min-height:74px;display:flex;justify-content:space-between;align-items:center;padding:10px 26px;border-bottom:1px solid #20364c;background:#081522ed;position:sticky;top:0;z-index:4}.app-shell header h1{margin:0}.app-shell header p{margin:2px 0;color:#8ba1b6}.header-actions{display:flex;gap:8px}.header-actions button{background:#172b3f;color:#dbe9f6}.app-shell main{display:grid;grid-template-columns:270px 1fr;max-width:1580px;margin:auto}.app-shell aside{padding:20px;border-right:1px solid #20364c;min-height:calc(100vh - 116px)}.profile-card{display:flex;gap:12px;padding:14px;border:1px solid #2a4661;background:#0d1c2c;border-radius:14px}.profile-card span,.profile-card small{display:block;color:#91a7ba}.leaderboard .me{background:#153b3a;border-radius:8px}.admin-link{width:100%;margin-top:18px;background:#fbbf24}.workspace{padding:22px;min-width:0}.case-head{display:flex;justify-content:space-between;align-items:center}.case-head h2{font-size:2rem;margin:.25rem 0}.case-head p,.muted{color:#91a7ba}.eyebrow{color:#2dd4bf;font-weight:800}.tabs{display:flex;gap:8px;overflow:auto;padding:16px 0}.tabs button{white-space:nowrap;display:flex;align-items:center;gap:7px;padding:10px 13px;border-radius:10px;border:1px solid #28435a;background:#0d1b2a;color:#b9c9d7;cursor:pointer}.tabs button.active{background:#2dd4bf;color:#05241f;border-color:#2dd4bf;font-weight:800}.panel{background:#0c1a29;border:1px solid #243d55;border-radius:18px;padding:20px;min-height:420px}.kpi-grid,.scoreboard,.admin-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.kpi-grid>div,.scoreboard>div,.admin-kpis>div{padding:15px;background:#0a1521;border:1px solid #284258;border-radius:12px}.kpi-grid span,.scoreboard span,.admin-kpis span{display:block;color:#8299ad;font-size:.85rem}.kpi-grid b,.scoreboard b,.admin-kpis b{font-size:1.15rem}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.two-col article{background:#0a1521;border-radius:13px;padding:16px}.equipment{display:flex;align-items:center;gap:10px;padding:13px;margin:9px 0;background:#102335;border:1px solid #27445c;border-radius:10px}blockquote{margin:12px 0;padding:14px;border-left:3px solid #2dd4bf;background:#0a1521;color:#c8d6e4}blockquote b{display:block;color:#2dd4bf;margin-bottom:5px}.investigation{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px}.choice-grid{display:grid;gap:8px}.choice-grid label,.finding-list label{display:flex;gap:10px;padding:12px;border:1px solid #2a435b;border-radius:11px;background:#0a1521;cursor:pointer}.choice-grid label.selected,.finding-list label.selected{border-color:#2dd4bf;background:#12332f}.finding-list{display:grid;gap:9px;max-height:420px;overflow:auto;padding-right:5px}.finding-list small{display:block;color:#8299ad;margin-top:3px}.primary{width:100%;margin-top:16px;padding:13px;border:0;border-radius:11px;background:#fbbf24;font-weight:900;cursor:pointer}.scoreboard{grid-template-columns:repeat(3,1fr)}.scoreboard b{font-size:1.6rem;color:#fbbf24}.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.result-grid p{padding:11px;border-radius:9px}.result-grid p small,.result-grid p em{display:block;margin-top:6px}.result-grid p em{color:#9fb6c8;font-size:.8rem}.good{background:#0c3329}.bad{background:#3a1820}.warn{background:#3b3014}.empty{text-align:center;padding:70px 20px;color:#8da3b7}.admin-table>div{display:grid;grid-template-columns:1fr 130px minmax(260px,auto);gap:12px;align-items:center;border-top:1px solid #243d55;padding:11px}.admin-actions{display:flex;gap:6px;flex-wrap:wrap}.admin-actions button{padding:7px 9px;font-size:.78rem}.admin-actions .danger{background:#ef4444;color:#fff}.app-shell footer{text-align:center;color:#7990a5;padding:16px;border-top:1px solid #20364c}@media(max-width:1000px){.app-shell main{grid-template-columns:1fr}.app-shell aside{min-height:auto;border-right:0}.leaderboard{display:none}.investigation,.two-col,.result-grid{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.auth-shell{grid-template-columns:1fr}.hero{display:none}.case-head{align-items:flex-start;gap:10px}.app-shell header{align-items:flex-start}.header-actions button{font-size:0}.workspace{padding:12px}.panel{padding:14px}.kpi-grid,.scoreboard,.admin-kpis{grid-template-columns:1fr 1fr}.admin-table>div{grid-template-columns:1fr}.tabs{padding:10px 0}.tabs button{font-size:.83rem}}
