:root{--paper:#e5e5d6;--cream:#fffaf0;--green:#285a48;--ink:#263c33;--muted:#596b60;--line:#ced4c4}body{background:#173c32;font-size:16px}button,input,select,textarea{font-family:var(--font-noto), sans-serif}button{touch-action:manipulation}button:focus-visible,select:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #c98b36}.app-shell{background:radial-gradient(at 50% 0,#eceddf,#dce2d3 70%);min-height:100svh}.topbar{background:#214a3d;border-bottom:3px solid #142f28;height:80px;min-height:80px;padding:0 clamp(16px,3vw,44px);box-shadow:inset 0 -1px #557260,0 4px 12px #16352c25}.topbar .brand{color:#fff6da}.topbar .brand b{font-size:21px}.topbar .brand small{color:#c7d6bf;letter-spacing:.08em;font-size:11px}.topbar .brand-mark{color:#f5df9a;background:#365f4b;border:1px solid #d2bd7a;border-radius:12px;width:44px;height:44px;box-shadow:inset 0 2px #ffffff16}.game-hud{align-items:center;gap:10px;margin-left:auto;display:flex}.game-hud>span{background:#183b30;border:1px solid #69826c;border-radius:10px;align-items:center;gap:12px;min-height:44px;padding:7px 15px;display:flex;box-shadow:inset 0 2px 4px #0d261c40}.game-hud small{color:#c8d7c2;font-size:12px}.game-hud b{color:#fff2ca;font-variant-numeric:tabular-nums;font-size:20px}.hud-rank i{color:#edbe62;font-style:normal}.topbar-end{gap:14px;margin-left:8px}.case-status{color:#c5d5bd;font:13px var(--font-noto);letter-spacing:0}.case-status b{color:#fff6dc;font-size:17px}.menu-trigger{color:#284a37;background:#f5f0d9;border:1px solid #93a78a;border-bottom:3px solid #132e24;border-radius:10px;min-height:44px;padding:0 16px;font-size:15px;box-shadow:inset 0 2px #fffdf5}.menu-trigger:hover,.menu-trigger[aria-expanded=true]{background:#e5eccc}.office-menu{border:2px solid #879b7a;border-radius:18px;width:min(460px,100vw - 24px);padding:22px;box-shadow:0 22px 60px #10291d55,inset 0 0 0 4px #f2eedb}.office-menu-heading h2{font-size:23px}.office-menu-heading>button{width:40px;height:40px}.office-menu-heading .eyebrow{font-size:11px}.menu-stats small,.menu-stats small em,.menu-stats b em{font-size:12px}.menu-stats b{font-size:21px}.office-menu-links{gap:9px}.office-menu-links button,.office-menu-tools button{border-bottom-width:3px;border-radius:9px;min-height:49px;padding:10px 13px;font-size:15px}.office-menu-links svg,.office-menu-tools svg{width:21px;height:21px}.menu-sales{border-radius:10px;padding:14px}.menu-sales>span{font-size:17px}.menu-sales small{font-size:13px}.game-lobby{width:min(1220px,100%);margin:0 auto;padding:22px 26px 26px}.lobby-scene{background:#66745a;border:5px solid #f9f3dc;border-radius:22px;height:clamp(440px,100svh - 230px,700px);min-height:440px;position:relative;overflow:hidden;box-shadow:0 0 0 2px #8a9b7c,0 12px 30px #203b3026}.lobby-art{position:absolute;inset:0}.lobby-art>img{object-fit:cover;object-position:50% 55%}.lobby-scene:after{z-index:1;content:"";pointer-events:none;background:linear-gradient(#18362a55,#0000 36% 63%,#172d2360);position:absolute;inset:0}.lobby-location{z-index:2;color:#fff9e7;background:#203f33ee;border:1px solid #fff6d7aa;border-radius:14px;padding:16px 22px;position:absolute;top:22px;left:22px;box-shadow:0 4px 16px #132a2630,inset 0 0 0 3px #ffffff0d}.lobby-open{color:#deebcd;align-items:center;gap:8px;font-size:12px;display:flex}.lobby-open .status-dot{background:#b7d77e}.lobby-location h1{font:900 clamp(19px, 2vw, 26px)/1.5 var(--font-zen);letter-spacing:.02em;margin:6px 0 8px}.lobby-area{color:#ecd699;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0;font-size:14px;display:flex}.lobby-area svg{width:16px;height:16px}.lobby-help{z-index:2;position:absolute;top:24px;right:24px}.lobby-help .help-chip{background:#fff8e8;padding:10px 14px;box-shadow:0 3px #b4a778}.lobby-dialogue{z-index:2;background:#fffbf0f5;border:2px solid #afbf98;border-radius:16px;align-items:center;gap:24px;padding:23px 25px 22px;display:flex;position:absolute;bottom:20px;left:20px;right:20px;box-shadow:0 5px #21443270,inset 0 0 0 4px #eeeedf}.lobby-message{flex:1;min-width:0}.dialogue-speaker{color:#fff1cb;background:#2a5542;border:1px solid #91a27f;border-radius:7px;padding:5px 17px;font-size:13px;font-weight:700;position:absolute;top:-15px;left:24px}.lobby-message h2{font:700 clamp(17px, 1.8vw, 22px)/1.6 var(--font-zen);margin:2px 0 7px}.lobby-message p{color:#596b57;margin:0;font-size:14px;line-height:1.7}.lobby-start{color:#45341a;cursor:pointer;background:linear-gradient(#f4d381,#e6b558);border:2px solid #9f6e24;border-bottom:5px solid #8a5e1e;border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;gap:12px;min-height:66px;padding:14px 22px;font-size:19px;font-weight:900;transition:transform .15s,filter .15s;display:flex;box-shadow:inset 0 2px #fff1b7,0 4px 8px #93732e20}.lobby-start:hover{filter:brightness(1.07);transform:translateY(-2px)}.lobby-start:active{transform:translateY(2px)}.command-dock{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;width:min(840px,100%);margin:18px auto 0;padding:0 6px;display:grid}.command-dock>button{color:#2e503b;cursor:pointer;background:linear-gradient(#fffaf0,#edeedc);border:1px solid #a0ae8e;border-bottom:4px solid #849472;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:87px;padding:10px;font-size:16px;font-weight:800;transition:transform .15s,background .15s;display:flex;box-shadow:inset 0 2px #fff,0 4px 8px #193b2910}.command-dock>button:hover{background:#fff6cf;border-color:#ad8c44;transform:translateY(-3px)}.command-icon{color:#507557;place-items:center;width:38px;height:32px;display:grid;position:relative}.command-icon svg{stroke-width:1.8px;width:30px;height:30px}.command-icon i{color:#fff9e5;background:#b37a38;border:1px solid #fff7e3;border-radius:10px;place-items:center;min-width:22px;height:22px;padding:0 4px;font-size:12px;font-style:normal;display:grid;position:absolute;top:-5px;right:-15px}.page{width:min(1260px,100%);padding:28px 32px 48px}.back{min-height:44px;font-size:15px;font-weight:700}.section-heading{background:#f8f7e9;border:1px solid #b9c7aa;border-left:6px solid #5c7956;border-radius:10px;flex-wrap:wrap;align-items:center;gap:14px;margin:16px 0 24px;padding:16px 20px;display:flex;position:relative;box-shadow:0 3px #b0bda52b}.section-heading>.eyebrow{display:none}.section-heading h1{flex:1;margin:0;font-size:27px;line-height:1.6}.section-heading>p{width:100%;margin:0;font-size:16px}.main-button,.secondary-button,.danger-button,.map-open-button{border-radius:9px;min-height:46px;font-size:15px}.main-button{border-bottom:3px solid #193e30;font-weight:700}.main-button:disabled{border-bottom-color:#c2c9b9}.main-button.gold{border-bottom-color:#7c572d}.subhead{font-size:22px}.property-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.property-card{border:1px solid #b9c7ae;border-radius:15px;padding:20px;box-shadow:0 4px #6a7c5720}.property-card h3,.part-card h3{font-size:21px;line-height:1.6}.property-card p,.part-card p{min-height:0;font-size:16px;line-height:1.8}.property-card small,.part-card small,.property-card .market-status span,.property-card .market-status i{font-size:13px;line-height:1.7}.property-card .main-button,.part-card .main-button{font-size:15px}.property-card .help-chip{margin:8px 0}.chips i,.difficulty,.special-badge,.returning-badge{padding:5px 8px;font-size:12px}.list-controls{background:#f3f3e7;border:1px solid #c3cdb6;border-radius:10px;gap:16px;padding:14px}.list-controls label,.list-controls select,.part-filters>span,.archive-controls label,.archive-controls select{font-size:14px}.list-controls select{min-height:44px}.parts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.part-card{border-radius:14px}.part-swatch{font-size:15px}.customer-card{border:2px solid #b4c4a5;border-radius:16px;gap:20px;padding:24px;box-shadow:0 5px #8b9e7726}.customer-main h2{font-size:27px}.customer-main p{font-size:17px;line-height:1.8}.customer-main small,.customer-meta small{font-size:14px}.customer-meta b{font-size:19px}.conditions h4{flex-wrap:wrap;align-items:center;gap:6px;font-size:15px;display:flex}.conditions p{padding:9px 11px;font-size:15px}.conditions .help-chip{min-height:34px;padding:3px 8px;font-size:12px}.budget-match,.archive-offer{font-size:14px}.app-shell .design-time-note{font-size:14px!important}.app-shell .utility-legend{white-space:normal;font-size:12px!important}.building-preview .floor-tabs small,.preview-stairs,.floor-tabs small{font-size:12px}.building-preview .floor-tabs button,.floor-tabs button{min-width:36px;min-height:34px;font-size:13px}.business-strip{flex-wrap:wrap;gap:14px}.rank-description h2{font-size:20px}.rank-description .eyebrow,.rank-track>div,.rank-track small,.branch-goal small{font-size:13px}.branch-goal{margin-left:0;padding-left:16px}.branch-goal>span{font-size:16px}.menu-growth .business-strip{padding:18px 0;display:flex}.menu-growth .rank-description{flex:1}.menu-growth .rank-seal{width:44px;height:50px;font-size:27px}.menu-growth .rank-track,.menu-growth .branch-goal{flex-basis:100%}.menu-growth .progress-preview-heading h2{font-size:22px}.menu-growth .progress-preview-heading p,.menu-growth .ledger h3,.menu-growth .ledger small,.menu-growth .unlock-teasers small,.menu-growth .unlock-teasers p{font-size:14px}.menu-growth .unlock-teasers b{font-size:17px}.menu-growth .unlock-teasers article{min-height:110px;padding:30px 16px 14px 52px}.menu-growth .unlock-teasers article>span{font-size:11px}.menu-growth .ledger b{font-size:25px}.campaign-roadmap-goals{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.campaign-roadmap-goals .campaign-main-goal{grid-column:1/-1}.campaign-roadmap-heading h2,.region-office-heading h2{font-size:23px}.campaign-roadmap-goals h3,.region-next-unlock h3,.landlord-office h2,.business-event h2,.branch-access h2{font-size:20px}.campaign-roadmap-goals p,.region-next-unlock p,.landlord-office p,.business-event p,.branch-access p{font-size:15px}.campaign-roadmap-goals article>span,.campaign-short-goal>small,.campaign-roadmap-goals li b,.campaign-roadmap-goals li small,.campaign-locked-note,.campaign-main-goal .main-button{font-size:14px}.region-card{gap:8px;min-height:155px;padding:16px}.region-card>b{font-size:19px}.region-card>small,.region-card .region-approach,.region-card>em,.region-card .region-index{font-size:13px}.region-map-name{font-size:12px}.region-map-status{font-size:9px}.region-map-legend,.region-map-legend b,.region-next-progress b,.region-next-progress small,.landlord-progress>span,.landlord-progress>b,.landlord-progress>small,.landlord-office>div>small,.business-event-tags small,.business-event-tags span,.branch-access-action>span{font-size:13px}.staff-card h3,.branch-subhead h2,.branch-launch-card h2,.branch-auto-run h2,.branch-territory h2{font-size:21px}.staff-card p,.staff-card dt,.staff-card dd,.branch-subhead p,.branch-launch-card p,.branch-auto-run p,.branch-territory p,.branch-policy p,.branch-policy b{font-size:14px;line-height:1.8}.staff-card .main-button,.staff-card .secondary-button,.automation-toggle,.branch-auto-run .main-button,.branch-access-action .main-button{min-height:44px;font-size:14px}.record-tabs button{min-height:46px;font-size:15px}.collection-grid h3,.achievement-grid h3{font-size:19px}.collection-grid p,.collection-grid small,.achievement-grid p,.achievement-grid small,.archive-card p,.archive-card small{font-size:14px;line-height:1.8}.archive-card h3{font-size:21px}.empty-state p{font-size:16px}.toast{padding:16px 22px;font-size:15px}.puzzle-screen{grid-template-columns:245px minmax(0,1fr) 245px;min-height:calc(100svh - 80px)}.puzzle-side{padding:20px 16px}.puzzle-main{padding:20px}.puzzle-head h1{font-size:24px}.puzzle-head p,.puzzle-side .eyebrow{font-size:13px}.puzzle-side h3{flex-wrap:wrap;align-items:center;gap:8px;font-size:19px;display:flex}.mini-customer h2{font-size:20px}.mini-customer small,.quote{font-size:14px;line-height:1.8}.tool-row button,.room-tools button,.quick-tools button,.part-filters button{min-height:44px;font-size:14px}.room-tools small,.room-tools .room-requirement,.quick-tools>span{font-size:12px;line-height:1.7}.room-tools .room-requirement{margin-top:5px}.timer small{font-size:12px}.timer b{font-size:27px}.live-proposal-check p,.live-check-detail span,.live-proposal-check>div>span{font-size:13px}.editor-toolbar{flex-wrap:wrap;gap:9px}.editor-toolbar>p,.tool-caption,.board-caption{font-size:13px;line-height:1.7}.infrastructure-toolbar{gap:8px}.infrastructure-toolbar>b,.infrastructure-toolbar button,.infrastructure-panel>p,.infrastructure-panel details{font-size:14px}.survey-panel p,.survey-budget small{font-size:15px}.survey-panel h2{font-size:22px}.complete-button{border-radius:11px;min-height:52px;font-size:18px}.mobile-editor-tabs button{min-height:46px;font-size:15px}.map-controls label,.map-controls select,.map-property p,.map-property dl,.map-property small{font-size:14px}.work-receipt,.score-breakdown p,.score-breakdown small{font-size:15px}.help-chip{color:#3e5e43;cursor:pointer;background:#f5f5e6;border:1px solid #aabf99;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:8px 12px;font-size:14px;font-weight:700;line-height:1.5;display:inline-flex}.help-chip svg{flex-shrink:0;width:19px;height:19px}.help-chip:hover{background:#e8efd9;border-color:#65845a}.studio-modal{background:#fffaf0;border:3px solid #7d936d;border-radius:20px;width:min(660px,100vw - 28px);max-height:88svh;box-shadow:0 20px 90px #102b2266,inset 0 0 0 5px #efeed8}.studio-modal::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#112e26a8}.modal-inner{padding:30px}.modal-inner>.eyebrow{color:#6d815f;font-size:12px}.modal-inner h2{margin:10px 0 22px;padding-right:24px;font-size:27px;line-height:1.5}.modal-close{color:#45643e;background:#f1f0df;border:1px solid #ccd4bb;border-radius:10px;width:40px;height:40px;font-size:28px;top:14px;right:14px}.modal-lead,.modal-inner .hint,.guide-steps p,.guide-steps b,.game-explanation,.game-explanation p{font-size:16px;line-height:1.9}.game-explanation>p{margin:0 0 16px}.help-steps{gap:14px;margin:0;padding:0;list-style:none;display:grid}.help-steps li{background:#f4f4e7;border:1px solid #d8ddc7;border-radius:12px;align-items:flex-start;gap:13px;padding:16px;display:flex}.help-steps li>span{color:#fff0bc;background:#315f45;border-radius:9px;flex-shrink:0;place-items:center;width:33px;height:33px;font-size:14px;font-weight:700;display:grid}.help-steps h3{margin:2px 0 7px;font-size:18px;line-height:1.5}.help-steps p{color:#4a5d4d;margin:0}.game-explanation .help-pause-note{color:#62725a;margin:18px 0 0;font-size:13px}.explanation-done{width:100%;margin-top:22px;font-size:18px}.audio-settings label,.title-options label{grid-template-columns:112px minmax(0,1fr) 42px;font-size:14px}.audio-settings output{font-size:13px}.title-secondary,.title-options button{min-height:44px;font-size:16px}.title-panel{font-size:16px;line-height:1.9}.title-panel small,.title-panel p,.title-panel li{font-size:15px;line-height:1.9}.onboarding-nudge{font-size:15px}.onboarding-nudge p{font-size:15px;line-height:1.8}.onboarding-dismiss{min-height:44px;font-size:14px}@media (max-width:1100px){.game-hud>span{gap:7px;padding:7px 11px}.game-hud small{font-size:11px}.game-hud b{font-size:18px}.case-status{display:none}.puzzle-screen{grid-template-columns:205px minmax(0,1fr) 205px}.puzzle-main{padding:16px}.puzzle-side{padding:16px 12px}}@media (max-width:900px){.property-grid{grid-template-columns:1fr}.lobby-dialogue{gap:16px;padding:22px 18px 18px}.lobby-start{padding:12px 16px;font-size:17px}.lobby-message h2{font-size:18px}.lobby-message p{font-size:13px}}@media (max-width:720px){.topbar{flex-wrap:wrap;align-content:center;gap:9px 12px;height:auto;min-height:112px;padding:11px 16px}.topbar .brand b{font-size:18px}.topbar .brand small{font-size:10px}.topbar .brand-mark{width:38px;height:38px}.topbar-end{order:2;margin-left:auto}.menu-trigger{min-height:40px;font-size:14px}.game-hud{flex-basis:100%;order:3;justify-content:space-between;gap:8px}.game-hud>span{border-radius:7px;flex:1;justify-content:space-between;min-height:32px;padding:4px 12px}.game-hud b{font-size:16px}.game-hud small{font-size:12px}.office-menu{max-height:calc(100svh - 88px);padding:18px;position:fixed;top:65px;right:12px}.game-lobby{padding:14px 12px 20px}.lobby-scene{border-width:4px;border-radius:16px;height:clamp(430px,100svh - 350px,610px);min-height:430px}.lobby-location{padding:12px 14px;top:12px;left:12px}.lobby-location h1{font-size:18px}.lobby-open{font-size:11px}.lobby-area{font-size:13px}.lobby-help{top:12px;right:12px}.lobby-help .help-chip{gap:0;min-height:36px;padding:8px;font-size:0}.lobby-help .help-chip svg{width:21px;height:21px}.lobby-art>img{object-position:53% 50%}.lobby-dialogue{flex-direction:column;align-items:stretch;gap:12px;padding:23px 16px 14px;bottom:12px;left:10px;right:10px}.lobby-message h2{font-size:17px}.lobby-message p{font-size:13px}.lobby-start{min-height:53px;font-size:18px}.command-dock{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;padding:0 3px}.command-dock>button{border-radius:12px;gap:4px;min-height:74px;padding:9px;font-size:15px}.command-icon,.command-icon svg{width:26px;height:26px}.page{padding:18px 15px 30px}.section-heading{gap:12px;padding:14px}.section-heading h1{font-size:24px}.section-heading>p{font-size:15px}.parts-grid{grid-template-columns:1fr}.customer-card{gap:14px;padding:18px}.customer-main h2{font-size:24px}.customer-meta{flex-wrap:wrap}.customer-meta span{min-width:0}.customer-meta b{font-size:17px}.campaign-roadmap-goals{grid-template-columns:1fr}.campaign-roadmap-goals .campaign-main-goal{grid-column:auto}.campaign-main-goal ul{grid-template-columns:1fr}.region-card>b{font-size:17px}.region-card .region-approach{font-size:13px}.region-grid{grid-template-columns:1fr}.region-card{min-height:130px}.puzzle-screen{flex-direction:column;display:flex}.puzzle-main{order:0;padding:16px 12px}.puzzle-head{flex-wrap:wrap;gap:12px}.puzzle-side{padding:18px 15px}.puzzle-side .conditions p{font-size:15px}.mobile-editor-tabs{order:1}.puzzle-side{order:2}.modal-inner{padding:25px 20px}.modal-inner h2{font-size:24px}.help-steps li{gap:10px;padding:14px 12px}.help-steps h3{font-size:17px}.game-explanation p{font-size:16px}.audio-settings label{grid-template-columns:100px minmax(0,1fr) 38px;gap:6px;font-size:13px}.record-tabs{flex-wrap:wrap}.record-tabs button{font-size:14px}}@media (prefers-reduced-motion:reduce){.command-dock>button,.lobby-start{transition:none}}
