/* Meridian, pixel edition. Layout/interaction remain in the existing UI files. */
@font-face{font-family:'Pixelify Sans';src:url('assets/pixelify-sans.ttf') format('truetype');font-weight:400 700;font-style:normal;font-display:swap}
:root{--display:'Pixelify Sans',monospace;--sans:'Pixelify Sans',monospace;--serif:'Pixelify Sans',monospace;--ink:#25343c;--muted:#63524c;--paper:#f4e5c8;--cream:#e3d9b8;--line:#b49883;--green:#35533e;--red:#b84c42;--orange:#dfb86c}
body{font-family:var(--sans);font-size:16px;background:#25343c;color:var(--ink);-webkit-font-smoothing:auto}
body :is(button,input,select,textarea,span,p,small,strong,b,label,h1,h2,h3,h4,a,td,th,summary,output,code,em,div),.atlas-svg text{font-family:var(--sans)!important;letter-spacing:0}
body :is(button,input,select,textarea,.badge,.avatar,.modal,.toast,.tabs,.tabs button,.live-pill,.role-card,.bundle,.upgrade,.service-stat,.work-state,.price-row,.name-field,.forecast,.phone-launch,.moment,.primary,.secondary,.scene-heading>div,.round-button,.venue-option,.found-checkout,.city-map,.city-atlas,.property-card,.property-detail,.city-table,.home-hero,.time-track,.day-badge>span,.diorama-camera,.community-panel,.release-card,.pulse-card){border-radius:0!important}
body :is(button,input,select,textarea){font-size:14px}body :is(p,label,td,th,summary){font-size:14px;line-height:1.5}body :is(small,.eyebrow,.hint,.intro,.field small){font-size:12px;line-height:1.45}
body :is(h1,h2,h3,h4){font-weight:600;letter-spacing:0!important;line-height:1.15}
body :is(button,a):focus-visible{outline:3px solid #dfb86c;outline-offset:3px}
button{transition:none!important}button:not(:disabled):active{translate:1px 1px}
img,.diorama-canvas,.pixel-atlas-canvas,svg image{image-rendering:pixelated!important}
.topbar,.home-mode .topbar{background:#25343c;border-bottom:4px solid #19252e;box-shadow:0 2px 0 #4d6265;color:#fff1d4}
.topbar .brand strong,.home-mode .topbar .brand strong{font-size:28px!important;color:#fff1d4;letter-spacing:0!important;font-weight:600}.topbar .brand small{color:#c7c9ad;font-size:10px;letter-spacing:1px}.topbar .brand-dot{color:#dfb86c}
.topbar .brand-mark{border:2px solid #dfb86c;background:#fff1d4;box-shadow:3px 3px 0 #19252e;padding:2px}
.topbar #profile-button,.home-mode #profile-button,.topbar .city-nav{border:2px solid #70817d;background:#35484e;color:#fff1d4;box-shadow:2px 2px 0 #19252e;font-size:14px}
.topbar .community-link{font-size:14px;color:#e3d9b8}.topbar button:hover{color:#dfb86c}
.status-bar{background:#f4e5c8;border-bottom:3px solid #9b6a48;box-shadow:inset 0 -2px #eabc8a}.status-cell{border-color:#d0b499}.status-cell strong{font-size:27px!important;font-weight:600}.status-cell small{font-size:12px;color:#79533e}.currency{border-color:#b49883;border-radius:0;font-size:11px}.condition-pair{font-size:12px}.condition-pair b{font-size:14px}.condition-pair i,.status-dot,.notification-dot{border-radius:0}
.sidebar,.sidebar #plan-cta{background:#f4e5c8;border-color:#9b6a48}.sidebar{border-right-width:3px}.sidebar #panel{padding:22px}.panel-title{font-size:32px}.eyebrow{color:#79533e!important;letter-spacing:1px!important}.intro,.hint{color:#63524c}.sidebar .subheading h3,.sidebar h3{font-size:19px}
.primary,.home-play{background:#b84c42;border:2px solid #71444d;color:#fff1d4;box-shadow:3px 3px 0 #503341!important;font-size:18px;font-weight:600}
.primary:hover:not(:disabled){background:#d36545;box-shadow:3px 3px 0 #503341!important}.secondary{background:#e3d9b8;border:2px solid #9da89b;box-shadow:2px 2px 0 #70817d!important;color:#25343c;font-size:15px}.secondary:hover:not(:disabled){background:#fff1d4}
input,select,textarea,.field input,.field select,.field textarea{background:#fff1d4!important;color:#25343c;border:2px solid #b49883!important;box-shadow:inset 2px 2px #e3d9b8!important;font-size:16px!important}
:is(.role-card,.bundle,.upgrade,.plan-review,.management-card,.supply-card,.team-person,.craft-preview,.safety-card,.visit-card,.kitchen-card){background:#fff1d4;border:2px solid #d0b499;box-shadow:2px 2px 0 #b49883!important;border-radius:0!important}
:is(.role-card,.bundle).selected{border-color:#4c6c47;background:#e3d9b8;box-shadow:2px 2px 0 #35533e!important}.bundle strong,.role-card h3,.upgrade h3{font-size:18px}.bundle p,.role-card p,.upgrade p{font-size:13px}.badge{background:#c7c9ad;color:#35533e;font-size:12px}.avatar{background:#dfb86c;border:2px solid #79533e;box-shadow:2px 2px #b49883}
.service-stat{border:1px solid #b49883;background:#e3d9b8}.service-stat b{font-size:30px}.service-stat span{font-size:12px}.work-state{background:#eabc8a}.selection-circle{border-radius:0;border-width:2px}.mini-track{border-radius:0}.price-row{border:2px solid #b49883;background:#fff1d4}.stepper output{font-size:24px}.stepper button{font-size:22px}
.shop-scene{background:#25343c}.scene-heading>div:first-child{background:#f4e5c8;border:2px solid #9b6a48;box-shadow:3px 3px #25343c99;backdrop-filter:none;padding:8px 12px}.scene-heading h2{font-size:28px}.scene-heading .eyebrow{font-size:11px}.weather{background:#f4e5c8;border:2px solid #9b6a48;border-radius:0;font-size:12px}
.live-pill{background:#35533e;border:2px solid #253b36;color:#fff1d4;font-size:12px;box-shadow:2px 2px #19252e66}.live-pill i{border-radius:0;background:#a5b776}.round-button{background:#f4e5c8;border:2px solid #b49883;box-shadow:2px 2px #25343c66}
.diorama-camera{background:#f4e5c8;border:2px solid #9b6a48;box-shadow:3px 3px #19252e66}.diorama-camera button{font-size:24px;width:34px;height:34px}.diorama-people button{background:#f4e5c8;border:2px solid #b49883;font-size:12px;box-shadow:2px 2px #19252e66;padding:4px 8px}
.moment{background:#f4e5c8;border:2px solid #b49883;box-shadow:3px 3px #25343c77}.moment small{font-size:11px}.moment p{font-size:13px}.phone-launch{background:#b84c42;border:2px solid #71444d;color:#fff1d4;box-shadow:3px 3px #19252e88;font-size:18px}.scene-caption{font-size:11px;color:#fff1d4;text-shadow:1px 1px #19252e}
.timeline-bar{background:#e3d9b8;border-top:3px solid #9b6a48;box-shadow:inset 0 2px #f4e5c8}.clock{font-size:23px}.day-badge>span:first-child{background:#b84c42;border:2px solid #71444d;color:#fff1d4;font-size:30px}.day-badge b{font-size:17px}.day-badge small,.timeline-labels{font-size:11px}.time-track{background:#b49883;border:1px solid #79533e}.time-track>div{border-radius:0;background:#b84c42}.time-track>i{border-radius:0}.speed-buttons button{font-size:18px}.speed-buttons button.active{background:#35533e}
.overlay{background:#19252eb3;backdrop-filter:none}.modal{background:#f4e5c8;border:3px solid #79533e;box-shadow:7px 7px 0 #19252e99;color:#25343c}.modal h2{font-size:32px}.modal h3{font-size:22px}.modal-close{background:#e3d9b8;border:2px solid #b49883}.tabs{border-bottom:2px solid #b49883}.tabs button{font-size:16px}.tabs button.active{background:#35533e;color:#fff1d4}
.phone-modal{border:10px solid #25343c!important;outline:3px solid #70817d;border-radius:12px!important;box-shadow:6px 6px 0 #19252e99;background:#f4e5c8}.phone-modal .phone-screen{background:#f4e5c8;border-radius:0}.phone-modal::before{border-radius:0}.phone-tabs button{font-size:14px}.phone-modal h2{font-size:26px}.phone-statusbar{font-size:12px}.toast{background:#35533e;color:#fff1d4;border:2px solid #9da89b;box-shadow:3px 3px #19252e;font-size:16px}
.founding,.city-board{background:#e3d9b8}.found-hero h1{font-size:42px}.start-budget{border:3px solid #35533e;border-radius:0;background:#f4e5c8;box-shadow:4px 4px #9da89b}.start-budget strong{font-size:34px}.venue-option,.found-checkout,.city-map{background:#f4e5c8;border:2px solid #b49883;box-shadow:4px 4px #b49883}.venue-option.selected{border-color:#b84c42;box-shadow:4px 4px #71444d}.venue-body,.found-checkout{background:#f4e5c8}.venue-body h2{font-size:27px}.venue-facts b{font-size:20px}.venue-facts small{font-size:12px}.venue-price{background:#e3d9b8;border-color:#b49883}.venue-price b{font-size:25px}.venue-number,.venue-check{border-radius:0;font-size:14px}.venue-tag,.venue-address{font-size:12px}.found-story h2{font-size:32px}.found-checkout .primary{font-size:18px}.customer-mix{font-size:14px}
#city-chrome{background:#f4e5c8;border-bottom:3px solid #9b6a48}.city-tabs button{font-size:17px;border:2px solid transparent}.city-tabs button.active{background:#35533e;border-color:#253b36;color:#fff1d4}.city-atlas{border:2px solid #70817d;box-shadow:4px 4px #9da89b}.atlas-heading,.atlas-toolbar,.atlas-districts,.atlas-selection{background:#f4e5c8;border-color:#b49883}.atlas-heading h2{font-size:28px}.atlas-heading p,.atlas-time{font-size:12px}.atlas-toolbar button{font-size:13px;border:2px solid #b49883;min-height:38px}.atlas-toolbar button[aria-pressed=true]{background:#35533e;color:#fff1d4;border-color:#253b36}.atlas-districts button{font-size:14px;border:2px solid #b49883}.atlas-districts button[aria-pressed=true]{background:#35533e}.atlas-caption{font-size:12px}.atlas-key{background:#f4e5c8;border:2px solid #70817d;border-radius:0;box-shadow:2px 2px #25343c66;font-size:12px}.atlas-key i{border-radius:0!important}
.atlas-svg{shape-rendering:crispEdges!important}.atlas-svg text{font-weight:500}.atlas-svg .city-district-label text{font-size:14px}.atlas-pin text{font-size:22px}.atlas-pin path{stroke-width:2px}.pixel-atlas-canvas{position:absolute;pointer-events:none;inset:0;width:100%;height:100%;z-index:0}.atlas-svg{position:relative}.atlas-svg[data-pixel-ready]>.city-terrain,.atlas-svg[data-pixel-ready]>.city-architecture,.atlas-svg[data-pixel-ready]>.city-street-life{opacity:0}
.property-card,.property-detail,.city-access-strip,.city-overview,.city-company-card{background:#f4e5c8;border:2px solid #b49883;border-radius:0;box-shadow:3px 3px #b49883}.property-card h3{font-size:25px}.property-card .card-costs,.property-card .card-trait{font-size:13px}.city-table th{background:#c7c9ad}.city-table td{border-color:#b49883}
.home-mode{background:#e3d9b8!important}.home-hero{background:#25343c;border:3px solid #19252e;border-radius:0!important;box-shadow:6px 6px #9da89b;grid-template-columns:40% 60%}.home-hero::before{background:linear-gradient(90deg,#25343c 0%,#25343c 30%,#25343c00 58%)}.home-copy{padding-left:32px}.home-copy h1{font-size:clamp(44px,4.5vw,72px);font-weight:600;line-height:1.04;letter-spacing:-1px!important}.home-copy h1>span{color:#dfb86c}.home-kicker{font-size:13px;color:#c7c9ad}.home-kicker i{border-radius:0;background:#dfb86c}.home-intro{font-size:16px;line-height:1.5;color:#e3d9b8}.home-play{background:#dfb86c;border:2px solid #ffe5a8;color:#25343c;font-size:21px;box-shadow:4px 4px #19252e!important}.home-play:hover{background:#f1cf86}.home-solo{font-size:16px}.home-access{font-size:12px;color:#c7c9ad}.home-scene-tag{background:#25343c;border:2px solid #70817d;border-radius:0;font-size:12px}.home-marquee{background:#25343c;border-top:2px solid #4d6265;font-size:13px;letter-spacing:2px!important;color:#c7c9ad}.home-marquee i{color:#dfb86c}.home-chapters button{font-size:22px;border-top:3px solid #b49883}.home-chapters button[aria-pressed=true]{border-color:#b84c42;color:#b84c42}.home-story p{font-size:16px}.home-story small{font-size:12px;color:#63524c}.home-footer,.home-footer button,.home-footer a{font-size:13px}.home-footer a{color:#35533e}
.community{background:#e3d9b8}.community-nav{border-bottom:2px solid #9b6a48}.community-nav a{font-size:16px;border-radius:0}.community-nav a[aria-current=page]{background:#35533e;color:#fff1d4}.community-inner h1{font-size:42px}.community-inner h2{font-size:29px}.community-inner h3{font-size:22px}.community-inner article{background:#f4e5c8;border:2px solid #b49883;border-radius:0;box-shadow:3px 3px #b49883}.community-inner p{font-size:15px}.community-inner :is(.pulse-stat,.pulse-card,.dashboard-card,.benchmark-card){border:2px solid #b49883;border-radius:0;background:#f4e5c8;box-shadow:3px 3px #b49883}.community-inner strong{font-size:inherit}
@media(max-width:1100px){.topbar .brand strong,.home-mode .topbar .brand strong{font-size:23px!important}.home-copy h1{font-size:47px}.home-intro{font-size:15px}.home-play{font-size:19px}.home-chapters button{font-size:20px}.sidebar #panel{padding:18px}}
@media(max-width:700px){.topbar .brand strong,.home-mode .topbar .brand strong{font-size:19px!important}.topbar #profile-button,.topbar .city-nav{font-size:12px}.topbar .community-link{font-size:12px}.status-cell strong{font-size:22px!important}.status-cell small{font-size:10px}.condition-pair{font-size:10px}.condition-pair b{font-size:12px}.scene-heading h2{font-size:23px}.scene-heading .eyebrow{font-size:10px}.live-pill{font-size:10px}.sidebar{border-right:0;border-top:3px solid #9b6a48}.sidebar #panel{padding:16px}.home-copy{padding:24px 24px 0}.home-copy h1{font-size:44px}.home-intro{font-size:15px}.home-play{font-size:20px}.home-hero::before{display:none}.home-chapters button{font-size:17px}.home-story p{font-size:15px}.home-story small{font-size:12px}.home-footer{font-size:12px}.home-footer nav{gap:10px}.home-footer button,.home-footer a{font-size:12px}.atlas-toolbar button{font-size:12px}.atlas-districts button{font-size:13px}.atlas-heading h2{font-size:27px}.atlas-key{font-size:10px;padding:6px;gap:10px}.community-inner h1{font-size:33px}.community-inner h2{font-size:26px}.modal{padding:20px 16px}.phone-modal{border-width:7px!important}.phone-tabs button{font-size:13px}.clock{font-size:19px}.timeline-labels{font-size:10px}}
@media(max-height:740px) and (min-width:701px){.home-copy h1{font-size:43px}.home-intro{font-size:14px;margin-bottom:17px}.home-play{font-size:19px}.home-chapters button{font-size:18px}.home-story p{font-size:14px}.home-access{font-size:11px}.home-art{min-height:330px}}
.atlas-svg[data-pixel-ready]{background:transparent!important}
/* Give the whole city enough pixels instead of compressing it into a strip. */
.city-atlas,.city-access-strip+.city-atlas{height:auto!important}
.city-atlas .atlas-surface{flex:none;height:calc(clamp(460px,65dvh,780px) + 32px)}
.city-atlas[data-view] .atlas-svg{height:calc(100% - 32px);max-height:none!important;aspect-ratio:auto}
@media(max-width:600px){.city-atlas .atlas-surface{height:418px;padding-bottom:38px}.city-atlas[data-view] .atlas-svg{height:380px}}

/* Keep every navigation action reachable on narrow phones. */
@media(max-width:700px){
 .topbar .brand strong,.home-mode .topbar .brand strong{font-size:16px!important}
 .topbar .brand-mark{width:25px;height:37px;flex:none}
 .topbar .city-nav,.topbar #profile-button{font-size:11px;padding:6px}
 .topbar .community-link{display:none}
 .city-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}
 .city-tabs button{font-size:13px;min-width:0;white-space:normal;padding:8px 3px}
 .atlas-heading{display:block}.atlas-heading h2{max-width:none;font-size:24px}.atlas-heading .atlas-time{display:inline-block;margin-top:8px}
 .city-atlas .atlas-surface{height:418px;padding-bottom:38px}.city-atlas[data-view] .atlas-svg{height:380px}
 .community-inner .dashboard-metrics strong{font-size:32px}
}
.community-inner :is(.capacity-meter,.capacity-meter i,.revenue-bars i,.district-dot,.city-pulse,.city-pulse i,.dashboard-leaders li>b,.archive-note){border-radius:0}
.community-inner .capacity-card{background:#35533e;color:#fff1d4;border-color:#253b36}
.community-inner .capacity-card :is(p,small,.eyebrow){color:#e3d9b8!important}
.community-inner .dashboard-metrics strong{font-size:38px}
:is(.review-card,.post-card,.creator-card,.creator-deal,.creator-message,.post-cover,.save-card,.experiment,.shortcut,.safety-finding,.creator-portrait,.team-portrait,.craft-art,.phone-close),.phone-dock button>span{border-radius:0!important}
.phone-screen .review-card,.phone-screen .post-card{border:2px solid #d0b499;background:#fff1d4;box-shadow:2px 2px #b49883}
/* Public customer figures stay readable in both city and community layouts. */
.audience-panel.dashboard-card{border-radius:0;border:2px solid #b49883;background:#f4e5c8;box-shadow:3px 3px #b49883}
.audience-table thead th{background:#35533e;color:#fff1d4}
