@import url('/static/fonts.css');
:root{color-scheme:dark;--bg:#070e1c;--panel:#0d192c;--line:#213550;--muted:#8295b1;--text:#e9f1fe;--blue:#3299ff;--green:#39e6a7;--red:#ff6d80;--gold:#f0c96e;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 30% 0,#132c4c 0,transparent 45%),var(--bg);color:var(--text);min-height:100vh}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;border:1px solid var(--line);border-radius:9px;padding:11px 16px;background:#172a44;color:var(--text);font-weight:650}button:hover{filter:brightness(1.22)}button:disabled{opacity:.4;cursor:not-allowed}.primary{background:var(--blue);color:#031020;border:0}.danger{background:#792f43}a{color:#9bcdff;text-decoration:none}a:hover{text-decoration:underline}.positive{color:var(--green)}.negative{color:var(--red)}.muted,small{color:var(--muted)}.gold{color:var(--gold)}header{display:flex;align-items:center;gap:26px;padding:22px 28px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:800;letter-spacing:.08em;white-space:nowrap}.brand img{width:46px;height:46px;object-fit:cover}.heading{border-left:1px solid var(--line);padding-left:26px;flex:1}h1{font-size:24px;margin:0 0 5px}h2{font-size:19px;margin:0 0 18px}p{line-height:1.6}.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:700;text-transform:uppercase;color:var(--muted)}.live{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.06em}.dot{width:8px;height:8px;background:var(--green);border-radius:50%;box-shadow:0 0 12px #39e6a766}.timer{font-size:34px;font-variant-numeric:tabular-nums;font-weight:750;letter-spacing:.04em;margin-top:3px}.clock{text-align:center;padding:0 24px;border-left:1px solid var(--line)}.steps{display:flex;align-items:center;gap:9px;margin-top:12px}.step{border:1px solid var(--line);border-radius:50%;width:32px;height:32px;display:grid;place-items:center;font-size:12px}.step.on{background:#247ce8;border-color:#4fb7ff;color:white;box-shadow:0 0 18px #247ce855}.board{padding:20px 24px}.podium{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.podium-card{background:linear-gradient(120deg,#102741,#0a1729);border:1px solid #21486e;padding:18px 20px;display:flex;align-items:center;gap:16px;border-radius:12px}.medal{font-size:32px;font-weight:850;color:var(--gold);width:44px}.podium-name{font-size:19px;font-weight:700}.podium-profit{margin-left:auto;font-size:25px;font-weight:750;font-variant-numeric:tabular-nums}.cols-4{--cols:4}.cols-2{--cols:2}.cols-1{--cols:1}.tables{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:16px}.table-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#0b1728}.table-title{display:flex;justify-content:space-between;align-items:center;padding:13px 14px;border-bottom:1px solid var(--line);font-size:13px;font-weight:750;letter-spacing:.04em}.chip{font-size:11px;background:#12382f;color:var(--green);padding:5px 9px;border-radius:30px;white-space:nowrap}.chip.warn{background:#3b301a;color:var(--gold)}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}th{text-transform:uppercase;color:#809dbd;font-size:10px;letter-spacing:.06em;text-align:right;padding:10px 8px;border-bottom:1px solid var(--line)}td{padding:7px 8px;text-align:right;border-bottom:1px solid #172941;font-size:12px;white-space:nowrap}th:nth-child(2),td:nth-child(2){text-align:left}th:first-child,td:first-child{width:32px;text-align:center;color:#aabdd6}.person{font-weight:650;display:block;max-width:180px;overflow:hidden;text-overflow:ellipsis}.account{display:block;font-size:10px;color:var(--muted);margin-top:2px;font-weight:400}.score{font-weight:750}.cutoff td{border-top:1px solid var(--gold);border-bottom:2px solid var(--gold);background:#4d3c202b}.stale td{opacity:.58}.stale .person:after{content:' ●';color:var(--gold)}.rows-50 td{font-size:14px;padding:7px 12px}.rows-50 th{font-size:11px}.rows-25 td{font-size:17px;padding:11px 14px}.rows-25 .account{font-size:12px}.rows-10 td{font-size:22px;padding:16px 24px}.rows-10 .account{font-size:14px}.rows-10 .person{max-width:unset}.rows-10 th{font-size:13px;padding:14px 24px}.rows-10 tbody tr:nth-child(-n+3){background:#15345655}.footer{display:flex;justify-content:space-between;gap:12px;padding:18px 3px;font-size:12px;color:var(--muted)}.demo-toolbar{display:flex;gap:10px;align-items:center;justify-content:center;background:#142c4b;padding:10px;border-bottom:1px solid var(--line);flex-wrap:wrap}.demo-toolbar button{padding:7px 14px;font-size:13px}.banner{padding:12px 20px;background:#3d2b14;color:#ffd685;border:1px solid #795522;border-radius:8px;margin-bottom:18px}.empty{text-align:center;padding:70px 25px;color:var(--muted)}.empty h2{color:var(--text);font-size:26px}.admin{max-width:1440px;margin:auto;padding:24px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.stat{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px}.stat strong{display:block;font-size:32px;margin-top:8px}.admin-grid{display:grid;grid-template-columns:calc((100% - 48px)/4) minmax(0,1fr);gap:16px}.admin-grid>*{min-width:0}.admin-grid .panel{min-width:0;max-width:100%}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:22px;margin-bottom:20px}.form{display:grid;gap:15px}label{display:grid;gap:7px;font-size:14px;color:#b4c7e0}input,select,textarea{width:100%;border:1px solid #2a4262;border-radius:7px;background:#071221;color:var(--text);padding:11px 12px}textarea{min-height:100px}.actions{display:flex;gap:10px;flex-wrap:wrap}.admin-table{overflow:auto;max-height:620px}.admin-table td{font-size:13px;padding:12px 10px}.admin-table th{font-size:11px}.status{display:inline-flex;padding:4px 8px;border-radius:20px;font-size:11px;background:#183b33;color:var(--green)}.status.bad{background:#452832;color:#ff9bab}.status.wait{background:#40341e;color:var(--gold)}.login{max-width:420px;margin:12vh auto;padding:32px;background:var(--panel);border:1px solid var(--line);border-radius:16px}.login .brand{margin-bottom:28px}.login h1{margin-bottom:24px}.error{color:var(--red);font-size:14px}.audit{list-style:none;padding:0;margin:0}.audit li{font-size:13px;padding:11px 0;border-bottom:1px solid var(--line)}.audit time{color:var(--muted);margin-right:10px}dialog{background:#0f2037;color:var(--text);border:1px solid var(--line);border-radius:14px;max-width:650px;width:90%;padding:28px}dialog::backdrop{background:#000b}dialog pre{white-space:pre-wrap;word-break:break-all;background:#060f1d;padding:15px;border-radius:8px}#toast{position:fixed;right:25px;bottom:25px;background:#163956;padding:14px 20px;border-radius:10px;display:none;max-width:450px;z-index:20}.loading{padding:40px}.search{margin-bottom:15px}.subtle{font-size:13px;color:var(--muted);line-height:1.6}.full{width:100%}@media(min-width:2200px){:root{font-size:22px}header{padding:30px 40px}td{font-size:19px;padding:12px}.account{font-size:14px}th{font-size:15px}.person{max-width:260px}.podium-name{font-size:28px}.podium-profit{font-size:36px}.rows-50 td{font-size:23px}.rows-25 td{font-size:30px}.rows-10 td{font-size:36px}}@media(max-width:1100px){header{flex-wrap:wrap;gap:16px}.tables{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid{grid-template-columns:1fr}.podium-profit{font-size:18px}.podium-card{padding:12px;gap:8px}.podium-name{font-size:15px}.clock{padding:0 12px}}@media(max-width:650px){header{padding:16px}.heading{padding-left:12px}.heading h1{font-size:18px}.brand{font-size:18px}.brand img{width:30px;height:30px}.clock{border:0;text-align:left}.timer{font-size:26px}.tables{grid-template-columns:1fr}.podium{grid-template-columns:1fr;gap:8px}.podium-card{padding:10px}.board{padding:12px}.stats{grid-template-columns:repeat(2,1fr)}.admin{padding:12px}.rows-10 td,.rows-25 td{font-size:13px;padding:10px 6px}.rows-10 .account{font-size:10px}.footer{flex-direction:column}.demo-toolbar a{font-size:12px}}

.registration-layout{max-width:1080px;margin:48px auto;padding:0 24px;display:grid;grid-template-columns:1fr 1.15fr;gap:28px}.registration-layout .panel{padding:32px}.registration-layout h2{font-size:28px;margin:16px 0}.registration-layout p{line-height:1.6}.registration-count{display:block;font-size:28px;color:#6faaff;margin:28px 0}.registration-steps{padding-left:22px}.registration-steps li{padding:8px 0}.registration-steps p{color:#9baac0;margin:5px 0}.registration-layout input{min-height:48px}.registration-layout .primary{min-height:52px;margin-top:12px}@media(max-width:760px){.registration-layout{grid-template-columns:1fr;margin:24px auto;padding:0 16px}.registration-layout .panel{padding:24px}}

.event-brands{display:flex;align-items:center;justify-content:center;gap:40px;padding:32px 24px 0}.event-brands>div{display:flex;align-items:center;gap:18px;font-weight:750;letter-spacing:.07em}.event-brands img{width:96px;height:96px;object-fit:contain;border-radius:8px}.brand-divider{color:#8295b1;font-size:28px}@media(max-width:600px){.event-brands{gap:20px}.event-brands>div{flex-direction:column;gap:10px;font-size:11px}.event-brands img{width:80px;height:80px}}

.board-sponsor{display:flex;align-items:center;gap:12px;flex-shrink:0}.board-sponsor img{width:64px;height:64px;object-fit:contain}.board-sponsor small{display:block;font-size:10px;letter-spacing:.1em;margin-bottom:5px}.board-sponsor strong{display:block;font-size:18px;letter-spacing:.05em}@media(max-width:760px){.board-sponsor img{width:48px;height:48px}.board-sponsor strong{font-size:14px}}

.affiliate-highlight{border:2px solid #f4cc48;border-radius:12px;background:#211d13;padding:24px;margin:18px 0 30px}.affiliate-heading{display:flex;align-items:center;gap:14px;color:#ffe184;font-size:20px}.affiliate-heading img{width:58px;height:58px;object-fit:contain}.affiliate-highlight p{color:#f2e8ca}.affiliate-button{display:flex;align-items:center;justify-content:center;gap:12px;min-height:64px;padding:18px 20px;background:#ffd43b;color:#161306;border-radius:8px;text-align:center;font-size:17px;font-weight:850;line-height:1.4;box-shadow:0 4px 0 #a17b13}.affiliate-button:hover{background:#ffe477;text-decoration:none}.affiliate-button:focus-visible{outline:3px solid #fff;outline-offset:5px}.affiliate-highlight small{display:block;margin-top:18px;color:#c5bfae;line-height:1.6}@media(max-width:600px){.affiliate-highlight{padding:18px}.affiliate-button{font-size:15px}.affiliate-heading{font-size:18px}}

.ea-download{display:block;flex-basis:100%;padding:18px 22px;margin:12px 0;background:#3299ff;color:#031020;border-radius:8px;text-align:center;font-weight:800}.ea-download:hover{background:#72baff;text-decoration:none}

.start-countdown{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px 20px}.start-countdown h2{font-size:clamp(24px,3vw,48px);margin:20px 0 0}.countdown-number{font-size:clamp(120px,25vw,340px);font-weight:850;font-variant-numeric:tabular-nums;line-height:1.15;letter-spacing:-.05em;color:#3299ff;text-shadow:0 0 70px #3299ff40}.countdown-number.final-seconds{color:#f0c96e}.start-countdown p{font-size:clamp(16px,2vw,28px);color:#acbcd2}.countdown-cut{border:1px solid #213550;border-radius:24px;padding:12px 24px;color:#f0c96e;font-weight:700}.start-countdown .subtle{font-size:12px}

.start-word{font-size:clamp(80px,19vw,270px);font-weight:850;letter-spacing:-.04em;color:#39e6a7;text-shadow:0 0 70px #39e6a730;line-height:1.3}

.winners-screen{max-width:1400px;margin:auto;padding:28px 32px 36px;text-align:center}.winners-brands{display:flex;justify-content:center;align-items:center;gap:70px;margin-bottom:36px}.winners-screen h1{font-size:clamp(28px,4vw,62px);letter-spacing:.02em;margin:12px 0;color:#f0c96e}.winners-subtitle{color:#acbcd2;font-size:18px}.winners-podium{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:24px;align-items:end;margin:64px auto 28px}.winner-card{position:relative;background:linear-gradient(160deg,#172a43,#0b1525);border:1px solid #4c6078;border-radius:16px;padding:32px 20px 0;overflow:visible}.winner-1{border:2px solid #f0c96e;background:linear-gradient(160deg,#42351d,#111a27 65%);padding-top:52px;box-shadow:0 0 65px #f0c96e12}.winner-3{border-color:#a77451}.winner-medal{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;margin:-66px auto 24px;background:#b7c5d9;color:#142133;font-size:36px;font-weight:850;border:5px solid #0b1525}.winner-1 .winner-medal{background:#f0c96e;width:88px;height:88px;margin-top:-98px;font-size:48px;color:#3e2d07}.winner-3 .winner-medal{background:#c78f68}.winner-card h2{font-size:clamp(22px,2.8vw,38px);margin:18px 0 8px;overflow-wrap:anywhere}.winner-account{color:#8295b1;font-size:14px}.winner-result{font-size:11px;letter-spacing:.09em;margin:26px 0;color:#8295b1}.winner-result strong{display:block;font-size:24px;color:#e9f1fe;letter-spacing:0;margin-top:8px}.winner-prize{padding:22px 0;border-top:1px solid #ffffff1c}.winner-prize small{display:block;letter-spacing:.12em;margin-bottom:8px}.winner-prize strong{font-size:clamp(30px,3.5vw,48px);color:#dce7f6}.winner-1 .winner-prize strong{color:#f0c96e}.winner-3 .winner-prize strong{color:#dda982}.winner-1 .winner-prize{padding-bottom:42px}.winners-credit{color:#f0c96e;font-size:18px;margin-top:32px}@media(max-width:650px){.winners-screen{padding:24px 16px}.winners-brands{gap:22px;flex-wrap:wrap}.winners-podium{grid-template-columns:1fr;gap:62px}.winner-1{grid-row:1}.winner-1 .winner-medal{margin-top:-98px}.winners-screen h1{font-size:30px}}

.winner-trophy{height:112px;margin:-78px auto 20px;display:flex;justify-content:center;align-items:end}.winner-trophy img{width:98px;height:112px;object-fit:contain;filter:drop-shadow(0 8px 12px #0006)}.winner-1 .winner-trophy{height:154px;margin-top:-120px}.winner-1 .winner-trophy img{width:134px;height:154px}.winners-podium{margin-top:98px}@media(max-width:650px){.winners-podium{gap:94px}}
@media(min-width:651px) and (max-height:850px){.winners-screen{padding:16px 24px}.winners-brands{margin-bottom:18px}.winners-screen h1{font-size:38px;margin:8px 0}.winners-subtitle{margin:10px 0;font-size:16px}.winners-podium{margin:66px auto 16px;gap:20px}.winner-card{padding:20px 16px 0}.winner-1{padding-top:32px}.winner-trophy{height:86px;margin:-60px auto 12px}.winner-trophy img{width:75px;height:86px}.winner-1 .winner-trophy{height:118px;margin-top:-90px}.winner-1 .winner-trophy img{width:103px;height:118px}.winner-card h2{font-size:28px;margin:12px 0 6px}.winner-result{margin:16px 0}.winner-result strong{font-size:21px}.winner-prize{padding:14px 0}.winner-prize strong{font-size:34px}.winner-1 .winner-prize{padding-bottom:24px}.winners-credit{margin:18px 0 8px;font-size:16px}.winners-screen>.subtle{margin:8px 0}}

/* Administrative workspace */
.admin.admin-workspace{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;max-width:1800px;padding:28px;margin:auto;align-items:start}
.admin-sidebar{position:sticky;top:24px;display:flex;flex-direction:column;gap:5px;padding:8px 18px 22px 0;border-right:1px solid var(--line)}
.admin-sidebar .nav-caption{font-size:10px;font-weight:800;letter-spacing:.16em;color:var(--muted);padding:22px 12px 8px}
.admin-sidebar .nav-caption:first-child{padding-top:0}
.admin-sidebar a,.admin-sidebar button{text-align:left;font-size:13px;font-weight:550;padding:11px 12px;border:0;background:transparent;border-radius:8px;color:#a5b9d1;line-height:1.35}
.admin-sidebar a:hover,.admin-sidebar button:hover{background:#12253e;color:#fff;text-decoration:none}
.admin-sidebar button.selected{background:#173654;color:#80c3ff;box-shadow:inset 3px 0 #3299ff}
.admin-content{min-width:0}.admin-content>[hidden]{display:none!important}.admin-content>.panel{margin-bottom:22px;padding:24px}.admin-content .stats{gap:14px}.stat small{display:block;margin-top:4px;font-size:.72rem;line-height:1.35;color:var(--muted);font-weight:400}.admin-content .stat{min-width:0;padding:20px}.admin-content .eyebrow{font-size:10px;letter-spacing:.1em}
.stage-control #start{display:grid;grid-template-columns:minmax(140px,1fr) minmax(140px,1fr) auto;gap:18px;align-items:end}.stage-control #start button{min-height:43px}.stage-control #finalize,.stage-control #cancel-round{display:inline-block;width:auto;margin:4px 8px 0 0}.stage-control>.subtle{max-width:800px}.rules-panel{max-width:760px}
.admin-content .admin-table table{width:100%}.admin-content .admin-table td{padding:16px 12px}.admin-content .admin-table th{padding:12px}.admin-content .admin-table td:last-child{text-align:right}.competitor-manage{white-space:nowrap;font-size:12px;background:#13263d;border:1px solid #2a405a}.competitor-manage span{margin-left:12px;font-size:17px}.manage-options{display:grid;gap:12px;margin:20px 0}.manage-options button{text-align:left;padding:16px}.activity-panel .audit small{display:block;margin:6px 0;color:var(--muted)}
@media(max-width:1100px){.admin.admin-workspace{grid-template-columns:190px minmax(0,1fr);gap:18px;padding:18px}.admin-content .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stage-control #start{grid-template-columns:1fr 1fr}.stage-control #start button{grid-column:1/-1}}
@media(max-width:700px){.admin.admin-workspace{display:block;padding:12px}.admin-sidebar{position:static;display:grid;grid-template-columns:1fr 1fr;border-right:0;border-bottom:1px solid var(--line);padding:0 0 16px;margin-bottom:20px}.admin-sidebar .nav-caption{grid-column:1/-1}.admin-content>.panel{padding:16px}.stage-control #start{grid-template-columns:1fr}.admin-content .stats{gap:10px}}
.ready-history{display:block;margin-top:6px;color:var(--green);white-space:nowrap}.ready-history.never{color:var(--gold)}
