.Z{color:#ee777e}
.T{color:#54c3ff}
.P{color:#f2ce76}
.race-emblem{display:inline-block;flex:0 0 27px;width:27px;height:29px;background:currentColor;mask:var(--race-image) center/contain no-repeat;-webkit-mask:var(--race-image) center/contain no-repeat}
.race-emblem.T{--race-image:url('assets/terran.webp')}
.race-emblem.Z{--race-image:url('assets/zerg.webp')}
.race-emblem.P{--race-image:url('assets/protoss.webp')}
.admin #stage{background:#171e27;border:1px solid #354354}
.admin .stage-title{top:35px}
.admin .stage-title h1{font-size:30px;letter-spacing:1px}
.admin .stage-title .eyebrow{display:none}
.admin .stage-title p{font-size:16px}
.admin .match-card{background:#26313f;border:1px solid #69798c;box-shadow:none;border-radius:5px}
.admin .slot{font-size:21px;font-weight:600;color:#f0f4fa}
.admin .slot.empty{font-size:15px;color:#acbbcd;font-weight:400}
.admin .slot.lose{opacity:.55}
.admin .slot.win{background:#3673a53d;color:#fff}
.admin .race-emblem{width:21px;height:25px;flex-basis:21px}
.admin .wire{stroke:#8597ad;stroke-width:2}
.admin .wire.won{stroke:#82bfed}
.admin .round-label{color:#d4e0ec;font-size:22px}
.admin .round-label small{display:none}
.admin .champion{background:#213041;border:1px solid #8297ae}
.admin .champion .crown{display:none}
.admin .champion:before{content:'우승';display:block;font-size:22px;color:#cad9eb}
.admin .champion small{display:none}
.admin .instruction{display:none}
.admin .roster-player{font-size:13px}
.admin #bulk-open{background:#2f4359;border-color:#5c7793;color:#ecf5ff}
.admin .section-title .eyebrow{display:none}
.admin .roster-panel>.muted{font-size:12px}
.admin .board-heading input:focus{background:#101923}
.admin .remove-slot{font-size:14px}
.admin .match-card:focus-within{outline:2px solid #b0d3ed;outline-offset:3px}
.board-scroll #board-fit{flex-shrink:0}
.admin .slot .race{font-size:14px;min-width:18px}
.admin .roster-panel>.muted{font-size:11px}
