@import url('https://fonts.googleapis.com/css2?family=Bungee&family=Chakra+Petch:wght@400;500;600;700&display=swap');
:root{--bg:#070707;--panel:#111;--line:#262626;--text:#f4f4f0;--muted:#8f8f8a;--accent:#0F3D2E;--accent2:#24694f;--arcade:#c9ff47;--arcade-dim:#94b83d;--font-display:'Bungee',Impact,sans-serif;--font-body:'Chakra Petch',Pretendard,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);line-height:1.5;letter-spacing:.01em}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;background:repeating-linear-gradient(180deg,rgba(255,255,255,.018) 0,rgba(255,255,255,.018) 1px,transparent 1px,transparent 4px);mix-blend-mode:screen}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 36px));margin:auto}.nav{position:sticky;top:0;z-index:20;background:#070707ee;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.navin{height:68px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-family:var(--font-display);font-weight:400;letter-spacing:.06em}.links{display:flex;gap:18px;font-size:12px;font-weight:700;color:#aaa}.links a.active,.links a:hover{color:var(--arcade)}.cta,.btn{border:0;border-radius:8px;padding:12px 18px;background:var(--accent);color:#fff;font-family:var(--font-body);font-weight:800;letter-spacing:.04em;cursor:pointer}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.dark{background:#171717;border:1px solid #333}.arcade-cta{background:var(--arcade);color:#050505;box-shadow:3px 3px 0 #315b21}.hero{min-height:76vh;display:flex;align-items:flex-end;padding:100px 0 60px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:60vw;height:60vw;right:-20vw;bottom:-32vw;background:radial-gradient(circle,rgba(15,61,46,.5),transparent 68%)}.hero .container{position:relative;z-index:1}.kicker,.arcade-eyebrow{font-family:var(--font-display);font-size:10px;font-weight:400;letter-spacing:.12em;color:#79a993}.hero h1,h1,h2,h3,h4{font-family:var(--font-display);font-weight:400}.hero h1{font-size:clamp(62px,11vw,134px);line-height:.84;letter-spacing:-.04em;margin:14px 0 22px}.lead{font-size:18px;color:#c7c7c2}.meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}.pill{border:1px solid #303030;border-radius:5px;padding:8px 11px;font-size:11px;font-weight:700;color:#bbb}.section{padding:68px 0;border-bottom:1px solid var(--line)}.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.sectionhead h2{font-size:clamp(34px,5vw,48px);letter-spacing:-.025em;margin:4px 0}.sectionhead p,.muted{color:var(--muted)}.grid{display:grid;gap:14px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.card{background:linear-gradient(180deg,#141414,#0f0f0f);border:1px solid var(--line);border-radius:12px;padding:22px}.num{font-family:var(--font-display);font-size:10px;font-weight:400;letter-spacing:.12em;color:#77a48e;margin-bottom:18px}.big{font-size:32px;font-weight:900}.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:28px;max-width:620px}.countdown .card{text-align:center;padding:14px 10px;border-radius:6px;background:#0d0d0d}.countdown b{display:block;font-family:var(--font-display);font-size:24px;color:var(--arcade)}.countdown span{font-size:9px;font-weight:700;letter-spacing:.12em;color:#777}.teamgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.photo{aspect-ratio:4/3;border-radius:8px;border:1px solid #2d2d2d;background:#151515;overflow:hidden;display:grid;place-items:center;color:#555}.photo img{width:100%;height:100%;object-fit:cover}.teamname{font-weight:900;font-size:20px;margin-top:12px}.teammeta{font-size:12px;color:#888;margin-top:4px}.heatgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.heat{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center}.vs{font-family:var(--font-display);font-size:11px;color:var(--arcade)}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.full{grid-column:1/-1}label{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;color:#aaa;margin-bottom:7px}input,select{width:100%;border:1px solid #303030;background:#0c0c0c;color:#fff;border-radius:6px;padding:13px 14px;font-family:var(--font-body)}.hint{margin-top:7px;font-size:11px;color:#666}.notice{display:none;margin-top:12px;padding:12px 14px;border-radius:6px;background:#0c1b15;border:1px solid #214d39;color:#c5e2d3}.notice.err{background:#211010;border-color:#5a2929;color:#ffc1c1}.soldout{margin-bottom:18px;border-color:#3a493f}.soldout .big{margin-top:8px}.entry-success{position:relative;overflow:hidden;border:1px solid #2f5d49;background:linear-gradient(145deg,#0d1713 0%,#101010 48%,#090909 100%);border-radius:12px;max-width:780px;margin:0 auto;padding:30px}.entry-success:after{content:"";position:absolute;width:360px;height:360px;right:-180px;top:-180px;background:radial-gradient(circle,rgba(36,105,79,.32),transparent 68%);pointer-events:none}.entry-success-top,.entry-success-body{position:relative;z-index:1}.entry-success-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:24px;border-bottom:1px solid #294438}.entry-check{width:42px;height:42px;margin-top:12px;border-radius:4px;display:grid;place-items:center;background:#153f2e;border:1px solid #327557;font-size:22px;font-weight:900}.entry-edition{font-family:var(--font-display);font-size:9px;color:#7f9c8e;padding-top:2px}.entry-success-body{padding-top:28px}.entry-label{font-family:var(--font-display);font-size:9px;letter-spacing:.1em;color:#6f8d7f}.entry-success h3{font-size:clamp(38px,7vw,72px);line-height:.95;letter-spacing:-.025em;margin:9px 0 28px;word-break:break-word}.entry-slot-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #294438;border-bottom:1px solid #294438}.entry-slot{padding:22px 0}.entry-slot+.entry-slot{padding-left:24px;border-left:1px solid #294438}.entry-slot span{display:block;font-family:var(--font-display);font-size:9px;color:#6f8d7f;margin-bottom:4px}.entry-slot strong{display:block;font-family:var(--font-display);font-size:clamp(44px,8vw,78px);line-height:1;font-weight:400;letter-spacing:-.02em}.entry-guide{padding:24px 0 18px}.entry-guide-title{font-family:var(--font-display);font-size:9px;color:#79a993;margin-bottom:10px}.entry-guide p{margin:5px 0;color:#bdbdb7;font-size:14px}.entry-event-meta{font-size:11px;letter-spacing:.08em;color:#73736e;padding-top:18px;border-top:1px solid #232d28}.entry-back{display:inline-flex;margin-top:22px}.pickgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:15px 0}.pick{border:1px solid #303030;background:#171717;color:white;border-radius:6px;padding:12px;text-align:left;cursor:pointer}.pick.active{border-color:#4b876d}.barrow{margin:14px 0}.bartop{display:flex;justify-content:space-between;font-size:13px;margin-bottom:7px}.bar{height:8px;background:#222;border-radius:0;overflow:hidden}.bar>div{height:100%;background:var(--accent2)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 10px;border-bottom:1px solid var(--line)}th{font-size:10px;letter-spacing:.08em;color:#777}.footer{padding:44px 0 70px;color:#6f6f6a;font-size:12px}.arcade-footer{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:10px;font-weight:700;letter-spacing:.08em}

/* HOME // ARCADE */
.arcade-hero{align-items:center;min-height:calc(100vh - 68px);padding:54px 0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:32px 32px}.arcade-hero:after{width:48vw;height:48vw;right:-12vw;bottom:-25vw;background:radial-gradient(circle,rgba(201,255,71,.08),transparent 68%)}.arcade-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center}.arcade-eyebrow{color:var(--arcade)}.arcade-hero-copy h1{font-size:clamp(70px,9vw,126px);text-shadow:4px 4px 0 #173729}.arcade-lead{font-family:var(--font-display);font-size:clamp(14px,2vw,20px);color:var(--arcade);margin:0 0 8px}.arcade-meta .pill{background:#0d0d0d}.spectator-console{border:1px solid #34562a;background:#080a07;box-shadow:8px 8px 0 #132215}.console-topline{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid #2b4724;color:#7f9d73;font-size:9px;font-weight:700;letter-spacing:.08em}.console-screen{padding:30px;background:radial-gradient(circle at 70% 10%,rgba(201,255,71,.08),transparent 35%),#0c0e0b}.console-label{font-family:var(--font-display);font-size:9px;color:#789269}.console-screen h2{font-size:clamp(36px,4.8vw,62px);line-height:.92;margin:16px 0 18px}.console-screen h2 span{color:var(--arcade)}.console-screen p{color:#b7bcb2;max-width:480px}.console-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.arcade-primary{background:var(--arcade);color:#050505;box-shadow:4px 4px 0 #315b21}.arcade-secondary{box-shadow:3px 3px 0 #222}.console-rules{margin-top:20px;padding-top:14px;border-top:1px dashed #2a4225;color:#667360;font-size:9px;font-weight:700;letter-spacing:.08em}.crowd-meter{padding:16px 18px;border-top:1px solid #2b4724}.crowd-meter-title{font-family:var(--font-display);font-size:8px;color:#64755c;margin-bottom:10px}.crowd-mini{display:grid;gap:7px}.crowd-mini-row{display:flex;justify-content:space-between;gap:12px;font-size:12px;font-weight:700}.crowd-mini-row b{color:var(--arcade)}.arcade-mode-card{position:relative;overflow:hidden;min-height:240px;display:flex;flex-direction:column;transition:transform .16s ease,border-color .16s ease}.arcade-mode-card:hover{transform:translateY(-4px);border-color:#607a32}.arcade-mode-card.is-hot{border-color:#4f6f2e;background:linear-gradient(180deg,#14200d,#0d0e0b)}.arcade-mode-card.is-hot:before{content:'HOT';position:absolute;right:14px;top:14px;font-family:var(--font-display);font-size:8px;padding:5px 7px;background:var(--arcade);color:#060606}.arcade-card-no{font-family:var(--font-display);font-size:10px;color:var(--arcade);margin-bottom:auto}.arcade-mode-card h3{font-size:24px;margin:35px 0 8px}.arcade-mode-card p{min-height:48px}.arcade-link{margin-top:20px;font-size:11px;font-weight:800;color:var(--arcade)}

/* FAN PICK // CHARACTER SELECT */
.fanpick-hero{padding-top:88px;background:linear-gradient(180deg,#080808,#0a0c08)}.fanpick-title-row{display:flex;justify-content:space-between;gap:44px;align-items:flex-end;margin-top:12px}.fanpick-title-row h1{font-size:clamp(60px,10vw,120px);line-height:.84;letter-spacing:-.035em;margin:10px 0 22px}.fanpick-title-row p{color:#a6a69f;font-size:16px}.fanpick-rules-box{width:min(360px,100%);border:1px solid #344b2a;background:#0c0e0b;padding:18px;display:grid;grid-template-columns:38px 1fr;gap:10px;box-shadow:5px 5px 0 #142014}.fanpick-rules-box span{font-family:var(--font-display);font-size:9px;color:var(--arcade)}.fanpick-rules-box b{font-family:var(--font-display);font-size:11px;font-weight:400}.fanpick-rules-box small{grid-column:1/-1;padding-top:12px;border-top:1px dashed #2b3e24;color:#667360;font-size:9px}.character-select{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.fighter-card{appearance:none;position:relative;padding:0;border:1px solid #2b2b2b;background:#0d0d0d;color:#fff;text-align:left;cursor:pointer;overflow:hidden;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease}.fighter-card:hover{transform:translateY(-3px);border-color:#627b37}.fighter-card.active{border-color:var(--arcade);box-shadow:0 0 0 2px rgba(201,255,71,.18),6px 6px 0 #253b1d}.fighter-no{position:absolute;left:10px;top:10px;z-index:2;background:#050505d9;border:1px solid #3d4d31;color:var(--arcade);font-family:var(--font-display);font-size:8px;padding:6px 7px}.fighter-photo{aspect-ratio:4/3;background:#151515;overflow:hidden;display:grid;place-items:center;color:#555}.fighter-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.04)}.fighter-card.active .fighter-photo img{filter:saturate(1) contrast(1.06)}.fighter-copy{padding:14px 14px 12px}.fighter-copy strong{display:block;font-family:var(--font-display);font-size:14px;font-weight:400;line-height:1.2}.fighter-copy small{display:block;color:#777;margin-top:7px}.fighter-select{border-top:1px solid #242424;padding:9px 14px;font-family:var(--font-display);font-size:8px;color:#666}.fighter-card.active .fighter-select{background:var(--arcade);color:#050505}.fanpick-submit-row{display:flex;align-items:center;gap:16px;margin-top:20px}.fanpick-submit-row .notice{margin:0}.podium-console{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.podium-slot{border:1px solid #2d2d2d;background:#0d0d0d;padding:16px}.podium-slot span{display:block;font-family:var(--font-display);font-size:18px;color:var(--arcade);margin-bottom:10px}.arcade-board{border-radius:0;background:#0a0a0a;border-color:#38472e;box-shadow:6px 6px 0 #111}.arcade-bar-row{margin:16px 0}.arcade-bar-top{display:flex;justify-content:space-between;gap:15px;font-size:13px;font-weight:700;margin-bottom:7px}.arcade-bar-top b{font-family:var(--font-display);font-size:10px;color:var(--arcade)}.arcade-bar{height:10px;background:#202020;border:1px solid #303030;overflow:hidden}.arcade-bar>div{height:100%;background:repeating-linear-gradient(90deg,var(--arcade) 0,var(--arcade) 8px,#7ba632 8px,#7ba632 10px)}

/* ARC GAMES ADMIN */
.admin-section{min-height:75vh}.admin-head{align-items:center}.admin-session{align-items:center;gap:12px;font-size:12px}.admin-login{max-width:520px;margin:20px auto 0}.admin-login-copy{padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--line)}.admin-login-copy .big{margin-top:8px}.admin-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:38px}.admin-stat{min-height:138px;border:1px solid var(--line);background:linear-gradient(180deg,#141414,#0d0d0d);border-radius:8px;padding:20px;display:flex;flex-direction:column;justify-content:flex-end}.admin-stat span{font-family:var(--font-display);font-size:8px;letter-spacing:.05em;color:#777}.admin-stat strong{font-family:var(--font-display);font-size:42px;line-height:1;margin-top:9px;letter-spacing:-.02em;color:var(--arcade)}.admin-stat small{font-size:10px;color:#666;margin-top:6px}.admin-stat .admin-stat-word{font-size:22px;letter-spacing:0}.admin-stat .is-open{color:var(--arcade)}.admin-stat .is-closed{color:#cf7e7e}.admin-block{padding:34px 0;border-top:1px solid var(--line)}.admin-block-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}.admin-block-head h3{font-size:28px;letter-spacing:0;margin:5px 0 0}.admin-block-head p{margin:0}.admin-filters{display:flex;gap:8px;min-width:min(100%,520px)}.admin-filters input{flex:1}.admin-filters select{width:160px}.admin-team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:16px}.admin-team-card{border:1px solid var(--line);border-radius:8px;background:#101010;overflow:hidden}.admin-team-card.is-cancelled{opacity:.62}.admin-team-photo{height:150px;background:#151515;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.admin-team-photo img{width:100%;height:100%;object-fit:cover}.admin-photo-empty{width:100%;height:100%;display:grid;place-items:center;color:#555;font-family:var(--font-display);font-size:9px}.admin-status-badge{position:absolute;left:10px;top:10px;padding:6px 8px;border-radius:3px;font-family:var(--font-display);font-size:7px;letter-spacing:.04em;border:1px solid}.admin-status-badge.approved{background:#0c1b15dd;border-color:#2c654b;color:var(--arcade)}.admin-status-badge.cancelled{background:#251111dd;border-color:#623131;color:#e7a2a2}.admin-team-body{padding:18px}.admin-team-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.admin-team-title-row h4{font-size:20px;line-height:1.05;letter-spacing:0;margin:6px 0 0}.admin-slot-mini{font-family:var(--font-display);font-size:8px;white-space:nowrap;color:var(--arcade);border:1px solid #294438;border-radius:3px;padding:7px 9px}.admin-contact{font-size:14px;margin:10px 0 18px;color:#b7cfc3}.admin-contact a{text-decoration:underline;text-underline-offset:3px}.admin-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.admin-team-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.admin-empty{grid-column:1/-1;text-align:center;color:#777;padding:40px}.admin-results-wrap{padding:0;overflow:hidden}.table-scroll{overflow-x:auto}.table-scroll table{min-width:840px}.table-scroll input,.table-scroll select{min-width:105px}.table-sub{font-size:11px;color:#777;margin-top:3px}

@media(max-width:1000px){.arcade-hero-grid{grid-template-columns:1fr;gap:34px}.spectator-console{max-width:720px}.fanpick-title-row{flex-direction:column;align-items:flex-start}.character-select{grid-template-columns:repeat(2,1fr)}.admin-summary{grid-template-columns:repeat(2,1fr)}.admin-team-grid{grid-template-columns:1fr}}
@media(max-width:900px){.links{display:none}.g2,.g3,.teamgrid,.heatgrid,.formgrid{grid-template-columns:1fr}.full{grid-column:auto}.sectionhead{align-items:start;flex-direction:column}.countdown{grid-template-columns:repeat(2,1fr)}.entry-success{padding:22px;border-radius:8px}.entry-slot+.entry-slot{padding-left:18px}.entry-guide p{font-size:13px}.arcade-hero{padding-top:44px}.console-screen{padding:22px}.arcade-mode-grid{grid-template-columns:1fr}.podium-console{grid-template-columns:1fr}.admin-head{align-items:flex-start}.admin-session{width:100%;justify-content:space-between}.admin-block-head{align-items:flex-start;flex-direction:column}.admin-filters{width:100%;min-width:0;flex-direction:column}.admin-filters select{width:100%}.admin-team-photo{height:130px}.admin-edit-grid{grid-template-columns:1fr}.admin-team-actions{justify-content:stretch}.admin-team-actions .btn{flex:1;text-align:center}}
@media(max-width:620px){.character-select{grid-template-columns:1fr 1fr;gap:7px}.fighter-copy strong{font-size:11px}.fighter-copy small{font-size:10px}.fanpick-submit-row{align-items:stretch;flex-direction:column}.console-actions{flex-direction:column}.console-actions .btn{text-align:center}.arcade-footer{flex-direction:column}.admin-summary{grid-template-columns:1fr 1fr;gap:8px}.admin-stat{min-height:105px;padding:14px}.admin-stat strong{font-size:32px}.admin-stat .admin-stat-word{font-size:18px}.admin-team-body{padding:15px}.admin-team-title-row h4{font-size:17px}}
