:root{color-scheme:dark;--gold:#ddba78;--ink:#0c171b;--muted:#a2aea8;--blue:#78bbc1}*{box-sizing:border-box}body{margin:0;background:#101e23;color:#eee9dc;font:14px system-ui,Segoe UI,sans-serif;overflow:hidden}canvas#world{width:100vw;height:100vh;display:block;touch-action:none}button,select{font:inherit;color:inherit;background:#203036;border:1px solid #65716c55;border-radius:5px;padding:9px 12px;cursor:pointer}button:hover{border-color:var(--gold);background:#35403b}button:disabled{opacity:.4;cursor:not-allowed}button.active{color:var(--gold);border-color:var(--gold)}button.primary{background:#d4ae6b;color:#202726;border:none;font-weight:700;padding:15px}button.primary:hover{background:#edd198}[hidden]{display:none!important}.eyebrow{font-size:10px;letter-spacing:2.5px;color:var(--gold);font-weight:700}header{position:absolute;top:16px;left:16px;right:16px;display:flex;align-items:center;gap:20px;background:#102025ed;border:1px solid #66817a55;border-radius:8px;padding:12px 16px;box-shadow:0 8px 30px #0004}.brand{font-weight:800;letter-spacing:2px;white-space:nowrap;color:var(--gold)}.brand span{display:block;font-size:10px;letter-spacing:1px;color:#a7b4ad;margin-top:4px}#resources{display:flex;gap:16px;flex:1;flex-wrap:wrap}.resource{font-size:15px;white-space:nowrap}.resource i{font-style:normal;color:var(--gold);margin-right:5px}.resource small{display:block;color:var(--muted);font-size:9px;letter-spacing:1px;margin-left:20px}.hud-right{display:flex;gap:5px;align-items:center}.hud-right button{padding:6px 9px}#clock{padding-right:10px;font-variant-numeric:tabular-nums}aside{position:absolute;background:#102025ed;border:1px solid #66817a55;border-radius:7px;padding:16px}#left{left:16px;top:102px;width:225px;pointer-events:none}h2{font-size:20px;font-weight:500;margin:10px 0 14px}#objective{line-height:1.6;color:#c9d0c8;font-size:12px}#researchStatus{color:var(--gold);font-size:12px;margin-top:10px}#notice{margin-top:12px;color:#e3bd85;font-size:12px;line-height:1.5}#miniwrap{bottom:200px;right:16px;width:232px;padding:15px}#minimap{margin-top:10px;width:200px;height:200px;cursor:crosshair;image-rendering:pixelated}#minilegend{font-size:10px;color:var(--muted);margin-top:6px}footer{position:absolute;bottom:16px;left:16px;right:16px;height:168px;background:#102025f5;border:1px solid #66817a55;border-radius:8px;display:flex;gap:22px;padding:16px}#selection{width:200px;flex-shrink:0;overflow-y:auto;scrollbar-width:thin;border-right:1px solid #71847b33;padding-right:16px}h3{font-size:18px;margin:8px 0}#seldesc{font-size:11px;line-height:1.5;color:var(--muted);margin:8px 0}#health{height:4px;background:#263c40}#health span{display:block;height:100%;background:#81b59d}.commands{flex:1;min-width:0}nav{display:flex;gap:15px;margin-bottom:10px}nav button{padding:0 0 7px;background:none;border:none;border-bottom:2px solid transparent;border-radius:0;color:#9eaaa2}nav button:hover{background:none}nav button.active{border-color:var(--gold)}#actions{display:flex;gap:8px;overflow:auto;padding-bottom:6px}#actions button{min-width:99px;max-width:150px;text-align:left;flex-shrink:0;font-size:12px;padding:8px 10px}#actions .icon{display:block;font-size:19px;color:var(--gold);margin-bottom:3px}#actions small{display:block;color:#9db0a4;font-size:9px;margin-top:4px}#controls{width:195px;font-size:11px;line-height:1.8;color:var(--muted);border-left:1px solid #71847b33;padding-left:20px}.veil{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(90deg,#07171adc,#091a1a50);backdrop-filter:blur(3px)}.menu-card{width:500px;padding:36px 42px;background:#122327f2;border:1px solid #79958b55;border-radius:12px;box-shadow:0 30px 100px #0008}h1{font:700 68px Georgia,serif;letter-spacing:7px;margin:20px 0 0;line-height:.96;color:#f0e6d2}h1 span{color:var(--gold);display:block;letter-spacing:18px}#tagline{font:italic 21px Georgia,serif;color:#bfcac0;margin:15px 0 20px}.line{height:1px;background:linear-gradient(90deg,var(--gold),transparent);margin-bottom:22px}.menu-fields label{font-size:11px;text-transform:uppercase;letter-spacing:1.6px;color:#b5c4b8;display:block;margin:12px 0 7px}select{width:100%;padding:11px;background:#203238}.two{display:flex;gap:16px}.two>div{flex:1}#mapdesc{font-size:12px;line-height:1.5;color:#b6c0b4;min-height:35px}.menu-card>button{width:100%;margin-bottom:9px}.menu-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.menu-bottom span,.small{font-size:9px;color:#90a298;letter-spacing:1px}.small{line-height:1.6;letter-spacing:0}.dialog-card{width:min(600px,90vw);max-height:85vh;overflow:auto;background:#14282d;border:1px solid #8c9e8266;border-radius:10px;padding:30px;box-shadow:0 20px 80px #0008}.dialog-card p{line-height:1.7;color:#c1cec1}.dialog-card button{margin-top:15px;width:100%}#tooltip{position:absolute;z-index:8;pointer-events:none;background:#172c31;border:1px solid #c5ae7066;border-radius:6px;padding:12px;max-width:290px;font-size:12px;line-height:1.6}#tooltip strong{color:var(--gold)}@media(max-width:1100px){#controls{display:none}.brand{display:none}#resources{gap:10px}header{gap:8px;padding:10px}.hud-right{gap:2px}#left{width:180px}#miniwrap{width:172px}#minimap{width:140px;height:140px}.menu-card{padding:24px 32px}}@media(max-height:750px){.menu-card{padding:20px 32px}h1{font-size:48px}.line{margin-bottom:10px}#tagline{margin:10px 0}.menu-fields label{margin-top:8px}.menu-card>button{padding:10px}#miniwrap{bottom:190px}footer{height:155px}#left{top:90px}}

#selname{font-size:17px;overflow-wrap:anywhere}
/* Version 2: expansive discovery board and textured title artwork. */
#menu{background:linear-gradient(90deg,#08191eea 0%,#0e252ac9 38%,#12272522 80%),url('assets/cover.png') center/cover no-repeat;backdrop-filter:none;justify-content:flex-start;padding-left:7vw}
.menu-card{background:#102429df;box-shadow:0 24px 80px #0006;width:485px}.menu-card h1{font-size:60px}.menu-card .small{margin-bottom:0}
footer.research-mode{height:min(510px,64vh)}footer.research-mode #controls{display:none}footer.research-mode #selection{width:190px}footer.research-mode .commands{display:flex;flex-direction:column}footer.research-mode #actions{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));align-content:start;gap:10px;overflow:auto;flex:1}footer.research-mode #actions button{min-width:0;max-width:none;min-height:87px;padding:10px;font-size:12px}footer.research-mode #actions button:disabled{opacity:.55}footer.research-mode #actions .icon{float:left;margin:1px 8px 20px 0;font-size:22px}footer.research-mode #actions small{clear:both;padding-top:5px}
#actions::-webkit-scrollbar{height:7px;width:7px}#actions::-webkit-scrollbar-thumb{background:#647b69;border-radius:4px}#actions{scrollbar-color:#647b69 #15272c;scrollbar-width:thin}
@media(max-height:760px){#menu{padding-left:5vw}.menu-card h1{font-size:46px}.menu-card{padding:20px 28px}footer.research-mode{height:60vh}footer.research-mode #actions{grid-template-columns:repeat(auto-fill,minmax(135px,1fr))}}

/* Keep the attribution visible above game panels, menus and dialogs. */
#copyright{position:fixed;right:16px;bottom:8px;z-index:100;color:#e8d3a3;background:#102025f2;border:1px solid #9c875f66;border-radius:5px;padding:5px 10px;font-size:12px;text-decoration:none;line-height:18px}
#copyright:hover,#copyright:focus-visible{color:#fff0c7;border-color:#e8c483;outline:2px solid #e8c483;outline-offset:2px}
footer{bottom:46px}#miniwrap{bottom:230px}#weatherStatus{margin-top:12px;color:#bbd5de;font-size:12px}
@media(max-height:750px){#miniwrap{bottom:220px}}
#cultureStatus{margin-top:12px;color:#bfc995;font-size:11px;line-height:1.6}
.culture-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.culture-card{background:#1d3436;border:1px solid #70857244;border-radius:6px;padding:14px}
.culture-card h3{font-size:15px;margin:4px 0 8px}
.culture-card b{font-size:12px;color:#e1c795}
.culture-card p{font-size:12px;line-height:1.6;margin:10px 0}
.culture-card small{color:#a9b9aa;font-size:11px;line-height:1.5}
.clan-dot{display:block;width:23px;height:4px;border-radius:2px;margin-bottom:8px}
@media(max-width:600px){.culture-grid{grid-template-columns:1fr}}

#trainingStatus{position:absolute;bottom:calc(100% + 8px);left:238px;max-width:calc(100% - 260px);padding:8px 12px;background:#142b2fee;border:1px solid #7c9b8155;border-radius:6px;color:#dfd3b5;font-size:12px;line-height:1.5;pointer-events:none}@media(max-width:700px){#trainingStatus{left:0;max-width:100%}}
