/* Pixel football broadcast: original shapes, existing Stadium colour roles. */
.card .cta{border-radius:4px 16px 4px 16px;font-weight:800;letter-spacing:.25px}
.main-menu .mode-hero{border-radius:4px 20px 4px 20px}
.main-menu .mode-hero::after{content:"";position:absolute;right:20%;bottom:0;width:18%;height:3px;background:var(--ui-cyan);transform:skewX(-30deg)}
.main-menu .mode-hero{position:relative;overflow:hidden}
.section-tabs{border-bottom:1px solid var(--ui-border)}
.section-tabs [aria-selected=true]{box-shadow:inset 0 -3px var(--ui-cyan)}
.pad-active :is(button,a,input,select,textarea,summary,[tabindex]):focus{
 outline:3px solid var(--ui-cyan)!important;outline-offset:-3px;
 box-shadow:inset 0 0 0 5px var(--ui-bg)!important;
}
.pad-active #touch,.pad-active #stick,.pad-active #pad{display:none!important}
.pad-active #keyhud{display:flex!important;bottom:58px;justify-content:flex-end}
.pad-active #keyhud[hidden]{display:none!important}
.pad-active .kh-keys{display:none}
#controllerHints{
 position:absolute;bottom:max(8px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);
 z-index:65;max-width:calc(100% - 24px);width:max-content;box-sizing:border-box;
 padding:9px 15px;border:1px solid var(--ui-border);border-radius:5px;
 background:#08121ff5;color:var(--ui-text);font:600 12px/1.5 var(--font-ui);
 pointer-events:none;text-align:center;
}
#shell:has(#screen:not([hidden])) #controllerHints,
#shell:has(#pause:not([hidden])) #controllerHints{bottom:3px;padding:3px 10px;font-size:10px;border:0}
.pad-active .overlay{padding-bottom:max(30px,env(safe-area-inset-bottom))}
.controller-status{padding:14px;border:1px solid var(--ui-border);border-left:4px solid var(--ui-cyan);border-radius:8px;line-height:1.5}
.mobile-help{display:inline-block;text-decoration:none;color:var(--ui-cyan);padding:12px}
.hud{left:50%;right:auto;transform:translateX(-50%);top:max(8px,env(safe-area-inset-top));box-sizing:border-box;padding:0;width:min(530px,calc(100% - 84px));gap:5px}
.score{width:100%;box-sizing:border-box;border-radius:4px 16px 4px 16px;border:1px solid var(--ui-border);box-shadow:0 5px 0 #08121f80}
.score .goals{font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:3px}
.score .team{flex:1;justify-content:center}
.score .clock{margin-left:auto}
#matchRadar{display:none;position:absolute;z-index:4;left:max(12px,env(safe-area-inset-left));bottom:max(12px,env(safe-area-inset-bottom));width:80px;height:120px;border:1px solid var(--ui-border);border-radius:5px;image-rendering:pixelated;pointer-events:none}
.pc #matchRadar,.pad-active #matchRadar{display:block}
#matchRadar[hidden]{display:none}
.player-hud{border-left:3px solid var(--ui-cyan);align-self:flex-start;border-radius:3px;max-width:100%}
.tension-hud{display:flex;align-items:center;gap:8px;align-self:flex-start;background:#08121fe8;padding:5px 9px;border-left:3px solid var(--ui-accent);border-radius:3px;font:700 9px/1.2 var(--font-ui)}
.tension-hud[hidden]{display:none}
.tension-hud span{white-space:nowrap;color:var(--ui-muted)}
.tension-hud b{color:var(--ui-accent);font-variant-numeric:tabular-nums}
.tension-hud progress{appearance:none;border:0;border-radius:0;width:86px;height:6px;background:var(--ui-raised)}
.tension-hud progress::-webkit-progress-bar{background:var(--ui-raised)}
.tension-hud progress::-webkit-progress-value{background:var(--ui-accent)}
.tension-hud progress::-moz-progress-bar{background:var(--ui-accent)}
@media(max-width:500px){
 .hud{left:10px;transform:none;top:max(8px,env(safe-area-inset-top));width:calc(100% - 65px)}
 .score{padding:5px 7px;gap:5px}
 .score .team{font-size:10px;gap:3px;min-width:0}
 .score .team span{max-width:75px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
 .score .team img{width:22px;height:22px}
 .score .clock{font-size:11px}
 .score .goals{font-size:20px;letter-spacing:1px}
 #controllerHints{font-size:10px;padding:6px 9px}
}
@media(max-height:500px){
 .hud{top:6px;gap:3px}
 .tension-hud{position:absolute;left:0;top:calc(100% + 3px)}
}
