@font-face{font-family:'Alegreya SC';src:url('/fonts/AlegreyaSC-Medium.ttf') format('truetype');font-weight:500;font-display:swap}@font-face{font-family:'Golos Text';src:url('/fonts/GolosText.ttf') format('truetype');font-weight:400 900;font-display:swap}
:root{font-family:'Golos Text','Segoe UI',sans-serif;color:#e0e5ee;background:#101b2f;color-scheme:dark;font-synthesis:none}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;min-height:100dvh;background:radial-gradient(ellipse at 80% 20%,#263d59 0,transparent 58%);user-select:none}header{height:76px;padding:0 32px;display:flex;align-items:center;gap:24px;border-bottom:1px solid #34465e;background:#111e33}header>span{font-size:12px;color:#9dacc1}.wordmark{font:28px 'Alegreya SC',Georgia,serif;color:#e9cf93;text-decoration:none}main{width:min(990px,100%);padding:44px 28px 60px;margin:auto}h1,h2{font-family:'Alegreya SC',Georgia,serif;font-weight:500;color:#eddbac}h1{font-size:38px;margin:8px 0 10px}h2{font-size:23px;margin:0 0 22px}p{line-height:1.6;font-size:14px;color:#b3bfd0}.eyebrow{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#d1b877}.intro{margin-bottom:28px}.layout{display:grid;grid-template-columns:360px 1fr;gap:22px;align-items:start}.panel{padding:26px;background:#14243a;border:1px solid #3a4c65;border-radius:12px;box-shadow:0 14px 35px #08102135}.panel label,legend{display:block;font-size:12px;color:#b6c2d4;margin-bottom:9px}input,button,.button{font:inherit;color:inherit;border:1px solid #425670;border-radius:6px}input{background:#0f1c30;padding:11px 12px;min-width:0;width:100%;font-size:14px;user-select:text}input:focus{outline:2px solid #e0c588;outline-offset:2px}button,.button{display:inline-flex;align-items:center;justify-content:center;padding:11px 15px;background:#263c5a;text-decoration:none;cursor:pointer;font-size:13px;gap:8px}button:hover:not(:disabled),.button:hover{background:#344e70}button:focus-visible,a:focus-visible{outline:2px solid #e5c784;outline-offset:3px}button:disabled{opacity:.42;cursor:not-allowed}.primary{background:#d4ba7c;border-color:#e0c78d;color:#152139;font-weight:600}.primary:hover:not(:disabled){background:#e5cd94}fieldset{border:0;padding:0;margin:23px 0}.choices{display:flex;gap:9px;flex-wrap:wrap}.choices button{padding:0;width:40px;height:40px;border:2px solid transparent;position:relative}.colors button{background:var(--choice-color);box-shadow:inset 0 0 0 3px #14243a;border-color:#42546b}.choices button[aria-pressed=true]{border-color:#f2ddaa;box-shadow:0 0 0 2px #14243a,inset 0 0 0 3px #14243a}.colors button[aria-pressed=true]::after{content:'✓';font-size:19px;text-shadow:0 1px 3px #000;color:white}.emblems button{font-size:23px}.identity-preview{display:flex;align-items:center;gap:14px;border-top:1px solid #344860;padding:18px 0 23px}.identity-preview strong{display:block;max-width:210px;overflow-wrap:anywhere}.identity-preview span+div>span{display:block;font-size:11px;color:#91a2b9;margin-top:5px}.crest{display:flex;align-items:center;justify-content:center;background:var(--player-color,#287f8e);width:48px;height:56px;clip-path:polygon(0 0,100% 0,100% 70%,50% 100%,0 70%);font-size:26px;color:#fff2d3;flex-shrink:0;text-shadow:0 1px 3px #0005}#profile-submit{width:100%}.note{font-size:12px;color:#98aac0;line-height:1.6;margin:12px 0 0}.section-heading{display:flex;justify-content:space-between;align-items:baseline}.section-heading span{font-size:12px;color:#8ea1bb}.player{display:flex;align-items:center;gap:15px;padding:18px 0;border-bottom:1px solid #34465f}.player:first-child{padding-top:0}.player .name{font-size:15px;overflow-wrap:anywhere}.player .meta{font-size:11px;color:#9aadc3;margin-top:6px}.player .state{font-size:11px;margin-left:auto;white-space:nowrap;color:#b2c0d1}.player .state.ready{color:#a1d2b1}.empty-seat{border:1px dashed #425875;border-radius:8px;padding:24px;margin:20px 0;color:#8fa1b9;font-size:13px}#invite{margin-top:25px}.invite-row{display:flex;gap:8px}.invite-row input{font-size:11px}.invite-row button{padding:10px;font-size:12px}.lobby-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.welcome{text-align:center;padding:40px 28px}.welcome-mark{font-size:70px;line-height:1;color:#d6bf8d;margin:16px 0 30px}.welcome h2{margin-bottom:15px}#error,#connection{padding:13px 16px;font-size:13px;line-height:1.5;border:1px solid #ab8062;border-radius:7px;background:#45332e;color:#f0c6a9;margin-bottom:20px}#connection{border-color:#546f91;background:#203754;color:#c0d2eb}#saved{margin-top:32px}#saved h2{font-size:20px;margin-bottom:14px}#saved-list{display:flex;gap:10px;flex-wrap:wrap}.saved-link{color:#bccce1;border:1px solid #3c506c;border-radius:6px;padding:10px 14px;font-size:12px;text-decoration:none}.saved-link:hover{background:#243c58}@media(max-width:760px){header{padding:0 20px}.layout{grid-template-columns:1fr}main{padding:28px 18px 40px}.panel{padding:22px}.welcome{display:none}h1{font-size:32px}}

/* Profile preview and swatches retain their real team color on hover. */
.colors button:hover:not(:disabled){background:var(--choice-color);border-color:#f2ddaa;outline:1px solid #f2ddaa;outline-offset:2px}
.room-side{display:grid;gap:22px;min-width:0}.capital-preview{padding:0;overflow:hidden;background:radial-gradient(ellipse at 50% 48%,#344b64,#14243a 74%)}#capital-stage{height:310px;width:100%}#capital-stage canvas{display:block;width:100%;height:100%}.capital-identity{display:flex;align-items:center;justify-content:center;gap:12px;padding:0 24px 24px;overflow-wrap:anywhere}.capital-identity .crest{width:30px;height:36px;font-size:19px}.capital-identity strong{font-weight:500;max-width:calc(100% - 42px)}.capital-fallback{display:grid;place-items:center;font-size:140px;color:#d5c9a4}@media(max-width:760px){#capital-stage{height:260px}}

.crest{line-height:1;padding-bottom:8px;font-family:"Segoe UI Symbol","Golos Text",sans-serif}.capital-identity .crest{padding-bottom:5px}.player .crest{padding-bottom:8px}
/* Entry screens share the lobby palette, with only the next decision visible. */
#menu-back{margin-left:auto;color:#b6c5da;font-size:12px;text-decoration:none}.entry{display:flex;align-items:center;justify-content:center;min-height:calc(100dvh - 240px)}.menu-screen{width:min(420px,100%);text-align:center}.menu-screen h1{font-size:42px;margin:0 0 35px}.menu-screen .menu-button{display:flex;width:100%;min-height:56px;font-size:16px;margin:12px 0}.menu-back{display:inline-block;color:#9eafc5;font-size:13px;text-decoration:none;padding:18px}.menu-back:hover,#menu-back:hover{color:#efd7a2}.join-form{text-align:left;border-top:1px solid #3a4d67;margin-top:26px;padding-top:22px}.join-form label{display:block;font-size:12px;color:#b7c5d8;margin-bottom:9px}.join-form input{font-size:18px;letter-spacing:3px;text-transform:uppercase}.join-form button{white-space:nowrap}.menu-screen #saved h2{text-align:left;font-size:18px;margin-bottom:12px}.menu-screen #saved-list{text-align:left}.menu-screen #saved{margin-top:24px}.menu-screen #solo-check{min-height:20px}#retry-connect{margin-bottom:20px}#profile-submit{margin-top:12px}#profile-note{min-height:18px}#entry[hidden],#room-screen[hidden]{display:none!important}
/* Both readiness controls remain visible on the desktop lobby. */
#room-screen .intro{margin-bottom:20px}#room-screen #capital-stage{height:190px}#room-screen .capital-identity{padding-bottom:16px}#room-screen .room-side{gap:16px}#room-screen #lobby-panel{padding:22px}#room-screen .section-heading h2{margin-bottom:16px}#room-screen .player{padding:12px 0}#room-screen .player:first-child{padding-top:0}#room-screen #invite{margin-top:18px}#room-screen .lobby-actions{margin-top:18px}#room-screen .player .crest{width:40px;height:46px;font-size:23px}
