/* Shared portal controls: quiet surfaces, clear hierarchy, consistent target sizes. */
:root{--radius-card:10px;--radius-btn:6px;--line:#29424c;--focus:#a4d9c3}
button,input,select,textarea{font-family:Source,Arial,sans-serif;font-size:14px;letter-spacing:0;text-transform:none;border-radius:6px}button{min-height:40px;cursor:pointer}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.primary{font:600 15px Source,Arial,sans-serif;letter-spacing:0;text-transform:none;min-height:44px;border-radius:6px;box-shadow:none}.secondary{font:500 14px Source,Arial,sans-serif;text-transform:none;letter-spacing:0;border:1px solid var(--line);border-radius:6px}.arrow{font-size:18px}
.deploy-card,.pause-card,.score-card{border:1px solid var(--line);border-radius:10px;box-shadow:0 20px 60px #0005}.deploy-heading,.deploy-card label,.settings label,.score-card .eyebrow{font:500 13px Source,Arial,sans-serif;letter-spacing:0;text-transform:none}.deploy-card input,.deploy-card select,.settings select{min-height:40px;padding:9px 12px;border:1px solid var(--line);background:#0b202a;color:#edf4f1;border-radius:6px}.deploy-heading{font-size:15px}.settings label{font-size:14px}.score-card{background:#0b202af5;max-width:1000px}.score-card h2{font:600 27px Source,Arial,sans-serif;letter-spacing:-.5px;text-transform:none}.score-card table{font:400 15px Source,Arial,sans-serif}.score-card th{font:500 12px Source,Arial,sans-serif;text-transform:none;letter-spacing:0;color:#a0b6ba;padding:12px}.score-card td{padding:12px;border-bottom:1px solid #29424c77}.team-board{border-radius:6px;overflow:hidden}.team-board h3{font:600 14px Source,Arial,sans-serif;letter-spacing:0;padding:13px}.score-footer{font:12px Source,Arial,sans-serif;letter-spacing:0}.pause-card h2{font:600 30px Source,Arial,sans-serif;letter-spacing:-.5px}.pause-card h2 em{font-style:normal}.pause-card .controls,.external{font:12px Source,Arial,sans-serif;letter-spacing:0}.match-facts{font-family:Source,Arial,sans-serif}.match-facts strong{font:600 20px Source,Arial,sans-serif}.menu-main h1{font-size:clamp(42px,5.4vw,76px);letter-spacing:-2px}.room-admin{color:#a0b6ba;font:13px Source,Arial,sans-serif;text-decoration:none;margin-left:16px}.room-admin:hover{color:#edf4f1}
.score-card{max-height:88vh;overflow:auto}.score-card:has(#score-rows tr:nth-child(16)) td{padding:5px 10px;font-size:13px;line-height:1.15}.score-card:has(#score-rows tr:nth-child(16)) th{padding:8px 10px}.score-card:has(#score-rows tr:nth-child(16)) h2{margin:10px 0 16px}

#postgame{z-index:40;overflow:auto}#postgame .menu-main{padding-bottom:50px}#postgame .deploy-card{max-width:620px}#postgame h2{font-size:18px}#capture-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0;max-height:320px;overflow:auto}#capture-gallery img{display:block;width:100%;border-radius:5px}#capture-gallery a{color:#c1dfcc;text-decoration:none;font-size:13px}#capture-summary{font-size:14px;line-height:1.5;color:#b3bcb6}.return-site{display:block;text-decoration:none;text-align:center;margin-top:14px}#capture-toast{position:fixed;top:18%;left:50%;transform:translateX(-50%);z-index:120;background:#15221ef0;color:#dcf2e7;border:1px solid #41564c;border-radius:6px;padding:12px 20px;font:500 15px system-ui}#scoreboard{z-index:60}
