:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#171714;--muted:#6b6a63;--line:#e4e1d8;--paper:#f6f4ee;--card:#fff;--gold:#b78a34;--gold-dark:#8f6720;--danger:#a72f2f}*{box-sizing:border-box}html,body{background:var(--paper);min-height:100%;color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.portal-shell{min-height:100vh}.portal-header{color:#fff;z-index:10;background:#151513;grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr);align-items:center;gap:24px;padding:14px clamp(18px,4vw,52px);display:grid;position:sticky;top:0}.brand{align-items:center;gap:10px;display:flex}.brand-mark,.portal-logo{background:var(--gold);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;font-weight:800;display:flex}.brand span:last-child{display:grid}.brand small{color:#bbb8ad;text-transform:uppercase;font-size:11px}.brand strong{font-size:14px}.portal-header nav{gap:6px;display:flex}.portal-header nav a,.session button{color:#e8e5dc;border:1px solid #383833;border-radius:9px;padding:9px 12px}.portal-header nav a:hover,.session button:hover{background:#2a2925}.session{justify-content:flex-end;align-items:center;gap:12px;display:flex}.session span{color:#bbb8ad;font-size:13px}.session button{cursor:pointer;background:0 0}.portal-content{max-width:1440px;margin:0 auto}.page-stack{gap:20px;min-height:calc(100vh - 72px);padding:clamp(22px,4vw,48px);display:grid}.page-header{justify-content:space-between;align-items:center;gap:24px;display:flex}.page-header h1,.login-card h1{margin:8px 0 12px;font-size:clamp(32px,5vw,52px);line-height:1}.page-header p{color:var(--muted);margin:0}.eyebrow{letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:800;color:var(--gold-dark)!important}.header-actions{flex-wrap:wrap;gap:10px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;min-height:42px;padding:10px 15px;font-weight:700;display:inline-flex}.button:disabled{cursor:not-allowed;opacity:.55}.primary{background:var(--gold);color:#fff}.primary:hover{background:var(--gold-dark)}.secondary{border-color:var(--line);background:#fff}.danger{color:var(--danger);background:#fff5f5;border-color:#e6bcbc;min-height:34px;padding:6px 10px}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.stat-card,.panel{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:0 4px 20px #2620120a}.stat-card{gap:8px;display:grid}.stat-card span,.muted{color:var(--muted)}.stat-card strong{font-size:36px}.panel h2{margin:0 0 18px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--line);text-align:left;padding:13px 10px}th{color:var(--muted);text-transform:uppercase;font-size:12px}.login-page{background:radial-gradient(circle at top,#eee4cc 0,transparent 42%),var(--paper);align-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:20px;width:100%;max-width:460px;margin:auto;padding:clamp(28px,5vw,46px);box-shadow:0 24px 70px #2620121f}.portal-logo{width:52px;height:52px;margin-bottom:24px}.login-form,.team-form,.scanner-panel{gap:16px;display:grid}label{gap:7px;font-size:13px;font-weight:700;display:grid}input,select{background:#fff;border:1px solid #cbc7bc;border-radius:9px;min-height:44px;padding:10px 12px}input:focus,select:focus{border-color:var(--gold);outline:0;box-shadow:0 0 0 3px #b78a3426}.error-box{color:var(--danger);background:#fff1f1;border:1px solid #e8bdbd;border-radius:9px;margin:18px 0;padding:12px}.scanner-panel video{background:#111;border-radius:14px;width:100%;max-width:560px}.team-form{grid-template-columns:2fr 1fr auto;align-items:end}@media (max-width:800px){.portal-header{grid-template-columns:1fr auto}.portal-header nav{grid-area:2/1/auto/-1;justify-content:space-between}.session span{display:none}.page-header{flex-direction:column;align-items:flex-start}.stats-grid,.team-form{grid-template-columns:1fr}.page-stack{padding:20px}.portal-header{position:static}}
