@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Unbounded:wght@500;600;700;800&display=swap');
:root{--accent:#e7e7e7;--accent-rgb:231,231,231}
/* Player identity and profile desk. */
.account-entry{display:inline-flex;align-items:center;gap:9px;padding:6px 10px 6px 6px;border-color:#ffffff16;border-radius:30px;background:#ffffff02;max-width:200px}.account-entry>span:last-child{font-size:11px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.minimal-shell>.account-entry{position:absolute;top:28px;left:28px}.account-avatar{width:30px;height:30px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border:1px solid #ffffff1a;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,rgba(var(--accent-rgb),.15),#ffffff03);color:var(--accent);font-size:12px;font-weight:600}.account-avatar img{display:block;width:100%;height:100%;object-fit:cover}.account-avatar.large{width:90px;height:90px;font-size:34px;border-radius:24px}.account-auth-panel,.account-profile-panel{background:radial-gradient(ellipse at 100% 0%,#ffffff04,transparent 60%),#131313;border:1px solid #ffffff16;border-radius:14px;padding:28px}.account-auth-panel .fields{grid-template-columns:1fr;gap:18px}.account-auth-panel .page-intro{margin:14px 0 25px}.account-auth-switch{display:block;width:100%;border:0;padding:17px 0 5px;font-size:11px;color:#a6a6a6;font-weight:500}.account-form-error{color:#dfa3a3;font-size:11px;line-height:1.8;margin:12px 0}.account-form-error:empty{display:none}.account-profile-identity{display:flex;align-items:center;gap:22px;margin-top:25px}.account-profile-identity h1{font:600 26px/1.4 'Dela Gothic One',Unbounded,Arial;margin:0;overflow-wrap:anywhere}.account-profile-identity p{font-size:12px;color:#969696;margin:7px 0 10px}.account-presence{display:inline-flex;align-items:center;gap:6px;font-size:10px;color:#8d8d8d}.account-presence:before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}.account-presence.online{color:#bcbcbc}.account-joined{font-size:10px;color:#898989;margin:20px 0 0}.account-profile-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:22px 0;margin-top:20px;border-top:1px solid #ffffff10;border-bottom:1px solid #ffffff10}.account-profile-stats strong{display:block;font-size:25px;color:#e2e2e2;font-weight:600}.account-profile-stats span{display:block;font-size:9px;color:#8e8e8e;line-height:1.7;margin-top:6px}.account-profile-edit{padding-top:25px}.account-profile-edit h2,.account-game-history h2{font-size:14px;margin:0 0 18px}.account-avatar-editor{display:flex;align-items:center;gap:12px}.account-avatar-editor .account-avatar{width:42px;height:42px;font-size:16px}.account-upload{position:relative;display:inline-flex;align-items:center;cursor:pointer;font-size:11px;border:1px solid #ffffff18;border-radius:7px;padding:10px 13px;color:#cbcbcb;overflow:hidden}.account-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.account-upload:focus-within{outline:2px solid var(--accent);outline-offset:3px}.account-avatar-note{display:block;font-size:9px;color:#8a8a8a;margin:11px 0 22px}.account-profile-edit .setup-input-wrap input{height:45px}.account-profile-save{display:flex;justify-content:space-between;gap:14px;margin-top:20px}.account-profile-save button{font-size:11px}.account-profile-save #account-logout{color:#b79d9d}.account-game-history{border-top:1px solid #ffffff12;margin-top:30px;padding-top:25px}.account-game-history .section-title{margin:0}.account-game-history .section-title small{color:#8f8f8f;font-size:10px}.account-game-list>article{display:flex;align-items:flex-start;gap:13px;padding:18px 0;border-top:1px solid #ffffff0d}.account-game-list>article>div:nth-child(2){flex:1;min-width:0}.account-game-history strong{font-size:12px;color:#dfdfdf;overflow-wrap:anywhere}.account-game-history p{font-size:10px;color:#9e9e9e;margin:6px 0}.account-game-history article small{display:block;font-size:9px;color:#8a8a8a;line-height:1.8}.account-game-history button{font-size:10px;white-space:nowrap}.account-game-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#ffffff03;border:1px solid #ffffff10;border-radius:8px;color:#b6b6b6}.account-game-icon .flag{width:24px;height:16px}.account-history-empty{padding:24px 15px;border:1px dashed #ffffff17;border-radius:9px;line-height:1.9;text-align:center}.lobby-profile-link{padding:5px 0;margin-top:5px;border:0;font-size:9px;color:#acacac;font-weight:400}.session .account-entry{padding:3px;border-color:#ffffff14}.session .account-entry>span:last-child{display:none}.session .account-avatar{width:25px;height:25px;font-size:10px}@media(max-width:600px){.minimal-shell>.account-entry{top:18px;left:16px;max-width:180px}.account-auth-panel,.account-profile-panel{padding:20px 16px}.account-profile-identity{gap:15px}.account-profile-identity h1{font-size:20px}.account-avatar.large{width:68px;height:68px;border-radius:18px;font-size:27px}.account-profile-stats{gap:10px}.account-profile-stats strong{font-size:21px}.account-game-list>article{flex-wrap:wrap}.account-game-list>article button{margin-left:49px}.account-avatar-editor{gap:8px}.account-avatar-editor button{font-size:10px}}
/* Optional shared world events and a full-width arena control bar. */
.arena-footer{position:sticky;bottom:-24px;z-index:3;background:#101010;padding:18px 0 0;justify-content:space-between}.arena-footer button{margin-left:auto}.sidebar-events{margin-top:10px}
.world-events-option{display:flex;align-items:center;gap:14px;margin-top:24px;padding:18px;border:1px solid #ffffff18;border-radius:10px;background:#ffffff02;cursor:pointer}.world-events-option>input{accent-color:var(--accent);width:17px;height:17px;flex-shrink:0}.world-events-option strong{display:block;font-size:12px;color:#ddd}.world-events-option small{display:block;font-size:10px;color:#959595;line-height:1.8;margin-top:6px}.world-events-option:has(input:checked){border-color:rgba(var(--accent-rgb),.35);background:rgba(var(--accent-rgb),.035)}
.world-events-page{margin-top:25px}.world-events-page .panel{padding:24px;background:#121212;border-color:#ffffff16}.world-events-page h2{font-size:18px}.world-event-current{margin-top:24px}.world-event-current p{font-size:13px;line-height:1.9;color:#c5c5c5}.world-event-current small{font-size:10px;line-height:1.7;color:#909090}.world-event-current.positive{border-color:#aaaaaa55;background:radial-gradient(ellipse at 100% 0%,#aaaaaa0a,transparent 70%),#121212}.world-event-current.negative{border-color:#cb8e8e55;background:radial-gradient(ellipse at 100% 0%,#cb8e8e0a,transparent 70%),#121212}.world-event-current.positive h2{color:#c6c6c6}.world-event-current.negative h2{color:#dda7a7}.world-events-history{margin-top:20px}.world-events-history article{display:flex;align-items:flex-start;gap:18px;padding:20px 0;border-top:1px solid #ffffff12}.world-events-history article>div{flex:1}.world-events-history article strong{font-size:13px}.world-events-history article p{margin:7px 0 0;color:#929292;font-size:11px;line-height:1.8}.world-event-kind{font-size:10px;white-space:nowrap}.positive .world-event-kind{color:#bababa}.negative .world-event-kind{color:#cc9696}
.world-event-announcement{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;background:#080808a8;backdrop-filter:blur(15px);animation:world-event-arrive .7s ease both;--event-color:#c6c6c6}.world-event-announcement.negative{--event-color:#dda7a7}.world-event-announcement>div{width:100%;max-width:580px;text-align:center;padding:45px 34px;border:1px solid #ffffff17;border-radius:16px;background:radial-gradient(ellipse at 50% 0%,#ffffff05,transparent 80%),#121212e8;box-shadow:0 30px 100px #0007}.world-event-announcement .eyebrow{color:#aaa}.world-event-symbol{display:block;font-size:42px;margin:22px 0;color:var(--event-color)}.world-event-announcement h2{font:600 27px/1.5 'Dela Gothic One',Unbounded,Arial;margin:15px 0;color:var(--event-color)}.world-event-announcement p{font-size:14px;line-height:1.9;color:#ddd}.world-event-announcement small{display:block;margin-top:24px;font-size:10px;color:#999}.world-event-time{height:2px;background:#ffffff0d;margin-top:30px;overflow:hidden}.world-event-time i{display:block;height:100%;background:var(--event-color);transform-origin:left;animation:world-event-time linear forwards}.world-event-announcement.leaving{animation:world-event-leave .7s ease both;pointer-events:none}@keyframes world-event-arrive{from{opacity:0;backdrop-filter:blur(0);filter:blur(8px)}to{opacity:1;backdrop-filter:blur(15px);filter:blur(0)}}@keyframes world-event-leave{from{opacity:1;backdrop-filter:blur(15px);filter:blur(0)}to{opacity:0;backdrop-filter:blur(0);filter:blur(8px)}}@keyframes world-event-time{to{transform:scaleX(0)}}@media(max-width:700px){.world-events-history article{flex-wrap:wrap}.world-event-kind{width:100%}.world-event-announcement h2{font-size:21px}.world-event-announcement>div{padding:28px 20px}}@media(prefers-reduced-motion:reduce){.world-event-announcement,.world-event-announcement.leaving{animation:none}.world-event-announcement.leaving{opacity:0}}
:root[data-country="ES"]{--accent:#dbc46d;--accent-rgb:219,196,109}
:root[data-country="FR"]{--accent:#9b9b9b;--accent-rgb:130,157,202}
:root[data-country="DE"]{--accent:#c6a46e;--accent-rgb:198,164,110}
:root[data-country="IT"]{--accent:#aaaaaa;--accent-rgb:134,183,154}
:root{--bg:#090909;--panel:#141414;--line:#2a2a2a;--muted:#969696;--text:#f2f2f2;--cyan:#e7e7e7;--gold:#c6c6c6}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px Manrope,Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}button{color:inherit;border:1px solid var(--line);background:#1c1c1c;border-radius:7px;padding:11px 15px;font-weight:700}button:hover:not(:disabled){border-color:#e7e7e799;background:#262626}.primary{background:var(--cyan);color:#111111;border-color:var(--cyan)}.primary:hover:not(:disabled){background:#ffffff}.ghost{background:transparent}.tiny{padding:7px 10px;font-size:12px}header{height:82px;display:flex;align-items:center;gap:40px;padding:0 38px;border-bottom:1px solid var(--line);background:#0d0d0d}.brand{display:flex;align-items:center;gap:13px;min-width:255px}.brand-mark{color:var(--cyan);font-size:32px}.brand strong{font-family:'Dela Gothic One',Unbounded,Arial;font-size:13px;letter-spacing:.5px;display:block}.brand small{font-size:9px;letter-spacing:3px;color:var(--muted);display:block;margin-top:6px}nav{display:flex;gap:28px;height:100%;align-items:center}nav button{height:100%;border:0;border-radius:0;background:none;color:var(--muted);padding:0 3px;font-size:13px;position:relative}nav button.active{color:var(--cyan)}nav button.active:after{content:'';position:absolute;height:2px;background:var(--cyan);bottom:0;left:0;right:0}.session{margin-left:auto;display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px}.dot{width:6px;height:6px;background:var(--cyan);border-radius:50%;display:inline-block}aside{position:fixed;top:82px;bottom:0;width:235px;border-right:1px solid var(--line);padding:30px 20px;display:flex;flex-direction:column}.eyebrow{font-size:10px;color:var(--muted);letter-spacing:2px;text-transform:uppercase;font-weight:700}.country{width:100%;display:flex;align-items:center;gap:12px;margin-top:9px;background:none;border:1px solid transparent;text-align:left;padding:14px 12px}.country.selected{background:#1c1c1c;border-color:#484848}.flag{width:31px;height:21px;border-radius:3px;overflow:hidden;display:inline-block;flex-shrink:0}.ES{background:linear-gradient(#ad4547 25%,#d4b76d 25%,#d4b76d 75%,#ad4547 75%)}.FR{background:linear-gradient(90deg,#4e70a4 33%,#e5e9e8 33%,#e5e9e8 66%,#c65859 66%)}.DE{background:linear-gradient(#353b3d 33%,#be5553 33%,#be5553 66%,#d1b86b 66%)}.IT{background:linear-gradient(90deg,#54937c 33%,#e5e9e8 33%,#e5e9e8 66%,#c65859 66%)}.country span:last-child{margin-left:auto;color:var(--muted);font-size:11px}.side-bottom{margin-top:auto;padding-top:25px;color:var(--muted);font-size:11px;line-height:1.8}.side-bottom strong{display:block;color:var(--text);font-size:12px}.side-bottom .line{border-top:1px solid var(--line);margin:18px 0}main{margin-left:235px;padding:32px 38px 40px;max-width:1700px}.breadcrumbs{color:var(--muted);font-size:11px;display:flex;justify-content:space-between}.hero{position:relative;overflow:hidden;margin:23px 0 24px;min-height:198px;border:1px solid #343434;background:radial-gradient(ellipse at 80% 20%,#242424 0,transparent 60%),#121212;border-radius:10px;padding:27px 30px}.hero svg{position:absolute;right:0;bottom:0;width:60%;height:100%;opacity:.55}.hero-content{position:relative;z-index:1}.hero h1{font-family:'Dela Gothic One',Unbounded,Arial,sans-serif;text-transform:uppercase;font-size:42px;letter-spacing:-1.5px;margin:12px 0}.hero p{color:#a7a7a7;max-width:480px;font-size:12px;line-height:1.7;margin:0}.hero .eyebrow{color:var(--cyan)}.hero-bottom{position:absolute;right:25px;bottom:22px;display:flex;align-items:center;gap:7px;color:#a0a0a0;font-size:10px;letter-spacing:1px}.tag{display:inline-flex;align-items:center;gap:6px;border:1px solid #3d3d3d;color:#c7c7c7;border-radius:4px;padding:5px 8px;font-size:10px;font-weight:700}.stats{display:grid;grid-template-columns:1.13fr 1fr 1fr;gap:15px;margin-bottom:29px}.stat{border:1px solid var(--line);background:var(--panel);border-radius:9px;padding:19px 20px;min-height:156px}.stat-top{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px}.icon{font-size:20px;color:var(--cyan)}.stat-value{font-size:31px;font-weight:800;letter-spacing:-1px;margin:10px 0 7px}.stat-value small{font-size:12px;font-weight:500;color:var(--muted);letter-spacing:0;margin-left:6px}.stat-footer{display:flex;align-items:center;justify-content:space-between;font-size:11px;gap:8px}.positive{color:var(--cyan)}.muted{color:var(--muted)}.gold{color:var(--gold)}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-title h2{font-size:17px;margin:0;font-weight:800}.section-title h2 small{font-size:11px;margin-left:10px;color:var(--muted);font-weight:500}.section-title>span{color:var(--muted);font-size:11px}.cities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.city{background:var(--panel);border:1px solid var(--line);border-radius:9px;overflow:hidden}.city-scene{height:93px;position:relative;background:linear-gradient(180deg,#202020,#131313);overflow:hidden;border-bottom:1px solid var(--line)}.city-scene svg{width:100%;height:100%;opacity:.65}.scene-label{position:absolute;top:13px;left:17px;z-index:1}.scene-label span{font-size:9px;letter-spacing:1.3px;background:#101010cc;padding:4px 7px;border-radius:3px;color:#c4c4c4}.level{position:absolute;right:16px;top:15px;color:var(--gold);font-size:10px;background:#121212d9;border:1px solid #484848;border-radius:4px;padding:5px 8px}.city-body{padding:17px 19px}.city-heading{display:flex;align-items:center;justify-content:space-between}.city h3{font-size:20px;margin:0}.status{font-size:10px;color:var(--cyan);display:flex;align-items:center;gap:5px}.city-metrics{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:18px 0}.metric-label{font-size:10px;color:var(--muted);display:block;margin-bottom:7px}.metric-value{font-size:14px;font-weight:700}.health{display:flex;gap:3px;margin-top:8px}.health i{height:4px;width:27px;background:#363636;border-radius:1px}.health i.on{background:var(--cyan)}.shield{font-size:10px;color:var(--muted);margin-left:7px}.city-actions{border-top:1px solid var(--line);padding-top:14px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.city-actions .primary{margin-left:auto;font-size:11px;padding:9px 11px}.upgrade-cost{font-size:11px;color:var(--muted)}.lower{margin-top:24px;padding:19px 22px;border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;gap:17px;background:#131313}.lower p{font-size:11px;line-height:1.8;color:var(--muted);margin:4px 0}.lower strong{font-size:12px}.lower .icon{font-size:26px}.lower button{margin-left:auto;white-space:nowrap}.footer{margin-top:22px;display:flex;justify-content:space-between;font-size:10px;color:#808080}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{padding:22px;background:var(--panel);border:1px solid var(--line);border-radius:9px;margin-bottom:18px}.panel h2{font-size:16px;margin:0 0 18px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:var(--muted)}input,select{color:var(--text);background:#0d0d0d;border:1px solid #363636;border-radius:5px;padding:10px;width:100%}.fields button{align-self:end}.rule-note{font-size:11px;color:var(--muted);line-height:1.8}.admin-cities{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.admin-city{padding:14px;border:1px solid var(--line);border-radius:6px}.admin-city .fields{margin-top:12px}input[type=checkbox]{width:auto}.check{flex-direction:row;align-items:center;margin-top:15px}.logs{list-style:none;padding:0;margin:0}.logs li{display:flex;gap:20px;padding:16px 0;border-bottom:1px solid var(--line);line-height:1.6}.logs li small{color:var(--cyan);min-width:65px}dialog{background:#171717;color:var(--text);border:1px solid #454545;border-radius:12px;max-width:470px;width:calc(100% - 32px);padding:28px}dialog::backdrop{background:#000000c9;backdrop-filter:blur(4px)}dialog h2{font-size:20px;margin:0 0 13px}dialog p{color:#b1b1b1;line-height:1.8;font-size:13px}dialog .dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:20;padding:13px 22px;background:#202020;border:1px solid #595959;color:#f0f0f0;border-radius:7px;display:none;max-width:90%}.error{color:#d4a6a6}.hidden{display:none}.overview-row{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);gap:10px}.overview-row span{color:var(--muted);font-size:12px}h1.page-title{font:600 27px 'Dela Gothic One',Unbounded,Arial;margin:25px 0 12px}.page-intro{color:var(--muted);line-height:1.8;margin-bottom:25px;font-size:12px}@media(min-width:1500px){main{padding-left:50px;padding-right:50px}.hero{min-height:235px}.hero h1{font-size:50px}.city-scene{height:112px}}@media(max-width:1150px){header{gap:20px;padding:0 24px}.brand{min-width:220px}nav{gap:18px}.session .session-name{display:none}aside{width:200px;padding:25px 15px}main{margin-left:200px;padding:28px 25px}.stat{padding:16px}.stat-footer{flex-wrap:wrap}.admin-grid{grid-template-columns:1fr}.hero h1{font-size:35px}.city-actions .primary{margin-left:0}}@media(max-width:800px){header{height:auto;min-height:76px;flex-wrap:wrap;padding:17px 20px 0;gap:15px}.brand{min-width:0}.session{align-self:flex-start}nav{order:3;width:100%;height:40px;justify-content:space-between;gap:8px}nav button{font-size:11px}aside{position:static;width:100%;padding:15px 16px;border-right:0;border-bottom:1px solid var(--line);display:block}aside>.eyebrow,.side-bottom{display:none}.countries{display:flex;gap:5px;overflow-x:auto}.country{width:auto;white-space:nowrap;margin:0;padding:10px;font-size:11px}.country .flag{width:22px;height:15px}.country span:last-child{display:none}main{margin-left:0;padding:22px 16px}.hero{padding:23px;min-height:205px}.hero h1{font-size:32px}.hero p{max-width:290px}.hero svg{width:80%;opacity:.3}.hero-bottom{display:none}.stats{gap:9px;grid-template-columns:1fr}.stat{min-height:0;padding:15px 18px}.stat-value{font-size:26px;margin:5px 0}.stat-footer{flex-wrap:nowrap}.cities{grid-template-columns:1fr}.lower{flex-wrap:wrap}.lower button{margin-left:43px}.footer{gap:15px;line-height:1.8}.admin-cities,.fields{grid-template-columns:1fr 1fr}.section-title>span{display:none}.hero-content{max-width:100%}}
.start-shell{max-width:1130px;margin:auto;padding:28px 30px 40px}.start-brand{display:flex;align-items:center;gap:14px;font:600 12px 'Dela Gothic One',Unbounded,Arial}.start-brand .tag{margin-left:auto;font-family:Manrope,Arial}.start-hero{padding:52px 0 37px;position:relative;overflow:hidden}.start-hero svg{position:absolute;width:50%;right:0;bottom:0;height:95%;opacity:.45;z-index:-1}.start-hero .eyebrow{color:var(--cyan)}.start-hero h1{font:600 40px/1.4 'Dela Gothic One',Unbounded,Arial;letter-spacing:-1.5px;margin:18px 0}.start-hero p{color:var(--muted);max-width:470px;font-size:12px;line-height:1.8}.start-content{display:grid;grid-template-columns:1.7fr 1fr;gap:20px}.start-content>.panel{margin:0;padding:26px}.party-title{margin:12px 0 0!important;font-size:22px!important}.host-profile{display:flex;gap:15px;align-items:center;width:100%;padding:19px;background:#202020;border-color:#4a4a4a;text-align:left;margin:20px 0 16px}.host-profile>span:last-child{margin-left:auto;color:var(--cyan)}.host-profile strong,.host-profile small{display:block}.host-profile small{font-size:10px;margin-top:6px;font-weight:400;color:#b0b0b0}.profile-icon{font-size:25px;color:var(--gold)}.profile-grid,.assignment-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.player-profile{display:flex;flex-direction:column;align-items:flex-start;gap:11px;padding:17px;text-align:left;background:#141414}.player-profile strong{font-size:14px}.player-profile small{color:var(--muted);font-size:11px;font-weight:400}.player-profile .positive{font-size:10px;margin-top:3px}.new-party-card h2{font-size:19px;margin-top:16px}.new-party-card>button{width:100%;margin:16px 0 25px}.role-details{padding-top:23px;border-top:1px solid var(--line);font-size:12px}.role-details p{font-size:11px;line-height:1.9;color:var(--muted)}.local-note{color:var(--muted);font-size:10px;line-height:1.8;text-align:center;margin:23px 0 0}.assignment-grid{margin-top:20px}.assignment-card{border:1px solid var(--line);border-radius:7px;padding:18px}.assignment-card label{margin:17px 0 10px}.assignment-card small{color:var(--muted);font-size:10px}.start-form{max-width:850px;margin:auto}.start-form>.primary{width:100%;margin-top:12px}@media(max-width:800px){.start-shell{padding:22px 16px}.start-brand{font-size:9px;gap:8px}.start-brand .tag{font-size:8px}.start-hero{padding-top:34px}.start-hero h1{font-size:27px;letter-spacing:-.7px}.start-hero svg{width:80%;opacity:.23}.start-content{grid-template-columns:1fr}.start-content>.panel{padding:20px}.assignment-grid{grid-template-columns:1fr}.session{flex-wrap:wrap;gap:6px}.session .session-name{display:inline;font-size:9px}nav{justify-content:flex-start;gap:28px}}

.minimal-shell{max-width:780px;margin:auto;min-height:100vh;padding:38px 28px 25px;position:relative;display:flex;flex-direction:column;justify-content:center}.minimal-brand{display:flex;gap:13px;align-items:center;justify-content:center;color:var(--muted);font:600 10px/1.6 'Dela Gothic One',Unbounded,Arial;letter-spacing:1px;margin:20px 0 38px}.settings-trigger{position:absolute;top:28px;right:28px;width:44px;height:44px;font-size:22px;padding:0}.simple-home{text-align:center;padding:20px 0 60px}.simple-home h1{font:600 40px/1.45 'Dela Gothic One',Unbounded,Arial;letter-spacing:-1px;margin:0 0 42px;text-transform:uppercase}.simple-actions{max-width:330px;margin:auto;display:flex;flex-direction:column;gap:13px}.simple-actions button{padding:17px 22px;font-size:14px}.minimal-shell>.local-note{margin:24px 0 0}.lobby-panel{margin:0}.full{width:100%;margin-top:24px;padding:14px}.code-search{display:flex;gap:14px;align-items:flex-end}.code-search label{flex:1}.code-search input{letter-spacing:3px}.code-search button{min-height:40px}.lobby-row{display:flex;gap:13px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.lobby-row div{flex:1}.lobby-row small{display:block;font-size:10px;color:var(--muted);margin-top:6px}.lobby-row>span:last-child{font-size:11px}.lobby-code{display:flex;justify-content:space-between;align-items:center;background:#101010;border:1px solid #3b3b3b;border-radius:8px;padding:20px 22px;margin-bottom:20px}.lobby-code strong{display:block;color:var(--cyan);font-size:35px;font-weight:800;letter-spacing:7px;margin-top:8px}.lobby-teams{margin-top:20px}@media(max-width:800px){.minimal-shell{padding:75px 16px 25px;justify-content:flex-start}.minimal-brand{margin:12px 0 32px}.simple-home{padding-top:40px}.simple-home h1{font-size:27px}.settings-trigger{right:16px;top:18px}.code-search{gap:8px}.lobby-panel{padding:20px 16px}.lobby-panel .fields{grid-template-columns:1fr}.lobby-panel h2{font-size:15px}.lobby-code{padding:16px}.lobby-code strong{font-size:28px;letter-spacing:5px}}

/* Country colour stays in the title, a few fine lines and soft background light. */
body{background:#090909}
header{background:#0c0c0c}
aside{background:#0b0b0b}
button{transition:background .16s ease,border-color .16s ease,color .16s ease}
button:hover:not(:disabled){border-color:#616161;background:#242424}
.primary{background:#ececec;color:#111;border-color:#ececec}
.primary:hover:not(:disabled){background:#fff;border-color:#fff}
nav button:hover:not(:disabled){background:transparent;color:#fff;border-color:transparent}
nav button.active{color:#f2f2f2}
nav button.active:after{background:var(--accent);opacity:.75}
.country.selected{background:rgba(var(--accent-rgb),.045);border-color:rgba(var(--accent-rgb),.24)}
.country.selected span:last-child{color:var(--accent)}
.hero{background:radial-gradient(ellipse at 80% 20%,rgba(var(--accent-rgb),.09),transparent 68%),#111;border-color:#303030;isolation:isolate}
.hero:before{content:'';position:absolute;width:48%;height:150%;right:1%;top:-30%;border-radius:50%;background:rgba(var(--accent-rgb),.055);filter:blur(75px);pointer-events:none;z-index:-1}
.hero h1{color:var(--accent)}
.hero .eyebrow{color:#b8b8b8}
.hero .eyebrow span{color:#aaa}
.hero svg{opacity:.3}
.hero p{color:#aaa}
.hero-bottom{color:#8c8c8c}
.stat,.city,.panel{background:#141414;border-color:#2b2b2b}
.stat-value{color:#f6f6f6}
.stat .icon{color:#b6b6b6}
.positive{color:#d8d8d8}
.gold{color:#c7c7c7}
.tag{color:#c4c4c4;background:#ffffff03;border-color:#3a3a3a}
.city-scene{background:radial-gradient(ellipse at 85% 0,rgba(var(--accent-rgb),.05),transparent 75%),linear-gradient(#1a1a1a,#111)}
.city-scene svg{opacity:.38}
.level{color:#cacaca;border-color:#454545;background:#121212d9}
.city h3{color:#f0f0f0}
.status{color:#b8b8b8}
.health i.on{background:#ccc}
.city-actions .primary{background:#e1e1e1}
.city-actions .primary:hover:not(:disabled){background:#fff}
.lower{background:#111}
.lower .icon{color:#bdbdbd}
.logs li small{color:#bbb}
.lobby-code{background:linear-gradient(125deg,#171717,#0f0f0f);border-color:#393939}
.lobby-code strong{color:#eee}
.minimal-shell{isolation:isolate}
.minimal-shell:before{content:'';position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 24%,#ffffff05,transparent 55%);pointer-events:none}
.minimal-brand{color:#a0a0a0}
.simple-home h1{color:#f5f5f5}
.brand-mark{color:#e5e5e5}
input,select{background:#0c0c0c;border-color:#363636}
input[type=checkbox],input[type=range]{accent-color:#ddd}
#toast{background:#202020;border-color:#555;color:#eee}
dialog{background:#161616;border-color:#464646}
@media(max-width:800px){.hero svg{opacity:.21}.hero:before{filter:blur(50px)}}

/* Soft national accents across the active state's dashboard. */
:root[data-country]:not([data-country=""]) body{
  background:
    radial-gradient(ellipse 75% 55% at 95% 5%,rgba(var(--accent-rgb),.055),transparent 80%),
    radial-gradient(ellipse 65% 45% at 25% 90%,rgba(var(--accent-rgb),.035),transparent 85%),
    #090909;
  background-attachment:fixed;
}
main{
  background:
    radial-gradient(ellipse 65% 30% at 100% 30%,rgba(var(--accent-rgb),.045),transparent 80%),
    radial-gradient(ellipse 65% 35% at 5% 85%,rgba(var(--accent-rgb),.035),transparent 80%);
}
.hero{
  background:
    radial-gradient(ellipse at 85% 15%,rgba(var(--accent-rgb),.13),transparent 65%),
    radial-gradient(ellipse at 15% 100%,rgba(var(--accent-rgb),.045),transparent 70%),
    #111;
}
.country.selected{color:var(--accent);border-color:rgba(var(--accent-rgb),.3)}
.city h3{color:var(--accent)}
.city{
  background:
    radial-gradient(ellipse at 0 40%,rgba(var(--accent-rgb),.045),transparent 72%),
    #141414;
}
.city-scene{
  background:
    radial-gradient(ellipse at 90% 0,rgba(var(--accent-rgb),.09),transparent 75%),
    linear-gradient(#1a1a1a,#111);
  border-bottom-color:rgba(var(--accent-rgb),.13);
}
.level{color:var(--accent);border-color:rgba(var(--accent-rgb),.26);background:#121212e6}
.stat{
  background:
    radial-gradient(ellipse at 100% 0,rgba(var(--accent-rgb),.05),transparent 75%),
    #141414;
}
.stat .icon,.lower .icon{color:var(--accent)}
.stat-footer>.positive,.city .metric-value>.positive{color:var(--accent)}
.health i.on{background:rgba(var(--accent-rgb),.7)}
.lower{background:linear-gradient(110deg,rgba(var(--accent-rgb),.04),transparent 75%),#111}
.city-actions .primary:hover:not(:disabled){border-color:var(--accent)}
.lobby-row .lobby-row-actions{display:flex;gap:8px;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end}
.delete-party{color:#bda0a0}
.delete-party:hover:not(:disabled){color:#f0b9b9;border-color:#775050;background:#271919}
@media(max-width:500px){.lobby-row .lobby-row-actions{flex-direction:column;gap:6px}}

/* A soft lift and national tint make active buttons feel responsive. */
button{transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .12s ease;-webkit-tap-highlight-color:transparent}
button:hover:not(:disabled){background:rgba(var(--accent-rgb),.075);border-color:rgba(var(--accent-rgb),.5);box-shadow:0 0 16px rgba(var(--accent-rgb),.055);transform:translateY(-1px)}
.primary:hover:not(:disabled),.city-actions .primary:hover:not(:disabled){background:var(--accent);color:#111;border-color:var(--accent);box-shadow:0 3px 22px rgba(var(--accent-rgb),.13)}
nav button:hover:not(:disabled){color:var(--accent);background:transparent;border-color:transparent;box-shadow:none;transform:none}
.country:hover:not(:disabled){color:var(--accent);background:rgba(var(--accent-rgb),.075);border-color:rgba(var(--accent-rgb),.3)}
button:active:not(:disabled){transform:translateY(1px) scale(.985);box-shadow:none}
nav button:active:not(:disabled){transform:none}
.delete-party:hover:not(:disabled){background:#271919;color:#f0b9b9;border-color:#775050;box-shadow:0 0 16px #cc77770c}
button:focus-visible{outline-color:var(--accent);box-shadow:0 0 0 5px rgba(var(--accent-rgb),.06)}
@media(prefers-reduced-motion:reduce){button{transition:none}button:hover:not(:disabled),button:active:not(:disabled){transform:none}}
.country-info-button{margin-top:17px;border-color:rgba(var(--accent-rgb),.25);color:#dcdcdc;background:#11111166}
.info-heading{display:flex;gap:13px;align-items:center;margin-bottom:20px}
.info-heading h2{margin:6px 0 0;color:var(--accent)}
.country-summary{list-style:none;padding:0;margin:0}
.country-summary li{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:13px 0;border-bottom:1px solid #303030;font-size:12px}
.country-summary li>span{color:#aaa}
.country-summary strong{text-align:right;font-size:12px;font-weight:600}
.info-cities-title{font-size:13px;margin:24px 0 4px}
.info-cities li>span{color:#ddd}
.info-cities small{font-size:10px;color:#949494;font-weight:400;white-space:nowrap;margin-left:5px}
.city-intact{color:var(--accent)}
.city-damaged{color:#c8b798}
.city-destroyed{color:#cba0a0}
@media(max-width:500px){.country-summary li{gap:12px}.country-summary strong{max-width:60%}.info-cities small{display:block;margin:3px 0 0}.hero{padding-bottom:25px}}
.resource-icon{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px}
.resource-icon svg{width:25px;height:25px}
.production-progress{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:11px;margin-top:11px;border-top:1px solid var(--line);color:var(--muted);font-size:10px}
.production-progress button{font-size:10px;padding:6px 9px}
.city-upgrade-counter{font-size:10px;color:var(--muted);margin:0 0 10px}
.game-logo{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:43px;height:43px;line-height:0}
.game-logo svg{width:100%;height:100%;overflow:visible}
.minimal-brand .game-logo{width:64px;height:64px}
@media(max-width:800px){.brand .game-logo{width:36px;height:36px}.minimal-brand .game-logo{width:58px;height:58px}}
.city-scene{height:145px;isolation:isolate;background:#151515}
.city-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:grayscale(1);position:absolute;inset:0;z-index:0}
.city-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0008,transparent 45%,#0002 65%,#141414b8);pointer-events:none;z-index:1}
.city-scene .scene-label,.city-scene .level{z-index:2}
.scene-label span{background:#111b;color:#e3e3e3;backdrop-filter:blur(5px)}
.city-scene .level{background:#111c;backdrop-filter:blur(5px)}
@media(min-width:1500px){.city-scene{height:170px}}
@media(max-width:800px){.city-scene{height:150px}}
.hero svg.country-hero-art{position:absolute;right:-3%;top:0;bottom:auto;width:75%;height:100%;color:var(--accent);opacity:1;pointer-events:none}
@media(max-width:800px){.hero svg.country-hero-art{width:100%;right:-27%;opacity:.65}}
.raw-profile-note{font-size:10px;color:var(--muted);line-height:1.8;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.city-resource{display:flex;align-items:center;gap:12px;padding:10px 0;margin:0 0 12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px}
.city-resource .metric-label{margin:0}
.city-resource strong{font-size:12px;font-weight:600}
.city-resource>.positive{margin-left:auto;font-size:11px;white-space:nowrap;color:var(--accent)}
.raw-table-head,.raw-table-row{display:grid;grid-template-columns:1.5fr .75fr .8fr;gap:10px;align-items:center}
.raw-table-head{font-size:10px;color:var(--muted);padding:9px 0;border-bottom:1px solid var(--line)}
.raw-table-row{padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}
.raw-table-head>span:not(:first-child),.raw-table-row>strong{text-align:right}
.raw-table-row small{display:block;font-size:9px;color:var(--muted);margin-top:4px;min-height:10px}
.raw-table-row .positive{color:var(--accent)}
.raw-city-label{display:block;font-size:10px;color:var(--muted);margin-top:4px;font-weight:400}
dialog.production-dialog{max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:none;-ms-overflow-style:none;touch-action:pan-y}
dialog.production-dialog::-webkit-scrollbar{display:none;width:0;height:0}
html,body{scrollbar-width:none;-ms-overflow-style:none}
html::-webkit-scrollbar,body::-webkit-scrollbar{display:none;width:0;height:0}
header{position:sticky;top:0;z-index:30}
aside{z-index:25}
.action-budget{border-color:rgba(var(--accent-rgb),.28);background:rgba(var(--accent-rgb),.06);gap:8px;white-space:nowrap}
.action-budget strong{color:var(--accent);font-size:12px}
.action-summary{white-space:nowrap}
.overview-row{flex-wrap:wrap}
.minimal-shell>.settings-trigger{position:fixed;top:24px;right:24px;z-index:35}
@media(max-width:800px){.minimal-shell>.settings-trigger{top:16px;right:16px}}
.raw-upgrade-price{display:block;color:#bcbcbc;font-size:10px;line-height:1.7;margin-top:3px}
.science-intro{display:flex;align-items:center;gap:18px;margin-bottom:22px;font-size:12px;flex-wrap:wrap}
.science-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.technology-card{margin:0;background:radial-gradient(ellipse at 100% 0,rgba(var(--accent-rgb),.045),transparent 70%),var(--panel);display:flex;flex-direction:column}
.technology-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}
.technology-number{font-size:22px;font-weight:800;color:var(--accent);opacity:.65}
.technology-card h2{color:var(--accent);margin-bottom:12px}
.technology-card p{color:var(--muted);font-size:12px;line-height:1.8;margin:0 0 22px;flex:1}
.technology-price{font-size:12px;color:#ddd;border-top:1px solid var(--line);padding-top:14px}
.technology-known{border-color:rgba(var(--accent-rgb),.25)}
@media(max-width:1450px){header{gap:20px;padding-left:24px;padding-right:24px}nav{gap:18px}.session .session-name{display:none}}
@media(max-width:800px){.science-grid{grid-template-columns:1fr}nav{gap:16px}nav button{font-size:10px}}
.science-center-title{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.science-center-title h2{margin:0;color:var(--accent)}.science-center-title .tag{margin-left:auto}
.science-resources{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:24px 0}.science-resources strong{font-size:26px}.science-resources .positive{color:var(--accent)}
.science-center-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding-top:18px}.science-center-actions button{font-size:12px}
@media(max-width:600px){.science-resources{gap:10px}.science-resources strong{font-size:20px}.science-center-title .tag{margin-left:0}.science-center-actions{flex-wrap:wrap}}
dialog.arena-dialog{width:calc(100% - 40px);max-width:1060px;max-height:calc(100dvh - 40px);padding:28px;overflow-y:auto;scrollbar-width:none;overscroll-behavior:contain}
dialog.arena-dialog::-webkit-scrollbar{display:none}
.arena-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:23px}.arena-header h2{font:600 27px 'Dela Gothic One',Unbounded,Arial;margin:12px 0}.arena-header p{margin:0;font-size:12px}.arena-header .tag{white-space:nowrap}
.arena-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.arena-country{--arena-accent:#ccc;padding:20px;border:1px solid #343434;border-radius:9px;background:linear-gradient(125deg,#1d1d1d,#141414)}
.arena-country[data-country="ES"]{--arena-accent:#dbc46d}.arena-country[data-country="FR"]{--arena-accent:#9b9b9b}.arena-country[data-country="DE"]{--arena-accent:#c6a46e}.arena-country[data-country="IT"]{--arena-accent:#aaaaaa}
.arena-country-title{display:flex;align-items:center;gap:10px;margin-bottom:17px}.arena-country h3{margin:0;color:var(--arena-accent);font-size:18px}.arena-readiness{margin-left:auto;font-size:10px;color:#999;white-space:nowrap}.arena-readiness.ready{color:var(--arena-accent)}
.arena-metrics{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:15px 18px}.arena-metrics dt{font-size:10px;color:#929292;margin-bottom:5px}.arena-metrics dd{margin:0;font-size:12px;font-weight:600;color:#ddd}
.arena-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;padding-top:18px;border-top:1px solid #333}.arena-footer p{font-size:11px;max-width:550px;margin:0}.arena-footer button{white-space:nowrap}
@media(max-width:700px){dialog.arena-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:18px}.arena-grid{grid-template-columns:1fr}.arena-header{flex-wrap:wrap}.arena-header h2{font-size:22px}.arena-footer{flex-wrap:wrap}.arena-footer button{width:100%}}
.army-controls{display:flex;align-items:center;gap:9px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.army-controls>button{flex:1}.army-snapshot-note{font-size:10px;color:var(--muted);line-height:1.7;margin:10px 0 0}
.army-recent{margin-top:12px;font-size:10px}.army-recent>div{padding:7px 0;border-top:1px solid var(--line)}.army-recent strong,.army-recent span{display:block}.army-recent span{color:var(--muted);margin-top:4px;line-height:1.7}
dialog.attack-dialog{max-width:650px;width:calc(100% - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;scrollbar-width:none}dialog.attack-dialog::-webkit-scrollbar{display:none}
.attack-preview{display:flex;flex-direction:column;gap:9px;margin-top:22px;padding:17px;border:1px solid var(--line);border-radius:7px;color:#aaa;font-size:12px}.attack-preview strong{color:var(--accent)}
.battle-caption{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);margin-bottom:12px}.attack-battle>h2{text-align:center;margin-top:15px;font-size:22px}.battle-forces{display:grid;grid-template-columns:1fr 110px 1fr;align-items:center;gap:14px;text-align:center;margin:25px 0}.battle-forces strong,.battle-forces span{display:block}.battle-forces strong{font-size:14px}.battle-forces span{color:var(--muted);font-size:11px;margin-top:8px}.battle-globe svg{width:100%;height:100%;animation:battle-breathe 1.4s ease-in-out infinite}
.battle-odds{display:grid;grid-template-columns:1fr 1fr;gap:16px;text-align:center;padding:19px;background:#111;border:1px solid #333;border-radius:9px}.battle-odds span{display:block;color:var(--muted);font-size:10px}.battle-odds strong{display:block;color:var(--accent);font-size:34px;font-weight:800;margin-top:7px}.battle-odds>div:last-child strong{color:#b0b0b0}.battle-formula{text-align:center!important;font-size:10px!important;color:#8f8f8f!important}
.battle-stage{text-align:center;font-size:12px;color:#bbb;margin:22px 0 12px}.battle-progress{height:6px;border-radius:8px;background:#303030;overflow:hidden}.battle-progress i{display:block;height:100%;width:0;background:var(--accent);box-shadow:0 0 15px rgba(var(--accent-rgb),.4);border-radius:8px}.battle-result{margin-top:24px;animation:battle-reveal .35s ease-out}.battle-result h3{font-size:23px;color:var(--accent);margin:0 0 12px}.battle-result p{font-size:12px}.battle-result>strong{display:block;line-height:1.8;font-size:12px}.battle-defeat h3{color:#c7aaaa}
.battle-history{list-style:none;padding:0;margin:0}.battle-history li{padding:18px 0;border-bottom:1px solid var(--line)}.battle-history-top{display:flex;align-items:center;gap:12px}.battle-history-top strong{font-size:12px}.battle-history p{font-size:11px;margin:9px 0 0}
@keyframes battle-breathe{50%{opacity:.45;transform:scale(.94)}}@keyframes battle-reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:500px){.battle-forces{grid-template-columns:1fr 64px 1fr;gap:8px}.battle-forces strong{font-size:11px}.battle-odds strong{font-size:28px}.attack-battle>h2{font-size:18px}}
@media(prefers-reduced-motion:reduce){.battle-globe svg,.battle-result{animation:none}}
.arena-battle-report{display:flex;flex-direction:column;height:190px;max-height:35vh;min-height:120px;flex-shrink:0;overflow:hidden;margin-top:24px;padding:18px 20px;border:1px solid #353535;background:#111;border-radius:8px}.arena-battle-report>h3{flex-shrink:0;font-size:15px;margin:0 0 8px}.arena-battle-report>.battle-history{flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:auto;scrollbar-width:none}.arena-battle-report>.battle-history::-webkit-scrollbar{display:none}.arena-battle-report .battle-history li:last-child{border-bottom:0}.arena-battle-report .battle-history-top{justify-content:space-between;flex-wrap:wrap}
.war-badge{white-space:nowrap;font-weight:700;font-size:10px}.war-badge-peace{color:#bababa;background:#40404033;border-color:#5f5f5f}.war-badge-war{color:#e7a0a0;background:#5d242433;border-color:#7f4646}
.economy-war-penalty{margin-top:12px;padding-top:11px;border-top:1px solid #583333;display:flex;flex-direction:column;gap:5px;font-size:10px}.economy-war-penalty strong{color:#e0a0a0}.economy-war-penalty span{color:var(--muted);line-height:1.6}
@media(min-width:801px) and (max-width:1650px){header{gap:16px;padding-left:20px;padding-right:20px}.brand{min-width:200px}.brand strong{font-size:11px}nav{gap:15px}nav button{font-size:11px}.session{gap:7px}.session .session-name{display:none}}
.session .war-badge,.session .action-budget{width:132px;height:32px;min-height:32px;flex:0 0 132px;display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;font-size:10px;line-height:16px;border-radius:4px}
@media(max-width:500px){.session .war-badge,.session .action-budget{width:120px;flex-basis:120px}}
.target-field{min-width:0}.target-field>label{display:block;margin-bottom:8px;font-size:11px;color:var(--muted)}.target-native{display:none}
.target-picker-button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:54px;padding:12px 14px;text-align:left;background:#101010;border:1px solid #393939;border-radius:8px;font-size:12px}
.target-picker-value{display:flex;align-items:center;gap:10px;color:#bcbcbc;min-width:0;flex-wrap:wrap}.target-picker-value strong{font-weight:600;color:#eee}.target-picker-value small{font-size:10px;color:#999}.target-picker-value .flag{width:25px;height:17px}
.picker-chevron{font-size:18px;color:#858585;transition:transform .16s}.target-picker-button[aria-expanded="true"] .picker-chevron{transform:rotate(180deg)}.target-picker-button[aria-expanded="true"]{border-color:rgba(var(--accent-rgb),.55);background:#191919}
.target-list{margin-top:8px;padding:6px;border:1px solid #414141;border-radius:9px;background:#101010;box-shadow:0 10px 30px #0005;max-height:260px;overflow-y:auto;scrollbar-width:none;animation:picker-reveal .15s ease-out}.target-list[hidden]{display:none!important}.target-list::-webkit-scrollbar{display:none}
.target-option{display:flex;align-items:center;gap:11px;width:100%;text-align:left;border:1px solid transparent;border-radius:6px;padding:11px 10px;background:transparent;font-size:12px;margin:2px 0}
.target-option:hover:not(:disabled){transform:none;background:#ffffff08;border-color:#464646;box-shadow:none}.target-option:active:not(:disabled){transform:none}.target-option[aria-selected="true"]{background:rgba(var(--accent-rgb),.07);border-color:rgba(var(--accent-rgb),.28)}
.target-option-text{display:flex;flex-direction:column;gap:5px;flex:1;min-width:0}.target-option-text strong{font-size:12px;font-weight:600;color:#eee}.target-option-text small{font-size:9px;color:#919191;font-weight:400;line-height:1.5}
.target-option-check{color:var(--accent);font-size:13px;opacity:0}.target-option[aria-selected="true"] .target-option-check{opacity:1}
.target-country-option[data-country="ES"]:hover strong{color:#dbc46d}.target-country-option[data-country="FR"]:hover strong{color:#9b9b9b}.target-country-option[data-country="DE"]:hover strong{color:#c6a46e}.target-country-option[data-country="IT"]:hover strong{color:#aaaaaa}
.target-city-photo{width:49px;height:36px;object-fit:cover;border-radius:4px;filter:grayscale(1);border:1px solid #454545;flex-shrink:0}.target-option:disabled .target-city-photo{opacity:.6}.target-city-option{padding:8px}
@keyframes picker-reveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:500px){.target-fields{grid-template-columns:1fr}.target-list{max-height:220px}}
@media(prefers-reduced-motion:reduce){.target-list{animation:none}.picker-chevron{transition:none}}
.army-recent{height:120px;max-height:120px;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:none;-ms-overflow-style:none;padding-right:3px;margin-top:12px;border-top:1px solid var(--line)}
.army-recent::-webkit-scrollbar{display:none;width:0;height:0}
.army-recent>div:first-child{border-top:0}
.army-recent .army-recent-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.army-recent-heading strong{font-weight:600;font-size:10px}.army-recent-heading small{font-size:9px;color:var(--muted);white-space:nowrap}
.army-recent .army-history-empty{color:var(--muted);padding-top:15px;font-size:10px}
.army-recent:focus-visible{outline:1px solid rgba(var(--accent-rgb),.4);outline-offset:3px;border-radius:3px}

.equipment-shop{display:grid;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid #ffffff12}.equipment-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:1px solid #ffffff0d;border-radius:8px;background:#ffffff03}.equipment-row strong{display:block;font-size:12px;color:var(--accent,#ddd)}.equipment-row span,.equipment-row small{display:block;font-size:10px;color:#979797;line-height:1.6}.equipment-row small{color:#c0c0c0}.equipment-row button{flex-shrink:0}

.card-statistics{margin-top:22px;padding-top:18px;border-top:1px solid #ffffff12}.card-statistics-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.card-statistics-heading h3{font-size:12px;font-weight:700;margin:0;color:#e2e2e2}.card-statistics-heading>span{font-size:10px;color:#969696}.composition-layout{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.composition-ring{position:relative;flex:0 0 126px;width:126px;height:126px;border-radius:50%;padding:12px;box-shadow:0 0 28px #ffffff03}.composition-ring>div{height:100%;border-radius:50%;background:#161616;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px}.composition-ring strong{font-size:21px;letter-spacing:-.5px}.composition-ring small{font-size:9px;color:#969696}.composition-legend{flex:1;min-width:145px;display:grid;gap:13px}.composition-item{display:grid;grid-template-columns:7px minmax(0,1fr) auto 30px;align-items:center;gap:7px;font-size:10px}.composition-item i{width:7px;height:7px;border-radius:2px}.composition-item span{color:#b2b2b2}.composition-item b{font-weight:600;color:#e3e3e3}.composition-item small{text-align:right;color:#959595;font-size:9px}.statistic-caption{font-size:10px;line-height:1.6;color:#8b8b8b;margin:16px 0 0}.production-yield-heading{margin:22px 0 14px}.yield-statistics{display:grid;gap:12px}.yield-statistic>div:first-child{display:flex;justify-content:space-between;font-size:10px;color:#b2b2b2;margin-bottom:6px}.yield-statistic strong{font-weight:600;color:#e3e3e3}.yield-statistic small{font-weight:400;color:#959595}.yield-track{height:4px;background:#ffffff08;border-radius:4px;overflow:hidden}.yield-track i{display:block;height:100%;border-radius:4px;transition:width .3s ease}@media(max-width:1200px){.composition-layout{gap:16px}.composition-ring{flex-basis:108px;width:108px;height:108px;padding:10px}.composition-legend{min-width:140px}}

.my-parties-panel{margin-top:24px;border:1px solid #ffffff15;border-radius:10px;background:#ffffff02;overflow:hidden}.my-parties-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:0;border-radius:0;padding:16px 18px;text-align:left;font-size:13px}.my-parties-toggle>span{display:flex;align-items:center;gap:10px}.my-parties-toggle small{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:6px;background:#ffffff08;color:#9e9e9e;font-size:10px}.my-parties-arrow{width:20px;height:20px;color:#afafaf;transition:transform .28s ease,color .2s ease}.my-parties-panel.is-open .my-parties-arrow{transform:rotate(180deg);color:#eeeeee}.my-parties-content{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .32s ease,opacity .22s ease,visibility .32s}.my-parties-panel.is-open .my-parties-content{grid-template-rows:1fr;opacity:1;visibility:visible}.my-parties-inner{min-height:0;overflow:hidden;padding:0 18px}.my-parties-note{font-size:10px;line-height:1.6;color:#959595;margin:0 0 12px}.my-party-row{background:#ffffff02;border:1px solid #ffffff0b;border-radius:8px;padding:12px;margin:8px 0}.my-party-row:last-child{margin-bottom:18px}.my-parties-empty{font-size:12px;line-height:1.7;color:#a2a2a2;margin:0 0 18px}@media(prefers-reduced-motion:reduce){.my-parties-arrow,.my-parties-content{transition:none}}

#toast{display:block;pointer-events:none;opacity:0;visibility:hidden;filter:blur(9px);transform:translate(-50%,10px) scale(.97);transition:opacity .32s ease,filter .32s ease,transform .32s ease,visibility 0s linear .32s}
#toast[data-visible="true"]{opacity:1;visibility:visible;filter:blur(0);transform:translate(-50%,0) scale(1);transition:opacity .32s ease,filter .32s ease,transform .32s ease,visibility 0s}
.my-parties-toggle:hover:not(:disabled),.my-parties-toggle:active:not(:disabled){transform:none;box-shadow:none;background:#242424}
.my-parties-toggle:active:not(:disabled){background:#2d2d2d}
.my-parties-note{margin-top:12px}
@media(prefers-reduced-motion:reduce){#toast,#toast[data-visible="true"]{filter:none;transform:translateX(-50%);transition:opacity .15s ease,visibility 0s linear .15s}#toast[data-visible="true"]{transition:opacity .15s ease,visibility 0s}}

.create-party-panel{position:relative;padding:30px!important;border-radius:16px;background:radial-gradient(ellipse at 100% 0%,#ffffff07,transparent 60%),linear-gradient(145deg,#191919,#111111);border-color:#ffffff18;box-shadow:0 24px 80px #0005}.create-party-panel .section-title{align-items:flex-start;margin-bottom:14px;gap:16px}.create-party-panel .section-title h2{font-family:'Dela Gothic One',Unbounded,Arial,sans-serif;font-size:20px;margin:9px 0 0;letter-spacing:-.5px}.create-party-panel .eyebrow{font-size:9px;letter-spacing:2.5px;color:#959595}.create-intro{font-size:12px;color:#9b9b9b;line-height:1.8;margin:0 0 26px;max-width:430px}.create-fields{gap:20px 16px}.setup-field{display:block;margin:0}.setup-field>span,.lobby-access legend{font-size:10px;font-weight:600;letter-spacing:.4px;color:#b3b3b3;margin-bottom:10px;display:block}.setup-input-wrap{position:relative}.setup-input-wrap>svg{position:absolute;left:15px;top:50%;transform:translateY(-50%);height:18px;width:18px;pointer-events:none;color:#858585;transition:color .2s}.setup-input-wrap input{height:50px;padding:12px 14px 12px 44px;border-radius:9px;border:1px solid #ffffff13;background:linear-gradient(180deg,#0d0d0d,#121212);color:#efefef;font-size:13px;font-weight:500;box-shadow:inset 0 1px 4px #0003;transition:border-color .2s,box-shadow .2s,background .2s;appearance:none;-moz-appearance:textfield}.setup-input-wrap input::-webkit-inner-spin-button,.setup-input-wrap input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.setup-input-wrap:hover input{border-color:#ffffff2a}.setup-input-wrap input:focus{outline:none;border-color:#ffffff65;box-shadow:0 0 0 3px #ffffff05,inset 0 1px 4px #0003;background:#171717}.setup-input-wrap:focus-within>svg{color:#e5e5e5}.setup-balance-note{padding:3px 0;align-self:center}.setup-balance-note>span{color:#dadada;margin-bottom:6px}.setup-balance-note p{color:#8c8c8c;font-size:10px;line-height:1.8;margin:0;max-width:210px}.lobby-access{border:0;padding:0;margin:26px 0 0;min-width:0}.lobby-access legend{padding:0;margin-bottom:12px}.lobby-access-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.access-option{position:relative;display:flex;align-items:center;gap:12px;margin:0;padding:17px 15px;border:1px solid #ffffff13;border-radius:10px;background:#ffffff02;cursor:pointer;transition:background .2s,border-color .2s}.access-option input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.access-option strong,.access-option small{display:block}.access-option strong{font-size:12px;color:#bcbcbc;font-weight:600}.access-option small{font-size:10px;color:#828282;margin-top:5px}.access-option-icon{font-size:23px;color:#868686}.access-radio{width:13px;height:13px;border:1px solid #707070;border-radius:50%;margin-left:auto;flex-shrink:0}.access-option:has(input:checked){border-color:#ffffff50;background:linear-gradient(135deg,#ffffff09,#ffffff03)}.access-option:has(input:checked) strong,.access-option:has(input:checked) .access-option-icon{color:#f2f2f2}.access-option:has(input:checked) .access-radio{border:4px solid #dcdcdc;background:#171717}.access-option:hover{background:#ffffff08;border-color:#ffffff35}.access-option:has(input:focus-visible){outline:2px solid #dcdcdc;outline-offset:3px}.setup-password{margin-top:22px}.create-footer{border-top:1px solid #ffffff10;margin-top:25px;padding-top:18px}.create-footer>p{font-size:10px;color:#8e8e8e;margin:0 0 16px;display:flex;gap:8px;align-items:center}.create-footer>p span{color:#d4d4d4}.create-footer .primary{padding:16px 20px;font-size:13px;border-radius:9px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(120deg,#f0f0f0,#d3d3d3);box-shadow:0 5px 22px #ffffff05}.create-footer .primary:hover:not(:disabled){background:linear-gradient(120deg,#fff,#ebebeb)}@media(max-width:600px){.create-party-panel{padding:24px 20px!important}.create-party-panel .section-title h2{font-size:17px}.create-fields{grid-template-columns:1fr!important}.setup-balance-note{display:none}.lobby-access-options{gap:8px}.access-option{padding:14px 10px;gap:8px}.access-option-icon{font-size:19px}.access-option small{font-size:9px}}

.home-shell{max-width:960px;padding-top:55px;padding-bottom:32px;justify-content:center}.home-shell .minimal-brand{position:relative;margin:0 0 27px;gap:12px;font-size:9px;letter-spacing:1.4px;color:#949494}.home-shell .minimal-brand .game-logo{width:52px;height:52px}.home-atmosphere{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 50% 45%,#1a1a1a80,transparent 65%),#0b0b0b}.home-halo{position:absolute;left:50%;top:44%;width:700px;height:650px;transform:translate(-15%,-50%);background:radial-gradient(ellipse,#e4e4e40a,transparent 65%);filter:blur(45px)}.home-globe{position:absolute;width:min(85vw,1050px);height:min(85vw,1050px);right:-17%;top:50%;transform:translateY(-45%) rotate(-14deg);color:#c1c1c1;opacity:.105}.home-grid{position:absolute;inset:0;background-image:linear-gradient(#d2d2d203 1px,transparent 1px),linear-gradient(90deg,#d2d2d203 1px,transparent 1px);background-size:80px 80px;mask-image:radial-gradient(ellipse at 50% 60%,#000,transparent 72%)}.home-shell .simple-home{padding:0 0 20px;position:relative}.home-kicker{display:flex;align-items:center;justify-content:center;gap:9px;text-transform:uppercase;letter-spacing:2px;color:#929292;font-size:9px;font-weight:600;margin:0 0 22px}.home-kicker i{height:4px;width:4px;background:#b2b2b2;border-radius:50%;box-shadow:0 0 9px #b2b2b233}.home-shell .simple-home h1{font:600 clamp(30px,3.3vw,49px)/1.35 'Dela Gothic One',Unbounded,Arial,sans-serif;letter-spacing:-1.5px;margin:0 0 18px;color:#f4f4f4;text-shadow:0 4px 25px #0003}.home-shell .simple-home h1 span{color:#cccccc}.home-intro{font-size:12px;line-height:1.9;color:#939393;margin:0 0 32px}.home-shell .simple-actions{max-width:390px;gap:12px}.simple-actions .home-action{display:flex;align-items:center;gap:16px;text-align:left;border-radius:11px;padding:19px 20px;min-height:79px;transition:background .22s,border-color .22s,box-shadow .22s,transform .22s}.home-action-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #ffffff17;border-radius:9px;background:#ffffff04;flex-shrink:0}.home-action-icon svg{height:21px;width:21px}.home-action-copy{flex:1}.home-action-copy strong{display:block;font-size:13px;font-weight:700}.home-action-copy small{display:block;font-size:10px;font-weight:400;margin-top:6px;opacity:.6}.home-action-arrow{font-size:20px;font-weight:400;opacity:.65;transition:transform .22s,opacity .22s}.simple-actions .primary.home-action{background:linear-gradient(120deg,#ebebeb,#cccccc);border-color:#d8d8d8;color:#1c1c1c;box-shadow:0 5px 28px #e4e4e408}.primary.home-action .home-action-icon{border-color:#21212118;background:#21212106}.simple-actions .primary.home-action:hover:not(:disabled){background:linear-gradient(120deg,#f7f7f7,#e4e4e4);box-shadow:0 7px 32px #e4e4e411;border-color:#f7f7f7}.simple-actions .ghost.home-action{background:linear-gradient(130deg,#ffffff05,#ffffff01);border-color:#ffffff18;color:#dddddd}.simple-actions .ghost.home-action:hover:not(:disabled){background:linear-gradient(130deg,#ffffff0a,#ffffff04);border-color:#ffffff38;box-shadow:0 5px 22px #0002}.home-action:hover .home-action-arrow{transform:translateX(3px);opacity:1}.home-rule-strip{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:27px;color:#7b7b7b;font-size:9px}.home-rule-strip b{font-weight:500;color:#b2b2b2;letter-spacing:1px;margin-right:5px}.home-rule-strip>i{height:12px;width:1px;background:#ffffff15}.home-shell>.local-note{color:#5c5c5c;font-size:9px;margin-top:18px}@media(max-width:800px){.home-shell{justify-content:center;padding:80px 20px 30px;min-height:100svh}.home-globe{width:950px;height:950px;right:-650px;opacity:.08}.home-shell .simple-home h1{font-size:clamp(25px,5.2vw,38px);letter-spacing:-1px}.home-kicker{font-size:8px;letter-spacing:1.2px}.home-intro{font-size:11px}.simple-actions .home-action{padding:17px 16px;gap:12px}.home-shell .minimal-brand{margin-bottom:25px}}@media(prefers-reduced-motion:reduce){.simple-actions .home-action,.home-action-arrow{transition:none}.home-action:hover .home-action-arrow{transform:none}}

.search-party-panel .code-search{gap:12px;align-items:flex-end}.search-party-panel .code-search .setup-field{min-width:0}.search-party-panel .code-search input{font-size:17px;font-weight:600;letter-spacing:5px;font-variant-numeric:tabular-nums;height:54px}.search-party-panel .code-search input::placeholder{font-weight:400;color:#585858;opacity:1}.search-code-button{height:54px;min-width:106px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-radius:9px;font-size:12px;padding:0 18px;background:linear-gradient(120deg,#f0f0f0,#d3d3d3);color:#1c1c1c;border-color:#d8d8d8}.search-code-button:hover:not(:disabled){background:linear-gradient(120deg,#fff,#ebebeb)}.search-code-button span{font-size:18px;font-weight:400}.search-code-note{display:flex;gap:8px;align-items:center;color:#8b8b8b;font-size:10px;line-height:1.6;margin:12px 0 0}.search-code-note>span{color:#bebebe}.search-party-panel .search-list-heading{margin-top:27px;margin-bottom:15px;padding-top:22px;border-top:1px solid #ffffff10;align-items:center}.search-party-panel .search-list-heading h2{font:600 12px Manrope,Arial;margin:0;letter-spacing:0;color:#dfdfdf;display:flex;gap:10px;align-items:center}.search-list-heading h2 small{font-size:10px;color:#9f9f9f;background:#ffffff06;padding:4px 7px;border-radius:5px}.search-list-heading button{font-size:10px;border-radius:7px;border-color:#ffffff15;color:#b4b4b4;padding:8px 10px}.refresh-icon{display:inline-block;margin-right:4px;font-size:13px;transition:transform .25s}.search-list-heading button:hover .refresh-icon{transform:rotate(65deg)}.search-lobby-list{display:grid;gap:10px}.search-lobby-card{margin:0;padding:15px 13px;border:1px solid #ffffff12;border-radius:10px;background:linear-gradient(130deg,#ffffff04,#ffffff01);transition:background .2s,border-color .2s;gap:12px}.search-lobby-card:hover{background:#ffffff06;border-color:#ffffff25}.search-lobby-emblem{width:36px;height:36px;border:1px solid #ffffff12;border-radius:9px;background:#ffffff03;display:flex;align-items:center;justify-content:center;font-size:22px;color:#adadad;flex-shrink:0}.search-lobby-copy{min-width:0}.search-lobby-copy strong{font-size:12px;color:#e6e6e6;overflow-wrap:anywhere}.search-lobby-copy small{font-size:9px;color:#898989;line-height:1.6}.search-lobby-code{letter-spacing:1.5px;color:#b7b7b7;font-variant-numeric:tabular-nums}.search-lobby-status{display:flex;align-items:center;gap:5px;font-size:9px;color:#a2a2a2;white-space:nowrap}.search-lobby-status i{height:4px;width:4px;background:currentColor;border-radius:50%}.search-lobby-status.started{color:#afafaf}.search-lobby-card button{border-color:#ffffff15;font-size:10px;padding:9px 10px;white-space:nowrap}.search-empty{text-align:center;padding:25px 15px;border:1px dashed #ffffff13;border-radius:11px;background:radial-gradient(ellipse at 50% 0%,#ffffff03,transparent 80%)}.search-empty-icon{height:42px;width:42px;margin:0 auto 13px;border:1px solid #ffffff10;border-radius:12px;background:#ffffff03;display:flex;align-items:center;justify-content:center;color:#828282}.search-empty-icon svg{height:22px;width:22px}.search-empty strong{display:block;font-size:12px;font-weight:600;color:#c4c4c4}.search-empty p{font-size:10px;line-height:1.9;color:#828282;margin:8px 0 0}.search-party-panel .my-parties-panel{margin-top:20px;border-color:#ffffff12;background:#ffffff01}.search-party-panel .my-parties-toggle{font-size:12px;color:#cacaca;padding:16px}.search-party-panel .my-parties-arrow{color:#8e8e8e}.search-party-panel .my-parties-inner{padding-left:16px;padding-right:16px}@media(max-width:600px){.search-lobby-status{display:none}.search-lobby-card{gap:9px;padding:12px 10px}.search-lobby-emblem{height:30px;width:30px;font-size:20px}.search-code-button{min-width:89px;padding:0 13px}.search-party-panel .code-search input{font-size:15px;letter-spacing:3px}}
.home-slogan{margin:27px 0 0;font-size:11px;line-height:1.8;letter-spacing:.3px;color:#919191}.home-slogan span{color:#c3c3c3}@media(max-width:500px){.home-slogan{font-size:10px}.home-slogan span{display:block}}

@keyframes screen-arrive{from{opacity:0;transform:translateY(12px);filter:blur(3px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes panel-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes dialog-arrive{from{opacity:0;transform:translateY(12px) scale(.98);filter:blur(3px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
@keyframes backdrop-arrive{from{background-color:#0000;backdrop-filter:blur(0)}to{background-color:#000000c9;backdrop-filter:blur(4px)}}
.menu-content{width:100%;min-width:0}.screen-enter{animation:screen-arrive .32s cubic-bezier(.22,1,.36,1) both}
.screen-enter .stats>.stat,.screen-enter .science-grid>article,.screen-enter .simple-actions>.home-action{animation:panel-arrive .32s cubic-bezier(.22,1,.36,1) backwards;animation-delay:40ms}
.screen-enter .stats>.stat:nth-child(2),.screen-enter .science-grid>article:nth-child(2),.screen-enter .simple-actions>.home-action:nth-child(2){animation-delay:75ms}
.screen-enter .stats>.stat:nth-child(3),.screen-enter .science-grid>article:nth-child(n+3){animation-delay:110ms}
dialog[open]{animation:dialog-arrive .26s cubic-bezier(.22,1,.36,1) both}dialog[open]::backdrop{animation:backdrop-arrive .26s ease both}
@media(prefers-reduced-motion:reduce){.screen-enter,.screen-enter .stats>.stat,.screen-enter .science-grid>article,.screen-enter .simple-actions>.home-action,dialog[open],dialog[open]::backdrop{animation:none}}
.session #menu-exit{height:32px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:4px;font-size:10px;line-height:16px;flex-shrink:0;align-self:center}.session #menu-exit:hover:not(:disabled),.session #menu-exit:active:not(:disabled){transform:none}
/* Keep ambient light on the viewport rather than clipping it to short pages. */
main{background:none}
:root[data-country]:not([data-country=""]) body{background:radial-gradient(ellipse 85vw 70vh at 95% 12%,rgba(var(--accent-rgb),.065) 0%,rgba(var(--accent-rgb),.025) 42%,transparent 85%),radial-gradient(ellipse 80vw 75vh at 22% 90%,rgba(var(--accent-rgb),.04) 0%,rgba(var(--accent-rgb),.014) 40%,transparent 85%),#090909;background-attachment:fixed;background-repeat:no-repeat}

.admin-console{margin-top:26px}.admin-page-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px}.admin-page-heading .page-title{margin:9px 0 12px}.admin-page-heading .page-intro{margin:0}.admin-console .panel{padding:24px;border-radius:13px;background:linear-gradient(135deg,#ffffff03,transparent 65%),#131313;border-color:#ffffff13;margin:0}.admin-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px}.admin-panel-heading h2{display:flex;align-items:center;gap:10px;margin:9px 0 0;font-size:17px}.admin-panel-heading h2 small{font-size:11px;color:#929292;font-weight:400}.admin-step{font-size:9px;text-transform:uppercase;letter-spacing:1.8px;color:#959595}.admin-world-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-nation{text-align:left;border-radius:10px;padding:16px;background:#ffffff02;border-color:#ffffff12;min-width:0}.admin-nation.selected{border-color:rgba(var(--accent-rgb),.4);background:rgba(var(--accent-rgb),.035)}.admin-nation-title{display:flex;align-items:center;gap:9px}.admin-nation-title strong{font-size:12px;overflow-wrap:anywhere}.admin-nation-title>span:last-child{margin-left:auto;color:#8c8c8c}.admin-nation-title .flag{width:23px;height:16px}.admin-nation-money{font-size:22px;margin:18px 0 14px;letter-spacing:-.5px}.admin-nation-money small{font-size:10px;color:#949494;font-weight:400;letter-spacing:0}.admin-nation-details{display:flex;flex-wrap:wrap;gap:10px;font-size:9px;color:#888888;font-weight:400}.admin-nation-details b{color:#d0d0d0;margin-left:3px;font-weight:500}.admin-actions-bar{height:3px;background:#ffffff09;border-radius:3px;margin-top:18px;overflow:hidden}.admin-actions-bar i{display:block;height:100%;background:var(--accent);opacity:.6}.admin-actions-caption{display:flex;justify-content:space-between;font-size:9px;color:#939393;margin-top:7px;font-weight:400}.admin-actions-caption strong{color:#c7c7c7}.admin-hint{font-size:10px;line-height:1.8;color:#919191;margin:16px 0 0}.admin-workspace{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:20px;margin-top:20px;align-items:start}.admin-country-column,.admin-rules-column{display:grid;gap:20px;min-width:0}.admin-console .setup-field>span{font-size:10px}.admin-console .setup-input-wrap input{height:45px;font-size:12px}.admin-console .fields{gap:16px 12px}.admin-field-group{min-width:0;padding:0;margin:22px 0 0;border:0;border-top:1px solid #ffffff0c}.admin-field-group legend{padding:0 10px 0 0;font-size:11px;color:#cfcfcf;font-weight:600;margin-bottom:15px}.admin-science-levels{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.admin-science-levels label{position:relative;margin:0;cursor:pointer}.admin-science-levels input{position:absolute;opacity:0;width:1px;height:1px}.admin-science-levels label>span{padding:12px 7px;border:1px solid #ffffff12;border-radius:8px;background:#ffffff02;text-align:center;transition:background .2s,border-color .2s}.admin-science-levels strong,.admin-science-levels small{display:block;font-size:10px}.admin-science-levels small{color:#909090;font-size:9px;margin-top:5px}.admin-science-levels label:has(input:checked)>span{background:rgba(var(--accent-rgb),.06);border-color:rgba(var(--accent-rgb),.45);color:var(--accent)}.admin-science-levels label:hover>span{border-color:#ffffff35}.admin-science-levels label:has(input:focus-visible)>span{outline:2px solid var(--accent);outline-offset:3px}.admin-save-row{border-top:1px solid #ffffff0c;margin-top:22px;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-save-row>span{font-size:9px;line-height:1.8;color:#898989}.admin-console .primary{font-size:11px;border-radius:8px;padding:12px 15px;background:linear-gradient(120deg,#f0f0f0,#d3d3d3);border-color:#d8d8d8;color:#1f1f1f}.admin-console .primary:hover:not(:disabled){background:linear-gradient(120deg,#fff,#e9e9e9)}.admin-console .admin-cities{gap:12px}.admin-console .admin-city{border-color:#ffffff12;border-radius:10px;background:#ffffff02;padding:16px;min-width:0}.admin-city-top{display:flex;justify-content:space-between;gap:8px;font-size:9px;color:#949494;margin-bottom:17px}.admin-city-top>span:first-child{color:var(--accent)}.admin-range{display:block;margin:18px 0 0}.admin-range>span{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#a6a6a6}.admin-range output{font-size:11px;color:#e3e3e3;background:#ffffff06;padding:3px 8px;border-radius:4px;font-variant-numeric:tabular-nums}.admin-range input{appearance:none;height:5px;border:0;padding:0;border-radius:8px;width:100%;margin:13px 0 6px;background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--range-fill),#ffffff12 var(--range-fill),#ffffff12 100%);cursor:pointer}.admin-range input::-webkit-slider-thumb{appearance:none;width:13px;height:13px;border-radius:50%;background:#ececec;border:2px solid #2b2b2b;box-shadow:0 0 0 1px #ffffff35;transition:box-shadow .2s}.admin-range input::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:#ececec;border:2px solid #2b2b2b}.admin-range input:hover::-webkit-slider-thumb{box-shadow:0 0 0 4px #ffffff13}.admin-city-resource{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #ffffff0d;padding-top:16px;margin-top:18px;color:#cbcbcb;font-size:10px}.admin-city-resource small{font-size:9px;color:#858585}.admin-shield-switch{display:flex;flex-direction:row;align-items:center;gap:9px;position:relative;margin-top:18px;font-size:10px;cursor:pointer}.admin-shield-switch input{position:absolute;opacity:0;width:1px;height:1px}.admin-shield-switch>i{position:relative;display:block;flex-shrink:0;width:30px;height:17px;border-radius:15px;background:#ffffff10;border:1px solid #ffffff15;transition:background .2s}.admin-shield-switch>i:after{content:'';position:absolute;height:11px;width:11px;top:2px;left:2px;background:#919191;border-radius:50%;transition:transform .2s,background .2s}.admin-shield-switch:has(input:checked)>i{background:rgba(var(--accent-rgb),.25);border-color:rgba(var(--accent-rgb),.45)}.admin-shield-switch:has(input:checked)>i:after{transform:translateX(13px);background:var(--accent)}.admin-shield-switch:has(input:disabled){opacity:.4;cursor:default}.admin-shield-switch:has(input:focus-visible)>i{outline:2px solid var(--accent);outline-offset:3px}.admin-rule-groups{display:grid;gap:10px;margin-top:20px}.admin-rule-group{border:1px solid #ffffff12;border-radius:9px;overflow:hidden;background:#ffffff02}.admin-rule-group summary{display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;padding:15px;font-size:11px;color:#c7c7c7;transition:background .2s}.admin-rule-group summary::-webkit-details-marker{display:none}.admin-rule-group summary:hover{background:#ffffff05}.admin-rule-group summary span{font-size:17px;transition:transform .2s}.admin-rule-group[open] summary span{transform:rotate(180deg)}.admin-rule-group>.fields{padding:3px 15px 17px;animation:panel-arrive .25s ease}.admin-rule-group .setup-input-wrap input{padding-left:35px;font-size:11px}.admin-rule-group .setup-input-wrap>svg{width:14px;left:11px}.admin-rule-group .setup-field>span{font-size:9px}.admin-tool-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:20px}.admin-tool-buttons button{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;font-weight:500;border-radius:8px;padding:12px;background:#ffffff03;border-color:#ffffff12}.admin-tool-buttons button span{color:#b4b4b4;font-size:15px}.admin-reset-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #ffffff0c}.admin-reset-row>span{font-size:10px;color:#898989}.admin-reset-row button{font-size:10px;color:#c09b9b;border-color:#c09b9b25}@media(max-width:1250px){.admin-workspace{grid-template-columns:1fr}.admin-world-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.admin-page-heading{align-items:flex-start;flex-direction:column}.admin-console .panel{padding:18px}.admin-panel-heading h2{font-size:14px}.admin-panel-heading h2 small{display:none}.admin-world-grid{gap:8px}.admin-nation{padding:12px}.admin-nation-title{gap:6px}.admin-nation-title strong{font-size:10px}.admin-nation-title>span:last-child{display:none}.admin-nation-money{font-size:18px}.admin-console .admin-cities{grid-template-columns:1fr}.admin-save-row{flex-wrap:wrap}.admin-science-levels strong{font-size:9px}.admin-science-levels small{font-size:8px}}@media(prefers-reduced-motion:reduce){.admin-rule-group>.fields{animation:none}.admin-rule-group summary span,.admin-shield-switch>i,.admin-shield-switch>i:after{transition:none}}
.arena-country{position:relative;isolation:isolate;overflow:hidden;transition:border-color .3s ease,box-shadow .3s ease}.arena-country:before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 85% 0%,#b1b1b130,transparent 70%),linear-gradient(130deg,#4e4e4e20,#6060601a);opacity:0;transition:opacity .35s ease}.arena-country>*{position:relative;z-index:1}.arena-country.is-ready{border-color:#8a8a8a88;box-shadow:0 0 25px #94949420,inset 0 0 28px #acacac0a}.arena-country.is-ready:before{opacity:1;animation:arena-ready-glow .35s ease both}.arena-country.is-ready .arena-readiness.ready{color:#cccccc}.arena-country.is-ready .arena-readiness.ready:before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;margin-right:6px;background:#cccccc;box-shadow:0 0 8px #c6c6c666}@keyframes arena-ready-glow{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.arena-country,.arena-country:before{transition:none}.arena-country.is-ready:before{animation:none}}

.join-party-panel .section-title h2{overflow-wrap:anywhere;line-height:1.5}.join-invitation{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;margin:22px 0 25px;border:1px solid #ffffff12;border-radius:10px;background:radial-gradient(ellipse at 100% 0%,#ffffff05,transparent 80%),#ffffff02}.join-invitation>div:first-child>span{display:block;font-size:9px;color:#909090;text-transform:uppercase;letter-spacing:1.5px}.join-invitation strong{display:block;font-size:25px;font-weight:600;letter-spacing:5px;color:#e3e3e3;margin-top:8px;font-variant-numeric:tabular-nums}.join-invitation-meta{text-align:right;min-width:0}.join-access{font-size:10px;color:#c7c7c7}.join-invitation-meta small{display:block;font-size:9px;color:#858585;margin-top:9px;overflow-wrap:anywhere}.join-identity{display:grid;gap:18px}.join-identity .setup-input-wrap input{height:50px}.join-identity input::placeholder{color:#656565;font-size:11px;font-weight:400}.join-nations{border:0;min-width:0;padding:0;margin:25px 0 0}.join-nations legend{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0;margin-bottom:13px;font-size:11px;font-weight:600;color:#cccccc}.join-nations legend>span{font-size:9px;font-weight:400;color:#8b8b8b}.join-nation-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.join-nation-option{--join-accent:182,194,211;display:block;position:relative;margin:0;cursor:pointer}.join-nation-option[data-country="ES"]{--join-accent:219,196,109}.join-nation-option[data-country="FR"]{--join-accent:130,157,202}.join-nation-option[data-country="DE"]{--join-accent:198,164,110}.join-nation-option[data-country="IT"]{--join-accent:134,183,154}.join-nation-option input{position:absolute;opacity:0;width:1px;height:1px;margin:0;padding:0}.join-nation-surface{display:flex;align-items:center;gap:11px;padding:17px 13px;background:#ffffff02;border:1px solid #ffffff12;border-radius:10px;transition:background .22s,border-color .22s,box-shadow .22s}.join-nation-surface .flag{height:18px;width:26px}.join-nation-copy{flex:1;min-width:0}.join-nation-copy strong{display:block;font-size:12px;font-weight:600;color:#c5c5c5;overflow-wrap:anywhere}.join-nation-copy small{display:block;font-size:9px;line-height:1.6;color:#808080;margin-top:5px}.join-nation-mark{height:13px;width:13px;border:1px solid #636363;border-radius:50%;flex-shrink:0}.join-nation-option:has(input:checked) .join-nation-surface{border-color:rgba(var(--join-accent),.5);background:linear-gradient(130deg,rgba(var(--join-accent),.075),rgba(var(--join-accent),.02));box-shadow:0 0 18px rgba(var(--join-accent),.025)}.join-nation-option:has(input:checked) strong{color:rgb(var(--join-accent))}.join-nation-option:has(input:checked) .join-nation-mark{border:4px solid rgb(var(--join-accent));background:#171717}.join-nation-option:hover:not(:has(input:disabled)) .join-nation-surface{background:rgba(var(--join-accent),.06);border-color:rgba(var(--join-accent),.4)}.join-nation-option:has(input:disabled){cursor:default}.join-nation-option:has(input:disabled) .join-nation-surface{opacity:.35}.join-nation-option:has(input:focus-visible) .join-nation-surface{outline:2px solid rgb(var(--join-accent));outline-offset:3px}@media(max-width:500px){.join-invitation{padding:15px;gap:12px}.join-invitation strong{font-size:22px;letter-spacing:3px}.join-nation-surface{gap:8px;padding:14px 10px}.join-nation-surface .flag{width:23px;height:16px}.join-nation-copy strong{font-size:11px}.join-nation-copy small{font-size:8px}.join-nation-mark{height:11px;width:11px}.join-access{font-size:9px}}@media(max-width:350px){.join-nation-grid{grid-template-columns:1fr}.join-invitation{align-items:flex-start;flex-direction:column}.join-invitation-meta{text-align:left}}
.nation-aspect{display:flex;gap:15px;align-items:center;padding:18px 20px;margin:0 0 22px;border:1px solid rgba(var(--accent-rgb),.22);border-radius:10px;background:linear-gradient(120deg,rgba(var(--accent-rgb),.055),#ffffff01)}.nation-aspect-icon{font-size:32px;color:var(--accent)}.nation-aspect small{font-size:9px;color:#939393}.nation-aspect strong{display:block;font-size:14px;color:var(--accent);margin-top:5px}.nation-aspect p{font-size:11px;color:#afafaf;line-height:1.7;margin:7px 0 0}dialog.draft-dialog{width:calc(100% - 32px);max-width:1120px;max-height:calc(100dvh - 32px);overflow-y:auto;scrollbar-width:none;background:radial-gradient(ellipse at 100% 0%,#ffffff05,transparent 60%),#141414;border-color:#ffffff20;padding:28px}.draft-header{display:flex;justify-content:space-between;gap:20px;align-items:center}.draft-header h2{font-family:'Dela Gothic One',Unbounded,Arial;font-size:22px;margin:10px 0}.draft-header p{font-size:11px;margin:0;color:#969696}.draft-progress{height:3px;border-radius:3px;background:#ffffff0c;margin:20px 0}.draft-progress i{display:block;height:100%;background:#c5c5c5;transition:width .3s ease}.draft-teams{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.draft-team{border:1px solid #ffffff12;border-radius:9px;padding:14px;background:#ffffff02}.draft-team>div{display:flex;align-items:center;gap:8px}.draft-team strong{font-size:12px}.draft-team .flag{width:24px;height:16px}.draft-team small{display:block;font-size:9px;color:#909090;margin-top:9px}.draft-team.current{background:#b7b7b70a;border-color:#b7b7b777}.draft-team.chosen{border-color:#95959566;background:#9595950a}.draft-current{display:flex;align-items:center;gap:12px;margin:20px 0;padding:15px 17px;border-radius:9px;border:1px solid #ffffff12;background:#ffffff03}.draft-current strong{display:block;font-size:12px}.draft-current small{display:block;font-size:10px;line-height:1.7;color:#979797;margin-top:5px}.draft-filters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:17px}.draft-filters button{font-size:10px;padding:8px 12px}.draft-filters .active{background:#d4d4d420;color:#ebebeb;border-color:#d4d4d455}.draft-aspects{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.draft-aspect{text-align:left;padding:16px;display:flex;flex-direction:column;border-radius:10px;background:linear-gradient(130deg,#ffffff04,#ffffff01);border-color:#ffffff13;min-height:177px}.draft-aspect-category{display:flex;justify-content:space-between;align-items:center;color:#979797;font-size:9px;letter-spacing:.4px}.draft-aspect-category i{font-style:normal;font-size:18px}.draft-aspect strong{display:block;margin-top:12px;font-size:12px;line-height:1.6;color:#e2e2e2}.draft-aspect p{font-size:10px;font-weight:400;color:#989898;line-height:1.8;margin:8px 0 14px}.draft-aspect>small{font-size:9px;font-weight:400;color:#747474;margin-top:auto}.draft-aspect[data-group=military]{--draft-rgb:193,139,136}.draft-aspect[data-group=science]{--draft-rgb:130,163,201}.draft-aspect[data-group=production]{--draft-rgb:131,183,152}.draft-aspect[data-group=economy]{--draft-rgb:210,187,129}.draft-aspect.selected{border-color:rgba(var(--draft-rgb),.7);background:linear-gradient(135deg,rgba(var(--draft-rgb),.09),rgba(var(--draft-rgb),.015))}.draft-aspect.selected strong{color:rgb(var(--draft-rgb))}.draft-aspect.banned{opacity:.35;background:#6e333308}.draft-aspect.banned strong{text-decoration:line-through}.draft-aspect.picked{opacity:.6;border-color:#96969666}.draft-aspect:disabled:not(.banned):not(.picked){opacity:.75}.draft-footer{position:sticky;bottom:-28px;display:flex;justify-content:space-between;align-items:center;gap:20px;background:#141414f5;backdrop-filter:blur(12px);padding:20px 0;border-top:1px solid #ffffff15;margin-top:20px}.draft-footer strong{display:block;font-size:12px}.draft-footer small{display:block;font-size:10px;color:#8f8f8f;margin-top:6px;line-height:1.7}.draft-footer button{white-space:nowrap;font-size:12px}@media(max-width:950px){.draft-aspects{grid-template-columns:repeat(2,minmax(0,1fr))}.draft-teams{grid-template-columns:repeat(2,1fr)}}@media(max-width:550px){dialog.draft-dialog{padding:18px}.draft-header h2{font-size:17px}.draft-header{align-items:flex-start}.draft-header>.tag{font-size:9px}.draft-aspect{padding:12px}.draft-footer{bottom:-18px;flex-wrap:wrap;gap:12px}.draft-footer button{width:100%}}@media(prefers-reduced-motion:reduce){.draft-progress i{transition:none}}
.nation-aspect-icon{display:flex;align-items:center;justify-content:center;flex:0 0 52px;width:52px;height:52px;border-radius:13px;border:1px solid rgba(var(--accent-rgb),.23);background:radial-gradient(ellipse at 30% 15%,rgba(var(--accent-rgb),.12),rgba(var(--accent-rgb),.025));box-shadow:inset 0 1px 0 rgba(var(--accent-rgb),.07),0 0 22px rgba(var(--accent-rgb),.04)}.nation-aspect-icon svg{display:block;width:33px;height:33px;filter:drop-shadow(0 0 5px rgba(var(--accent-rgb),.12))}@media(max-width:550px){.nation-aspect-icon{flex-basis:44px;width:44px;height:44px;border-radius:11px}.nation-aspect-icon svg{width:28px;height:28px}}
.draft-aspect-category .draft-aspect-emblem{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex:0 0 32px;border-radius:8px;border:1px solid rgba(var(--draft-rgb),.18);background:radial-gradient(ellipse at 30% 15%,rgba(var(--draft-rgb),.09),rgba(var(--draft-rgb),.02));color:rgba(var(--draft-rgb),.85)}.draft-aspect-emblem svg{display:block;width:22px;height:22px}.draft-aspect.selected .draft-aspect-emblem{border-color:rgba(var(--draft-rgb),.4);box-shadow:0 0 14px rgba(var(--draft-rgb),.08);color:rgb(var(--draft-rgb))}
.arena-state-label{font-weight:700}.arena-state-label.at-peace{color:#bababa}.arena-state-label.at-war{color:#e7a0a0}
.city-resource+.city-actions{border-top:0}
.sidebar-trade{display:flex;align-items:center;gap:12px;width:100%;margin-top:24px;padding:13px 12px;text-align:left;border:1px solid #ffffff12;border-radius:8px;background:#ffffff02;color:#b4b4b4;font-size:12px}.sidebar-trade>span{font-size:21px;font-weight:400;color:var(--accent)}.sidebar-trade small{margin-left:auto;color:var(--accent)}.sidebar-trade.selected{background:rgba(var(--accent-rgb),.05);border-color:rgba(var(--accent-rgb),.3);color:#e7e7e7}.trade-page{margin-top:26px}.trade-page-heading .page-title{margin:10px 0 12px}.trade-page .panel{background:linear-gradient(130deg,#ffffff03,transparent 70%),#141414;border-color:#ffffff14;border-radius:12px;padding:24px}.trade-page .primary,.trade-notification .primary{background:linear-gradient(120deg,#f0f0f0,#d3d3d3);border-color:#d8d8d8;color:#1f1f1f;font-size:11px;border-radius:8px}.trade-page .primary:hover:not(:disabled),.trade-notification .primary:hover:not(:disabled){background:#f7f7f7}.trade-country-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.trade-country-option{position:relative;cursor:pointer;min-width:0}.trade-country-option input{position:absolute;width:1px;height:1px;opacity:0}.trade-country-option>span{display:flex;align-items:center;gap:10px;padding:18px 15px;border:1px solid #ffffff14;border-radius:10px;background:#ffffff02;transition:background .2s,border-color .2s}.trade-country-option strong{font-size:12px;color:#dfdfdf}.trade-country-option small{margin-left:auto;font-size:9px;color:#8e8e8e}.trade-country-option:has(input:checked)>span{border-color:rgba(var(--accent-rgb),.5);background:rgba(var(--accent-rgb),.05)}.trade-country-option:has(input:disabled){opacity:.35;cursor:default}.trade-country-option:has(input:focus-visible)>span{outline:2px solid var(--accent);outline-offset:3px}.trade-country-option:hover:not(:has(input:disabled))>span{background:#ffffff06}.trade-request-list,.trade-active-list{margin:28px 0}.trade-request-list>h2,.trade-active-list>h2{font-size:15px}.trade-page h2>small{margin-left:7px;font-weight:400;color:#8b8b8b;font-size:11px}.trade-empty{padding:20px;border:1px dashed #ffffff13;border-radius:9px;color:#8b8b8b;font-size:11px;line-height:1.8}.trade-request{display:flex;align-items:center;gap:13px;padding:18px 20px;margin:9px 0;border:1px solid #ffffff13;border-radius:10px;background:#ffffff02}.trade-request>div:nth-child(2){flex:1}.trade-request strong{font-size:12px}.trade-request small{display:block;margin-top:6px;font-size:10px;color:#8e8e8e}.trade-request-actions{display:flex;gap:8px}.trade-request-actions button{font-size:10px}.trade-room-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.trade-room-heading h2{display:flex;align-items:center;gap:10px;font-size:17px;margin:10px 0 0}.trade-room-heading>.ghost{font-size:10px;color:#b29b9b}.trade-offers{display:grid;grid-template-columns:1fr 1fr;gap:18px}.trade-offer-form,.trade-other-offer{padding:20px;border:1px solid #ffffff12;border-radius:10px;background:#ffffff02;min-width:0}.trade-offer-heading{display:flex;justify-content:space-between;gap:12px;margin-bottom:20px;font-size:12px}.trade-ready-label{font-size:10px;color:#919191}.trade-ready-label.ready{color:#bdbdbd}.trade-offer-form .setup-input-wrap input{height:43px;font-size:12px}.trade-offer-form .fields{gap:14px 10px}.trade-offer-form .setup-field:first-child{grid-column:1/-1}.trade-offer-form>.ghost{margin-top:18px;width:100%;border-color:#ffffff20}.trade-other-offer dl{margin:0}.trade-other-offer dl>div{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #ffffff09;font-size:12px}.trade-other-offer dt{color:#969696}.trade-other-offer dd{margin:0;font-weight:600;color:#e4e4e4}.trade-other-offer>p{font-size:10px;color:#868686;line-height:1.8;margin:20px 0 0}.trade-confirmation{display:flex;align-items:center;gap:16px;padding-top:20px;margin-top:20px;border-top:1px solid #ffffff12}.trade-confirmation>div:first-child{flex:1}.trade-confirmation strong{display:block;font-size:12px}.trade-confirmation small{display:block;color:#8f8f8f;line-height:1.7;font-size:10px;margin-top:7px}.trade-confirmation button{font-size:11px;white-space:nowrap}.trade-confirmation.counting strong{color:#c6c6c6}.trade-countdown{font-size:25px;font-weight:600;color:#c6c6c6;font-variant-numeric:tabular-nums;min-width:46px;text-align:center}.trade-countdown-track{height:3px;background:#ffffff0d;margin-top:20px;border-radius:3px;overflow:hidden}.trade-countdown-track i{display:block;height:100%;background:#afafaf;transition:width .2s linear}.trade-warning{color:#cfad83;font-size:11px;line-height:1.8;margin:16px 0 0}.trade-history>div{display:flex;align-items:flex-start;gap:13px;padding:16px 0;border-top:1px solid #ffffff0c}.trade-history strong{font-size:11px}.trade-history small{display:block;font-size:10px;line-height:1.9;color:#919191;margin-top:6px}.trade-notifications{position:fixed;right:24px;bottom:24px;width:350px;max-width:calc(100vw - 32px);z-index:90;display:grid;gap:10px;pointer-events:none}.trade-notification{position:relative;padding:20px;border:1px solid #aaaaaa45;border-radius:12px;background:radial-gradient(ellipse at 100% 0%,#acacac0a,transparent 70%),#181818f5;box-shadow:0 12px 45px #0006;backdrop-filter:blur(14px);pointer-events:auto;animation:screen-arrive .3s ease both;transition:opacity .3s,filter .3s,visibility 0s .3s}.trade-notification[data-expired=true]{animation:none;opacity:0;filter:blur(8px);visibility:hidden;pointer-events:none}.trade-notification .eyebrow{font-size:8px;color:#a6a6a6;letter-spacing:1.3px}.trade-notification>strong{display:flex;align-items:center;gap:9px;font-size:13px;margin-top:13px;color:#e6e6e6}.trade-notification p{font-size:10px;color:#989898;line-height:1.8;margin:11px 0 15px}.trade-notification>div{display:flex;gap:8px}.trade-notification .trade-notice-close{position:absolute;top:8px;right:8px;border:0;padding:2px 6px;font-size:19px;color:#959595}.trade-notification .ghost.tiny{font-size:10px}@media(max-width:1150px){.trade-country-option small{display:none}.trade-offers{gap:12px}.trade-offer-form,.trade-other-offer{padding:15px}}@media(max-width:700px){.trade-offers{grid-template-columns:1fr}.trade-country-grid{grid-template-columns:1fr}.trade-country-option small{display:block}.trade-page .panel{padding:18px}.trade-confirmation{flex-wrap:wrap}.trade-confirmation>div:first-child{flex-basis:65%}.trade-request{flex-wrap:wrap}.trade-request-actions{width:100%;justify-content:flex-end}.trade-notifications{right:16px;bottom:16px}.sidebar-trade{margin-top:12px;padding:10px 12px}.trade-room-heading{align-items:flex-start}.trade-room-heading h2{font-size:14px}}@media(prefers-reduced-motion:reduce){.trade-notification{animation:none;transition:none}.trade-countdown-track i{transition:none}}

/* Trade desk: balanced offers and country-to-country conversation. */
.sidebar-trade>.sidebar-trade-icon{display:flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px}.sidebar-trade-icon svg{display:block;width:24px;height:24px}.sidebar-trade>.sidebar-trade-label{font-size:12px;font-weight:600;line-height:24px;color:inherit}.trade-offer-heading{align-items:center;min-height:24px}.trade-offer-heading>strong{font-size:18px;color:#e9e9e9;letter-spacing:-.3px}.trade-other-offer .trade-offer-heading>strong{color:#d2d2d2}.trade-offers .setup-input-wrap input{height:43px;font-size:12px}.trade-offers .fields{gap:14px 10px}.trade-offers .setup-field:first-child{grid-column:1/-1}.trade-other-offer input[readonly]{color:#e5e5e5;cursor:default;opacity:1}.trade-offers .setup-field>span{color:#adadad}.trade-other-offer>p{min-height:30px;margin-top:18px;display:flex;align-items:center}.trade-chat{margin-top:22px;padding:20px;border:1px solid #ffffff12;border-radius:10px;background:#0d0d0d3d}.trade-chat-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.trade-chat-heading h3{font-size:14px;margin:0;color:#e4e4e4}.trade-chat-heading>span{font-size:10px;color:#979797}.trade-chat-log{height:190px;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:10px;padding:4px 2px 12px;scrollbar-width:none}.trade-chat-log::-webkit-scrollbar{display:none}.trade-chat-empty{margin:auto;font-size:11px;line-height:1.8;text-align:center;color:#909090;max-width:350px}.trade-chat-message{align-self:flex-start;max-width:85%;padding:12px 14px;border:1px solid #ffffff0e;background:#ffffff03;border-radius:10px 10px 10px 2px}.trade-chat-message.own{align-self:flex-end;border-color:rgba(var(--accent-rgb),.2);background:rgba(var(--accent-rgb),.045);border-radius:10px 10px 2px 10px}.trade-chat-message>div{display:flex;align-items:center;gap:7px}.trade-chat-message .flag{width:18px;height:12px}.trade-chat-message strong{font-size:10px;color:#cdcdcd}.trade-chat-message time{margin-left:16px;font-size:9px;color:#878787}.trade-chat-message p{font-size:12px;line-height:1.7;margin:7px 0 0;color:#e2e2e2;white-space:pre-wrap;overflow-wrap:anywhere}.trade-chat-compose{display:flex;gap:10px;margin-top:12px}.trade-chat-compose input{flex:1;min-width:0;background:#0f0f0f;border:1px solid #ffffff1a;border-radius:8px;padding:12px 14px;font:inherit;font-size:12px;color:#e8e8e8;transition:border-color .2s,box-shadow .2s}.trade-chat-compose input:focus{outline:0;border-color:rgba(var(--accent-rgb),.5);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.06)}.trade-chat-compose input::placeholder{color:#848484}.trade-chat-compose button{font-size:11px;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:700px){.trade-chat{padding:14px}.trade-chat-heading{align-items:flex-start;flex-direction:column;gap:6px}.trade-chat-message{max-width:95%}.trade-chat-compose{flex-wrap:wrap}.trade-chat-compose button{margin-left:auto}.trade-offer-heading>strong{font-size:17px}}

.trade-country-pair{flex-wrap:wrap;row-gap:8px}.trade-country-name{display:inline-flex;align-items:center;gap:9px}.trade-country-divider{color:#7e7e7e;font-size:14px;font-weight:400}.trade-room{scroll-margin-top:100px}

.trade-offer-form,.trade-other-offer{position:relative;isolation:isolate;overflow:hidden;transition:border-color .3s ease,box-shadow .3s ease}.trade-offer-form:before,.trade-other-offer:before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 85% 0%,#b1b1b130,transparent 70%),linear-gradient(130deg,#4e4e4e20,#6060601a);opacity:0;transition:opacity .35s ease}.trade-offer-form>*,.trade-other-offer>*{position:relative;z-index:1}.trade-offers .is-ready{border-color:#8a8a8a88;box-shadow:0 0 25px #94949420,inset 0 0 28px #acacac0a}.trade-offers .is-ready:before{opacity:1;animation:arena-ready-glow .35s ease both}.trade-offers .is-ready .trade-ready-label{color:#cccccc}.trade-offers .is-ready .trade-offer-heading>strong{color:#d8d8d8}@media(prefers-reduced-motion:reduce){.trade-offer-form,.trade-other-offer,.trade-offer-form:before,.trade-other-offer:before{transition:none}.trade-offers .is-ready:before{animation:none}}

/* Wheel gestures continue to the page at the chat boundaries. Offer cards
   clip the ready glow without creating additional scroll containers. */
.trade-chat-log{overscroll-behavior:auto}
.trade-offer-form,.trade-other-offer{overflow:clip}
/* The trading interface follows the active nation's palette. */
.trade-page{--trade-text:color-mix(in srgb,var(--accent) 24%,#e8e8e8);--trade-muted:color-mix(in srgb,var(--accent) 20%,#919191)}
.trade-page .panel{background:radial-gradient(ellipse at 100% 0%,rgba(var(--accent-rgb),.045),transparent 70%),#111;border-color:rgba(var(--accent-rgb),.14)}
.trade-page .primary{background:linear-gradient(120deg,color-mix(in srgb,var(--accent) 32%,#ededed),color-mix(in srgb,var(--accent) 50%,#cfcfcf));border-color:rgba(var(--accent-rgb),.45);color:#171717}.trade-page .primary:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 28%,#f5f5f5)}
.trade-page .eyebrow,.trade-page .admin-step{color:var(--accent)}.trade-page .page-intro,.trade-page .admin-save-row>span,.trade-country-option small,.trade-request small,.trade-empty,.trade-history small,.trade-page h2>small,.trade-ready-label,.trade-other-offer>p,.trade-confirmation small,.trade-chat-heading>span,.trade-chat-empty,.trade-chat-message time{color:var(--trade-muted)}
.trade-country-option>span,.trade-request,.trade-offer-form,.trade-other-offer{background:#ffffff02;border-color:rgba(var(--accent-rgb),.12)}.trade-country-option strong,.trade-history strong,.trade-chat-heading h3,.trade-chat-message strong,.trade-country-pair,.trade-offer-heading>strong,.trade-other-offer .trade-offer-heading>strong{color:var(--trade-text)}
.trade-offers .setup-field>span{color:var(--trade-muted)}.trade-page .setup-input-wrap{color:var(--accent)}.trade-page .setup-input-wrap input,.trade-chat-compose input{background:#0b0b0b;border-color:rgba(var(--accent-rgb),.15);color:var(--trade-text);caret-color:var(--accent)}.trade-page .setup-input-wrap input:focus{border-color:rgba(var(--accent-rgb),.5);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.06)}.trade-other-offer input[readonly]{color:var(--trade-text)}.trade-chat-compose input::placeholder{color:var(--trade-muted)}
.trade-chat{background:rgba(var(--accent-rgb),.012);border-color:rgba(var(--accent-rgb),.12)}.trade-chat-message{background:#ffffff03;border-color:rgba(var(--accent-rgb),.1)}.trade-chat-message p{color:var(--trade-text)}.trade-country-divider{color:var(--trade-muted)}.trade-offers .is-ready{border-color:#8a8a8a88}.trade-offers .is-ready .trade-ready-label{color:#cccccc}.trade-offers .is-ready .trade-offer-heading>strong{color:#d8d8d8}
.trade-notification{border-color:rgba(var(--accent-rgb),.3);background:radial-gradient(ellipse at 100% 0%,rgba(var(--accent-rgb),.06),transparent 70%),#141414f5}.trade-notification .eyebrow,.trade-notification>strong{color:var(--accent)}.trade-notification p,.trade-notification .trade-notice-close{color:#999}.trade-notification .primary{background:color-mix(in srgb,var(--accent) 38%,#e5e5e5);border-color:rgba(var(--accent-rgb),.4);color:#171717}

dialog.arena-dialog{max-width:1480px;background:#101010;padding:24px}.arena-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.arena-main{min-width:0}.arena-analytics{min-width:0;padding-left:24px;border-left:0}.arena-analytics-title{margin:5px 0 20px}.arena-analytics-title h3{font:600 19px 'Dela Gothic One',Unbounded,Arial;margin:10px 0}.arena-analytics-title p{font-size:10px;color:#929292;margin:0}.arena-chart-card{padding:17px 16px;margin-top:12px;border:1px solid #ffffff12;border-radius:10px;background:linear-gradient(135deg,#ffffff03,transparent),#131313}.arena-chart-card h4{font-size:12px;margin:0 0 6px;color:#e0e0e0}.arena-chart-card>small{font-size:9px;color:#919191}.arena-trend{width:100%;height:auto;display:block;margin-top:16px;overflow:visible}.arena-trend line{stroke:#ffffff0d;stroke-width:1}.arena-trend text{font:9px Manrope,Arial;fill:#777}.arena-trend polyline{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.arena-chart-axis{display:flex;justify-content:space-between;padding-left:22px;font-size:8px;color:#888}.arena-chart-legend{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:17px;font-size:9px;color:#aaa}.arena-chart-legend span{display:flex;gap:7px;align-items:center}.arena-chart-legend i{width:6px;height:6px;border-radius:2px}.arena-chart-empty{font-size:11px;line-height:1.7;color:#888;margin:22px 0}.arena-power-bars{display:grid;gap:14px;margin-top:19px}.arena-power-bars>div>span{display:flex;justify-content:space-between;font-size:10px;color:#aaa;margin-bottom:7px}.arena-power-bars b{color:#ddd;font-variant-numeric:tabular-nums;font-weight:500}.arena-power-track{height:4px;border-radius:4px;background:#ffffff08;overflow:hidden}.arena-power-track i{display:block;height:100%;border-radius:4px}.arena-science-comparison{display:grid;gap:14px;margin-top:18px}.arena-science-comparison>div{display:flex;align-items:center;gap:10px;font-size:10px;color:#aaa}.arena-science-comparison>div>span:first-child{flex:1}.arena-science-steps{display:flex;gap:4px}.arena-science-steps i{display:block;width:15px;height:5px;border-radius:2px}.arena-science-comparison b{font-size:9px;font-weight:400;width:40px;text-align:right;color:#aaa}.arena-world-totals{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.arena-world-totals>div{border-top:1px solid #ffffff12;padding-top:12px}.arena-world-totals strong{display:block;font-size:19px;font-weight:600;color:#dedede}.arena-world-totals span{display:block;margin-top:5px;font-size:9px;color:#888}@media(max-width:1100px){.arena-layout{grid-template-columns:1fr}.arena-analytics{border-left:0;border-top:0;padding:24px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.arena-analytics-title{grid-column:1/-1;margin:0}.arena-chart-card{margin:0}.arena-world-totals{margin-top:0;align-content:start}}@media(max-width:700px){dialog.arena-dialog{padding:18px}.arena-analytics{grid-template-columns:1fr}.arena-layout{gap:20px}}

dialog.arena-dialog[open]{display:flex;flex-direction:column;overflow:hidden}.arena-dialog .arena-layout{flex:1;min-height:0;overflow-y:auto;scrollbar-width:none;overscroll-behavior:auto}.arena-layout::-webkit-scrollbar{display:none}.arena-dialog .arena-footer{position:relative;bottom:auto;flex-shrink:0;margin-top:18px;padding-top:18px;width:100%}.world-event-banner{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;padding:15px 20px;margin:20px 0;background:#ffffff02;border-color:#ffffff18;font-size:12px;text-align:left}.world-event-banner.negative{color:#dda7a7;border-color:#cb8e8e33}.world-event-banner.positive{color:#c6c6c6;border-color:#aaaaaa33}.world-event-banner small{color:#999;font-size:10px;font-weight:400}@media(max-width:700px){.world-event-banner{flex-wrap:wrap}}

/* Mode card: a keyboard-accessible switch replaces the native checkbox. */
.create-party-panel .world-events-option{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) 40px;align-items:center;gap:14px;text-align:left;margin:24px 0 0;padding:20px;border:1px solid #ffffff16;border-radius:12px;background:linear-gradient(120deg,#ffffff03,transparent 80%),#101010;transition:background .22s,border-color .22s,box-shadow .22s}.create-party-panel .world-events-option:hover{border-color:#ffffff30;background:#ffffff04}.create-party-panel .world-events-option>input{position:absolute;width:1px;height:1px;margin:0;padding:0;opacity:0;overflow:hidden}.world-events-mode-icon{width:38px;height:38px;padding:8px;border:1px solid #ffffff12;border-radius:10px;color:#818181;background:#ffffff03;transition:color .2s,border-color .2s}.create-party-panel .world-events-option strong{font-size:13px;font-weight:600;line-height:1.6;color:#e0e0e0}.create-party-panel .world-events-option small{font-size:10px;line-height:1.8;color:#929292;margin-top:5px}.create-party-panel .world-events-option>i{position:relative;display:block;width:40px;height:23px;margin:0;border:1px solid #ffffff20;border-radius:20px;background:#ffffff08;transition:background .22s,border-color .22s;flex-shrink:0}.world-events-option>i:before{content:'';position:absolute;top:3px;left:3px;width:15px;height:15px;border-radius:50%;background:#747474;box-shadow:0 2px 4px #0003;transition:transform .22s,background .22s}.create-party-panel .world-events-option:has(input:checked){border-color:rgba(var(--accent-rgb),.26);background:linear-gradient(120deg,rgba(var(--accent-rgb),.045),transparent 85%),#111}.world-events-option>input:checked~i{background:rgba(var(--accent-rgb),.2);border-color:rgba(var(--accent-rgb),.45)}.world-events-option>input:checked~i:before{transform:translateX(17px);background:var(--accent)}.world-events-option>input:checked~.world-events-mode-icon{color:var(--accent);border-color:rgba(var(--accent-rgb),.22)}.create-party-panel .world-events-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:4px}@media(max-width:500px){.create-party-panel .world-events-option{grid-template-columns:30px minmax(0,1fr) 40px;gap:10px;padding:16px 12px}.world-events-mode-icon{width:30px;height:30px;padding:6px}}@media(prefers-reduced-motion:reduce){.create-party-panel .world-events-option,.world-events-mode-icon,.create-party-panel .world-events-option>i,.world-events-option>i:before{transition:none}}

.resource-effects{margin-top:12px}.resource-effect{display:flex;flex-direction:column;gap:6px;margin-top:12px;padding:12px 0 0;border-top:1px solid #ffffff16;font-size:10px;line-height:1.7;overflow-wrap:anywhere}.resource-effects .resource-effect:first-child{margin-top:0}.resource-effect.negative{border-top-color:#b76e6e35}.resource-effect.positive{border-top-color:#9f9f9f35}.resource-effect.negative>strong{color:#dfa3a3}.resource-effect.positive>strong{color:#c1c1c1}.resource-effect>span{color:#929292;font-size:10px;font-weight:400}.resource-effect-total{font-size:10px;line-height:1.8;color:#999;margin:12px 0 0}.resource-effect-total b{font-weight:600;color:#d7d7d7}.resource-effect-total small{display:block;font-size:9px;line-height:1.8;color:#8d8d8d;margin-top:5px}.science-center-panel .resource-effect{padding-bottom:5px}.production-dialog .resource-effect{margin:16px 0}

.world-mode-status{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:24px;padding:18px;border:1px solid #ffffff14;border-radius:12px;background:#ffffff02;text-align:left}.world-mode-status strong{display:block;font-size:12px;color:#ddd}.world-mode-status small{display:block;font-size:10px;color:#8e8e8e;line-height:1.7;margin-top:6px}.world-mode-state{font-size:10px;color:#999;padding:7px 10px;border-radius:6px;border:1px solid #ffffff12;white-space:nowrap}.world-mode-status.enabled .world-mode-state{color:#c3c3c3;background:#aaaaaa0a;border-color:#aaaaaa30}.world-mode-status.enabled .world-events-mode-icon{color:#c3c3c3}.lobby-panel>.world-events-option{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) 40px;text-align:left}.lobby-panel>.world-events-option>input{position:absolute;width:1px;height:1px;opacity:0;margin:0;padding:0}.lobby-panel>.world-events-option>i{position:relative;display:block;width:40px;height:23px;border-radius:20px;border:1px solid #ffffff20;background:#ffffff08}.lobby-panel>.world-events-option>input:checked~i{background:rgba(var(--accent-rgb),.2);border-color:rgba(var(--accent-rgb),.45)}.lobby-panel>.world-events-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:4px}@media(max-width:500px){.world-mode-status{grid-template-columns:30px minmax(0,1fr);gap:10px;padding:15px}.world-mode-state{grid-column:2;justify-self:start}}

.account-avatar>svg{width:18px;height:18px}

.arena-host-controls{display:flex;align-items:center;gap:12px;margin-left:auto}.arena-host-controls #arena-finish{font-size:11px;color:#b69a9a;border-color:#b69a9a26}.finished-game-page{padding:32px;margin-top:25px}.finished-game-page p{line-height:1.8;color:#aaa}.finished-game-page button{margin-top:18px}@media(max-width:700px){.arena-host-controls{width:100%;flex-direction:column-reverse;gap:10px}}

/* Pregame lobby: clear country assignments and a separate participant roster. */
.minimal-shell.lobby-shell{max-width:1160px;width:100%}.lobby-room-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:20px;align-items:start}.lobby-room{padding:26px;border-radius:13px;background:linear-gradient(135deg,#ffffff03,transparent 65%),#111;border-color:#ffffff16}.lobby-room .section-title{margin-top:0}.lobby-room .section-title h2{font-size:19px}.lobby-room .lobby-teams{display:grid;gap:10px;margin-top:25px}.lobby-room .lobby-team-row{border:1px solid #ffffff10;border-radius:10px;background:#ffffff02;margin:0;padding:16px;gap:14px;min-height:82px}.lobby-team-row>.flag{width:32px;height:22px}.lobby-team-country{display:block;font-size:10px;color:#929292;letter-spacing:.3px;margin-bottom:6px}.lobby-room .lobby-team-nickname{display:block;font-size:19px;font-weight:600;line-height:1.5;color:#ececec;overflow-wrap:anywhere}.lobby-team-copy{min-width:0}.lobby-room .vacant .lobby-team-nickname{font-size:13px;font-weight:400;color:#777}.lobby-room .lobby-team-row>span:last-child{font-size:9px;white-space:nowrap;padding:5px 8px;border:1px solid #ffffff0d;border-radius:5px}.lobby-room .lobby-team-row.occupied{background:linear-gradient(100deg,#ffffff04,transparent);border-color:#ffffff1c}.lobby-room .lobby-profile-link{font-size:9px;margin-top:3px}.lobby-roster{margin:0;padding:22px 18px;border-radius:13px;background:linear-gradient(145deg,#ffffff03,transparent 65%),#111;border-color:#ffffff16;position:sticky;top:24px;min-width:0}.lobby-roster-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.lobby-roster-heading .eyebrow{font-size:8px;letter-spacing:1.4px}.lobby-roster h2{font-size:17px;margin:9px 0 0}.lobby-roster-heading .tag{font-size:10px;white-space:nowrap}.lobby-roster-caption{font-size:10px;line-height:1.8;color:#7f7f7f;margin:14px 0 18px}.lobby-roster-list{display:grid;gap:0}.lobby-person{display:flex;gap:12px;align-items:center;padding:16px 0;border-top:1px solid #ffffff0d;min-width:0}.lobby-person-avatar{width:36px;height:36px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid #ffffff16;border-radius:10px;background:#ffffff03;color:#b9b9b9;font-size:14px;font-weight:600}.lobby-person-avatar svg{width:21px;height:21px}.lobby-person.host .lobby-person-avatar{color:#c9bd91;border-color:#c9bd9125;background:#c9bd9107}.lobby-person>div{flex:1;min-width:0}.lobby-person strong{display:block;font-size:15px;line-height:1.5;overflow-wrap:anywhere;color:#e2e2e2}.lobby-person small{display:flex;align-items:center;gap:6px;font-size:10px;color:#858585;margin-top:5px;flex-wrap:wrap}.lobby-person small .flag{width:16px;height:11px;border-radius:2px}.lobby-person>button{border:0;padding:4px;color:#8f8f8f}.lobby-roster-empty{padding:20px 10px;margin-top:8px;border:1px dashed #ffffff12;border-radius:8px;color:#777;font-size:11px;line-height:1.9;text-align:center}@media(max-width:900px){.lobby-room-layout{grid-template-columns:1fr}.lobby-roster{position:static}.minimal-shell.lobby-shell{max-width:780px}}@media(max-width:500px){.lobby-room{padding:20px 16px}.lobby-room .lobby-team-row{padding:13px 10px;gap:10px}.lobby-room .lobby-team-nickname{font-size:17px}.lobby-room .lobby-team-row>span:last-child{padding:4px 6px;font-size:8px}.lobby-room .vacant .lobby-team-nickname{font-size:12px}}

/* Sign-in controls share the settings corner and have separate action surfaces. */
.minimal-shell>.account-entry{position:fixed;top:24px;right:80px;left:auto;z-index:35;min-height:44px;max-width:min(220px,calc(100vw - 104px));padding:5px 12px 5px 6px;border-radius:10px;background:#111111e8;backdrop-filter:blur(10px)}
.account-auth-panel .account-auth-switch{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;margin-top:18px;min-height:49px;padding:14px 17px;border:1px solid #ffffff12;border-radius:9px;background:#ffffff02;color:#afafaf;transition:background .2s,border-color .2s,color .2s}.account-auth-panel .account-auth-switch:hover:not(:disabled){background:rgba(var(--accent-rgb),.045);border-color:rgba(var(--accent-rgb),.24);color:#e5e5e5}.account-switch-hint{font-size:11px;color:#8c8c8c;font-weight:400}.account-switch-action{display:inline-flex;align-items:center;gap:10px;font-size:11px;font-weight:600}.account-switch-action svg{width:17px;height:17px;flex-shrink:0;transition:transform .2s}.account-auth-switch:hover .account-switch-action svg{transform:translateX(3px)}.account-auth-panel input[aria-invalid=true]{border-color:#c9878766}.account-auth-panel>.rule-note{margin-top:20px}@media(max-width:800px){.minimal-shell>.account-entry{top:16px;right:72px;left:auto}}@media(max-width:420px){.account-auth-panel .account-auth-switch{padding:13px 12px;gap:9px}.account-switch-hint,.account-switch-action{font-size:10px}.account-switch-action{gap:6px}}@media(prefers-reduced-motion:reduce){.account-auth-panel .account-auth-switch,.account-switch-action svg{transition:none}}

.account-profile-copy{min-width:0}.account-profile-name{display:flex;align-items:center;gap:15px;flex-wrap:wrap;row-gap:6px}.account-profile-name .account-presence{white-space:nowrap;line-height:1.5}.account-profile-identity .account-profile-copy>p{margin:9px 0 0}.account-avatar-editor input:disabled{cursor:wait}.account-upload:has(input:disabled){opacity:.55;cursor:wait}@media(max-width:600px){.account-profile-name{gap:10px;row-gap:5px}.account-profile-name .account-presence{font-size:9px}}

.account-game-list{height:auto;max-height:min(270px,36vh);min-height:0;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:none;touch-action:pan-y;scrollbar-gutter:auto}.account-game-list::-webkit-scrollbar{display:none}.account-game-list.is-empty{height:auto;max-height:none;min-height:0;overflow:visible}.account-game-list:focus-visible{outline:1px solid rgba(var(--accent-rgb),.4);outline-offset:4px;border-radius:6px}
/* Profile shortcut matches the blue-grey account interface. */
.minimal-shell>.account-entry{background:linear-gradient(120deg,#9b9b9b12,#9b9b9b04),#141414ee;border-color:#9b9b9b2e;color:#cfcfcf;box-shadow:inset 0 1px 0 #cdcdcd08}.minimal-shell>.account-entry .account-avatar{background:linear-gradient(135deg,#9b9b9b22,#9b9b9b08);border-color:#9b9b9b33;color:#c8c8c8}.minimal-shell>.account-entry:hover:not(:disabled){background:linear-gradient(120deg,#9b9b9b20,#9b9b9b0b),#181818;border-color:#9b9b9b66;color:#e8e8e8}.minimal-shell>.account-entry:focus-visible{outline:2px solid #9b9b9b;outline-offset:4px}/* Settings and profile form a matching pair of account controls. */
.minimal-shell>.settings-trigger{background:linear-gradient(120deg,#9b9b9b12,#9b9b9b04),#141414ee;border-color:#9b9b9b2e;color:#cfcfcf;box-shadow:inset 0 1px 0 #cdcdcd08;border-radius:10px;backdrop-filter:blur(10px)}.minimal-shell>.settings-trigger:hover:not(:disabled){background:linear-gradient(120deg,#9b9b9b20,#9b9b9b0b),#181818;border-color:#9b9b9b66;color:#e8e8e8}.minimal-shell>.settings-trigger:focus-visible{outline:2px solid #9b9b9b;outline-offset:4px}
.lobby-setup-section{margin:24px 0;padding:22px;border:1px solid #ffffff16;border-radius:12px;background:linear-gradient(120deg,#ffffff03,transparent 80%),#101010}
.lobby-setup-section h3{margin:10px 0 18px;font-size:15px;color:#e4e4e4}.lobby-advanced summary{cursor:pointer;font-size:15px;font-weight:700;color:#e4e4e4}.lobby-advanced summary span{float:right;font-size:11px;font-weight:400;color:#a7a7a7}.lobby-advanced[open] summary{margin-bottom:18px}.lobby-setup-section .rule-note{line-height:1.7;margin:0 0 14px}.lobby-settings-summary{margin:20px 0;padding:16px 18px;border:1px solid #383838;border-radius:10px;background:rgba(88,88,88,.05)}.lobby-settings-summary summary{cursor:pointer;color:#c8c8c8;font-size:12px;font-weight:600}.lobby-settings-summary dl{display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;margin:18px 0}.lobby-settings-summary dl>div{display:flex;justify-content:space-between;gap:12px;font-size:11px}.lobby-settings-summary dt{color:#9b9b9b}.lobby-settings-summary dd{margin:0;color:#e3e3e3;font-weight:600}.lobby-team-nickname{overflow-wrap:anywhere}.lobby-person>div{min-width:0}.lobby-person strong{overflow-wrap:anywhere}.lobby-roster-list{max-height:460px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#494949 transparent}
@media(max-width:600px){.lobby-setup-section{padding:16px}.lobby-settings-summary dl{grid-template-columns:1fr}.lobby-advanced summary span{float:none;display:block;margin:8px 0 0}}

/* One neutral palette for lobby configuration controls. */
.create-party-panel{--setup-surface:#101010;--setup-line:#ffffff16;--setup-hover:#ffffff30;--setup-title:#e0e0e0;--setup-muted:#929292;--setup-selected:#e7e7e7}
.create-party-panel .lobby-setup-section,.create-party-panel .access-option,.create-party-panel .world-events-option,.create-party-panel .lobby-settings-summary{background:linear-gradient(120deg,#ffffff03,transparent 80%),var(--setup-surface);border-color:var(--setup-line);border-radius:12px}
.create-party-panel .lobby-setup-section h3,.create-party-panel .lobby-advanced summary,.create-party-panel .access-option strong,.create-party-panel .world-events-option strong,.create-party-panel .lobby-settings-summary summary{color:var(--setup-title)}
.create-party-panel .lobby-advanced summary span,.create-party-panel .access-option small,.create-party-panel .world-events-option small,.create-party-panel .lobby-settings-summary dt,.create-party-panel .rule-note{color:var(--setup-muted)}
.create-party-panel .lobby-settings-summary dd{color:var(--setup-title)}
.create-party-panel .access-option-icon,.create-party-panel .setup-input-wrap>svg{color:#858585}
.create-party-panel .setup-field>span,.create-party-panel .lobby-access legend{color:#adadad}
.create-party-panel .setup-input-wrap input{background:linear-gradient(180deg,#0b0b0b,#101010);color:#ececec;border-color:#ffffff13}
.create-party-panel .setup-input-wrap input:focus{background:#161616;border-color:#ffffff65}
.create-party-panel .setup-input-wrap:focus-within>svg{color:var(--setup-selected)}
.create-party-panel .access-option:hover,.create-party-panel .world-events-option:hover,.create-party-panel .lobby-advanced:hover{background:linear-gradient(120deg,#ffffff07,transparent 80%),#111;border-color:var(--setup-hover)}
.create-party-panel .access-option:has(input:checked),.create-party-panel .world-events-option:has(input:checked),.create-party-panel .lobby-advanced[open]{background:linear-gradient(120deg,#ffffff0b,transparent 85%),#111;border-color:#ffffff42}
.create-party-panel .access-radio{border-color:#777}
.create-party-panel .access-option:has(input:checked) .access-radio{border-color:var(--setup-selected);background:#141414}
.create-party-panel .access-option:has(input:checked) strong,.create-party-panel .access-option:has(input:checked) .access-option-icon{color:var(--setup-selected)}
.create-party-panel .access-option:has(input:focus-visible),.create-party-panel .world-events-option:has(input:focus-visible),.create-party-panel .lobby-advanced summary:focus-visible{outline:2px solid var(--setup-selected);outline-offset:4px}
.create-party-panel .world-events-option>input:checked~i{background:#ffffff33;border-color:#ffffff73}
.create-party-panel .world-events-option>input:checked~i:before{background:var(--setup-selected)}
.create-party-panel .world-events-option>input:checked~.world-events-mode-icon{color:var(--setup-selected);border-color:#ffffff38}

.join-account-identity{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid #ffffff16;border-radius:10px;background:#ffffff02}.join-account-identity small{display:block;font-size:10px;color:#929292;margin-bottom:5px}.join-account-identity strong{font-size:14px;color:#e7e7e7;overflow-wrap:anywhere}

/* Equal surfaces; state is communicated by the outline and control indicator. */
.create-party-panel .lobby-setup-section,.create-party-panel .access-option,.create-party-panel .world-events-option,.create-party-panel .lobby-settings-summary,
.create-party-panel .access-option:hover,.create-party-panel .world-events-option:hover,.create-party-panel .lobby-advanced:hover,
.create-party-panel .access-option:has(input:checked),.create-party-panel .world-events-option:has(input:checked),.create-party-panel .lobby-advanced[open]{background:#111;border-color:#ffffff1c}
.create-party-panel .access-option:hover,.create-party-panel .world-events-option:hover,.create-party-panel .lobby-advanced:hover{border-color:#ffffff38}
.create-party-panel .access-option:has(input:checked),.create-party-panel .world-events-option:has(input:checked){border-color:#ffffff50}
.create-party-panel .access-option,.create-party-panel .world-events-option,.create-party-panel .lobby-advanced summary{transition:transform .16s ease,border-color .2s ease,box-shadow .2s ease;transform-origin:center;-webkit-tap-highlight-color:transparent}
.create-party-panel .access-option:active:not(:has(input:disabled)),.create-party-panel .world-events-option:active:not(:has(input:disabled)),.create-party-panel .lobby-advanced summary:active{transform:translateY(1px) scale(.985);box-shadow:inset 0 1px 8px #0004}
.create-party-panel .access-radio{transition:border-width .18s ease,border-color .18s ease}
.create-party-panel .lobby-advanced[open]>.fields{animation:setup-expand .22s ease both}
@keyframes setup-expand{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
.setup-input-wrap:has(.field-validation:not([hidden])){z-index:4}
.setup-input-wrap input[data-field-validation=true]{border-color:#b7987280;box-shadow:0 0 0 3px #b7987210}
.field-validation{position:absolute;top:calc(100% + 9px);left:12px;z-index:5;max-width:calc(100% - 24px);padding:11px 14px 11px 33px;border:1px solid #494035;border-radius:9px;background:#1b1916;color:#e5d5c2;font:500 11px/1.6 Manrope,Arial,sans-serif;box-shadow:0 8px 24px #0006;pointer-events:none;animation:field-validation-in .18s ease both}
.field-validation[hidden]{display:none}
.field-validation:before{content:'!';position:absolute;top:12px;left:12px;width:14px;height:14px;border:1px solid #b7987280;border-radius:50%;color:#c9af8e;text-align:center;font-size:10px;line-height:13px;font-weight:700}
.field-validation:after{content:'';position:absolute;top:-5px;left:16px;width:8px;height:8px;transform:rotate(45deg);background:#1b1916;border-top:1px solid #494035;border-left:1px solid #494035}
@keyframes field-validation-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.create-party-panel .access-option,.create-party-panel .world-events-option,.create-party-panel .lobby-advanced summary,.create-party-panel .access-radio{transition:none}.create-party-panel .access-option:active,.create-party-panel .world-events-option:active,.create-party-panel .lobby-advanced summary:active{transform:none}.create-party-panel .lobby-advanced[open]>.fields,.field-validation{animation:none}}

/* Compact, horizontally scrollable roster keeps every player's profile reachable. */
.party-players{min-width:0;max-width:clamp(95px,23vw,340px);padding:3px;border:1px solid #ffffff12;border-radius:10px;background:#ffffff02}
.party-players-scroll{display:flex;align-items:center;gap:5px;overflow-x:auto;padding:2px;scrollbar-width:none}.party-players-scroll::-webkit-scrollbar{display:none}
.session .party-players .account-entry,.party-player{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;min-height:34px;padding:2px;border:1px solid #ffffff13;border-radius:8px;background:#ffffff03;transition:transform .16s ease,border-color .2s ease,background .2s ease}
.session .party-players .account-entry>span:last-child{display:none}.session .party-players .account-entry .account-avatar,.party-player .account-avatar{width:27px;height:27px;font-size:11px}
.party-player:hover,.session .party-players .account-entry:hover{background:#ffffff08;border-color:#ffffff40}
.party-player:active{transform:translateY(1px) scale(.96)}.party-player .party-player-flag{position:absolute;right:0;bottom:0;width:12px;height:8px;border-radius:2px;box-shadow:0 0 0 2px #151515}
.party-player-host{position:absolute;right:0;bottom:-1px;font-size:11px;line-height:12px;color:#c9bd91;text-shadow:0 1px 2px #000}.party-player.is-guest{opacity:.65}
@media(max-width:1150px){.party-players{max-width:180px}}@media(max-width:800px){.session .party-players{max-width:150px}.party-players-scroll{gap:4px}.session .party-players .account-entry,.party-player{width:30px;flex-basis:30px;height:30px;min-height:30px}.session .party-players .account-entry .account-avatar,.party-player .account-avatar{width:24px;height:24px}}
@media(prefers-reduced-motion:reduce){.party-player,.session .party-players .account-entry{transition:none}.party-player:active{transform:none}}

.arena-team-players{margin:0 0 18px;padding:12px;border:1px solid #ffffff12;border-radius:8px;background:#ffffff02}.arena-team-caption{display:block;font-size:9px;color:#929292;letter-spacing:.3px;margin-bottom:9px}.arena-team-names{display:flex;flex-wrap:wrap;gap:6px}.arena-team-player{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:5px 8px;border:1px solid #ffffff12;border-radius:6px;color:#dedede;font-size:11px;line-height:1.5;overflow-wrap:anywhere}.arena-team-player.is-self{border-color:rgba(var(--accent-rgb),.3)}.arena-team-player small{font-size:9px;color:var(--arena-accent);flex-shrink:0}.arena-team-players>p{font-size:10px;color:#858585;margin:0;line-height:1.6}

.admin-turn-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.finish-dialog{max-width:720px!important;max-height:85vh;overflow-y:auto}.finish-placements{display:grid;gap:12px;margin:22px 0}.finish-placements>label{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:16px;padding:15px;border:1px solid #ffffff16;border-radius:10px;background:#ffffff02}.finish-placements>label>span{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.finish-placements strong{font-size:13px;color:#e7e7e7}.finish-placements small{width:100%;font-size:10px;line-height:1.7}.finish-placements select{font-size:11px}.finish-warning{font-size:11px!important;color:#bda986!important;border-top:1px solid #ffffff12;padding-top:15px}
.results-dialog{width:calc(100% - 32px);max-width:1040px;max-height:88vh;overflow-y:auto;padding:28px}.results-heading h2{font:600 24px 'Dela Gothic One',Unbounded,Arial;margin:12px 0}.results-heading>p{font-size:12px;color:#999}.results-personal{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px;margin:22px 0;border:1px solid #c9bd9140;border-radius:12px;background:#c9bd9108}.results-personal>div:first-child{display:grid;gap:10px}.results-personal strong{font-size:25px;color:#ded2a4}.results-personal span,.results-personal small{font-size:11px;color:#aaa}.results-personal>div:last-child{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.results-personal b{padding:8px 12px;border:1px solid #ffffff15;border-radius:7px;color:#dcdcdc;font-size:13px}.results-personal small{width:100%;text-align:right}.results-standings{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.result-country{padding:18px;background:#ffffff02;border:1px solid #ffffff14;border-radius:12px}.result-country.is-winner{border-color:#c9bd9155;background:#c9bd9105}.result-country-heading{display:flex;align-items:center;gap:10px}.result-place{font-size:25px;color:#c9bd91}.result-country-heading h3{font-size:15px;margin:0 0 5px}.result-country-heading p{font-size:10px;line-height:1.6;margin:0;color:#929292;overflow-wrap:anywhere}.result-country-heading>div:nth-last-child(2){flex:1;min-width:0}.result-reward{display:grid;gap:5px;white-space:nowrap;text-align:right;font-size:11px;color:#d5d5d5}.result-reward small{font-size:10px;color:#999}.result-statistics{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;margin:20px 0 0;padding-top:16px;border-top:1px solid #ffffff10}.result-statistics dt{font-size:10px;color:#929292}.result-statistics dd{margin:5px 0 0;font-size:13px;font-weight:600;color:#dedede}.result-warehouse{font-size:10px!important;line-height:1.8!important;color:#8e8e8e!important;margin:16px 0 0!important}.results-page-actions{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}.results-dialog .dialog-actions{position:sticky;bottom:-28px;padding:16px 0;background:#171717;z-index:2}
.profile-player-id{display:inline-block;margin-left:10px;padding-left:12px;border-left:1px solid #ffffff20;color:#b5ad95;font-size:11px}.profile-progression{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}.profile-rank,.profile-level{padding:20px;border:1px solid #ffffff16;background:#ffffff02;border-radius:11px}.profile-progression h3{font-size:17px;margin:12px 0 16px;color:#d9d0b1}.profile-level h3{color:#dadada}.profile-progression strong{font-size:25px;font-weight:600}.profile-progression strong small{font-size:11px;font-weight:400;color:#9d9d9d}.profile-progression>div>small{font-size:10px;color:#929292;line-height:1.8}.progression-track{height:5px;border-radius:5px;background:#ffffff09;margin:16px 0 10px;overflow:hidden}.progression-track i{display:block;height:100%;background:#bcad7f;border-radius:inherit;transition:width .3s}.profile-level .progression-track i{background:#a5a5a5}.progression-rules{grid-column:1/-1;font-size:10px;color:#999;border:1px solid #ffffff10;border-radius:8px;padding:12px 15px}.progression-rules summary{cursor:pointer;color:#b4b4b4}.progression-rules p{font-size:10px!important;line-height:1.9!important;color:#999!important}
@media(max-width:700px){.results-standings,.profile-progression{grid-template-columns:1fr}.finish-placements>label{grid-template-columns:1fr}.results-dialog{padding:20px 16px}.results-heading h2{font-size:19px}.results-personal{padding:15px}.results-personal strong{font-size:21px}.results-personal b{font-size:11px}.result-country{padding:15px}.profile-player-id{margin-left:7px;padding-left:8px}.results-dialog .dialog-actions{bottom:-20px}.admin-turn-controls{width:100%}}

/* Shared feedback for disclosure headers and controls implemented as labels. */
details>summary{position:relative;list-style:none;cursor:pointer;padding-left:18px;border-radius:6px;transform-origin:center;transition:color .18s ease,background .18s ease,transform .16s ease,box-shadow .18s ease;-webkit-tap-highlight-color:transparent}
details>summary::-webkit-details-marker{display:none}
details>summary::marker{content:''}
details>summary:before{content:'';position:absolute;left:3px;top:50%;width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:5px solid currentColor;opacity:.7;transform:translateY(-50%) rotate(0deg);transform-origin:2px 4px;transition:transform .2s ease,opacity .18s ease}
details[open]>summary:before{transform:translateY(-50%) rotate(90deg);opacity:1}
details>summary:hover{color:#eee;background:#ffffff04;box-shadow:0 0 0 5px #ffffff04}
details>summary:active{transform:translateY(1px) scale(.985);box-shadow:inset 0 1px 7px #0003}
details>summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.admin-rule-group>summary{padding-left:31px;transition:color .18s ease,background .18s ease,transform .16s ease,box-shadow .18s ease}
.admin-rule-group>summary:before{left:15px}
.admin-rule-group>summary>span{display:none}
.admin-rule-group>summary:hover{box-shadow:none}
.progression-rules>summary,.lobby-settings-summary>summary{padding-top:3px;padding-bottom:3px}
.progression-rules>summary:hover,.lobby-settings-summary>summary:hover{color:#eee}
details[open]>:not(summary){animation:disclosure-content-in .22s ease both}
@keyframes disclosure-content-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.join-nation-surface,.trade-country-option>span,.admin-science-levels label>span{transition:transform .16s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}
.join-nation-option:active:not(:has(input:disabled)) .join-nation-surface,.trade-country-option:active:not(:has(input:disabled))>span,.admin-science-levels label:active:not(:has(input:disabled))>span{transform:translateY(1px) scale(.985);box-shadow:inset 0 1px 7px #0003}
.account-upload{transition:transform .16s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}
.account-upload:hover:not(:has(input:disabled)){background:#ffffff07;border-color:#ffffff35}
.account-upload:active:not(:has(input:disabled)){transform:translateY(1px) scale(.985);box-shadow:inset 0 1px 7px #0003}
.admin-shield-switch>i{transition:transform .16s ease,background .2s ease,border-color .2s ease}
.admin-shield-switch:hover:not(:has(input:disabled))>i{border-color:#ffffff45}
.admin-shield-switch:active:not(:has(input:disabled))>i{transform:scale(.94)}
@media(prefers-reduced-motion:reduce){details>summary,details>summary:before,.admin-rule-group>summary,.join-nation-surface,.trade-country-option>span,.admin-science-levels label>span,.account-upload,.admin-shield-switch>i{transition:none}details>summary:active,.join-nation-option:active:not(:has(input:disabled)) .join-nation-surface,.trade-country-option:active:not(:has(input:disabled))>span,.admin-science-levels label:active:not(:has(input:disabled))>span,.account-upload:active:not(:has(input:disabled)),.admin-shield-switch:active:not(:has(input:disabled))>i{transform:none}details[open]>:not(summary){animation:none}}

/* Access cards use a centered icon/title/description; the radio marker stays in the corner. */
.lobby-access-options .access-option{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto;justify-items:center;align-content:center;min-height:140px;gap:14px;padding:22px 34px 26px;text-align:center}
.lobby-access-options .access-option-icon{line-height:1;justify-self:center}
.lobby-access-options .access-option>span:not(.access-option-icon){display:block;width:100%;text-align:center}
.lobby-access-options .access-option strong,.lobby-access-options .access-option small{text-align:center}
.lobby-access-options .access-radio{position:absolute;right:14px;bottom:14px;margin:0}
.finish-placement-row{display:grid;grid-template-columns:1fr 1.2fr;align-items:start;gap:16px;padding:15px;border:1px solid #ffffff16;border-radius:10px;background:#ffffff02}
.finish-placement-row>span{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:10px}
.finish-placement-row>span strong{font-size:13px;color:#e7e7e7}.finish-placement-row>span small{width:100%;font-size:10px;line-height:1.7;color:#999}
.styled-picker{min-width:0;position:relative}.styled-picker .target-picker-button{min-height:45px;font-size:11px;border-color:#ffffff20;background:#101010}
.styled-picker .target-picker-button:hover{border-color:#ffffff45;background:#171717;transform:none}
.styled-picker .target-picker-button:active{transform:translateY(1px) scale(.985)}
.styled-picker .target-list{max-height:225px;margin-top:7px;border-color:#ffffff26;background:#141414}
.styled-picker .target-option{padding:11px 10px}.styled-picker .target-option-text strong{font-size:11px}.styled-picker .target-option-text small{font-size:10px}
.styled-picker .target-option[aria-selected="true"]{background:#ffffff08;border-color:#ffffff30}
.styled-picker .target-option:active{transform:scale(.985)}
.styled-picker:has(select[data-field-validation=true])>.target-picker-button{border-color:#b7987280;box-shadow:0 0 0 3px #b7987210}
.settings-scale-field>span{display:block;margin-bottom:8px;font-size:11px;color:#969696}
@media(max-width:700px){.finish-placement-row{grid-template-columns:1fr;gap:12px}.finish-placement-row>span{padding-top:0}}
@media(prefers-reduced-motion:reduce){.styled-picker .target-picker-button:active,.styled-picker .target-option:active{transform:none}}

.profile-coins{grid-column:1/-1;display:flex;align-items:center;gap:18px;padding:20px;border:1px solid #c9bd9130;border-radius:11px;background:#c9bd9105}.profile-coins-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid #c9bd9129;border-radius:13px;color:#c9bd91;background:#c9bd9108}.profile-coins-icon svg{width:28px;height:28px}.profile-coins>div{min-width:0}.profile-coins strong{display:block;color:#e2d4a4;font-size:28px;margin:8px 0}.profile-coins>div>small{display:block;color:#929292;font-size:10px;line-height:1.8}.simple-actions .home-shop:disabled{opacity:.65;cursor:not-allowed;border-color:#ffffff10;background:#ffffff02;box-shadow:none;transform:none}.home-shop-badge{padding:5px 8px;border:1px solid #ffffff18;border-radius:6px;font-size:9px;color:#9a9a9a;font-weight:500}.results-personal [data-result-coins]{color:#e2d4a4;border-color:#c9bd9130}
@media(max-width:600px){.profile-coins{padding:16px;gap:13px}.profile-coins strong{font-size:24px}.profile-coins-icon{width:40px;height:40px}.home-shop-badge{font-size:8px;padding:4px 6px}}

/* Floating pickers are out of document flow and escape the scrolling dialog via popover. */
.styled-picker .target-list{position:fixed;inset:auto;left:0;top:0;z-index:1000;margin:0;box-sizing:border-box;color:var(--text);box-shadow:0 12px 36px #0008;overscroll-behavior:contain}
.styled-picker .target-list::backdrop{background:transparent;backdrop-filter:none}
.finish-dialog{scrollbar-width:none;-ms-overflow-style:none;scrollbar-gutter:auto}
.finish-dialog::-webkit-scrollbar{display:none;width:0;height:0}
/* Fallback for browsers without popover: no transformed ancestor may anchor fixed menus. */
dialog:has(.styled-picker .target-list:not([hidden])){animation:none;transform:none;filter:none}

/* Match results: medal colours remain local to the podium. */
html:has(dialog[open]){overflow:hidden}
.results-dialog{scrollbar-width:none;-ms-overflow-style:none;scrollbar-gutter:auto;overscroll-behavior:contain}
.results-dialog::-webkit-scrollbar{display:none;width:0;height:0}
.result-country{--medal:153,164,181;position:relative;isolation:isolate;transition:border-color .25s ease,background .25s ease;animation:result-card-in .5s both}
.result-country[data-place="1"]{--medal:228,195,116;border-color:rgba(var(--medal),.38);background:radial-gradient(ellipse at 0 0,rgba(var(--medal),.09),transparent 65%),#ffffff02}
.result-country[data-place="2"]{--medal:190,208,226;border-color:rgba(var(--medal),.26);background:radial-gradient(ellipse at 0 0,rgba(var(--medal),.05),transparent 65%),#ffffff02;animation-delay:.07s}
.result-country[data-place="3"]{--medal:202,147,109;border-color:rgba(var(--medal),.28);background:radial-gradient(ellipse at 0 0,rgba(var(--medal),.06),transparent 65%),#ffffff02;animation-delay:.14s}
.result-country[data-place="4"]{animation-delay:.21s}
.result-country.is-winner:before{content:'';position:absolute;z-index:-1;inset:-1px;border:1px solid rgba(var(--medal),.18);border-radius:inherit;pointer-events:none;animation:podium-glow 4s ease-in-out infinite}
.result-place{display:grid;place-items:center;flex:0 0 38px;min-height:38px;color:rgb(var(--medal));font-size:23px;font-variant-numeric:tabular-nums;background:rgba(var(--medal),.07);border:1px solid rgba(var(--medal),.18);border-radius:11px}
.result-place svg{display:block;width:36px;height:36px;filter:drop-shadow(0 0 8px rgba(var(--medal),.2))}
.result-country[data-place="4"] .result-place{background:transparent;border-color:transparent;color:#959595}
.result-champion{display:block;margin-top:5px;color:rgb(var(--medal));font-size:9px;font-weight:500;letter-spacing:.06em}
.result-country .result-reward strong{color:rgb(var(--medal))}
.results-host{border-color:#a7a7a73b;background:#a7a7a708}.results-host strong{color:#d0d0d0}
.results-dialog .dialog-actions{background:linear-gradient(transparent,#171717 24%);padding-top:26px}
@keyframes result-card-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes podium-glow{0%,100%{box-shadow:0 0 0 rgba(228,195,116,0)}50%{box-shadow:0 0 25px rgba(228,195,116,.07)}}

/* A separate modal occupies the top layer while the account reward is revealed. */
dialog.reward-ceremony{box-sizing:border-box;inset:0;margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:24px;border:0;border-radius:0;background:#0e0e0e99;color:#ececec;overflow:hidden;transform:none;filter:none;animation:reward-screen-in .6s ease both}
.reward-ceremony[open]{display:grid;place-items:center}
.reward-ceremony::backdrop{background:#0a0a0ab8;backdrop-filter:blur(12px);animation:reward-screen-in .6s ease both}
.reward-stage{position:relative;isolation:isolate;width:min(860px,100%);box-sizing:border-box;text-align:center;padding:32px;max-height:calc(100dvh - 48px);overflow:auto;scrollbar-width:none;border:1px solid #cbcbcb2b;border-radius:24px;background:radial-gradient(ellipse at 50% 0,#72727220,transparent 65%),#171717ed;box-shadow:0 35px 100px #0006;animation:reward-stage-in .7s cubic-bezier(.2,.7,.2,1) both}
.reward-stage::-webkit-scrollbar{display:none}
.reward-halo{position:absolute;z-index:-1;top:-125px;left:calc(50% - 180px);width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(220,190,117,.11),transparent 68%);pointer-events:none}
.reward-emblem{display:grid;place-items:center;margin:0 auto 18px;width:78px;height:78px;border:1px solid #dfc68545;border-radius:24px;color:#e5c77e;background:linear-gradient(145deg,#dfc68518,#dfc68503);box-shadow:0 0 40px #dfc6850c;animation:reward-emblem-in .9s cubic-bezier(.2,.8,.2,1) both}
.reward-emblem svg{width:52px;height:52px}
.reward-stage>.eyebrow{color:#bcbcbc;font-size:10px}
.reward-stage h2{font:600 clamp(19px,3vw,29px)/1.5 'Dela Gothic One',Unbounded,Arial;margin:12px 0 7px;color:#f2f2f2}
.reward-caption{font-size:12px;color:#a0a0a0;margin:0 0 25px}
.reward-counters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;text-align:left}
.reward-counters article{position:relative;min-width:0;padding:22px 18px 16px;border:1px solid #c1c1c122;border-radius:14px;background:#c8c8c806;animation:result-card-in .6s .15s both}
.reward-counters article:nth-child(2){animation-delay:.25s}.reward-counters article:nth-child(3){animation-delay:.35s}
.reward-counters article>span{font-size:10px;color:#a5a5a5}
.reward-counters h3{font-size:15px;margin:13px 0 14px;line-height:1.5;color:#e2e2e2;overflow-wrap:anywhere}
.reward-counters strong{display:block;font-size:25px;line-height:1.4;font-weight:600;color:#ececec;font-variant-numeric:tabular-nums}
.reward-counters strong b,.reward-counters h3 b{font-weight:inherit}
.reward-counters strong small{font-size:11px;color:#a8a8a8;font-weight:400}
.reward-counters p{font-size:10px;line-height:1.7;color:#a4a4a4;margin:10px 0 0}
.reward-counters .progression-track{margin-top:18px;height:4px;background:#c1c1c112}
.reward-counters .progression-track i{background:linear-gradient(90deg,#999999,#dadada);transition:none}
.reward-coins strong{color:#e6cb88}
.reward-coin-symbol{height:4px;margin-top:18px;color:#d5bc80;text-align:right;line-height:4px}
.reward-promotion{min-height:22px;line-height:1.7;margin:18px 0 10px;color:#e4cd96;font-size:12px}
.reward-stage>button{min-width:210px;padding:12px 18px;border:1px solid #a5a5a538;border-radius:9px;color:#d8d8d8;background:#b7b7b709}
.reward-stage>button:hover{background:#b7b7b718;border-color:#a5a5a566}.reward-stage>button:active{transform:scale(.97)}
.reward-duration{height:2px;max-width:180px;overflow:hidden;margin:20px auto 0;background:#c7c7c712;border-radius:3px}
.reward-duration i{display:block;width:100%;height:100%;background:#c1c1c178;transform-origin:left;animation:reward-countdown 6.5s linear forwards}
.reward-ceremony.is-settled .reward-coins strong{text-shadow:0 0 24px #e6cb8820}
.reward-ceremony.is-leaving,.reward-ceremony.is-leaving::backdrop{animation:reward-screen-out .6s ease both;pointer-events:none}
@keyframes reward-countdown{to{transform:scaleX(0)}}
@keyframes reward-screen-in{from{opacity:0}to{opacity:1}}
@keyframes reward-screen-out{from{opacity:1}to{opacity:0}}
@keyframes reward-stage-in{from{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes reward-emblem-in{from{opacity:0;transform:translateY(8px) scale(.8) rotate(-8deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}
@media(max-width:600px){dialog.reward-ceremony{padding:12px}.reward-stage{padding:24px 16px;max-height:calc(100dvh - 24px);border-radius:18px}.reward-emblem{width:58px;height:58px;border-radius:18px;margin-bottom:14px}.reward-emblem svg{width:42px;height:42px}.reward-counters{grid-template-columns:1fr;gap:8px}.reward-counters article{padding:13px 15px;display:grid;grid-template-columns:1fr auto;column-gap:12px;align-items:center}.reward-counters article>span{grid-column:1}.reward-counters h3{grid-column:1;grid-row:2;margin:6px 0;font-size:13px}.reward-counters strong{grid-column:2;grid-row:1 / span 2;font-size:22px;text-align:right}.reward-counters .progression-track,.reward-coin-symbol{grid-column:1 / -1;margin-top:7px}.reward-counters p{grid-column:1 / -1;margin-top:7px}.reward-caption{margin-bottom:16px}.reward-promotion{margin:12px 0 8px}.reward-duration{margin-top:14px}.result-country-heading{gap:8px}.result-place{flex-basis:32px;min-height:34px}.result-place svg{width:31px;height:31px}.result-reward{font-size:10px}.result-country-heading h3{font-size:14px}}
@media(prefers-reduced-motion:reduce){.result-country,.result-country.is-winner:before,.reward-ceremony,.reward-ceremony::backdrop,.reward-stage,.reward-emblem,.reward-counters article,.reward-duration i,.reward-ceremony.is-leaving,.reward-ceremony.is-leaving::backdrop{animation:none!important}.reward-stage>button:active{transform:none}.reward-duration{display:none}}
@media(max-width:600px){.results-personal{flex-direction:column;align-items:flex-start}.results-personal>div:last-child{justify-content:flex-start}.results-personal small{text-align:left}}
@media(max-height:650px){.reward-stage{padding-top:18px;padding-bottom:18px}.reward-emblem{width:46px;height:46px;border-radius:14px;margin-bottom:10px}.reward-emblem svg{width:34px;height:34px}.reward-stage h2{margin-top:8px}.reward-caption{margin-bottom:14px}.reward-promotion{margin:10px 0 6px}.reward-duration{margin-top:12px}}

/* Keep large party rosters inside the header and expose both ends of the list. */
.session{min-width:0}
.session .party-players{display:flex;align-items:center;gap:3px;width:320px;flex:0 1 320px;min-width:110px;max-width:clamp(140px,23vw,320px);overflow:hidden}
.party-players-scroll{flex:1 1 0;min-width:0;max-width:100%;overscroll-behavior-x:contain;touch-action:pan-x;overflow-y:hidden;scroll-padding-inline:3px}
.party-players-scroll:focus-visible{outline:1px solid #bababa55;outline-offset:-1px;border-radius:7px}
.session .party-players .party-players-arrow{flex:0 0 23px;width:23px;height:32px;min-height:32px;padding:0;display:grid;place-items:center;border:1px solid #bababa1a;border-radius:6px;background:#bababa07;color:#c6c6c6;font:400 24px/1 Arial;transition:background .18s,border-color .18s,transform .16s}
.session .party-players .party-players-arrow[hidden]{display:none}
.session .party-players .party-players-arrow:hover:not(:disabled){border-color:#bababa4d;background:#bababa16}
.session .party-players .party-players-arrow:active:not(:disabled){transform:scale(.92)}
.session .party-players .party-players-arrow:disabled{opacity:.25}
@media(max-width:1150px){.session .party-players{width:180px;flex-basis:180px;max-width:180px}}
@media(max-width:800px){.session .party-players{width:150px;flex-basis:150px;max-width:150px}.session .party-players .party-players-arrow{flex-basis:20px;width:20px;height:30px;min-height:30px}}
@media(prefers-reduced-motion:reduce){.session .party-players .party-players-arrow{transition:none}.session .party-players .party-players-arrow:active:not(:disabled){transform:none}}

/* The entire collapsed setup row is a single hover and click surface. */
.create-party-panel .lobby-advanced{transition:background-color .18s ease,border-color .18s ease}
.create-party-panel .lobby-advanced:not([open]){padding:0}
.create-party-panel .lobby-advanced:not([open])>summary{padding:22px 22px 22px 40px;border-radius:11px}
.create-party-panel .lobby-advanced:not([open])>summary:before{left:25px}
.create-party-panel .lobby-advanced:not([open]):hover,.create-party-panel .lobby-advanced:not([open]):focus-within{background:#1b1b1b;border-color:#ffffff38}
.create-party-panel .lobby-advanced>summary:hover{background:transparent;box-shadow:none}
@media(max-width:600px){.create-party-panel .lobby-advanced:not([open])>summary{padding:16px 16px 16px 34px}.create-party-panel .lobby-advanced:not([open])>summary:before{left:19px}}
@media(prefers-reduced-motion:reduce){.create-party-panel .lobby-advanced{transition:none}}

/* Compact for a small roster; the existing width limits still bound large parties. */
.session .party-players{width:max-content;flex:0 1 auto;min-width:0}
.party-players-scroll{flex:0 1 auto}

/* Host console: choose a country or the common rules, then edit one workspace. */
.admin-redesigned .admin-world-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.admin-redesigned .admin-navigation{margin-bottom:20px}
.admin-redesigned .admin-navigation .admin-panel-heading{margin-bottom:18px}
.admin-redesigned .admin-nation{transition:background .18s,border-color .18s,transform .16s}
.admin-redesigned .admin-nation:active{transform:scale(.98)}
.admin-redesigned .admin-rules-navigation{display:flex;flex-direction:column;justify-content:center;gap:12px}
.admin-rules-navigation .admin-nation-title{width:100%}
.admin-rules-symbol{display:grid;place-items:center;width:24px;height:24px;font-size:23px;font-weight:400;color:#bdbdbd}
.admin-rules-navigation p{margin:0;font-size:11px;line-height:1.8;color:#adadad;font-weight:400;text-align:left}
.admin-rules-navigation>small{font-size:10px;font-weight:400;color:#8a8a8a}
.admin-redesigned .admin-workspace{display:block;margin-top:0}
.admin-redesigned .admin-workspace>[hidden]{display:none!important}
.admin-redesigned .admin-country-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:20px;align-items:start}
.admin-redesigned .admin-rules-column{display:block;max-width:1100px;margin-inline:auto}
.admin-redesigned .admin-rule-groups{grid-template-columns:1fr 1fr;align-items:start}
.admin-redesigned .admin-edit-note{font-size:11px;line-height:1.85;color:#a6a6a6;margin:-5px 0 24px;max-width:720px}
.admin-redesigned .setup-field>span{font-size:11px;line-height:1.6}
.admin-redesigned .setup-input-wrap input{font-size:14px;height:48px;font-variant-numeric:tabular-nums}
.admin-redesigned .admin-science-levels label>span{display:block;padding:14px 6px}
.admin-redesigned .admin-save-row{align-items:flex-start;flex-direction:column;gap:12px}
.admin-redesigned .admin-save-row .primary{min-height:44px;width:100%}
.admin-redesigned .admin-city-top{font-size:10px;line-height:1.7;gap:12px}
.admin-redesigned .admin-cities{grid-template-columns:1fr 1fr}
.admin-extra-tools{margin:22px 0;border:1px solid #ffffff16;border-radius:11px;background:#131313;overflow:hidden}
.admin-extra-tools>summary{padding:18px 22px 18px 40px;font-size:12px;color:#bcbcbc}
.admin-extra-tools>summary:before{left:23px}
.admin-extra-tools>summary:hover{background:#ffffff05;box-shadow:none}
.admin-redesigned .admin-extra-tools .admin-session-tools{border:0;border-top:1px solid #ffffff10;border-radius:0}
.admin-redesigned .admin-session-tools .admin-panel-heading{display:none}
.admin-redesigned .admin-session-tools .admin-hint{margin-top:0}
.admin-redesigned .admin-end-panel{margin-top:24px;display:flex;justify-content:space-between;align-items:center;gap:26px;border-color:#c4c4c424}
.admin-end-panel h2{font-size:17px;margin:9px 0}
.admin-end-panel p{font-size:11px;line-height:1.8;color:#9c9c9c;margin:0;max-width:550px}
.admin-end-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;flex:0 0 430px}
.admin-redesigned .admin-end-actions>button{width:100%;height:50px;min-height:50px;padding:10px 16px;font-size:12px;border-radius:8px;white-space:nowrap;transition:background .18s,border-color .18s,transform .16s}
.admin-end-actions>button:active:not(:disabled){transform:translateY(1px) scale(.98)}
@media(max-width:1400px){.admin-redesigned .admin-world-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-redesigned .admin-country-column{grid-template-columns:1fr}.admin-redesigned .admin-end-panel{align-items:flex-start;flex-direction:column}.admin-end-actions{flex:none;width:100%;max-width:600px}.admin-redesigned .admin-cities{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1050px){.admin-redesigned .admin-cities{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-redesigned .admin-rule-groups{grid-template-columns:1fr}}
@media(max-width:600px){.admin-redesigned .admin-world-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-redesigned .admin-rules-navigation{grid-column:1 / -1;padding:16px}.admin-rules-navigation p,.admin-rules-navigation>small{display:none}.admin-redesigned .admin-cities{grid-template-columns:1fr}.admin-end-actions{grid-template-columns:1fr}.admin-redesigned .admin-end-actions>button{height:48px;min-height:48px}.admin-extra-tools>summary{font-size:11px}.admin-redesigned .admin-edit-note{font-size:10px}}
@media(prefers-reduced-motion:reduce){.admin-redesigned .admin-nation,.admin-redesigned .admin-end-actions>button{transition:none}.admin-redesigned .admin-nation:active,.admin-end-actions>button:active:not(:disabled){transform:none}}

.admin-save-actions{display:flex;width:100%;gap:10px;align-items:stretch}
.admin-redesigned .admin-save-actions>.primary{flex:1;min-width:0;width:auto}
.admin-save-actions>.ghost{flex:0 0 auto;font-size:11px;border-radius:8px;padding:10px 14px}
.admin-redesigned .admin-workspace>div:not([hidden]){animation:disclosure-content-in .18s ease both}
@media(max-width:600px){.admin-save-actions{flex-direction:column-reverse}.admin-save-actions>.ghost{min-height:42px}}
@media(prefers-reduced-motion:reduce){.admin-redesigned .admin-workspace>div:not([hidden]){animation:none}}

/* Foldable country editors: cities first, resources second, including mobile order. */
.admin-redesigned .admin-country-column{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.admin-redesigned .admin-editor.panel{padding:0;overflow:hidden;align-self:start}
.admin-editor>.admin-editor-toggle{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px 22px 43px;border-radius:12px;margin:0;transition:background-color .18s ease,box-shadow .18s ease}
.admin-editor>.admin-editor-toggle:before{left:23px}
.admin-editor-heading{display:grid;gap:9px;min-width:0}
.admin-editor-title{display:flex;align-items:center;gap:10px;color:#e7e7e7;font-size:17px;line-height:1.5;font-weight:700}
.admin-editor>.admin-editor-toggle>.tag{flex-shrink:0;font-size:9px}
.admin-editor>.admin-editor-toggle:hover{background:#ffffff06;box-shadow:none}
.admin-editor>.admin-editor-toggle:active{background:#ffffff0b;box-shadow:inset 0 1px 8px #0002;transform:none}
.admin-editor[open]>.admin-editor-toggle{border-bottom:1px solid #ffffff10;border-bottom-left-radius:0;border-bottom-right-radius:0}
.admin-editor-body{padding:24px}
.admin-redesigned .admin-editor-body>form.panel{padding:0;margin:0;border:0;border-radius:0;background:transparent}
.admin-redesigned .admin-editor-body .admin-edit-note{margin:0 0 24px}
@media(max-width:1400px){.admin-redesigned .admin-country-column{grid-template-columns:1fr}}
@media(max-width:600px){.admin-editor>.admin-editor-toggle{padding:18px 18px 18px 36px;gap:10px}.admin-editor>.admin-editor-toggle:before{left:17px}.admin-editor-title{font-size:14px}.admin-editor>.admin-editor-toggle>.tag{max-width:95px;white-space:normal;text-align:center;font-size:8px}.admin-editor-body{padding:18px}}
/* Disclosure hover/press paints the header's full border box, not an inset text strip. */
button{background-clip:border-box}
button:active:not(:disabled){box-shadow:inset 0 0 0 100vmax #ffffff08}
.progression-rules,.lobby-settings-summary{padding:0;overflow:hidden;transition:background-color .18s ease,border-color .18s ease}
.progression-rules>summary{display:block;padding:15px 18px 15px 36px;border-radius:7px}
.progression-rules>summary:before{left:19px}
.progression-rules>p{margin:14px 18px}
.lobby-settings-summary>summary{display:block;padding:16px 18px 16px 36px;border-radius:9px}
.lobby-settings-summary>summary:before{left:19px}
.lobby-settings-summary>dl{margin:18px}
.lobby-settings-summary>.rule-note{margin:14px 18px}
.progression-rules>summary:hover,.lobby-settings-summary>summary:hover{background:#ffffff06;box-shadow:none}
.progression-rules>summary:active,.lobby-settings-summary>summary:active,.admin-rule-group>summary:active,.admin-extra-tools>summary:active{background:#ffffff0b;transform:none;box-shadow:inset 0 1px 8px #0002}
.create-party-panel .lobby-advanced{padding:0;overflow:hidden}
.create-party-panel .lobby-advanced>summary{padding:22px 22px 22px 40px;border-radius:11px;margin-bottom:0}
.create-party-panel .lobby-advanced>summary:before{left:25px}
.create-party-panel .lobby-advanced[open]>summary{border-bottom:1px solid #ffffff10;border-bottom-left-radius:0;border-bottom-right-radius:0}
.create-party-panel .lobby-advanced[open]>summary:hover{background:#ffffff06;box-shadow:none}
.create-party-panel .lobby-advanced>summary:active{background:#ffffff0b;transform:none;box-shadow:inset 0 1px 8px #0002}
.create-party-panel .lobby-advanced>:not(summary){margin-left:22px;margin-right:22px}
.create-party-panel .lobby-advanced>.rule-note{margin-top:18px}
.create-party-panel .lobby-advanced>.fields:last-child{margin-bottom:22px}
.create-party-panel .access-option,.create-party-panel .world-events-option{transition:background-color .18s ease,border-color .18s ease,transform .16s ease,box-shadow .18s ease}
.create-party-panel .access-option:hover:not(:has(input:disabled)),.create-party-panel .world-events-option:hover:not(:has(input:disabled)){background:#1b1b1b}
.create-party-panel .access-option:active:not(:has(input:disabled)),.create-party-panel .world-events-option:active:not(:has(input:disabled)){background:#202020}
@media(max-width:600px){.create-party-panel .lobby-advanced>summary{padding:16px 16px 16px 34px}.create-party-panel .lobby-advanced>summary:before{left:19px}.create-party-panel .lobby-advanced>:not(summary){margin-left:16px;margin-right:16px}.create-party-panel .lobby-advanced>.fields:last-child{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){.admin-editor>.admin-editor-toggle,.progression-rules,.lobby-settings-summary,.create-party-panel .access-option,.create-party-panel .world-events-option{transition:none}}

/* Each country member has a separate profile target; guest saves remain plain text. */
.lobby-team-nicknames{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:5px 0 0;min-width:0}
.lobby-room .lobby-nickname-link{display:inline-flex;align-items:center;min-width:0;max-width:100%;min-height:34px;margin:0;padding:4px 8px;border:1px solid #ffffff10;border-radius:6px;background:#ffffff02;color:#e3e3e3;font-size:17px;font-weight:600;line-height:1.5;text-align:left;white-space:normal;overflow-wrap:anywhere;transition:background-color .18s,border-color .18s,transform .16s}
.lobby-room .lobby-nickname-link:hover:not(:disabled){background:#ffffff08;border-color:#ffffff35;box-shadow:none;transform:none}
.lobby-room .lobby-nickname-link:active:not(:disabled){background:#ffffff0c;transform:scale(.98)}
.lobby-room .lobby-nickname-link:focus-visible{outline:2px solid #c4c4c4;outline-offset:2px}
.lobby-room .lobby-nickname-guest{display:inline-block;font-size:17px;padding:4px 0}
.lobby-room .lobby-settings-summary{background:#131313;border-color:#ffffff1c}
.lobby-room .lobby-settings-summary>summary{color:#c8c8c8;font-weight:600}
.lobby-room .lobby-settings-summary>summary:hover{background:#ffffff06}
.lobby-room .lobby-settings-summary dt,.lobby-room .lobby-settings-summary .rule-note{color:#949494}
.lobby-room .lobby-settings-summary dd{color:#dedede}
@media(max-width:800px){.lobby-room .lobby-nickname-link{min-height:44px;font-size:16px;padding:6px 8px}}
@media(prefers-reduced-motion:reduce){.lobby-room .lobby-nickname-link{transition:none}.lobby-room .lobby-nickname-link:active:not(:disabled){transform:none}}

/* Keep the invite button visible through gradient hover and async submission. */
.trade-page #trade-invite-submit{min-width:min(160px,100%);min-height:40px;opacity:1;animation:none;transition:filter .16s ease,border-color .16s ease,box-shadow .16s ease,transform .12s ease}
.trade-page #trade-invite-submit:hover:not(:disabled){background:linear-gradient(120deg,color-mix(in srgb,var(--accent) 32%,#ededed),color-mix(in srgb,var(--accent) 50%,#cfcfcf));filter:brightness(1.04)}
.trade-page #trade-invite-submit:active:not(:disabled){filter:brightness(.97)}
.trade-page #trade-invite-submit[aria-busy="true"]{opacity:1;cursor:progress;filter:none;transform:none}
.trade-page #trade-invite-submit:disabled:not([aria-busy="true"]){opacity:.4}
@media(max-width:800px){.trade-page #trade-invite-submit{min-height:46px}}
@media(prefers-reduced-motion:reduce){.trade-page #trade-invite-submit{transition:none}}

/* Neutral interface surfaces; flags and player images retain their own colours. */
:root,:root[data-country]{--accent:#d5d5d5;--accent-rgb:213,213,213}
.home-shell .simple-home h1 span{color:#c9c9c9}
.minimal-shell>.account-entry,.minimal-shell>.settings-trigger{background:#141414;border-color:#ffffff25;color:#d0d0d0;box-shadow:inset 0 1px 0 #ffffff06}
.minimal-shell>.account-entry:hover:not(:disabled),.minimal-shell>.settings-trigger:hover:not(:disabled){background:#202020;border-color:#ffffff4d;color:#eee}
.minimal-shell>.account-entry .account-avatar{background:#ffffff07;border-color:#ffffff25;color:#d0d0d0}
.account-profile-panel,.account-auth-panel{background:radial-gradient(ellipse at 100% 0,#ffffff04,transparent 60%),#121212;border-color:#ffffff1c}
.ending-settings .ending-toggle{display:flex;flex-direction:row;align-items:flex-start;gap:12px;cursor:pointer;padding:16px;margin:0 0 20px;border:1px solid #ffffff18;border-radius:9px;background:#ffffff02}
.ending-toggle>input{width:18px;height:18px;flex:0 0 18px;accent-color:#d5d5d5;margin:2px 0 0}
.ending-toggle strong{display:block;font-size:12px;color:#dedede;line-height:1.7}
.ending-toggle small{display:block;font-size:11px;line-height:1.8;color:#949494;margin-top:5px}
.ending-settings .rule-note{margin:14px 0 0!important}

.join-nation-option[data-country]{--join-accent:190,190,190}.draft-aspect[data-group]{--draft-rgb:190,190,190}

/* Country identity is a restrained accent over neutral surfaces. */
:root[data-country="ES"]{--accent:#c4b785;--accent-rgb:196,183,133}
:root[data-country="FR"]{--accent:#a0b1c6;--accent-rgb:160,177,198}
:root[data-country="DE"]{--accent:#bba58b;--accent-rgb:187,165,139}
:root[data-country="IT"]{--accent:#9fbba9;--accent-rgb:159,187,169}
.join-nation-option[data-country="ES"]{--join-accent:196,183,133}
.join-nation-option[data-country="FR"]{--join-accent:160,177,198}
.join-nation-option[data-country="DE"]{--join-accent:187,165,139}
.join-nation-option[data-country="IT"]{--join-accent:159,187,169}
.draft-aspect[data-group="military"],.nation-aspect[data-group="military"]{--draft-rgb:191,145,145;--aspect-rgb:191,145,145}
.draft-aspect[data-group="science"],.nation-aspect[data-group="science"]{--draft-rgb:146,170,194;--aspect-rgb:146,170,194}
.draft-aspect[data-group="production"],.nation-aspect[data-group="production"]{--draft-rgb:149,180,158;--aspect-rgb:149,180,158}
.draft-aspect[data-group="economy"],.nation-aspect[data-group="economy"]{--draft-rgb:202,184,132;--aspect-rgb:202,184,132}
.draft-aspect-category i{color:rgb(var(--draft-rgb));border-color:rgba(var(--draft-rgb),.3);background:rgba(var(--draft-rgb),.045)}
.nation-aspect[data-group]{border-color:rgba(var(--accent-rgb),.28);background:linear-gradient(110deg,rgba(var(--accent-rgb),.14),rgba(var(--accent-rgb),.055));box-shadow:none}
.nation-aspect[data-group] .nation-aspect-icon{color:rgb(var(--aspect-rgb))}
/* Countdown is repainted in place; no per-tick page animation or focus changes. */
.hero-turn-timer,.admin-turn-clock{--timer-hue:120;color:hsl(var(--timer-hue) 45% 68%);font-variant-numeric:tabular-nums}
.hero-turn-timer{position:absolute;z-index:2;top:22px;right:24px;width:154px;display:grid;gap:7px;padding:13px 15px;border:1px solid hsl(var(--timer-hue) 30% 40% / .45);border-radius:10px;background:hsl(var(--timer-hue) 15% 9% / .88);backdrop-filter:blur(8px);transition:color .6s,border-color .6s,background-color .6s}
.turn-clock-label{font-size:10px;color:#aaa;font-weight:500;letter-spacing:.2px}
.hero-turn-timer>strong{font-size:25px;font-weight:600;line-height:1.2}
.turn-clock-track{height:3px;background:#ffffff10;border-radius:3px;overflow:hidden}
.turn-clock-track>i{display:block;height:100%;width:var(--timer-progress);background:currentColor;transition:width .25s linear}
.hero:has(.hero-turn-timer) .hero-content{padding-right:170px}
.admin-turn-clock{display:inline-flex;align-items:center;gap:9px;padding:5px 9px;border:1px solid currentColor;border-radius:6px;font-size:14px;vertical-align:middle}
.admin-turn-clock .turn-clock-label,.admin-turn-clock .turn-clock-track{display:none}
@media(max-width:800px){.hero:has(.hero-turn-timer){padding-top:100px}.hero:has(.hero-turn-timer) .hero-content{padding-right:0}.hero-turn-timer{top:14px;right:16px;width:142px;padding:10px 13px;gap:5px}.hero-turn-timer>strong{font-size:24px}.turn-clock-label{font-size:10px}}
@media(min-width:1920px){.hero-turn-timer{top:28px;right:32px;width:180px;padding:16px 18px}.hero-turn-timer>strong{font-size:30px}.turn-clock-label{font-size:12px}.hero:has(.hero-turn-timer) .hero-content{padding-right:200px}}
@media(prefers-reduced-motion:reduce){.hero-turn-timer,.turn-clock-track>i{transition:none}}

/* Separate the turn limit and timer fields in lobby creation. */
.ending-settings > .setup-field + .setup-field{margin-top:20px}

/* Lobby nicknames behave as text links, with a country-coloured hover. */
.lobby-team-nicknames[data-country="ES"]{--nickname-color:#c4b785}
.lobby-team-nicknames[data-country="FR"]{--nickname-color:#a0b1c6}
.lobby-team-nicknames[data-country="DE"]{--nickname-color:#bba58b}
.lobby-team-nicknames[data-country="IT"]{--nickname-color:#9fbba9}
.lobby-room .lobby-team-nicknames .lobby-team-nickname{font-size:14px;line-height:1.6;font-weight:500}
.lobby-room .lobby-team-nicknames .lobby-nickname-link{display:inline;padding:0;min-height:0;border:0;border-radius:0;background:transparent;box-shadow:none;transform:none;color:#dedede;transition:color .18s,text-shadow .18s}
.lobby-room .lobby-team-nicknames .lobby-nickname-link:hover:not(:disabled),.lobby-room .lobby-team-nicknames .lobby-nickname-link:focus-visible{background:transparent;border:0;color:var(--nickname-color);text-shadow:0 0 12px color-mix(in srgb,var(--nickname-color) 35%,transparent);box-shadow:none;transform:none}
.lobby-room .lobby-team-nicknames .lobby-nickname-link:active:not(:disabled){background:transparent;transform:none;color:var(--nickname-color);opacity:.8}
.lobby-room .lobby-nickname-link::before,.lobby-room .lobby-nickname-link::after,.lobby-room .lobby-nickname-link .click-ripple{display:none}
header .session>.admin-turn-clock{flex-shrink:0;font-size:13px;white-space:nowrap}

/* Align the country flag with nicknames; keep the country caption above. */
.lobby-room .lobby-team-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;column-gap:14px;row-gap:4px;align-items:center}
.lobby-team-row>.lobby-team-copy{display:contents}
.lobby-team-copy>.lobby-team-country{grid-column:2;grid-row:1;margin:0;align-self:end}
.lobby-team-copy>.lobby-team-nicknames,.lobby-team-copy>.lobby-team-nickname{grid-column:2;grid-row:2;margin:0}
.lobby-team-row>.flag{grid-column:1;grid-row:2;align-self:center}
.lobby-room .lobby-team-row>span:last-child{grid-column:3;grid-row:1 / span 2;align-self:center}
@media(max-width:500px){.lobby-room .lobby-team-row{column-gap:10px}}

/* Semantic colours are preserved for readiness and world events. */
.arena-country:before{background:radial-gradient(ellipse at 85% 0%,#94c9a630,transparent 70%),linear-gradient(130deg,#56856720,#6094751a)}
.arena-country.is-ready,.trade-offers .is-ready{border-color:#8ab69b88;box-shadow:0 0 25px #94c9a620,inset 0 0 28px #acd5b90a}
.arena-country.is-ready .arena-readiness.ready,.trade-offers .is-ready .trade-ready-label,.trade-ready-label.ready{color:#acd5b9}
.arena-country.is-ready .arena-readiness.ready:before{background:#acd5b9;box-shadow:0 0 8px #94c9a666}
.trade-offers .is-ready .trade-offer-heading>strong{color:#c0dfca}
.world-event-current.positive{border-color:#94c9a655;background:radial-gradient(ellipse at 100% 0%,#94c9a60a,transparent 70%),#121212}
.world-event-current.positive h2,.positive .world-event-kind{color:#acd5b9}
.world-event-announcement.positive{--event-color:#acd5b9}
.world-event-banner.positive{color:#acd5b9;border-color:#94c9a655;background:#94c9a608}
.world-event-banner.positive:hover:not(:disabled){color:#c0dfca;border-color:#94c9a688;background:#94c9a612}
.resource-effect.positive{border-top-color:#94c9a635}
.resource-effect.positive>strong{color:#acd5b9}

/* Community navigation and bounded social lists. */
.home-social-nav{position:absolute;top:28px;left:50%;transform:translateX(-50%);display:flex;gap:8px;height:auto;align-items:center;z-index:2}
.home-social-nav button{height:auto;min-height:40px;border:1px solid #ffffff18;border-radius:8px;background:#151515;color:#ccc;padding:9px 17px;font-size:12px;white-space:nowrap;transition:background-color .18s,border-color .18s,transform .16s}
.home-social-nav button:hover:not(:disabled){background:#252525;border-color:#ffffff35;color:#f2f2f2}
.home-social-nav button:active{transform:scale(.97)}
.social-panel{width:100%;min-width:0;padding:26px;border-radius:13px;background:#121212;border-color:#ffffff18}
.social-panel>.section-title{gap:14px;align-items:center;flex-wrap:wrap;margin:0 0 15px}
.social-panel .section-title h2{margin:9px 0 0;font-size:23px}
.social-panel .rule-note{font-size:11px;line-height:1.8;color:#929292}
.social-list{max-height:min(440px,50dvh);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#4b4b4b transparent;padding-right:7px;min-width:0}
.social-list::-webkit-scrollbar{width:5px}.social-list::-webkit-scrollbar-thumb{background:#4b4b4b;border-radius:5px}
.social-player{display:flex;align-items:center;gap:13px;padding:13px 0;border-bottom:1px solid #ffffff0d;min-width:0}
.social-position{display:flex;justify-content:center;align-items:center;width:28px;flex:0 0 28px;font-size:18px;font-weight:600;color:#929292}
.social-position svg{width:25px;height:25px}
.social-player-link{display:flex;align-items:center;gap:12px;min-width:0;flex:1;text-align:left;border:0;background:transparent;padding:5px;border-radius:7px;color:#dedede}
.social-player-link>span:last-child{min-width:0}.social-player-link strong{display:block;font-size:13px;font-weight:600;overflow-wrap:anywhere}.social-player-link small{display:block;font-size:10px;font-weight:400;color:#858585;line-height:1.8;margin-top:3px}
.social-player-link .account-avatar{width:36px;height:36px}.social-player-link:hover:not(:disabled){background:#ffffff06;border:0}
.social-mmr{flex-shrink:0;text-align:right;font-size:14px;font-variant-numeric:tabular-nums;color:#d7d7d7}.social-mmr small{font-size:9px;font-weight:400;color:#888}
.social-player.podium-1{--podium:#d4bd7d}.social-player.podium-2{--podium:#c0c8d0}.social-player.podium-3{--podium:#bc9477}
.social-player[class*="podium-"] .social-position,.social-player[class*="podium-"] .social-player-link strong,.social-player[class*="podium-"] .social-mmr{color:var(--podium)}
.social-player.is-self{background:#ffffff03;border-radius:7px}
.social-search{display:flex;align-items:flex-end;gap:12px;margin:22px 0 8px;min-width:0}
.social-search label{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0;font-size:11px;color:#aaa}
.social-search input{width:100%;min-width:0;height:44px;padding:10px 13px;background:#0c0c0c;border:1px solid #ffffff20;border-radius:8px;color:#eee;outline-offset:2px}
.social-search button{min-height:44px;font-size:12px;flex-shrink:0}
.social-error{color:#d8a0a0;font-size:11px;line-height:1.8;overflow-wrap:anywhere}.social-error:empty{display:none}
.social-empty{font-size:12px;color:#8e8e8e;text-align:center;padding:28px 12px;line-height:1.8}
.social-group h3{font-size:12px;color:#c4c4c4;margin:20px 0 5px}.social-group h3 small{font-size:10px;color:#777;margin-left:6px;font-weight:400}
.profile-friend-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:16px 0;min-width:0;font-size:11px;color:#aaa}
.profile-friend-actions button{font-size:11px;min-height:38px;padding:8px 12px;max-width:100%;white-space:normal}
.social-player>.profile-friend-actions{flex-shrink:0;justify-content:flex-end;max-width:52%;margin:0}
.social-online,.friend-state{color:#acd5b9}
@media(max-width:800px){.home-social-nav{position:static;transform:none;align-self:center;margin:0 0 20px;flex-wrap:wrap;justify-content:center}.home-social-nav button{min-height:44px}.social-panel{padding:20px 16px}.social-player{gap:8px}.social-player-link{gap:8px}.social-list{padding-right:4px}.social-player>.profile-friend-actions{max-width:100%;justify-content:flex-start;margin-left:44px}.social-group .social-player,#friend-search-result .social-player{flex-wrap:wrap}.social-group .social-player-link,#friend-search-result .social-player-link{flex-basis:calc(100% - 16px)}.social-player-link strong{font-size:12px}.social-mmr{font-size:12px}.social-search input{font-size:16px}.social-position{width:24px;flex-basis:24px}}
@media(prefers-reduced-motion:reduce){.home-social-nav button{transition:none}}

.social-panel{display:flex;flex-direction:column;max-height:calc(100dvh - 190px)}
.social-panel>.section-title,.social-panel>.rule-note,.social-panel>.social-search,.social-panel>#friend-search-result,.social-panel>.social-error{flex-shrink:0}
.social-panel>.social-list{flex:1 1 auto;min-height:0}
@media(max-width:800px){.social-panel{max-height:calc(100dvh - 205px)}}
@font-face{font-family:'Dela Gothic One';src:url('assets/fonts/dela-gothic-one-latin.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap;size-adjust:100%;ascent-override:100%;descent-override:25%;line-gap-override:0%;unicode-range:U+0000-00FF,U+2000-206F}
@font-face{font-family:'Dela Gothic One';src:url('assets/fonts/dela-gothic-one-cyrillic.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap;size-adjust:100%;ascent-override:100%;descent-override:25%;line-gap-override:0%;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
