:root{font-family:Arial,"Helvetica Neue",sans-serif;color:#f9f7ff;background:#151125}
*{box-sizing:border-box}
body{margin:0}
button{font:inherit;cursor:pointer}
a{color:inherit}
.brand{font-weight:950;font-style:italic;letter-spacing:-.065em;font-size:clamp(20px,2vw,32px);white-space:nowrap}
.brand span{display:block;color:#a5ff3b;font-size:.66em;letter-spacing:.015em}
.control-page{min-height:100vh;background:linear-gradient(135deg,#1d1539 0%,#151125 45%,#101020 100%)}
.control-shell{max-width:1280px;margin:auto;padding:28px}
.control-header,.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.control-header{padding-bottom:24px;border-bottom:1px solid #4f425e}
.live-tag{font-weight:800;font-size:13px;letter-spacing:.12em;color:#a5ff3b}
.control-main{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;padding-top:28px}
h1,h2{margin:0;font-weight:900;letter-spacing:-.04em}
h1{font-size:32px}h2{font-size:23px}
.hint{color:#bcb1cc;margin:10px 0 20px;font-size:16px}
.text-button{border:0;background:transparent;color:#a5ff3b;font-size:14px;font-weight:700;padding:8px}
.text-button:hover{text-decoration:underline}
.match-list{display:grid;gap:8px;max-height:calc(100vh - 205px);overflow:auto;padding-right:5px}
.match-card{width:100%;border:1px solid #50465c;border-radius:10px;background:#251d3d;color:#fff;text-align:left;padding:14px 16px;transition:background .15s,border-color .15s;display:grid;grid-template-columns:90px minmax(0,1fr) auto;align-items:center;gap:14px}
.match-card:hover,.match-card:focus-visible{background:#30254f;border-color:#a5ff3b;outline:none}
.match-card.selected{border-color:#a5ff3b;box-shadow:inset 4px 0 #a5ff3b}
.match-time{font-size:16px;font-weight:850;color:#a5ff3b}
.match-time small{display:block;color:#bcb1cc;font-size:13px;font-weight:500;margin-top:3px}
.match-pair{font-size:18px;font-weight:850;line-height:1.2}
.match-pair .vs-small{color:#a5ff3b;padding:0 5px}
.match-stage{color:#bcb1cc;font-size:13px;text-align:right}
.match-stage b{display:block;color:#f9f7ff;font-size:13px}
.status-panel{align-self:start;border:1px solid #625078;background:#211930;border-radius:14px;padding:20px;position:sticky;top:18px}
.current-card{margin:16px 0 20px;padding:16px;background:#352657;border-radius:10px;min-height:76px;font-weight:800;font-size:18px}
.current-card small{display:block;margin-top:6px;font-size:14px;color:#c7bdd2;font-weight:500}
.mode-list{display:grid;gap:7px}
.mode{background:#201a32;color:#f9f7ff;border:1px solid #564963;border-radius:8px;padding:11px 12px;text-align:left;font-size:15px}
.mode:hover,.mode:focus-visible{border-color:#a5ff3b;outline:none}
.mode.active{background:#a5ff3b;color:#161020;border-color:#a5ff3b;font-weight:850}
.winner-button{border-color:#8061a0}
.asset-status{color:#c7bdd2;margin:22px 0 4px;font-size:14px}
.message{min-height:24px;color:#a5ff3b;font-size:14px}
.screen-link{display:block;border-top:1px solid #564963;padding-top:18px;font-weight:800;text-decoration:none}
.screen-link:hover{color:#a5ff3b}
.screen-page{width:100vw;height:100vh;overflow:hidden;background:#100c1c}
.broadcast{width:100vw;height:100vh;position:relative;overflow:hidden;background:#100c1c}
.screen-content{position:absolute;inset:0;overflow:hidden}
.scene-layer{position:absolute;inset:0;width:100%;height:100%;opacity:0;z-index:0;transition:opacity .75s ease;pointer-events:none}
.scene-layer.active{opacity:1;z-index:1}
.scene-layer.incoming{z-index:2}
.vs-content{overflow:hidden}
.vs-template{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.team-stack{position:absolute;top:26.4%;width:37.5%;height:63.3%;display:flex;align-items:center;justify-content:center}
.team-left{left:3.9%}.team-right{right:3.9%}
.team-logo{display:block;width:100%;height:100%;object-fit:contain}
.team-logo:not([src]){display:none}
.media-layer{object-fit:fill;background:#100c1c}
@media(max-width:800px){.control-shell{padding:16px}.control-main{grid-template-columns:1fr}.status-panel{position:static;grid-row:1}.match-list{max-height:none}.match-card{grid-template-columns:76px 1fr}.match-stage{grid-column:2;text-align:left}.control-header{padding-bottom:16px}}
