:root{font-family:Inter,'Segoe UI',Arial,sans-serif;background:#101a37;color:#f6f8ff;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.42;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ffcb54;outline-offset:3px}button{border:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em}h1{font-size:clamp(32px,4.1vw,58px);line-height:1.04}h2{font-size:clamp(26px,3vw,42px);line-height:1.07}h3{font-size:22px}p{line-height:1.5}.shell{min-height:100vh;background:#0f1933;padding-bottom:85px}.topbar{position:sticky;top:0;z-index:20;height:88px;background:#101b39;display:flex;align-items:center;padding:0 clamp(18px,3.3vw,60px);gap:30px;border-bottom:2px solid #273553}.brand{background:none;color:white;display:flex;gap:10px;align-items:center;flex:0 0 auto;text-align:left;padding:0}.brand>span{font-weight:950;font-size:25px;letter-spacing:.055em;line-height:.9}.brand small{display:block;font-weight:750;font-size:9px;letter-spacing:.22em;color:#99aacc;margin-top:8px}.hud{display:flex;gap:clamp(12px,2.7vw,46px);align-items:center;flex:1;justify-content:center}.hud-stat{display:flex;flex-direction:column;gap:4px}.hud-stat>span{font-size:9px;letter-spacing:.12em;font-weight:800;color:#92a2c1}.hud-stat strong{font-size:clamp(14px,1.45vw,21px);font-weight:850;white-space:nowrap}.top-actions{display:flex;gap:7px;margin-left:auto}.utility{height:39px;width:39px;border-radius:11px;background:#243252;color:#dee9ff;font-size:22px}.utility:hover{background:#35496e}.topbar-intro{flex:1;text-align:center;color:#95a5c8;letter-spacing:.15em;font-size:11px;font-weight:800}.play-view{max-width:1650px;margin:auto}.world-stage{position:relative;min-height:min(52vw,540px);height:clamp(350px,46vw,590px);overflow:hidden;background:#bedee3}.world-overlay{position:absolute;inset:0;pointer-events:none;padding:32px clamp(25px,5vw,90px);display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(90deg,rgba(11,30,69,.72),transparent 59%);z-index:2}.chapter-label{color:#e8f7ff;font-size:12px;font-weight:900;letter-spacing:.15em}.world-title{max-width:530px}.world-title h1{font-size:clamp(38px,5.3vw,76px);color:#fff;margin:0 0 14px}.world-title p{font-size:clamp(14px,1.5vw,19px);max-width:410px;color:#d9e7f3;font-weight:500}.empty-site{position:absolute;inset:0;background:#a9d4db;overflow:hidden}.empty-site:before{content:'';position:absolute;inset:43% -20% -30%;background:#7baf83;transform:skewY(-8deg)}.empty-site:after{content:'';position:absolute;right:-9%;top:30%;width:80%;height:65%;background:#c6ab73;transform:rotate(-13deg) skewX(-12deg);border-radius:50%;box-shadow:inset 0 0 0 25px #b99b65}.site-patch{position:absolute;right:14%;top:33%;width:46%;height:48%;transform:rotate(-12deg) skewX(-9deg);background:#dec697;border:12px solid #9f8758;z-index:1;border-radius:12px}.dirt-path{position:absolute;right:-4%;top:70%;width:55%;height:20%;background:#cdb37d;transform:rotate(-12deg);z-index:1}.site-sign{position:absolute;right:33%;top:39%;z-index:2;background:#223455;color:#ffe2a2;letter-spacing:.15em;font-weight:950;font-size:27px;text-align:center;padding:22px 28px;transform:rotate(-7deg) skewY(-3deg);box-shadow:12px 13px 0 #162239}.site-sign span{display:block;font-size:8px;color:#cde0ec;margin-top:7px}.empty-statement{position:absolute;z-index:2;right:5%;bottom:8%;font-size:10px;letter-spacing:.13em;color:#314558;font-weight:900}.campus{position:absolute;inset:0;background:#b4d9e0;overflow:hidden}.campus:before{content:'';position:absolute;bottom:-13%;left:-20%;width:140%;height:48%;background:#91bb8c;transform:rotate(-5deg)}.campus-horizon{position:absolute;inset:0 0 45%;background:#bcdfe7}.cloud{position:absolute;width:130px;height:28px;background:#e8f3ef;border-radius:80px;opacity:.67}.cloud1{top:19%;left:26%}.cloud2{top:12%;right:20%;transform:scale(.65)}.factory-roof{position:absolute;top:20%;left:28%;width:54%;height:23%;background:#3d587a;transform:skewY(-9deg);border:8px solid #28415e;border-bottom:0;box-shadow:0 15px 0 #2a3e59;z-index:2;display:flex;gap:20px;align-items:center;padding-left:8%}.factory-roof>span:first-child{font-size:clamp(26px,4vw,52px);font-weight:950;letter-spacing:.12em;color:#fcdb8e;transform:skewY(9deg)}.roof-window{height:35px;width:34px;background:#80b0c5;transform:skewY(9deg);border:6px solid #2c486a}.factory-wall{position:absolute;top:39%;left:29%;width:53%;height:37%;background:#d5dfd4;border:10px solid #587589;z-index:3;transform:skewY(4deg);box-shadow:25px 22px 0 #729496}.doors{height:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:4%;padding:6%}.station-graphic{min-width:0;background:#456686;color:white;border:5px solid #88a3ad;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;position:relative}.station-graphic.running{background:#2b7c8a}.station-symbol{font-size:clamp(23px,4vw,53px);line-height:1}.station-graphic small{font-size:clamp(7px,.75vw,11px);letter-spacing:.1em;font-weight:850}.station-graphic b{font-size:11px;color:#ffdc76}.yard{position:absolute;z-index:4;left:25%;top:75%;width:70%;height:24%;background:#b5ab86;transform:skewX(-21deg)}.loading-bay{position:absolute;right:12%;top:17%;background:#e2c58f;width:22%;height:21%;border-radius:50%}.shipment-truck{position:absolute;right:13%;top:-5%;width:140px;height:62px;background:#e7b751;border-radius:8px 20px 9px 8px;border-bottom:9px solid #384d60;animation:truck 4s ease-in-out infinite alternate;display:flex;align-items:center;justify-content:space-around;font-weight:950;font-size:32px;color:#253c5b}.truck-brand{background:#284369;color:#ffda77;padding:1px 10px;border-radius:4px}.yard-people{position:absolute;left:12%;top:1%;display:flex;gap:18px}.worker{position:relative;display:block;color:#f7d0a0;font-size:30px;text-shadow:0 22px #2c5674;animation:bob 2.2s ease-in-out infinite alternate}.worker:nth-child(2){animation-delay:.6s}.worker:nth-child(3){animation-delay:1.2s}.world-caption{position:absolute;bottom:15px;right:20px;color:#203d4e;font-size:12px;font-weight:850;z-index:5}.action-zone{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,390px);gap:clamp(25px,5vw,90px);padding:clamp(24px,3.2vw,48px) clamp(25px,5vw,90px);align-items:center;background:#f0f0e9;color:#18243a}.focus-number,.eyebrow{font-size:11px;font-weight:900;letter-spacing:.14em;color:#6b7891}.focus-intro h2{max-width:680px;margin:11px 0}.focus-intro>p{color:#657086;margin:0 0 22px;max-width:590px;font-size:16px}.primary{background:#ffcc59;color:#17213a;padding:16px 22px;border-radius:12px;font-weight:950;display:inline-flex;align-items:center;justify-content:space-between;gap:38px;min-height:51px;box-shadow:0 5px 0 #d39c34;transition:transform .15s,box-shadow .15s}.primary:hover{background:#ffdb78;transform:translateY(-2px);box-shadow:0 7px 0 #d39c34}.primary:active{transform:translateY(3px);box-shadow:0 2px 0 #d39c34}.primary span{font-size:20px}.advisor{display:flex;gap:18px;align-items:center;min-width:0}.avatar{width:85px;height:118px;flex:0 0 85px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;filter:drop-shadow(0 6px 0 #18274126)}.avatar .head{width:65px;height:65px;background:#f0c3a2;border-radius:35px 35px 30px 30px;border:6px solid #293855;position:absolute;top:4px;z-index:1}.avatar .head:before{content:'';position:absolute;top:-10px;left:-5px;width:62px;height:23px;background:#273855;border-radius:30px 22px 8px 9px}.avatar .eyes{position:absolute;left:19px;top:21px;color:#273855;font-size:28px;font-weight:900;letter-spacing:5px}.avatar .body{height:65px;width:84px;border-radius:33px 33px 14px 14px;background:var(--avatar);border:6px solid #293855;text-align:center;padding-top:22px;color:#293855;font-size:26px;font-weight:900}.advisor-copy{background:white;padding:17px 20px;border-radius:16px;color:#273149;box-shadow:0 7px 0 #dde1dc;max-width:390px;position:relative}.advisor-copy:before{content:'';position:absolute;left:-11px;bottom:25px;border:11px solid transparent;border-left:0;border-right-color:white}.advisor-copy>span{font-weight:950;display:block;margin-bottom:5px}.advisor-copy small{font-size:9px;color:#83909e;font-weight:950;letter-spacing:.12em;margin-left:8px}.advisor-copy p{font-size:13px;margin:0;line-height:1.5}.home-footer{background:#e5e8e0;min-height:80px;padding:15px clamp(25px,5vw,90px);display:flex;align-items:center;justify-content:space-between;gap:20px;color:#1b3150}.market-signal{display:flex;align-items:center;gap:12px}.pulse-dot{width:12px;height:12px;border-radius:50%;background:#4eaa83;box-shadow:0 0 0 5px #4eaa8322}.market-signal small{display:block;font-size:9px;font-weight:900;letter-spacing:.13em;color:#7a8c9a}.market-signal strong{font-size:14px}.run-secondary{background:#253d65;color:white;font-weight:900;border-radius:11px;padding:13px 19px;display:flex;align-items:center;gap:25px}.run-secondary:hover{background:#36527d}.dock{position:fixed;bottom:17px;left:50%;transform:translateX(-50%);z-index:18;display:flex;background:#1b2a4d;border:2px solid #43567b;border-radius:19px;padding:6px;box-shadow:0 10px 35px #020b20a0;gap:3px}.dock button{width:112px;border-radius:13px;padding:9px 14px;background:transparent;color:#aab8d0;font-size:12px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:9px}.dock button span{font-size:21px}.dock button.selected{color:#172443;background:#ffcd60}.dock button:hover:not(.selected){background:#304369;color:white}.build-view,.records-view{max-width:1530px;margin:auto;padding:30px clamp(20px,4vw,65px) 80px}.build-nav{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.build-nav>span{font-size:10px;font-weight:900;letter-spacing:.16em;color:#849bc4}.focus-tabs{display:flex;gap:7px;background:#1a2949;border-radius:14px;padding:5px}.focus-tabs button{color:#a8b7d2;background:none;padding:11px 14px;font-size:14px;font-weight:850;border-radius:10px}.focus-tabs button.active{background:#f0f0e8;color:#1b2941}.workspace{background:#f0f0e9;color:#19253e;padding:clamp(20px,3vw,45px);border-radius:22px;min-height:640px;animation:enter .35s ease both}.workspace-head{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:28px}.workspace-head h2{margin:0 0 8px}.workspace-head p{margin:0;color:#768091}.tiny-status,.quiet-action{background:#e2e6e2;border-radius:10px;padding:11px 15px;color:#314663;font-size:12px;font-weight:900;letter-spacing:.035em}.quiet-action:hover{background:#cbd5dc}.production-track{display:flex;align-items:stretch;justify-content:center;gap:7px;margin-bottom:24px}.machine-tile{background:white;border:3px solid transparent;border-radius:18px;flex:1;max-width:280px;min-width:0;text-align:center;padding:15px 10px 18px;display:flex;flex-direction:column;align-items:center;gap:8px;box-shadow:0 6px 0 #d8dedb}.machine-tile.bottleneck{border-color:#df9b54}.tile-illustration{height:109px;width:90%;background:#d9e5e0;border-radius:14px 14px 6px 6px;border-bottom:11px solid #718998;display:flex;align-items:center;justify-content:center;position:relative}.tile-illustration>span{font-size:70px;color:#466586}.machine-light{position:absolute;width:13px;height:13px;background:#6adbab;border-radius:50%;top:11px;right:12px;box-shadow:0 0 0 5px #6adbab44;animation:glow 1.6s infinite}.machine-tag{font-size:14px;font-weight:900}.machine-tile>strong{font-size:26px;letter-spacing:-.04em}.machine-tile>strong small{font-size:12px;letter-spacing:0;color:#7b8995}.machine-tile>small{font-size:11px;color:#7a8994}.tile-action{background:#e6ebec;color:#243854;border-radius:9px;padding:11px 12px;font-size:12px;font-weight:900;margin-top:auto;max-width:100%}.tile-action:hover{background:#ffce60}.flow-arrow{align-self:center;color:#8797a2;font-size:23px}.two-panels{display:grid;grid-template-columns:1.15fr 1fr;gap:18px}.dark-panel{background:#223454;color:white;padding:23px;border-radius:16px}.light-panel{background:#dfe6df;padding:23px;border-radius:16px}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:3px 0 16px}.panel-title span{font-size:11px;color:#adbdd8;font-weight:900;letter-spacing:.07em}.panel-title strong{font-size:15px}.panel-title.space{margin-top:28px}input[type=range]{accent-color:#e9ae47;width:100%;cursor:pointer}.micro-row{display:flex;justify-content:space-between;font-size:10px;gap:10px;color:#9eacc6;font-weight:700;margin:7px 0}.light-panel .micro-row{color:#647b91}.light-panel h3{margin:10px 0}.light-panel p{color:#637488;font-size:14px}.subtle-btn{background:transparent;color:#1e4774;font-weight:950;padding:8px 0}.checkbox-line{display:flex;gap:9px;margin-top:20px;font-size:13px;align-items:center;font-weight:700}.workspace-advisor{padding-top:27px}.workspace-advisor .advisor-copy{background:#fff}.floating-run{position:fixed;right:32px;bottom:30px;z-index:18;background:#ffcc59;border-radius:14px;padding:17px 25px;color:#21324a;font-size:14px;font-weight:950;box-shadow:0 5px 0 #c39339}.floating-run span{margin-left:18px}.product-showcase{display:flex;align-items:center;gap:6%;background:#dde7df;border-radius:20px;padding:26px 5%;margin-bottom:20px}.snack-pack{flex:0 0 170px;height:240px;background:#ffcf60;border-radius:14px 14px 23px 23px;border-top:11px solid #f0b845;border-bottom:15px solid #df9e39;box-shadow:15px 13px 0 #2e496436;display:flex;flex-direction:column;align-items:center;justify-content:space-around;color:#22365a;transform:rotate(-5deg);padding:15px;text-align:center}.snack-pack>span{font-weight:950;letter-spacing:.13em;font-size:18px}.snack-pack .sun-mark{font-size:83px;line-height:1;color:#d86d47}.snack-pack>b{font-size:20px;line-height:1}.snack-pack small{font-size:8px;font-weight:900;letter-spacing:.12em}.product-overview{flex:1}.product-overview h3{font-size:clamp(27px,3vw,42px);margin:10px 0}.product-overview p{color:#667989}.input-caption{display:flex;justify-content:space-between;margin:26px 0 12px;font-size:11px;letter-spacing:.1em;font-weight:900}.input-caption strong{font-size:19px;letter-spacing:0}.channel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.channel-tile{background:white;padding:20px;border-radius:15px;min-height:235px;display:flex;flex-direction:column}.channel-top{display:flex;justify-content:space-between;align-items:center}.channel-symbol{font-size:33px;color:#47627f}.status-indicator{font-size:9px;font-weight:900;color:#72889b}.channel-tile h3{margin:10px 0 5px}.channel-tile p{font-size:12px;color:#7b8899;min-height:35px;margin-bottom:10px}.channel-spend{margin-top:auto}.channel-spend label{font-size:10px;font-weight:900;display:flex;justify-content:space-between;gap:8px}.channel-spend input{margin-top:12px}.team-visual{display:flex;align-items:center;gap:30px;background:#dde6e2;border-radius:18px;padding:20px 30px;margin-bottom:18px}.team-visual>div:nth-child(2){flex:1}.team-visual h3{margin-bottom:5px}.team-visual p{font-size:13px;color:#637487;margin:0}.headcount{font-size:55px;font-weight:950;line-height:.9}.headcount small{display:block;font-size:10px;letter-spacing:.1em;color:#7e8999}.role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.role-tile{background:#fff;border-radius:14px;padding:19px;display:flex;justify-content:space-between;align-items:center;gap:12px}.role-tile>div{display:flex;flex-direction:column;gap:5px}.role-icon{font-size:28px;color:#48678f}.role-tile strong{font-size:15px}.role-tile small{font-size:11px;color:#7d8996}.pending-note{margin-top:15px;font-size:12px;color:#718199}.treasury-hero,.records-summary,.finale-stats{display:grid;grid-template-columns:repeat(3,1fr);background:#223755;border-radius:18px;color:white;padding:27px;gap:15px;margin-bottom:20px}.treasury-hero>div{display:flex;flex-direction:column;gap:9px}.treasury-hero small,.treasury-hero span,.records-summary span{font-size:10px;font-weight:850;letter-spacing:.09em;color:#9caecc}.treasury-hero strong{font-size:clamp(22px,3vw,40px);letter-spacing:-.04em}.balance-line{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #4a5a72;font-size:14px}.balance-line b{font-size:16px}.recovery-panel{background:#ffe1cf;padding:20px;border-radius:15px;margin-top:20px}.recovery-panel p{color:#704c4e}.recovery-buttons{display:flex;flex-wrap:wrap;gap:8px}.recovery-buttons button{border-radius:8px;padding:10px 15px;background:#fff;color:#69452f;font-size:12px;font-weight:900}.strategy-visual{display:flex;background:#dce7df;border-radius:20px;padding:30px;gap:40px;align-items:center}.horizon-disc{width:180px;height:180px;flex-shrink:0;border-radius:50%;background:#ffcd60;color:#314e6d;font-size:155px;line-height:1;text-align:center}.strategy-visual h3{font-size:32px;margin:10px 0}.strategy-visual p{color:#637b8b}.strategy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:20px}.strategy-grid>div{background:white;border-radius:14px;padding:25px;display:flex;flex-direction:column;gap:12px}.strategy-grid span{color:#748493;font-size:10px;font-weight:900;letter-spacing:.12em}.strategy-grid strong{font-size:19px}.strategy-grid p{font-size:13px;color:#738193}.records-view{max-width:1260px}.records-head{padding:25px 0 20px}.records-head h2{margin:12px 0}.records-head p{color:#a9b8d0}.records-summary{margin:15px 0 20px;padding:30px}.records-summary>div{display:flex;flex-direction:column;gap:15px}.records-summary strong{font-size:clamp(23px,3vw,36px)}.ledger-table{border-radius:17px;overflow:hidden;background:#eef0eb;color:#23344c}.table-head,.table-row{display:grid;grid-template-columns:.65fr repeat(4,1fr);gap:12px;align-items:center;padding:17px 23px}.table-head{background:#d7e1dc;font-size:10px;font-weight:900;letter-spacing:.1em}.table-row{font-size:14px;border-bottom:1px solid #d4dad7}.table-row span,.table-row b{min-width:0}.negative{color:#c75e53!important}.positive{color:#32976f}.records-empty{padding:30px;text-align:center;color:#748596}.records-tools{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.records-tools button{background:#2a3e60;color:#dee8fa;padding:12px 15px;border-radius:10px;font-weight:850;font-size:12px}.results-view{max-width:1450px;margin:0 auto;display:grid;grid-template-columns:44% 56%;min-height:calc(100vh - 90px)}.result-art{background:#253d68;padding:65px clamp(25px,5vw,70px);display:flex;flex-direction:column;justify-content:center}.result-quarter{font-size:12px;letter-spacing:.15em;font-weight:950;color:#ffcf63}.result-sun{color:#ffcf63;font-size:clamp(120px,20vw,270px);line-height:1;animation:resultRotate 16s linear infinite}.result-art h1{font-size:clamp(37px,4vw,64px)}.result-art p{color:#b5c9e0}.result-content{background:#f0f0e9;padding:clamp(25px,5vw,80px);color:#20304b;display:flex;flex-direction:column;justify-content:center}.outcome-stats{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-bottom:45px}.outcome-stats>div{display:flex;flex-direction:column;gap:10px}.outcome-stats small{font-size:11px;color:#75849a;font-weight:900;letter-spacing:.1em}.outcome-stats strong{font-size:clamp(24px,2.8vw,38px);letter-spacing:-.05em}.result-insight{border-top:3px solid #d4dbd7;padding-top:28px}.result-insight span{font-size:11px;font-weight:950;color:#71879c;letter-spacing:.12em}.result-insight h2{font-size:clamp(23px,2.7vw,36px);margin:12px 0}.result-insight p{color:#778597}.result-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:30px}.finale-view{text-align:center;max-width:1100px;margin:0 auto;padding:40px 25px 90px}.finale-medal{font-size:125px;color:#ffcf63;line-height:1}.finale-view h1{font-size:clamp(40px,6vw,80px);margin:22px 0}.finale-view>p{max-width:670px;margin:0 auto 28px;color:#b2c4db}.finale-labels{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:35px}.finale-labels span{background:#ffcf63;border-radius:9px;color:#243857;padding:10px 16px;font-weight:950}.finale-stats{grid-template-columns:repeat(4,1fr);text-align:left}.finale-stats div{display:flex;flex-direction:column;gap:10px}.finale-stats small{font-size:10px;letter-spacing:.1em;color:#a0b4ce;font-weight:900}.finale-stats strong{font-size:clamp(18px,2vw,29px)}.finale-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.modal-overlay{position:fixed;inset:0;background:#071022cf;z-index:45;display:flex;align-items:center;justify-content:center;padding:15px;overflow-y:auto}.modal-card{position:relative;width:min(680px,100%);background:#f0f0e9;color:#20334d;border-radius:22px;padding:clamp(23px,4vw,42px);box-shadow:0 18px 0 #070e20;max-height:95vh;overflow-y:auto;animation:enter .2s ease both}.modal-card h2{margin:0 0 12px}.modal-card>p{color:#738397;font-size:14px}.modal-close{position:absolute;right:17px;top:15px;background:#dce4df;color:#3a5069;border-radius:9px;padding:10px 13px;font-weight:950}.site-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:25px}.site-choices button{text-align:left;background:#fff;border-radius:14px;padding:18px 15px;display:flex;flex-direction:column;gap:10px;color:#253b54;min-height:185px}.site-choices button:hover{background:#ffdd87}.site-choices strong{font-size:18px;letter-spacing:-.025em}.site-choices small{font-size:12px;font-weight:900}.site-choices span{font-size:12px;color:#718396;line-height:1.4}.site-choices b{font-size:13px;margin-top:auto}.modal-form{display:grid;gap:16px;margin-top:22px}.modal-form label{font-size:11px;letter-spacing:.1em;font-weight:950;display:grid;gap:8px}.modal-form label small{letter-spacing:0;font-weight:500;color:#75869b}.modal-form input,.modal-form select{min-width:0;width:100%;border:2px solid #ced9d5;border-radius:10px;background:#fff;color:#223954;padding:14px 15px;font-size:16px}.modal-actions{display:flex;gap:12px}.alt-action{background:#253b60;color:white;padding:15px;border-radius:11px;font-weight:900}.block{width:100%;margin-top:17px}.commit-rows{background:#fff;padding:16px;border-radius:12px;margin:17px 0}.commit-rows div{display:flex;justify-content:space-between;gap:15px;padding:10px 0;font-size:14px}.commit-rows div+div{border-top:1px solid #e0e5e5}.uncertainty{font-size:12px;color:#7a8b98!important}.toast{position:fixed;z-index:70;bottom:96px;left:50%;transform:translateX(-50%);background:#ffdf95;color:#27334c;padding:14px 20px;border-radius:10px;font-size:13px;font-weight:900;box-shadow:0 8px 0 #8a6737}.hidden-input{display:none}@keyframes bob{to{transform:translateY(-5px)}}@keyframes glow{50%{opacity:.4}}@keyframes truck{to{transform:translateX(35px)}}@keyframes resultRotate{to{transform:rotate(360deg)}}@keyframes enter{from{opacity:.1;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:950px){.topbar{height:76px;gap:15px}.hud{gap:16px}.hud-stat:nth-child(4){display:none}.action-zone{grid-template-columns:1fr}.advisor{max-width:500px}.build-nav{flex-direction:column;align-items:flex-start}.focus-tabs{width:100%;overflow-x:auto}.focus-tabs button{white-space:nowrap}.production-track{flex-wrap:wrap}.machine-tile{flex:1 1 41%;max-width:none}.flow-arrow{display:none}.role-grid{grid-template-columns:repeat(2,1fr)}.results-view{grid-template-columns:1fr}.result-art{padding:30px;min-height:300px}.result-sun{font-size:90px}.result-art h1{font-size:36px}.result-content{padding:35px}.result-footer{margin-bottom:20px}}@media(max-width:620px){.shell{padding-bottom:91px}.topbar{padding:0 14px;height:69px;gap:7px}.brand svg{width:28px;height:28px}.brand>span{font-size:18px}.brand small{font-size:7px;letter-spacing:.09em;margin-top:5px}.hud{justify-content:flex-end;gap:10px}.hud-stat{display:none}.hud-stat:first-child{display:flex}.hud-stat strong{font-size:15px}.hud-stat span{font-size:8px}.top-actions .utility:nth-child(2){display:none}.utility{width:34px;height:34px}.topbar-intro{display:none}.world-stage{height:365px;min-height:365px}.world-overlay{padding:20px;background:linear-gradient(90deg,#14244da8,transparent 110%)}.world-title h1{font-size:38px;max-width:305px}.world-title p{font-size:14px;max-width:260px}.chapter-label{font-size:10px}.site-patch{right:-6%;width:70%;height:41%;top:39%}.site-sign{right:15%;top:42%;font-size:18px;padding:15px}.empty-statement{font-size:7px}.factory-roof{left:14%;width:83%;top:35%;height:17%}.factory-roof>span:first-child{font-size:24px}.roof-window{display:none}.factory-wall{left:14%;top:50%;width:83%;height:27%}.station-graphic{border-width:2px}.station-symbol{font-size:24px}.station-graphic small{font-size:6px}.station-graphic b{font-size:9px}.yard{left:12%;top:80%;width:90%}.world-caption{font-size:8px;bottom:6px}.action-zone{padding:24px 19px;gap:23px}.focus-intro h2{font-size:30px}.focus-intro>p{font-size:13px;margin-bottom:17px}.advisor .avatar{transform:scale(.82);transform-origin:left center;margin-right:-10px}.advisor-copy{padding:13px}.advisor-copy p{font-size:12px}.home-footer{padding:16px 19px;gap:10px}.market-signal strong{font-size:12px}.run-secondary{white-space:nowrap;font-size:12px;padding:11px}.dock{bottom:9px;width:calc(100% - 26px);max-width:365px}.dock button{flex:1;padding:8px 3px;width:auto}.build-view,.records-view{padding:18px 13px 90px}.workspace{padding:17px;border-radius:15px;min-height:600px}.workspace-head{gap:10px}.workspace-head h2{font-size:28px}.workspace-head p{font-size:12px}.tiny-status,.quiet-action{font-size:10px;max-width:120px;text-align:center}.focus-tabs button{font-size:18px;padding:10px}.focus-tabs button span{font-size:11px}.machine-tile{padding:9px 7px;gap:5px;flex:1 1 43%}.tile-illustration{height:74px}.tile-illustration>span{font-size:48px}.machine-tag{font-size:12px}.machine-tile>strong{font-size:19px}.machine-tile>small{font-size:10px}.tile-action{padding:10px 6px;font-size:10px}.two-panels,.channel-grid,.role-grid,.strategy-grid{grid-template-columns:1fr}.product-showcase{padding:20px;gap:20px;align-items:start}.snack-pack{flex-basis:95px;height:155px;padding:8px;border-radius:9px}.snack-pack>span{font-size:12px}.snack-pack .sun-mark{font-size:50px}.snack-pack b{font-size:12px}.snack-pack small{font-size:5px}.product-overview h3{font-size:22px}.product-overview p{font-size:12px}.channel-tile{min-height:170px}.team-visual{gap:8px;padding:15px}.team-visual h3{font-size:18px}.team-visual p{font-size:11px}.headcount{font-size:31px}.role-tile{padding:15px}.treasury-hero,.records-summary{padding:15px;gap:14px;grid-template-columns:1fr 1fr}.treasury-hero strong{font-size:22px}.strategy-visual{gap:15px;padding:20px}.horizon-disc{width:80px;height:80px;font-size:65px}.strategy-visual h3{font-size:24px}.strategy-visual p{font-size:12px}.workspace-advisor{padding-bottom:22px}.floating-run{right:19px;bottom:79px;padding:13px 18px;font-size:12px}.records-head h2{font-size:34px}.records-summary strong{font-size:20px}.table-head,.table-row{grid-template-columns:.5fr repeat(4,1fr);gap:5px;padding:11px 7px;font-size:10px}.table-head{font-size:8px}.outcome-stats{gap:20px}.outcome-stats strong{font-size:24px}.result-footer{flex-wrap:wrap}.site-choices{grid-template-columns:1fr}.site-choices button{min-height:0}.modal-card{padding:25px 19px}.modal-actions{flex-direction:column}.finale-stats{grid-template-columns:1fr 1fr}.finale-view h1{font-size:40px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Portfolio and observed rival activity, Batch 1 */
.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:14px;margin:20px 0 30px}
.sku-card{background:#fff8ed;color:#232425;border-radius:22px;padding:20px;display:flex;align-items:center;gap:22px;min-width:0}
.sku-pack{flex:0 0 105px;min-height:165px;border-radius:17px 17px 24px 24px;background:#eabe65;color:#372b1d;display:flex;flex-direction:column;justify-content:space-between;padding:12px 10px;text-align:center;transform:rotate(-3deg);border-top:8px solid #f1d596;box-shadow:inset 0 -12px rgba(0,0,0,.05)}
.sku-pack.variant-1{background:#add0b4;border-top-color:#d5e9d1}.sku-pack.variant-3{background:#d3b4dc;border-top-color:#e6d6ed}
.sku-pack span{font-size:12px;font-weight:900;letter-spacing:.12em}.sku-pack b{font-size:17px;line-height:1.05;overflow-wrap:anywhere}.sku-pack small{font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.sku-details{flex:1;min-width:0}.sku-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:10px;font-weight:800;letter-spacing:.09em}.sku-heading small{font-size:9px;color:#697069;letter-spacing:0;text-align:right}.sku-details h3{font-size:22px;margin:9px 0}.sku-details p{font-size:12px;line-height:1.5;color:#67706a;margin:0 0 24px}.sku-details .input-caption{display:flex;justify-content:space-between;gap:10px;font-size:11px}.sku-details input{width:100%;accent-color:#bd8844}
.portfolio-empty{min-height:210px;display:flex;align-items:center;gap:20px;background:#f5eddb;border-radius:22px;padding:25px;color:#28322c}.portfolio-empty .snack-pack{flex-shrink:0;transform:scale(.75);margin:-28px}.portfolio-empty p{max-width:230px}
.market-subtitle{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin:22px 0 16px}.market-subtitle h3{font-size:21px;margin:0}.market-subtitle p{font-size:12px;opacity:.7;margin:0}
.competition-section{margin-top:32px}.rival-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.rival-chip{display:flex;align-items:center;gap:13px;padding:17px;background:#eae7da;color:#212927;border-radius:17px}.rival-chip .rival-emblem{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border-radius:12px;background:#232927;color:#f2d68c;font-weight:900}.rival-chip>div{display:flex;flex-direction:column;gap:4px;min-width:0}.rival-chip strong{font-size:13px}.rival-chip small{font-size:11px;color:#777b70}.rival-chip b{font-size:16px;margin-left:auto;white-space:nowrap}
.market-news{margin:16px 0;display:flex;flex-wrap:wrap;gap:10px;align-items:center;color:inherit}.market-news strong{font-size:10px;letter-spacing:.1em}.market-news span{font-size:12px;background:#ede8d9;color:#272727;border-radius:9px;padding:8px 10px}
.sku-schedule{margin:18px 0}.sku-schedule label{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px}.sku-schedule label strong{white-space:nowrap}.sku-schedule input{width:100%;margin-top:10px}
.sku-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-top:22px}.sku-results>div{padding:14px;border-radius:12px;background:#ede8d9;display:flex;flex-direction:column;gap:5px;color:#282a27;font-size:12px}.sku-results strong{font-size:15px}.sku-results b{font-size:14px}.result-rival-moves{font-size:12px;margin-top:10px;opacity:.8}
@media(max-width:850px){.rival-list{grid-template-columns:1fr}.market-subtitle{display:block}.market-subtitle p{margin-top:8px}.sku-card{padding:15px;gap:16px}}
@media(max-width:410px){.sku-pack{flex-basis:83px;min-height:145px;padding:8px 6px}.sku-pack b{font-size:14px}.sku-card{padding:12px;gap:12px}.sku-details h3{font-size:19px}.sku-heading{flex-wrap:wrap}.portfolio-grid{grid-template-columns:minmax(0,1fr)}.rival-chip{padding:13px}}
.partner-campus{background:#b6d0cf}.partner-building{position:absolute;top:33%;left:31%;height:46%;width:42%;min-width:270px;background:#f0d6a8;border:9px solid #4e5b54;border-radius:18px 18px 8px 8px;display:flex;flex-direction:column;align-items:center;justify-content:space-around;color:#233e40;box-shadow:22px 18px 0 #34494b;font-weight:950}.partner-building span{font-size:clamp(18px,2.8vw,39px)}.partner-building b{font-size:65px;line-height:.8;color:#aa8151}.partner-building small{font-size:11px;letter-spacing:.16em}
@media(max-width:620px){.partner-building{left:12%;top:38%;width:75%;height:39%;min-width:0}.partner-building b{font-size:48px}.partner-building small{font-size:8px}}
/* Batch 2: capacity clarity, capital requirements and working-capital operations */
.capacity-ribbon{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;background:#dce4df;color:#1c3249;border-radius:20px;margin:18px 0;padding:18px}
.capacity-ribbon>div{display:flex;flex-direction:column;gap:8px}.capacity-ribbon small{font-size:10px;font-weight:850;letter-spacing:.05em;color:#63757b}.capacity-ribbon strong{font-size:clamp(21px,2vw,29px);font-variant-numeric:tabular-nums}.capacity-ribbon strong span{font-size:11px;color:#526b76}
.target-editor{display:flex;align-items:center;gap:15px;margin:10px 0 14px}.target-editor input[type=range]{flex:1;min-width:0;accent-color:#e9aa42}.target-editor .number-target{width:104px;min-width:80px;border:0;border-radius:9px;background:#f0f2ee;color:#263853;font-size:14px;font-weight:850;padding:10px;text-align:right;font-variant-numeric:tabular-nums}
.ingredient-cost{display:flex;justify-content:space-between;gap:8px;margin-top:15px;font-size:12px;align-items:center;color:#e2e6f2}.ingredient-cost strong{white-space:nowrap}.match-supply{padding:11px 15px;border:none;background:#e4ba69;color:#1e3552;border-radius:10px;font-weight:850;cursor:pointer;margin-top:12px}
.funding-alert{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;background:#dde7de;border-radius:18px;color:#233c35;margin:17px 0}.funding-alert.caution{background:#f7e6c6}.funding-alert.critical{background:#f6d4c8}.funding-alert h3{font-size:20px;line-height:1.2;margin:7px 0}.funding-alert p{font-size:13px;line-height:1.6;margin:0;max-width:840px}.alert-eyebrow{font-size:10px;font-weight:950;letter-spacing:.09em}.funding-alert button{background:#233a47;color:white;border:0;border-radius:10px;padding:14px;white-space:nowrap;font-weight:900;cursor:pointer}
.supplier-selector{display:flex;flex-direction:column;gap:12px;margin:20px 0;color:#e8eaf1;font-size:11px;letter-spacing:.08em;font-weight:800}.supplier-selector select{padding:12px;border:0;border-radius:10px;font-size:14px;color:#263853;background:white;max-width:380px}
.finance-primer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.finance-primer>div{background:#e8e6df;border-radius:16px;padding:20px;color:#263348}.finance-primer small{display:block;font-size:10px;font-weight:850;letter-spacing:.05em;color:#64767d}.finance-primer strong{font-size:clamp(20px,2.5vw,31px);display:block;margin:8px 0}.finance-primer p{font-size:12px;line-height:1.4;margin:0}
.finance-small{font-size:12px!important;opacity:.8;line-height:1.6;margin-top:16px}.treasury-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}.treasury-actions>div{background:#e6eae4;color:#263349;border-radius:16px;padding:22px}.treasury-actions h3{font-size:20px;margin:0 0 8px}.treasury-actions p{font-size:12px;line-height:1.6}.inline-finance{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin-top:15px}.inline-finance label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:850}.inline-finance input{max-width:150px;background:white;border:0;border-radius:9px;padding:11px;color:#203449;font-weight:800}.inline-finance .tile-action{margin:0}
.finance-statement{max-width:640px;background:#e5eae6;border-radius:15px;padding:22px;color:#263349;margin-top:18px}.finance-statement h3{margin:0 0 12px}.finance-statement .balance-line{border-bottom:1px solid #c2cfce}
.funding-limits{display:flex;flex-direction:column;gap:8px;background:#eee9df;padding:15px;border-radius:10px;font-size:12px}.finance-choices{flex-wrap:wrap}.finance-choices button{flex:1;min-width:125px}
.commit-warning{padding:16px;background:#f5dfbf;color:#352a1c;border-radius:13px;margin-bottom:15px}.commit-warning strong{font-size:13px}.commit-warning p{font-size:12px;line-height:1.5}.commit-warning button{padding:10px;border:none;border-radius:8px;background:#233a47;color:white;cursor:pointer}
.cashflows{margin:35px 0}.cashflows h3{font-size:23px}.cashflows p{font-size:12px}.quarter-cashflow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.quarter-cashflow>div{background:#e8ebdf;color:#27384a;border-radius:10px;padding:14px}.quarter-cashflow small{display:block;font-size:10px;font-weight:850}.quarter-cashflow strong{display:block;font-size:19px;margin-top:8px}.outcome-alerts{font-size:12px;background:#f7dbb8;color:#553b29;border-radius:10px;padding:10px 16px;margin:12px 0}
@media(max-width:820px){.capacity-ribbon{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-primer{grid-template-columns:1fr 1fr}.treasury-actions{grid-template-columns:1fr}}
@media(max-width:530px){.capacity-ribbon{padding:12px;gap:12px}.capacity-ribbon strong{font-size:21px}.capacity-ribbon strong span{font-size:9px}.target-editor{gap:8px}.target-editor .number-target{width:95px;padding:9px;font-size:12px}.funding-alert{flex-direction:column;align-items:stretch;padding:16px}.funding-alert h3{font-size:17px}.funding-alert button{width:100%}.finance-primer{grid-template-columns:1fr}.treasury-actions>div{padding:16px}.quarter-cashflow{grid-template-columns:1fr 1fr}.quarter-cashflow strong{font-size:16px}}
.home-funding{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#f7e5c0;color:#453419;padding:15px 25px;font-weight:800;font-size:13px}.home-funding button{border:0;background:#273a4c;color:white;border-radius:9px;padding:10px 14px;font-size:12px;font-weight:850;cursor:pointer}@media(max-width:620px){.home-funding{flex-direction:column;align-items:stretch;padding:14px 20px}}
.ship-priority{display:flex;align-items:center;gap:20px;background:#e0e5df;color:#243c44;border-radius:15px;padding:16px 20px;margin:15px 0}.ship-priority label{font-weight:850;font-size:11px;letter-spacing:.05em;display:flex;flex-direction:column;gap:9px;white-space:nowrap}.ship-priority select{padding:10px;background:white;border:0;border-radius:8px;font-size:13px;color:#233a49}.ship-priority p{font-size:12px;line-height:1.5;max-width:500px;margin:0}@media(max-width:620px){.ship-priority{flex-direction:column;align-items:stretch}.ship-priority label{white-space:normal}}
@media(max-width:620px){.modal-card:has(.commit-rows){max-height:calc(100dvh - 22px);padding:20px 16px}.commit-rows div{padding:6px 0;font-size:12px}.commit-warning{padding:12px;margin-bottom:10px}.commit-warning p{margin:8px 0}.modal-card:has(.commit-rows) .primary.block{position:sticky;bottom:-10px;z-index:1;box-shadow:0 -8px 0 #f0f0e9}}
/* EMPERIO v0.4 — game-first introduction and corporate-development dossier */
.intro-page{min-height:calc(100vh - 88px);display:grid;grid-template-columns:minmax(440px,43%) minmax(0,57%);overflow:hidden;background:#101b38}
.intro-copy{padding:clamp(42px,5vw,100px) clamp(30px,5vw,96px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:0;z-index:2;position:relative}
.intro-issue{color:#fcce64;font-size:11px;letter-spacing:.15em;font-weight:900}
.intro-copy h1{font-size:clamp(50px,5.1vw,91px);line-height:1.02;letter-spacing:-.075em;margin:23px 0 22px;max-width:760px}
.intro-copy h1 em{color:#f6cf72;font-style:normal}
.intro-copy>p{font-size:clamp(15px,1.2vw,19px);line-height:1.65;color:#b5c8dd;max-width:520px;margin-bottom:30px}
.intro-buttons{display:flex;flex-wrap:wrap;gap:13px;align-items:center}
.intro-play{padding:19px 23px;font-size:15px}
.intro-guided{border-radius:12px;background:#314666;color:#f7f6ef;font-weight:850;padding:18px 20px;min-height:51px}
.intro-guided:hover{background:#40587e}
.intro-footnote{font-size:11px;color:#8299b8;line-height:1.6;margin:21px 0 33px}
.intro-flow{width:100%;border-radius:19px;background:#223250;padding:22px 26px;max-width:520px}
.intro-flow-label{font-size:10px;letter-spacing:.16em;color:#efce89;font-weight:900}
.intro-stepnav{display:flex;gap:7px;margin:17px 0}
.intro-dot{height:5px;flex:1;max-width:65px;border-radius:5px;background:#51627d}
.intro-dot.active{background:#ffcc67}
.intro-flow strong{font-size:20px;letter-spacing:-.03em}
.intro-flow p{margin:9px 0 17px;color:#b9cbe0;font-size:13px;min-height:53px;line-height:1.55;max-width:410px}
.intro-demo{background:#ffe0a0;color:#202e45;font-weight:950;padding:13px 17px;border-radius:10px;display:flex;justify-content:space-between;gap:32px;align-items:center}
.intro-demo:hover{background:white}
.intro-art{position:relative;min-height:690px;background:#aed3d3;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end}
.intro-sky{position:absolute;inset:0 0 35%;background:#add4d6}
.intro-sky .sun{position:absolute;right:15%;top:13%;width:105px;height:105px;border-radius:50%;background:#f5d78e}
.intro-cloud{position:absolute;top:18%;left:13%;width:150px;height:28px;border-radius:40px;background:#e9ede6;opacity:.8;animation:introDrift 9s ease-in-out infinite alternate}
.intro-cloud.cloud-b{left:57%;top:27%;width:100px;opacity:.55;animation-delay:2.5s}
.intro-illustration{position:absolute;inset:0;isolation:isolate}
.intro-ground{position:absolute;bottom:-9%;width:120%;left:-10%;height:49%;background:#86b9a4;transform:skewY(-6deg);z-index:0}
.intro-building{position:absolute;left:11%;top:28%;width:60%;height:39%;background:#dfdacf;border:9px solid #55778c;border-radius:8px;box-shadow:24px 26px 0 #719a9e;z-index:3;transform:skewY(-3deg);transition:transform .5s,left .5s,opacity .5s}
.intro-building-top{position:absolute;left:-7%;width:114%;height:32%;top:-27%;border-radius:9px 10px 0 0;background:#2c4663;color:#f7d786;padding:16px 20px 10px;display:flex;align-items:center;gap:9px;font-size:clamp(17px,2.8vw,36px);font-weight:950;letter-spacing:.08em}
.intro-building-top span{font-size:42px;color:#f9bf58;line-height:1}
.intro-building-top small{font-size:8px;max-width:45px;line-height:1.3;letter-spacing:.05em}
.intro-stations{height:100%;padding:25px 16px 14px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.intro-station{display:flex;flex-direction:column;justify-content:center;align-items:center;background:#506f81;border-radius:7px;gap:8px;color:#f3f1dd;min-width:0}
.intro-station span{font-size:clamp(23px,4vw,61px);line-height:1}
.intro-station small{font-size:9px;font-weight:950;letter-spacing:.05em}
.intro-van{position:absolute;z-index:5;left:44%;bottom:19%;width:238px;height:87px;display:flex;align-items:end;transition:transform .55s ease;filter:drop-shadow(7px 10px 0 rgba(46,72,67,.25))}
.van-body{height:73px;width:165px;background:#f6c45f;color:#2a4661;border-radius:8px 8px 2px 4px;display:flex;justify-content:space-around;align-items:center;font-size:19px;letter-spacing:.05em}
.van-body i{font-size:29px;font-style:normal}
.van-cab{height:60px;width:76px;background:#ecaa48;border-radius:3px 14px 5px 0;border:12px solid #ecaa48;border-top-color:#5f899b}
.wheel{position:absolute;bottom:-9px;width:27px;height:27px;border-radius:50%;background:#233c54;border:6px solid #8399a1}
.wheel.left{left:28px}.wheel.right{right:23px}
.intro-store{position:absolute;right:4%;bottom:34%;width:150px;height:148px;background:#faf0d9;border:8px solid #598b86;border-bottom:0;z-index:2;display:flex;flex-direction:column;text-align:center;justify-content:flex-start;padding-top:1px;transform:skewY(3deg);transition:opacity .4s,transform .5s}
.store-awning{height:38px;background:#f6b45b;margin:0 -8px 14px;color:#bc5f49;font-size:22px;letter-spacing:.13em;overflow:hidden}
.intro-store strong{color:#42617b;font-size:13px;letter-spacing:.06em}
.store-door{background:#84b4b7;width:40%;height:54px;margin:8px auto 0}
.intro-snack{position:absolute;z-index:6;left:61%;top:31%;width:103px;height:153px;border-radius:13px 13px 20px 20px;background:#edbb63;color:#213b59;text-align:center;transform:rotate(11deg) scale(0);transition:transform .5s cubic-bezier(.2,1.2,.3,1);border-top:14px solid #d98e52;box-shadow:8px 11px 0 #d3944d;display:flex;flex-direction:column;justify-content:center;gap:12px}
.intro-snack b{font-size:55px;line-height:.7}.intro-snack strong{font-size:13px;line-height:1.1}
.intro-cash{position:absolute;z-index:7;bottom:54%;right:14%;border-radius:17px;background:#15375b;color:#ffdc87;padding:13px 19px;font-size:26px;font-weight:950;opacity:0;transform:translateY(12px);transition:opacity .5s,transform .5s}
.intro-cash small{font-size:8px;letter-spacing:.1em;display:block;color:#b9dfcc;margin-top:5px}
.intro-caption{position:absolute;bottom:12%;left:8%;z-index:6;background:#243954;color:#fbe0a5;border-radius:8px;font-size:10px;letter-spacing:.15em;padding:12px 15px;font-weight:900}
.intro-art-footer{display:flex;justify-content:space-between;align-items:center;gap:9px;z-index:8;position:relative;color:#35576a;font-size:10px;letter-spacing:.12em;font-weight:900;margin:0 24px 18px}
.phase-0 .intro-building{opacity:.72;transform:skewY(-3deg) scale(.86)}.phase-0 .intro-van{transform:translateX(-45px) scale(.84)}.phase-0 .intro-snack{opacity:0}
.phase-1 .intro-building{transform:skewY(-3deg) scale(1.03)}.phase-1 .intro-station{animation:introStation 1.2s ease-in-out infinite alternate}.phase-1 .intro-van{transform:translateX(-12px)}.phase-1 .intro-snack{transform:rotate(-9deg) scale(1)}
.phase-2 .intro-snack{transform:rotate(9deg) scale(1)}.phase-2 .intro-van{transform:translateX(110px)}
.phase-3 .intro-snack{transform:rotate(-7deg) scale(1.1)}.phase-3 .intro-cash{opacity:1;transform:translateY(0)}.phase-3 .intro-van{transform:translateX(100px)}
@keyframes introStation{to{background:#327b83}}@keyframes introDrift{to{transform:translateX(28px)}}
.mna-section{margin-top:35px;background:#e6ece6;border-radius:20px;padding:clamp(23px,3.4vw,42px);color:#243852}
.mna-heading{display:flex;align-items:start;justify-content:space-between;gap:18px}
.mna-heading h3{font-size:clamp(25px,2.6vw,34px);margin:11px 0}
.mna-heading p{color:#62758a;max-width:620px;font-size:14px}
.mna-unlock{font-weight:950;letter-spacing:.07em;background:#264260;color:#eee5d5;border-radius:9px;padding:12px;font-size:10px;white-space:nowrap}
.mna-targets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:20px}
.mna-target{background:#fff;border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:15px;min-width:0}
.mna-target-top{display:flex;gap:12px;align-items:center}
.target-mark{width:51px;height:51px;background:#f4cf83;color:#263c55;display:grid;place-items:center;font-size:25px;font-weight:950;border-radius:15px;flex:0 0 auto}
.mna-target-top h4{margin:0 0 4px;font-size:19px}
.mna-target-top span{font-size:12px;color:#677b8e}
.mna-numbers{display:grid;gap:7px}.mna-numbers span{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:#6a7b89;font-weight:900;letter-spacing:.055em}.mna-numbers b{color:#273c53;font-size:13px;letter-spacing:0}
.mna-target p{font-size:12px;color:#67798d;margin:0;flex:1}.mna-target .tile-action{margin-top:auto}
.mna-locked{background:#d3ddd5;border-radius:13px;padding:22px;margin-top:22px;font-size:13px;color:#586b7e}
.mna-deals{margin-top:23px}.mna-deals h4{font-size:19px;margin:0 0 13px}.mna-deal{padding:15px 0;display:flex;justify-content:space-between;gap:15px;border-top:2px solid #c7d7d2}.mna-deal div{display:grid;gap:4px}.mna-deal span{font-size:12px;color:#677e84}.mna-deal b{white-space:nowrap;font-size:13px}
.deal-heading{display:flex;gap:14px;align-items:center;margin:2px 0 20px}.deal-heading h2{font-size:32px;margin:2px 0}.deal-heading p{margin:0;color:#687c8a;font-size:12px}.deal-heading>div>span{font-size:10px;font-weight:950;letter-spacing:.1em;color:#8d9b9d}
.deal-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.deal-facts>div{background:white;border-radius:12px;padding:15px;display:flex;flex-direction:column;gap:6px}.deal-facts small{font-size:10px;color:#788895;font-weight:850;letter-spacing:.06em}.deal-facts strong{font-size:20px}
.deal-diligence,.deal-offer{padding:18px 0;border-top:3px solid #d4ddda;margin-top:20px}.deal-diligence h3,.deal-offer h3{margin-bottom:9px}.deal-diligence p,.deal-offer p,.deal-disclaimer{color:#677e8e;font-size:13px;line-height:1.6}.deal-diligence .tile-action{padding:12px 16px}
.deal-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.deal-fields label{font-size:12px;font-weight:900;display:grid;gap:7px}.deal-fields select{padding:12px;border:2px solid #d1d9d6;background:#fff;border-radius:8px;max-width:100%;min-width:0;color:#253952;font-size:12px}
.deal-disclaimer{font-size:11px!important;margin:16px 0 0!important}.result-deal-news{background:#dce6df;padding:14px 18px;border-radius:11px}.result-deal-news p{font-weight:750;font-size:13px;margin:5px 0;color:#324e57}
@media(max-width:1100px){.intro-page{grid-template-columns:1fr 1fr}.intro-copy{padding:38px 26px}.intro-copy h1{font-size:clamp(48px,5vw,75px)}.intro-building{left:8%;width:67%}.intro-van{left:32%}.intro-store{right:2%;width:120px}.intro-snack{left:60%}}
@media(max-width:800px){.intro-page{grid-template-columns:1fr}.intro-copy{padding:35px 23px 27px}.intro-copy h1{font-size:clamp(46px,9vw,68px);margin:15px 0}.intro-copy>p{margin-bottom:20px}.intro-footnote{margin:16px 0 24px}.intro-flow{max-width:none}.intro-art{min-height:370px}.intro-building{top:36%;width:50%;height:34%;left:14%}.intro-building-top{height:44%;top:-35%;font-size:23px;padding:8px}.intro-building-top span{font-size:28px}.intro-stations{padding:15px 8px 7px;gap:5px}.intro-station span{font-size:27px}.intro-station small{font-size:7px}.intro-store{bottom:23%;right:7%;height:107px;width:105px}.intro-van{bottom:15%;left:47%;transform:scale(.75);transform-origin:bottom left}.phase-2 .intro-van,.phase-3 .intro-van{transform:translateX(65px) scale(.75)}.intro-snack{top:35%;left:66%;transform-origin:top center}.phase-1 .intro-snack,.phase-2 .intro-snack,.phase-3 .intro-snack{transform:rotate(8deg) scale(.75)}.intro-cash{bottom:60%;right:5%;font-size:17px}.mna-targets{grid-template-columns:1fr}.mna-heading{flex-direction:column}.mna-unlock{align-self:start}}
@media(max-width:480px){.intro-copy{padding:26px 19px}.intro-copy h1{font-size:47px}.intro-copy>p{font-size:14px;line-height:1.5}.intro-buttons{gap:8px}.intro-buttons button{font-size:12px;padding:14px}.intro-footnote{font-size:10px}.intro-flow{padding:15px 18px}.intro-flow p{min-height:0}.intro-art{min-height:305px}.intro-building{top:34%;left:12%;width:57%;height:34%;border-width:5px;box-shadow:12px 13px 0 #719a9e}.intro-building-top{font-size:18px}.intro-building-top small{font-size:6px}.intro-station{gap:4px}.intro-station span{font-size:20px}.intro-store{right:3%;width:72px;height:85px}.store-awning{font-size:13px;height:25px;margin-bottom:7px}.intro-store strong{font-size:9px}.store-door{height:34px}.intro-van{left:45%;transform:scale(.54)}.phase-2 .intro-van,.phase-3 .intro-van{transform:translateX(48px) scale(.54)}.intro-snack{left:64%;width:73px;height:100px}.intro-snack b{font-size:33px}.intro-snack strong{font-size:10px}.intro-caption{bottom:6%;font-size:8px}.intro-art-footer{font-size:8px;margin:0 9px 12px}.deal-facts{grid-template-columns:1fr 1fr}.deal-facts>div{padding:10px}.deal-facts strong{font-size:16px}.deal-fields{grid-template-columns:1fr}.mna-section{padding:15px}.mna-heading h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){.intro-cloud,.phase-1 .intro-station{animation:none!important}.intro-van,.intro-building,.intro-snack,.intro-cash{transition:none!important}}
/* Batch 4: one expandable, action-led recovery centre; no extra top-level destination. */
.recovery-hub{margin-top:26px;border-radius:22px;background:#e9ede5;color:#24364d;overflow:hidden}
.recovery-hub>summary{list-style:none;padding:23px clamp(18px,3vw,36px);display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;background:#d9e2d9}
.recovery-hub>summary::-webkit-details-marker{display:none}
.recovery-hub>summary>span{display:grid;gap:5px}
.recovery-hub>summary strong{font-size:clamp(23px,2.5vw,31px);letter-spacing:-.04em}
.recovery-hub>summary small{font-size:12px;color:#566b75}
.recovery-status{display:flex;align-items:center;gap:12px;white-space:nowrap;border-radius:11px;padding:10px 14px;background:#e4eddf;color:#285a50;font-size:11px;font-weight:900;letter-spacing:.03em}
.recovery-status.watch{background:#f3e1b7;color:#705021}.recovery-status.workout{background:#f3c9b5;color:#8f3529}.recovery-status.administration{background:#293f5b;color:#fff}
.recovery-hub[open] .recovery-status span{transform:rotate(180deg)}
.recovery-insight{padding:20px clamp(18px,3vw,36px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;background:#e5ece4}
.recovery-insight>div{display:grid;gap:7px}.recovery-insight span{font-size:10px;letter-spacing:.065em;color:#667c81;font-weight:900}.recovery-insight strong{font-variant-numeric:tabular-nums;font-size:clamp(19px,2vw,30px)}
.recovery-message{display:flex;align-items:center;gap:15px;margin:20px clamp(18px,3vw,36px) 0;padding:12px 18px;background:#f5f4e8;border-radius:15px}.recovery-message p{margin:0;font-size:13px;line-height:1.6}.recovery-advisor{flex:0 0 50px;transform:scale(.65);height:55px;display:grid;place-items:center}
.recovery-cards{padding:20px clamp(18px,3vw,36px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.recovery-card,.recovery-divest-tile{background:white;border-radius:16px;padding:22px;min-width:0}
.recovery-card{display:flex;flex-direction:column;align-items:stretch;gap:11px}.recovery-card h3,.recovery-divest-tile h4{font-size:21px;margin:0}.recovery-card p,.recovery-divest-tile p,.recovery-subsidiaries p,.recovery-control p{color:#687b84;font-size:12px;line-height:1.65;margin:0}
.recovery-card-icon{font-size:28px;color:#d3954d}.recovery-card .tile-action{width:100%;margin:0;white-space:normal;line-height:1.4}.recovery-card .tile-action:first-of-type{margin-top:auto}
.recovery-card .tile-action.secondary,.recovery-divest-tile .tile-action.secondary{background:#e8ece8;color:#31495a}.recovery-card small{color:#637585;font-size:11px;line-height:1.5}.recovery-terms{display:grid;grid-template-columns:1fr auto;gap:8px;font-size:11px}.recovery-terms span{color:#718189;font-weight:800}.recovery-terms b{font-variant-numeric:tabular-nums}
.recovery-section-heading{margin:6px clamp(18px,3vw,36px) 10px;font-size:24px}
.recovery-divest-grid{padding:10px clamp(18px,3vw,36px) 26px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.recovery-divest-tile{display:flex;flex-direction:column;gap:14px}.recovery-divest-tile select,.recovery-subsidiaries select{min-height:44px;width:100%;min-width:0;background:#e9ede9;color:#293d53;border:0;border-radius:10px;padding:10px;font-size:12px}
.recovery-divest-tile .tile-action{margin-top:auto}.recovery-input-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.recovery-input-row input{width:92px;min-height:43px;background:#e9ede9;color:#293d53;border-radius:9px;border:0;padding:10px;font-size:13px}
.recovery-input-row .tile-action{flex:1;min-width:125px;margin:0}
.recovery-subsidiaries,.recovery-control,.recovery-timeline{margin:0 clamp(18px,3vw,36px) 23px;background:#fff;padding:22px;border-radius:16px}
.recovery-subsidiaries h3,.recovery-control h3,.recovery-timeline h3{margin:0 0 8px;font-size:21px}.recovery-subsidiaries .recovery-input-row{margin-top:18px}.recovery-subsidiaries select{flex:2}.recovery-control .tile-action{margin-top:14px}.recovery-timeline p{padding:12px 0;margin:0;border-bottom:1px solid #e4ebe7;font-size:12px;line-height:1.6}.recovery-timeline b{margin-right:12px;color:#2b7e7b}
.records-recovery{background:#e9ede5;color:#283b52;padding:clamp(20px,3vw,36px);margin:22px 0;border-radius:17px}.records-recovery h3{margin:0 0 8px}.records-recovery>p{font-size:13px;color:#617683}.recovery-record{display:grid;grid-template-columns:55px 1fr;gap:10px;padding:12px 0;border-bottom:1px solid #c4d2ce;font-size:12px}.recovery-record strong{color:#337c77}
@media(max-width:960px){.recovery-cards,.recovery-divest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.recovery-insight{grid-template-columns:repeat(2,minmax(0,1fr))}.recovery-cards,.recovery-divest-grid{grid-template-columns:1fr}.recovery-hub>summary{align-items:flex-start;flex-direction:column}.recovery-card{gap:12px}.recovery-divest-tile{padding:18px}}
.finale-governance{max-width:680px;margin:24px auto 12px;color:#d7e1f2;font-size:14px;line-height:1.7;text-align:center}

/* Economic signal: public information only, no exposed outcome projections. */
.economic-pulse{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:center;background:#e3e9e3;border-radius:22px;padding:22px 26px;margin:0 0 22px;color:#223551}
.economic-pulse>div{display:flex;flex-direction:column;gap:8px;min-width:0}
.economic-pulse span,.economic-outcome span{font-size:11px;font-weight:800;letter-spacing:.08em;color:#627688}
.economic-pulse strong{font-size:18px;letter-spacing:-.025em}
.economic-pulse p{grid-column:1/-1;margin:0;font-size:13px;color:#455b69;line-height:1.5}
.economic-outcome{display:flex;align-items:center;flex-wrap:wrap;gap:9px 14px;margin:22px 0 0;padding:17px 19px;background:#e3e9e3;border-radius:18px;color:#223551}
.economic-outcome strong{font-size:14px}.economic-outcome small{margin-left:auto;color:#526c7e}
@media(max-width:700px){.economic-pulse{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;padding:18px}.economic-pulse strong{font-size:16px}.economic-outcome small{margin-left:0;width:100%}}
/* v0.7: staffing decisions live beside production, procurement and sales. */
.crew-section,.department-team{color:#27374a;background:#e7ece5;border-radius:20px;padding:clamp(18px,2.2vw,30px);margin:19px 0 24px}
.crew-section{background:#f7f3e8}
.crew-intro,.department-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.crew-intro h3,.department-heading h3{font-size:clamp(21px,2.1vw,29px);margin:6px 0 9px;letter-spacing:-.04em}
.crew-intro p,.department-heading p{font-size:13px;line-height:1.55;color:#56677a;max-width:720px;margin:0 0 15px}
.crew-intro>.crew-target{background:#233a58;color:#fff;min-width:204px;padding:15px 18px;border-radius:13px;flex:0 0 auto}
.crew-target small{display:block;font-size:10px;color:#bdd2de;font-weight:850;line-height:1.5}
.crew-target strong{display:block;font-size:28px;letter-spacing:-.05em;white-space:nowrap;margin:5px 0}
.crew-target strong span{font-size:10px;letter-spacing:0}
.crew-status{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;border-radius:12px;padding:13px 16px;margin-bottom:15px;background:#d5eee0;color:#284638;font-size:12px}
.crew-status.need-team{background:#f6dfbe;color:#6e4a24}
.crew-status span{font-size:10px;letter-spacing:.07em;font-weight:900}
.crew-status b{font-size:12px;flex:1}
.staff-match{background:#253b54;color:#fff;font-weight:850;font-size:12px;border-radius:9px;padding:11px 16px}
.staff-match:hover{background:#344f6e}
.inline-workforce-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.workforce-role{display:flex;align-items:center;gap:13px;background:#fff;border-radius:14px;padding:18px 16px;min-width:0}
.workforce-role-icon{width:43px;height:43px;background:#e0e8e4;color:#385675;border-radius:12px;flex:0 0 43px;display:grid;place-items:center;font-size:24px}
.workforce-role-info{min-width:0;flex:1}.workforce-role-info>strong{font-size:16px;letter-spacing:-.02em}.workforce-role-info p{font-size:12px;line-height:1.4;margin:5px 0;color:#556879}
.workforce-effect{display:block;color:#23716a;font-size:12px;font-weight:850;line-height:1.4;margin:7px 0 4px}.workforce-role-info>small{display:block;color:#738496;font-size:10px;line-height:1.6}
.workforce-stepper{display:flex;align-items:center;flex:0 0 auto;gap:6px;background:#e8edf0;border-radius:13px;padding:5px}
.workforce-stepper button{background:#fff;color:#203b56;border-radius:9px;font-size:21px;font-weight:700;min-width:30px;height:34px;display:grid;place-items:center}
.workforce-stepper button:hover:not(:disabled){background:#ffce72}
.workforce-stepper output{font-size:18px;font-weight:900;color:#203b56;min-width:24px;text-align:center}
.workforce-stepper output small{display:block;font-size:9px;color:#567b8d}
.crew-cost-note{font-size:12px;color:#637588;line-height:1.55;margin:14px 0 0}
.department-team{background:#e7ebe3}.department-heading{display:block}.department-team .workforce-role{margin-top:10px}
.supply-team{background:#dae8e2}.management-team{background:#e5e7eb}
@media(max-width:900px){.inline-workforce-grid{grid-template-columns:1fr}.crew-intro{flex-wrap:wrap}.crew-intro>.crew-target{width:100%;min-width:0;flex:1}.workforce-role{padding:15px}}
@media(max-width:500px){.crew-section,.department-team{padding:16px;margin:16px 0}.workforce-role{flex-wrap:wrap;align-items:flex-start}.workforce-role-info{min-width:180px}.workforce-role-icon{width:34px;height:34px;flex-basis:34px;font-size:18px}.workforce-stepper{margin-left:auto}.crew-status{align-items:flex-start;flex-direction:column}.staff-match{width:100%}.crew-target strong{font-size:24px}}
/* EMPERIO v0.8 — Living World. State-driven illustration, not a cosmetic overlay. */
.living-world{position:relative;background:#10253b;color:#eff7ec;border-radius:19px;overflow:hidden;border:3px solid #3e6171;margin:16px 0 25px;isolation:isolate}
.living-world-topline{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 19px;background:#182c43;color:#b5d6d3;font-size:10px;letter-spacing:.12em;font-weight:900}
.live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#a7e5b9;box-shadow:0 0 0 4px #a7e5b91e;margin-right:8px}
.living-canvas{display:block;width:100%;height:auto;max-width:100%;cursor:pointer;background:#10243b;touch-action:pan-y;user-select:none}
.world-station-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:9px;background:#182c43}
.world-station-link{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;background:#283f53;border-radius:8px;color:#e6f3e8;font-size:12px;font-weight:850;padding:10px 7px;transition:background .16s,transform .16s}
.world-station-link b{font-size:10px;font-weight:750;color:#9ecfc1}
.world-station-link:hover,.world-station-link:focus-visible{background:#456a72;transform:translateY(-1px)}
.world-stage:has(.living-home){height:auto;min-height:unset;background:#10253b}
.world-stage .living-home{margin:0;border:0;border-radius:0}
.world-stage .living-home .living-world-topline{padding-left:clamp(20px,5vw,90px)}
.world-stage .living-home .living-canvas{cursor:pointer}
.world-stage:has(.living-home) .world-overlay{justify-content:flex-end;bottom:53px;padding-bottom:28px;background:linear-gradient(0deg,#0c1e35a8,transparent 45%);pointer-events:none}
.world-stage:has(.living-home) .world-title{max-width:670px}
.world-stage:has(.living-home) .world-title h1{font-size:clamp(26px,3.4vw,46px);text-shadow:0 2px 6px #0a1828aa}
.world-stage:has(.living-home) .world-title p{font-size:14px;text-shadow:0 1px 4px #0a1828aa}
.world-stage:has(.living-home) .chapter-label{position:absolute;right:35px;top:12px;color:#d6e6e4}
.machine-tile.selected{outline:4px solid #ffcc59;outline-offset:3px}
.cinema-page{max-width:1400px;margin:0 auto;padding:clamp(18px,3vw,45px) clamp(14px,4vw,58px) 90px;color:#f0f4ed}
.cinema-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 24px}
.cinema-eyebrow{color:#a6d8c3;letter-spacing:.16em;font-size:11px;font-weight:900}
.cinema-header h1{font-size:clamp(32px,4.3vw,59px);margin:10px 0 8px}
.cinema-header p{font-size:14px;color:#adc4d1;margin:0}
.cinema-controls{display:flex;gap:10px;flex-shrink:0}
.cinema-controls button,.cinema-foot button{border-radius:11px;padding:13px 17px;min-height:45px;font-weight:900;font-size:12px}
.cinema-secondary{color:#e9f4ef;background:#304660}
.cinema-skip,.cinema-foot button{color:#15263b;background:#ffcc65}
.cinema-world{background:#183047;border:3px solid #4d717a;border-radius:21px;overflow:hidden;box-shadow:0 18px 0 #081626}
.cinema-world .living-canvas{cursor:default}
.cinema-overlay{background:#172d42;padding:17px clamp(16px,3vw,32px) 20px;display:grid;grid-template-columns:160px 1fr 130px;gap:20px;align-items:center;min-height:140px}
.cinema-counter{font-size:11px;font-weight:850;color:#a3cbbf;letter-spacing:.11em}
.cinema-counter b{font-size:23px;color:#ffce6f;display:inline-block;margin:0 4px}
.cinema-event h2{font-size:clamp(22px,2.8vw,32px);margin:0 0 7px;color:#ffebc7}
.cinema-event p{margin:0;font-size:14px;color:#c4d5d7;line-height:1.5;max-width:660px}
.cinema-progress{display:flex;align-items:center;justify-content:center;gap:7px}
.cinema-progress span{width:14px;height:14px;background:#547080;border-radius:100%;transition:background .15s,scale .15s}
.cinema-progress span.current{background:#ffcf6a;scale:1.22}
.cinema-foot{display:flex;justify-content:space-between;align-items:center;gap:17px;margin:26px 2px 0}
.cinema-foot span{font-size:12px;color:#9db8c8}
@media(max-width:850px){.cinema-header{align-items:flex-start;flex-direction:column}.cinema-controls{width:100%}.cinema-overlay{grid-template-columns:1fr 1fr}.cinema-event{grid-column:1/-1;grid-row:1}.cinema-counter{grid-column:1}.cinema-progress{grid-column:2;justify-content:flex-end}}
@media(max-width:620px){.living-world{border-radius:14px;margin:11px 0 15px;border-width:2px}.living-world-topline{font-size:8px;padding:10px;gap:10px;letter-spacing:.04em}.world-station-links{gap:3px;padding:6px}.world-station-link{font-size:10px;padding:7px 2px;gap:2px;flex-direction:column}.world-station-link b{font-size:8px}.world-stage:has(.living-home){height:auto;min-height:0}.world-stage:has(.living-home) .world-overlay{position:relative;bottom:auto;inset:auto;background:#162c45;padding:14px 20px 16px;min-height:0}.world-stage:has(.living-home) .chapter-label{position:static;margin-bottom:8px}.world-stage:has(.living-home) .world-title h1{font-size:29px;max-width:360px;margin-bottom:7px}.world-stage:has(.living-home) .world-title p{font-size:12px;max-width:330px}.cinema-page{padding:20px 10px 90px}.cinema-header h1{font-size:33px}.cinema-header p{font-size:12px}.cinema-header{gap:15px}.cinema-controls button{flex:1;font-size:10px;padding:11px 6px}.cinema-world{border-radius:14px;border-width:2px;box-shadow:0 9px 0 #081626}.cinema-overlay{padding:16px;gap:13px}.cinema-counter{font-size:10px}.cinema-event h2{font-size:25px}.cinema-event p{font-size:12px}.cinema-foot{flex-direction:column;align-items:stretch;margin-top:18px}.cinema-foot span{font-size:10px}.cinema-foot button{width:100%}}
@media(prefers-reduced-motion:reduce){.cinema-progress span,.world-station-link{transition:none!important}}
/* EMPERIO v0.9 — Authored character rigs and richly illustrated industrial environment. */
.upgraded-advisor{display:flex;gap:16px;align-items:center;min-height:138px;isolation:isolate}
.upgraded-advisor .portrait-frame{flex:0 0 102px;width:102px;height:132px;display:flex;align-items:center;justify-content:center;background:#1a3b51;border-radius:22px 22px 15px 15px;position:relative;overflow:hidden;border:2px solid #537786}
.portrait-frame:after{content:"";position:absolute;bottom:9px;left:18px;right:18px;height:5px;border-radius:50%;background:rgba(3,19,30,.17);pointer-events:none}
.portrait-frame.mood-concerned{background:#483e4b;border-color:#c48876}
.portrait-frame.mood-pleased,.portrait-frame.mood-celebrate{background:#1d4a54;border-color:#65a89b}
.adviser-portrait{width:96px;height:121px;max-width:100%;display:block;object-fit:contain}
.upgraded-advisor .advisor-copy{flex:1;min-width:0}
.upgraded-advisor .advisor-copy>span{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 11px}
.upgraded-advisor .advisor-copy>span>small.advisor-pulse{font-size:9px;letter-spacing:.07em;background:#e6eee9;color:#326b69;padding:4px 7px;border-radius:5px;white-space:nowrap}
.portrait-frame.mood-concerned+.advisor-copy .advisor-pulse{background:#f1e0d5;color:#8b5348}
.upgraded-advisor .advisor-copy p{font-size:clamp(12px,1.05vw,14px);line-height:1.55}
.living-world-topline .living-tools{display:flex;align-items:center;justify-content:flex-end;gap:13px}
.motion-button{font-size:10px;line-height:1.2;letter-spacing:.02em;color:#f0e5c5;background:#395769;border:1px solid #668696;padding:9px 11px;border-radius:8px;font-weight:850;white-space:nowrap;min-height:35px}
.motion-button:hover,.motion-button:focus-visible{background:#506e7f;outline-offset:3px}
.world-factline{background:#122a3e;display:flex;justify-content:center;flex-wrap:wrap;gap:8px 25px;padding:10px 14px 12px;color:#b9d5cf;font-size:10px;font-weight:750}
.world-factline strong{color:#ffe2a4;font-size:12px;margin-right:3px}
.cinema-overlay{grid-template-columns:170px minmax(0,1fr) 124px;gap:20px;min-height:163px}
.cinema-speaker{display:grid;grid-template-columns:75px 1fr;gap:2px 9px;align-items:center;min-width:0}
.cinema-portrait{display:block;width:75px;height:96px;grid-column:1;grid-row:1/3;border-radius:12px;background:#25475a}
#cinema-speaker-name{font-size:10px;letter-spacing:.07em;color:#c0e4d3;font-weight:900;line-height:1.5;grid-column:2;grid-row:1}
.cinema-speaker .cinema-counter{display:block;font-size:9px;grid-row:2;grid-column:2;line-height:1.7}
.cinema-speaker .cinema-counter b{font-size:17px}
.cinema-event{min-width:0}
.cinema-secondary:focus-visible,.cinema-skip:focus-visible{outline:3px solid #f4cd72;outline-offset:3px}
@media(max-width:1000px){.upgraded-advisor{gap:10px}.cinema-overlay{grid-template-columns:180px 1fr}.cinema-progress{grid-column:2;grid-row:2;justify-content:flex-end}.cinema-event{grid-column:2;grid-row:1}.cinema-speaker{grid-column:1;grid-row:1/3}}
@media(max-width:620px){.upgraded-advisor{gap:9px;min-height:124px}.upgraded-advisor .portrait-frame{flex-basis:78px;width:78px;height:110px;border-radius:13px}.upgraded-advisor .adviser-portrait{width:79px;height:101px}.upgraded-advisor .advisor-copy{padding:12px 10px}.upgraded-advisor .advisor-copy>span>small.advisor-pulse{font-size:8px;padding:3px 5px}.living-world-topline{align-items:center}.living-world-topline .living-tools{align-items:flex-end;gap:3px;flex-direction:column}.motion-button{font-size:9px;padding:6px 8px;min-height:27px}.world-factline{gap:8px 13px;font-size:9px;padding:9px 6px}.world-factline strong{font-size:10px}.cinema-overlay{grid-template-columns:1fr;gap:7px;padding:12px 14px 16px}.cinema-speaker{grid-column:1;grid-row:1;grid-template-columns:53px 1fr auto;gap:0 9px}.cinema-portrait{grid-column:1;grid-row:1/3;width:50px;height:62px;border-radius:8px}.cinema-speaker #cinema-speaker-name{grid-column:2;grid-row:1;font-size:10px}.cinema-speaker .cinema-counter{grid-column:2;grid-row:2}.cinema-event{grid-column:1;grid-row:2}.cinema-event h2{font-size:23px}.cinema-progress{grid-column:1;grid-row:3;justify-content:flex-start;margin-top:3px}.cinema-controls{flex-wrap:wrap}.cinema-controls button{min-width:0;flex:1 1 28%;font-size:10px;padding:11px 6px}}
@media(prefers-reduced-motion:reduce){.upgraded-advisor .portrait-frame,.world-factline{transition:none}}
/* Keep the actual quarter label in the content region, never on top of the world controls. */
.world-stage:has(.living-home) .chapter-label{position:static;display:block;margin-bottom:7px;color:#ffe0a1}
@media(max-width:620px){.world-stage:has(.living-home) .chapter-label{position:static;margin:0 0 8px;color:#d6e6e4}}

/* EMPERIO v1.0 — Market District: one spatial world, truthful channel economics. */
.market-district{background:#172e45;color:#eef6e9;border-radius:20px;overflow:hidden;margin:0 0 27px;border:3px solid #375e69}
.market-district-head{padding:18px 22px 14px;display:flex;align-items:center;justify-content:space-between;gap:15px;background:#1b354b}
.market-district-eyebrow{font-size:10px;color:#a3d8c8;letter-spacing:.13em;font-weight:850}
.market-district-head h3{font-size:clamp(19px,2.2vw,27px);margin:5px 0 0;color:#f6eecf;letter-spacing:-.025em}
.market-district-cycle{font-size:11px;color:#bfddd2;font-weight:850;white-space:nowrap;letter-spacing:.07em}
.market-world-canvas{display:block;width:100%;height:auto;aspect-ratio:1100 / 445;background:#193c51;cursor:pointer;touch-action:pan-y;user-select:none}
.market-map-foot{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 14px;background:#172e45}
.market-map-tabs{display:flex;flex:1;gap:7px;min-width:0}
.market-map-tabs button{display:flex;align-items:center;gap:9px;min-width:0;justify-content:center;padding:11px 13px;flex:1;border-radius:10px;background:#29475c;color:#d6e7e4;font-size:12px;font-weight:850;transition:background .18s,transform .18s}
.market-map-tabs button:hover,.market-map-tabs button:focus-visible{background:#3b6372;transform:translateY(-1px)}
.market-map-tabs button.selected{background:#edc775;color:#183348}
.market-map-tabs button small{font-size:10px;color:inherit;opacity:.7;font-weight:700}
.market-map-marker{display:inline-block;width:8px;height:8px;border-radius:50%;background:#8a9fa6;flex-shrink:0}
.market-map-marker.is-open{background:#8fdab8}
.market-map-tabs button.selected .market-map-marker{background:#2f7869}
.market-map-context{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.market-map-context>span{display:block;font-size:9px;color:#b0c8d0;letter-spacing:.06em;font-weight:800}
.market-map-context strong{display:block;font-size:12px;color:#ffdf96;letter-spacing:0;margin-top:3px}
.market-map-context button{background:#365869;color:#f6e7c7;border-radius:9px;padding:10px 12px;font-size:11px;font-weight:850;white-space:nowrap}
.market-map-context button:hover{background:#527489}
.market-map-metrics{display:flex;flex-wrap:wrap;gap:14px 30px;padding:13px 22px 15px;background:#284555;color:#c2d7d9;font-size:11px}
.market-map-metrics b{color:#ffe3a1;font-weight:850}
.channel-actual{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:#dfebe0;border-radius:9px;color:#385969;padding:9px 12px;margin:12px 0;font-size:11px}
.channel-actual>span:first-child{font-weight:850;letter-spacing:.055em;font-size:9px}
.channel-actual strong{color:#1c5147}
.channel-result-strip{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}
.channel-result-strip span{display:flex;flex-direction:column;gap:4px;background:#e4ebe2;border-radius:11px;padding:11px 16px;color:#305366;font-size:12px;font-weight:700}
.channel-result-strip b{font-size:11px;color:#1d3547}
.cinema-world{position:relative}
.cinema-world>.market-world-canvas.cinema-market-canvas{position:absolute;inset:0 auto auto 0;width:100%;height:auto;aspect-ratio:1100 / 440;visibility:hidden;pointer-events:none;cursor:default;z-index:1}
.cinema-world.market-playing>.market-world-canvas.cinema-market-canvas{visibility:visible}
.cinema-world.market-playing>.cinema-canvas{visibility:hidden}
.cinema-world>.cinema-overlay{position:relative;z-index:2}
@media(max-width:900px){.market-map-foot{flex-direction:column;align-items:stretch}.market-map-context{justify-content:space-between}.market-district-head{padding:15px}.market-map-metrics{padding:12px 15px}}
@media(max-width:640px){.market-district{margin-bottom:19px;border-width:2px;border-radius:15px}.market-district-head{align-items:flex-start;flex-direction:column;gap:8px;padding:14px}.market-district-head h3{font-size:22px}.market-district-cycle{font-size:10px}.market-world-canvas:not(.cinema-market-canvas){aspect-ratio:10 / 8}.market-map-foot{padding:8px;gap:8px}.market-map-tabs{gap:5px}.market-map-tabs button{padding:10px 5px;gap:4px;flex-direction:column;font-size:11px}.market-map-tabs button small{font-size:9px}.market-map-context{padding:4px 4px 2px}.market-map-metrics{padding:10px 13px;gap:8px 16px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.market-map-tabs button{transition:none!important}}
.build-run-inline{display:none}
@media(max-width:620px){
 .build-view .build-nav{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px}
 .build-view .build-nav>span{font-size:10px;letter-spacing:.08em}
 .build-run-inline{display:inline-flex;margin-left:auto;align-items:center;justify-content:center;background:#ffcc65;color:#203850;font-size:11px;font-weight:900;border-radius:10px;padding:10px 13px;min-height:38px}
 .build-view .focus-tabs{order:3;flex:0 0 100%;width:100%;justify-content:space-between}
 .build-view .focus-tabs button{flex:1;padding:11px 6px;font-size:11px}
 .shell:has(.build-view)>.floating-run{display:none}
}
@media(max-width:620px){.build-view .build-nav{flex-direction:row;justify-content:space-between;align-items:center}.build-view .build-nav>span{flex:1 1 auto}.build-view .build-nav>.build-run-inline{flex:0 0 auto}}

/* v1.1 — Connected enterprise: location rail, live treasury and authored game feedback. */
.campus-route{display:flex;flex:1;gap:5px;align-items:stretch;overflow-x:auto;scrollbar-width:thin;padding:3px 0;min-width:0}
.campus-stop{position:relative;display:flex;gap:10px;align-items:center;text-align:left;padding:10px 15px;background:#1d314f;color:#cbd8e7;min-width:140px;flex:1;border:2px solid transparent;border-radius:13px;transition:background .22s ease,transform .18s ease,border-color .22s ease}
.campus-stop:not(:last-child):after{content:'';position:absolute;right:-8px;top:45%;width:10px;height:4px;border-radius:5px;background:#52788a;pointer-events:none;z-index:2}
.campus-stop:hover{background:#304c68;transform:translateY(-2px)}
.campus-stop.current{background:#ffcf73;color:#1a3446;border-color:#ffdda0}
.campus-stop-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 38px;background:#35546c;border-radius:11px;color:#d3e8da;font-size:24px}
.campus-stop.current .campus-stop-icon{background:#223a51;color:#ffe6a0}
.campus-stop-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.campus-stop-copy strong{font-size:13px;white-space:nowrap;font-weight:900}
.campus-stop-copy small{font-size:10px;opacity:.8;white-space:nowrap}
.campus-stop.current .campus-stop-copy small{opacity:.85}
.campus-travel{position:fixed;inset:0;z-index:39;background:#10253b;display:flex;flex-direction:column;justify-content:center;align-items:center;pointer-events:none;overflow:hidden;opacity:0}
.campus-travel-header{width:min(1010px,92vw);display:flex;align-items:baseline;justify-content:space-between;padding:0 0 16px;color:#ffda88;font-weight:850;gap:18px}
.campus-travel-header span{font-size:11px;letter-spacing:.15em;color:#9fc9c8}
.campus-travel-header strong{font-size:clamp(20px,3vw,36px)}
.campus-travel-canvas{width:min(1050px,95vw);max-height:55vh;aspect-ratio:1100/350;object-fit:cover;border-radius:22px;border:3px solid #679aa3}
.campus-travel-footer{margin-top:17px;color:#abc7cd;font-size:11px;font-weight:850;letter-spacing:.15em}
.treasury-district{border-radius:19px;background:#14364d;overflow:hidden;margin:5px 0 25px;border:3px solid #35647a}
.treasury-district-top{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:15px 20px;color:#e9f5e8;font-size:12px;letter-spacing:.1em}
.treasury-district-top span{font-size:11px;letter-spacing:normal;color:#b4cdd2}
.treasury-district canvas{width:100%;aspect-ratio:920/270;display:block;background:#14364d}
.treasury-district-foot{display:flex;gap:20px;flex-wrap:wrap;align-items:center;justify-content:space-between;background:#203f53;padding:14px 20px;color:#f9edcc;font-weight:850;font-size:13px}
.treasury-district-foot span{display:flex;flex-direction:column;gap:3px;white-space:nowrap}
.treasury-district-foot b{color:#a8cbcf;font-size:9px;letter-spacing:.09em}
.sound-toggle{position:relative;font-size:21px;display:flex;align-items:center;justify-content:center;gap:4px}
.sound-state{font-size:8px;font-weight:850;letter-spacing:.08em;position:absolute;bottom:2px;right:2px;color:#97b2c4}
.sound-toggle[aria-pressed="true"]{background:#396857;color:#e9f8cc}.sound-toggle[aria-pressed="true"] .sound-state{color:#d7efc2}
.milestone-banner{position:relative;isolation:isolate;display:flex;align-items:center;gap:18px;overflow:hidden;background:#243a50;border:2px solid #b89957;border-radius:19px;padding:18px 20px;margin-bottom:21px;color:#faf4df}
.milestone-icon{width:65px;height:65px;display:flex;align-items:center;justify-content:center;flex:none;border-radius:16px;background:#f5ce72;color:#314253;font-size:39px}
.milestone-banner span{font-size:10px;font-weight:950;letter-spacing:.13em;color:#f3ce79}
.milestone-banner h2{font-size:clamp(20px,2.6vw,30px);margin:5px 0 3px;color:#fff0bd}
.milestone-banner p{font-size:12px;line-height:1.4;color:#dbe9dc;margin:0}
.milestone-banner.celebrating{animation:milestone-rise .7s cubic-bezier(.2,.8,.2,1) both}
.milestone-sparks{position:absolute;inset:0;pointer-events:none}
.milestone-sparks i{position:absolute;top:55%;left:50%;width:7px;height:14px;background:#ffe29a;border-radius:3px;opacity:0;transform:translate(0,0) rotate(0);animation:spark-fly 1.35s ease-out .2s both;--angle:calc(var(--spark)*24deg)}
.milestone-sparks i:nth-child(3n){background:#92d6b7}
.milestone-sparks i:nth-child(4n){background:#e8a48d}
@keyframes spark-fly{10%{opacity:1}85%{opacity:.8}100%{opacity:0;transform:translateX(var(--dx)) translateY(var(--dy)) rotate(var(--rotation))}}
@keyframes milestone-rise{0%{opacity:.1;transform:translateY(25px) scale(.96)}100%{opacity:1;transform:none}}
.milestone-archive{margin:28px 0;padding:20px;background:#213652;border-radius:18px;display:flex;align-items:start;gap:30px;justify-content:space-between}
.milestone-archive h3{font-size:20px;margin:0 0 7px;color:#ffe3a2}
.milestone-archive p{font-size:12px;color:#b5c7d1;max-width:330px}
.milestone-timeline{display:flex;gap:9px;flex-wrap:wrap;flex:1;justify-content:flex-end}
.milestone-timeline>div{display:flex;flex-direction:column;gap:5px;align-items:center;min-width:95px;max-width:128px;text-align:center;background:#2b4860;padding:12px 8px;border-radius:12px}
.milestone-timeline span{font-size:24px;color:#ffd37a}
.milestone-timeline strong{font-size:11px;color:#f1efd9;line-height:1.3}
.milestone-timeline small{font-size:9px;color:#9fcbc5;font-weight:800}
@media(max-width:950px){.campus-route{width:100%}.campus-stop{flex:1 0 132px}.campus-stop-copy strong{font-size:12px}.milestone-archive{flex-direction:column}.milestone-timeline{justify-content:flex-start}}
@media(max-width:620px){.campus-route{gap:6px}.campus-stop{min-width:123px;padding:8px 10px;gap:7px}.campus-stop-icon{height:30px;width:30px;flex-basis:30px;font-size:18px}.campus-stop-copy small{font-size:9px}.campus-travel-header{align-items:flex-start;flex-direction:column;gap:5px}.campus-travel-canvas{max-height:40vh}.campus-travel-footer{font-size:9px}.treasury-district-top{padding:12px 13px}.treasury-district-foot{padding:10px 12px;gap:11px;font-size:11px}.treasury-district-foot b{font-size:8px}.milestone-banner{gap:11px;padding:13px}.milestone-icon{width:49px;height:49px;font-size:29px}.milestone-banner h2{font-size:19px}.milestone-banner p{font-size:11px}.milestone-archive{padding:14px}.top-actions{gap:3px}.sound-toggle{width:34px}}
@media(prefers-reduced-motion:reduce){.campus-travel{display:none!important}.milestone-sparks{display:none}.milestone-banner.celebrating{animation:none!important}.campus-stop{transition:none!important}}
.decision-bubble{position:fixed;top:101px;right:18px;z-index:34;max-width:min(366px,calc(100vw - 26px));min-width:265px;display:grid;grid-template-columns:62px minmax(0,1fr) 26px;gap:10px;align-items:center;padding:11px 12px;background:#f4eddb;border:3px solid #d4ae64;border-radius:17px;color:#24394e;box-shadow:0 12px 0 #10213a55;animation:bubble-slide .28s ease-out}
.decision-bubble canvas{width:62px;height:78px;background:#d7e7dc;border-radius:9px}
.decision-bubble strong{font-size:13px;font-weight:950;color:#304c59}
.decision-bubble p{font-size:12px;line-height:1.37;margin:4px 0 0;color:#4c5b66}
.decision-bubble button{background:#d5dbd5;color:#364b53;align-self:start;border-radius:8px;font-size:18px;padding:3px 7px}
@keyframes bubble-slide{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:620px){.decision-bubble{top:77px;right:10px;grid-template-columns:48px minmax(0,1fr) 22px;gap:8px;padding:8px}.decision-bubble canvas{width:48px;height:62px}.decision-bubble p{font-size:11px}}
@media(prefers-reduced-motion:reduce){.decision-bubble{animation:none}}
/* Keep the travel rail discoverable on phones; the run action gets its own row. */
@media(max-width:620px){
 .build-view .build-nav{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:11px}
 .build-view .build-nav>span{grid-column:1;min-width:0}
 .build-view .build-nav>.build-run-inline{grid-column:2;justify-self:end}
 .build-view .build-nav>.campus-route{grid-column:1/-1;grid-row:2;min-width:0;width:100%;max-width:100%;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x proximity}
 .campus-route>.campus-stop{scroll-snap-align:start}
 .treasury-district canvas{aspect-ratio:auto;height:175px}
}

/* EMPERIO v1.2: the same world and material language across locations. */
.living-world,.market-district,.treasury-district{border-color:#26495b;overflow:hidden}
.living-canvas,.market-world-canvas,.treasury-world-canvas{background:#142d48}
.cinema-world>.market-world-canvas.cinema-market-canvas{display:none!important}
.campus-travel-canvas{background:#142d48}
@media(prefers-reduced-motion:reduce){.campus-travel{display:none!important}}


/* v1.7.0 premium world integration pass */
.topbar{background:linear-gradient(180deg,#132448 0%,#0f1d39 100%);box-shadow:0 10px 30px rgba(4,12,24,.32)}
.brand{position:relative}.brand:after{content:"";position:absolute;left:-12px;right:-16px;top:-10px;bottom:-10px;border-radius:18px;background:linear-gradient(90deg,rgba(255,208,108,.08),rgba(143,214,184,.02));opacity:.9;z-index:-1}
.world-stage:has(.living-home),.market-district,.treasury-district,.cinema-world{position:relative;box-shadow:0 24px 55px rgba(6,13,27,.28), inset 0 1px 0 rgba(255,255,255,.06)}
.living-world,.market-district,.treasury-district,.cinema-world{overflow:hidden;position:relative}
.living-world:before,.market-district:before,.treasury-district:before,.cinema-world:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 24%, transparent 76%, rgba(7,14,28,.12));z-index:1}
.living-world-topline,.market-district-head,.treasury-district-top{position:relative;z-index:2;background:linear-gradient(180deg,rgba(18,42,63,.95),rgba(21,49,69,.86))}
.living-canvas,.market-world-canvas,.treasury-world-canvas{box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.world-factline,.market-map-metrics,.treasury-district-foot{background:linear-gradient(180deg,rgba(26,50,72,.96),rgba(20,43,61,.96))}
.market-map-tabs button,.world-station-link,.utility,.run-secondary,.floating-run,.motion-button{transition:transform .16s ease,box-shadow .16s ease,background .16s ease}
.market-map-tabs button:hover,.world-station-link:hover,.utility:hover,.run-secondary:hover,.floating-run:hover,.motion-button:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(4,12,24,.22)}
.floating-run{box-shadow:0 15px 28px rgba(7,13,24,.36),0 4px 0 #cf992c}
.world-stage:has(.living-home) .world-overlay{background:linear-gradient(0deg,rgba(9,23,40,.84),rgba(9,23,40,.14) 42%,transparent 74%)}
.world-stage:has(.living-home) .world-title h1{letter-spacing:-.04em}
.world-stage:has(.living-home) .world-title p{color:#deebf2}
.market-district-head h3,.treasury-district-top strong{letter-spacing:-.02em}
@media(max-width:620px){.topbar{box-shadow:0 8px 18px rgba(4,12,24,.28)}.world-stage:has(.living-home),.market-district,.treasury-district,.cinema-world{box-shadow:0 14px 28px rgba(6,13,27,.24)}}

/* EMPERIO 1.7.1 — cinematic movement, travel staging and tactile selection */
.campus-travel{background:radial-gradient(ellipse at 50% 42%,#234f61 0%,#112b43 63%,#081b31 100%);isolation:isolate}
.campus-travel-frame{position:relative;width:min(1050px,95vw);aspect-ratio:1100/350;max-height:55vh;isolation:isolate;overflow:hidden;border:2px solid #719da1;border-radius:20px;box-shadow:0 30px 72px rgba(0,10,24,.48),0 0 0 6px rgba(130,187,176,.10)}
.campus-travel-frame .campus-travel-canvas{width:100%;height:100%;max-height:none;object-fit:cover;border:0;border-radius:0}
.travel-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(6,19,37,.25),transparent 24%,transparent 75%,rgba(6,19,37,.3)),linear-gradient(0deg,rgba(6,19,37,.55),transparent 31%)}
.travel-target{position:absolute;bottom:18px;left:24px;display:flex;flex-direction:column;gap:3px;padding:10px 15px;border:1px solid rgba(248,216,157,.28);border-radius:11px;background:rgba(14,39,56,.75);color:#f7e9c9;box-shadow:0 8px 20px rgba(7,19,33,.17);transform:translateY(12px);opacity:.4;transition:transform .38s cubic-bezier(.2,.8,.2,1),opacity .38s ease}
.travel-target span{color:#a8d0ca;font-weight:900;font-size:9px;letter-spacing:.14em}
.travel-target strong{font-size:18px;letter-spacing:-.02em}
.campus-travel.travel-arriving .travel-target{transform:translateY(0);opacity:1}
.campus-travel-track{width:min(1010px,92vw);height:3px;margin-top:22px;overflow:hidden;border-radius:9px;background:rgba(180,210,208,.17)}
.campus-travel-meter{width:100%;height:100%;display:block;transform:scaleX(0);transform-origin:left center;background:linear-gradient(90deg,#83d7bb,#ffd785);box-shadow:0 0 12px rgba(244,207,119,.36)}
.campus-travel-header{margin-bottom:4px}
.campus-travel-footer{width:min(1010px,92vw);margin-top:11px;display:flex;justify-content:space-between;align-items:center;color:#c4dcd7}
.travel-progress-value{color:#f6ddaa;font-variant-numeric:tabular-nums}
.cinema-world{isolation:isolate}
.cinema-director-badge{position:absolute;right:20px;top:17px;z-index:4;display:flex;align-items:center;gap:9px;border-radius:12px;background:rgba(13,34,51,.84);border:1px solid rgba(174,212,204,.24);padding:9px 13px;color:#f4e8c9;pointer-events:none;box-shadow:0 8px 24px rgba(9,23,37,.23);backdrop-filter:blur(8px)}
.cinema-director-badge strong{letter-spacing:.065em;font-size:11px;font-weight:900}
.cinema-director-badge small{font-size:9px;color:#abcfc7;letter-spacing:.07em;font-weight:800}
.director-pulse{flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:#8edebf;box-shadow:0 0 0 3px rgba(142,222,191,.13)}
.cinema-impact-flare{pointer-events:none;position:absolute;inset:0;z-index:3;opacity:0;box-shadow:inset 0 0 40px rgba(247,204,127,.22);background:linear-gradient(180deg,rgba(253,216,154,.13),transparent 30%);}
.cinema-world.cinema-impact .cinema-impact-flare{animation:cinema-impact-flare .6s ease-out both}
.cinema-world[data-emphasis=positive] .director-pulse{background:#9ae3b8;box-shadow:0 0 0 4px rgba(154,227,184,.17)}
.cinema-world[data-emphasis=muted] .director-pulse{background:#b8cad0;box-shadow:0 0 0 4px rgba(184,202,208,.15)}
@keyframes cinema-impact-flare{0%{opacity:0}25%{opacity:1}100%{opacity:0}}
.cinema-event{transition:transform .22s ease,color .22s ease}
.cinema-world.cinema-impact .cinema-event{animation:cinema-event-emphasis .35s ease-out}
@keyframes cinema-event-emphasis{0%{transform:translateY(4px)}100%{transform:translateY(0)}}
.world-station-link:active,.market-map-tabs button:active,.campus-stop:active,.tile-action:active,.primary:active{transform:translateY(2px) scale(.99);filter:brightness(1.05)}
.world-station-link:focus-visible,.market-map-tabs button:focus-visible,.campus-stop:focus-visible{outline:3px solid #ffcf76;outline-offset:2px}
.world-station-link:hover,.market-map-tabs button:hover{box-shadow:0 8px 26px rgba(4,19,33,.3),inset 0 0 0 1px rgba(255,222,151,.4)}
@media(max-width:620px){
 .campus-travel-frame{aspect-ratio:1100/440;max-height:40vh}
 .campus-travel-header{gap:7px;align-items:flex-start}
 .campus-travel-header strong{font-size:21px}
 .travel-target{bottom:10px;left:10px;padding:6px 9px}
 .travel-target span{font-size:8px}.travel-target strong{font-size:12px}
 .cinema-director-badge{top:9px;right:9px;padding:5px 8px;gap:5px;border-radius:8px}
 .cinema-director-badge strong{font-size:8px}
 .cinema-director-badge small{display:none}
 .director-pulse{width:6px;height:6px;flex-basis:6px}
}
@media(prefers-reduced-motion:reduce){
 .cinema-impact-flare,.cinema-world.cinema-impact .cinema-impact-flare,.cinema-world.cinema-impact .cinema-event{animation:none!important}
 .travel-target,.world-station-link,.market-map-tabs button{transition:none!important}
}
.cinema-timeline-track{grid-column:1/-1;display:block;width:100%;height:4px;overflow:hidden;border-radius:10px;background:#486478;margin-top:2px;align-self:end}
.cinema-timeline-track #cinema-timebar{height:100%;width:100%;transform:scaleX(0);transform-origin:0 50%;display:block;border-radius:10px;background:linear-gradient(90deg,#8bd3b4,#ffd37b)}


/* v1.7.2 Final QA — placement, responsive navigation, and unobstructed controls */
/* One Run Quarter CTA in Build; fixed overlay retired. */
.floating-run{display:none!important}
.build-run-inline{display:inline-flex;align-items:center;justify-content:center;background:#ffcc65;color:#203850;font-size:12px;font-weight:900;border-radius:10px;padding:11px 15px;min-height:42px;white-space:nowrap;box-shadow:0 4px 0 #c79c42;flex:0 0 auto}
.build-run-inline:hover{background:#ffdc88;transform:translateY(-1px)}
.build-run-inline:focus-visible{outline:3px solid #ffda88;outline-offset:3px}
.build-view .build-nav{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px}
.build-view .build-nav>span{grid-column:1;min-width:0;white-space:nowrap}
.build-view .build-nav>.campus-route{grid-column:2;grid-row:1;width:100%;min-width:0;max-width:100%}
.build-view .build-nav>.build-run-inline{grid-column:3;grid-row:1;order:initial}
.campus-route-hint{display:none;color:#9cb5c6;font-size:10px;letter-spacing:.035em}
.campus-stop:focus-visible{outline:3px solid #ffe19a;outline-offset:2px}
@media(max-width:1090px){
 .build-view .build-nav{grid-template-columns:minmax(0,1fr) auto;gap:9px 12px}
 .build-view .build-nav>span{grid-column:1;grid-row:1}
 .build-view .build-nav>.build-run-inline{grid-column:2;grid-row:1}
 .build-view .build-nav>.campus-route{grid-column:1/-1;grid-row:2}
}
@media(max-width:620px){
 .build-view .build-nav{margin-bottom:14px}
 .build-view .build-nav>.build-run-inline{padding:10px 13px;font-size:11px}
 .build-view .build-nav>.campus-route{padding:4px 1px 8px}
 .build-view .build-nav>.campus-route-hint{display:block;grid-column:1/-1;grid-row:3;font-size:10px;padding:0 3px;margin-top:-7px}
 .world-stage:has(.living-home) .world-title h1{max-width:100%}
}
/* Keep animated canvas decorations behind buttons and text. */
.market-district:before,.living-world:before,.treasury-district:before,.cinema-world:before{z-index:0}
.market-district-head,.living-world-topline,.treasury-district-top,.market-map-foot,.world-station-links,.cinema-overlay{position:relative;z-index:2}
@media(prefers-reduced-motion:reduce){.build-run-inline{transition:none!important}}
/* Final world composition: don't dim actionable stations behind the home hero gradient. */
.world-stage:has(.living-home) .world-station-links,
.world-stage:has(.living-home) .world-factline{position:relative;z-index:4}
.world-stage:has(.living-home) .world-station-links{background:rgba(14,34,51,.94)}
.world-stage:has(.living-home) .world-factline{background:#132e43}
/* Home canvas sits in the same stacking context as its hero; station controls stay above the gradient. */
.world-stage:has(.living-home) .living-home{isolation:auto}
