.arcade-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;margin-top:8px}
@media (max-width:900px){.arcade-grid{grid-template-columns:minmax(0,1fr)}}
.arcade-frame{aspect-ratio:2/1;max-height:calc(100dvh - 220px)}
tr.me td{background:color-mix(in srgb,var(--accent) 14%,transparent)}
.run-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 0;border-top:1px solid var(--line)}
.run-row:first-of-type{border-top:0}
.ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px}
.ach{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;border-radius:var(--radius);background:var(--panel-2);text-align:center;opacity:.45;filter:grayscale(1);transition:opacity .2s,filter .2s}
.ach.got{opacity:1;filter:none;box-shadow:inset 0 0 0 1px var(--gold)}
.ach span{font-size:1.6rem}.ach small{font-size:.72rem;font-weight:700;color:var(--muted)}
.tourney-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:14px;margin-bottom:24px}
.tourney-card{display:flex;flex-direction:column;gap:10px;padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg)}
.tourney-card.live{border-color:color-mix(in srgb,var(--green) 45%,var(--line))}
.tourney-card h3{margin:0;font-size:15px}
.tc-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.tc-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.tc-stats small{display:block;font-size:10px;color:var(--muted);margin-bottom:3px}
.tc-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.arcade-game-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.arcade-game-head .actions{display:flex;gap:8px;flex-wrap:wrap}
.play-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.run-status{min-height:1.4em}
.prize-list{list-style:none;margin:0;padding:0}
.prize-list li{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-top:1px solid var(--line)}
.prize-list li:first-child{border-top:0}
.empty.slim{padding:20px}
.duel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px;margin-bottom:24px}
.duel-card{display:flex;align-items:center;gap:14px;padding:12px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);color:var(--text);text-decoration:none;transition:transform .2s var(--ease),border-color .2s}
.duel-card:hover{transform:translateY(-3px);border-color:var(--accent)}
.duel-card img{width:64px;height:80px;object-fit:cover;border-radius:10px;flex:none}
.duel-card>div{flex:1;min-width:0}.duel-card h3{margin:0 0 6px;font-size:15px}
.duel-terms{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-bottom:4px}
/* Arcade lobby and game detail experience */
.arcade-page{--arcade-highlight:#b6a0ff;--arcade-soft:color-mix(in srgb,var(--arcade-highlight) 12%,var(--panel))}
.arcade-spotlight{display:grid;grid-template-columns:1.2fr 1fr;gap:36px;align-items:center;padding:36px 40px;border:1px solid var(--line);border-radius:20px;background:radial-gradient(ellipse at 95% 10%,#7960bd25,transparent 65%),var(--panel);margin-bottom:20px;overflow:hidden}
.arcade-page .eyebrow{color:var(--arcade-highlight);font-size:12px;letter-spacing:.1em}.arcade-page .eyebrow .ui-icon{font-size:15px;margin-right:6px}.arcade-spotlight h1{font-size:clamp(32px,3.5vw,48px);line-height:1.08;letter-spacing:-.05em;margin:0}.spotlight-copy>p{font-size:16px;line-height:1.7;color:var(--muted);margin:18px 0}.spotlight-copy .actions{display:flex;flex-wrap:wrap;gap:10px}.spotlight-game{position:relative;display:block;min-height:275px;border-radius:16px;overflow:hidden;background:#151c30;border:1px solid #ffffff1a;transition:transform .2s}.spotlight-game:hover{transform:translateY(-4px)}.spotlight-game>img{position:absolute;right:-5%;top:-18%;width:70%;height:140%;object-fit:cover;transform:rotate(10deg);opacity:.85}.spotlight-game:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#101827 5%,#10182711 95%)}.spotlight-game>div{position:absolute;z-index:1;left:24px;right:24px;bottom:24px}.spotlight-tag{font-size:11px;letter-spacing:.12em;color:#c7b5ff;font-weight:700}.spotlight-game h2{font-size:28px;margin:9px 0;color:#fff}.spotlight-game>div>span:last-child{font-size:14px;color:#d6dceb}.spotlight-game .ui-icon{font-size:16px;margin-left:8px}
.arcade-mode-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:20px 0 28px;margin-bottom:10px;border-bottom:1px solid var(--line)}.arcade-mode-guide>div{display:flex;gap:14px;align-items:center}.mode-icon{width:46px;height:46px;flex:none;display:grid;place-items:center;border-radius:12px;color:var(--arcade-highlight);background:var(--arcade-soft)}.mode-icon .ui-icon{font-size:22px}.arcade-mode-guide b{font-size:14px}.arcade-mode-guide p{font-size:13px;line-height:1.5;color:var(--muted);margin:5px 0 0}
.arcade-section-head{margin:32px 0 18px;scroll-margin-top:90px}.arcade-section-head .eyebrow{margin-bottom:8px;font-size:11px}.arcade-section-head h2{font-size:23px;gap:10px}.arcade-section-head h2 .ui-icon{font-size:21px;color:var(--arcade-highlight)}.arcade-count{background:var(--panel-2);border:1px solid var(--line);padding:6px 12px;border-radius:20px;font-size:13px;color:var(--muted);white-space:nowrap}
.arcade-page .tourney-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr));gap:18px}.arcade-page .tourney-card{padding:22px;gap:18px;border-radius:16px;transition:border-color .2s,transform .2s}.arcade-page .tourney-card:hover{transform:translateY(-3px);border-color:var(--arcade-highlight)}.arcade-page .tourney-card.live{border-color:color-mix(in srgb,var(--green) 35%,var(--line));background:linear-gradient(125deg,color-mix(in srgb,var(--green) 4%,var(--panel)),var(--panel))}.tc-head{align-items:flex-start;flex-wrap:wrap}.tc-head small{font-size:13px;line-height:1.6}.tc-title{display:flex;gap:12px;align-items:center}.tc-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--arcade-soft);color:var(--arcade-highlight);flex:none}.arcade-page .tc-title h3{font-size:18px;line-height:1.4;overflow-wrap:anywhere}.arcade-page .tc-stats{padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:12px;font-size:18px;font-weight:700}.arcade-page .tc-stats small{font-size:12px;font-weight:500;margin-bottom:8px}.arcade-page .tc-actions{gap:10px}.arcade-page .tc-actions .btn{flex:1;min-height:44px;font-size:14px;padding:0 12px}.arcade-page .empty.slim{padding:28px;text-align:left;border-style:solid;font-size:15px}
.arcade-library{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:18px;margin-bottom:28px}.arcade-library-card{display:flex;gap:22px;padding:18px;border-radius:16px;border:1px solid var(--line);background:var(--panel);transition:transform .2s,border-color .2s;min-width:0}.arcade-library-card:hover{border-color:var(--arcade-highlight);transform:translateY(-3px)}.library-art{width:125px;min-height:166px;flex:none;position:relative;overflow:hidden;border-radius:12px}.library-art img{height:100%;width:100%;object-fit:cover}.library-play{position:absolute;inset:0;display:grid;place-items:center;background:#10182755;opacity:0;transition:opacity .2s}.arcade-library-card:hover .library-play,.arcade-library-card:focus-visible .library-play{opacity:1}.library-play .ui-icon{font-size:28px}.library-copy{display:flex;flex-direction:column;flex:1;min-width:0;padding:6px 0}.library-copy .eyebrow{font-size:11px;margin-bottom:8px}.library-copy h3{font-size:23px;letter-spacing:-.03em;margin:0}.library-copy p{color:var(--muted);font-size:14px;line-height:1.6;margin:10px 0 16px;overflow-wrap:anywhere}.library-bottom{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-top:auto;font-size:13px;color:var(--muted)}.library-link{color:var(--text);font-weight:600;display:inline-flex;gap:8px;align-items:center}.library-link .ui-icon{font-size:16px}
.arcade-breadcrumb{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:0 0 24px;font-size:14px;color:var(--muted)}.arcade-breadcrumb a{display:inline-flex;align-items:center;gap:10px}.arcade-breadcrumb a:hover{color:var(--text)}.arcade-breadcrumb .ui-icon{font-size:16px}.arcade-page .arcade-game-head{padding:24px;flex-wrap:nowrap;gap:24px}.detail-game-art{width:100px;height:125px;object-fit:cover;border-radius:12px;flex:none}.detail-game-copy{flex:1;min-width:0}.detail-game-copy h1{font-size:30px}.detail-game-copy p{font-size:15px;line-height:1.6}.arcade-game-head .actions{flex-direction:column;align-items:stretch}.arcade-page .arcade-grid{gap:20px;margin-top:24px;grid-template-columns:minmax(0,1fr) 310px}.arcade-leaderboard .admin-bar{gap:12px}.arcade-leaderboard h2{font-size:22px}.arcade-leaderboard>p{font-size:14px;line-height:1.7}.arcade-leaderboard table th{font-size:12px}.arcade-leaderboard table td{padding:16px 14px;font-size:15px}.arcade-page .panel h2 .ui-icon{font-size:20px;color:var(--arcade-highlight);margin-right:5px}.arcade-page aside .panel h2{font-size:19px}.arcade-page aside .panel>p{font-size:14px;line-height:1.65}.rank-mark{display:inline-flex;align-items:center;gap:6px;font-weight:700}.rank-mark .ui-icon{font-size:20px}.rank-1{color:#f5c96b}.rank-2{color:#b9c8dc}.rank-3{color:#d6a580}.rank-other{color:var(--muted)}.arcade-page .prize-list li{padding:14px 0;font-size:16px}.arcade-page .prize-list li>span{font-weight:700;color:var(--muted)}.arcade-page .run-row{padding:12px 0}.arcade-page .play-head{padding:18px 22px;border:1px solid var(--line);border-radius:14px;background:var(--panel);margin-bottom:16px}.arcade-page .run-status{padding:14px 18px;border-radius:10px;background:var(--panel);font-size:14px;line-height:1.6}.arcade-page .arcade-frame{border-radius:16px}
:root[data-theme="light"] .arcade-page{--arcade-highlight:#6b4ab3}
@media(max-width:1050px){.arcade-spotlight{padding:28px;gap:24px}.arcade-mode-guide{gap:16px}.arcade-mode-guide>div{align-items:flex-start}.arcade-page .arcade-game-head{flex-wrap:wrap}.arcade-game-head .actions{flex-direction:row;width:100%}.arcade-page .arcade-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:640px){.arcade-spotlight{grid-template-columns:1fr;padding:24px;gap:24px}.arcade-spotlight h1{font-size:36px}.spotlight-game{min-height:210px}.spotlight-game>img{width:65%;top:-25%}.spotlight-copy .actions{flex-direction:column}.spotlight-copy .actions .btn{width:100%}.arcade-mode-guide{grid-template-columns:1fr;gap:18px;padding:8px 0 24px;margin-top:24px}.arcade-mode-guide b{font-size:15px}.arcade-mode-guide p{font-size:14px}.arcade-section-head h2{font-size:22px}.arcade-section-head .eyebrow{font-size:10px}.arcade-page .tourney-card{padding:20px}.arcade-page .tc-actions{flex-direction:column}.arcade-page .tc-stats{font-size:17px;gap:8px}.arcade-library-card{gap:16px;padding:16px}.library-art{width:92px;min-height:145px}.library-copy h3{font-size:21px}.library-copy p{font-size:14px}.library-bottom{flex-direction:column;align-items:flex-start}.arcade-page .arcade-game-head{gap:16px;padding:20px}.detail-game-art{width:75px;height:95px}.detail-game-copy h1{font-size:25px}.arcade-game-head .actions{flex-direction:column}.arcade-page .arcade-leaderboard{padding:18px}.arcade-leaderboard h2{font-size:20px}.arcade-page .play-head{padding:16px}.arcade-page .arcade-frame{height:calc(100dvh - 220px);aspect-ratio:auto}}
.arcade-page .tc-stats{grid-template-columns:1fr 1.4fr .8fr;font-size:16px}.arcade-page .tc-stats>div{min-width:0}.arcade-events{margin:18px 0 24px;border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:0 20px}.arcade-events>summary{display:flex;align-items:center;gap:10px;min-height:62px;cursor:pointer;font-size:15px;font-weight:600;list-style:none}.arcade-events>summary:after{content:'+';font-size:24px;color:var(--muted)}.arcade-events[open]>summary:after{content:'−'}.arcade-events>summary .ui-icon{font-size:20px;color:var(--arcade-highlight)}.arcade-events .arcade-count{margin-left:auto}.arcade-events .tourney-grid{padding-top:12px}.arcade-leaderboard{scroll-margin-top:90px}.arcade-page .arcade-leaderboard .table-wrap{margin-top:22px}.tc-stats .cur{white-space:normal}
@media(max-width:640px){.arcade-events{padding:0 16px}.arcade-events>summary{flex-wrap:wrap;padding:14px 0;gap:8px}.arcade-events .arcade-count{font-size:12px}.arcade-page .tc-stats{font-size:17px}}
