/* Build planning uses the same diamond geometry as roads and simulation cells. */
.chosen-building{display:flex;align-items:center;gap:12px;margin:10px 0}.chosen-building>span{width:70px;height:65px}.chosen-building>span svg{width:100%;height:100%}.chosen-building>b{font-size:14px}.chosen-building small{display:block;color:#a7c5b9;font-size:10px;margin-top:6px}.chosen-building .text-button{margin-left:auto}
body.show-plots .quest-banner,body:has(.map.road-mode) .quest-banner{display:none}.map.build-active .map-heading,.map.road-mode .map-heading{opacity:.5}.road-mode .plot:not(.empty){opacity:.8}
.land-layer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}.land-cell{fill:transparent;stroke:transparent;stroke-width:.07;vector-effect:non-scaling-stroke}.building-base{fill:#78897655;stroke:#d1c49888;stroke-width:.1}.building-grid .land-cell,.road-grid .land-cell{stroke:#c4e8cf66;stroke-width:.12;vector-effect:none}.building-grid .available{fill:#2ea66435;stroke:#9dfab5bb}.building-grid .reserved{fill:#20363033;stroke:#75918444}.building-grid .occupied{fill:#25342e55;stroke:#e4d2a488}.building-grid .locked,.road-grid .locked{fill:#091d1c66;stroke:#50665544}.road-grid .land-cell:not(.locked):not(.occupied){fill:#7acbd419;stroke:#9ad4d888}
.road-network{z-index:1}.paved-roads polygon{fill:url(#paving);stroke:#ded5ac;stroke-width:.12;stroke-linejoin:round}.road-preview polygon{fill:#69e6c477;stroke:#a9ffdf;stroke-width:.15}.road-preview.erasing polygon{fill:#e86e5b99;stroke:#ffd1c1}.plot.empty{width:var(--tile-width);height:var(--tile-height);padding:0}.plot.empty .empty-diamond{background:transparent;box-shadow:none}.plot.empty .empty-plus{font-size:6px;top:23%;opacity:0}.show-plots .plot.empty.valid-placement .empty-plus,.road-mode .plot.empty .empty-plus{opacity:.9}.show-plots .plot.empty.blocked-placement .empty-plus{opacity:0}.show-plots .plot.empty .empty-diamond{background:transparent}.show-plots .plot.empty.valid-placement:hover .empty-diamond,.plot.empty.valid-placement.selected .empty-diamond{background:#b8ffd766;box-shadow:inset 0 0 0 1px #d7ffe4}.plot.empty.planned-road .empty-diamond{background:#5cdddb44}.plot.empty.uncleared .empty-plus{opacity:0}.plot.empty.hunting-tile .empty-plus{opacity:.6;font-size:10px}.plot.empty .placement-ghost{display:none}.placement-preview{position:absolute;width:9%;transform:translate(-50%,-92%);z-index:1595;opacity:.7;filter:drop-shadow(0 0 4px #adffae)}.placement-preview,.placement-preview *{pointer-events:none!important}.placement-preview svg{width:100%;height:auto}.map-controls #build-mode.active{background:#9bcb98;color:#102c27}.mode-actions{display:flex;gap:8px;margin:10px 0}.secondary{background:linear-gradient(#345261,#1b3442);border:1px solid #d3c58a77;border-radius:7px;color:#d6e6de;padding:10px 14px;font:inherit;font-size:12px;min-height:42px;cursor:pointer}.secondary.selected{border-color:#a8f2ba;background:#375e4c;color:#e7f9d4}.placement-summary{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px;background:#0c26318c;border:1px solid #d5c78a55;border-radius:8px;font-size:12px}.build-instruction{color:#c8e4b5!important}.building-limit{display:block;font-size:9px;color:#aac6be;margin-top:4px}.placement-prompt{padding:12px;border:1px dashed #7eb98b;border-radius:6px;color:#c5edb6!important}.build-choice{margin-top:8px}.panel:has(.storage-grid){padding:16px 20px;max-height:48dvh}.storage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.storage-card{border:1px solid #b9b68955;border-radius:9px;background:linear-gradient(135deg,#284858,#112c39);padding:14px;min-width:0}.storage-card h3{font:600 13px Georgia,serif;margin:0;color:#e5d5a3}.storage-card .section-heading>span{font-size:10px;color:#c9d8be;white-space:nowrap}.storage-card>b{display:block;font-size:11px;margin:12px 0 8px}.storage-card small{display:block;font-size:10px;color:#b3cbbb}.storage-meter{height:5px;border-radius:4px;overflow:hidden;background:#0b1d25;margin-bottom:8px}.storage-meter i{height:100%;display:block;background:linear-gradient(90deg,#38bdb5,#acd9a1)}.storage-card .costs{font-size:10px;gap:4px;margin:10px 0;flex-wrap:wrap}.storage-card .costs>span{padding:5px}.storage-card .primary{width:100%;font-size:10px}.resources{pointer-events:none}.resource{pointer-events:auto;cursor:pointer;text-align:left;font:inherit;color:inherit}.resource.full{border-color:#e6ba68aa!important}.resource.full small{color:#f6cf8f}.resource:focus-visible{outline:2px solid #a7f2d1;outline-offset:2px}.audio-setting{padding:14px 0;border-bottom:1px solid #c0cbb033}.audio-setting label{display:flex;align-items:center;justify-content:space-between;font-size:13px;margin:6px 0;gap:10px}.audio-setting label:has(input){justify-content:flex-start}.audio-setting input[type=range]{width:100%;accent-color:#6ed8be;height:34px}.audio-setting input[type=checkbox]{width:18px;height:18px;accent-color:#6ed8be}.settings-actions{display:flex;gap:8px;margin:14px 0}.settings-actions button{flex:1}#play-mode-modal .secondary{width:100%;margin-top:10px}#play-mode-modal .text-button{width:100%}#play-mode-note,#install-help{font-size:11px;line-height:1.7}#game-settings-button{margin-left:8px;flex-shrink:0}header .identity{min-width:0}header .identity b{white-space:nowrap}button:disabled{cursor:not-allowed}button[hidden]{display:none!important}.panel .build-options .build-option{min-height:108px}.map-controls,.quest-banner{backdrop-filter:blur(8px)}
@media(max-width:760px){.storage-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.panel:has(.storage-grid){padding:12px;max-height:49dvh}.storage-card{padding:10px}.storage-card h3{font-size:12px}.storage-card .primary{min-height:42px;font-size:10px}.storage-card .costs{font-size:8px}.storage-card>b{font-size:10px}.panel .build-options .build-option{min-height:91px}.building-limit{font-size:8px}.build-instruction{font-size:9px!important}.placement-summary{font-size:10px;padding:8px}.placement-summary .primary{min-height:42px}.identity div>span{display:none}.identity b{font-size:9px;letter-spacing:.6px}.account-button{max-width:88px;margin-right:5px;font-size:8px}.identity{gap:6px}#game-settings-button{margin-left:5px}.icon-button{width:30px;height:32px}.resources .resource b{font-size:12px}.placement-preview{width:9%}.resource small{font-size:6px}.build-options{gap:5px}}
@media(min-width:1000px){.placement-preview{width:5.5%}}

.paving-edge{fill:#cfc5a3;filter:drop-shadow(0 .07px .04px #102b2577)}.paving-surface{fill:url(#paving)}.building-base{fill:#30443222;stroke:#a7b99b33}

/* The world aspect and both tile dimensions come from projection.js. */
.world-surface{width:260%;left:-80%;aspect-ratio:var(--world-aspect);background-size:cover;background-position:50% 55%}
.plot.empty{width:var(--tile-width);height:var(--tile-height)}
.plot:not(.empty),.placement-preview{width:5.19230769%;transform:translate(-50%,calc(-1 * var(--building-ground-anchor)))}
.plot.citadel{width:6.92307692%}
@media(min-width:1000px){.plot:not(.empty),.placement-preview{width:3.17307692%}.plot.citadel{width:4.03846154%}}
.land-layer .land-cell{stroke:none!important}
.grid-lines{fill:none;stroke:none;pointer-events:none}
.building-grid .grid-lines,.road-grid .grid-lines{stroke:#a7e8b9b8;stroke-width:1;vector-effect:non-scaling-stroke}
.building-grid .building-base,.road-grid .building-base{display:none}
.plot.empty .empty-diamond{box-shadow:none!important;border:0}
.plot:not(.empty).selected:after{display:none}

/* Larger world, unchanged tile and sprite scale on screen. */
.world-surface{width:var(--world-width);left:var(--world-left)}
.plot:not(.empty),.placement-preview{width:var(--sprite-width)}.plot.citadel{width:var(--citadel-width)}
.road-curb,.road-curb-shadow{fill:none;stroke-linecap:round;stroke-linejoin:round}.road-curb-shadow{stroke:#344c3e;stroke-width:.17}.road-curb{stroke:#dbd1af;stroke-width:.085}
#arrange-colony{grid-column:1/-1;font-size:10px;min-height:32px}.arrangement-active #arrange-colony,.arrangement-active #build-mode,.arrangement-active #road-tool{display:none}
.arrangement-active .quest-banner{display:none}.arrangement-active .plot:not(.empty){filter:drop-shadow(0 2px 3px #061c24)}.preview-badge{background:#b0e6c51a;color:#b8f0d1;font-size:10px;border:1px solid #86bb9a77;border-radius:5px;padding:6px 9px}.panel:has(#apply-arrangement){border-top:2px solid #8dd0ad}.panel:has(#apply-arrangement) h2{margin-top:7px}
@media(min-width:1000px){.plot:not(.empty),.placement-preview{width:var(--desktop-sprite-width)}.plot.citadel{width:var(--desktop-citadel-width)}}

/* Military phase: readable touch targets and compact training cards. */
.bottom-nav{grid-template-columns:repeat(7,minmax(0,1fr))}.army-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}.army-card{padding:14px;border:1px solid #d3c28b66;border-radius:9px;background:linear-gradient(135deg,#2c4656,#112936);min-width:0}.army-card-heading{display:flex;align-items:center;gap:12px}.army-card h3{font:600 16px Georgia,serif;color:#e8d6a5;margin:8px 0}.army-building-art{width:100px;flex-shrink:0}.army-building-art svg{width:100%;height:auto}.army-card small{display:block;font-size:10px;color:#afc9c5;margin:7px 0}.army-card p{font-size:11px;line-height:1.6}.army-card .eyebrow{font-size:9px}.army-overview{display:flex;gap:12px;flex-wrap:wrap;padding:12px;border:1px solid #a8c6a766;border-radius:8px;background:#193a3f}.army-overview span{font-size:11px;color:#a8c6bf}.army-overview b{color:#e2d6b1;font-size:16px}.army-card .primary{width:100%;font-size:11px;min-height:42px}.training-row{padding:12px 0;border-top:1px solid #d3c28b33;margin-top:12px}.training-row>label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px}.training-row select{background:#112c37;color:#dbe7d8;border:1px solid #96baab88;border-radius:6px;padding:10px;max-width:65%;min-height:42px}.training-row .costs{flex-wrap:wrap;font-size:10px}.training-row .section-heading>b{font-size:11px}.training-row .text-button{font-size:10px}.panel:has(.army-grid),.panel:has(.party-picker){padding:16px 20px;max-height:49dvh}.party-picker{margin:12px 0;padding:12px;border:1px solid #a8c6a766;border-radius:8px;background:#193a3f}.party-picker h3{font:16px Georgia,serif;margin:4px 0}.party-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}.party-inputs label{font-size:11px}.party-inputs input{width:100%;min-height:44px;margin:6px 0;background:#0f2935;border:1px solid #b1c9a466;border-radius:6px;color:#e4eada;padding:8px;font:inherit}.party-inputs small{display:block;color:#a9c5bd;font-size:10px}.military-unlock{color:#c7d9ab!important}.army-expeditions .primary{min-height:42px}.army-mission{background:#2a4a3e}.party-picker .text-button{font-size:10px;min-height:42px}.building-sprite{overflow:visible}
@media(max-width:760px){.army-grid{grid-template-columns:1fr;gap:9px}.army-card{padding:12px}.army-building-art{width:88px}.army-overview{gap:10px;padding:9px}.army-overview b{font-size:13px}.army-overview span{font-size:9px}.panel:has(.army-grid),.panel:has(.party-picker){padding:12px;max-height:49dvh}.party-inputs{gap:7px}.party-inputs label{font-size:10px}.bottom-nav button{padding-left:2px;padding-right:2px}.bottom-nav button span{font-size:19px}.army-card .costs{font-size:10px}.army-card .eyebrow{font-size:9px}}

.military-screen .quest-banner{display:none}
