:root{--bg:#0b1116;--bg2:#111a21;--panel:#f5f7f9;--ink:#111820;--muted:#6c7885;--line:#dbe2e8;--blue:#27b9ef;--blue2:#72d6ff;--white:#fff;--green:#22b573;--amber:#e6a23c;--red:#cf4a4a;--shadow:0 18px 50px rgba(0,0,0,.28)}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:linear-gradient(145deg,#0b1116 0,#111a21 55%,#0b1116 100%);color:#e8eef3;min-height:100vh}a{color:var(--blue);text-decoration:none}input,select,textarea,button{font:inherit}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:30px;min-height:72px;padding:0 3vw;background:rgba(7,12,16,.96);border-bottom:1px solid #24313b;backdrop-filter:blur(12px)}.brand{font-size:22px;letter-spacing:-1px;color:#fff;white-space:nowrap}.brand b{font-style:italic}.brand span{color:var(--blue);font-weight:800}.brand.giant{font-size:38px;margin-bottom:18px}.topbar nav{display:flex;gap:22px;flex:1}.topbar nav a{color:#aeb9c2;font-size:14px;font-weight:700}.topbar nav a:hover{color:#fff}.account{display:flex;align-items:center;gap:12px}.user-chip{font-size:12px;color:#b8c2ca;text-transform:capitalize}.shell{width:min(1440px,94vw);margin:0 auto;padding:34px 0 60px}footer{padding:28px 3vw;border-top:1px solid #202c35;color:#73808b;font-size:12px;text-align:center}.hero{display:grid;grid-template-columns:1.5fr .7fr;gap:28px;min-height:400px;align-items:center;padding:45px 5%;margin-bottom:28px;background:linear-gradient(120deg,#111b23 0,#0b1116 70%);border:1px solid #24343f;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-80px;top:-100px;width:420px;height:700px;background:linear-gradient(135deg,transparent 35%,rgba(39,185,239,.18) 35%,rgba(39,185,239,.18) 48%,transparent 48%);transform:rotate(6deg)}.hero h1,.page-title h1,.live-header h1,.scoring-title h1{margin:8px 0;font-size:clamp(38px,5vw,72px);line-height:.95;letter-spacing:-2px;font-style:italic}.hero h1 span{color:var(--blue)}.hero p{color:#aab6c0;max-width:720px;font-size:18px;line-height:1.6}.eyebrow{color:var(--blue2);font-size:12px;letter-spacing:3px;font-weight:800}.actions{display:flex;gap:12px;margin-top:25px}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:5px;background:linear-gradient(135deg,#139fe0,#2bc2f3);color:#fff;padding:12px 18px;font-weight:800;cursor:pointer;box-shadow:0 8px 25px rgba(39,185,239,.16)}.btn:hover{filter:brightness(1.08)}.btn.ghost{background:#18232c;color:#dce5eb;border:1px solid #34434d;box-shadow:none}.btn.small{padding:8px 12px;font-size:12px}.btn.full{width:100%}.hero-card{position:relative;z-index:2;background:#151f27;border:1px solid #2b3b47;padding:28px;box-shadow:var(--shadow)}.live-dot{width:11px;height:11px;border-radius:50%;background:#28d17c;box-shadow:0 0 0 7px rgba(40,209,124,.1);margin-bottom:18px}.panel{background:var(--panel);color:var(--ink);border-radius:7px;overflow:hidden;margin:22px 0;box-shadow:var(--shadow);border:1px solid #354651}.panel-head{padding:18px 22px;background:#111b23;color:#fff;border-bottom:3px solid var(--blue)}.panel-head h2{margin:0;font-size:20px}.panel-head p{margin:5px 0 0;color:#9fadb8;font-size:13px}.panel-body{padding:22px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.event-card{display:block;background:#fff;border:1px solid var(--line);padding:18px;color:var(--ink);min-height:130px;position:relative;overflow:hidden}.event-card:after{content:"";position:absolute;right:-22px;bottom:-40px;width:90px;height:110px;background:rgba(39,185,239,.09);transform:skewX(-24deg)}.event-card h3{margin:10px 0 5px}.event-card p,.event-card small{color:var(--muted)}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:900;letter-spacing:.7px;text-transform:uppercase}.badge.blue{background:#dff5ff;color:#087eae}.badge.live{background:#ddf8e9;color:#087746}.badge.green{background:#dff7eb;color:#087746}.badge.amber{background:#fff1d7;color:#a26a10}.page-title,.live-header,.scoring-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:6px 0 22px}.page-title h1,.live-header h1,.scoring-title h1{font-size:48px}.page-title p,.live-header p,.scoring-title p{color:#9daab4}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{padding:24px;background:#111b23;border:1px solid #293842}.stat b{display:block;color:#fff;font-size:34px}.stat span{color:#8e9ca7;font-size:13px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;background:#fff}th{background:#eef3f6;color:#54616c;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.7px}th,td{padding:12px;border-bottom:1px solid #e1e6ea;white-space:nowrap}td{font-size:14px}td small{display:block;color:#83909a;margin-top:3px}.rank{font-weight:900;font-size:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid.inline{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.form-grid hr{grid-column:1/-1;border:0;border-top:1px solid var(--line);width:100%}.form-grid .wide{grid-column:1/-1}label{display:block;font-size:12px;font-weight:800;color:#4f5d67}input,select,textarea{width:100%;margin-top:6px;border:1px solid #cad3da;border-radius:5px;background:#fff;color:#182028;padding:10px 11px;outline:0}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(39,185,239,.12)}label.check{display:flex;gap:8px;align-items:center;margin-top:8px}label.check input{width:auto;margin:0}.checks{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}.filterbar{display:flex;gap:10px;flex-wrap:wrap;background:#151f27;padding:12px;border:1px solid #2c3a45;margin:15px 0 20px}.filterbar select{width:auto;min-width:150px;margin:0;background:#101820;color:#e7eef3;border-color:#344550}.flash{padding:12px 15px;margin:0 0 14px;border-radius:5px}.flash.success{background:#dff7eb;color:#075f39}.flash.error{background:#fbe3e3;color:#8c2929}.flash.info{background:#e4f5fc;color:#17647f}.empty{padding:30px;color:#7f8b94;text-align:center}.muted{color:#7c8993;font-size:13px}.inline-form{display:inline-flex;align-items:center;gap:10px}.link{border:0;background:none;color:#168ac0;font-weight:800;cursor:pointer;padding:0}.link.danger{color:#c13d3d}.small-input{width:78px}.auth-card{width:min(480px,92vw);margin:7vh auto;padding:36px;background:#f5f7f9;color:#15202a;border-top:4px solid var(--blue);box-shadow:var(--shadow)}.auth-card label{margin:15px 0}.installer{display:grid;place-items:center}.install-wrap{width:min(860px,94vw);padding:40px 0}.discipline-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.discipline-card{position:relative;min-height:180px;padding:25px;background:#111b23;border:1px solid #30404b;color:#fff;overflow:hidden}.discipline-card:before{content:"";position:absolute;right:-25px;top:-20px;width:90px;height:240px;background:rgba(39,185,239,.12);transform:skewX(-20deg)}.discipline-card span{font-size:25px;font-style:italic;font-weight:900}.discipline-card p{color:#91a0ab}.scoring-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.score-card{background:#f5f7f9;color:#172029;padding:18px;border-top:4px solid var(--blue);box-shadow:var(--shadow)}.athlete-name{display:flex;gap:10px;align-items:center;margin-bottom:14px}.athlete-name span{background:#16222b;color:var(--blue2);padding:6px 8px;font-weight:900;font-size:11px}.athlete-name strong{font-size:18px}.score-input{font-size:34px;font-weight:900;letter-spacing:-1px}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.calc{background:#e8f6fc;padding:11px;margin:12px 0;color:#2a4655}.calc strong{color:#047ba9}.challenge-brief{background:#111b23;border-left:4px solid var(--blue);padding:20px;margin:18px 0}.challenge-brief h2{margin:7px 0}.challenge-brief p{color:#aeb9c1;white-space:pre-line}.skill-list{display:grid;gap:12px}.skill-athlete{display:grid;grid-template-columns:220px 1fr;gap:15px;background:#f5f7f9;color:#172029;padding:15px}.skill-athlete>div:first-child strong,.skill-athlete small{display:block}.skill-athlete small{color:#7e8b95;margin-top:3px}.attempt-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.attempt-form{background:#e9eef2;padding:8px}.attempt-form span{display:block;font-size:11px;font-weight:800;margin-bottom:6px}.judge-btn{border:0;border-radius:4px;padding:9px 10px;font-weight:900;cursor:pointer;margin:2px}.judge-btn.success{background:#d8f5e6;color:#076a40}.judge-btn.fail{background:#f9dddd;color:#922d2d}.judge-btn.void{background:#e1e6ea;color:#53616c}.judge-btn:disabled{opacity:.35;cursor:not-allowed}.judge-category{display:flex;align-items:center;gap:14px;background:#111b23;padding:18px;border-left:4px solid var(--blue);margin-bottom:16px}.judge-category span{font-size:10px;color:#7f909d;letter-spacing:2px}.judge-category strong{font-size:20px}.judge-category small{margin-left:auto;color:#81909a}.check-list>div{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line)}.result-meta{margin:0 0 10px}.refresh-note{color:#71828f;font-size:12px}
@media(max-width:900px){.topbar{padding:12px 4vw;flex-wrap:wrap}.topbar nav{order:3;width:100%;overflow:auto;padding-bottom:4px}.account{margin-left:auto}.hero{grid-template-columns:1fr}.stat-grid,.discipline-grid{grid-template-columns:repeat(2,1fr)}.form-grid.inline{grid-template-columns:repeat(2,1fr)}.skill-athlete{grid-template-columns:1fr}.page-title,.live-header,.scoring-title{align-items:flex-start;flex-direction:column}.page-title h1,.live-header h1,.scoring-title h1{font-size:38px}}@media(max-width:600px){.shell{width:94vw;padding-top:20px}.hero{padding:28px 22px}.hero h1{font-size:44px}.brand{font-size:18px}.user-chip{display:none}.stat-grid,.discipline-grid,.form-grid,.form-grid.inline{grid-template-columns:1fr}.filterbar{display:grid;grid-template-columns:1fr 1fr}.filterbar select{width:100%;min-width:0}.attempt-row{grid-template-columns:1fr}.topbar nav{gap:15px}.score-card{padding:14px}.skill-athlete{padding:12px}}
