/* Map-first command deck. Surfaces stay readable at desktop and touch breakpoints. */
.brand { width:100%; display:flex; align-items:center; justify-content:flex-start; gap:10px; padding:0 4px; text-decoration:none; }
.brand .brand-mark { width:42px; height:46px; flex:none; transform:none; }.brand-mark img { width:100%; height:100%; object-fit:contain; }.brand .brand-word { display:flex; flex-direction:column; align-items:flex-start; font-family:var(--sans,system-ui); font-size:23px; font-weight:750; line-height:1; letter-spacing:-1.2px; color:#f1ebdb; white-space:nowrap; }.brand .brand-word>span { display:inline; color:inherit; }.brand .brand-word b { color:#d4b777; font-weight:750; }.brand .brand-word small { font-size:10px; font-family:var(--mono,monospace); font-weight:400; letter-spacing:2.7px; margin-top:8px; color:#a6b7b6; }.brand-note { padding:12px 4px 23px; font-size:10px; color:#a4b7b9; }
/* Reserve the heading, operation dock, news and fixed turn controls below the map. */
body[data-screen=world] .world-theater { height:max(400px,calc(100dvh - var(--sticky-header,147px) - 280px)); max-height:none; grid-template-columns:minmax(0,1fr); position:relative; }
body[data-screen=world] .theater-sidebar { position:absolute; width:238px; right:12px; top:14px; bottom:65px; z-index:4; overflow:auto; border:1px solid #6e827e; box-shadow:0 7px 24px #03151d60; background:#152d39ed; backdrop-filter:blur(8px); padding:14px; border-radius:3px; transition:opacity .2s; }
body[data-screen=world] .theater-map { width:100%; }body[data-screen=world] .theater-map .map-canvas { right:200px; }
body[data-screen=world] .map-mission { bottom:57px; width:245px; }body[data-screen=world] .command-heading { height:58px; border-bottom-color:#7e7451; background:linear-gradient(90deg,#182d36,#11222b); }.command-heading h1 { font-size:20px; letter-spacing:.7px; }.command-phase>span { background:#ad936122; }.world-news { background:#142833; }
body[data-screen=world] .operations-dock { border-top:1px solid #768274; background:#18303b; }body[data-screen=world] .theater-map:before { content:''; position:absolute; inset:0; z-index:1; pointer-events:none; background:repeating-linear-gradient(0deg,transparent 0 4px,#a4c8c203 4px 5px); }
.turnbar .btn-primary { position:relative; min-width:160px; border:1px solid #d1bb7c; background:linear-gradient(#57705a,#314a3e); box-shadow:inset 0 1px #bfc9a53b,0 3px 10px #0b27142b; }.turnbar .turn-counter { font:10px var(--mono,monospace); color:#c5d3bb; border:1px solid #90a17a66; padding:3px 6px; margin-left:9px; letter-spacing:.5px; }
.work-hud { position:fixed; left:calc(var(--nav,176px) + 14px); bottom:85px; width:330px; max-width:calc(100vw - 28px); z-index:28; background:#152d38f5; color:#dbe3d7; border:1px solid #9e9b75; box-shadow:0 8px 26px #07192370; border-radius:3px; font-size:12px; resize:both; overflow:auto; min-width:270px; min-height:54px; max-height:calc(100dvh - 180px); backdrop-filter:blur(8px); }.work-hud.minimized { width:270px!important; height:auto!important; resize:none; }.work-hud header { display:flex; align-items:center; gap:8px; position:sticky; top:0; background:#233d46; padding:10px 12px; border-bottom:1px solid #63776c; cursor:move; }.work-hud header strong { flex:1; font-size:12px; color:#ead6a2; }.work-hud button { font:inherit; color:inherit; border:1px solid #64796d; background:#304e53; cursor:pointer; border-radius:2px; min-height:30px; padding:4px 8px; }.work-hud .work-body { padding:10px 12px; font-size:var(--work-font,12px); }.work-hud .work-task { padding:9px 0; border-bottom:1px solid #68807542; }.work-task>div { display:flex; justify-content:space-between; gap:10px; }.work-task strong { font-weight:500; }.work-task small { display:block; margin-top:5px; color:#acbcb1; font-size:.85em; line-height:1.5; }.work-task .work-meter { height:3px; background:#465e5d; margin-top:8px; }.work-meter i { display:block; height:100%; background:#d1b875; }.work-hud footer { display:flex; gap:5px; padding:8px 12px; align-items:center; color:#a8b8a7; font-size:10px; }.work-hud footer span { margin-right:auto; }.work-hud.minimized .work-body,.work-hud.minimized footer { display:none; }.director-modes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.director-modes label { display:flex; justify-content:space-between; align-items:center; gap:8px; background:#e6ead8; padding:12px; font-size:12px; }.director-modes select { min-width:100px; min-height:34px; }.campaign-roadmap { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }.campaign-stage { border:1px solid #b3bda5; padding:14px; background:#eceede; }.campaign-stage.done { background:#d2ddc3; border-color:#7e9d73; }.campaign-stage.current { outline:2px solid #b69b5f; }.campaign-stage small { color:#7b876e; font-size:10px; }.campaign-stage strong { display:block; margin:7px 0; color:#3b573f; font-size:13px; }.campaign-stage p { font-size:11px; line-height:1.7; color:#6a785f; }.fusion-checkpoints { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }.fusion-checkpoints>div { background:#e9ecd9; border-left:2px solid #a7b493; padding:12px; }.fusion-checkpoints .done { border-left-color:#927438; background:#e6dfc1; }.fusion-checkpoints strong { font-size:12px; display:block; margin-bottom:5px; }.fusion-checkpoints small { font-size:10px; color:#798365; }.support-draw { display:flex; gap:12px; align-items:center; justify-content:center; background:#1b3540; padding:25px; border:1px solid #ad9b6a; margin:18px 0; }.support-reel { font:32px var(--mono,monospace); color:#d7c28d; width:70px; padding:18px 0; background:#0e2530; border:1px solid #748780; text-align:center; }.support-draw.arrived .support-reel { animation:reel-arrive .75s ease-out both; }.support-draw.arrived .support-reel:nth-child(2) { animation-delay:.1s; }.support-draw.arrived .support-reel:nth-child(3) { animation-delay:.2s; }@keyframes reel-arrive { 0% { transform:translateY(-10px); opacity:.2; filter:blur(3px); } 100% { transform:none; opacity:1; filter:none; } }
@media(min-width:1041px) and (max-width:1230px) { .brand { gap:7px; }.brand .brand-mark { width:33px; }.brand .brand-word { font-size:20px; }.brand .brand-word small { font-size:10px; letter-spacing:1.7px; } }
@media(min-width:581px) and (max-width:1040px) { .brand .brand-mark { width:42px; height:48px; }.brand .brand-word { display:none; } }
@media(max-width:820px) { body[data-screen=world] .world-theater { height:650px; min-height:0; }body[data-screen=world] .theater-sidebar { width:215px; display:block; top:13px; bottom:65px; opacity:.96; }body[data-screen=world] .theater-map .map-canvas { right:140px; }.campaign-roadmap { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:580px) { .brand { display:none; }.work-hud { left:12px; right:12px; bottom:80px; width:calc(100vw - 24px)!important; max-height:45dvh; resize:none; min-width:0; }.work-hud.minimized { width:150px!important; right:auto; }.work-hud header { cursor:default; }.work-hud.minimized header strong { font-size:11px; }.work-hud.minimized header [data-work=expand] { display:none; }.work-hud .work-body { max-height:32dvh; overflow:auto; }body[data-screen=world] .world-theater { height:590px; }body[data-screen=world] .theater-sidebar { display:none; }body[data-screen=world] .theater-map .map-canvas { inset:42px -170px 38px -95px; }body[data-screen=world] .map-mission { width:calc(100% - 26px); bottom:57px; }.turnbar .btn-primary { min-width:0; }.turnbar .turn-counter { font-size:10px; margin-left:5px; padding:2px 4px; }.director-modes { grid-template-columns:1fr; }.fusion-checkpoints { grid-template-columns:1fr; }.campaign-roadmap { gap:7px; }.campaign-stage { padding:11px; }.campaign-stage strong { font-size:12px; } }
@media(prefers-reduced-motion:reduce) { .support-reel { animation:none!important; }.theater-sidebar { transition:none; } }

.creator-donation { display:flex; align-items:center; gap:26px; padding:22px; background:#e4e8d5; border:1px solid #acb79b; margin:20px 0; }.creator-donation img { width:180px; height:180px; border:8px solid white; }.creator-donation code { display:block; overflow-wrap:anywhere; font-size:13px; padding:15px 0; color:#344e3a; }.creator-projects { display:grid; grid-template-columns:1fr 1fr; gap:12px; }.creator-projects a { border:1px solid #a5b494; padding:16px; color:#405b45; text-decoration:none; }.creator-projects strong,.creator-projects span { display:block; }.creator-projects span { font-size:11px; margin-top:8px; color:#728268; }@media(max-width:580px) { .creator-donation { flex-direction:column; gap:15px; padding:17px; }.creator-projects { grid-template-columns:1fr; } }
.brand .brand-mark { display:flex; align-items:center; justify-content:center; grid-template-columns:none; grid-template-rows:none; }.brand .brand-mark img { flex:none; width:42px; height:46px; max-width:100%; }.turnbar .btn-primary .turn-counter { color:#30402f; border-color:#6d745a; background:#f3e6bc; }
.online-pending { position:fixed; inset:0; z-index:10000; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:25px; background:#102935dd; color:#f1e2b8; backdrop-filter:blur(3px); text-align:center; }.online-pending[hidden] { display:none; }.online-pending button { margin-top:18px; border:1px solid #d9bf80; background:#d5c387; padding:12px 20px; color:#273f34; cursor:pointer; }.ranked-banner { display:flex; align-items:center; gap:10px; background:#304a49; color:#dcd5a3; padding:9px 16px; border-bottom:1px solid #b3a671; font-size:11px; }.ranked-banner a { color:#e2cd8c; margin-left:auto; }.ranked-banner b { font-weight:500; }
.logo-setup>summary{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid #49655c;border-radius:6px}.logo-setup>summary svg{width:42px;height:42px;flex-shrink:0}.campaign-advanced{margin-top:18px;padding:14px;border:1px solid #3f554e;border-radius:5px}.campaign-advanced>summary{cursor:pointer;padding:5px}.campaign-advanced[open] .form-field{margin-top:14px}.pwa-update{position:fixed;left:16px;bottom:100px;max-width:330px;z-index:130;background:#273d35;color:#eef3df;padding:16px;display:flex;align-items:start;gap:12px;border:1px solid #9ab491;border-radius:7px;box-shadow:0 12px 40px #0008;font-size:13px;line-height:1.6}.pwa-update button{color:inherit;background:transparent;border:0;font-size:22px;cursor:pointer}.mobile-region-access{display:none}@media(max-width:800px){.mobile-region-access{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px;background:#18312d;border:1px solid #527564;border-radius:5px;margin:10px 0}.modal-body .detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-body .detail-stat strong{font-size:18px}.action-stack button,.modal-actions button{min-height:44px}.campaign-advanced{margin:14px 0}.logo-setup>summary{flex-wrap:wrap}.logo-setup>summary span{font-size:12px}.pwa-update{left:12px;right:12px;bottom:85px;max-width:none}.data-table th,.data-table td{padding:10px;font-size:12px}.table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior:contain}}
/* Keep map controls out from under the floating headquarters panel. */
body[data-screen=world] .theater-map>.map-top{padding-right:280px;flex-wrap:wrap;gap:10px}
body[data-screen=world] .theater-map>.map-tools{right:266px}
@media(min-width:581px) and (max-width:820px){body[data-screen=world] .theater-map>.map-top{padding-right:252px}body[data-screen=world] .theater-map>.map-tools{right:242px}}
@media(max-width:580px){body[data-screen=world] .theater-map>.map-top{padding-right:14px}}
.support-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:12px 0 18px}.support-results span{padding:9px;border:1px solid #718366;border-radius:4px;font-size:12px}
@media(max-width:580px){
 .topbar{grid-template-columns:minmax(0,1fr);grid-template-areas:"identity" "controls" "status";gap:7px;padding:8px 12px}
 .topbar .organization-title{width:100%;align-items:center;gap:10px}
 .topbar .organization-title>div:last-child{flex:1;min-width:0}
 .topbar .org-name{max-width:calc(100vw - 90px);font-size:14px}
 .topbar .org-context{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}
 .topbar .org-resources{display:flex;gap:12px;white-space:nowrap;margin-top:3px}
 .topbar .top-actions{width:100%;justify-self:stretch;justify-content:flex-end;flex-wrap:nowrap}
 .topbar .top-actions .date.timeline-clock{flex:1;min-width:0;justify-content:center}
 .topbar .company-barometer{width:100%;min-width:0}
}
@media(max-width:580px){
 body[data-screen=world] .world-theater{height:auto;min-height:0}
 body[data-screen=world] .theater-map{height:auto;display:flex;flex-direction:column;min-height:0}
 body[data-screen=world] .theater-map .map-canvas{position:relative;inset:auto;width:100%;height:280px;flex:none;order:1}
 body[data-screen=world] .theater-map .map-tools{position:relative;inset:auto;order:2;align-self:flex-end;margin:8px 12px}
 body[data-screen=world] .theater-map .map-legend{order:3}
 body[data-screen=world] .mobile-region-access{order:4;margin:10px 12px}
 body[data-screen=world] .map-orders{order:5}
 body[data-screen=world] .map-mission{position:relative;inset:auto;width:auto;margin:13px;order:6}
}
