:root{color:#f5eddb;font-synthesis:none;-webkit-font-smoothing:antialiased;--sand:#f5eddb;--lagoon:#245d58;--navy:#183c43;--coral:#e5a484;--cream:var(--sand);--ink-muted:#486265;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--radius-panel:20px;--radius-control:10px;--shadow-panel:0 12px 48px #102f3833;--safe-top:max(28px, env(safe-area-inset-top));--safe-bottom:max(28px, env(safe-area-inset-bottom));--gutter:clamp(24px, 4vw, 72px);background:#234f4c;font-family:Avenir Next,Avenir,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0}body{overflow:hidden}button,select{font:inherit}[hidden]{display:none!important}#app{isolation:isolate;width:100%;height:100dvh;position:relative;overflow:hidden}#application-canvas{touch-action:none;cursor:grab;width:100%;height:100%;display:block}#application-canvas:active{cursor:grabbing}#application-canvas:focus-visible{outline:3px solid var(--coral);outline-offset:-5px}.camera-toolbar{right:var(--gutter);bottom:calc(var(--safe-bottom) + 55px);align-items:center;gap:10px;display:flex;position:absolute}.collection{left:var(--gutter);top:calc(var(--safe-top) + 80px);z-index:2;width:250px;position:absolute}.collection summary{justify-content:space-between;width:100%;list-style:none}.collection summary::-webkit-details-marker{display:none}.collection-number{color:var(--ink-muted);letter-spacing:.08em;font-size:10px}.collection-panel{border-radius:var(--radius-panel);color:var(--navy);background:var(--sand);box-shadow:var(--shadow-panel);max-height:calc(100dvh - 190px);margin-top:10px;padding:22px;overflow:auto}.collection-panel .eyebrow{color:var(--ink-muted);margin-bottom:8px;font-size:8px}.collection-panel h3{letter-spacing:-.03em;margin:0 0 12px;font:26px/1.2 Georgia,serif}.collection-panel p:not(.eyebrow){font-size:10px;line-height:1.8}.building-list{gap:5px;margin:20px 0;display:grid}.building-button{width:100%;min-height:44px;color:var(--navy);text-align:left;cursor:pointer;background:#fff9ef;border:1px solid #183c4315;border-radius:8px;align-items:center;gap:12px;padding:10px 12px;font-size:11px;display:flex}.building-button span{color:var(--ink-muted);font-size:8px}.building-button:is(:hover,[aria-pressed=true]){border-color:var(--lagoon);background:#e0e8d6}.building-button[data-load=fallback]:after{content:"Preview";color:var(--ink-muted);margin-left:auto;font-size:8px}#gallery-overview{width:100%;font-size:10px}.collection-status{color:var(--ink-muted);margin:16px 0 0}.asset-warning{right:var(--gutter);top:calc(var(--safe-top) + 80px);width:min(300px,100vw - 48px);color:var(--navy);background:var(--sand);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);z-index:3;padding:20px;position:absolute}.asset-warning p{margin:0 0 12px;font-size:11px;line-height:1.7}#app:not([data-state=ready]) :is(.collection,.asset-warning){display:none}.parcel-panel{right:var(--gutter);bottom:calc(var(--safe-bottom) + 120px);width:min(280px,100vw - 48px);color:var(--navy);background:var(--sand);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);border-left:4px solid var(--lagoon);z-index:2;padding:20px;position:absolute}.parcel-panel[data-buildable=false]{border-left-color:#b94e38}.parcel-panel .eyebrow{color:var(--ink-muted);margin:0 0 8px}.parcel-panel h2{margin:0 0 10px;font:25px/1.15 Georgia,serif}.parcel-panel p:not(.eyebrow){margin:0 0 12px;font-size:12px;line-height:1.6}.parcel-panel .button{width:100%;min-height:44px}.build-toolbar{left:var(--gutter);top:calc(var(--safe-top) + 136px);z-index:2;width:250px;position:absolute}.build-toolbar .button{width:100%}.build-toolbar .field-help{color:var(--sand);background:#183c43dd;border-radius:8px;margin:6px 0 0;padding:8px 14px;font-size:10px}.economy-panel{top:calc(var(--safe-top) + 80px);right:var(--gutter);width:220px;color:var(--sand);box-shadow:var(--shadow-panel);background:#183c43ed;border:1px solid #f5eddb25;border-radius:14px;padding:16px 20px;position:absolute}.economy-panel .eyebrow{margin:0 0 8px;font-size:8px}.economy-panel p{margin:0}.coin-balance{align-items:baseline;gap:8px;display:flex}.coin-balance strong{font-variant-numeric:tabular-nums;font:400 28px/1.2 Georgia,serif}.coin-balance span:last-child{font-size:10px}#city-income{margin-top:8px;font-size:11px}#next-payment{font-variant-numeric:tabular-nums;margin-top:5px;font-size:10px}.payment-track{background:#f5eddb25;border-radius:3px;height:3px;margin-top:9px;overflow:hidden}#payment-progress{background:var(--coral);width:0;height:100%;display:block}.economy-panel .economy-note{color:#d9e2d1;margin-top:9px;font-size:9px}.parcel-panel .cost-preview{background:#e0e8d6;border-radius:8px;padding:8px 10px;font-size:10px}#app:not([data-state=ready]) .economy-panel{display:none}@media (width>=601px) and (height>=521px){.asset-warning{top:calc(var(--safe-top) + 270px)}}.parcel-actions{gap:8px;margin:12px 0;display:flex}.parcel-actions .button{flex:1;padding:10px 8px;font-size:11px}#app:not([data-tool=inspect]) #parcel-panel{display:none}#construction-position{color:var(--ink-muted);font-size:10px}.game-feedback{top:calc(var(--safe-top) + 80px);background:var(--navy);width:max-content;max-width:min(380px,100vw - 48px);color:var(--sand);text-align:center;pointer-events:none;z-index:3;border-radius:12px;padding:12px 18px;font-size:12px;position:absolute;left:50%;transform:translate(-50%)}.confirm-dialog{border-radius:var(--radius-panel);background:var(--sand);width:min(420px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--navy);box-shadow:var(--shadow-panel);border:0;padding:28px;overflow:auto}.confirm-dialog::backdrop{background:#173f3d99}.confirm-dialog h2{font:30px/1.15 Georgia,serif}.confirm-dialog p{font-size:12px;line-height:1.7}#app:not([data-state=ready]) :is(.build-toolbar,#construction-panel,.game-feedback),#app:not([data-state=ready]) .parcel-panel{display:none}#app:has(#building-gallery[open]) .parcel-panel{display:none}#app:has(#building-gallery[open]) .build-toolbar{display:none}@media (width<=600px){.build-toolbar{top:calc(var(--safe-top) + 224px);width:calc(100vw - 48px)}.build-toolbar .field-help{display:none}.game-feedback{top:calc(var(--safe-top) + 282px);font-size:10px}.parcel-panel{bottom:calc(var(--safe-bottom) + 112px);padding:16px}.parcel-panel .eyebrow{display:none}}@media (height<=520px){#app:has(.parcel-panel:not([hidden])) .build-toolbar{display:none}#app:has(.parcel-panel:not([hidden])) .scene-caption{display:none}.parcel-panel{left:var(--gutter);right:auto;top:calc(var(--safe-top) + 128px);width:230px;max-height:calc(100dvh - 210px);padding:12px;bottom:auto;overflow:auto}.build-toolbar{width:225px}.build-toolbar .field-help{display:none}.parcel-panel:has(#building-actions:not([hidden])){top:calc(var(--safe-top) + 128px)}#parcel-panel:has(#building-actions:not([hidden])){grid-template-columns:repeat(3,1fr);column-gap:4px;display:grid}#parcel-panel:has(#building-actions:not([hidden])) :is(h2,p,.eyebrow){grid-column:1/-1}#parcel-panel:has(#building-actions:not([hidden])) #parcel-status{display:none}#parcel-panel:has(#building-actions:not([hidden])) #building-actions{display:contents}#parcel-panel:has(#building-actions:not([hidden])) .button{padding:6px;font-size:9px}.game-feedback{top:auto;bottom:calc(var(--safe-bottom) + 44px);max-width:230px;font-size:10px}.parcel-panel .eyebrow{display:none}.parcel-panel h2{margin-bottom:6px;font-size:20px}.parcel-panel p:not(.eyebrow){margin-bottom:8px;font-size:11px}}.view-help{position:relative}.view-help summary{list-style:none}.view-help summary::-webkit-details-marker{display:none}.help-panel{width:282px;color:var(--navy);background:var(--sand);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);padding:22px;position:absolute;bottom:calc(100% + 12px);right:0}.help-panel h3{margin:0 0 16px;font-size:13px}.help-panel p{margin:0 0 12px;font-size:11px;line-height:1.8}.help-panel p:last-child{margin-bottom:0}#app:not([data-state=ready]) .camera-toolbar{display:none}.scene-vignette{pointer-events:none;background:radial-gradient(at 58% 35%,#0000 30%,#173f3d35 100%);position:absolute;inset:0}.masthead{inset:var(--safe-top) var(--gutter) auto;z-index:3;justify-content:space-between;align-items:center;gap:16px;display:flex;position:absolute}.wordmark{letter-spacing:-1px;background:#183c43b8;border-radius:12px;align-items:center;gap:13px;padding:8px 12px;font-family:Georgia,Times New Roman,serif;font-size:25px;display:flex}.wordmark img{display:block}.header-actions{align-items:center;gap:var(--space-6);display:flex}.button{justify-content:center;align-items:center;gap:var(--space-3);border-radius:var(--radius-control);cursor:pointer;border:1px solid #0000;min-height:46px;padding:12px 18px;font-size:12px;font-weight:600;transition:background .16s,transform .16s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(0)}.button:disabled{opacity:.55;cursor:default;transform:none}.button-sand{background:var(--sand);color:var(--navy);box-shadow:0 4px 20px #183c4322}.button-sand:hover{background:#fff9ef}.button-teal{background:var(--lagoon);color:var(--sand)}.button-teal:hover{background:#183f3b}.button-icon{width:44px;color:var(--navy);background:#183c430b;padding:0;font-size:27px}.button-icon:hover{background:#183c4318}:is(button,select,a,summary):focus-visible{outline-offset:4px;outline:3px solid #d47f56}[data-tooltip]{position:relative}[data-tooltip]:is(:hover,:focus-visible):after{content:attr(data-tooltip);color:var(--sand);background:var(--navy);white-space:nowrap;pointer-events:none;border-radius:6px;padding:8px 12px;font-size:11px;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%)}#reset-view:after{left:auto;right:0;transform:none}.edition{letter-spacing:.12em;text-transform:uppercase;background:#183c43b8;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;font-size:11px;display:flex}.edition-dot{background:var(--coral);border-radius:50%;width:5px;height:5px}.scene-caption{left:var(--gutter);bottom:calc(var(--safe-bottom) + 55px);pointer-events:none;border-left:2px solid var(--coral);background:#183c436b;border-radius:0 12px 12px 0;padding:20px 24px;position:absolute}.scene-caption .eyebrow{margin-bottom:10px;font-size:8px}.scene-caption h1{margin-bottom:8px;font-size:34px}.scene-caption .intro{font-size:11px}.eyebrow{letter-spacing:.19em;text-transform:uppercase;margin:0 0 20px;font-size:10px;font-weight:600;line-height:1.8}h1{letter-spacing:-.055em;margin:0 0 15px;font-family:Georgia,Times New Roman,serif;font-size:clamp(48px,5.5vw,82px);font-weight:400;line-height:1}h1 span{color:var(--coral)}.intro{letter-spacing:.02em;margin:0;font-size:13px;line-height:1.65}.scene-footer{inset:auto var(--gutter) var(--safe-bottom);letter-spacing:.17em;text-transform:uppercase;border-top:1px solid #f5eddb33;justify-content:space-between;padding-top:18px;font-size:9px;display:flex;position:absolute}.preview-badge{text-transform:uppercase;letter-spacing:.13em;align-items:center;gap:7px;font-size:9px;display:inline-flex}.scene-footer>span{background:#183c43d9;border-radius:2px;box-shadow:0 0 0 5px #183c43d9}.preview-badge:before{content:"";background:var(--coral);border-radius:50%;width:5px;height:5px}.drawer{margin:auto max(24px, env(safe-area-inset-right));width:min(420px,100vw - 48px);max-height:calc(100dvh - 48px);padding:var(--space-8);border-radius:var(--radius-panel);color:var(--navy);background:var(--sand);box-shadow:var(--shadow-panel);border:1px solid #fff8ea;position:fixed;inset:0 0 0 auto;overflow:auto}.drawer::backdrop{background:#102f3880}.drawer-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.drawer-header .eyebrow{color:var(--ink-muted);margin:0;font-size:9px}.drawer h2{margin:26px 0 16px;font-size:43px}.drawer h3{margin:0 0 18px;font-size:13px}.drawer-intro{color:var(--ink-muted);margin:0 0 28px;font-size:12px;line-height:1.7}.setting-section{border-top:1px solid #183c4320;padding:24px 0}.save-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.save-actions .button{flex:120px;padding-inline:12px}.recovery-note{background:#e5a48425;border:1px solid #b94e3860;border-radius:12px;margin-top:16px;padding:16px;font-size:11px;line-height:1.7}#app[data-save=recovery] #save-status,#app[data-save=unavailable] #save-status{color:#ffd0af}.field-label{margin-bottom:10px;font-size:11px;font-weight:600;display:block}.drawer select{width:100%;min-height:46px;color:var(--navy);border-radius:var(--radius-control);background:#fff9ef;border:1px solid #183c4340;padding:12px;font-size:12px}.field-help{color:var(--ink-muted);margin:12px 0 0;font-size:10px;line-height:1.7}.about-panel{background:#e9ddc7;border-radius:12px;padding:22px}.about-panel .preview-badge{margin-bottom:18px}.about-panel h3{margin-bottom:12px}.about-panel p{margin:0 0 14px;font-size:11px;line-height:1.8}.about-panel .about-footnote{color:var(--ink-muted);margin-bottom:0;font-size:9px}.resume-button{justify-content:space-between;width:100%;margin-top:24px}.toast{color:var(--sand);background:var(--navy);border-radius:var(--radius-control);box-shadow:var(--shadow-panel);padding:12px 16px;font-size:11px;line-height:1.6}.status-screen{z-index:2;text-align:center;padding:100px var(--gutter);background:radial-gradient(at 50% 30%,#356762,#234f4c 75%);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.status-content{width:min(520px,100%)}.foundation-mark{grid-template-columns:repeat(2,1fr);gap:4px;width:61px;height:61px;margin:0 auto 47px;display:grid;transform:rotate(-30deg)skewY(15deg)}.foundation-mark i{background:#f5eddb12;border:1px solid #f5eddb88}.foundation-mark i:last-child{background:var(--coral);border-color:var(--coral)}.status-kicker{color:#e5c5a4;margin-bottom:20px}h2{letter-spacing:-.035em;margin:0 0 23px;font-family:Georgia,Times New Roman,serif;font-size:clamp(36px,4vw,57px);font-weight:400;line-height:1.1}#status-message{max-width:360px;margin:0 auto;font-size:13px;line-height:1.8}.loading-line{background:#f5eddb25;width:96px;height:2px;margin:33px auto 0;overflow:hidden}.loading-line span{background:#e5a484;width:35%;height:100%;animation:1.6s ease-in-out infinite alternate preparing;display:block}@keyframes preparing{0%{transform:translate(-100%)}to{transform:translate(280%)}}.status-footnote{bottom:var(--safe-bottom);left:var(--gutter);right:var(--gutter);letter-spacing:.06em;margin:0;font-size:10px;position:absolute}#retry{min-height:48px;color:var(--cream);cursor:pointer;background:#ffffff08;border:1px solid #f5eddb99;border-radius:4px;margin:30px auto 0;padding:12px 20px;font-size:13px}#retry span{color:var(--coral);margin-left:18px}#retry:hover{color:#234f4c;background:var(--cream)}#retry:hover span{color:#234f4c}#retry:focus-visible{outline:3px solid var(--coral);outline-offset:5px}#app[data-state=ready] .status-screen{display:none}#app:not([data-state=ready]) .scene-caption,#app:not([data-state=ready]) .scene-footer{visibility:hidden}#app:not([data-state=ready]) #settings-open{display:none}#app[data-motion=reduced] :is(.button,.loading-line span){transition:none;animation:none}#app[data-motion=reduced] .loading-line span{opacity:.7;width:100%}#app[data-state=error] .loading-line,#app[data-state=unsupported] .loading-line{display:none}#app[data-state=error] .foundation-mark,#app[data-state=unsupported] .foundation-mark{margin-bottom:36px}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.noscript-message{z-index:10;text-align:center;background:#234f4c;flex-direction:column;justify-content:center;align-items:center;padding:28px;display:flex;position:fixed;inset:0}.noscript-message p{max-width:340px;line-height:1.7}@media (width<=600px){.collection{top:calc(var(--safe-top) + 169px);width:calc(100vw - 2 * var(--gutter))}.collection-panel{max-height:calc(100dvh - 320px)}.building-list{grid-template-columns:1fr 1fr}.building-button{gap:8px;font-size:10px}.asset-warning{top:auto;bottom:calc(var(--safe-bottom) + 104px)}.camera-toolbar{right:var(--gutter);bottom:calc(var(--safe-bottom) + 48px)}.camera-toolbar .button{padding:10px 12px;font-size:10px}.scene-caption{bottom:auto;top:calc(var(--safe-top) + 68px);padding:12px 16px}.scene-caption h1{font-size:28px}.scene-caption .intro{display:none}:root{--safe-top:max(24px, env(safe-area-inset-top));--safe-bottom:max(22px, env(safe-area-inset-bottom))}.masthead,.header-actions{gap:8px}.header-actions .edition{display:none}#settings-open{gap:8px;padding:12px;font-size:10px}.drawer{margin:0 auto max(16px, env(safe-area-inset-bottom));width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:24px;inset:auto 0 0}.drawer h2{margin-top:20px;font-size:36px}.wordmark{gap:10px;font-size:22px}.wordmark img{width:28px;height:28px}.edition{letter-spacing:.09em;max-width:105px;font-size:9px;line-height:1.5}.eyebrow{margin-bottom:16px;font-size:8px}h1{font-size:51px}.intro{font-size:12px}.scene-footer{letter-spacing:.1em;padding-top:15px;font-size:8px}.status-screen{padding-top:90px;padding-bottom:80px}.foundation-mark{width:48px;height:48px;margin-bottom:37px}}@media (height<=520px){.collection{top:calc(var(--safe-top) + 64px);width:224px}.collection-panel{max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 124px)}.asset-warning{top:calc(var(--safe-top) + 64px);max-height:calc(100dvh - 150px);overflow:auto}.scene-caption{bottom:calc(var(--safe-bottom) + 32px);padding:10px 16px}.scene-caption .eyebrow,.intro{display:none}h1{font-size:44px}.foundation-mark{display:none}h2{margin-bottom:12px;font-size:34px}.status-kicker{margin-bottom:12px}.status-screen{padding-top:70px;padding-bottom:54px}}@media (prefers-reduced-motion:reduce){.button{transition:none}.loading-line span{opacity:.7;width:100%;animation:none}}@media (width>=601px) and (height<=520px){.collection-panel{width:min(690px, calc(100vw - 2 * var(--gutter)));padding:12px}.collection-panel>:is(.eyebrow,h3,#collection-description,.collection-status){display:none}.collection-panel .building-list{grid-template-columns:repeat(3,1fr);margin:0 0 8px}}@media (width<=600px){.scene-caption{width:152px}.scene-caption h1{font-size:22px}.scene-caption .eyebrow{letter-spacing:.1em;font-size:7px}.economy-panel{top:calc(var(--safe-top) + 68px);gap:4px;width:144px;padding:10px;display:grid}.economy-panel :is(.eyebrow,.economy-note){display:none}.coin-balance{gap:5px}.coin-balance strong{font-size:23px}.coin-balance span:last-child{font-size:8px}#city-income,#next-payment{margin:0;font-size:9px}.payment-track{margin:0}}@media (width>=601px) and (height<=520px){.economy-panel{top:calc(var(--safe-top) + 64px);width:190px;padding:12px 16px}.economy-panel :is(.eyebrow,.economy-note){display:none}.coin-balance strong{font-size:24px}}#app:is([data-paused=true],[data-view=collection]) #next-payment:after{content:" · paused"}@media (height<=520px){#construction-panel{grid-template-rows:minmax(0,1fr) auto;gap:6px;display:grid}.construction-copy{min-height:0;overflow:auto}#construction-panel .parcel-actions{margin:0}#construction-panel p:not(.eyebrow){margin-bottom:6px;font-size:10px}}.build-toolbar{gap:8px;display:grid}.build-toolbar .field-help{margin:0}#app[data-tool=road] #application-canvas{cursor:crosshair}#parcel-panel #parcel-access{color:var(--ink-muted);font-size:10px}@media (width<=600px) and (height>=521px){#road-panel{padding:12px}#road-panel h2{margin-bottom:6px;font-size:22px}#road-panel p{margin-bottom:6px;font-size:10px;line-height:1.4}#road-panel .field-help{display:none}#road-panel .parcel-actions{margin:8px 0 0}}@media (width<=600px),(height<=520px){.build-toolbar{grid-template-columns:1fr 1fr}.build-toolbar .button{gap:6px;padding:10px;font-size:10px}}@media (height<=520px){#road-panel{grid-template-rows:minmax(0,1fr) auto;gap:6px;display:grid}#road-panel .parcel-actions{margin:0}#road-panel p:not(.eyebrow){margin-bottom:6px;font-size:10px}#parcel-panel:has(#road-actions:not([hidden])){grid-template-columns:1fr 1fr;gap:4px;display:grid}#parcel-panel:has(#road-actions:not([hidden])) :is(h2,p){grid-column:1/-1}#parcel-panel:has(#road-actions:not([hidden])) #road-actions{display:contents}#parcel-panel:has(#road-actions:not([hidden])) .button{padding:6px;font-size:10px}}.catalogue-dialog{border-radius:var(--radius-panel);background:var(--sand);width:min(720px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--navy);box-shadow:var(--shadow-panel);border:0;padding:24px}.catalogue-dialog[open]{grid-template-rows:auto auto minmax(0,1fr) auto;gap:16px;display:grid}.catalogue-dialog::backdrop{background:#173f3d99}.catalogue-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.catalogue-heading .eyebrow{color:var(--ink-muted);margin:0 0 6px}.catalogue-heading h2{margin:0;font-size:30px}.catalogue-categories{flex-wrap:wrap;gap:6px;display:flex}.catalogue-categories button{min-height:44px;color:var(--navy);cursor:pointer;background:#fff9ef;border:1px solid #245d5830;border-radius:22px;padding:8px 12px;font-size:11px}.catalogue-categories button[aria-pressed=true]{color:var(--sand);background:var(--lagoon)}.catalogue-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-height:0;padding:3px;display:grid;overflow:auto}.catalogue-card button{width:100%;height:100%;color:var(--navy);text-align:left;cursor:pointer;background:#fff9ef;border:1px solid #245d5828;border-radius:14px;flex-direction:column;align-items:start;gap:6px;padding:14px;display:flex}.catalogue-card button:hover{border-color:var(--lagoon);background:#e8eddd}.catalogue-card button:focus-visible,.catalogue-categories button:focus-visible,.rotation-control:focus-visible{outline:3px solid var(--lagoon);outline-offset:2px}.catalogue-icon{align-self:center;width:80px;height:64px}.catalogue-icon svg{width:100%;height:100%}.catalogue-card strong{min-height:28px;font-size:12px}.catalogue-price{font-size:11px;font-weight:600}.catalogue-benefit,.catalogue-access,.catalogue-owned{font-size:10px;line-height:1.4}.catalogue-owned{color:var(--ink-muted);margin-top:auto}.catalogue-card[data-affordable=false] .catalogue-owned{color:#8c392c}.catalogue-footnote{color:var(--ink-muted);margin:0;font-size:10px;line-height:1.5}.rotation-control{width:100%;min-height:44px;color:var(--navy);cursor:pointer;background:#fff9ef;border:1px solid #245d5840;border-radius:10px;padding:8px;font-size:11px}#construction-panel .rotation-help{margin:6px 0 0;font-size:10px}@media (width<=600px),(height<=520px){.build-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}.build-toolbar .button{gap:4px;padding:8px 6px}#catalogue-open span{display:none}}@media (width<=600px){.catalogue-dialog{padding:16px}.catalogue-dialog[open]{gap:10px}.catalogue-heading h2{font-size:24px}.catalogue-heading .eyebrow{font-size:8px}.catalogue-heading .button,.catalogue-categories button{padding:8px;font-size:10px}.catalogue-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.catalogue-card button{gap:5px;padding:10px}.catalogue-icon{width:68px;height:54px}}@media (width<=600px) and (height>=521px){#construction-panel{padding:12px}#construction-panel h2{margin-bottom:6px;font-size:22px}#construction-panel p:not(.eyebrow){margin-bottom:6px;font-size:10px;line-height:1.4}#construction-panel .rotation-help{display:none}#construction-panel .parcel-actions{margin:8px 0 0}}@media (width>=601px) and (height>=521px){.asset-warning{top:calc(var(--safe-top) + 385px)}}@media (height<=520px){.catalogue-dialog{padding:14px}.catalogue-dialog[open]{gap:8px}.catalogue-heading h2{font-size:24px}.catalogue-heading .eyebrow{display:none}.catalogue-icon{width:54px;height:44px}.catalogue-card button{padding:8px}.catalogue-card strong{min-height:0}}.vitality-button{width:100%;min-height:44px;color:var(--sand);cursor:pointer;pointer-events:auto;background:#183c43ba;border:1px solid #f5eddb40;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;margin:0 0 8px;padding:8px 10px;font-size:11px;display:flex}.vitality-button strong{font:22px/1 Georgia,serif}.vitality-button:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.vitality-dialog{width:min(460px,100vw - 32px)}.vitality-heading{background:var(--sand);z-index:1;justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.vitality-heading .eyebrow{color:var(--ink-muted);margin:0 0 6px}.vitality-heading h2{margin-bottom:12px}.vitality-heading .button{flex-shrink:0;padding:8px;font-size:10px}.vitality-dialog .vitality-total{background:#e0e8d6;border-radius:12px;flex-direction:column;gap:4px;padding:12px 16px;display:flex}.vitality-total strong{font:36px/1 Georgia,serif}.vitality-row{border-bottom:1px solid #245d5825;padding:12px 0}.vitality-row>div:first-child{justify-content:space-between;gap:8px;font-size:12px;display:flex}.vitality-row>div>span{font-variant-numeric:tabular-nums;flex-shrink:0}.vitality-track{background:#245d5820;border-radius:4px;height:5px;margin:8px 0;overflow:hidden}.vitality-track i{background:var(--lagoon);height:100%;display:block}.vitality-dialog .vitality-row p{margin:5px 0 0;font-size:11px;line-height:1.5}.vitality-dialog .vitality-incentive{color:var(--ink-muted);font-size:10px}#vitality-change{padding:12px 0 0;font-size:11px}.vitality-dialog .vitality-formula{color:var(--ink-muted);margin-bottom:0;font-size:10px}@media (width<=600px){.scene-caption{padding:6px 12px}.scene-caption h1{margin-bottom:0}.vitality-button{gap:4px;margin-bottom:4px;padding:6px;font-size:10px}.vitality-button strong{font-size:20px}.vitality-dialog{padding:18px}.vitality-dialog h2{font-size:25px}}@media (height<=520px){.vitality-dialog{width:min(600px,100vw - 32px);padding:16px}.vitality-heading h2{font-size:24px}.vitality-dialog .vitality-row{padding:8px 0}}@media (width>=601px) and (height<=520px){.scene-caption{align-items:center;gap:8px;max-width:225px;display:flex}.scene-caption h1{margin:0;font-size:20px}.vitality-button{gap:4px;width:auto;margin:0;padding:6px;font-size:9px}.vitality-button strong{font-size:18px}.vitality-button span:last-child{display:none}}.power-toggle{width:100%;color:var(--sand);cursor:pointer;background:#efddba12;border:1px solid #efddba55;border-radius:7px;margin-top:10px;padding:7px 10px;font-family:inherit;font-size:11px;line-height:1.2}.power-toggle[aria-pressed=true]{background:var(--sand);color:var(--navy)}.power-toggle:focus-visible,.power-heading button:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.power-panel{right:var(--gutter);top:calc(var(--safe-top) + 310px);width:300px;color:var(--navy);box-shadow:var(--shadow-panel);background:#f5eddbf5;border-radius:14px;max-height:calc(100% - 370px);padding:16px;position:absolute;overflow-y:auto}.power-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.power-heading strong{font:20px/1.1 Georgia,serif}.power-heading button{color:var(--navy);cursor:pointer;background:0 0;border:0;min-width:36px;min-height:36px;font-size:25px}.power-panel p{margin:9px 0;font-size:11px;line-height:1.5}.power-panel .power-legend{gap:16px;font-weight:700;display:flex}.power-legend span:first-child{color:#245d58}.power-legend span:last-child{color:#90402d}.power-panel .power-note{font-size:10px}#app:not([data-state=ready]) .power-panel,#app[data-view=collection] .power-panel{display:none}@media (width<=600px){.power-toggle{margin-top:5px;padding:6px;font-size:9px}.power-panel{top:auto;bottom:calc(var(--safe-bottom) + 108px);left:var(--gutter);right:var(--gutter);width:auto;max-height:38%;padding:10px 12px}.power-heading strong{font-size:18px}.power-panel p{margin:6px 0;font-size:10px}.power-panel .power-note{display:none}}@media (height<=520px) and (width>=601px){.power-toggle{margin-top:4px;padding:5px;font-size:9px}.power-panel{width:260px;max-height:calc(100% - 145px);padding:10px 12px;top:70px;right:150px}.power-panel .power-note{display:none}.power-panel p{margin:5px 0;font-size:10px}.power-panel{left:var(--gutter);right:auto;top:calc(var(--safe-top) + 64px);width:240px;max-height:calc(100% - 140px)}.power-heading strong{font-size:18px}#app[data-power-overlay=true] :is(.collection,.build-toolbar,.scene-caption){display:none}.power-heading{z-index:1;background:#f5eddb;position:sticky;top:0}#power-build{position:sticky;bottom:0;box-shadow:0 6px 0 6px #f5eddb}}.traffic-button{color:var(--sand);text-align:left;cursor:pointer;background:#183c43dd;border:1px solid #efddba20;border-radius:8px;padding:9px 14px;font-family:inherit;font-size:10px}.traffic-button>span:first-child{margin-bottom:5px;font-size:9px;display:block}.traffic-line{align-items:center;gap:8px;display:flex}.traffic-line strong{font-variant-numeric:tabular-nums;margin-left:auto}.traffic-button:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.traffic-dialog .traffic-total{color:var(--lagoon);font:30px/1.2 Georgia,serif}.traffic-dialog .traffic-hint{background:#e0e8d6;border-radius:8px;padding:12px}.traffic-setting{align-items:center;gap:10px;min-height:44px;font-size:13px;display:flex}.traffic-setting input{accent-color:var(--lagoon);width:18px;height:18px}@media (width<=600px),(height<=520px){.traffic-button{grid-column:1/-1;padding:6px 10px}.traffic-button>span:first-child{display:none}.traffic-line strong{margin-left:auto}.traffic-dialog{max-height:calc(100dvh - 32px)}.traffic-dialog h2{font-size:25px}.traffic-dialog .vitality-heading .eyebrow{display:none}}@media (width>=601px) and (height<=390px){.scene-caption{bottom:calc(var(--safe-bottom) + 20px)}}.goals-card{left:50%;bottom:calc(var(--safe-bottom) + 32px);width:310px;color:var(--navy);box-shadow:var(--shadow-panel);text-align:left;cursor:pointer;background:#f5eddbf5;border:1px solid #efddba55;border-radius:12px;padding:13px 16px;font-family:inherit;position:absolute;transform:translate(-50%)}.goal-step,.goal-next{font-size:9px;line-height:1.4;display:block}.goal-step{text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}.goal-current{justify-content:space-between;align-items:center;gap:10px;display:flex}.goal-current strong{font:18px/1.15 Georgia,serif}#goal-progress{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.goal-next{color:#426866;margin-top:5px}.goals-card:focus-visible{outline:3px solid var(--coral);outline-offset:4px}.goals-dialog{width:min(540px,100vw - 32px)}.goals-list{gap:10px;padding:0;list-style:none;display:grid}.goals-list li{border:1px solid #245d5825;border-radius:10px;padding:12px}.goals-list li[data-status=active]{border-color:var(--lagoon);background:#e0e8d6}.goals-list li[data-status=complete]{border-color:#56834c60}.goals-list strong{font-size:14px}.goals-dialog .goals-list p{margin:7px 0;font-size:11px}.goal-status{color:#245d58;font-size:10px}#app:not([data-state=ready]) .goals-card,#app[data-view=collection] .goals-card{display:none}@media (width<=600px){.goals-card{width:calc(100% - 48px);bottom:calc(var(--safe-bottom) + 104px);padding:11px 14px}.goal-current strong{font-size:17px}.goals-dialog .vitality-heading h2{font-size:27px}}@media (width>=601px) and (height<=520px){.goals-card{left:50%;bottom:calc(var(--safe-bottom) + 20px);width:220px;padding:7px 10px}.goal-current strong{font-size:15px}.goal-step,.goal-next{font-size:8px}.goals-dialog .vitality-heading h2{font-size:26px}.goals-dialog .vitality-heading .eyebrow{display:none}}.goal-celebration{left:50%;bottom:calc(var(--safe-bottom) + 152px);width:min(360px,100% - 48px);color:var(--sand);text-align:center;box-shadow:var(--shadow-panel);background:#245d58f5;border:1px solid #efddba66;border-radius:10px;margin:0;padding:12px 16px;font-size:12px;line-height:1.5;position:absolute;transform:translate(-50%)}#app:not([data-state=ready]) .goal-celebration,#app[data-view=collection] .goal-celebration{display:none}@media (width<=600px),(height<=520px){#app:not([data-tool=inspect]) .goals-card,#app[data-power-overlay=true] .goals-card{display:none}#app:has(.parcel-panel:not([hidden])) .goals-card{display:none}#app:has(#building-gallery[open]) .goals-card{display:none}}@media (width<=600px){.goal-celebration{bottom:calc(var(--safe-bottom) + 212px);padding:9px 12px;font-size:11px}}@media (width>=601px) and (height<=520px){.goal-celebration{bottom:calc(var(--safe-bottom) + 102px);padding:8px 12px;font-size:10px}}.guide-panel{left:50%;bottom:calc(var(--safe-bottom) + 152px);width:min(360px,100% - 48px);color:var(--navy);box-shadow:var(--shadow-panel);background:#f5eddbf5;border:1px solid #efddba88;border-radius:12px;padding:12px 14px;position:absolute;transform:translate(-50%)}.guide-offer{justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.guide-offer button{min-height:44px;font:inherit;color:var(--navy);cursor:pointer;background:#fff9ef;border:1px solid #245d5835;border-radius:8px;padding:8px}.guide-panel strong{font:20px/1.2 Georgia,serif}.guide-panel p{margin:8px 0;font-size:11px;line-height:1.45}.guide-actions{gap:8px;display:flex}.guide-actions .button{flex:1;padding:9px;font-size:10px}.guide-panel .guide-storage-message{font-size:9px}.guide-inline{color:#245d58;background:#e0e8d6;border-radius:6px;padding:7px 9px;font-size:10px;line-height:1.4}#app:not([data-state=ready]) .guide-panel,#app[data-view=collection] .guide-panel{display:none}.guide-offer button:focus-visible{outline:3px solid var(--coral);outline-offset:3px}@media (width<=600px),(height<=520px){#app[data-guide-active=true] .goals-card,#app[data-guide-status=offered] .goals-card,#app:not([data-tool=inspect]) .guide-panel,#app[data-power-overlay=true] .guide-panel{display:none}#app:has(.parcel-panel:not([hidden])) .guide-panel{display:none}#app:has(#building-gallery[open]) .guide-panel{display:none}}@media (width<=600px){.guide-panel{bottom:calc(var(--safe-bottom) + 192px);padding:8px 12px}#app[data-guide-active=true] .guide-panel{bottom:calc(var(--safe-bottom) + 104px)}.guide-panel strong{font-size:18px}.guide-panel p,.guide-offer{font-size:10px}.guide-inline{margin:3px 0;font-size:9px}}@media (width>=601px) and (height<=520px){.guide-panel{bottom:calc(var(--safe-bottom) + 20px);width:230px;padding:8px 10px;left:calc(50% - 10px)}#app[data-guide-active=true] .guide-panel{bottom:calc(var(--safe-bottom) + 20px)}.guide-panel strong{font-size:16px}.guide-panel p,.guide-offer{font-size:9px}.guide-inline,#app[data-guide-step=done][data-guide-active=true] .game-feedback{display:none}}
