/* Main play surface: visual cities, contextual actions, details on demand. */
.shell.live-shell{max-width:960px;padding:22px 24px 10px}.live-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 16px;border-bottom:1px solid var(--line)}.live-header .brand-name{font-size:29px}.live-header .brand-sub{font-size:9px}.live-header .flag{width:53px;height:32px}.live-header-actions{display:flex;gap:9px;align-items:center}.live-header .theme-button{min-width:36px;min-height:36px;padding:8px}.live-header .icon-btn{width:36px;height:36px}.live-status{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:16px;align-items:center;padding:15px 0 12px}.live-day.day-block{display:flex;gap:10px;padding:0;border:0;background:none;box-shadow:none;min-width:0}.live-day strong{font-family:var(--display);font-size:33px;font-weight:400;line-height:1}.live-day span{font-size:11px;line-height:1.5;color:var(--muted)}.live-cash{display:flex;gap:8px;align-items:baseline;position:relative}.live-cash strong{font-size:24px;font-weight:500;font-variant-numeric:tabular-nums}.live-cash>span{font-size:10px;color:var(--muted)}.live-crews{display:grid;justify-items:center;gap:6px;font-size:10px;color:var(--muted)}.crew-dots{display:flex;gap:5px}.crew-dots i{display:block;width:15px;height:8px;background:var(--line)}.crew-dots i.free{background:var(--gold)}.live-votes{display:flex;gap:8px;align-items:baseline;justify-content:flex-end;background:none;border:0;padding:5px 0}.live-votes strong{font-size:19px;font-weight:500;font-variant-numeric:tabular-nums}.live-votes span{font-size:10px;color:var(--muted)}.live-alerts{display:flex;flex-wrap:wrap;gap:8px}.live-alerts:empty{display:none}.live-alerts button{background:var(--accent-soft);color:var(--red);border:0;padding:6px 9px;border-radius:3px;font-size:11px;margin-bottom:8px}.live-alerts .live-update{color:var(--gold);background:var(--panel2)}
.live-board{height:clamp(290px,43vh,370px);position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 50%,color-mix(in srgb,var(--map-region) 75%,transparent),transparent 72%);margin:6px 0}.live-river{position:absolute;left:-8%;right:-8%;height:18px;top:28%;background:var(--river);opacity:.5;transform:rotate(-11deg);border-radius:50%}.live-roads{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;color:var(--stitch);opacity:.8}.live-roads path{fill:none;stroke:currentColor;stroke-width:1.4;vector-effect:non-scaling-stroke}.live-roads .blocked{stroke:var(--red);stroke-width:2;stroke-dasharray:3 5}.live-city{position:absolute;width:130px;height:104px;padding:0;background:none;border:0;transform:translate(-50%,-50%);display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:3px;touch-action:manipulation;isolation:isolate;color:var(--text)}.live-city .voxel{width:75px;height:62px;position:relative;flex-shrink:0;transition:transform .2s}.live-city:hover .voxel{transform:translateY(-3px)}.voxel-shadow{position:absolute;left:0;bottom:-2px;width:76px;height:16px;background:var(--tree-shadow);clip-path:polygon(0 40%,20% 0,75% 0,100% 45%,80% 100%,15% 100%);opacity:.65}.voxel-building{position:absolute;left:13px;bottom:6px;width:47px;height:42px;background:#c4bea6;box-shadow:8px -4px 0 #8c9a87;transform:skewY(-4deg)}.voxel-building:before{content:'';position:absolute;left:2px;top:-8px;width:53px;height:9px;background:#667c72;clip-path:polygon(10% 0,100% 0,90% 100%,0 100%)}.voxel-windows{display:grid;grid-template-columns:repeat(3,7px);grid-auto-rows:8px;justify-content:center;gap:6px;padding-top:9px}.voxel-windows i{background:#687a71}.lit .voxel-windows i{background:#d1b782}[data-theme=dark] .lit .voxel-windows i{background:#e6c88c;box-shadow:0 0 5px #e6c88c33}.blackout .voxel-building{filter:brightness(.74)}.voxel-chimney{position:absolute;left:54px;top:1px;width:8px;height:26px;background:#6d7d70}.voxel-chimney>i{display:none;position:absolute;background:var(--smoke);width:9px;height:7px;left:-2px;top:-10px;clip-path:polygon(20% 0,80% 0,100% 30%,100% 80%,70% 100%,15% 100%,0 60%)}.warm .voxel-chimney>i{display:block;opacity:.55}.warm .voxel-chimney>i+i{left:2px;top:-20px;opacity:.25;width:11px;height:9px}.voxel-annex{position:absolute;bottom:6px;left:2px;width:19px;height:23px;background:#9d9d7b;box-shadow:5px -2px 0 #718471}.voxel-detail{position:absolute;bottom:5px;right:0;width:10px;height:9px;background:#a9986d}.live-vladimir .voxel-building{height:49px;background:#d0c5a4}.live-vladimir .voxel-chimney{width:12px;height:17px;left:30px;top:-4px;background:#c6c3a8}.live-vladimir .voxel-chimney>i{display:none}.live-vladimir .voxel-detail{bottom:58px;left:40px;width:10px;height:6px;background:#a44f43}.live-suzdal .voxel-building{height:30px;background:#c6ba89}.live-suzdal .voxel-annex{width:17px;height:41px;left:2px;background:#b1ae8d}.live-suzdal .voxel-chimney{display:none}.live-ivanovo .voxel-building{width:59px;height:33px;left:5px;background:#b28a77}.live-ivanovo .voxel-building:before{width:65px;background:#7d6c62;clip-path:polygon(0 50%,15% 0,30% 50%,45% 0,60% 50%,75% 0,100% 50%,100% 100%,0 100%)}.live-ivanovo .voxel-windows{grid-template-columns:repeat(3,10px);gap:6px}.live-ivanovo .voxel-annex{display:none}.live-ivanovo .voxel-chimney{height:39px;top:-4px;left:53px;background:#936e5f}.live-yaroslavl .voxel-building{height:33px;background:#a3b4a5}.live-yaroslavl .voxel-chimney{left:57px;height:43px;top:-5px;width:5px;background:#75898b}.live-yaroslavl .voxel-annex{height:18px;width:19px;background:#8b9d87}.live-yaroslavl .voxel-detail{bottom:9px;right:5px;height:28px;width:5px;background:#c2aa77}.live-kostroma .voxel-building{background:#a0b5b4;box-shadow:8px -4px 0 #768e8d}.live-kostroma .voxel-building:before{background:#5c7880}.live-kostroma .voxel-detail{width:11px;height:17px;background:#b49b6a;box-shadow:-14px 2px 0 #9b8a63}.live-kostroma .voxel-annex{display:none}.live-city-name{font-size:13px;font-weight:500;white-space:nowrap;position:relative}.live-city-status{font-size:10px;line-height:1.4;color:var(--accent);min-height:15px;max-width:125px;white-space:nowrap}.veto-mark{display:block;position:absolute;top:-12px;right:-25px;font-size:7px;text-transform:uppercase;color:var(--gold);border:1px solid var(--gold);padding:1px 3px;background:var(--panel)}.target-mode .voxel-shadow{background:var(--gold);opacity:.3}.target-mode:hover .voxel-shadow{opacity:.65}.unavailable{opacity:.55}.live-city.city-celebrate .voxel{animation:liveLift .65s ease}.live-delivery{position:absolute;width:17px;height:10px;background:#a76c51;opacity:0;pointer-events:none;transition:left .85s cubic-bezier(.2,.65,.3,1),top .85s cubic-bezier(.2,.65,.3,1);z-index:4;box-shadow:0 3px 0 #334b45}.live-delivery i{position:absolute;right:-5px;bottom:0;width:7px;height:9px;background:#b7bcaa;border-top:3px solid #6c919a}.live-delivery.running{opacity:1}
.live-control-dock{background:var(--bg);position:relative;z-index:5}.live-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.live-tools>button{display:grid;justify-items:center;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:5px;padding:12px 8px;color:var(--text)}.live-tools>button>span{font-size:13px;font-weight:500}.live-tools>button>small{font-size:10px;color:var(--muted);line-height:1.6}.live-tools .ui-icon{color:var(--gold);width:20px;height:20px}.live-tools>button[aria-pressed=true]{background:var(--button);color:var(--bg);border-color:var(--button)}.live-tools>button[aria-pressed=true] .ui-icon,.live-tools>button[aria-pressed=true]>small{color:inherit}.live-tools>button:disabled{opacity:.45;cursor:default}.live-feedback{font-size:11px;color:var(--muted);padding:10px 2px;min-height:38px;line-height:1.6}.live-daily{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 17px;background:var(--panel2);border-left:2px solid var(--green);border-radius:3px}.live-daily.pending{border-left-color:var(--gold)}.live-daily>div>span{font-size:8px;letter-spacing:.09em;color:var(--muted)}.live-daily h1{font-family:var(--font);font-size:14px;line-height:1.5;font-weight:500;margin:4px 0 0}.live-daily>button{flex-shrink:0;min-height:39px;font-size:11px;padding:8px 13px}.live-footer{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:13px 0 8px;border-top:1px solid var(--line)}.live-footer-links{display:flex;gap:18px}.live-footer-links>button{display:flex;align-items:center;gap:6px;padding:7px 0;border:0;background:none;color:var(--muted);font-size:12px}.live-footer>.primary{font-size:13px;padding:10px 18px;min-height:43px}.live-evening{font-size:10px;color:var(--muted);text-align:right;padding-bottom:10px}.live-shell>footer{margin-top:12px;padding-top:10px;font-size:9px;border-top:1px solid var(--line)}
.cinema-canvas{image-rendering:pixelated;image-rendering:crisp-edges}
.live-case h2{margin:10px 0 20px}.live-speaker{display:flex;gap:12px;align-items:center;margin-bottom:17px}.live-speaker>div{display:grid;gap:4px}.live-speaker strong{font-size:13px;font-weight:500}.live-speaker>div>span{font-size:11px;color:var(--muted)}.live-case-story{padding:12px 0;margin:0 0 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px}.live-case-story summary{cursor:pointer;color:var(--muted)}.live-case-story p{margin:12px 0 0}.live-choices{display:grid;gap:13px;margin:20px 0}.live-choices article{border:1px solid var(--line);padding:14px;border-radius:5px;background:var(--panel)}.live-choices article>button{width:100%;background:none;border:0;padding:0;display:flex;align-items:flex-start;text-align:left;gap:10px;color:var(--text)}.live-choices article>button strong{font-size:14px;font-weight:500;line-height:1.5;flex:1}.live-choice-number{font-size:11px;color:var(--gold);border:1px solid var(--line);min-width:24px;height:24px;display:grid;place-items:center}.live-choice-arrow{color:var(--gold);font-size:18px;line-height:1}.live-choices article>button:disabled{opacity:.4}.live-choices article>p{font-size:12px;line-height:1.7;margin:8px 0;color:var(--muted)}.live-price{display:flex;flex-wrap:wrap;gap:5px}.live-price>span{font-size:10px;padding:3px 6px;background:var(--panel2);color:var(--text)}.live-choices details{font-size:10px;margin-top:11px;color:var(--muted)}.live-choices details>summary{cursor:pointer;padding:3px 0}.live-choices details .effects{padding:10px 0 0}.live-choices details p{font-size:11px;margin-top:10px}.live-choices .promise-preview{margin-top:10px}.live-blocked{color:var(--red)!important}.live-choice-result{padding:18px;background:var(--panel2);border-left:2px solid var(--green);margin:20px 0}.live-choice-result>strong{font-size:15px}.live-choice-result>p{font-size:13px;margin-top:8px}.live-stock-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}.live-stock-counts>div{display:grid;gap:6px;justify-items:center;background:var(--panel2);padding:15px 8px}.live-stock-counts strong{font-size:25px;font-weight:500;font-variant-numeric:tabular-nums}.live-stock-counts span{font-size:11px;color:var(--muted)}.live-stock-counts .ui-icon{color:var(--gold)}.live-document-menu{display:grid;gap:0;margin:22px 0}.live-document-menu button{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;background:none;border:0;border-top:1px solid var(--line);padding:17px 3px;color:var(--text);font-size:14px}.live-document-menu button:last-child{border-bottom:1px solid var(--line)}.live-document-menu button>span{color:var(--gold);font-size:12px}.live-report-notices{list-style:none;padding:0;margin:20px 0}.live-report-notices li{border-left:2px solid var(--gold);padding:10px 13px;margin:8px 0;background:var(--panel2);font-size:13px;line-height:1.75}.live-report-calm{margin:20px 0}
@keyframes liveLift{0%,100%{transform:translateY(0)}45%{transform:translateY(-5px)}}
@media(min-width:1000px) and (min-height:780px){.live-control-dock{position:sticky;bottom:0;padding-top:7px}}
@media(max-width:600px){.shell.live-shell{padding:15px 16px 8px}.live-header{padding-bottom:13px}.live-header .brand-name{font-size:25px}.live-header .brand-sub{font-size:8px}.live-header .flag{width:44px;height:27px}.live-status{grid-template-columns:1.1fr 1fr .9fr .7fr;gap:8px;padding-top:13px}.live-day.day-block{display:grid;gap:4px;justify-items:start}.live-day strong{font-size:28px}.live-day span{font-size:9px;white-space:nowrap}.live-cash{display:grid;gap:2px}.live-cash strong{font-size:22px}.live-cash>span{font-size:8px}.live-crews{font-size:9px;text-align:center;gap:5px}.live-votes{display:grid;gap:3px;text-align:right}.live-votes strong{font-size:19px}.live-votes span{font-size:8px;white-space:nowrap}.live-board{height:330px;margin:0 -7px}.live-city{width:103px;height:99px}.live-city .voxel{transform:scale(.87);transform-origin:center bottom;margin-bottom:-5px}.live-city:hover .voxel{transform:scale(.87) translateY(-2px)}.live-city-name{font-size:12px}.live-city-status{font-size:9px;max-width:100px}.veto-mark{right:-15px;font-size:6px;top:-10px}.live-tools{gap:7px}.live-tools>button{padding:11px 5px;gap:5px}.live-tools>button>span{font-size:12px}.live-tools>button>small{font-size:9px;white-space:nowrap}.live-tools .ui-icon{width:18px;height:18px}.live-feedback{font-size:10px;min-height:38px}.live-daily{gap:10px;padding:11px 12px}.live-daily h1{font-size:12px}.live-daily>div>span{font-size:7px}.live-daily>button{font-size:10px;padding:8px 9px;min-height:36px}.live-footer{gap:10px}.live-footer-links{gap:13px}.live-footer-links>button{font-size:11px;gap:4px}.live-footer-links .ui-icon{width:15px;height:15px}.live-footer>.primary{font-size:11px;padding:10px 12px}.live-evening{font-size:8px}.live-choices article{padding:12px}.live-choices article>button strong{font-size:13px}.live-choices article>p{font-size:12px}.live-case h2{font-size:27px}.live-shell>footer{font-size:8px}.live-document-menu button{font-size:13px}}
@media(max-width:360px){.shell.live-shell{padding-left:12px;padding-right:12px}.live-day span{font-size:8px}.live-votes span{font-size:7px}.live-board{height:315px}.live-city{width:95px}.live-city-name{font-size:11px}.live-city-status{font-size:8px}.live-tools>button>small{font-size:8px}.live-daily>button{font-size:9px}.live-daily h1{font-size:11px}.live-footer-links{gap:10px}.live-footer>.primary{font-size:10px;padding:10px}.live-header .brand{gap:9px}}
@media(prefers-reduced-motion:reduce){.live-city.city-celebrate .voxel{animation:none}.live-delivery{transition:none}.live-city .voxel{transition:none}}

@media(max-width:600px){.live-city-name{font-size:12px}.live-city-status{font-size:10px}.live-tools>button>small{font-size:11px;white-space:normal}.live-cash>span{font-size:10px}.live-day span{font-size:10px}.live-votes span{font-size:10px}.live-feedback{font-size:11px}}

.live-day.day-block{grid-column:auto}
@media(max-width:600px){.live-day.day-block{grid-template-columns:1fr;grid-template-rows:auto auto}}

/* A short illustrated prologue, with optional background. */
.modal-content:has(.prologue-screen){padding:30px 34px}.prologue-mast{display:flex;justify-content:space-between;align-items:center;gap:18px}.prologue-mast .flag{width:72px;height:43px}.prologue-mast>span{text-align:right;color:var(--muted);font-size:9px;line-height:1.8;letter-spacing:.08em}.prologue-screen h1{font-size:39px;margin:24px 0 0}.prologue-cities{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;border-bottom:1px solid var(--line);margin:20px 0 23px;padding-bottom:18px}.prologue-town{display:flex;flex-direction:column;align-items:center;gap:11px;min-width:0}.prologue-town .voxel{position:relative;width:75px;height:66px}.prologue-town>span{font-size:10px;color:var(--muted)}.prologue-copy{display:grid;gap:12px}.prologue-copy p{font-size:14px;line-height:1.85;margin:0}.prologue-copy .prologue-role{border-left:2px solid var(--gold);padding-left:13px;font-size:13px}.prologue-background{margin:22px 0 18px;font-size:11px;color:var(--muted)}.prologue-background summary{cursor:pointer;padding:5px 0}.prologue-background h3{font-size:13px;color:var(--text);margin:18px 0 7px}.prologue-background p{font-size:12px;line-height:1.8;margin:0}.prologue-actions{display:grid;gap:10px;background:var(--panel)}.prologue-actions .primary{min-height:45px}.prologue-actions>span{text-align:center;color:var(--muted);font-size:9px}
@media(max-width:600px){.modal-content:has(.prologue-screen){padding:23px 20px}.prologue-mast .flag{width:59px;height:35px}.prologue-mast>span{font-size:8px}.prologue-screen h1{font-size:31px;margin-top:21px}.prologue-cities{gap:0;margin:14px 0 18px;padding-bottom:14px}.prologue-town{gap:1px}.prologue-town .voxel{transform:scale(.67);transform-origin:center bottom;margin-top:-10px}.prologue-town>span{font-size:8px}.prologue-copy{gap:11px}.prologue-copy p{font-size:13px;line-height:1.8}.prologue-copy .prologue-role{font-size:12px}.prologue-background{margin-top:17px}.prologue-actions{position:sticky;bottom:0;padding:10px 0 2px;box-shadow:0 -12px 14px var(--panel)}}
