@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap";.building-hover{position:absolute;pointer-events:none;left:50%;bottom:93px;transform:translate(-50%);z-index:8;display:grid;gap:5px;min-width:185px;max-width:min(430px,calc(100vw - 24px));padding:12px 15px;border:1px solid #83bdb2;border-radius:10px;background:#13242eed;color:#edf5f5;box-shadow:0 5px 20px #0004}.building-hover>strong{font-size:13px}.building-hover>span{font-size:11px;color:#bbccd6}.hover-services{display:flex;gap:8px 14px;flex-wrap:wrap;font-size:12px}.hover-services b{font-size:17px}.hover-services .supplied{color:#a1dec2}.hover-services .missing{color:#f0ab9f}@media(hover:none){.building-hover{display:none}}.interest-layer{position:absolute;inset:0;pointer-events:none;z-index:1}.interest-marker{position:absolute;top:0;left:0;width:30px;height:30px;border-radius:50%;border:1px solid #edda94;background:#254b45;color:#fff0ba;pointer-events:auto;font-size:20px}.interest-marker[hidden]{display:none}.interest-card{position:absolute;top:90px;left:16px;width:320px;max-width:calc(100% - 32px);background:var(--panel);border:1px solid var(--line);padding:16px;border-radius:12px;pointer-events:auto}.interest-close{float:right}.interest-inspector p{font-size:13px;line-height:1.5}.interest-inspector small{display:block;margin-top:6px;color:var(--muted)}.interest-inspector button{padding:8px}.build-catalogue{display:grid;gap:7px}.build-card{display:flex;align-items:flex-start;width:100%;gap:8px;padding:10px;text-align:left;border:1px solid #344853;background:#15252f;border-radius:8px;color:#dce9ed}.build-card.active{border-color:#91cbb5;background:#223c40}.build-card:disabled{opacity:.65;cursor:not-allowed}.build-card-copy{min-width:0;flex:1;display:grid;gap:4px}.build-card-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 8px;font-size:12px}.build-card-heading b{white-space:nowrap;color:#d7eac4}.build-card-effect,.build-card-facts,.build-card-payer,.build-card-reason{font-size:10px;line-height:1.45}.build-card-effect{color:#cadbe2}.build-card-facts,.build-card-payer,.catalogue-site-note{color:#a7becb}.build-card-reason{color:#ffbcab}.catalogue-site-note{font-size:10px;line-height:1.5}.highway-levels .road-choices{flex-wrap:nowrap;gap:3px;margin:0 0 8px}.highway-levels .road-choices button{display:inline-flex;flex:1 1 0;align-items:center;justify-content:center;gap:4px;min-width:0;padding:5px 6px;text-transform:none}.highway-levels .road-choices .dock-icon{width:16px;height:16px}.highway-levels>p{margin:0 0 10px}.build-dock.command-dock .dock-detail:has(.highway-levels.compact){flex-basis:370px}.highway-levels.compact{flex:0 0 auto}.highway-levels.compact .road-choices{margin:0;gap:2px}.highway-levels.compact .road-choices button{flex-direction:column;gap:1px;width:34px;min-height:0;height:32px;padding:2px 0 1px;border:1px solid var(--dock-border, #2b2b30);border-radius:5px;background:#1c1c20;color:var(--dock-muted, #aaaab3);font-size:8.5px;line-height:1}.highway-levels.compact .road-choices button[aria-pressed=true]{border-color:#5b513c;background:#292720;color:var(--dock-gold, #d3bd85)}.highway-levels.compact .road-choices .dock-icon{width:15px;height:15px}@media(max-width:520px),(pointer:coarse){.highway-levels.compact .road-choices button{width:28px}.highway-levels.compact .road-choices button>span{display:none}}.build-dock{position:relative;z-index:12;flex:0 0 auto;min-width:0;display:flex;flex-direction:column;border-top:1px solid #40545f;box-shadow:0 -8px 28px #07121a40;padding-bottom:env(safe-area-inset-bottom,0px)}.dock-icon{width:28px;height:28px;flex:0 0 auto;display:block;overflow:visible}.dock-bar{display:flex;align-items:center;gap:14px;padding:6px 14px}.dock-categories{display:flex;align-items:center;gap:6px;flex:0 0 auto}.dock-category{--category-ink: #c5d9e5;box-sizing:border-box;position:relative;flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border-radius:7px;border:1px solid #405967;background:#203540;box-shadow:none;color:var(--category-ink);transition:background .12s,border-color .12s}.dock-category .dock-icon{width:27px;height:27px}.dock-category:hover{border-color:#829fac;background:#2b4452}.dock-category.selected{color:#effaff;border:2px solid #86d9ee;background:#24566c}.category-R,.category-smallPark,.category-terrainTrees{--category-ink: #a3d2ad}.category-C,.category-waterTower{--category-ink: #a2cfee}.category-I,.category-windTurbine{--category-ink: #e5c888}.category-policeStation,.category-O{--category-ink: #c9bde6}.category-demolish{--category-ink: #e6ae98}.dock-tray{display:flex;align-items:center;gap:12px;padding:7px 14px 6px;border-bottom:1px solid #30434e;background:#101920}.dock-groups{flex:0 0 auto;display:flex;align-items:center;gap:4px;padding-right:12px;border-right:1px solid #30434e}.dock-groups button{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid #2e414c;border-radius:9px;background:transparent;color:#9fb3c0}.dock-groups button .dock-icon{width:24px;height:24px}.dock-groups button:hover{border-color:#536a75}.dock-groups button[aria-pressed=true]{background:#30434f;color:#eef6f7;border-color:#6a8591}.dock-items{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:6px;overflow-x:auto;padding:2px 2px 3px;scrollbar-width:thin;scrollbar-color:#49616d #16232d;scroll-snap-type:x proximity}.dock-items .build-catalogue{display:contents}.dock-item,.dock-items .build-card{box-sizing:border-box;position:relative;flex:0 0 46px;width:46px;height:46px;display:flex;align-items:center;justify-content:center;padding:0;border-radius:6px;border:1px solid #354a56;background:#203540;box-shadow:none;color:#dfedf4;scroll-snap-align:start}.dock-items .dock-icon{width:30px;height:30px;color:inherit}.dock-item:hover,.dock-items .build-card:hover{border-color:#6f8894}.dock-item.active,.dock-items .build-card.active{border-color:#87d7ef;background:#224d62;color:#fff;box-shadow:inset 0 0 0 1px #87d7ef}.dock-items [aria-disabled=true]{background:#1c2730;color:#8f9ea8;border-style:dashed}.dock-items [aria-disabled=true] .dock-icon{opacity:.5}.dock-items [aria-disabled=true]:after{content:"";position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;background:#e4b89b}.dock-item>span:not(.density-caption):not(.zone-streets-grid),.dock-item small,.dock-items .build-card-copy,.dock-items .catalogue-site-note{display:none}.dock-detail{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:10px;padding-left:14px;border-left:1px solid #30434e}.dock-detail-copy{display:grid;gap:2px;min-width:0;flex:1}.dock-detail-copy strong{color:#dcebe9;font-size:12px;font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dock-detail-copy strong b{font-weight:400;color:#b4d5bc}.dock-detail-copy>span{font-size:10px;line-height:1.3;color:#a2b6c2;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dock-detail-copy>.dock-warning{color:#f1bd9e}.dock-settings{position:relative;flex:0 0 auto}.dock-settings summary{box-sizing:border-box;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#b8cbd6;width:36px;height:36px;border:1px solid #3b515e;border-radius:50%;background:#1a2830;list-style:none}.dock-settings summary::-webkit-details-marker{display:none}.dock-settings[open] summary{border-color:#8fc5aa;color:#dff5e8}.dock-settings summary .dock-icon{width:18px;height:18px}.dock-settings summary>span{display:none}.dock-settings-panel{position:absolute;bottom:calc(100% + 10px);right:0;width:min(340px,calc(100vw - 28px));max-height:50dvh;overflow-y:auto;padding:16px;background:#192832;border:1px solid #586d76;border-radius:10px;box-shadow:0 -4px 24px #0006;font-size:12px}.dock-settings-panel>strong{display:block;margin-bottom:10px}.dock-settings-panel>button{min-height:40px;padding:7px 10px;border:1px solid #48616c;border-radius:6px;background:#243b47;color:#d7e8ed;font-size:11px}.dock-settings-panel p{font-size:11px;line-height:1.5;color:#adbfca}.dock-settings-panel .build-funding{margin:0 0 12px}.dock-settings-panel button[aria-pressed=true]{background:#35594d;border-color:#80ad93}.dock-items .zone-density{flex-basis:86px;width:86px;gap:7px}.build-dock button:focus-visible,.dock-settings summary:focus-visible{outline:2px solid #ffffff;outline-offset:-2px}@media(max-width:900px){.dock-bar,.dock-tray{padding-inline:8px;gap:8px}.dock-categories{gap:3px}.dock-category{width:38px;height:38px}.dock-groups{padding-right:8px}}@media(max-width:600px){.dock-bar{flex-wrap:wrap;gap:4px;padding:4px 8px}.dock-categories{flex:1 1 100%;justify-content:safe center;overflow-x:auto;padding:3px}.dock-detail{flex:1 1 100%;padding:4px 0 0;border-left:0;border-top:1px solid #30434e}.dock-tray{flex-wrap:wrap;gap:4px}.dock-groups{flex:1 1 100%;padding:0;border-right:0;overflow-x:auto}.dock-items{flex:1 1 100%}.dock-settings summary{width:30px;height:30px}}@media(max-height:560px){.dock-category{width:34px;height:34px}.dock-category .dock-icon{width:23px;height:23px}.dock-item,.dock-items .build-card{flex-basis:38px;width:38px;height:38px}.dock-items .dock-icon{width:26px;height:26px}.dock-tray,.dock-bar{padding-block:4px}}.terrain-brush-controls{display:grid;gap:.6rem}.dock-rotate{flex:0 0 auto;padding:8px 12px;border:1px solid #567965;border-radius:8px;color:#dff5e8;background:#253d35;cursor:pointer}.terrain-brush-controls input[type=range]{display:block;width:100%}.civic-unlock{font-size:10px;color:#cfb879}.build-item-preview{position:relative;display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:100%;height:78px;overflow:hidden;border-radius:5px;background:radial-gradient(ellipse at 50% 75%,#80c9ac15,transparent 72%)}.build-item-preview>.dock-icon{width:38px;height:38px;color:currentColor}.build-dock .dock-items{align-items:stretch;gap:8px;padding-block:3px 6px}.build-dock .dock-items :is(.dock-item,.build-card){flex:0 0 140px;width:140px;height:132px;min-height:0;padding:6px 8px 8px;gap:4px;flex-direction:column;justify-content:flex-start;align-items:stretch;text-align:left;background:linear-gradient(160deg,#24363e,#17252e);border-radius:9px}.build-dock .dock-items :is(.dock-item,.build-card).active{border-color:#86d9c0;background:linear-gradient(160deg,#28483f,#1c3033);box-shadow:inset 0 0 0 1px #86d9c050}.build-dock .dock-items [aria-disabled=true]{background:linear-gradient(160deg,#253039,#18222a)}.build-dock .dock-items [aria-disabled=true] .build-item-preview{opacity:.6}.build-dock .dock-items .dock-item>.build-item-preview,.build-dock .dock-items .dock-item>.dock-item-caption,.build-dock .dock-items .build-card-copy{display:flex}.build-dock .dock-items .dock-item-caption,.build-dock .dock-items .build-card-copy{flex:1 1 auto;min-width:0;flex-direction:column;gap:4px}.build-dock .dock-items .build-card-heading{display:contents}.build-dock .dock-items :is(.dock-item-caption strong,.build-card-heading strong){display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:13px;color:#e8e6dc;font-size:10px;font-weight:600;line-height:1.25}.build-dock .dock-items :is(.dock-item-caption small,.build-card-heading b){display:block;color:#cfb879;font-size:10px;font-weight:500;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.build-dock .dock-items :is(.build-card-effect,.build-card-facts,.build-card-payer,.build-card-reason,.civic-unlock){display:none}.build-dock .dock-items .dock-item:has(>.dock-icon){flex-basis:82px;width:82px;justify-content:center;align-items:center}.build-dock .dock-items .dock-item:has(>.dock-icon)>span{display:block;font-size:10px;text-align:center}.dock-detail>.build-item-preview{width:62px;height:44px}.dock-preview-card{position:absolute;bottom:calc(100% + 10px);left:14px;width:min(340px,calc(100vw - 28px));border:1px solid #647169;border-radius:14px;background:linear-gradient(145deg,#24332f,#14232c 75%);color:#e8e6dc;box-shadow:0 16px 50px #0007;overflow:hidden;pointer-events:none}.dock-preview-heading{display:grid;gap:6px;padding:15px 18px 2px}.dock-preview-heading>span{font-size:9px;letter-spacing:.12em;font-weight:600;color:#cfb879}.dock-preview-heading>strong{font-family:Space Grotesk,sans-serif;font-size:18px;line-height:1.25}.build-item-preview-large{height:180px;border-radius:0;padding:8px 12px 0}.build-item-preview-large>.dock-icon{width:60px;height:60px}.dock-preview-info{padding:0 18px 16px}.dock-preview-info p{margin:0 0 12px;font-size:11px;line-height:1.5;color:#bccbc7}.dock-preview-price{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #58626080;padding:11px 0 9px}.dock-preview-price strong{color:#cfb879;font-size:14px}.dock-preview-price span,.dock-preview-info>small{font-size:10px;line-height:1.4;color:#aebdbb}.dock-preview-info .dock-preview-reason{margin:3px 0 0;padding:8px 10px;border-radius:6px;background:#cfb87912;color:#e8c89e}@media(max-width:600px),(max-height:560px){.build-dock .dock-items :is(.dock-item,.build-card){flex-basis:118px;width:118px;height:112px}.build-item-preview{height:62px}.dock-preview-card{left:8px;width:min(320px,calc(100vw - 16px))}.build-item-preview-large{height:130px}.dock-preview-info p{max-height:4.5em;overflow:hidden}}@media(max-height:560px){.build-item-preview-large{height:92px}.dock-preview-heading{padding-top:10px}.dock-preview-heading>strong{font-size:16px}}.build-dock .dock-items :is(.dock-item,.build-card){display:grid;grid-template-rows:minmax(0,1fr) auto}.build-dock .dock-items :is(.dock-item,.build-card)>.build-item-preview{height:100%;min-height:0}.build-card-price{display:flex;align-items:center;justify-content:space-between;gap:4px}.build-card-price>small{padding:2px 4px;color:#e8c89e;background:#cfb87918;border-radius:3px;font-size:8px}.build-dock .dock-tray{display:block;padding:9px 14px 4px}.dock-tray-heading{display:flex;align-items:center;gap:16px;min-width:0;margin-bottom:7px}.dock-tray-heading>strong{flex:0 0 auto;font-size:12px;color:#e8e6dc}.build-dock .dock-groups{flex:1 1 auto;gap:5px;border:0;padding:0;overflow-x:auto;min-width:0;scrollbar-width:thin}.build-dock .dock-groups button{flex:0 0 auto;width:auto;height:30px;padding:0 10px;border-radius:6px;font-size:11px;white-space:nowrap}.dock-tray-actions{display:flex;align-items:center;flex:0 0 auto;gap:7px;margin-left:auto}.dock-tray-actions button{padding:6px 10px;border:1px solid #40545f;border-radius:6px;background:#1c2d33;color:#b9cfc9;font-size:10px;white-space:nowrap}.dock-tray-actions button[aria-pressed=true]{border-color:#80c9ac;background:#28483f;color:#e8e6dc}.dock-tray-actions .dock-close{flex:0 0 auto;width:30px;height:30px;padding:0;font-size:20px;line-height:1}.build-dock .dock-bar{padding:6px 12px;gap:12px}.build-dock .dock-categories{flex:1 1 auto;min-width:0;overflow-x:auto;gap:4px;padding:2px;scrollbar-width:thin}.build-dock .dock-category{width:60px;height:52px;flex-direction:column;gap:4px;border-radius:7px}.build-dock .dock-category .dock-icon{width:24px;height:24px}.dock-category>span{font-size:9px;font-weight:500;line-height:1}.build-dock .dock-category.selected{border-color:#80c9ac;background:#28483f}.build-dock .dock-detail{flex:0 1 330px;min-width:220px;gap:7px;padding-left:12px}.dock-detail-copy>strong{font-size:11px}.dock-tray-actions button:hover{border-color:#80c9ac;color:#e8e6dc}@media(max-width:600px){.build-dock .dock-tray{padding-inline:8px}.dock-tray-heading{flex-wrap:wrap;gap:5px 10px}.build-dock .dock-groups{flex:1 1 100%;order:3}.build-dock .dock-categories{flex:1 1 100%;justify-content:flex-start}.build-dock .dock-detail{flex:1 1 100%;min-width:0;padding:3px 0 0}.build-dock .dock-bar{padding:4px 8px;gap:4px}}.build-dock.command-dock{--dock-panel: var(--glass-tint-dense);--dock-border: var(--glass-line);--dock-muted: #e4e7ec;--dock-gold: #ecd9a6;--icon-detail: #09090b;justify-content:flex-end;height:var(--dock-row);padding:0 var(--dock-inset) calc(var(--dock-gap) + env(safe-area-inset-bottom,0px));border:0;background:none;color:#f1f1f3;box-shadow:none;pointer-events:none}.build-dock.command-dock>*{pointer-events:auto}.build-dock.command-dock .dock-bar{position:relative;z-index:2;box-sizing:border-box;flex-wrap:nowrap;min-height:var(--dock-bar);padding:4px 8px;border-radius:16px;gap:10px}.build-dock.command-dock .dock-categories{flex:1 1 auto;justify-content:space-between;gap:2px;padding:0;border:0;overflow:visible;min-width:0}.build-dock.command-dock .dock-category{width:auto;min-width:32px;height:38px;padding:3px 5px;gap:3px;border:1px solid transparent;background:transparent;color:var(--dock-muted);border-radius:10px;text-shadow:var(--glass-text-shadow)}.build-dock.command-dock .dock-category .dock-icon{width:17px;height:17px;color:inherit;filter:drop-shadow(0 1px 1px rgb(0 0 0 / .5))}.build-dock.command-dock .dock-category>span{font-size:9px;line-height:1;white-space:nowrap}.build-dock.command-dock .dock-category:hover,.build-dock.command-dock .dock-more-toggle:hover,.build-dock.command-dock .dock-undo:hover:not(:disabled){background:var(--glass-fill-hover);color:#f1f1f3;border-color:transparent}.build-dock.command-dock .dock-category.selected,.build-dock.command-dock .dock-category[aria-pressed=true],.build-dock.command-dock .dock-more-toggle[aria-expanded=true]{color:var(--glass-active-text);background:var(--glass-active-fill);border-color:var(--glass-active-line)}.build-dock.command-dock .dock-detail{flex:0 1 210px;min-width:165px;gap:7px;padding:0 0 0 10px;border-color:var(--dock-border)}.build-dock.command-dock .dock-detail>.build-item-preview{width:28px;height:28px;flex:0 0 28px}.build-dock.command-dock .dock-detail>.build-item-preview>.dock-icon{width:24px;height:24px}.build-dock.command-dock .dock-detail-copy>strong{color:#f1f1f3;font-size:11px;font-weight:500}.build-dock.command-dock .dock-detail-copy>span{color:var(--dock-gold);font-size:10px}.build-dock.command-dock .dock-detail-copy>.dock-warning{color:#e8bc9e}.build-dock.command-dock .dock-settings summary,.build-dock.command-dock .dock-undo,.build-dock.command-dock .dock-more-toggle,.build-dock.command-dock .dock-rotate{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:30px;height:30px;padding:4px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--dock-muted)}.build-dock.command-dock .dock-undo{font:22px/1 Arial,sans-serif}.build-dock.command-dock .dock-undo:disabled{opacity:.35}.build-dock.command-dock .dock-more-toggle{font:22px/1 Arial,sans-serif}.build-dock.command-dock .dock-settings summary .dock-icon{width:17px;height:17px}.build-dock.command-dock .dock-settings[open] summary{background:var(--glass-active-fill);border-color:var(--glass-active-line);color:var(--glass-active-text)}.build-dock.command-dock .dock-settings{position:static}.build-dock.command-dock .dock-rotate{width:auto;padding-inline:6px;font-size:10px;white-space:nowrap}.build-dock.command-dock .dock-tray{position:absolute;bottom:calc(var(--dock-row) + 8px);left:var(--dock-inset);right:var(--dock-inset);max-height:min(45dvh,300px);overflow-y:auto;padding:8px 10px 6px;border:1px solid var(--dock-border);border-radius:16px;background:var(--glass-tint);box-shadow:var(--glass-shadow)}.build-dock.command-dock .dock-tray-heading{gap:10px;margin-bottom:5px}.build-dock.command-dock .dock-tray-heading>strong{color:#f1f1f3;font-size:11px;font-weight:500}.build-dock.command-dock .dock-groups{gap:3px;padding:0;border:0}.build-dock.command-dock .dock-groups button{height:27px;padding:0 8px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--dock-muted);font-size:10px;text-shadow:var(--glass-text-shadow)}.build-dock.command-dock .dock-groups button:hover{background:var(--glass-fill-hover)}.build-dock.command-dock .dock-groups button[aria-pressed=true]{color:var(--glass-active-text);background:var(--glass-active-fill);border-color:var(--glass-active-line)}.build-dock.command-dock .dock-tray-actions{gap:5px}.build-dock.command-dock .dock-tray-actions button{min-height:27px;padding:4px 7px;border-color:var(--dock-border);border-radius:8px;background:var(--glass-fill);color:var(--dock-muted);font-size:10px}.build-dock.command-dock .dock-tray-actions button:hover{background:var(--glass-fill-hover)}.build-dock.command-dock .dock-tray-actions button[aria-pressed=true]{color:var(--glass-active-text);border-color:var(--glass-active-line);background:var(--glass-active-fill)}.build-dock.command-dock .dock-tray-actions .dock-close{width:27px;height:27px;padding:0;font-size:18px}.build-dock.command-dock .dock-items{gap:5px;padding:2px 1px 4px;scrollbar-color:rgb(255 255 255 / .3) transparent}.build-dock.command-dock .dock-items :is(.dock-item,.build-card){flex:0 0 80px;width:80px;height:84px;padding:2px 3px;gap:3px;border:1px solid transparent;border-radius:12px;background:transparent;color:#f1f1f3}.build-dock.command-dock .dock-items :is(.dock-item,.build-card):hover{border-color:var(--glass-line);background:var(--glass-fill-hover)}.build-dock.command-dock .dock-items :is(.dock-item,.build-card).active{border-color:var(--glass-active-line);background:var(--glass-active-fill)}.build-dock.command-dock .dock-items [aria-disabled=true]{background:transparent}.build-dock.command-dock .dock-items [aria-disabled=true]:after{background:var(--dock-gold)}.build-dock.command-dock .dock-items :is(.dock-item-caption,.build-card-copy){gap:3px}.build-dock.command-dock .dock-items :is(.dock-item-caption strong,.build-card-heading strong){color:#f4f5f7;font-size:10px;font-weight:500;text-shadow:var(--glass-text-shadow)}.build-dock.command-dock .dock-items :is(.dock-item-caption small,.build-card-heading b){color:var(--dock-gold);font-size:9px;text-shadow:var(--glass-text-shadow)}.build-dock.command-dock .build-card-price>small{color:#e8bc9e;background:#d3bd8518}.build-dock.command-dock .build-item-preview{background:none;color:var(--glass-active-text);filter:drop-shadow(0 2px 3px rgb(0 0 0 / .55))}.build-dock.command-dock .dock-preview-card{bottom:calc(var(--dock-row) + var(--dock-tray-height, 170px) + 16px);left:var(--dock-inset);box-shadow:var(--glass-shadow);width:min(280px,calc(100vw - 24px));border-color:var(--dock-border);border-radius:10px;background:var(--dock-panel);color:#f1f1f3}.build-dock.command-dock .dock-preview-heading{gap:4px;padding:12px 14px 2px}.build-dock.command-dock .dock-preview-heading>span{color:var(--dock-gold);font-size:8px}.build-dock.command-dock .dock-preview-heading>strong{font-size:15px}.build-dock.command-dock .build-item-preview-large{height:84px;padding:3px 10px 0}.build-dock.command-dock .dock-preview-info{padding:0 14px 12px}.build-dock.command-dock .dock-preview-info>p:not(.dock-preview-reason){display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:8px;color:var(--dock-muted);font-size:10px}.build-dock.command-dock .dock-preview-price{border-color:var(--dock-border);padding:7px 0}.build-dock.command-dock .dock-preview-price strong{color:var(--dock-gold);font-size:12px}.build-dock.command-dock .dock-preview-price span,.build-dock.command-dock .dock-preview-info>small{color:var(--dock-muted);font-size:9px}.build-dock.command-dock .dock-preview-info .dock-preview-reason{color:#e8bc9e;background:#d3bd8510;font-size:10px}.build-dock.command-dock .dock-settings-panel{z-index:3;bottom:calc(100% + 8px);right:0;padding:12px;border-color:var(--dock-border);border-radius:16px;background:var(--dock-panel);color:#f1f1f3;box-shadow:var(--glass-shadow)}.build-dock.command-dock .dock-settings-panel :is(button,select,input[type=number]){border-color:var(--dock-border);background:var(--glass-fill);color:#f1f1f3}.build-dock.command-dock .dock-settings-panel button[aria-pressed=true]{border-color:var(--glass-active-line);background:var(--glass-active-fill);color:var(--glass-active-text)}.build-dock.command-dock .dock-settings-panel p{color:var(--dock-muted)}.build-dock.command-dock .dock-more{position:static;display:none;flex:0 0 auto}.build-dock.command-dock .dock-more-panel{position:absolute;z-index:4;bottom:calc(100% + 8px);left:0;width:min(310px,calc(100vw - 20px));max-height:65dvh;overflow-y:auto;padding:10px;border:1px solid var(--dock-border);border-radius:16px;background:var(--dock-panel);box-shadow:var(--glass-shadow)}.build-dock.command-dock .dock-more-panel>strong{display:block;margin:0 3px 8px;font-size:11px;font-weight:500}.build-dock.command-dock .dock-more-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.build-dock.command-dock .dock-more-categories .dock-category{height:48px;padding:5px 2px}@media(max-width:1100px){.build-dock.command-dock .dock-categories>.dock-category>span{display:none}.build-dock.command-dock .dock-categories>.dock-category{height:30px;padding:4px}.build-dock.command-dock .dock-bar{border-radius:13px;gap:7px}}@media(max-width:760px){.build-dock.command-dock .dock-categories>.dock-category:nth-of-type(n+7){display:none}.build-dock.command-dock .dock-more{display:block}.build-dock.command-dock .dock-categories{justify-content:flex-start;flex:1 1 auto}.build-dock.command-dock .dock-detail{flex:0 1 190px;min-width:130px;padding-left:7px;gap:5px}.build-dock.command-dock .dock-detail>.build-item-preview{display:none}.build-dock.command-dock .dock-tray-heading{flex-wrap:wrap;gap:5px 8px}.build-dock.command-dock .dock-groups{order:3;flex:1 1 100%}}@media(max-width:520px){.build-dock.command-dock .dock-categories>.dock-category:nth-of-type(n+4){display:none}.build-dock.command-dock .dock-bar{padding-inline:6px;gap:4px}.build-dock.command-dock .dock-detail{flex:1 1 auto;min-width:0}.build-dock.command-dock .dock-detail-copy{min-width:0}.build-dock.command-dock .dock-categories{flex:0 0 auto}.build-dock.command-dock .dock-tray{padding-inline:7px}.build-dock.command-dock .dock-rotate{max-width:42px;overflow:hidden}}@media(pointer:coarse){.build-dock.command-dock .dock-categories>.dock-category:nth-of-type(n+4){display:none}.build-dock.command-dock .dock-more{display:block}.build-dock.command-dock .dock-category,.build-dock.command-dock .dock-categories>.dock-category,.build-dock.command-dock .dock-more-toggle,.build-dock.command-dock .dock-undo,.build-dock.command-dock .dock-settings summary,.build-dock.command-dock .dock-tray-actions button,.build-dock.command-dock .dock-groups button,.build-dock.command-dock .dock-rotate{min-width:44px;min-height:44px;height:44px}.build-dock.command-dock .dock-detail{gap:3px}.build-dock.command-dock .dock-detail>.build-item-preview{display:none}.build-dock.command-dock .dock-categories>.dock-category>span{display:none}.build-dock.command-dock .dock-more-categories .dock-category{min-height:52px}.build-dock.command-dock .dock-tray{max-height:50dvh}}@media(max-width:380px){.build-dock.command-dock .dock-categories>.dock-category:nth-of-type(n+3){display:none}.build-dock.command-dock .dock-detail:has(.dock-rotate) .dock-detail-copy{display:none}}@media(max-height:480px){.build-dock.command-dock .dock-preview-heading{padding-top:8px}.build-dock.command-dock .dock-preview-heading>span,.build-dock.command-dock .build-item-preview-large,.build-dock.command-dock .dock-preview-info>p:not(.dock-preview-reason){display:none}}.map-line-planner{position:absolute;right:18px;top:80px;z-index:12;width:min(340px,calc(100vw - 36px));max-height:calc(100% - 96px);overflow:auto;padding:16px;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:14px;font-size:12px}.map-line-planner h3{margin:0 0 8px;font-size:16px}.map-line-planner p{margin:6px 0;font-size:11px;line-height:1.4}.map-line-planner small{display:block;font-size:10px;color:var(--muted)}.map-line-planner label{display:grid;gap:4px;margin-bottom:10px}.map-line-planner input,.map-line-planner select{width:100%}.map-line-planner .stop-order{padding-left:18px}@media(max-width:600px){.map-line-planner{top:auto;bottom:54px;right:8px;width:calc(100vw - 16px);max-height:min(38dvh,calc(100% - 155px));padding:10px}.map-line-planner label{display:inline-grid;width:65%;margin-bottom:3px}.map-line-planner label:has(select){width:31%;margin-left:4%}.map-line-planner input,.map-line-planner select{min-height:38px;font-size:16px}.map-line-planner button{min-height:40px}}.freight-panel{border-top:1px solid var(--line);margin-top:24px;padding-top:24px}.freight-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:12px}.transport-summary{display:flex;flex-wrap:wrap;gap:14px;padding:16px 0;border-block:1px solid var(--line);margin:12px 0;font-size:12px}.transport-summary b{display:block;font-size:23px}.transport-summary button{margin-left:auto;max-width:140px}.transport-columns{display:grid;grid-template-columns:1fr 1fr;gap:26px}.road-choices{margin:10px 0}.road-choices button.active{background:var(--base);border-color:var(--line);color:var(--text)}.stop-order{margin:8px 0;padding:0;list-style:none}.stop-order li{align-items:center;display:flex;justify-content:space-between;padding:4px 8px;background:var(--panel);border-bottom:1px solid var(--line);font-size:12px}.stop-actions{display:flex;gap:4px}.stop-actions button{min-width:32px;min-height:32px}.transit-card{border:1px solid var(--line);border-left:5px solid;border-radius:8px;background:var(--panel);padding:14px;margin-bottom:12px}.transit-card>strong,.transit-card>span{display:block}.transit-card>span{font-size:11px;margin-top:5px;color:var(--muted)}.transit-card dl{font-size:11px}.transit-card dl div{display:flex;justify-content:space-between;gap:8px;margin:7px 0}.transit-card dd{margin:0;text-align:right}.transit-card p.service-running{color:#8fb8a7}.transit-card p.service-interrupted{color:#cfa799}.transit-empty{margin-top:24px;background:var(--panel);padding:28px;border-radius:12px}.transit-empty>span{font-size:40px;color:var(--muted)}.simulation-controls{position:absolute;z-index:3;display:flex;align-items:center;border:1px solid var(--line)}.simulation-controls>span{padding:0 7px;font-size:12px}.simulation-controls small{display:block;color:var(--muted)}.simulation-controls button{border-radius:5px;width:30px;height:30px}.simulation-controls label{font-size:10px;margin-left:5px}.simulation-controls select{width:52px;border:0;background:transparent;font-size:11px}@media(max-width:760px){.transport-columns{grid-template-columns:1fr}.simulation-controls{bottom:auto}.simulation-controls>span{max-width:90px}}.regional-station{display:grid;gap:6px;padding:12px 0;border-top:1px solid var(--line)}.regional-station p{margin:0}.regional-station small{color:var(--muted);line-height:1.5}.regional-station button{justify-self:start;min-height:40px}.transport-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);padding-bottom:10px;margin:14px 0 20px}.transport-tabs button{flex:1;min-height:40px}.transport-tabs [aria-selected=true]{background:var(--accent);color:var(--base)}.transport-mode-filter{display:flex;align-items:center;gap:12px;margin-bottom:16px}.transport-content .freight-panel:first-child{border:0;margin:0;padding:0}.transport-history{overflow-x:auto;max-width:100%}.transport-history table{border-collapse:collapse;min-width:560px;width:100%;font-size:12px}.transport-history caption{text-align:left;padding:8px 0;color:var(--muted)}.transport-history th,.transport-history td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:right;font-variant-numeric:tabular-nums}.transport-history th:first-child{text-align:left}.one-way-control{margin:14px 0;padding:12px 0;border-block:1px solid var(--line)}.one-way-control h3{margin:0 0 8px;font-size:13px}.one-way-control small{display:block;margin-top:8px;line-height:1.45;color:var(--muted)}.one-way-control button[aria-pressed=true]{background:#294b48;border-color:var(--accent);opacity:1}.road-inspector h3{margin:12px 0 8px;font-size:14px}.road-inspector h4{margin:14px 0 6px;font-size:12px;color:var(--muted)}.road-inspector p{font-size:12px;line-height:1.5}.road-od-list{padding-left:18px;font-size:12px}.road-od-list li{margin:8px 0}.road-od-list strong{display:block;color:var(--accent);font-size:11px;margin-top:3px}.road-inspector .road-choices button{min-height:40px;display:flex;align-items:center;gap:6px}.road-inspector .dock-icon{width:20px;height:20px;flex:none}.inspector:not(.show-help) .road-inspector p{display:block}.transit-fares{padding:12px 0 0;border-top:1px solid var(--line, #d8e0df);margin-top:14px}.transit-fares p{font-size:12px;line-height:1.5}.transit-fare{display:grid;grid-template-columns:100px minmax(80px,1fr) auto;align-items:center;gap:10px;margin-top:2px}.transit-fare label{display:flex;justify-content:space-between;gap:6px}.transit-fare input{width:100%;min-height:26px;accent-color:#36af97}.transit-fare output{font-variant-numeric:tabular-nums}.transit-fare .form-error{grid-column:1 / -1}@media(max-width:520px){.transit-fare{grid-template-columns:90px minmax(60px,1fr);gap:8px}.transit-fare button{grid-column:2;min-height:40px}}.transit-frequency-warning{border:1px solid #9d7840;border-radius:8px;background:#8861271c;padding:12px;margin:10px 0}.transit-frequency-warning strong{color:#e5bc79}.transit-frequency-warning p{font-size:12px;line-height:1.5}.transit-frequency-warning button{min-height:40px}.utility-deals fieldset{display:grid;gap:10px;border:1px solid var(--line);border-radius:10px;padding:12px}.utility-deals label{display:grid;gap:4px}.utility-deals input,.utility-deals select{width:100%;min-height:40px}.utility-deals button{min-height:44px}.transit-network-controls{position:absolute;top:calc(100% + 5px);right:0;width:min(390px,calc(100vw - 24px));display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--text);box-shadow:0 6px 20px #0004}.transit-network-controls [role=group]{display:flex;flex-wrap:wrap;gap:5px}.transit-network-controls button{min-height:44px;padding:7px 12px}.transit-network-controls button[aria-pressed=true]{background:#31594f;border-color:var(--accent)}.transit-network-controls label{display:flex;align-items:center;gap:8px;min-height:36px;font-size:12px}.transit-network-controls small{color:var(--muted);line-height:1.4}.transit-network-labels{position:absolute;inset:0;pointer-events:none;z-index:2}.transit-network-label{position:absolute;top:0;left:0;pointer-events:auto;min-height:38px;max-width:210px;padding:6px 11px;border:1px solid var(--line);border-left:5px solid;border-radius:7px;background:#14232ef2;color:var(--text);box-shadow:0 2px 8px #0006;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.transit-network-label small{margin-right:7px;color:var(--muted);font-size:10px}.transit-network-label[hidden]{display:none}@media(pointer:coarse){.transit-network-label{min-height:44px}}.transit-network-controls button{border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text)}.road-trip-query{padding:5px 0;border:0;background:transparent;color:#9edee0;text-align:left;cursor:pointer}.road-trip-query[aria-pressed=true]{color:#6ff;text-decoration:underline}.road-trip-query:disabled{color:inherit;cursor:default}.road-query-note button{margin:0 6px 6px 0;padding:6px 9px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);cursor:pointer}.hotspot-table{width:100%;border-collapse:collapse;font-size:12px}.hotspot-table th{text-align:left;font-weight:500;font-size:10px;letter-spacing:.6px;text-transform:uppercase;color:var(--muted);padding:4px 6px;border-bottom:1px solid var(--line)}.hotspot-table td{padding:5px 6px;border-bottom:1px solid var(--line);vertical-align:middle}.hotspot-table td b{color:#f0a58c;font-variant-numeric:tabular-nums}.hotspot-table td small{color:var(--muted);font-variant-numeric:tabular-nums}.hotspot-actions{white-space:nowrap;text-align:right}.city-manager .hotspot-actions button{padding:3px 8px;margin-left:4px}.service-overview [role=group] button{min-height:36px;padding:5px 10px}.service-overview-key{display:flex;flex-wrap:wrap;gap:5px 12px;font-size:11px}.service-overview-key span{display:flex;align-items:center;gap:5px}.service-overview-key i{width:11px;height:11px;border:1px solid #ffffff60;border-radius:2px}.service-overview-summary{display:grid;gap:2px;margin:0;font-size:12px}.service-overview-summary span{color:var(--muted);font-size:11px}.crossing-chooser-layer{position:absolute;inset:0;z-index:6;pointer-events:none;overflow:hidden}.crossing-chooser{--chooser-panel: var(--glass-tint-dense);--chooser-border: var(--glass-line);--chooser-muted: #d6dae1;--chooser-gold: #ecd9a6;--icon-detail: #09090b;position:absolute;top:0;left:0;width:min(360px,calc(100vw - 24px));box-sizing:border-box;padding:7px 8px 6px;border:1px solid var(--chooser-border);border-radius:8px;background:var(--chooser-panel);color:#f1f1f3;font-size:11px;line-height:1.35;box-shadow:0 8px 28px #0008;pointer-events:auto;will-change:transform}.crossing-chooser:not([data-side]){opacity:0}.crossing-chooser:focus{outline:none}.crossing-chooser:focus-visible{outline:1px solid var(--chooser-gold)}.crossing-chooser:after{content:"";position:absolute;left:calc(var(--pointer-x, 50%) - 7px);width:12px;height:12px;background:var(--chooser-panel);border:1px solid var(--chooser-border);transform:rotate(45deg)}.crossing-chooser[data-side=above]:after{bottom:-7px;border-top:0;border-left:0}.crossing-chooser[data-side=below]:after{top:-7px;border-bottom:0;border-right:0}.crossing-chooser[data-side=detached]:after{display:none}.crossing-head{display:flex;align-items:baseline;gap:7px;min-width:0;padding:0 0 5px 2px}.crossing-head strong{flex:0 0 auto;color:var(--chooser-gold);font-size:12px}.crossing-head span{flex:1 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--chooser-muted)}.crossing-chooser .crossing-close{flex:0 0 auto;width:22px;height:22px;margin:-2px -2px 0 0;padding:0;border:0;border-radius:4px;background:transparent;color:var(--chooser-muted);font-size:16px;line-height:1}.crossing-chooser .crossing-close:hover{background:var(--glass-fill-hover);color:#f1f1f3}.crossing-picked{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 5px;padding:0;list-style:none}.crossing-picked li{padding:1px 6px;border:1px solid #4a4256;border-radius:9px;background:#1d1a24;color:#cbb9f2;font-size:10px}.crossing-options{display:grid;gap:2px}.crossing-option{display:grid;grid-template-columns:16px 18px 52px 58px minmax(0,1fr);align-items:center;gap:6px;min-height:28px;padding:3px 6px;border:1px solid transparent;border-radius:5px;background:var(--glass-fill);color:#f1f1f3;font-size:11px;text-align:left;cursor:pointer}.crossing-option .dock-icon{width:18px;height:18px;color:#c9c9d1}.crossing-option kbd{display:inline-grid;place-items:center;width:16px;height:16px;padding:0;border:1px solid var(--glass-line);border-bottom-width:2px;border-radius:3px;background:var(--glass-fill);color:var(--chooser-muted);font:10px/1 ui-monospace,monospace}.crossing-option strong{font-weight:600}.crossing-price{color:var(--chooser-gold);font-variant-numeric:tabular-nums;text-align:right}.crossing-option small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--chooser-muted);font-size:10px}.crossing-option:hover,.crossing-option.highlighted{border-color:var(--glass-active-line);background:var(--glass-active-fill)}.crossing-option.highlighted .dock-icon{color:var(--chooser-gold)}.crossing-option.blocked{cursor:not-allowed}.crossing-option.blocked>:is(strong,.dock-icon,.crossing-price){opacity:.45}.crossing-option.blocked small{color:#e8bc9e}.crossing-option.blocked.highlighted{border-color:#6b3d33;background:#2a1d1a}.crossing-foot{margin-top:5px;padding-top:4px;border-top:1px solid var(--glass-fill-hover)}.crossing-foot p{margin:0}.crossing-foot .crossing-note{margin-bottom:3px;color:#d9d9e0}.crossing-foot .crossing-note.warning{color:#f1bd9e}.crossing-keys{display:flex;flex-wrap:wrap;align-items:center;gap:3px 9px;color:var(--chooser-muted);font-size:10px}.crossing-keys kbd{padding:0 3px;border:1px solid var(--glass-line);border-bottom-width:2px;border-radius:3px;background:var(--glass-fill);color:#d9d9e0;font:9px/1.4 ui-monospace,monospace}.crossing-total{margin-left:auto;color:var(--chooser-gold);font-size:11px;font-variant-numeric:tabular-nums}@media(max-width:520px){.crossing-option{grid-template-columns:16px 18px 52px minmax(0,1fr)}.crossing-option small{display:none}}.incident-marker.utility-warning{display:flex;align-items:center;gap:1px;min-width:16px;height:17px;padding:1px 2px;border:1px solid #e5a97459;border-radius:5px;background:#3b302b80;color:#ffce83;box-shadow:none;opacity:.8;animation:none}.utility-warning .dock-icon{width:12px;height:12px}.incident-marker.utility-warning:hover,.incident-marker.utility-warning:focus-visible{background:#3b302be8;opacity:1}.emergency-dialog{--alarm: #d9503c;width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 32px);box-sizing:border-box;overflow:auto;padding:0;border:1px solid #a8483a;border-radius:14px;background:var(--panel);color:var(--text);box-shadow:0 24px 60px #000a,0 0 0 4px #d9503c33;animation:emergency-in .42s cubic-bezier(.2,.9,.3,1.3)}.emergency-dialog.emergency-crime{--alarm: #4f7fd9;border-color:#4a69a8;box-shadow:0 24px 60px #000a,0 0 0 4px #4f7fd933}.emergency-dialog::backdrop{background:radial-gradient(circle at 50% 40%,#3a0e0a8c,#090f17d0)}.emergency-crime::backdrop{background:radial-gradient(circle at 50% 40%,#0e1a3a8c,#090f17d0)}@keyframes emergency-in{0%{transform:translateY(16px) scale(.94);opacity:0}55%{transform:translateY(0) scale(1.02) rotate(-.6deg);opacity:1}75%{transform:rotate(.6deg)}to{transform:none}}.emergency-banner{padding:6px 16px;background:repeating-linear-gradient(-45deg,var(--alarm) 0 14px,color-mix(in srgb,var(--alarm) 70%,#000) 14px 28px);color:#fff;font-weight:800;font-size:13px;letter-spacing:.32em;text-align:center;text-shadow:0 1px 2px #0008;animation:emergency-flash 1.1s steps(2,jump-none) infinite}@keyframes emergency-flash{50%{filter:brightness(1.35)}}.emergency-head{display:grid;grid-template-columns:148px 1fr;gap:16px;align-items:start;padding:18px 20px 6px}.emergency-portrait{width:148px;height:148px;border-radius:12px;border:3px solid var(--alarm);box-shadow:0 6px 18px #0009;animation:emergency-shout 2.6s ease-in-out infinite}@keyframes emergency-shout{0%,86%,to{transform:none}89%{transform:translate(-2px) rotate(-1deg)}92%{transform:translate(2px) rotate(1deg)}95%{transform:translate(-1px)}}.emergency-from{margin:0 0 4px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.emergency-head h2{margin:0 0 10px;font-size:22px;line-height:1.2}.emergency-head blockquote{position:relative;margin:0;padding:10px 12px;border-left:3px solid var(--alarm);border-radius:0 8px 8px 0;background:#0003;font-size:15px;font-weight:600;line-height:1.45}.emergency-status{display:grid;gap:4px;margin:8px 20px 0;padding:0;list-style:none;color:var(--muted);font-size:13px}.emergency-status li:before{content:"◆ ";color:var(--alarm)}.emergency-dispatch,.emergency-none{margin:14px 20px 0}.emergency-dispatch h3{margin:0 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}.emergency-dispatch ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}.emergency-dispatch li{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.emergency-dispatch li.unavailable{opacity:.6}.emergency-dispatch li div{display:grid;gap:2px;min-width:0}.emergency-dispatch small{color:var(--muted)}.emergency-dispatch button,.emergency-actions button{flex:none;padding:8px 14px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-weight:600;cursor:pointer}.emergency-dispatch button:not(:disabled){border-color:var(--alarm);background:color-mix(in srgb,var(--alarm) 70%,#222);color:#fff}.emergency-dispatch button:disabled{cursor:default}.emergency-none,.emergency-error{color:#f0a796;font-size:13px}.emergency-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;padding:18px 20px 20px}.emergency-actions .emergency-resume{border-color:var(--accent);background:var(--accent);color:#1d1a12}@media(max-width:520px){.emergency-head{grid-template-columns:1fr}.emergency-portrait{width:112px;height:112px}.emergency-dispatch li{flex-direction:column;align-items:stretch}}@media(prefers-reduced-motion:reduce){.emergency-dialog,.emergency-banner,.emergency-portrait{animation:none}}.emergency-layer,.complaint-layer{position:absolute;inset:0;pointer-events:none;z-index:1}.incident-marker.emergency-marker{pointer-events:auto;width:24px;min-width:24px;height:24px;padding:0;border-width:1px;font-size:13px;line-height:1;box-shadow:none;opacity:.85}.emergency-marker.fire{border-color:#ff8a3dcc;background:#8a2a14b3}.incident-marker.emergency-marker.crime{border-color:#6f9cff99;background:#1c2f6ab3;animation:none}.incident-marker.emergency-marker.handled{animation:none;opacity:.65}.incident-marker.emergency-marker:hover,.incident-marker.emergency-marker:focus-visible{opacity:1}.complaint-marker{position:absolute;top:0;left:0;display:flex;align-items:center;gap:2px;padding:0 5px 0 3px;border:0;border-radius:9px;background:#2a2f31a6;color:var(--text);font-size:10px;font-weight:600;line-height:16px;white-space:nowrap;pointer-events:auto;cursor:pointer;opacity:.85}.complaint-marker[hidden]{display:none}.complaint-marker .dock-icon{width:12px;height:12px}.complaint-marker.severe{background:#6e2f22a6}.complaint-marker:hover,.complaint-marker:focus-visible{background:#2a2f31e6;outline:2px solid var(--accent);opacity:1}.complaint-marker.severe:hover,.complaint-marker.severe:focus-visible{background:#6e2f22e6}.complaint-list{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none}.complaint-list li{padding:1px 7px;border-radius:10px;background:#6e2f2299;font-size:11px}.natural-feature-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden}.natural-feature-label{position:absolute;left:0;top:0;pointer-events:auto;border:0;padding:3px 6px;background:#f7f4e3c9;color:#244a3a;border-radius:5px;white-space:nowrap;font:italic 12px Georgia,serif;box-shadow:0 1px 4px #163c2426}.natural-feature-label[hidden]{display:none}.natural-feature-label.feature-river,.natural-feature-label.feature-lake,.natural-feature-label.feature-bay{color:#184b70}.natural-feature-label:hover,.natural-feature-label:focus-visible{background:#fffbe9;outline:2px solid #244a3a}.request-action{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.request-action button{padding:6px 9px}.incident-marker.cooperation-marker{border-radius:7px;background:#182a34;color:#fff;height:auto;padding:4px 6px;line-height:1;animation:none}.cooperation-marker small{display:block;font-size:9px}.treasury-grants{margin:16px 0;padding:12px;border:1px solid #41515b;border-radius:10px}.treasury-grants summary{cursor:pointer;font-weight:700}.treasury-grants form{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin:14px 0}.treasury-grants label{display:grid;gap:4px;font-size:12px}.treasury-grants input,.treasury-grants select{min-width:0;width:100%;padding:7px;border:1px solid #51616c;border-radius:6px;background:#15232d;color:#edf4f5}.treasury-grants input[type=number]{width:120px}.grant-note{flex:1 1 220px}.grant-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #41515b;padding:10px 0}.grant-row p{margin:5px 0;overflow-wrap:anywhere}.month-report,.hall-of-fame{padding:16px;border:1px solid #39505c;border-radius:10px;background:#172a35;color:#dce8ed}.month-report-heading{display:flex;justify-content:space-between;align-items:center}.month-report-heading>span{font-size:32px;color:#d2bc7e}.month-report-heading small{letter-spacing:.1em;color:#a1cbbb;font-size:9px}.month-report h3,.hall-of-fame h3{margin:5px 0 12px}.month-report progress{width:100%;accent-color:#94cbb6}.month-grade{display:flex;gap:12px;align-items:baseline;margin:12px 0}.month-grade strong{font-size:32px;color:#e8d59e}.month-grade span{color:#bfd3dc;font-size:12px}.month-scores{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 16px}.month-scores>div{min-width:0;display:grid;gap:5px}.month-scores dt{text-transform:capitalize;color:#b3c9d4;font-size:11px}.month-scores dd{margin:0;font-size:14px;font-weight:650}.month-scores meter{width:100%;height:6px}.month-report p,.month-report details{font-size:12px;line-height:1.6}.month-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.month-actions button{background:#294638;color:#d8e9df;border:1px solid #78988a;border-radius:7px;padding:9px 12px;font-size:12px}.hall-of-fame{margin:12px 0}.hall-of-fame h3{font-size:14px;display:flex;flex-wrap:wrap;gap:6px 12px;justify-content:space-between}.hall-of-fame h3 span{font-size:11px;color:#a8d2bb}.hall-of-fame summary{cursor:pointer;font-size:12px;padding:6px 0}.hall-entries{display:grid;gap:8px;max-height:300px;overflow:auto}.hall-entries>details{border-top:1px solid #39505c}.hall-entries summary strong{float:right}.region-overview{position:fixed;inset:0;height:100dvh;overflow:hidden;background:#172a26;color:#eeeade;padding:0;font-family:inherit}.region-heading{position:absolute;top:18px;left:22px;right:22px;z-index:5;display:flex;justify-content:space-between;gap:20px;align-items:center;pointer-events:none}.region-heading>div,.region-heading-actions{pointer-events:auto;background:#172a26ed;border:1px solid #d5e0c435;border-radius:12px;padding:12px 16px;box-shadow:0 4px 18px #14211925}.region-heading-actions{display:flex;gap:8px}.region-heading h1{font-size:clamp(20px,2vw,30px);margin:4px 0;max-width:40vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.region-heading p,.region-atlas>p{color:#a9bcb0;font-size:12px;margin:4px 0}.shared-region-layout{position:absolute;inset:0}.region-atlas{position:absolute;inset:0 404px 0 0;min-width:0}.region-atlas .region-map{position:absolute;inset:0;border:0;border-radius:0;padding:0}.region-atlas>p{position:absolute;bottom:12px;left:22px;pointer-events:none;color:#fff6df;text-shadow:0 1px 4px #142619}.region-atlas .region-map svg{width:100%;height:100%}.region-atlas .region-map-tools{position:absolute;bottom:78px;left:22px;z-index:4;margin:0;padding:10px;background:#172a26ed;border:1px solid #d5e0c435;border-radius:10px}.region-atlas .region-map-tools label{margin:0 4px}.region-map{background:#263d35;border:1px solid #b5c7ae40;border-radius:12px;padding:14px;overflow:hidden}.region-map svg{display:block;width:min(100%,70vh);height:auto;margin-inline:auto;aspect-ratio:1;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}.region-map-tools{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:10px}.region-map-tools label{display:flex;align-items:center;gap:5px;margin-left:auto;font-size:12px}.region-map-tools input{width:auto}.region-map rect:focus{outline:none;stroke:#fff;stroke-width:2}.region-map-preview{max-width:580px;margin:auto}.region-map-preview svg{width:min(100%,350px)}.region-details{position:absolute;right:22px;top:132px;bottom:22px;z-index:5;width:360px;display:flex;flex-direction:column;overflow:hidden;padding:0;background:#172a26f5;color:#eeeade;border:1px solid #d5e0c435;border-radius:12px;box-shadow:0 5px 22px #07140f60}.region-breadcrumb{display:flex;align-items:center;gap:8px;font-size:11px;color:#b9c8b4}.region-breadcrumb a{color:#ece9d6;text-decoration:none}.region-breadcrumb a:hover{text-decoration:underline}.region-cities-heading{flex-shrink:0;padding:20px 20px 12px}.region-cities-heading .eyebrow,.region-selected-city .eyebrow{color:#cfb879;font-size:10px}.region-details .region-cities-heading h2{display:flex;align-items:center;gap:10px;margin:6px 0 0;font-size:24px;letter-spacing:-.7px}.region-cities-heading h2>span{border-radius:20px;padding:3px 8px;font-size:11px;font-weight:600;letter-spacing:0;color:#cfb879;background:#cfb87915}.region-cities-heading p{margin:6px 0 0;color:#b4bcaa}.region-details .region-city-search{margin-top:12px;padding:9px 12px;border-radius:8px;font-size:12px}.region-details .region-city-search::placeholder{color:#a3ae98}.region-details .region-connection-note{color:#cfb879;font-size:11px}.region-details .region-city-list{list-style:none;padding:2px 12px 12px;margin:0;min-height:80px;flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#627365 transparent}.region-city-list>li{display:flex;align-items:stretch;margin-top:6px;border:1px solid #b4bcaa30;border-radius:10px;background:#142a23;transition:background .15s ease,border-color .15s ease}.region-city-list>li.selected,.region-city-list>li.selected:hover{background:#2b382b;border-color:#cfb87999}.region-city-list>li:hover{background:#203b30;border-color:#9aae895e}.region-city-entry{display:grid;flex:1;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;align-items:center;min-width:0;padding:12px 6px 12px 13px;color:inherit;text-decoration:none;border-radius:9px 0 0 9px}.region-city-name{font-size:13px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.region-city-summary{grid-column:1;grid-row:2;display:flex;align-items:center;gap:6px;font-size:10px;color:#b4bcaa;white-space:nowrap}.region-city-enter{grid-column:2;grid-row:1 / 3;font-size:18px;color:#cfb879}.region-overview .region-details .region-city-locate{padding:0 11px;flex-shrink:0;background:transparent;color:#a9b59e;border:0;border-left:1px solid #b4bcaa25;border-radius:0 9px 9px 0}.region-overview .region-city-locate[aria-pressed=true]{color:#cfb879}.region-overview .region-city-entry:focus-visible,.region-overview .region-city-continue:focus-visible,.region-overview .region-breadcrumb a:focus-visible{outline:2px solid #cfb879;outline-offset:3px}.region-city-list>.region-city-empty{padding:16px 10px;border:0;background:none;color:#b4bcaa;line-height:1.6}.region-selected-city{flex-shrink:0;padding:14px 18px 18px;border-top:1px solid #b4bcaa30;background:#142a23}.region-selected-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:4px 0 10px}.region-selected-heading h3{margin:0;min-width:0;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.region-overview .region-selected-heading button{flex-shrink:0;padding:5px 8px;font-size:10px;background:transparent;color:#b4bcaa}.region-details .region-city-continue{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:11px 13px;border-radius:8px;text-decoration:none;font-size:12px;font-weight:600}.region-city-entry[aria-disabled=true],.region-city-continue[aria-disabled=true]{opacity:.55;cursor:wait}.region-city-management{flex:1;min-height:0;overflow:auto;padding:0 18px 18px;overscroll-behavior:contain}.region-details-expanded .region-city-list{flex:0 0 110px}.region-details>.eyebrow{color:#cfb879}.region-overview .activity{z-index:7}.region-city-management[hidden],.region-team[hidden]{display:none}.region-details h2{margin:8px 0;font-size:30px}.region-details p{font-size:13px;line-height:1.55}.region-details form{margin-top:18px}.region-details details{margin-top:20px}.region-details summary{cursor:pointer;font-weight:600}.region-details ul{padding-left:16px;font-size:12px;line-height:1.5}.region-details label,.region-setup label{display:flex;flex-direction:column;gap:6px;font-size:13px}.region-details input,.region-details select,.region-setup input,.region-setup select{padding:10px;border:1px solid #b4bcaa40;background:#142a23;color:#eeeade;border-radius:6px;min-width:0;width:100%}.region-details button,.region-setup button,.region-overview button{padding:9px 13px;border-radius:6px}.region-details .primary-button{width:100%;margin-top:12px}.region-metrics{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0}.region-metrics span{display:flex;flex-direction:column;font-size:12px;gap:5px}.region-metrics b{font-size:20px}.region-team{position:absolute;top:118px;right:22px;z-index:8;width:min(680px,calc(100% - 44px));max-height:calc(100dvh - 150px);overflow:auto;background:#172a26f5;border:1px solid #809e8050;border-radius:12px;box-shadow:0 6px 30px #0004;padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:30px}.region-team-close{grid-column:1 / -1;justify-self:end}.region-team p{max-width:520px;color:#b4c6b9;line-height:1.6}.region-members>div{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:12px 0;border-bottom:1px solid #ffffff20}.region-members span{font-size:12px}.region-members small{margin-left:auto}.region-members select{background:#203d32;color:#f7efdc;padding:6px}.region-setup{border-top:1px solid #82927e50;margin-top:20px;padding-top:20px;display:grid;gap:16px}.region-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.region-atlas .region-map-tools button{background:#395b47;color:#fff5da;border:1px solid #d4e1c750}.region-overview .region-heading button{background:#243b30;border:1px solid #b4bcaa40;color:#eeeade}.region-overview .region-details button{background:#243b30;color:#eeeade;border:1px solid #b4bcaa40}.region-overview .primary-button{background:#cfb879;color:#192a22}.region-overview .primary-button:hover{background:#ddc78d}.region-overview button:disabled{opacity:.5}.region-overview .toast{z-index:100}@media(max-width:850px){.shared-region-layout,.region-team{grid-template-columns:1fr}.region-overview{padding:0}.region-map svg{max-height:none}.region-heading{align-items:start}.region-heading button{font-size:12px}.region-fields{grid-template-columns:1fr 1fr}}@media(min-width:701px)and (max-width:1000px){.region-details{width:320px}.region-atlas{right:364px}}.region-3d-stage{position:relative;width:100%;height:100%;overflow:hidden;border-radius:0}.region-3d-stage>canvas{display:block;touch-action:none}.region-3d-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.region-3d-labels button{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;background:#18372cbd;color:#fff2cf;border:1px solid #e2e9cb40;box-shadow:0 2px 8px #0002;white-space:nowrap;font-size:11px;padding:4px 7px!important}.region-3d-labels button.selected{background:#f1e3b8;color:#243f32;border-color:#fff3c9}.region-view-toggle{position:absolute;left:22px;top:135px;z-index:4;display:flex;gap:6px;margin-bottom:8px}.region-labels-hidden{visibility:hidden}.region-render-status{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);z-index:6;padding:14px 22px;border-radius:12px;background:#172a26ed}.region-render-progress{position:absolute;left:50%;top:18px;transform:translate(-50%);z-index:6;display:grid;grid-template-columns:auto auto;align-items:center;gap:6px 10px;padding:9px 14px 10px;border-radius:10px;background:#172a26ed;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none}.region-render-bar{grid-column:1 / -1;height:3px;border-radius:2px;background:#ffffff1f;overflow:hidden}.region-render-bar>span{display:block;height:100%;background:#f2c46d;transition:width .2s linear}.region-spinner{width:14px;height:14px;border-radius:50%;border:2px solid #f2c46d;border-top-color:transparent;box-sizing:border-box;animation:region-spin .9s linear infinite}@keyframes region-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.region-spinner{animation:none}}@media(max-width:700px){.region-overview .activity{bottom:calc(min(44dvh,380px) + 22px);left:10px;max-width:calc(100% - 20px)}.region-heading{top:10px;left:10px;right:10px;gap:8px}.region-heading>div{padding:9px 12px;flex:1;min-width:0}.region-heading h1{max-width:58vw}.region-heading p{max-width:58vw;font-size:10px}.region-heading .eyebrow{font-size:9px}.region-heading-actions{padding:6px;flex-direction:column;gap:4px}.region-view-toggle{top:125px;left:10px}.region-atlas .region-map-tools{left:10px;bottom:64px;gap:3px;padding:5px}.region-atlas .region-map-tools button{padding:7px 9px}.region-atlas .region-map-tools label{font-size:11px}.region-render-progress{top:auto;bottom:112px;font-size:12px}.region-details{inset:auto 10px 10px;width:auto;height:min(44dvh,380px);border-radius:12px}.region-atlas{inset:0 0 calc(min(44dvh,380px) + 24px) 0}.region-cities-heading{padding:12px 14px 8px}.region-cities-heading>div{display:flex;justify-content:space-between;align-items:center;gap:10px}.region-details .region-cities-heading h2{margin:0;font-size:18px}.region-cities-heading>div>.eyebrow{display:none}.region-cities-heading p{font-size:11px;margin-top:3px}.region-details .region-city-search{margin-top:8px;padding:7px 10px}.region-city-entry{padding-top:9px;padding-bottom:9px}.region-selected-city{padding:10px 14px 12px}.region-selected-city>.eyebrow{display:none}.region-selected-heading{margin:0 0 7px}.region-details .region-city-continue{padding:9px 11px}.region-details-expanded{height:calc(100dvh - 150px)}.region-details-expanded .region-city-list{flex-basis:70px;min-height:70px}.region-team{right:10px;width:calc(100% - 20px)}.region-atlas>p{display:none}}.region-view-toggle button{background:#2a4739;color:#e8ebda;border:1px solid #a7bba44d}.region-view-toggle button[aria-pressed=true]{background:#d7ddc1;color:#233f30}.region-map-tools>span{font-size:11px;color:#c3cfbb}.map-picker{min-width:0;margin-block:16px}.map-seed-controls{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.map-seed-controls label{flex:1;min-width:130px}.map-seed-controls input{font-family:monospace;letter-spacing:.13em}.map-seed-controls button{min-height:42px;padding:8px 12px;border:1px solid #455563;border-radius:6px;background:var(--surface);color:var(--text)}.map-archetypes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.featured-maps{margin:10px 0;padding:10px;border:1px solid #455563;border-radius:8px}.featured-maps summary{cursor:pointer;font-weight:600}.featured-maps p{font-size:12px;color:var(--muted)}.featured-map-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.featured-map-list button{display:grid;gap:4px;padding:9px;background:#17232b;color:var(--text);border:1px solid #455563;border-radius:6px;text-align:left}.featured-map-list button[aria-pressed=true]{border-color:var(--accent, #80d4ba);background:var(--surface)}.featured-map-list small{font-size:10px;line-height:1.4}.featured-map-list code{font-size:11px;letter-spacing:.06em;color:#b5d7cd}.map-card{display:flex;flex-direction:column;align-items:start;gap:6px;padding:10px;text-align:left;min-width:0;background:#17232b;color:var(--text);border:1px solid #455563;border-radius:8px}.map-card.selected{border-color:var(--accent, #80d4ba);background:var(--surface)}.map-card>span,.map-card small{font-size:11px;line-height:1.4}.map-thumbnail,.map-preview-loading{width:100%;aspect-ratio:1;height:auto;border-radius:5px;image-rendering:pixelated}.map-preview-loading{display:grid;place-items:center;background:#263b39}@media(max-width:600px){.map-archetypes{grid-template-columns:repeat(2,minmax(0,1fr))}}.map-editor{width:min(1080px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:22px;overflow:auto;color:#e5f0eb;background:#172a34;border:1px solid #54716f;border-radius:18px}.map-editor::backdrop{background:#08141de0}.map-editor header,.map-editor footer{display:flex;align-items:center;justify-content:space-between;gap:14px}.map-editor h2{margin:5px 0}.map-editor p,.map-editor footer span{color:#b4c7c5;font-size:.84rem}.map-editor-grid{display:grid;grid-template-columns:210px minmax(0,1fr);gap:20px;margin:15px 0}.map-editor aside{display:grid;align-content:start;gap:10px;max-height:62vh;overflow-y:auto;scrollbar-gutter:stable;padding-right:5px}.map-editor label{display:grid;gap:4px;font-size:.85rem}.map-editor select{width:100%;padding:7px;color:inherit;background:#223c46;border:1px solid #58716e;border-radius:6px}.map-editor button{padding:8px 12px;border-radius:7px}.map-editor .map-editor-check{display:flex;align-items:center}.map-editor-board{width:min(100%,62vh);aspect-ratio:1;overflow:auto;background:#091a23;border:1px solid #69807a;border-radius:7px}.map-editor canvas{display:block;height:auto;image-rendering:pixelated;touch-action:none}.map-editor-surface{position:relative}.map-editor-brush{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.map-editor-brush.is-sculpting>circle:first-of-type{animation:map-editor-sculpt .7s ease-in-out infinite alternate}@keyframes map-editor-sculpt{0%{opacity:.55}to{opacity:1}}@media(prefers-reduced-motion:reduce){.map-editor-brush.is-sculpting>circle:first-of-type{animation:none}}.map-editor canvas:focus{outline:2px solid #a9dcc4;outline-offset:-3px}.map-editor output{display:block;min-height:2.8em;padding-top:9px;color:#cee9df;font-size:.85rem}.map-editor footer span{margin-right:auto}.map-editor-border{display:grid;gap:7px;margin:0;padding:9px;border:1px solid #58716e;border-radius:7px}.map-editor-border legend{font-size:.8rem;color:#b4c7c5}.map-editor-border p{margin:0}@media(max-width:700px){.map-editor{padding:14px}.map-editor-grid{grid-template-columns:1fr}.map-editor aside{grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-height:28vh}.map-editor aside p{grid-column:1 / -1;margin:0}.map-editor-border{grid-column:1 / -1;grid-template-columns:1fr 1fr}.map-editor-board{width:min(100%,38vh)}.map-editor footer{flex-wrap:wrap}.map-editor footer span{width:100%}}.iso-city{display:block;width:100%;height:auto;overflow:visible}.iso-grass{fill:#35633f}.iso-meadow{fill:#3d7046}.iso-road{fill:#2b333c}.iso-lane{stroke:#98a3ae;stroke-width:1;stroke-dasharray:3 3;opacity:.7}.iso-water{fill:#2c6f8b}.iso-water-shine{fill:#5aa6c4;opacity:.25;animation:iso-shimmer 3.2s ease-in-out infinite}.iso-bridge{fill:#6b6256}.iso-trunk{fill:#5a4632}.iso-canopy{fill:#3f8a4c}.iso-canopy-light{fill:#6fb86f;opacity:.7}.iso-window{fill:#ffd98a;opacity:0;animation:iso-windows 24s ease-in-out infinite}.iso-town{animation:iso-dusk 24s ease-in-out infinite}.iso-vehicle{fill:#e5edf3;animation:iso-drive var(--iso-trip) linear infinite;transform:translate(var(--iso-x0),var(--iso-y0))}.iso-bus{fill:#80c9ac}.iso-car{fill:#f2c46d}.iso-ground,.iso-block{transform-box:fill-box;transform-origin:50% 100%}.iso-clickable{cursor:pointer}.iso-clickable:hover{filter:brightness(1.18)}.iso-grow .iso-ground{animation:iso-fade .7s ease-out both;animation-delay:var(--iso-delay)}.iso-grow .iso-block{animation:iso-rise .8s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--iso-delay) + .32s)}.iso-loop .iso-ground{animation:iso-fade-loop 6s ease-in-out infinite both;animation-delay:var(--iso-delay)}.iso-loop .iso-block{animation:iso-rise-loop 6s cubic-bezier(.2,.8,.2,1) infinite both;animation-delay:calc(var(--iso-delay) + .32s)}@keyframes iso-fade{0%{opacity:0;transform:translateY(6px)}}@keyframes iso-rise{0%{opacity:0;transform:scaleY(0)}}@keyframes iso-fade-loop{0%,to{opacity:0;transform:translateY(6px)}12%,78%{opacity:1;transform:none}}@keyframes iso-rise-loop{0%,to{opacity:0;transform:scaleY(0)}14%,70%{opacity:1;transform:none}}@keyframes iso-shimmer{50%{opacity:.45}}@keyframes iso-dusk{0%,40%{filter:brightness(1) saturate(1)}55%,85%{filter:brightness(.55) saturate(.75)}}@keyframes iso-windows{0%,42%{opacity:0}56%,84%{opacity:1}}@keyframes iso-drive{0%{transform:translate(var(--iso-x0),var(--iso-y0))}to{transform:translate(var(--iso-x1),var(--iso-y1))}}@media(prefers-reduced-motion:reduce){.iso-city *{animation:none!important}}.local-start{display:grid;gap:14px}.local-start .local-help{margin:0;font-size:12px;line-height:1.6;color:var(--muted)}.local-preset{display:grid;align-content:start;gap:10px;text-align:left;border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:17px}.local-preset.selected{border-color:var(--line);background:var(--panel);box-shadow:inset 0 0 0 1px #548162}.local-preset>span:last-child{font-size:12px;line-height:1.6;color:var(--muted)}.local-preset strong{font-size:15px}@media(max-width:480px){.local-preset{gap:6px;padding:13px}}.lobby .setup-intro h2{font-size:23px;letter-spacing:-.03em;margin:0 0 8px}.lobby .setup-intro p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}.lobby .region-setup{border:0;margin:0;padding:0}.lobby .city-setup{gap:18px}.setup-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0;border:0;padding:0;margin:0}.setup-choices legend{padding:0 0 10px;font-size:14px;font-weight:500}.lobby .setup-choice{display:grid;grid-template-columns:28px 1fr;gap:5px 10px;text-align:left;padding:15px;background:#ffffff03;color:var(--text);border:1px solid var(--line);border-radius:12px}.lobby .setup-choice.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.setup-choice-mark{grid-row:1 / 3;align-self:center;color:var(--accent);font-size:26px;line-height:1}.setup-choice strong{font-size:14px}.setup-choice small{color:var(--muted);line-height:1.45;font-size:12px;font-weight:400}.setup-landscape{display:flex;align-items:center;gap:14px;min-height:68px;border-radius:10px;padding:10px 12px;background:#ffffff04}.setup-landscape .map-thumbnail{width:58px;height:58px;border-radius:6px;flex-shrink:0}.setup-landscape>div{display:grid;gap:5px}.setup-landscape strong{font-size:14px}.setup-landscape span{font-size:12px;color:var(--muted);line-height:1.5}.setup-options{border-top:1px solid var(--line);padding-top:13px;margin-top:4px}.setup-options>summary{color:var(--muted);font-size:13px;font-weight:500;cursor:pointer;padding:4px 0}.setup-options-content{display:grid;gap:16px;padding-top:16px}.setup-submit{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:8px}.setup-submit p{font-size:13px;margin:0;line-height:1.7}.setup-submit small{color:var(--muted);font-size:12px}.lobby .setup-submit .primary-button,.lobby .join-region .primary-button,.setup-resume .primary-button{background:var(--accent);color:var(--base);padding:14px 20px;font-weight:600;border-radius:10px}.lobby .setup-submit .primary-button:hover,.lobby .join-region .primary-button:hover{filter:brightness(1.07)}.setup-resume{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px;margin-bottom:12px;border-radius:12px;border:1px solid var(--line);background:#ffffff05}.setup-resume>div{display:grid;gap:5px;min-width:0}.setup-resume small{font-size:10px;letter-spacing:.12em;color:var(--accent)}.setup-resume strong{overflow-wrap:anywhere}.join-region{display:grid;gap:20px}.invite-pending{border:1px solid var(--line);background:#ffffff05;border-radius:10px;padding:14px;font-size:14px}.invite-link{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;max-width:100%}.invite-link label{display:grid;gap:8px;flex:1;min-width:150px;font-size:13px}.invite-link input{width:100%;min-width:0;box-sizing:border-box;border:1px solid var(--line);border-radius:7px;padding:10px;background:var(--base);color:var(--text);font:inherit}.invite-link>small{flex-basis:100%;font-size:12px;color:var(--muted)}.invite-link-status{flex-basis:100%;font-size:12px}.invite-link-status:empty{display:none}.invite-link-compact{align-items:center}.invite-link-compact label{display:block;flex:none;min-width:0}.invite-link-compact input{display:none}.invite-link-compact.invite-link-error input{display:block;margin-top:6px}.region-team .invite-link input{background:#172a26;color:#eeeade;border-color:#d5e0c435}.lobby button:focus-visible,.setup-options summary:focus-visible,.invite-link button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media(max-width:580px){.setup-choices,.lobby .region-fields{grid-template-columns:1fr}.lobby .setup-choice{padding:12px}.setup-submit{flex-direction:column-reverse;align-items:stretch;gap:12px}.setup-submit p{text-align:center}.setup-resume{flex-wrap:wrap}.setup-resume button{flex:1}.invite-link>button{width:100%}.invite-link-compact>button{width:auto}}.landing{--landing-glow: #80c9ac;--landing-warm: #f2c46d;--landing-rose: #e8a090;--landing-max: 1180px;position:fixed;inset:0;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;background:radial-gradient(70% 45% at 78% 8%,#80c9ac1c,transparent 70%),radial-gradient(45% 35% at 8% 58%,#f2c46d12,transparent 70%),var(--base);color:var(--text);scroll-padding-top:84px}.landing:before{content:"";position:absolute;inset:0 0 auto;height:1100px;pointer-events:none;background-image:repeating-linear-gradient(30deg,#ffffff07 0 1px,transparent 1px 44px),repeating-linear-gradient(-30deg,#ffffff07 0 1px,transparent 1px 44px);-webkit-mask-image:linear-gradient(#000 40%,transparent);mask-image:linear-gradient(#000 40%,transparent)}.landing>*{position:relative}.landing-skip{font-weight:600}.landing-brand{display:inline-flex;align-items:center;gap:10px;font-family:Space Grotesk,DM Sans,sans-serif;font-weight:600;font-size:19px;color:var(--text);text-decoration:none;letter-spacing:-.01em}.landing-brand .brand-icon{transition:transform .2s cubic-bezier(.3,1.6,.5,1)}.landing-brand:hover .brand-icon{transform:rotate(-8deg) scale(1.08)}.landing main{max-width:var(--landing-max);margin:0 auto;padding:0 clamp(16px,4vw,32px)}.landing .eyebrow{display:block;font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--accent)}.landing-hero{display:grid;grid-template-columns:minmax(0,9fr) minmax(0,11fr);align-items:center;gap:clamp(28px,5vw,64px);min-height:calc(100svh - 84px);padding:40px 0 72px}.landing-tag{display:inline-block;padding:6px 12px;border-radius:999px;border:1px solid #f2c46d55;background:#f2c46d14;color:var(--landing-warm);font-size:12px;font-weight:600;letter-spacing:.02em;animation:landing-in .7s ease-out both}.landing-hero-copy h1{font-family:Space Grotesk,DM Sans,sans-serif;font-size:clamp(38px,5vw,62px);line-height:1.04;letter-spacing:-.03em;margin:20px 0 22px;animation:landing-in .7s 60ms ease-out both}.landing-hero-copy h1 em{position:relative;display:inline-block;font-style:normal;background:linear-gradient(100deg,var(--landing-glow),#bce08a);-webkit-background-clip:text;background-clip:text;color:transparent}.landing-squiggle{position:absolute;left:0;right:0;bottom:-.16em;width:100%;height:.28em;overflow:visible}.landing-squiggle path{fill:none;stroke:var(--landing-warm);stroke-width:4;stroke-linecap:round;stroke-dasharray:320;stroke-dashoffset:320;animation:landing-draw .9s .7s ease-out forwards}.landing-hero-copy>p{max-width:46ch;font-size:clamp(16px,1.4vw,18px);line-height:1.65;color:var(--muted);margin:0 0 30px;animation:landing-in .7s .12s ease-out both}.landing-actions{display:flex;flex-wrap:wrap;gap:12px;animation:landing-in .7s .2s ease-out both}.landing-cta{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;padding:13px 22px;border:1px solid transparent;border-radius:14px;background:var(--accent);color:var(--base);font-family:Space Grotesk,DM Sans,sans-serif;font-weight:600;font-size:16px;line-height:1.2;cursor:pointer;transition:transform .2s cubic-bezier(.3,1.6,.5,1),box-shadow .2s ease,background .16s ease;box-shadow:0 10px 30px #80c9ac2a}.landing-cta small{font-family:DM Sans,sans-serif;font-weight:500;font-size:12px;opacity:.75}.landing-cta:hover{transform:translateY(-3px) rotate(-1deg);box-shadow:0 16px 36px #80c9ac3a}.landing-cta:active{transform:translateY(0) scale(.98)}.landing-cta-ghost{background:#ffffff08;color:var(--text);border-color:var(--line);box-shadow:none}.landing-cta-ghost:hover{background:#ffffff10;box-shadow:none;transform:translateY(-3px) rotate(1deg)}.landing-hero-art{position:relative;animation:landing-in .9s .12s ease-out both}.landing-hero-art:before{content:"";position:absolute;inset:10% -6% -4%;border-radius:50%;background:radial-gradient(closest-side,#80c9ac22,transparent);filter:blur(20px)}.landing-hero-art .iso-city{position:relative;transform:scale(1.14);transform-origin:50% 60%;filter:drop-shadow(0 34px 40px #00000066)}.landing-hero-caption{position:relative;margin:18px 0 0;text-align:center;font-size:14px;color:var(--text)}.landing-hero-caption span{color:var(--muted)}.landing-section-heading{max-width:640px;margin-bottom:34px}.landing-section-heading h2{font-family:Space Grotesk,DM Sans,sans-serif;font-size:clamp(26px,3vw,36px);line-height:1.12;letter-spacing:-.02em;margin:12px 0 0}.landing-section-heading p{margin:14px 0 0;color:var(--muted);line-height:1.6}.landing-stories,.landing-days{padding:72px 0;border-top:1px solid var(--line)}.landing-stories ul{list-style:none;margin:0;padding:8px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(196px,1fr));gap:22px}.landing-stories li{--tilt: -1.6deg;--ink: var(--accent);position:relative;padding:22px 22px 24px;border-radius:14px;background:linear-gradient(165deg,#1c2733,#151e27);border:1px solid var(--line);box-shadow:0 18px 40px #0000004a;transform:rotate(var(--tilt));transition:transform .22s cubic-bezier(.3,1.6,.5,1)}.landing-stories li:nth-child(2){--tilt: 1.4deg;--ink: var(--landing-warm)}.landing-stories li:nth-child(3){--tilt: -.8deg;--ink: var(--landing-rose)}.landing-stories li:nth-child(4){--tilt: 1.8deg;--ink: #9ab8f0}.landing-stories li:nth-child(5){--tilt: -1.2deg;--ink: #bce08a}.landing-stories li:hover{transform:rotate(0) translateY(-4px) scale(1.02)}.landing-stories li:before{content:"";position:absolute;top:-9px;left:50%;width:54px;height:16px;transform:translate(-50%) rotate(-2deg);background:color-mix(in srgb,var(--ink) 55%,transparent);border-radius:2px}.landing-stories h3{font-family:Space Grotesk,DM Sans,sans-serif;font-size:18px;margin:4px 0 8px;color:var(--ink);letter-spacing:-.01em}.landing-stories p{margin:0;font-size:14px;line-height:1.65;color:var(--muted)}.landing-days ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.landing-days li{position:relative;padding-top:18px;border-top:2px dashed var(--line)}.landing-day{display:inline-block;padding:4px 10px;border-radius:8px;background:#f2c46d1f;color:var(--landing-warm);font-family:Space Grotesk,DM Sans,sans-serif;font-weight:700;font-size:13px;letter-spacing:.04em;margin-bottom:12px;transform:rotate(-2deg)}.landing-days h3{font-family:Space Grotesk,DM Sans,sans-serif;font-size:20px;margin:0 0 8px;letter-spacing:-.01em}.landing-days li p{margin:0;font-size:14px;line-height:1.65;color:var(--muted)}.landing-days-note{margin:44px 0 0;padding-top:18px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}.landing .toast{position:fixed}@keyframes landing-in{0%{opacity:0;transform:translateY(14px)}}@keyframes landing-draw{to{stroke-dashoffset:0}}@media(max-width:960px){.landing-hero{grid-template-columns:1fr;min-height:0;padding-top:24px}.landing-hero-art{max-width:560px;margin:0 auto;width:100%}.landing-hero-art .iso-city{transform:none}.landing-hero-art:before{inset:10% 0 -4%}.landing-days ol{grid-template-columns:1fr;gap:24px}}@media(max-width:640px){.landing-stories,.landing-days{padding:52px 0}.landing-stories li{--tilt: 0deg}.landing-actions .landing-cta{flex:1 1 100%;align-items:center}}@media(prefers-reduced-motion:reduce){.landing{scroll-behavior:auto}.landing-tag,.landing-hero-copy h1,.landing-hero-copy>p,.landing-actions,.landing-hero-art{animation:none}.landing-squiggle path{animation:none;stroke-dashoffset:0}.landing-stories li,.landing-cta,.landing-brand .brand-icon{transition:none}}.entry-shell{--base: #191e20;--panel: #222b2e;--surface: #354044;--text: #e8e6dc;--muted: #afb6ad;--line: #586260;--accent: #cfb879;color-scheme:dark;position:fixed;inset:0;overflow:auto;background:radial-gradient(70% 45% at 78% 8%,#80c9ac1c,transparent 70%),radial-gradient(45% 35% at 8% 58%,#f2c46d12,transparent 70%),var(--base);color:var(--text);scroll-padding-top:100px}.entry-shell *,.entry-shell *:before,.entry-shell *:after{box-sizing:border-box}.entry-shell a{color:inherit;text-decoration:none}.entry-shell button,.entry-shell input{font:inherit}.entry-shell button,.entry-shell a{-webkit-tap-highlight-color:transparent}.entry-shell :is(button,a,input,summary):focus-visible{outline:3px solid var(--accent);outline-offset:4px}.landing-skip{position:absolute;top:-80px;left:16px;z-index:10;padding:14px;border-radius:8px;background:var(--accent);color:var(--base)!important}.landing-skip:focus{top:14px}.entry-shell .landing-hero-copy h1{font-size:clamp(38px,5vw,62px);line-height:1.04;letter-spacing:-.03em;margin:20px 0 22px}.entry-header{position:sticky;top:0;z-index:5;background:#191e20f2;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.entry-header-inner{max-width:1240px;margin:auto;min-height:92px;padding:0 40px;display:flex;align-items:center;gap:40px}.entry-brand{display:flex;align-items:center;gap:11px;font-family:Space Grotesk,sans-serif;font-size:19px;font-weight:700;letter-spacing:-.01em;white-space:nowrap}.entry-nav{display:flex;align-items:center;gap:30px;margin-left:auto;align-self:stretch}.entry-nav a{position:relative;display:flex;align-items:center;font-size:13px;font-weight:500;color:var(--muted)}.entry-nav a[aria-current=page]{color:var(--text)}.entry-nav a[aria-current=page]:after{content:"";position:absolute;bottom:19px;left:0;right:0;height:2px;background:#cfb879}.entry-sign-in{display:flex;gap:20px;align-items:center;padding:11px 18px;border:1px solid var(--line);border-radius:7px;font-size:13px;font-weight:600;background:#ffffff05}.entry-account-link{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600}.entry-avatar{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#354437;border:1px solid #cfb87955;color:#e8e6dc;font-size:14px;font-weight:600}.entry-shell .entry-main{max-width:1240px;margin:auto;padding:0 40px;min-height:calc(100svh - 165px)}.entry-shell .lobby.lobby-embedded{max-height:none;width:100%;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}.entry-shell h1,.entry-shell h2,.entry-shell h3{font-family:Space Grotesk,DM Sans,sans-serif}.entry-kicker{display:inline-flex;align-items:center;gap:8px;font-size:10px;letter-spacing:1.55px;font-weight:600;color:#cfb879;line-height:1.7}.status-dot{display:inline-block;flex-shrink:0;width:6px;height:6px;border-radius:50%;background:#80c9ac}.entry-shell .entry-primary,.entry-shell .entry-secondary{display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:48px;padding:12px 21px;border-radius:7px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,transform .15s}.entry-shell .entry-primary{border:1px solid #cfb879;background:#cfb879;color:var(--base)}.entry-shell .entry-primary:hover{background:#ddc88b;transform:translateY(-1px)}.entry-shell .entry-secondary{border:1px solid var(--line);background:#222b2e07;color:var(--text)}.entry-shell .entry-secondary:hover{background:#ffffff10;border-color:#cfb87980}.entry-shell .entry-primary:disabled,.entry-shell .entry-secondary:disabled{cursor:default;transform:none;opacity:.55}.entry-auth-story h2 em{font-family:inherit;font-style:normal;font-weight:600}.entry-start-choices{border-top:1px solid var(--line);padding:30px 0 45px}.entry-choice-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.entry-shell .entry-choice-heading h2{margin:0;font-size:21px;font-weight:500;letter-spacing:-.6px}.entry-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.entry-choice-card{display:flex;align-items:center;gap:13px;border:1px solid var(--line);border-radius:10px;background:#222b2e05;padding:23px 18px;transition:border-color .15s,transform .15s}.entry-choice-card:hover{border-color:#cfb879;transform:translateY(-2px)}.entry-choice-icon{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;background:#80c9ac12;color:#80c9ac;border-radius:9px;font-size:22px;flex-shrink:0}.entry-shell .entry-choice-card h3{font-size:13px;margin:0 0 5px;font-weight:600}.entry-choice-card p{font-size:11px;margin:0;line-height:1.6;color:var(--muted)}.entry-choice-card>span:last-child{margin-left:auto;color:#cfb879}.entry-local-note{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;margin-top:23px;color:var(--muted);font-size:12px}.entry-local-note button{border:0;background:transparent;color:#cfb879;padding:8px;font-size:12px;font-weight:600}.entry-server-note{font-size:12px;color:var(--muted);text-align:center}.entry-footer{max-width:1240px;margin:auto;display:flex;justify-content:space-between;gap:20px;padding:25px 40px;border-top:1px solid var(--line);color:#afb6ad;font-size:11px}.player-dashboard{padding:32px 0}.dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.entry-shell .dashboard-heading h1{font-size:34px;margin:8px 0 9px;font-weight:500;letter-spacing:-1.2px;overflow-wrap:anywhere}.dashboard-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.dashboard-heading>a{flex-shrink:0}.dashboard-overview{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:10px;background:#222b2ea3;margin:28px 0}.dashboard-overview>div{display:flex;align-items:center;gap:15px;padding:16px 24px}.dashboard-overview>div+div{border-left:1px solid var(--line)}.metric-icon{background:#cfb87912;color:#cfb879;border-radius:10px;width:42px;height:42px;font-size:22px;display:inline-flex;align-items:center;justify-content:center}.dashboard-overview p{display:grid;gap:4px;margin:0}.dashboard-overview strong{font-family:Space Grotesk,sans-serif;font-size:23px;font-weight:500}.dashboard-overview p>span{color:var(--muted);font-size:11px}.dashboard-feature{display:grid;grid-template-columns:1.2fr 1fr;min-height:220px;background:linear-gradient(150deg,#263b33,#19282c);border:1px solid #80c9ac35;box-shadow:0 22px 50px #0003;border-radius:13px;overflow:hidden;color:#e8e6dc}.dashboard-feature-copy{padding:28px 32px;z-index:1}.dashboard-feature .entry-kicker{color:#80c9ac}.entry-shell .dashboard-feature h2{font-size:32px;font-weight:500;letter-spacing:-.8px;margin:16px 0 10px;overflow-wrap:anywhere}.dashboard-feature p{color:#b4c4bc;font-size:12px;line-height:1.7;margin:0 0 23px}.entry-shell .dashboard-feature .entry-primary{background:#cfb879;color:#191e20;border-color:#cfb879}.entry-shell .dashboard-feature .entry-primary:hover{background:#ddc88b}.feature-region-link{display:inline-flex;margin-left:18px;font-size:11px;color:#afb6ad!important}.dashboard-city-art{display:flex;align-items:center;justify-content:center;width:100%;overflow:hidden;pointer-events:none}.dashboard-city-art .iso-city{width:100%;max-height:250px}.dashboard-city-art-large{background:radial-gradient(ellipse at 55% 60%,#8ba57622,transparent 70%);padding:5px 20px 0}.dashboard-city-art-large .iso-city{max-height:220px;width:440px;max-width:100%;filter:drop-shadow(0 25px 18px #10231a30)}.dashboard-regions{margin-top:26px}.dashboard-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:19px}.entry-shell .dashboard-section-heading h2{margin:0 0 6px;font-size:20px;font-weight:500;letter-spacing:-.5px}.dashboard-section-heading h2>span{display:inline-flex;align-items:center;justify-content:center;height:21px;min-width:21px;padding:0 6px;border:1px solid var(--line);border-radius:5px;font-size:10px;color:var(--muted);vertical-align:middle;margin-left:7px}.dashboard-section-heading p{color:var(--muted);font-size:12px;margin:0}.dashboard-search input{max-width:220px;padding:10px 14px;border:1px solid var(--line);background:var(--panel);border-radius:7px;font-size:12px}.dashboard-region-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.dashboard-region-card{background:linear-gradient(160deg,#243036,#1b2429);border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 32px #0003;overflow:hidden;display:flex;flex-direction:column}.region-card-art{height:106px;background:#1c2b2d;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.region-card-art .dashboard-city-art{height:100%;padding:4px 20px 0}.region-card-art .iso-city{max-height:155px;width:230px}.region-card-art .map-thumbnail{width:100%;height:100%;border-radius:0;object-fit:cover;image-rendering:pixelated;opacity:.8}.region-card-badge{position:absolute;bottom:10px;left:15px;padding:4px 8px;border-radius:4px;background:#172126e8;color:#80c9ac;font-size:8px;font-weight:600;letter-spacing:1px}.region-card-copy{padding:16px 18px 13px}.entry-shell .region-card-copy h3{font-size:18px;letter-spacing:-.4px;margin:0 0 8px;font-weight:500;overflow-wrap:anywhere}.region-card-copy p{color:var(--muted);font-size:11px;margin:0 0 17px}.region-card-copy p>span{margin:0 6px}.region-card-population{font-size:11px;color:var(--muted)}.region-card-population>span{font-family:Space Grotesk,sans-serif;font-size:19px;color:var(--text);margin-right:5px}.region-card-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:9px;padding:15px 20px;background:#1e282a;border-top:1px solid #ffffff10}.region-card-open{display:inline-flex;justify-content:space-between;flex:1;gap:10px;color:#cfb879!important;font-size:12px;font-weight:600}.region-card-resume{font-size:11px;padding:7px 9px;background:#cfb87914;border-radius:5px;font-weight:500}.dashboard-add-region{min-height:254px;border:1px dashed #586260;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#222b2e70}.dashboard-add-region:hover{background:#cfb87912}.dashboard-add-region>span{display:grid;place-items:center;width:44px;height:44px;border:1px solid #586260;border-radius:50%;font-size:25px;color:#cfb879;margin-bottom:5px}.dashboard-add-region>strong{font-size:13px;font-weight:500}.dashboard-add-region>small{color:var(--muted);font-size:11px}.dashboard-bottom-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:18px;margin-top:25px}.dashboard-local,.dashboard-invite{display:flex;align-items:center;gap:14px;padding:20px;border:1px solid var(--line);border-radius:10px;background:#222b2ea3;min-width:0}.dashboard-local>div,.dashboard-invite>div{flex:1;min-width:0}.entry-shell .dashboard-bottom-grid h3{margin:4px 0 6px;font-size:15px;font-weight:500;overflow-wrap:anywhere}.dashboard-bottom-grid p{margin:0;font-size:11px;color:var(--muted);line-height:1.6}.dashboard-local>button{flex-shrink:0;padding:10px 13px!important;min-height:40px!important}.dashboard-invite>span:last-child{color:#cfb879}.dashboard-loading{padding:70px 0}.dashboard-loading h1{font-size:35px;letter-spacing:-1px}.dashboard-loading p{color:var(--muted);font-size:14px}.dashboard-skeleton{margin-top:32px;height:270px;border-radius:12px;background:linear-gradient(110deg,#222b2e,#354044,#222b2e);background-size:250% 100%;animation:entry-shimmer 2s infinite}@keyframes entry-shimmer{to{background-position:-250% 0}}.dashboard-error{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#cfb87912;color:#e0c894;border-radius:7px;padding:14px;margin:20px 0;font-size:12px}.dashboard-error button{border:0;background:transparent;color:inherit;text-decoration:underline;white-space:nowrap;padding:6px}.dashboard-empty{display:flex;align-items:center;gap:22px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:28px}.dashboard-empty>span{font-size:38px;color:#80c9ac}.dashboard-empty>div{flex:1}.dashboard-empty h3{font-size:17px;margin:0 0 8px}.dashboard-empty p,.dashboard-no-results{font-size:12px;color:var(--muted)}.entry-back{display:inline-flex;padding:8px 0;font-size:12px;color:var(--muted)!important;margin-bottom:23px}.entry-shell .lobby.entry-auth-panel{padding:32px 0 55px}.entry-auth-layout{display:grid;grid-template-columns:1fr 1fr;max-width:980px;margin:0 auto;background:linear-gradient(160deg,#19232d,#141d26);border:1px solid var(--line);border-radius:20px;box-shadow:0 30px 80px #0005;overflow:hidden}.entry-auth-story{background:radial-gradient(ellipse at 10% 0,#80c9ac18,transparent 80%),#192827;color:#e8e6dc;padding:40px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.entry-auth-story>.entry-kicker{color:#80c9ac}.entry-shell .entry-auth-story h2{margin:24px 0 0;font-size:42px;line-height:1.18;font-weight:500;letter-spacing:-1.5px}.entry-auth-story h2 em{color:#80c9ac}.entry-auth-story .iso-city{width:105%;margin:3px 0 12px}.entry-auth-story p{font-size:12px;color:#b4c4bc;line-height:1.7;margin:0;max-width:285px}.entry-auth-form{padding:42px;align-self:center}.entry-shell .entry-auth-form h1{font-size:30px;margin:13px 0 10px;letter-spacing:-1px;font-weight:500}.entry-auth-form>p{color:var(--muted);font-size:13px;line-height:1.7;margin:0 0 23px}.entry-shell .entry-auth-form form{gap:20px}.entry-shell .lobby label{font-size:12px;font-weight:500;gap:8px}.entry-shell .lobby input{background:#191e20;border:1px solid var(--line);border-radius:7px;padding:13px 14px;color:var(--text);font-size:13px;box-sizing:border-box;width:100%}.entry-shell .lobby label small{font-size:10px;color:var(--muted);line-height:1.6;font-weight:400}.entry-shell .lobby input::placeholder{color:#85928a}.entry-password-field{display:flex;position:relative}.entry-password-field input{padding-right:58px!important}.entry-password-field button{position:absolute;right:8px;top:5px;bottom:5px;background:none;color:var(--muted);border:0;padding:0 8px;font-size:11px}.entry-auth-form form>.entry-primary{margin-top:2px;width:100%}.entry-auth-form>.entry-auth-switch{margin-top:22px;text-align:center;font-size:12px}.entry-auth-switch a{font-weight:600;color:#cfb879}.entry-auth-local{display:block;text-align:center;color:#afb6ad!important;font-size:11px;padding:4px}.entry-auth-divider{position:relative;display:flex;align-items:center;gap:12px;margin:20px 0;color:#afb6ad;font-size:10px}.entry-auth-divider:before,.entry-auth-divider:after{content:"";height:1px;background:var(--line);flex:1}.entry-shell .sso-buttons{margin-top:20px}.entry-shell .sso-button{padding:12px;font-size:12px;background:var(--panel);border-color:var(--line)}.entry-shell .form-error{background:#e8a09012;color:#e8a090!important;font-size:12px;line-height:1.6;margin:0}.entry-shell .form-notice{color:#cfb879}.entry-shell .lobby.entry-setup-panel{width:min(680px,100%);margin:auto;padding:32px 0 60px}.entry-setup-switch{display:grid;grid-template-columns:1fr 1fr;margin-bottom:25px;gap:5px;padding:5px;background:#ffffff05;border-radius:9px}.entry-setup-switch a{display:flex;align-items:center;justify-content:center;min-height:42px;font-size:13px;font-weight:500;color:var(--muted);border-radius:6px}.entry-setup-switch a[aria-current=page]{background:var(--panel);color:var(--text);box-shadow:0 2px 5px #5066420d}.entry-shell .local-start,.entry-shell .region-setup,.entry-shell .join-region,.entry-shell .entry-account{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:30px}.entry-shell .lobby .setup-intro h2{font-size:27px;font-weight:500;letter-spacing:-.8px}.entry-shell .lobby .setup-intro p{font-size:13px}.entry-shell .lobby .setup-choice{background:#191e20;border-color:var(--line);border-radius:8px}.entry-shell .lobby .setup-choice.selected{border-color:#cfb879;background:#cfb87910}.entry-shell .setup-choice-mark{color:#cfb879}.entry-shell .lobby .primary-button{background:#cfb879;color:var(--base);min-height:46px;padding:12px 19px;border-radius:7px;font-size:12px}.entry-shell .setup-resume{background:#80c9ac0c;border-color:#80c9ac35;margin-bottom:14px}.entry-shell .setup-landscape{background:#ffffff04}.entry-shell .lobby .region-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.entry-shell .lobby select{background:#191e20;color:var(--text);border:1px solid var(--line);border-radius:6px;padding:12px;width:100%}.entry-shell .setup-options>summary{font-size:12px;padding:7px 0}.entry-shell .lobby .setup-options-content{padding-top:15px}.entry-shell .join-region h1,.entry-shell .entry-account h1{font-size:30px;font-weight:500;margin:10px 0;letter-spacing:-1px}.entry-shell .invite-pending{background:#80c9ac10;border-color:#80c9ac35;color:#80c9ac;font-size:12px;padding:10px 12px}.entry-account>.entry-kicker{margin-bottom:8px}.account-profile{display:flex;align-items:center;gap:15px;padding:25px 0}.account-profile .entry-avatar{width:52px;height:52px;font-size:21px}.entry-shell .account-profile h2{margin:0 0 5px;font-size:21px}.account-profile p{margin:0;color:var(--muted);font-size:12px}.entry-shell .account-connections h2{font-size:16px;margin:0 0 8px}.account-connections p{color:var(--muted);font-size:12px}.account-connections{border-top:1px solid var(--line);padding:20px 0}.account-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:26px}.entry-not-found{padding:70px 0}.entry-not-found p{margin-bottom:30px;color:var(--muted)}.entry-modal{width:min(1050px,100%);padding:25px}.entry-modal-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:15px;font-size:13px}.entry-modal-heading button{border:0;background:transparent;color:var(--text);width:40px;height:40px;font-size:26px}.game-dashboard-link{font-size:12px;color:var(--muted);text-decoration:none;padding:8px 10px;border:1px solid var(--line);border-radius:6px}@media(max-width:980px){.entry-header-inner{padding:0 28px;gap:25px}.entry-shell .entry-main{padding:0 28px}.entry-nav{gap:24px}.entry-choice-grid{gap:10px}.entry-choice-card{padding:18px 13px;gap:10px}.entry-choice-icon{width:32px;height:32px}.dashboard-region-grid{gap:13px}.dashboard-overview>div{padding:18px}.dashboard-feature-copy{padding:30px}.dashboard-bottom-grid{grid-template-columns:1fr}.entry-auth-form,.entry-auth-story{padding:32px}.feature-region-link{display:block;margin:14px 0 0}}@media(max-width:720px){.entry-header-inner{min-height:76px;padding:0 20px;gap:20px;flex-wrap:wrap}.entry-brand{font-size:22px}.entry-nav{order:3;flex-basis:100%;justify-content:center;margin:-4px 0 0;padding-bottom:15px;gap:40px}.entry-nav a[aria-current=page]:after{bottom:-8px}.entry-sign-in,.entry-account-link{margin-left:auto}.entry-sign-in{padding:9px 13px}.entry-shell .entry-main{padding:0 20px}.entry-choice-grid{grid-template-columns:1fr;gap:12px}.entry-choice-card{padding:20px}.entry-choice-card h3{font-size:14px!important}.entry-choice-icon{width:38px;height:38px}.entry-choice-heading{flex-direction:column;align-items:flex-start;gap:8px}.entry-footer{padding:24px 20px;flex-wrap:wrap;gap:10px;font-size:10px}.player-dashboard{padding-top:28px}.entry-shell .dashboard-heading h1{font-size:28px}.dashboard-heading{align-items:flex-start}.dashboard-heading>a{padding:10px 12px!important;gap:4px!important;font-size:11px!important}.dashboard-overview{margin:22px 0}.dashboard-overview>div{padding:16px 12px;gap:8px}.metric-icon{display:none}.dashboard-overview strong{font-size:22px}.dashboard-overview p>span{font-size:10px;line-height:1.6}.dashboard-feature{grid-template-columns:1.1fr 1fr;min-height:225px}.dashboard-feature-copy{padding:25px}.entry-shell .dashboard-feature h2{font-size:27px}.dashboard-feature p{font-size:11px}.dashboard-city-art-large{padding:0;margin-left:-20px;width:calc(100% + 20px)}.dashboard-region-grid{grid-template-columns:repeat(2,1fr)}.dashboard-section-heading{gap:12px}.dashboard-search input{width:155px!important;font-size:11px!important}.dashboard-local,.dashboard-invite{padding:18px}.dashboard-bottom-grid .entry-kicker{font-size:8px}.dashboard-bottom-grid p{font-size:10px}.entry-shell .lobby.entry-auth-panel{padding-top:23px}.entry-auth-layout{grid-template-columns:1fr;max-width:480px}.entry-auth-story{display:none}.entry-auth-form{padding:32px}.entry-shell .lobby.entry-setup-panel{padding-top:23px}.entry-shell .local-start,.entry-shell .region-setup,.entry-shell .join-region,.entry-shell .entry-account{padding:24px}.dashboard-empty{padding:20px;flex-wrap:wrap}}@media(max-width:460px){.entry-header-inner{min-height:106px;gap:15px}.entry-nav{gap:32px}.entry-account-link>span:last-child{display:none}.dashboard-heading{flex-direction:column;gap:16px}.dashboard-feature{position:relative;grid-template-columns:1fr}.dashboard-feature-copy{padding:26px 23px}.dashboard-feature .dashboard-city-art-large{position:absolute;right:-95px;bottom:-24px;width:270px;opacity:.2}.dashboard-feature-copy>h2{max-width:260px}.dashboard-feature .entry-kicker{font-size:8px}.dashboard-region-grid{grid-template-columns:1fr}.region-card-art{height:145px}.dashboard-add-region{min-height:170px}.dashboard-local{flex-wrap:wrap;gap:10px}.dashboard-local>button{margin-left:48px}.dashboard-section-heading h2{font-size:18px!important}.dashboard-search input{width:135px!important}.entry-auth-form{padding:26px}.entry-auth-form h1{font-size:28px!important}.entry-shell .lobby .region-fields{grid-template-columns:1fr}.entry-shell .local-start,.entry-shell .region-setup,.entry-shell .join-region,.entry-shell .entry-account{padding:20px}.entry-shell .lobby .setup-intro h2{font-size:24px}.entry-shell .setup-choices{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.entry-shell *,.entry-shell *:before,.entry-shell *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.loading-screen{position:fixed;inset:0;z-index:60;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(24px,6vw,96px);padding:clamp(24px,6vw,80px);background:radial-gradient(60% 50% at 20% 30%,#80c9ac18,transparent 70%),radial-gradient(40% 40% at 85% 80%,#f2c46d10,transparent 70%),var(--base);color:var(--text);transition:opacity .48s ease}.loading-screen.is-leaving{opacity:0;pointer-events:none}.loading-art{max-width:520px;justify-self:end;width:100%;filter:drop-shadow(0 30px 40px #00000055)}.loading-body{max-width:440px}.loading-body h1{font-family:Space Grotesk,DM Sans,sans-serif;font-size:clamp(30px,4vw,44px);line-height:1.05;letter-spacing:-.02em;margin:10px 0 26px;overflow-wrap:anywhere}.loading-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px;font-size:15px}.loading-steps li{display:flex;align-items:center;gap:12px;color:var(--muted);animation:loading-step-in .36s ease-out both}.loading-steps .is-active{color:var(--text)}.loading-mark{flex:none;width:18px;height:18px;border-radius:50%;border:2px solid var(--line);box-sizing:border-box;position:relative}.is-done .loading-mark{border-color:var(--accent);background:var(--accent)}.is-done .loading-mark:after{content:"";position:absolute;left:4px;top:1px;width:4px;height:8px;border:solid var(--base);border-width:0 2px 2px 0;transform:rotate(45deg)}.is-active .loading-mark{border-color:var(--accent);border-top-color:transparent;animation:loading-spin .9s linear infinite}.loading-tip{margin:30px 0 0;padding-top:22px;border-top:1px solid var(--line);font-size:14px;line-height:1.6;color:var(--muted);animation:loading-step-in .5s ease-out both}.loading-slow{font-size:13px;color:var(--muted);margin:14px 0 0}.loading-slow .text-button{padding:0;color:var(--accent);text-decoration:underline}.loading-brand{position:absolute;left:clamp(24px,6vw,80px);bottom:28px;display:flex;align-items:center;gap:10px;font-family:Space Grotesk,DM Sans,sans-serif;font-weight:600;color:var(--muted)}@keyframes loading-spin{to{transform:rotate(360deg)}}@keyframes loading-step-in{0%{opacity:0;transform:translateY(6px)}}@media(max-width:820px){.loading-screen{grid-template-columns:1fr;align-content:center;gap:12px}.loading-art{justify-self:center;max-width:360px}.loading-body{justify-self:center;width:100%;max-width:440px}.loading-brand{display:none}}@media(prefers-reduced-motion:reduce){.loading-screen,.loading-steps li,.loading-tip{transition:none;animation:none}}.journal-unread{padding:1px 4px;border-radius:8px;background:var(--accent);color:#15242a}.journal-actions{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:5px}.activity .journal-size{width:100%;font-size:10px;min-height:26px}.city-view:has(.activity .message-list:not([hidden])) .weather-notice{display:none}.activity .message-list{max-height:176px;overflow-y:auto;overscroll-behavior:contain}.activity .message-list p{margin:0;padding:5px 8px;border-bottom:1px solid var(--line);font-size:11px;line-height:1.35}.activity .message-list p:last-child{border-bottom:0}.activity.journal-expanded .message-list{max-height:min(40vh,320px)}.activity .feed-location{display:flex;gap:7px;width:100%;text-align:left;font-size:11px;line-height:1.35}.journal-icon{color:var(--accent);font-size:14px;flex:0 0 15px}.feed-location small{display:block;color:var(--muted);font-size:9px}.employment-stat small{font-size:9px;color:var(--muted);white-space:nowrap}.payday-clock{position:absolute;z-index:2;top:12px;left:16px;display:grid;gap:3px;padding:7px 10px;border-radius:8px;background:var(--panel);font-size:12px;pointer-events:none}.payday-clock span{color:var(--muted);font-size:10px}.city-view:has(.payday-clock) .guide-toggle{top:105px}.demand .demand-value summary{list-style:none}.demand .demand-value summary::-webkit-details-marker{display:none}.demand-bar-label{display:flex;justify-content:space-between;gap:5px}.demand-bar-track{display:block;position:relative;height:48px;margin-top:7px;border:1px solid #63748080;border-radius:3px;background:#10171e80;overflow:hidden}.demand-bar-track:after{content:"";position:absolute;top:50%;inset-inline:0;height:1px;background:#b3bdc3}.demand-bar-track i{position:absolute;left:20%;width:60%;min-height:1px;background:#8bce91}.demand .c .demand-bar-track i{background:#70bde8}.demand .i .demand-bar-track i{background:#e8cb6b}.demand .o .demand-bar-track i{background:#b89ce0}@media(max-width:760px){.topbar .employment-stat{display:none}.payday-clock{top:8px;left:10px;font-size:11px;padding:6px 8px}.simulation-controls>span>strong{font-size:11px;white-space:nowrap}.city-view:has(.payday-clock) .guide-toggle{top:110px;left:auto;right:10px}}@media(max-width:700px){.app .topbar .weekly-goal{top:112px;left:10px;width:165px}}.preferences-dialog{width:min(760px,calc(100vw - 28px));max-height:calc(100dvh - 40px);overflow:auto;padding:20px;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:16px}.preferences-dialog::backdrop{background:#050b10a8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.preferences-dialog>p{font-size:12px;color:var(--muted)}.preference-groups{display:grid;grid-template-columns:1fr 1fr;gap:4px 20px;align-items:start}@media(max-width:720px){.preference-groups{grid-template-columns:1fr}}.preference-group{margin:0;padding:0;border:0;min-width:0}@media(min-width:721px){.preference-group:last-child{grid-column:2;grid-row:1 / span 2}}.preference-group legend{padding:8px 0 2px;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.preference-row{display:flex;align-items:center;gap:14px;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line)}.preference-row strong{font-size:13px}.preference-row small{display:block;color:var(--muted);line-height:1.35;margin-top:2px;font-size:11px}.preference-row input{width:18px;height:18px;flex-shrink:0;accent-color:var(--accent)}.soundtrack-settings{margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:9px}.music-volume{display:grid;gap:8px;font-size:12px}.music-volume>span{display:flex;justify-content:space-between}.music-volume output{color:var(--muted);font-variant-numeric:tabular-nums}.music-volume input{width:100%;min-height:24px;accent-color:var(--accent)}.soundtrack-status{margin:8px 0 0;font-size:12px;line-height:1.5}.soundtrack-status strong,.soundtrack-status span{display:block}.soundtrack-status span{color:var(--muted);font-size:11px}.map-palette-legend{position:absolute;top:calc(100% + 5px);right:0;display:flex;gap:9px;padding:7px 9px;background:var(--panel);border:1px solid var(--line);border-radius:7px;font-size:10px;color:var(--ink);white-space:nowrap;pointer-events:none}.map-palette-legend span{display:flex;align-items:center;gap:4px}.map-palette-legend i{width:10px;height:10px;border:1px solid #ffffff60;border-radius:2px}.graphics-quality-control{display:flex;flex-direction:column;gap:2px;width:172px;flex-shrink:0}.preference-row .graphics-quality-control input[type=range]{width:100%;height:18px;margin:0}.graphics-quality-stops{display:flex;justify-content:space-between}.graphics-quality-stops button{padding:0;font-size:11px;color:var(--muted);background:none;border:0;cursor:pointer}.graphics-quality-stops button.active{color:var(--ink);font-weight:700}.weekly-game-card{display:grid;gap:8px;padding:14px;margin-bottom:16px;border:1px solid var(--accent);border-radius:10px;background:var(--surface)}.weekly-game-card small{display:block;color:var(--muted);margin-top:3px}.weekly-game-card progress{width:100%;accent-color:var(--accent)}.game-modifier{padding:9px 12px;border-left:3px solid var(--accent);background:var(--surface);border-radius:4px}.game-modifier strong{display:block;margin-bottom:3px}.shift-request{padding:28px 16px;min-height:130px;display:grid;place-items:center;text-align:center;font-size:20px;background:var(--surface);border:1px solid var(--line);border-radius:10px}.game-controls.shift-departments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.shift-departments button{min-height:44px}.game-power button,.game-planning button{min-width:0;padding:0}.parcel-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;aspect-ratio:1;max-width:340px;width:100%}.parcel-grid button{border:1px solid var(--line);border-radius:4px;font-size:21px}.parcel-grid .owned{background:#354032;color:var(--text);opacity:1}.parcel-grid .available{background:var(--panel);color:#a2ba9b}.parcel-grid .locked{background:var(--panel);color:var(--text)}.region-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;margin:22px 0}.region-layout strong{font-size:14px}.region-layout small{color:var(--muted)}.council-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.council-options button{padding:20px;text-align:left;border:1px solid var(--line);border-radius:12px;background:var(--panel);display:grid;gap:12px}.council-options .chosen{border:2px solid var(--accent);background:var(--panel)}.council-options span,.council-options b{font-size:12px;line-height:1.5;color:var(--muted)}.road-choices{display:flex;flex-wrap:wrap}.road-choices button,.view-toggle{border:1px solid var(--line);background:var(--panel);border-radius:7px;padding:7px 9px;font-size:11px;color:var(--muted);text-transform:capitalize}.view-toggle{margin-right:4px}.topbar .stat>small{font-size:9px;color:var(--muted)}.daily-tabs{flex-wrap:wrap}@media(max-width:650px){.region-layout,.council-options{grid-template-columns:1fr}}.daily-dialog{width:min(860px,calc(100vw - 28px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--line);border-radius:22px;background:var(--panel);color:var(--text)}.approval-stat{min-width:60px}@media(max-width:1100px){.approval-stat{display:none}}.daily-dialog::backdrop{background:#101820b3;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.daily-dialog-inner{padding:30px}.daily-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.daily-heading h2{font-size:30px;letter-spacing:-1px;margin:8px 0 18px}.daily-heading>button{border:0;background:var(--panel);border-radius:50%;width:34px;height:34px;font-size:25px}.daily-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:8px 0 24px}.daily-summary>div{background:var(--panel);padding:18px;border-radius:12px}.daily-summary span,.daily-summary strong{display:block}.daily-summary span{font-size:11px;color:var(--muted);margin-bottom:6px}.daily-summary strong{font-size:23px}.daily-summary small{font-size:10px;display:block;margin-top:3px}.daily-dialog p{line-height:1.6;color:var(--muted)}.daily-dialog h3{font-size:18px;margin:26px 0 12px}.daily-dialog h3 small{font-size:11px;font-weight:400;float:right}.daily-dialog button{cursor:pointer}.daily-dialog button:disabled{cursor:default;opacity:.5}.daily-dialog button:focus-visible,.daily-dialog input:focus-visible,.daily-dialog select:focus-visible{outline:3px solid #b5cb84;outline-offset:3px}.daily-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);padding-bottom:12px}.daily-tabs button{background:transparent;border:0;padding:10px 13px;border-radius:8px;font-weight:600;color:var(--muted)}.daily-tabs button[aria-selected=true]{background:var(--base);color:var(--text)}.quest-list{display:grid;gap:9px}.quest-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.quest-row>div{display:grid;gap:5px;flex:1}.quest-row small{font-size:9px;color:var(--muted);letter-spacing:1px}.quest-row strong{font-size:13px}.quest-row span{font-size:11px;color:var(--muted)}.quest-row button,.daily-dialog details button,.department-table+button,.game-controls button,.game-result button{border:1px solid var(--line);background:var(--panel);color:var(--text);padding:10px 14px;border-radius:8px;font-weight:600}.quest-row progress{width:100%;height:5px;accent-color:#719c59}.game-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.game-cards>button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--panel);transition:transform .15s}.game-cards>button:hover{transform:translateY(-3px)}.game-emblem{width:43px;height:43px;border-radius:12px;background:var(--panel);color:#adbe9b;font-size:31px;text-align:center;margin-bottom:16px}.game-emblem.water,.game-emblem.power{background:var(--panel);color:#a5b9c4}.game-emblem.services,.game-emblem.transport{background:var(--panel);color:#d0bca1}.game-cards strong{font-size:16px;margin-bottom:4px}.game-cards small{text-transform:capitalize;color:var(--muted);font-size:11px}.game-cards b{font-size:10px;color:#aaba9e;margin-top:18px}.daily-error{background:var(--panel);border-radius:8px;padding:12px;color:#c1a095!important}.department-table{margin:20px 0}.department-row{display:grid;grid-template-columns:1fr 145px 75px;gap:16px;align-items:center;border-bottom:1px solid var(--line);padding:15px 0}.department-row strong{text-transform:capitalize;font-size:14px}.department-row small{display:block;text-transform:none;font-size:11px;color:var(--muted);margin-top:6px;font-weight:400}.department-row label{font-size:10px;color:var(--muted)}.department-row input,.department-row select,.funding-picker select{display:block;width:100%;padding:9px;border-radius:7px;border:1px solid var(--line);background:var(--panel);color:var(--text);margin-top:6px}.welcome-events{padding-left:20px;color:var(--muted);font-size:13px;line-height:1.9}.leaderboard-list{display:grid;gap:8px}.game-status{display:flex;justify-content:space-between;align-items:center;gap:12px}.game-status p{font-size:13px}.game-status span{font-size:22px;font-variant-numeric:tabular-nums;white-space:nowrap}.game-board{border-radius:14px;background:var(--panel);padding:16px;min-height:280px;position:relative;overflow:hidden}.game-power,.game-services,.game-planning{display:grid;gap:5px;max-width:510px;margin:auto}.game-board button{border:0;border-radius:6px;aspect-ratio:1}.cable{font-size:44px!important;line-height:1;background:var(--surface);color:var(--muted);position:relative}.cable.powered{background:var(--panel);color:#a8ba9c}.cable:after{content:attr(data-marker);position:absolute;right:3px;top:3px;font-size:11px}.game-controls{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:18px 0}.game-controls .active{background:var(--base);color:var(--text)}.game-controls+.primary-button{display:block;margin:20px auto 0}.pressure-gauge{position:relative;height:48px;margin:70px 10px 25px;border-radius:14px;background:linear-gradient(to right,var(--surface) 0% 45%,#374331 45% 65%,var(--surface) 65%)}.pressure-gauge i{position:absolute;top:-12px;bottom:-12px;width:5px;border-radius:6px;background:var(--base);transition:left .1s}.game-water p{text-align:center;font-size:12px}.traffic-lane{padding:15px;border-radius:8px;background:var(--base);color:var(--text);letter-spacing:3px;margin:6px;font-size:12px;min-height:44px;overflow:hidden;white-space:nowrap}.traffic-lane.green,.traffic-lane.red{border-left:9px solid var(--accent)}.game-transport>p{text-align:center;font-size:11px}.incident-cell{font-size:18px;background:var(--panel);color:var(--text)}.incident-cell.urgent{background:var(--panel);box-shadow:inset 0 0 0 2px #d9b46e}.game-environment{height:300px;background:repeating-linear-gradient(0deg,var(--panel),var(--panel) 49px,var(--panel) 50px)}.waste-card{background:var(--panel);border:2px solid var(--accent);border-radius:14px;margin:12px auto;width:180px;text-align:center;padding:25px 12px;font-size:19px;font-weight:600;box-shadow:0 8px 15px #49623518}.blueprint-cell{background:var(--panel);color:var(--muted);font-size:12px}.piece-0{background:var(--base)!important;color:var(--text)}.piece-1{background:#333e44!important;color:var(--text)}.piece-2{background:#463e31!important;color:var(--text)}.piece-3{background:var(--surface)!important;color:var(--text)}.game-result{text-align:center;padding:25px}.game-result .medal{display:block;font-size:70px;color:#d2c4a3}.game-result button{margin:10px}.daily-desk-button{border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--muted);padding:11px 14px;font-weight:600;white-space:nowrap}.daily-dialog details{margin-top:22px}.daily-dialog details summary{cursor:pointer;font-size:13px}@media(max-width:650px){.daily-dialog-inner{padding:18px}.daily-heading h2{font-size:24px}.daily-summary{gap:6px}.daily-summary>div{padding:12px 8px}.daily-summary strong{font-size:18px}.game-cards{grid-template-columns:repeat(2,1fr)}.game-cards>button{padding:14px}.department-row{grid-template-columns:1fr 100px 55px;gap:8px}.department-row strong{font-size:12px}.department-row small{font-size:9px}.daily-tabs button{padding:9px 7px;font-size:11px}.daily-desk-button{font-size:11px;padding:9px}.cable{font-size:30px!important}.game-board{padding:10px;min-height:240px}.quest-row{gap:8px;padding:12px}.quest-row button{padding:8px;font-size:11px}.game-controls{gap:6px}.game-controls button{font-size:11px;padding:9px}.daily-dialog h3 small{float:none;display:block;margin-top:5px}}.week-review{padding:16px;margin-block:16px;border:1px solid #405967;border-radius:12px;background:#152731}.week-review header h3{margin:0 0 5px}.week-review small,.week-review-empty{color:#aec1cc;font-size:11px}.week-review dl{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:0}.week-review dt{color:#a8c0ca;font-size:11px;margin-bottom:5px}.week-review dd{margin:0;font-weight:650;font-size:16px}.week-review dd small{display:block;font-weight:400;line-height:1.6}.week-review-link{width:100%;display:flex;justify-content:space-between;gap:10px;margin-block:10px}.week-review dl>div{display:block;padding:0;border:0}.week-review dd,.week-review small{text-transform:none}.civic-activities{margin:14px 0;padding:12px;background:#22313c;border:1px solid #41545f;border-radius:10px}.civic-activities summary{cursor:pointer;font-weight:650;padding:5px 0}.civic-activities h4{margin:10px 0 5px}.civic-activities p,.civic-activities li{font-size:13px;line-height:1.5}.civic-activities small{display:block;margin-top:8px;color:#b4c9d4}.letter-choices,.civic-visits,.rating-buttons{display:flex;gap:7px;flex-wrap:wrap}.letter-choices button{flex:1 1 200px;text-align:left}.civic-visits{margin:12px 0}.building-activity{margin:12px 0;padding:10px 0;border-block:1px solid #3b4d59}.rating-buttons{margin-top:7px}.rating-buttons button{padding:7px}.rating-buttons span{color:#e4c16e}.minimap-panel.has-edge-context{width:216px}.edge-map{display:grid;grid-template-columns:18px minmax(0,1fr) 18px;grid-template-rows:18px minmax(0,1fr) 18px;gap:2px}.edge-map .minimap-surface{grid-column:2;grid-row:2}.edge-border{background:transparent;border:0;color:var(--muted);font-size:9px;padding:0;text-transform:capitalize;overflow:hidden;white-space:nowrap}.edge-border[aria-pressed=true]{color:var(--accent);background:var(--surface);border-radius:3px}.edge-north{grid-row:1;grid-column:2}.edge-east{grid-row:2;grid-column:3;writing-mode:vertical-rl}.edge-south{grid-row:3;grid-column:2}.edge-west{grid-row:2;grid-column:1;writing-mode:vertical-rl;transform:rotate(180deg)}.edge-description{margin:8px 0 0;font-size:10px;line-height:1.5;color:var(--muted)}.edge-description b{color:var(--text)}.edge-description span{color:var(--accent)}.guide.city-tour{width:min(310px,calc(100% - 32px))}.city-tour h3{margin:12px 0 8px}.city-tour p{color:var(--muted);line-height:1.5;font-size:13px}.tour-progress{display:flex;gap:5px;margin-top:12px}.tour-progress span{flex:1;height:3px;background:var(--line);border-radius:2px}.tour-progress .visited{background:var(--accent)}.tour-controls{display:flex;gap:8px;justify-content:space-between;margin-top:12px}.tour-controls button{min-height:38px}.city-tour .tour-try{width:100%;min-height:40px;margin-top:6px;border:1px solid var(--line);padding:8px}.weather-notice{position:absolute;z-index:3;left:16px;bottom:54px;display:flex;align-items:center;gap:8px;max-width:calc(100% - 32px);padding:7px 10px;border:1px solid #698699;border-radius:8px;background:var(--panel);color:var(--text);text-align:left;font-size:11px}.weather-notice>span:first-child{font-size:22px;color:#e8ca7b}.weather-notice strong,.weather-notice small{display:block}.weather-notice small{margin-top:3px;color:var(--muted)}.weather-notice.active{border-color:#d9b564}@media(max-width:760px){.weather-notice{left:10px;bottom:100px}.city-view:has(.inspector-toggle[aria-expanded=true]) .weather-notice{display:none}}.advisor-portrait{display:block;width:100%;height:100%;aspect-ratio:1;overflow:hidden;border-radius:inherit;background-color:#20272a;background-repeat:no-repeat;background-size:300% 100%;box-shadow:inset 0 0 0 1px #ffffff0c}.advisors{--seat: 0;--seat-size: 44px;--seat-gap: 6px;--mood-content: #7fb58a;--mood-concerned: #e0b04f;--mood-upset: #e0654f;position:absolute;top:162px;left:16px;z-index:3;pointer-events:none}.advisors:has(.advisor-panel){z-index:8}.city-view:has(.guide.is-open) .advisors{display:none}.advisor-rail{display:flex;flex-direction:column;gap:var(--seat-gap);pointer-events:auto}.advisor-seat{position:relative;width:var(--seat-size);height:var(--seat-size);padding:0;border:2px solid var(--mood-content);border-radius:12px;background:#20272a;box-shadow:0 3px 10px #0007;cursor:pointer;transition:transform .12s ease,border-color .2s ease}.advisor-seat .advisor-portrait{display:block;width:100%;height:100%;border-radius:10px}.advisor-seat:hover,.advisor-seat:focus-visible{transform:translate(2px) scale(1.06)}.advisor-seat.active{outline:2px solid var(--accent);outline-offset:2px}.advisor-seat.mood-concerned{border-color:var(--mood-concerned)}.advisor-seat.mood-upset{border-color:var(--mood-upset);animation:advisor-upset 2.4s ease-in-out infinite}@keyframes advisor-upset{50%{box-shadow:0 3px 10px #0007,0 0 0 4px #e0654f40}}@media(prefers-reduced-motion:reduce){.advisor-seat{transition:none}.advisor-seat.mood-upset{animation:none}}.advisor-count{position:absolute;top:-5px;right:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--mood-concerned);color:#1b1b16;font-size:10px;line-height:16px;text-align:center}.mood-upset .advisor-count{background:var(--mood-upset);color:#fff}.advisor-bubble{position:absolute;top:calc(var(--seat) * (var(--seat-size) + var(--seat-gap)) - 4px);left:calc(var(--seat-size) + 14px);width:270px;pointer-events:auto;animation:advisor-bubble-in .2s ease-out}.advisor-bubble:before{content:"";position:absolute;top:18px;left:-7px;width:12px;height:12px;background:var(--panel);border-left:1px solid var(--line);border-bottom:1px solid var(--line);transform:rotate(45deg)}.advisor-bubble-body{display:grid;gap:4px;width:100%;padding:9px 26px 9px 11px;border:1px solid var(--line);border-left:3px solid var(--mood-concerned);border-radius:10px;background:var(--panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 24px #0008;color:var(--text);text-align:left;cursor:pointer}.advisor-bubble.severity-3 .advisor-bubble-body{border-left-color:var(--mood-upset)}.advisor-bubble-body strong{display:flex;gap:6px;align-items:baseline;font-size:12px}.advisor-bubble-body small{color:var(--muted);font-size:10px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.advisor-bubble-body span{font-size:12px;line-height:1.45}.advisor-bubble-body em{color:var(--accent);font-size:11px;font-style:normal}.advisor-bubble-close,.advisor-close{position:absolute;top:4px;right:4px;width:22px;height:22px;padding:0;border:0;border-radius:6px;background:none;color:var(--muted);font-size:16px;line-height:1;cursor:pointer}.advisor-bubble-close:hover,.advisor-close:hover{background:var(--surface);color:var(--text)}@keyframes advisor-bubble-in{0%{opacity:0;transform:translate(-6px)}}@media(prefers-reduced-motion:reduce){.advisor-bubble{animation:none}}.advisor-panel{position:absolute;top:0;left:calc(var(--seat-size) + 12px);width:320px;max-height:min(560px,calc(100dvh - 300px));overflow:auto;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 10px 28px #0009;pointer-events:auto}.advisor-panel header{position:relative;display:flex;gap:11px;align-items:center}.advisor-large{flex:none;width:72px;height:72px;border-radius:12px}.advisor-panel .eyebrow{display:block;color:var(--muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.advisor-panel h2{margin:1px 0 3px;font-size:17px}.advisor-mood{font-size:11px;font-weight:600;color:var(--mood-content)}.advisor-mood.mood-concerned{color:var(--mood-concerned)}.advisor-mood.mood-upset{color:var(--mood-upset)}.advisor-close{top:-4px;right:-4px}.advisor-panel blockquote{position:relative;margin:11px 0 8px;padding:8px 10px;border-radius:8px;background:var(--surface);font-size:12.5px;line-height:1.45}.advisor-panel blockquote:before{content:"";position:absolute;top:-5px;left:28px;width:10px;height:10px;background:var(--surface);transform:rotate(45deg)}.advisor-concerns{display:grid;gap:5px;margin:0;padding:0;list-style:none}.advisor-concerns li{padding:7px 9px;border:1px solid var(--line);border-left:3px solid var(--line);border-radius:7px}.advisor-concerns li.severity-2{border-left-color:var(--mood-concerned)}.advisor-concerns li.severity-3{border-left-color:var(--mood-upset)}.advisor-concerns li>div:first-child{display:flex;gap:7px;align-items:baseline}.advisor-concerns b{flex:none;color:var(--muted);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase}.severity-2>div>b{color:var(--mood-concerned)}.severity-3>div>b{color:var(--mood-upset)}.advisor-concerns strong{font-size:12px}.advisor-concerns p{margin:4px 0 0;color:var(--muted);font-size:11.5px;line-height:1.4}.advisor-actions{display:flex;flex-wrap:wrap;gap:5px}.advisor-actions:not(:empty){margin-top:6px}.advisor-actions button,.advisor-panel footer button{padding:3px 8px;border:1px solid var(--line);border-radius:6px;background:none;color:var(--text);font-size:11px;cursor:pointer}.advisor-actions button:hover,.advisor-panel footer button:hover{border-color:var(--accent);color:var(--accent)}.advisor-panel footer{display:flex;justify-content:space-between;align-items:center;margin-top:9px;color:var(--muted);font-size:11px}.advisor-panel footer label{display:flex;gap:5px;align-items:center}@media(max-width:760px){.advisors{--seat-size: 34px;--seat-gap: 5px;top:150px;left:10px}.advisor-seat{border-radius:9px}.advisor-seat .advisor-portrait{border-radius:7px}.advisor-bubble{width:min(250px,calc(100vw - 80px))}.advisor-panel{width:calc(100vw - 20px - var(--seat-size) - 12px);max-height:calc(100dvh - 330px)}}.city-needs-filter{display:flex;align-items:center;gap:18px;padding:0 26px 16px;border-bottom:1px solid var(--line);flex-shrink:0}.city-needs-filter label{display:grid;gap:5px;font-size:12px}.city-needs-filter select{max-width:100%;padding:10px;border:1px solid var(--line);border-radius:6px;color:inherit;background:var(--panel)}.city-needs-filter>span{font-size:11px;line-height:1.6}.city-needs-content{overflow:auto;overscroll-behavior:contain;min-height:0;padding:0 26px 24px}.city-need-focus{border:1px solid var(--line);border-radius:8px;color:var(--text);background:var(--panel);cursor:pointer}.city-needs-grid{display:grid;gap:4px}.city-need-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;column-gap:8px;padding:6px 10px;background:var(--panel);border:1px solid var(--line);border-radius:7px}.city-need-card>details{grid-column:1 / -1}.city-need-title{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;column-gap:10px;min-width:0}.city-need-title h3{font-size:13px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.city-need-title>strong{font-size:12px;color:#caab94;white-space:nowrap;font-variant-numeric:tabular-nums}.city-need-title>strong small{display:inline;color:var(--muted);font-size:11px;margin:0}.city-need-share{grid-column:1 / -1;height:3px;margin-top:4px;border-radius:2px;background:linear-gradient(to right,#caab94 calc(var(--share) * 100%),var(--line) calc(var(--share) * 100%))}.city-need-focus{padding:4px 10px;font-size:12px}.city-need-card summary{font-size:11px;color:var(--muted);cursor:pointer;padding:4px 0 0}.city-need-card details p{margin:4px 0}.city-need-card ul{list-style:none;padding:0;margin:4px 0 2px;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px}.city-need-card li button{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;width:100%;padding:5px 8px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);font-size:12px}.city-need-card small{display:block;font-size:10px;margin-top:2px}@media(max-width:600px){.city-needs-filter{padding:0 18px 12px;flex-direction:column;align-items:stretch;gap:8px}.city-needs-content{padding:0 18px 18px}}.finance-content{padding:0 28px 24px;overflow:auto;overscroll-behavior:contain;min-height:0}.finance-content>[role=tabpanel]{padding-top:18px}.finance-content .finance-tax,.finance-content .finance-trend,.finance-content .service-funding{border-top:0;padding-top:0;margin-top:0}.finance-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:10px 0;border-block:1px solid var(--line);margin-top:14px}.finance-kpis span,.finance-tax-controls span{font-size:11px}.finance-kpis strong{display:block;font-size:clamp(18px,2vw,24px);margin:4px 0;overflow-wrap:anywhere}.finance-kpis small,.finance-tax-controls small{display:block;font-size:11px;line-height:1.6;color:var(--muted)}.finance-negative{color:#caa296}.finance-positive{color:#96b4a7}.finance-columns{display:grid;grid-template-columns:1fr 1fr;gap:26px}.finance-ledger dl{font-size:12px}.finance-ledger dl>div{display:flex;justify-content:space-between;gap:15px;padding:5px 0;border-bottom:1px solid var(--line)}.finance-ledger dd{margin:0;font-variant-numeric:tabular-nums;white-space:nowrap}.finance-total{font-weight:700}.finance-tax,.finance-trend{border-top:1px solid var(--line);padding-top:14px;margin-top:20px}.finance-tax-controls{display:flex;align-items:end;flex-wrap:wrap;gap:18px}.finance-tax-controls label{display:grid;gap:7px;font-size:12px}.finance-tax-controls strong{display:block;margin:5px 0}.finance-tabs{display:flex;gap:6px;flex-wrap:wrap}.finance-section-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.finance-section-heading>span{font-size:11px;color:var(--muted)}.finance-chart{width:100%;display:block;margin-top:8px}.finance-chart-labels{display:flex;justify-content:space-between;font-size:11px;margin-top:12px}.finance-trend details{margin-top:18px;font-size:12px}.finance-trend summary{cursor:pointer;padding:8px 0}.finance-table-wrap{overflow:auto}.service-funding{border-top:1px solid var(--line);padding-top:24px;margin-top:24px}.funding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-block:18px}.funding-card{padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.funding-card-heading{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}.funding-card h4{margin:0;font-size:16px}.funding-card-heading span{font-size:11px;color:#96b4a7}.funding-card label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px}.funding-card dl{font-size:11px}.funding-card dl>div{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.funding-card dd{margin:0;white-space:nowrap}.funding-coverage{display:flex;flex-wrap:wrap;gap:16px;font-size:12px}.funding-coverage b{display:block;font-size:20px;margin-bottom:5px}.finance-alert{padding:12px;background:var(--panel);border-radius:6px}@media(max-width:600px){.funding-grid{grid-template-columns:1fr}.finance-content{padding:0 18px 18px}.finance-columns{grid-template-columns:1fr;gap:4px}.finance-kpis{grid-template-columns:1fr 1fr}.finance-kpis>div:last-child{grid-column:1 / -1}}.finance-tax-controls input{width:120px;max-width:100%;padding:9px;border:1px solid #3a505d;border-radius:6px;background:#13212b;color:#e2eaef;font:inherit}.zone-tax-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.zone-tax-grid label{display:grid;gap:7px;min-width:0}.zone-tax-grid strong{font-size:12px}.zone-tax-grid select{width:100%}.zone-tax-panel{margin-block:16px}.zone-tax-panel small{color:#b4c4ce;font-size:11px;line-height:1.5}.zone-tax-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.line-map-heading{display:flex;gap:20px;align-items:start;justify-content:space-between}.line-map-heading h3{margin-bottom:6px}.line-map-heading p,.line-map-note{color:var(--muted);font-size:12px;line-height:1.5}.line-map-heading label{display:grid;gap:5px;min-width:130px;font-size:12px}.line-map-scroll{overflow:auto;max-height:58dvh;border:1px solid var(--line);border-radius:12px;margin:16px 0;background:#12232d;scrollbar-width:thin}.line-map svg{display:block}.line-map svg text{fill:#dce9e9;font-size:11px;font-family:inherit}.line-map svg .map-line-name{font-size:15px;font-weight:650}.line-map svg .map-mode{fill:#aac0c8;font-weight:400;font-size:12px}.map-track,.map-track-outline{fill:none;stroke-width:7;stroke-linecap:round}.map-track-outline{stroke:#ecf1e9;stroke-width:10}.map-transfer{fill:none;stroke:#b6cad1;stroke-width:2;stroke-dasharray:4 5;opacity:.8}.map-interchange{fill:#142731;stroke:#f4f3e9;stroke-width:2}.map-stop{cursor:pointer;outline:none}.map-stop:focus circle,.map-stop.selected circle{filter:drop-shadow(0 0 3px #a6e3db)}.line-map-selection{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;border-left:3px solid #82b7ad;padding:12px 16px;background:#20303a;border-radius:7px}.line-map-selection strong{flex-basis:100%}.line-map-selection span,.line-map-selection p{font-size:12px;color:var(--muted);margin:0}.line-map-connections{display:flex;flex-wrap:wrap;gap:8px;flex-basis:100%}.line-map-selection button{min-height:36px}@media(max-width:600px){.line-map-heading{display:block}.line-map-heading label{margin-top:12px}.line-map-scroll{max-height:50dvh}.line-map-selection button{min-height:44px}}.line-colour{margin:4px 0}.line-colour>summary{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);cursor:pointer}.line-colour>summary i{width:12px;height:12px;border-radius:50%;border:1px solid #dce5df}.line-colour-picker{margin:6px 0;border:1px solid var(--line);border-radius:8px;padding:8px}.line-colour-picker legend{font-size:12px;color:var(--muted);padding:0 5px}.line-colour-swatches{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-bottom:9px}.line-colour-swatches button{width:26px;height:26px;border:2px solid #dce5df;border-radius:50%;color:#fff;text-shadow:0 1px 3px #000}.line-colour-swatches button[aria-pressed=true]{outline:2px solid #dce5df;outline-offset:2px}.line-colour-swatches label{display:flex!important;align-items:center;gap:7px;font-size:12px}.line-colour-swatches input{width:34px!important;height:26px;padding:0;border:0;background:transparent}@media(max-width:600px){.line-colour-swatches button{width:44px;height:44px}}.city-manager{width:min(1080px,calc(100vw - 32px));height:min(780px,calc(100dvh - 48px));max-width:none;max-height:none;padding:0;border:1px solid var(--line);border-radius:18px;background:var(--panel);color:var(--text);overflow:hidden}.city-manager[open]{display:flex;flex-direction:column}.city-manager::backdrop{background:#081019a8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.manager-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;border-bottom:1px solid var(--line)}.manager-heading h2{margin:0 0 2px;font-size:18px}.manager-heading small{color:var(--muted);font-size:11px}.manager-heading>button{width:32px;height:32px;font-size:20px;padding:0}.manager-body{display:grid;grid-template-columns:150px minmax(0,1fr);min-height:0;flex:1}.manager-rail{border-right:1px solid var(--line);padding:12px 8px;background:#12202a;overflow:auto}.manager-rail button{display:flex;width:100%;align-items:center;gap:8px;text-align:left;min-height:34px;margin-bottom:4px}.manager-rail button>span{display:grid;place-items:center;width:20px;font-size:16px;font-weight:600}.city-manager .manager-rail button[aria-selected=true]{background:#294b48;border-color:#76b8a0}.manager-short-label{display:none}.manager-content{min-width:0;overflow:auto;overscroll-behavior:contain;padding:14px 16px}.manager-section-title{margin:0 0 10px;font-size:16px}.city-manager button,.city-manager select,.city-manager input{border:1px solid var(--line);border-radius:6px;padding:6px 10px;background:#172831;color:var(--text);font:inherit;font-size:12px;max-width:100%}.city-manager button:disabled{opacity:.5;cursor:default}.city-manager button:focus-visible,.city-manager select:focus-visible{outline:2px solid #9ad7c2;outline-offset:2px}.city-manager p{font-size:12px;line-height:1.6;color:var(--muted)}.city-manager .finance-content,.city-manager .city-needs-content{padding:0;overflow:visible}.city-manager .city-needs-filter{padding:0 0 14px}.city-manager .transport-content label{display:grid;gap:6px;font-size:12px;margin-block:12px}.city-manager .transport-content select{width:100%}@media(max-width:650px){.city-manager{width:calc(100vw - 16px);height:calc(100dvh - 24px);border-radius:14px}.manager-heading{padding:14px}.manager-heading h2{font-size:20px}.manager-body{grid-template-columns:65px minmax(0,1fr)}.manager-rail{padding:8px 4px}.city-manager .manager-rail button{flex-direction:column;gap:4px;padding:8px 2px;font-size:9px}.manager-full-label{display:none}.manager-short-label{display:inline}.manager-content{padding:13px}.city-manager .finance-columns,.city-manager .transport-columns,.city-manager .city-needs-grid{grid-template-columns:1fr}.city-manager .zone-tax-grid{gap:4px}.city-manager .zone-tax-grid strong{font-size:10px}.city-manager .zone-tax-grid select{padding-inline:5px}}.city-manager .manager-heading>button{padding:0;font-size:24px}:root{font-family:DM Sans,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}.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}.growth-inspector{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.growth-inspector p{font-size:12px;margin:8px 0}.growth-chance{font-size:12px;color:#97b4a2}.growth-inspector ul{list-style:none;padding:0;margin:12px 0 0}.growth-inspector li{display:flex;gap:8px;font-size:12px}.growth-inspector li>span{color:#96b8a6}.growth-inspector .waiting>span{color:#cdb49b}.growth-inspector li strong{font-weight:500}.growth-inspector li small{display:block;color:var(--muted);line-height:1.5;margin-top:4px}.growth-inspector li button{background:none;border:0;padding:5px 0;text-decoration:underline;color:#96aea2;text-align:left;font-size:11px}.growth-inspector .sandbox-note{background:var(--panel);padding:9px;border-radius:6px}.build-funding{display:grid;gap:7px;padding:0 0 15px;margin-bottom:16px;border-bottom:1px solid var(--line);font-size:12px}.build-funding select{width:100%;min-width:0;padding:8px;border:1px solid var(--line);border-radius:6px;color:var(--text);background:var(--panel);font-size:12px;text-transform:capitalize}.build-funding strong{font-size:12px;font-weight:500}.build-funding small{color:var(--muted);line-height:1.5}.guide-toggle{position:absolute;background:var(--panel);border:1px solid var(--line);border-radius:7px;color:var(--muted);font-size:12px}.guide>small{display:block;font-size:11px;line-height:1.6;color:var(--muted);padding-top:8px;border-top:1px solid var(--line)}*{box-sizing:border-box}body{margin:0}button,select,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,canvas:focus-visible,select:focus-visible{outline:3px solid #d4ac58;outline-offset:3px}button,a{-webkit-tap-highlight-color:transparent}.app{display:flex;flex-direction:column}.topbar{display:flex;align-items:center;color:var(--text);z-index:2}.brand-icon{display:grid;place-items:center}.stat{display:grid}.stat>span{text-transform:uppercase}.stat strong{font:500 20px Space Grotesk,sans-serif;white-space:nowrap}.city-view{position:relative;flex:1;min-height:0;background:linear-gradient(var(--panel),var(--panel));overflow:hidden}.world{position:absolute;inset:0}.world canvas{display:block;touch-action:none}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.6px;color:var(--muted)}h1{font:500 34px Space Grotesk,sans-serif;letter-spacing:-1px;margin:6px 0}.inspector{display:flex;flex-direction:column;position:absolute;border:1px solid var(--line);overflow:hidden}.inspector-toggle{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;border:0;background:transparent;color:var(--text);font-size:12px;font-weight:600;text-align:left}.inspector-toggle:hover{background:var(--panel)}.inspector-content{min-height:0;overflow:auto;overscroll-behavior:contain}.management-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:18px}.management-shortcuts button{padding:9px 6px;min-height:40px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);font-size:11px}.navigation-dock{position:absolute}.minimap-panel{width:174px;margin:0 0 8px auto;padding:9px;border:1px solid var(--line);border-radius:10px}.minimap-heading,.minimap-scale{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:var(--muted);padding:1px 0 7px;letter-spacing:1px}.minimap-scale{padding:7px 0 0;letter-spacing:0}.minimap-scale b{border-bottom:2px solid var(--line);min-width:28px;text-align:center}.minimap-surface{position:relative;aspect-ratio:1;overflow:hidden;border-radius:4px}.minimap-surface canvas,.minimap-surface svg,.minimap-input{position:absolute;inset:0;width:100%;height:100%}.minimap-surface canvas{image-rendering:pixelated}.minimap-input{background:transparent;border:0;cursor:crosshair;border-radius:4px}.minimap-input:focus-visible{outline:3px solid #fff3ad;outline-offset:-3px}.minimap-parcel{fill:none;stroke:#e8f1dbb0;stroke-width:.5}.minimap-viewport{fill:#ffffff18;stroke:#fff9da;stroke-width:1.3}.zoom-level{display:flex;align-items:flex-end;gap:6px;font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.zoom-level-row{display:flex;justify-content:flex-end;margin-bottom:5px}.zoom-level-row .zoom-level{padding:4px 7px;border:1px solid var(--line);border-radius:7px;background:var(--panel)}.zoom-pips{display:flex;align-items:flex-end;gap:3px}.zoom-pips i{width:4px;border-radius:1px;background:var(--line)}.zoom-pips i:nth-child(1){height:4px}.zoom-pips i:nth-child(2){height:6px}.zoom-pips i:nth-child(3){height:8px}.zoom-pips i:nth-child(4){height:10px}.zoom-pips i:nth-child(5){height:12px}.zoom-pips i:nth-child(6){height:14px}.zoom-pips i.on{background:#f2c14e}.navigation-buttons{display:grid;gap:4px}.navigation-buttons button{min-width:0;padding:0;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--text)}.navigation-buttons button:hover{background:var(--panel)}@media(max-width:760px){.minimap-panel{width:144px;padding:7px}.minimap-scale .zoom-level{letter-spacing:0;min-width:0}.minimap-scale .zoom-pips{display:none}}h2{font:600 24px Space Grotesk,sans-serif;letter-spacing:-.8px;margin:12px 0}.inspector p{color:var(--muted)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-heading button{border:0;background:none;font-size:22px;color:var(--muted);padding:0 4px}dl{margin:22px 0 10px;font-size:14px}dl>div{display:flex;justify-content:space-between;padding:11px 0;border-top:1px solid var(--line)}dt{color:var(--muted)}dd{margin:0;font-weight:500}dd:first-letter{text-transform:uppercase}.demand{gap:8px}.housing-guide{margin-top:20px;border-top:1px solid var(--line);padding-top:16px}.housing-guide strong{display:block;color:var(--muted);margin-bottom:3px}.housing-guide small{display:block;color:var(--muted);line-height:1.6}.housing-unlocks span{display:block;color:var(--muted);font-size:12px}.demand>span{display:flex;justify-content:space-between;flex:1;padding:8px;border-radius:5px;font-size:12px}.guide{position:absolute;background:var(--panel);border:1px solid var(--line);border-radius:10px}.guide>button{display:flex;align-items:center;gap:10px;width:100%;background:none;border:0;text-align:left;font-size:13px;padding:11px 0}.guide>button:hover{color:#9fb899}.guide>button>span{display:grid;place-items:center;flex-shrink:0;width:22px;height:22px;background:var(--panel);border-radius:50%;color:var(--muted);font-size:12px}.activity{position:absolute}.activity p{font-size:12px;line-height:1.5;margin:9px 0;color:var(--text);padding:7px 10px;border-radius:5px}kbd{font:11px DM Sans,sans-serif;opacity:.65}.toolbar{display:flex;justify-content:center;z-index:2}.catalogue{display:flex;flex-direction:column}.secondary-button{width:100%;border:1px solid var(--line);border-radius:6px;background:var(--panel);padding:10px;font-size:13px}.placement-hint{position:absolute;left:50%;transform:translate(-50%);border:1px solid var(--line);border-radius:7px;max-width:420px;pointer-events:none}.placement-hint.invalid{background:var(--panel);border-color:var(--accent);color:#c2a49b}.placement-hint span{margin-left:15px;opacity:.6;font-size:12px}.toast{position:absolute;left:50%;transform:translate(-50%);background:var(--panel);border:1px solid var(--accent);border-radius:8px;box-shadow:0 8px 30px #1d3a3020;z-index:4}.toast span{margin-left:15px}.toast.terrain-confirmation{top:80px;bottom:auto;z-index:65;width:520px;max-width:calc(100vw - 24px);text-align:left;line-height:1.5}.toast .terrain-summary{display:block;margin:0 0 8px}footer{display:flex;justify-content:space-between;gap:16px;background:var(--base);color:var(--text)}.render-error{position:absolute;top:35%;left:30%;max-width:380px;padding:24px;background:var(--panel);border-radius:12px}@media(max-width:760px){h1{font-size:26px}.guide{display:none}.inspector-toggle{padding-inline:14px}.placement-hint{top:80px;width:max-content}footer span:first-child{display:none}}.modal-backdrop{position:fixed;inset:0;z-index:20;background:var(--base);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:grid;place-items:center;padding:20px;overflow:auto}.lobby{width:min(620px,100%);max-height:90svh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:36px}.lobby>p{font-size:15px;line-height:1.6;color:var(--muted)}.lobby h1{font-size:32px;margin:16px 0}.lobby form{display:flex;flex-direction:column;gap:16px}.lobby label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:500}.lobby input,.activity input{border:1px solid var(--line);border-radius:6px;padding:12px;background:var(--panel);color:var(--text);min-width:0}.primary-button{border:0;background:var(--base);color:var(--text);border-radius:7px;padding:12px 18px;font-weight:500;font-size:14px}.primary-button:hover{background:var(--base)}button:disabled{opacity:.5}.text-button{border:0;background:none;padding:10px 8px;font-size:14px;color:var(--muted)}.sso-divider{text-align:center;color:var(--muted);font-size:13px;margin:14px 0 10px}.sso-buttons{display:flex;flex-wrap:wrap;gap:8px}.sso-button{flex:1 1 160px;display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:10px 14px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--text);font-size:14px;font-weight:600;text-decoration:none}.sso-button:before{content:"";width:10px;height:10px;border-radius:50%;background:#4285f4}.sso-discord:before{background:#5865f2}.sso-button:hover{border-color:var(--accent)}.sso-button.disabled{opacity:.5;pointer-events:none}.linked-accounts{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px}.linked-account{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.linked-account img{width:20px;height:20px;border-radius:50%}.form-notice{color:var(--accent);font-size:14px}.form-error{padding:12px;background:var(--panel);border-radius:6px;color:#c19f9b!important}.activity{pointer-events:auto}.journal-tabs{display:flex}.journal-tabs button{border:0;background:var(--panel);border-radius:5px;padding:6px 10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.journal-tabs button.active{background:var(--panel);color:var(--text)}.message-list{max-height:170px;overflow:auto}.activity form{display:flex;margin-top:8px;gap:5px}.activity input{font-size:12px;padding:9px;flex:1}.activity form button{border:1px solid var(--line);border-radius:5px;background:var(--panel);padding:0 12px}.activity strong{font-weight:600;color:var(--text)}@media(max-width:760px){.lobby{padding:24px}.lobby h1{font-size:26px}.activity{display:block}.activity p{font-size:10px;padding:5px}.message-list{max-height:100px}.activity input{padding:6px;font-size:10px}.activity form button{padding:0 5px}}@media(max-width:1100px){.clock-stat,.topbar .approval-stat{display:none}}@media(max-width:760px){.topbar .daily-desk-button{flex-shrink:0}.topbar .stat{min-width:0}.guide-toggle{font-size:11px}.guide.is-open{display:block;background:var(--panel)}}.inspector dd .pollution-terms{display:block;color:var(--muted);line-height:1.5;margin-top:4px}:root{color-scheme:dark;--base: #191e20;--panel: #222b2eea;--surface: #354044;--line: #586260;--text: #e8e6dc;--muted: #afb6ad;--accent: #cfb879;color:var(--text);background:var(--base)}body{overflow:hidden}.incident-layer{position:absolute;inset:0;pointer-events:none;z-index:1}.incident-marker{position:absolute;top:0;left:0;pointer-events:auto;min-width:36px;height:36px;border-radius:50%;background:#502e26;border:2px solid #ffc685;color:#ffe4bd;font-size:22px;box-shadow:0 2px 12px #0008;animation:incident-pulse 2s ease-in-out infinite}.incident-marker[hidden]{display:none}@keyframes incident-pulse{50%{box-shadow:0 0 0 6px #ffc68533}}@media(prefers-reduced-motion:reduce){.incident-marker{animation:none}}.feed-location{padding:0;border:0;background:none;text-align:left;color:var(--text);font-size:inherit;line-height:inherit;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}button,input,select{color:var(--text)}input,select{background-color:var(--surface)}select option{background:#1d3355;color:var(--text)}button:disabled{cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:hover:not(:disabled){filter:brightness(1.12)}.app{height:100dvh;min-height:0}.topbar{min-height:56px;height:56px;flex-shrink:0;gap:24px;padding:7px 16px;border-bottom:1px solid var(--line)}.brand-icon{height:30px;width:30px;font-size:21px;background:var(--accent);color:var(--base)}.stat{gap:2px}.stat>span{font-size:9px}.stat strong{font-size:17px}.simulation-controls{top:12px;left:16px;padding:6px 8px;gap:5px;border-radius:8px}.simulation-controls>span{min-width:95px}.simulation-controls small{font-size:9px;max-width:145px}.simulation-controls button{min-width:30px;min-height:30px;background:var(--surface);border:1px solid var(--line)}.simulation-controls button[aria-pressed=true],.road-choices .active{background:#17304f;border-color:var(--accent);color:var(--text)}.view-toggle{min-width:32px;height:32px;padding:4px;font-size:17px;margin:0}.inspector{top:64px;right:16px;width:272px;max-height:calc(100% - 126px);padding:0;border-radius:8px}.inspector-toggle{min-height:38px;padding:8px 12px}.inspector-content{padding:0 12px 12px}.inspector h2{font-size:15px;margin:4px 0 6px;letter-spacing:-.2px}.inspector h3{font-size:13px;margin:8px 0 4px}.inspector:not(.show-help) .panel-heading{float:right;margin:2px -4px 0 8px}.inspector .panel-heading button{font-size:18px;line-height:1}.inspector p{font-size:12px;line-height:1.5}.inspector dl{font-size:12px;margin:12px 0}.inspector dl>div{padding:4px 0}.inspector dl>.warning dd{color:#f0a58c}.inspector dl.site-facts{display:grid;grid-template-columns:1fr 1fr;column-gap:12px}.inspector dl.site-facts>div{display:grid;align-content:start;gap:1px}.inspector dl.site-facts>.wide{grid-column:1 / -1}.inspector dl.site-facts dt{font-size:10px}.inspector p.site-design,.inspector:not(.show-help) p.site-design{display:block;margin:-4px 0 6px;font-size:12px;opacity:.7}.inspector:not(.show-help) p.status-note{display:block;color:#f0c38c}.inspector:not(.show-help) p,.inspector:not(.show-help) .housing-guide,.inspector:not(.show-help) .eyebrow,.inspector:not(.show-help) .growth-inspector li small{display:none}.inspector .city-summary{display:none}.city-view:has(.minimap-panel) .inspector{max-height:calc(100% - 340px)}.help-toggle{background:none;border:0;padding:2px 0 6px;color:var(--accent);font-size:11px;text-align:left}.context-help{margin:8px 0 14px;font-size:12px}.context-help summary{color:var(--accent);cursor:pointer;padding:5px 0}.road-choices{margin-bottom:9px;gap:5px}.road-choices button{min-height:34px}.catalogue{margin-top:10px;gap:5px}.growth-inspector{padding:6px 0}.growth-inspector h3{font-size:13px;margin:4px 0}.growth-inspector ul{margin-top:6px}.growth-inspector li{margin:3px 0}.demand{display:flex;margin-top:12px}.demand-value{flex:1;min-width:0;border-radius:5px;font-size:12px}.demand-value summary{cursor:pointer;padding:8px}.demand-value summary b{float:right}.demand:has(details[open]){flex-wrap:wrap}.demand-value[open]{flex-basis:100%}.demand-tooltip{padding:8px;line-height:1.5}.demand-details{font-size:11px;margin:10px 0}.demand-details summary{cursor:pointer;color:var(--accent)}.demand-details>div{padding:8px 0;line-height:1.5;color:var(--muted)}.guide-toggle{top:64px;left:16px;width:auto;height:32px;padding:6px 10px}.guide,.guide.is-open{top:104px;left:16px;width:250px;max-height:calc(100% - 165px);padding:14px;overflow:auto;z-index:5}.activity{left:16px;bottom:12px;width:260px}.journal-tabs{gap:5px}.journal-tabs button{min-height:32px;font-size:10px}.message-list{background:var(--panel);border-radius:6px}.message-list[hidden]{display:none}.activity p{background:transparent}.navigation-dock{inset:auto 16px 12px auto;width:272px}.navigation-buttons{grid-template-columns:repeat(8,1fr)}.navigation-buttons button{height:32px;font-size:11px}.toolbar{flex-shrink:0;gap:4px;padding:5px 10px;border-top:1px solid var(--line);background:var(--base)}footer{padding:4px 16px;font-size:9px}.toast{top:auto;bottom:52px;padding:10px 14px;max-width:min(440px,calc(100% - 32px));font-size:12px}.placement-hint{bottom:12px;font-size:12px;padding:9px 12px}.r{background:#253e31;color:#a3dba2}.c{background:#243b4b;color:#a0cfea}.i{background:#423b27;color:#e3ce8f}.o{background:#352c47;color:#cdb8ee}.daily-dialog,.lobby{box-shadow:0 24px 80px #0008}@media(max-width:1100px){.topbar{gap:14px}}@media(max-width:760px){.navigation-buttons{grid-template-columns:repeat(4,1fr)}.navigation-buttons button{height:36px}.topbar{height:52px;min-height:52px;padding:6px 10px;gap:10px}.stat strong{font-size:14px}.topbar .stat>span{font-size:8px}.topbar .daily-desk-button{font-size:10px;padding:6px}.simulation-controls{top:8px;left:10px;padding:5px;gap:3px}.simulation-controls>span{min-width:55px}.simulation-controls label{display:none}.simulation-controls small{max-width:82px}.guide-toggle{top:60px;left:10px}.guide.is-open{top:106px;left:10px;width:calc(100% - 20px);max-height:calc(100% - 175px)}.inspector{top:auto;bottom:112px;right:10px;width:min(272px,calc(100% - 20px));max-height:48%}.city-view:has(.minimap-panel) .inspector{bottom:290px;max-height:calc(100% - 400px)}.city-view:has(.minimap-panel) .weather-notice{max-width:calc(100% - 175px)}.minimap-panel{position:relative;z-index:7}.navigation-dock{bottom:10px;right:10px;width:226px}.activity{left:10px;bottom:10px;width:110px}.activity:has([aria-expanded=true]){bottom:53px;width:min(260px,calc(100% - 20px));z-index:6}.activity input{min-width:0}.journal-tabs button{padding:5px 7px}.toolbar{justify-content:flex-start;overflow-x:auto;gap:3px;padding:5px;scrollbar-width:thin}footer{display:none}.placement-hint{bottom:54px;max-width:calc(100% - 20px)}}.weekly-goal{display:grid;gap:4px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);text-align:left;font-size:11px;max-width:210px}.weekly-goal progress{width:100%;height:5px;accent-color:#f2c14e}.topbar .weekly-goal{flex:0 1 175px}@media(max-width:700px){.topbar .weekly-goal{position:absolute;top:58px;left:12px;width:165px}}.today-button{display:flex;align-items:center;gap:5px;white-space:nowrap}.today-badge{border-radius:10px;padding:2px 6px;background:var(--accent);color:var(--base);font-size:10px}.today-steps{display:flex;gap:8px;margin:16px 0}.today-steps button{flex:1;border:1px solid var(--line);border-radius:6px;padding:8px;background:var(--surface);color:var(--text)}.today-steps [aria-current=step]{border-color:var(--accent);background:#17304f}.today-next{margin-top:16px}.daily-dialog section[hidden]{display:none}.confirm-dialog{width:min(420px,calc(100vw - 32px));box-sizing:border-box;border:1px solid var(--line);border-radius:12px;padding:24px;background:var(--panel);color:var(--text)}.confirm-dialog::backdrop{background:#090f17b8}.confirm-dialog h2{margin-top:0;font-size:22px}.confirm-dialog p{color:var(--muted);line-height:1.5}.confirm-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.confirm-actions button{padding:9px 15px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text)}.confirm-actions .danger-button{background:#713e38;border-color:#ba7365}.topbar,.simulation-controls,.build-dock .dock-bar,.build-dock .dock-tray,.minimap-panel,.inspector,.guide,.placement-hint,.toolbar,.journal-tabs,.weekly-goal{box-shadow:inset 0 1px #ffffff0f,0 8px 28px #09121735;border-color:#8babbb30}.navigation-buttons button,.simulation-controls button,.management-shortcuts button,.secondary-button{box-shadow:inset 0 1px #ffffff0b}.simulation-controls button[aria-pressed=true]{box-shadow:inset 0 0 0 1px #cfb87940,0 2px 8px #09121722}.topbar{background:linear-gradient(110deg,#222b2ef5,#2b3233f5)}.brand-icon{border-radius:9px}.stat strong{font-variant-numeric:tabular-nums;font-weight:500}.stat>span{color:var(--muted);letter-spacing:1.1px}.simulation-controls,.minimap-panel,.inspector,.placement-hint{background:var(--panel);-webkit-backdrop-filter:blur(16px) saturate(115%);backdrop-filter:blur(16px) saturate(115%)}.build-dock{background:#14242d;border-color:#8babbb30}.facility-status.facility-operating{color:#7fd3a6}.facility-status.facility-busy{color:#ecd06a}.facility-status.facility-overloaded,.facility-status.facility-noRoad{color:#f08a78}.stat-trend{font-size:10px;letter-spacing:0;white-space:nowrap}.stat-trend.up{color:#9fe0a4}.stat-trend.down{color:#f0a58c}.employment-stat small .stat-trend{margin-left:6px}.clock-stat.negative strong{color:#f0a58c}.clock-stat.positive strong{color:#b9e8c4}details.approval-stat{position:relative}details.approval-stat>summary{list-style:none;cursor:pointer;display:grid;gap:2px}details.approval-stat>summary::-webkit-details-marker{display:none}details.approval-stat>summary>span{font-size:9px;text-transform:uppercase;letter-spacing:1.1px;color:var(--muted)}@media(max-width:760px){details.approval-stat>summary>span{font-size:8px}}.approval-breakdown{position:absolute;top:calc(100% + 8px);left:0;z-index:6;min-width:220px;padding:10px 12px;display:grid;gap:4px;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 30px #0006;font-size:12px}.approval-breakdown>div{display:flex;justify-content:space-between;gap:14px}.approval-breakdown dt{color:var(--muted)}.approval-breakdown dd{margin:0;font-variant-numeric:tabular-nums;color:#b9e8c4}.approval-breakdown .negative dd{color:#f0a58c}.needs-stat{border:1px solid #8d5a4a;border-radius:8px;padding:4px 10px;background:#3a2622;color:var(--text);text-align:left}.needs-stat strong{color:#ffc9a8}@media(max-width:1100px){.needs-stat{display:none}}.save-actions{display:inline-flex;gap:4px}.save-actions button{font-size:14px}.speed-overnight{font-size:15px}.speed-nudge{animation:speed-nudge 1.4s ease-in-out 3}@keyframes speed-nudge{50%{box-shadow:0 0 0 5px #80c9ac55;border-color:var(--accent)}}@media(prefers-reduced-motion:reduce){.speed-nudge{animation:none}}.celebration{position:absolute;top:70px;left:50%;transform:translate(-50%);z-index:5;display:flex;align-items:center;gap:14px;max-width:min(520px,calc(100% - 32px));padding:12px 16px;background:linear-gradient(120deg,#2b3d34,#1c2a2c);border:1px solid var(--accent);border-radius:10px;box-shadow:0 12px 40px #0008;animation:celebration-in .42s cubic-bezier(.2,.9,.3,1.2)}.celebration-mark{font-size:26px;color:#f2c46d;animation:celebration-spin 1.6s ease-in-out infinite}.celebration strong{display:block;font-size:15px}.celebration p{margin:3px 0 0;font-size:12px;color:var(--muted)}.celebration-actions{display:flex;gap:6px;margin-left:auto}.celebration-actions button{padding:6px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text)}@keyframes celebration-in{0%{opacity:0;transform:translate(-50%,-12px)}}@keyframes celebration-spin{50%{transform:rotate(18deg) scale(1.15)}}@media(prefers-reduced-motion:reduce){.celebration,.celebration-mark{animation:none}}.shortcut-columns{columns:2 300px;column-gap:24px}.shortcut-columns>section{break-inside:avoid}.shortcut-sheet h3{margin:10px 0 4px;font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:var(--muted)}.shortcut-list{margin:0;display:grid;gap:0}.shortcut-list>div{display:grid;grid-template-columns:minmax(120px,45%) 1fr;gap:8px;align-items:center;padding:3px 0;border-bottom:1px solid var(--line);font-size:12px}.shortcut-list dt kbd,.secondary-button kbd,.road-choices kbd{font:11px/1.2 ui-monospace,monospace;padding:2px 6px;border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;background:var(--surface)}.shortcut-list dd{margin:0}.hover-progress{width:100%;height:5px;margin:4px 0;accent-color:var(--accent)}.hover-blocker{color:#f0c9a0}.build-card.unaffordable{opacity:.55}.build-card.unaffordable .build-card-heading b{color:#f0a58c}.journal-filters{display:flex;flex-wrap:wrap;gap:4px;padding:6px 8px 0}.journal-filters button{font-size:10px;padding:3px 7px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted)}.journal-filters button.active{border-color:var(--accent);color:var(--text);background:#29473e}.transit-badge{margin-left:8px;padding:1px 7px;font-style:normal;font-size:10px;text-transform:uppercase;letter-spacing:.6px;border-radius:999px;background:#3b4750;color:var(--muted);vertical-align:middle}.transit-badge.interrupted{background:#5a2f2a;color:#ffc9a8}.transit-card-paused{opacity:.8}.abandoned-layer{position:absolute;inset:0;pointer-events:none;z-index:1}.abandoned-marker{min-width:18px;height:18px;padding:0;font-size:11px;line-height:1;background:#3b3a3380;border-width:1px;border-color:#b6ad8a66;color:#efe6c4;box-shadow:none;opacity:.7;animation:none}.abandoned-marker:hover,.abandoned-marker:focus-visible{background:#3b3a33;opacity:1}.tax-break-even button,.finance-biggest strong{color:var(--accent)}.tax-break-even button{padding:1px 7px;font-size:11px;border:1px solid var(--line);border-radius:4px;background:var(--surface)}.local-import{display:grid;gap:6px;margin-top:14px;font-size:12px}.local-import small{color:var(--muted)}.shortcut-list dd,.approval-breakdown dd{text-transform:none;font-weight:400}dd.plain,dd.plain:first-letter{text-transform:none}.app.compact-game,body:has(.app.compact-game)>:is(.preferences-dialog,.shortcut-sheet){--base: #09090b;--panel: var(--glass-tint-dense);--surface: var(--glass-fill);--line: var(--glass-line);--text: #f1f1f3;--ink: var(--text);--muted: #c8ccd3;--accent: #d3bd85;color:var(--text)}.app.compact-game{position:relative}.topbar.floating-topbar{--hud-panel: var(--glass-tint-dense);--hud-border: var(--glass-line);--hud-muted: #d6dae1;--hud-gold: #ecd9a6;position:absolute;inset:12px 12px auto;z-index:20;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:12px;height:auto;min-height:0;padding:0;border:0;background:none;box-shadow:none;color:#f1f1f3;pointer-events:none;font-size:12px}.floating-topbar .hud-island{position:relative;display:flex;align-items:center;gap:8px;min-width:0;height:42px;padding:4px 8px;border:1px solid transparent;border-radius:13px;pointer-events:auto}.floating-topbar .hud-city-island{justify-self:start;max-width:240px}.floating-topbar .hud-controls-island{justify-self:end;gap:5px}.floating-topbar .hud-icon{width:16px;height:16px;flex:0 0 16px;color:var(--hud-muted)}.floating-topbar summary{list-style:none;cursor:pointer}.floating-topbar summary::-webkit-details-marker{display:none}.floating-topbar .hud-menu{position:relative;min-width:0}.floating-topbar .hud-menu>summary{display:flex;align-items:center;gap:9px;min-height:32px;border-radius:5px}.floating-topbar .hud-city-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:500}.floating-topbar .hud-brand{display:grid;place-items:center;width:25px;height:25px;flex:0 0 25px;border-radius:7px;background:var(--glass-active-fill);color:var(--hud-gold);font-size:18px;font-weight:600}.floating-topbar .hud-connection{width:5px;height:5px;flex:0 0 5px;border-radius:50%;background:#d3bd85}.floating-topbar .hud-connection.saved{background:#8fc8a1}.floating-topbar .hud-menu[open]>summary,.floating-topbar .hud-menu>summary:hover{color:var(--hud-gold)}.floating-topbar .hud-budget,.floating-topbar .hud-metric{display:flex;align-items:center;gap:7px;white-space:nowrap}.floating-topbar .hud-budget{padding:5px 4px;border:0;border-radius:5px;background:none;color:var(--hud-gold)}.floating-topbar .hud-budget strong{font-weight:500;font-size:12px;font-variant-numeric:tabular-nums}.floating-topbar .hud-budget .hud-icon{color:inherit}.floating-topbar .hud-divider{height:18px;width:1px;background:var(--hud-border)}.floating-topbar .hud-stats-island{gap:15px;padding-inline:12px}.floating-topbar .hud-metric .stat,.floating-topbar .hud-metric .approval-stat>summary{display:flex;align-items:center;gap:0}.floating-topbar .hud-metric .stat strong{font-size:12px}.floating-topbar .hud-metric .stat>span,.floating-topbar .hud-metric .approval-stat>summary>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.floating-topbar .hud-metric .stat small{display:none}.floating-topbar .hud-metric .approval-stat>summary{min-height:30px}.floating-topbar .approval-breakdown{left:auto;right:-12px;background:var(--hud-panel);border-color:var(--hud-border)}.floating-topbar .simulation-controls-compact{position:static;display:flex;align-items:center;gap:5px;padding:0;border:0;border-radius:0;background:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.floating-topbar .simulation-controls-compact>.simulation-time{min-width:0;padding-inline:4px}.floating-topbar .simulation-time strong{font-size:11px;white-space:nowrap;font-weight:500;color:var(--hud-muted)}.floating-topbar .simulation-pause,.floating-topbar .simulation-speed-menu>summary,.floating-topbar .hud-view-menu>summary{display:flex;align-items:center;justify-content:center;gap:4px;height:30px;min-height:30px;min-width:30px;padding:3px 5px;border:1px solid transparent;border-radius:5px;background:none;color:var(--hud-muted);box-shadow:none;font-size:11px}.floating-topbar .simulation-pause[aria-pressed=true],.floating-topbar .simulation-speed-menu[open]>summary,.floating-topbar .hud-view-menu[open]>summary{background:var(--glass-active-fill);color:var(--glass-active-text)}.floating-topbar .needs-stat-compact{display:flex;align-items:center;gap:4px;padding:4px 6px;height:30px;border:0;background:none}.floating-topbar .needs-stat-compact strong{font-size:11px;color:var(--hud-gold)}.floating-topbar .hud-popover{position:absolute;top:calc(100% + 12px);left:-9px;z-index:2;display:grid;gap:7px;width:min(280px,calc(100vw - 24px));max-height:calc(100dvh - 150px);overflow-y:auto;overscroll-behavior:contain;padding:14px;border:1px solid var(--hud-border);border-radius:13px;background:var(--hud-panel);box-shadow:var(--glass-shadow)}.floating-topbar .hud-popover>strong{overflow-wrap:anywhere;font-size:13px;font-weight:500}.floating-topbar .hud-status,.floating-topbar .hud-popover small{display:block;max-width:none;color:var(--hud-muted);font-size:10px;line-height:1.5}.floating-topbar .hud-popover button,.floating-topbar .hud-popover>a,.floating-topbar .hud-popover details>summary,.floating-topbar .hud-popover select{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:auto;min-height:34px;padding:8px 9px;border:1px solid var(--hud-border);border-radius:8px;background:var(--glass-fill);color:#f1f1f3;font-family:inherit;font-size:11px;text-align:left;text-decoration:none}.floating-topbar .hud-popover button:hover:not(:disabled),.floating-topbar .hud-popover>a:hover,.floating-topbar .hud-popover details>summary:hover{background:var(--glass-fill-hover)}.floating-topbar .hud-popover .hud-icon{display:none}.floating-topbar .hud-controls-island .hud-popover{left:auto;right:-9px}.floating-topbar .simulation-speed-menu{position:static}.floating-topbar .hud-controls-island .simulation-popover{top:calc(100% + 8px);right:0}.floating-topbar .simulation-speed-choices{display:flex;gap:4px}.floating-topbar .simulation-speed-choices button{justify-content:center;min-width:0;padding-inline:4px}.floating-topbar .simulation-speed-choices button[aria-pressed=true]{background:var(--glass-active-fill);border-color:var(--glass-active-line);color:var(--glass-active-text)}.floating-topbar .simulation-tax{display:flex;align-items:center;justify-content:space-between;font-size:11px}.floating-topbar .simulation-tax select{width:80px}.floating-topbar .hud-overlay-label{margin-top:6px;color:var(--hud-muted);font-size:10px}.floating-topbar .hud-overview-stats{display:grid;gap:12px;padding:12px 4px}.floating-topbar .hud-overview-stats .stat{display:grid}.floating-topbar .hud-overview-stats .approval-breakdown{position:static;min-width:0;margin-top:6px;font-size:11px}.floating-topbar .hud-popover .weekly-goal{position:static;width:100%;max-width:none}.floating-topbar .hud-map-menu>canvas,.floating-topbar .hud-map-menu>svg{max-width:100%;margin-block:8px}.floating-topbar .hud-players{display:flex;flex-wrap:wrap;gap:8px;font-size:10px;color:var(--hud-muted)}.floating-topbar .hud-players>span{display:flex;align-items:center;gap:4px}.floating-topbar .hud-players i{height:6px;width:6px;border-radius:50%}.floating-topbar .payday-clock{position:static;padding:0 4px;border-radius:0;background:none;font-size:10px}.compact-game .compact-map-legend{position:absolute;top:66px;right:12px;z-index:8}.compact-map-legend .transit-network-controls,.compact-map-legend .map-palette-legend{position:static;max-height:calc(100dvh - 170px);overflow-y:auto;background:var(--glass-tint-dense);border-color:var(--glass-line)}.compact-game :is(.minimap-panel,.inspector,.guide,.placement-hint,.advisor-panel,.advisor-bubble-body,.weather-notice,.building-hover,.celebration){background:var(--panel);border-color:var(--line);border-radius:13px;box-shadow:var(--glass-shadow)}.compact-game :is(.minimap-panel,.navigation-buttons,.journal-tabs,.guide-toggle,.zoom-level-row .zoom-level){background:var(--glass-tint);border:1px solid var(--line);box-shadow:var(--glass-shadow)}.compact-game .minimap-panel{padding:8px}.compact-game .minimap-surface{box-shadow:0 0 0 1px var(--line)}.compact-game .minimap-input:hover{filter:none}.compact-game .minimap-input:focus-visible{outline-color:var(--accent)}.compact-game .zoom-pips i.on{background:var(--accent)}.compact-game .navigation-buttons{gap:2px;padding:4px;border-radius:13px}.compact-game .navigation-buttons button{height:28px;padding:0;border:1px solid transparent;border-radius:9px;background:transparent;box-shadow:none;color:var(--muted)}.compact-game .navigation-buttons button:hover,.compact-game .inspector-toggle:hover{background:var(--surface);color:var(--text)}.compact-game .inspector{background:var(--glass-tint)}.compact-game .inspector:has(.inspector-content:not([hidden])){background:var(--panel)}.compact-game .journal-tabs{width:max-content;gap:2px;padding:3px;border-radius:13px}.compact-game .journal-tabs button{min-height:28px;padding:5px 8px;border:1px solid transparent;border-radius:9px;background:transparent;font-size:10px;letter-spacing:.5px}.compact-game .activity:has(.message-list:not([hidden])){padding:8px;border:1px solid var(--line);border-radius:13px;background:var(--panel);box-shadow:var(--glass-shadow)}.compact-game .journal-size{border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--muted)}.compact-game :is(.navigation-buttons button[aria-pressed=true],.navigation-buttons button[aria-expanded=true],.journal-tabs button.active,.journal-filters button.active,.one-way-control button[aria-pressed=true],.transit-network-controls button[aria-pressed=true],.city-manager .manager-rail button[aria-selected=true]){background:var(--glass-active-fill);border-color:var(--glass-active-line);color:var(--glass-active-text)}.compact-game .advisor-seat{background:var(--base)}.compact-game .advisor-bubble-body{border-left-color:var(--mood-concerned)}.compact-game .advisor-bubble.severity-3 .advisor-bubble-body{border-left-color:var(--mood-upset)}.compact-game .weather-notice.active{border-color:#d9b564}.compact-game .building-hover>span{color:var(--muted)}.compact-game :is(.transit-network-label,.manager-rail){background:var(--base)}.compact-game :is(.civic-activities,.treasury-grants,.month-report,.hall-of-fame,.week-review,.line-map-scroll){background:var(--panel);border-color:var(--line)}.compact-game :is(.line-map-selection,.transit-badge:not(.interrupted),.demand-bar-track,.month-actions button){background:var(--surface);border-color:var(--line)}.compact-game :is(.city-manager button,.city-manager select,.city-manager input,.finance-tax-controls input,.treasury-grants input,.treasury-grants select){background:var(--surface);border-color:var(--line);color:var(--text)}body:has(.compact-game)>.preferences-dialog select option{background:#1c1f25;color:var(--text)}.compact-game :is(.city-manager button,.city-manager select):focus-visible{outline-color:var(--accent)}.compact-game dialog::backdrop,body:has(.compact-game)>:is(.preferences-dialog,.shortcut-sheet)::backdrop{background:#0000006b}@media(max-width:700px){.compact-game .journal-tabs button{padding-inline:6px;font-size:9px}}@media(pointer:coarse){.compact-game .navigation-buttons button,.compact-game .journal-tabs button{min-height:44px}}@media(pointer:coarse)and (max-width:760px){.compact-game .city-view:has(.minimap-panel) .inspector{bottom:314px;max-height:calc(100% - 424px)}}@media(max-width:1050px){.floating-topbar .hud-stats-island{gap:10px}.floating-topbar .hud-city-island{max-width:180px}}@media(max-width:900px){.floating-topbar .hud-jobs,.floating-topbar .hud-approval{display:none}}@media(max-width:700px){.topbar.floating-topbar{inset:8px 10px auto;grid-template-columns:minmax(0,1fr) auto;gap:6px}.floating-topbar .hud-island{height:40px;border-radius:8px;padding:3px 6px}.floating-topbar .hud-city-island{max-width:100%}.floating-topbar .hud-menu>summary{gap:6px}.floating-topbar .hud-city-menu>summary>.hud-icon,.floating-topbar .hud-connection{display:none}.floating-topbar .hud-city-name{font-size:11px}.floating-topbar .hud-stats-island{gap:8px;padding-inline:8px}.floating-topbar .hud-budget,.floating-topbar .hud-metric{gap:5px}.floating-topbar .hud-budget strong,.floating-topbar .hud-metric .stat strong{font-size:11px}.floating-topbar .hud-controls-island{grid-column:1 / -1}.floating-topbar .hud-popover{left:-7px;max-height:calc(100dvh - 160px)}.floating-topbar .hud-controls-island .hud-popover{right:-7px}.floating-topbar .hud-controls-island .simulation-popover{right:0}.compact-game .guide-toggle{top:104px}.compact-game .guide.is-open{top:146px;max-height:calc(100% - 200px)}.compact-game .compact-map-legend{top:104px;right:10px}.compact-map-legend .transit-network-controls,.compact-map-legend .map-palette-legend{max-height:calc(100dvh - 210px)}}:root{--glass-tint: rgb(26 31 38 / .58);--glass-tint-dense: rgb(22 26 32 / .8);--glass-line: rgb(255 255 255 / .16);--glass-fill: rgb(255 255 255 / .08);--glass-fill-hover: rgb(255 255 255 / .14);--glass-active-fill: rgb(211 189 133 / .22);--glass-active-line: rgb(211 189 133 / .55);--glass-active-text: #f4e3b5;--glass-shadow: 0 10px 28px rgb(0 0 0 / .38), inset 0 1px 0 rgb(255 255 255 / .1);--glass-filter: blur(14px) saturate(135%);--glass-text-shadow: 0 1px 2px rgb(0 0 0 / .55);--glass-dim-filter: blur(3px)}:root[data-glass=flat]{--glass-tint: rgb(26 31 38 / .84);--glass-tint-dense: rgb(22 26 32 / .93);--glass-filter: none;--glass-dim-filter: none}@media(prefers-reduced-transparency:reduce){:root{--glass-tint: rgb(26 31 38 / .97);--glass-tint-dense: rgb(22 26 32 / .98);--glass-filter: none;--glass-dim-filter: none}}.app.compact-game{--dock-bar: 52px;--dock-gap: 12px;--dock-row: calc(var(--dock-bar) + var(--dock-gap) + env(safe-area-inset-bottom, 0px));--dock-inset: 12px;--hud-drop: 0px;overflow:hidden}.compact-game .city-view{overflow:visible;background:#111114}.compact-game .world{bottom:calc(-1 * var(--dock-row))}@media(min-width:1440px){.app.compact-game{--dock-inset: 288px;--hud-drop: var(--dock-row)}}@media(max-width:1100px){.app.compact-game{--dock-bar: 46px;--dock-gap: 8px;--dock-inset: 8px}}@media(pointer:coarse){.app.compact-game{--dock-bar: 54px;--dock-gap: 8px}}.compact-game :is(.activity,.weather-notice,.navigation-dock){translate:0 var(--hud-drop)}.compact-game:has(.dock-tray) .placement-hint{bottom:calc(var(--dock-tray-height, 150px) + 16px)}.compact-game:has(.dock-tray) .toast:not(.terrain-confirmation){bottom:calc(var(--dock-tray-height, 150px) + 56px)}.compact-game :is(.inspector,.guide,.guide-toggle,.placement-hint,.advisor-panel,.advisor-bubble-body,.weather-notice,.building-hover,.celebration,.toast,.minimap-panel,.navigation-buttons,.journal-tabs,.zoom-level-row .zoom-level,.activity:has(.message-list:not([hidden])),.transit-network-controls,.map-palette-legend,.crossing-chooser,.floating-topbar .hud-popover,.floating-topbar .approval-breakdown,dialog),.build-dock.command-dock :is(.dock-tray,.dock-preview-card,.dock-settings-panel,.dock-more-panel),body:has(.app.compact-game)>:is(.preferences-dialog,.shortcut-sheet){-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter)}.floating-topbar .hud-island,.build-dock.command-dock .dock-bar{isolation:isolate;background:none;border-color:transparent;box-shadow:none}.floating-topbar .hud-island:before,.build-dock.command-dock .dock-bar:before{content:"";position:absolute;z-index:-1;inset:0;border:1px solid var(--glass-line);border-radius:inherit;background:var(--glass-tint);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter)}.compact-game dialog::backdrop,body:has(.compact-game)>:is(.preferences-dialog,.shortcut-sheet)::backdrop{-webkit-backdrop-filter:var(--glass-dim-filter);backdrop-filter:var(--glass-dim-filter)}.compact-game .manager-rail{background:none}.compact-game .advisor-panel footer button{border-color:var(--glass-line);background:var(--glass-fill)}.build-dock.command-dock .dock-groups{scrollbar-width:none}.region-overview{background:#12161b}.region-overview .region-heading>div,.region-overview .region-heading-actions,.region-overview .region-map-tools,.region-overview .region-render-status,.region-overview :is(.region-details,.region-team){border-color:var(--glass-line);background:var(--glass-tint-dense);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter)}.region-overview :is(.region-heading>div,.region-heading-actions,.region-map-tools){background:var(--glass-tint)}.region-overview :is(.region-city-list>li,.region-selected-city){background:var(--glass-fill)}.region-overview .region-city-list>li:hover{background:var(--glass-fill-hover)}.region-overview .region-city-list>li.selected,.region-overview .region-city-list>li.selected:hover{border-color:var(--glass-active-line);background:var(--glass-active-fill)}.region-overview :is(.region-map-tools button,.region-heading button,.region-details button:not(.primary-button),.region-view-toggle button:not([aria-pressed=true]),.region-details input,.region-details select,.region-members select){border-color:var(--glass-line);background:var(--glass-fill)}.compact-game select option{background:#1c1f25;color:#f1f1f3}
