/* Activity canvas cleanup */
.game-shell{display:block;max-width:1680px;padding:18px 2vw}.economy-card,.map-card>.section-heading{display:none}.map-card{border:0;border-radius:24px;background:transparent;box-shadow:none}.district-world{margin:auto}
#business-inbox,#player-directory,#employees-button,#delivery-notice{display:none!important}
#management-dialog{position:fixed;z-index:850;inset:0;width:100vw!important;max-width:none!important;height:100dvh;max-height:none!important;margin:0;border-radius:0;background:#e9f0e5;overflow:auto}
#management-dialog::backdrop{background:#e9f0e5}
#management-dialog>.dialog-header{position:fixed;z-index:50;top:14px;right:14px;width:auto;padding:0;border:0;background:transparent;pointer-events:none}
#management-dialog>.dialog-header .panel-title,#management-dialog .district-navigation-button{display:none}
#management-dialog>.dialog-header .dialog-header-actions{pointer-events:auto}
#management-dialog #close-dialog{width:42px;height:42px;background:#fff;box-shadow:0 8px 24px #173e3430}
#management-dialog>#panel-metrics{display:none}
#management-dialog>.panel-content{display:block!important;width:min(1500px,100%);margin:auto;padding:18px!important}
#management-dialog>.panel-content>section:first-child{max-height:none!important;overflow:visible!important;padding:0!important}
#management-dialog>.panel-content>section:first-child>.subheading,#management-dialog #panel-description{display:none!important}
#management-dialog #panel-controls{display:block!important}.farm-mode-stage,.bakery-workspace,.delivery-garage-workspace,.grocery-scene-layout{margin-inline:auto}
#management-dialog>.panel-content>section:last-child{display:block!important;width:min(1100px,calc(100% - 24px));margin:24px auto 42px;padding:20px;border:1px solid #cfdbd1;border-radius:22px;background:#fffdf8;box-shadow:0 12px 34px #173e3414}
#management-dialog>.panel-content>section:last-child>.subheading{margin-bottom:14px}
.farm-scene-svg,.bakery-scene-svg,.delivery-garage-svg,.grocery-store-svg{min-height:min(720px,calc(100dvh - 150px))}

/* Phone launcher and shell */
.phone-toggle{position:fixed;right:22px;bottom:20px;z-index:900;display:flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid #d4dfd2;border-radius:16px;background:#173e34;color:#fff;box-shadow:0 12px 30px #173e3440;font-weight:800;cursor:pointer}.phone-toggle[hidden]{display:none}.phone-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2}.phone-toggle kbd{padding:3px 6px;border:1px solid #ffffff55;border-radius:5px;background:#ffffff16;font:800 10px inherit}.phone-toggle>b{position:absolute;right:-5px;top:-7px;min-width:21px;padding:4px;border:2px solid #fff;border-radius:99px;background:#dc6f4a;font-size:9px}
.market-phone{position:fixed;inset:auto 18px 18px auto;width:min(390px,calc(100vw - 24px));height:min(700px,calc(100dvh - 28px));margin:0;padding:7px;border:2px solid #102e28;border-radius:34px;background:#122f29;color:#173e34;box-shadow:0 24px 80px #102e2855;overflow:hidden;z-index:2000}.market-phone::backdrop{background:transparent;backdrop-filter:none}.phone-hardware{height:18px;display:grid;place-items:center}.phone-hardware span{width:70px;height:6px;border-radius:99px;background:#071e19}.phone-status{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 13px;border-radius:20px 20px 0 0;background:#eff3e9}.phone-status>div{display:grid}.phone-status small{font-size:7px;font-weight:900;letter-spacing:.14em;color:#337158}.phone-status strong{font-size:12px}.phone-status button{width:30px;height:30px;border:0;border-radius:50%;background:#dfe8dc;color:#285a43;font-size:21px;cursor:pointer}.phone-screen{height:calc(100% - 96px);overflow:auto;background:#f8f6ed}.phone-dock{height:30px;display:grid;grid-template-columns:42px 1fr;align-items:center;padding:0 15px;background:#f8f6ed}.phone-dock button{display:grid;place-items:center;width:32px;height:25px;border:0;border-radius:9px;background:#e6eee2;color:#285a43}.phone-dock svg{width:16px;fill:currentColor}.phone-dock i{justify-self:center;width:96px;height:4px;border-radius:99px;background:#173e34}
.phone-wallpaper{min-height:100%;padding:26px 19px;background:linear-gradient(155deg,#dfeecf 0%,#f8e9c9 50%,#c8dfd5 100%)}.phone-welcome{display:grid;margin-bottom:30px;text-shadow:0 1px #fff}.phone-welcome small{font-size:8px;font-weight:900;letter-spacing:.13em;color:#39735d}.phone-welcome strong{margin-top:3px;font:700 28px Georgia,serif}.phone-welcome span{color:#5f746a;font-size:11px}.phone-app-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 12px}.phone-app-grid button{position:relative;display:grid;justify-items:center;gap:7px;border:0;background:transparent;color:#173e34;font-weight:800;cursor:pointer}.phone-app-grid button>b{position:absolute;top:-5px;right:22px;min-width:21px;padding:4px;border:2px solid #fff;border-radius:99px;background:#dc6f4a;color:#fff;font-size:9px}.app-icon{display:grid;place-items:center;width:67px;height:67px;border-radius:19px;box-shadow:0 9px 20px #173e3422}.app-icon svg{width:34px;height:34px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.app-icon.messages{background:linear-gradient(145deg,#63ac6a,#267454)}.app-icon.finance{background:linear-gradient(145deg,#efbb5a,#d67c41)}.app-icon.travel{background:linear-gradient(145deg,#6b9ec0,#477187)}.app-icon.employees{background:linear-gradient(145deg,#9977b5,#684d87)}.phone-hint{text-align:center;margin-top:32px;color:#557065;font-size:10px}.phone-hint kbd{padding:3px 6px;border:1px solid #9bb1a5;border-radius:5px;background:#fff}
.phone-app-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:10px;padding:14px;background:#eff3e9;border-bottom:1px solid #d3dfd0}.phone-app-header button{width:32px;height:32px;border:0;border-radius:9px;background:#dce9d8;color:#285a43;font-weight:900}.phone-app-header span{display:grid}.phone-app-header small,.phone-recent>small,.phone-ledger>small{font-size:7px;font-weight:900;letter-spacing:.13em;color:#39735d}.phone-app-header strong{font:700 20px Georgia,serif}.phone-message-actions{display:grid;gap:9px;padding:13px}.phone-message-actions>button{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:12px;border:1px solid #d5e0d3;border-radius:14px;background:#fff;text-align:left;color:#173e34}.phone-message-actions>button>i{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#e3efdd}.phone-message-actions svg{width:22px;fill:none;stroke:#2d6d53;stroke-width:1.8}.phone-message-actions span{display:grid}.phone-message-actions strong{font-size:12px}.phone-message-actions small{color:#677a71;font-size:8px}.phone-message-actions b{min-width:23px;padding:5px;border-radius:99px;background:#dc7651;color:#fff;text-align:center;font-size:9px}.phone-recent,.phone-ledger{margin:0 13px;padding:13px;border-radius:14px;background:#f0eee4}.phone-recent article{display:flex;gap:8px;padding:10px 0;border-bottom:1px solid #d9dfd4;font-size:10px}.phone-recent article>i{flex:0 0 7px;height:7px;margin-top:3px;border-radius:50%;background:#dc7651}.phone-recent article span{display:grid}.phone-recent article small{color:#75857e;font-size:8px}.phone-recent p{color:#6b7c74;font-size:10px}.phone-balance{display:grid;padding:23px 18px;background:linear-gradient(145deg,#285f4b,#173e34);color:#fff}.phone-balance small{color:#bcd4c5;font-size:8px;font-weight:900;letter-spacing:.12em}.phone-balance strong{margin:5px 0;font:700 35px Georgia,serif}.phone-balance span{font-size:10px}.phone-finance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:12px}.phone-finance-grid article{display:grid;padding:10px;border-radius:11px;background:#fff}.phone-finance-grid small{font-size:8px;color:#6c7d75}.phone-finance-grid strong{font-size:11px;margin-top:4px}.phone-finance-grid .positive strong{color:#277153}.phone-finance-grid .negative strong{color:#b65543}.phone-ledger p{display:flex;justify-content:space-between;gap:10px;margin:0;padding:8px 0;border-bottom:1px solid #d9dfd4;font-size:9px;text-transform:capitalize}.phone-district-list{display:grid;gap:8px;padding:13px}.phone-district-list button{display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:9px;padding:12px;border:1px solid #d4dfd2;border-radius:13px;background:#fff;color:#173e34;text-align:left}.phone-district-list button>i{font:700 18px Georgia,serif;color:#d57a4d}.phone-district-list span{display:grid}.phone-district-list strong{font-size:12px}.phone-district-list small{font-size:8px;color:#6a7d74}

/* Existing communication and workforce screens now behave like phone apps. */
dialog.phone-app-surface{position:fixed;inset:auto 18px 18px auto;width:min(520px,calc(100vw - 24px));height:min(760px,calc(100dvh - 28px));max-height:none;margin:0;border:7px solid #12352d;border-radius:30px;box-shadow:0 24px 80px #102e2866}.phone-app-surface::backdrop{background:#173e3422;backdrop-filter:blur(2px)}.phone-app-surface>.dialog-header{position:sticky;top:0;z-index:5;background:#fffdf8}.phone-app-surface #negotiation-root,.phone-app-surface .employee-dialog-body,.phone-app-surface .player-directory-root{max-height:calc(100dvh - 120px);overflow:auto}.phone-employee-surface{width:min(680px,calc(100vw - 24px))!important}
@media(max-width:700px){#management-dialog>.panel-content{padding:8px!important}.phone-toggle{right:12px;bottom:12px}.market-phone,dialog.phone-app-surface{right:6px;bottom:6px;width:calc(100vw - 12px);height:calc(100dvh - 12px);border-radius:25px}.farm-scene-svg,.bakery-scene-svg,.delivery-garage-svg,.grocery-store-svg{min-height:520px}}

/* Second-pass phone polish: live alerts are actionable and old header notices stay centralized. */
.phone-employee-surface{width:min(520px,calc(100vw - 24px))!important}
.market-phone{animation:phone-arrive .2s ease-out}
.phone-recent article,.phone-recent>button{display:flex;width:100%;gap:8px;padding:10px 0;border:0;border-bottom:1px solid #d9dfd4;background:transparent;color:#173e34;text-align:left;font:inherit;font-size:10px}
.phone-recent>button{display:grid;grid-template-columns:7px 1fr auto;align-items:start;cursor:pointer}
.phone-recent article>i,.phone-recent>button>i{flex:0 0 7px;width:7px;height:7px;margin-top:3px;border-radius:50%;background:#96a69e}
.phone-recent .unread>i{background:#dc7651;box-shadow:0 0 0 3px #f4d7cc}
.phone-recent article span,.phone-recent>button span{display:grid}
.phone-recent article small,.phone-recent>button small{margin-top:2px;color:#75857e;font-size:8px}
.phone-recent>button>b{font-size:18px;color:#2d6d53}
@keyframes phone-arrive{from{opacity:0;transform:translateY(22px) scale(.96)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.market-phone{animation:none}}
.phone-finance-grid{grid-template-columns:repeat(2,1fr)}
.finance-help{position:relative;display:inline-grid!important;place-items:center;width:17px!important;height:17px!important;min-width:17px!important;margin:0 0 0 3px!important;padding:0!important;border:1px solid #77a08d!important;border-radius:50%!important;background:#edf5eb!important;color:#285f4b!important;font:900 10px/1 system-ui!important;vertical-align:middle;cursor:help!important;overflow:visible!important}.finance-help::after{content:attr(data-tooltip);position:absolute;z-index:3000;left:50%;bottom:calc(100% + 8px);width:230px;padding:10px 11px;border-radius:10px;background:#173e34;color:#fff;box-shadow:0 9px 25px #173e3445;font:500 10px/1.45 system-ui;text-align:left;text-transform:none;letter-spacing:0;opacity:0;visibility:hidden;transform:translate(-50%,5px);transition:.15s;pointer-events:none}.finance-help:hover::after,.finance-help:focus-visible::after{opacity:1;visibility:visible;transform:translate(-50%,0)}.gross-margin-card>small{display:flex;align-items:center}.gross-margin-card>strong{font-size:18px!important}
.phone-trade-intro{margin:10px;padding:14px;border-radius:16px;background:linear-gradient(135deg,#285f4a,#3d8266);color:#fff;display:grid;gap:4px}.phone-trade-intro small{letter-spacing:.14em;font-size:8px}.phone-trade-intro strong{font:700 17px Georgia,serif}.phone-trade-intro p{margin:0;font-size:9px;line-height:1.4;color:#dcece4}.supplier-market,.supplier-trade-threads,.phone-fleet-manager{padding:0 10px 12px}.supplier-market>h3,.supplier-trade-threads>h3{font:700 15px Georgia,serif;color:#1d493a}.supplier-company-card,.supplier-trade-thread,.phone-fleet-manager{border:1px solid #cfdbd1;border-radius:15px;background:#fffdf7;margin-bottom:10px;overflow:hidden}.supplier-company-card>header,.supplier-trade-thread>header,.phone-fleet-manager>header{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:10px 12px;background:#edf3eb}.supplier-company-card header span,.supplier-trade-thread header span,.phone-fleet-manager header span{display:grid}.supplier-company-card small,.supplier-trade-thread small,.phone-fleet-manager small{font-size:8px;color:#75847e}.supplier-offer-row{display:grid;grid-template-columns:minmax(90px,1.3fr) 48px 64px;gap:6px;padding:9px;border-top:1px solid #e1e8df}.supplier-offer-row>div{display:grid}.supplier-offer-row label{display:grid;font-size:8px}.supplier-offer-row input{min-width:0;width:100%;padding:6px;border:1px solid #cbd8ce;border-radius:8px;font-size:9px}.supplier-offer-row>input{grid-column:1/3}.supplier-offer-row button{border:0;border-radius:8px;background:#2e765a;color:white;font-weight:800;font-size:9px}.supplier-trade-thread{padding-bottom:9px}.supplier-trade-thread.needs-response{border:2px solid #db7650}.supplier-trade-thread>p,.supplier-thread-messages,.supplier-response,.supplier-message-compose{margin:8px 10px}.supplier-thread-messages{max-height:90px;overflow:auto;padding:7px;border-radius:9px;background:#f2f0e7}.supplier-thread-messages p{display:grid;margin:0 0 5px;font-size:9px}.supplier-response{display:grid;grid-template-columns:1fr 1fr;gap:5px}.supplier-response label{display:grid;font-size:8px}.supplier-response input,.supplier-message-compose input{min-width:0;padding:7px;border:1px solid #cad7ce;border-radius:8px}.supplier-response button,.supplier-message-compose button,.phone-fleet-manager button{border:0;border-radius:8px;padding:7px;background:#2e765a;color:#fff;font-size:8px;font-weight:900}.supplier-response .danger{background:#a94d42}.supplier-message-compose{display:flex;gap:5px}.supplier-message-compose input{flex:1}.phone-fleet-manager{margin:10px}.phone-fleet-manager>header button{background:#e2764f}.phone-fleet-manager>article{display:grid;grid-template-columns:54px 1fr;gap:8px;padding:9px;border-top:1px solid #dfe8df}.phone-fleet-manager>article.active-truck{background:#edf7ed}.phone-fleet-manager article svg{width:54px}.phone-fleet-manager article svg path{fill:#f0c75d;stroke:#285a47;stroke-width:4}.phone-fleet-manager article svg circle{fill:#34403a;stroke:#285a47;stroke-width:3}.phone-fleet-manager article>div{display:grid;gap:2px}.phone-fleet-manager article>div:last-child{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:4px}.phone-empty{padding:14px;color:#78877f;font-size:10px}
