/* The player title and tools belong to the page, while game clocks stay visible. */
.mobile-body{display:block}
.mobile-body>.mobile-header{position:relative!important;top:auto;left:auto;transform:none;width:100%;max-width:500px;margin-inline:auto}
.mobile-body>.mobile-container{padding-top:0;margin-inline:auto;min-width:0}
.mobile-body:is(.crew-flight,.r2-flight,.r3-flight,.a4-flight)>.mobile-header{max-width:none}
.crew-flight.meteor-clock-visible .mobile-container{padding-top:0}
.meteor-clock-visible>.mobile-header{margin-top:58px}
#crewMeteorClockHud{top:0}
.crew-root .hud{grid-template-columns:1fr}
#round2PinnedClock{position:fixed;top:0;left:0;right:0;z-index:101;display:flex;align-items:center;justify-content:space-between;height:58px;padding:8px 16px;background:linear-gradient(90deg,#21162d,#30244d);border-bottom:2px solid #e4a7ff;box-shadow:0 4px 16px #0007;color:#f4dcff}
#round2PinnedClock[hidden]{display:none}
#round2PinnedClock strong{font:800 32px Consolas,monospace;font-variant-numeric:tabular-nums}
.r2-clock-visible .mobile-header{margin-top:58px}
.r2-clock-visible .mobile-mothership-shield-header{top:58px}
.r2-round-controls{text-align:center!important;font-size:20px!important;display:flex!important;flex-direction:column;align-items:center;padding:12px!important}
.r2-round-controls [data-round2-clock]{font:900 clamp(64px,9vw,130px) Consolas,monospace!important;color:#ffe59e;text-shadow:0 0 25px #ffbe4a55;line-height:1.15}
.score-race{width:100%;grid-column:1/-1;display:grid;gap:10px;padding:12px 0}
.race-row{display:flex;align-items:center;gap:12px;min-width:0}.race-rank{width:48px;flex:none;font:800 24px var(--font-en,monospace);color:#ffe9a2}.race-track{min-width:0;flex:1}.race-bar{min-width:118px;height:60px;display:flex;align-items:center;gap:12px;padding-left:12px;border-radius:8px;background:linear-gradient(90deg,#143748,#198387);border:1px solid #68e7e0;box-shadow:0 0 12px #56ffff13}.race-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:18px;color:#fff}.race-score{font:800 24px var(--font-en,monospace);color:#fff}.race-team{display:flex;align-items:center;justify-content:center;align-self:stretch;min-width:54px;padding:0 8px;background:#aaffea;color:#073139;font:900 36px var(--font-en,monospace);border-radius:0 7px 7px 0}.race-track>small{display:block;color:#bed4e5;font-size:14px;margin:4px 0}.race-row.has-bug .race-bar{animation:race-bug 1s ease-in-out infinite;border-color:#ff7591}.race-row.has-bug .race-team{background:#ffd0d9;color:#741d31}@keyframes race-bug{0%,100%{background:#4b182b;box-shadow:0 0 5px #fa335522}50%{background:#b33448;box-shadow:0 0 22px #fa335566}}
.live-team-rankings{padding:18px;margin:16px 0;width:100%;box-sizing:border-box}.live-team-rankings h2{font-size:20px;margin:0 0 12px;color:#ddfaff}.live-rank-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:8px}.live-rank-grid article{display:flex;align-items:center;gap:10px;border:1px solid #42657b;padding:10px;border-radius:10px;background:#0b1c30}.live-rank-grid article>b{color:#ffe49b;font-size:24px}.live-rank-grid article>div{flex:1;min-width:0;overflow-wrap:anywhere}.live-rank-grid small{display:block;color:#bdd4e6;margin-top:4px;font-size:13px}.live-rank-grid article>span{color:#91ffe0;font:800 24px var(--font-en,monospace)}
.bonus-fireworks{position:fixed;inset:0;z-index:9999;pointer-events:none;overflow:hidden}.bonus-fireworks-label{position:absolute;top:22%;left:50%;transform:translateX(-50%);width:max-content;max-width:90vw;padding:18px 26px;background:#122944ef;border:2px solid #ffe39f;box-shadow:0 0 30px #ffe07555;border-radius:16px;text-align:center;font-size:24px;color:#fff}.bonus-fireworks-label strong{display:block;color:#ffe296;font-size:clamp(24px,5vw,40px)}.bonus-fireworks i{position:absolute;left:var(--x);top:var(--y);width:5px;height:5px;border-radius:50%;background:var(--color);box-shadow:0 0 8px var(--color);animation:bonus-spark 1.6s var(--delay) ease-out both}@keyframes bonus-spark{0%{transform:translate(0,0);opacity:0}10%{opacity:1}100%{transform:translate(var(--dx),var(--dy));opacity:0}}
.admin-bonus-shortcut{background:#372e14;color:#ffe49a;border:1px solid #b2924e;padding:9px 14px;box-shadow:0 6px 18px #0007}
.race-threat{display:block;color:#ffd3dc;font-size:14px;padding:3px 0}.score-race.many-teams{gap:5px}.many-teams .race-bar{height:36px}.many-teams .race-team{font-size:28px}.many-teams .race-track>small{display:none}.many-teams .race-name{font-size:16px}.many-teams .race-score{font-size:22px}.live-team-rankings{flex-shrink:0;max-height:30vh;overflow:auto}.live-rank-grid{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}
@media(max-width:600px){.race-rank{font-size:18px;width:34px}.race-bar{height:52px;gap:5px;min-width:105px}.race-name{font-size:14px}.race-team{font-size:28px;min-width:38px}.race-score{font-size:20px}.race-row{gap:6px}}
@media(prefers-reduced-motion:reduce){.race-row.has-bug .race-bar,.bonus-fireworks i{animation:none}.race-row.has-bug .race-bar{background:#81243c}}
#adminMobileShortcuts{display:none}
/* The projector header must also fit tablet and phone previews. */
@media(max-width:1100px){
 .dashboard-body{padding:10px}
 .dashboard-body .dashboard-wrapper{height:auto;min-width:0}
 .dashboard-body .dash-header{flex-wrap:wrap;gap:12px;padding:12px;min-width:0}
 .dashboard-body .dash-brand{flex-basis:100%;min-width:0}
 .dashboard-body .dash-brand>div:last-child{min-width:0;overflow-wrap:anywhere}
 .dashboard-body .brand-logo-icon{flex-shrink:0}
 .dashboard-body .slogan-pill{flex-wrap:wrap;max-width:100%;font-size:14px;padding:8px 12px;overflow-wrap:anywhere}
 .dashboard-body .dash-stats-bar{width:100%;flex-wrap:wrap;gap:8px;min-width:0}
 .dashboard-body .stat-item{min-width:0;max-width:100%;flex-wrap:wrap;padding:8px}
 .dashboard-body .stat-badge{overflow-wrap:anywhere}
 .dashboard-body .lock-banner-inner,.dashboard-body .lock-banner-left{flex-wrap:wrap;gap:12px;min-width:0}
 .dashboard-body .lock-banner-left{flex:1 1 240px}
 .dashboard-body .lock-text{min-width:0;flex:1 1 180px}
 .dashboard-body .badge-locked{max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .dashboard-body .dash-stats-bar button{min-height:44px}
 .dashboard-body .dash-stage,.dashboard-body .nexus-dashboard-grid{height:auto;min-width:0}
 .dashboard-body .shuffle-hologram{min-width:0;width:100%;max-width:100%;padding:16px}
 .dashboard-body .glitch-title{font-size:clamp(24px,5vw,44px);overflow-wrap:anywhere}
 .dashboard-body .circle-groups-grid{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
 .dashboard-body .icebreaker-fullscreen-container{height:auto;min-width:0;padding:12px}
 .dashboard-body .icebreaker-board-header{flex-wrap:wrap;gap:12px}
 .dashboard-body .header-right-stats,.dashboard-body .stat-pill-group{flex-wrap:wrap;min-width:0;max-width:100%}
 .dashboard-body .groups-synergy-fullscreen-grid{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr))}
 .dashboard-body .lobby-grid{grid-template-columns:minmax(0,1fr)}
 .dashboard-body .qr-panel{padding:16px}.dashboard-body .qr-img{max-width:100%;height:auto}
 .dashboard-body .mothership-reactor-panel{height:auto;padding:12px;min-width:0;overflow:visible}
 .dashboard-body .mothership-reactor-panel>div:first-child>div:first-child,.dashboard-body .mothership-hud-box>div:first-child{flex-wrap:wrap;gap:8px}
 .dashboard-body .mothership-hud-box{padding:14px!important}
 .dashboard-body .crisis-alert-topbar{flex-wrap:wrap;gap:8px}
 .dashboard-body .crisis-main-hud-row{grid-template-columns:minmax(0,1fr)}
 .dashboard-body .dash-meteor-wave-banner{padding:12px}
 .dashboard-body #dashNamingGrid{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))!important}
 .dashboard-body #r1LeaderboardGrid{display:block!important}
 .dashboard-body .victory-stage{width:100%;min-width:0;padding:18px;overflow-wrap:anywhere}
 .dashboard-body .victory-title{font-size:clamp(28px,5vw,60px);max-width:100%}
 .dashboard-body .victory-stats-grid{flex-wrap:wrap;max-width:100%;gap:10px}
 .dashboard-body .victory-stat-card{min-width:0;max-width:100%;flex:1 1 180px}
}
@media(max-height:500px) and (max-width:1100px){
 .admin-tab-navigation .admin-tab-rail{display:flex;overflow-x:auto}
 .admin-tab-navigation .admin-stage-tab{flex:0 0 auto;white-space:nowrap}
}
@media(max-width:600px){
 #adminMobileShortcuts{position:fixed;left:10px;right:10px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:120;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:8px;padding:8px;border:1px solid #35536d;border-radius:16px;background:#091522f5;box-shadow:0 5px 24px #0008}
 #adminMobileShortcuts #btnAdminBonusShortcut{grid-column:1;grid-row:1}
 #adminMobileShortcuts #btnAdminCurrentStage{grid-column:2;grid-row:1;position:static;max-width:none;white-space:normal;border-radius:10px}
 #adminMobileShortcuts>button{min-width:0;width:100%;min-height:48px;margin:0;padding:8px!important;font-size:12px!important;line-height:1.4;overflow-wrap:anywhere}
 .admin-body{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}
}
