/* OMNIA 0.8: an illustrated atlas and household manuscript. */
:root{--ink:#161411;--ink-soft:#29241d;--paper:#e8d9b8;--paper-dark:#d7c49e;--text:#352c21;--muted-ink:#796b52;--accent:#795b2c;--rule:#b5a17b;--blue:#53614b;--danger:#8d332d;--gold:#bc9a57;--mute:#8f7c5a;--line:#b8a071;--rail:92px;--bar:86px;--panel:430px;--h:'Palatino Linotype',Palatino,Georgia,serif;--b:Georgia,'Times New Roman',serif;--ui-scale:1;--bottom-nav:74px}
body{background:#17120e;color:var(--text);font-family:var(--b)}
button{border-radius:1px;border-color:#a48b5c;transition:background .12s,box-shadow .12s;color:var(--text);font-family:var(--b)}button:hover{background:#b59a6321;border-color:#7f622f}button:disabled{opacity:.65}.primary,button.primary{background:linear-gradient(#793b33,#55231f);border:1px solid #bc985a;box-shadow:inset 0 0 0 2px #3c1a1680,inset 0 1px #d6b47766,0 2px 3px #2a1a1326;color:#f1e3bd;font-weight:400}.primary:hover{background:linear-gradient(#8f493b,#622b22);border-color:#d0b074}.secondary{background:linear-gradient(#ede0bf,#d9c59b);border-color:#b0986b;color:#3b3323}button.active{background:linear-gradient(#8b7448,#5a492f);border-color:#95794a;color:#fff0c7}.eyebrow,.section-kicker{color:#876332;font:11px/1.5 Georgia,serif;letter-spacing:.15em}.wide{min-height:44px}
.topbar{height:var(--bar);padding:0 25px 0 23px;gap:24px;background:linear-gradient(180deg,#2b251de6,#100f0de8),repeating-linear-gradient(2deg,#28221b 0 2px,#191611 3px 5px);border-bottom:3px double #836a3c;box-shadow:0 4px 14px #0007;color:#dfcfac}.topbar .brand{display:block}.brand{display:block;position:relative;width:188px;flex:none;font:28px/1 var(--h);letter-spacing:.19em;color:#d9c291;text-shadow:0 2px #000}.brand span{display:block;border:0;margin:7px 0 0;padding:0;font:9px/1.4 Georgia,serif;letter-spacing:.23em;color:#a79879}.resources{gap:25px;justify-content:flex-start}.resources>span{grid-template-columns:auto 1fr;gap:4px 7px}.resources label{color:#a7997d;font:9px/1.2 Georgia,serif;letter-spacing:.13em;margin-bottom:3px}.resources b{font:22px/1.15 Georgia,serif;color:#eadcba;text-shadow:0 1px #000}.resources i{color:#bda060;font-size:17px}.resources small{font:10px/1.2 Georgia,serif;color:#b7ad89}.topbar .time{min-width:200px;border:1px solid #6e5b39;border-radius:0;background:linear-gradient(#191611,#262018);box-shadow:inset 0 0 0 2px #0005;padding-bottom:16px}.time button{color:#d5ba7d}.time button:hover{background:#b2965922}#date{font:14px Georgia,serif;color:#e5d4ad;min-width:124px}#clock-status{font:9px Georgia,serif;color:#ac9e7f}.topbar .quiet{border-color:#705b35;color:#d1b77f;border-radius:50%;width:35px;min-height:35px;background:#17140e}
.campaign-nav{background:linear-gradient(90deg,#0d0d0b,#27211a 55%,#0d0d0b);border-right:3px double #655334;padding:17px 8px 10px;gap:5px;color:#b8a580}.nav-item{min-height:77px;border-radius:0;gap:5px;color:#b4a17d;border:1px solid transparent;font:12px/1.2 Georgia,serif;letter-spacing:.025em}.nav-icon{display:grid;place-items:center;width:42px;height:40px;border:1px solid #6e5c3d;background:linear-gradient(140deg,#3b3325,#171510 60%);box-shadow:inset 0 0 0 2px #17130d,0 2px 4px #0008;color:#bca16a;clip-path:polygon(9% 0,91% 0,100% 10%,100% 90%,91% 100%,9% 100%,0 90%,0 10%)}.nav-icon svg{width:29px;height:29px;filter:drop-shadow(0 1px 0 #000)}.nav-item:hover{background:#7e663323;color:#ead8af}.nav-item.active{background:linear-gradient(90deg,#431d1b,#71312a 45%,#431d1b);border-color:#84663b;color:#f3dfad;box-shadow:inset 0 0 0 2px #3b1c19}.nav-item.active .nav-icon{color:#ecd498;background:linear-gradient(#634f32,#2b2117);border-color:#bca16c}.nav-item em{background:#963e31;color:#f6e5b9;border:1px solid #b28b50;box-shadow:0 1px 3px #0005;font-size:9px}.nav-item #nav-army-count{background:#433c2c;color:#d6c398}.nav-home{font:9px Georgia,serif;color:#907e5e}
.map-stage{background:#242d26;box-shadow:inset 0 0 0 5px #433523;transition:none}#map{filter:none}.realm-banner{left:22px;top:20px;width:346px;max-width:calc(100% - 122px);padding:14px 20px 13px;border:16px solid transparent;border-image:url('ui/chronicle-frame.webp') 200 140 200 140 / 18px 16px / 0 stretch;background:#e3d3ae url('ui/vellum.webp') center/640px auto;box-shadow:0 8px 28px #0006;border-radius:0;color:#3c3020}.realm-banner h1{font:23px/1.2 var(--h);color:#352a1b;margin:4px 0 8px}.realm-banner .eyebrow{font-size:9px;color:#7d5a2c}.realm-banner p{color:#635039;font:12px/1.45 Georgia,serif}.realm-status{color:#88714b;font:10px/1.4 Georgia,serif}.realm-banner h1 i{width:11px;height:13px;clip-path:polygon(0 0,100% 0,100% 60%,50% 100%,0 60%);box-shadow:none}.situation-prompt{top:207px;left:26px;background:linear-gradient(100deg,#2b221aef,#201a14ee);border:1px solid #8f7141;border-left:3px solid #b18c4c;color:#e6d7b5;box-shadow:0 5px 18px #0005;padding:13px 15px;border-radius:0;max-width:338px}.situation-prompt b{font:14px/1.35 Georgia,serif;color:#e4d2a6}.situation-prompt small{font:11px/1.5 Georgia,serif;color:#b9a783}.situation-prompt>span{color:#c7a15f}.battle-status{background:#4c201bf0;border:1px solid #b29154;color:#f2dcb0;top:207px;left:26px;border-radius:0}
.map-tools{top:20px;right:20px;border:3px double #897047;border-radius:0;background:linear-gradient(#383023,#171612);box-shadow:0 5px 16px #0008;grid-template-columns:repeat(2,38px)}.map-tools button{color:#d8c08a;font-size:19px;min-width:38px;min-height:40px}.map-tools button:hover{background:#94774730}.map-tools button.active{background:#6a4b2e;color:#f5dfae}.map-scale{color:#f0dfbc;text-shadow:0 1px 4px #000}.map-scale span{border-color:#e1c788}.map-scale b{font:11px Georgia,serif}.map-shortcuts{background:#16130dd9;color:#c4b18b;border:1px solid #76613b;border-radius:0;font:11px Georgia,serif}.map-shortcuts span{color:#8c734a}.map-stage>canvas#minimap{border:5px double #b5975b;border-radius:0;box-shadow:0 4px 18px #0009}
#info-dialog.campaign-inspector{background:#e3d1a8 url('ui/vellum.webp') center/640px auto;border:0;border-left:3px double #826639;box-shadow:-12px 0 30px #0006;overflow:hidden}#info-dialog.campaign-inspector::after{content:'';position:absolute;inset:0;pointer-events:none;border:27px solid transparent;border-image:url('ui/chronicle-frame.webp') 200 140 200 140 / 32px 24px / 0 stretch;z-index:5}.inspector-top{height:67px;padding:0 35px 0 39px;background:linear-gradient(#292219,#17140f);border-bottom:3px double #9a7a43;box-shadow:0 3px 10px #4e331838;backdrop-filter:none}.inspector-top>span{font:10px Georgia,serif;letter-spacing:.16em;color:#d0b887}.inspector-top .dialog-close{position:static;padding:0;width:35px;min-width:35px;min-height:35px;border:1px solid #86663a;border-radius:50%;background:#301a13;color:#cfb177;font:23px Georgia,serif}.inspector-tools{display:flex;gap:8px;align-items:center}#inspector-expand{display:none}#info-content{height:calc(100% - 67px);overflow:auto;overscroll-behavior:contain;padding:27px 35px 45px;scrollbar-color:#ad8f56 #d7c29a;background:linear-gradient(90deg,#64401d0e,transparent 20%,transparent 80%,#64401d13)}#info-dialog h2{font:calc(29px * var(--ui-scale))/1.2 var(--h);color:#47301d;margin:7px 0 14px;letter-spacing:-.02em}#info-dialog h3{font:calc(19px * var(--ui-scale))/1.25 var(--h);color:#795330;margin:25px 0 13px;position:relative}#info-dialog h3::after{content:'';display:block;height:3px;width:72px;margin-top:8px;background:linear-gradient(90deg,#977442,transparent)}#info-dialog p,#info-dialog li{color:#675039;font:calc(15px * var(--ui-scale))/1.65 Georgia,serif}#info-dialog b,#info-dialog strong{color:#3f2b1d}#info-dialog small{color:#6e5535}#info-dialog button{font-size:calc(14px * var(--ui-scale));line-height:1.4}#info-dialog button.primary{color:#f4e3bc}#info-dialog input,#info-dialog select{border:1px solid #aa8f5e;background:#efe4c8;color:#493723;border-radius:0;padding:11px}.desk-summary,.route-metrics{gap:1px;background:#ad93654d;border-top:1px solid #a88a54;border-bottom:1px solid #a88a54;margin:20px 0}.desk-summary>div,.route-metrics>div{padding:12px 10px;background:#f2e7cc6b;border:0;border-radius:0}.desk-summary small,.route-metrics small{font:10px/1.5 Georgia,serif;letter-spacing:.06em;color:#876a42}.desk-summary b,.route-metrics b{font:22px/1.3 Georgia,serif}.desk-card{border:1px solid #a68c5c;border-radius:0;background:linear-gradient(#f3e8c94d,#ead7af33);box-shadow:inset 0 0 0 3px #e6d6b355;padding:15px}.desk-card h4{color:#51371f;font:19px var(--h)}.desk-card.urgent{background:#a55b3220;border-left:3px solid #955037}.roster-row{position:relative;border:0;border-bottom:1px solid #b79a6a;background:linear-gradient(90deg,#f4e9ce65,transparent);border-radius:0;padding:15px 11px;box-shadow:none;margin-bottom:2px}.roster-row:hover{background:#ac8a4e21;border-color:#906b34}.roster-row>strong{font:19px/1.3 var(--h)}.roster-row small,.roster-row em{font:12px/1.5 Georgia,serif;color:#886b45}.status-chip{border-radius:1px;background:#aa956032;color:#634b2d;font:10px Georgia,serif;border:1px solid #b8a071}.status-chip.danger{background:#742f25;color:#f4deb5;border-color:#ad8251}.status-chip.good{background:#596044;color:#f5e9c9;border-color:#938455}.disabled-reason,#info-dialog .disabled-reason{color:#8a4632;font:calc(12px * var(--ui-scale))/1.5 Georgia,serif}.desk-disclosure{border-top-color:#b29a6d}.desk-disclosure summary{color:#795934;font:15px Georgia,serif}.person-summary{background:#f2e5c347;border:0;border-bottom:1px solid #b89a68;border-radius:0;box-shadow:none}.person-summary strong{color:#4e3522;font-family:var(--h)}.person-summary small{color:#8a6c45}.person-summary em{color:#936f3c}.family-seal{background:#5d2d28!important;color:#dfc28a!important;border:2px solid #ad8c4c!important;border-radius:50% 50% 45% 45%!important}.formation-line{background:#e8d5ac80;border-color:#b39a6a;border-radius:0}.turning-points{border-color:#9d7746}.turning-points p{color:#715439!important}.panel-notice{color:#866943!important}.hover{background:#201a13f5;color:#e6d3ac;border:3px double #ad8a4c;border-radius:0;font-family:Georgia,serif;box-shadow:0 6px 20px #0007}.hover small{color:#b9a783}.context-menu{background:#241d16f5;border:3px double #a48750;border-radius:0;color:#dec89b}.context-menu strong{color:#e6d2a5}.context-menu button{color:#d7c39d}#toast{background:#2c2419;border:3px double #ab8950;border-radius:0;color:#f1dfba;font:14px Georgia,serif;box-shadow:0 7px 24px #0006}.command-mode{background:#251e17f5;border:3px double #a88a51;border-radius:0;color:#e2cd9e}.command-mode strong,.command-mode small{color:#dbc69b}.command-mode button{color:#dfc99c;border-color:#7d6238}
/* A branching household on the folio, built from actual parents, partners and children. */
.dynasty-chronicle{position:relative;margin:25px -5px 20px;padding:12px 0 19px;border-top:1px solid #ac8c54;border-bottom:1px solid #ac8c54;background:radial-gradient(ellipse at center,#fff6d533,transparent 75%)}.chronicle-inscription{text-align:center;font:italic 14px/1.5 var(--h);color:#947244;margin:0 0 22px}.tree-level{position:relative;display:flex;justify-content:center;align-items:flex-start;gap:14px;margin:0 auto;isolation:isolate}.tree-level+.tree-level{margin-top:35px}.tree-level+.tree-level::before{content:'';position:absolute;left:50%;top:-36px;height:35px;border-left:2px solid #ad8b50;z-index:-1}.tree-level.tree-children{display:grid;grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:8px;padding-top:14px}.tree-children::after{content:'';position:absolute;left:14%;right:14%;top:0;border-top:2px solid #ad8b50;z-index:-1}.tree-children .tree-person::before{content:'';position:absolute;height:14px;border-left:1px solid #ad8b50;top:-15px;left:50%}.tree-person{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;width:105px;min-width:0;max-width:116px;margin:auto;min-height:153px;padding:6px 3px 7px!important;border:1px solid transparent!important;background:transparent;border-radius:0;color:#4c3521;text-align:center}.tree-person:hover{border-color:#b0925c!important;background:#a8844921}.tree-role{font:9px/1.35 Georgia,serif;letter-spacing:.07em;text-transform:uppercase;min-height:13px;color:#6c512e}.tree-person strong{font:calc(16px * var(--ui-scale))/1.2 var(--h)!important;overflow-wrap:anywhere}.tree-person small{font:calc(11px * var(--ui-scale)) Georgia,serif!important;color:#6e5535}.tree-person.is-ancestor{opacity:.8}.tree-person.is-heir .tree-role{color:#833c2e}.illuminated-seal{display:block;width:61px;height:75px;filter:drop-shadow(0 3px 2px #6a491d44)}.illuminated-seal svg{width:100%;height:100%}.seal-edge{fill:#8e6938;stroke:#cdb377;stroke-width:1.6}.seal-field{fill:#68342d;stroke:#38271a;stroke-width:1}.seal-quarter{fill:#4e5740}.seal-lily{fill:#d5bc7b;stroke:#e3cf91;stroke-width:.6}.illuminated-seal text{fill:#e9d4a1;font:10px Georgia,serif}.seal-1 .seal-field{fill:#3f5552}.seal-1 .seal-quarter{fill:#6b723f}.seal-2 .seal-field{fill:#5b4c39}.seal-2 .seal-quarter{fill:#605d49}.marriage-knot{align-self:center;color:#a58448;font:26px Georgia,serif;margin:0 -7px 30px}.chronicle-colophon{font:italic 11px Georgia,serif;text-align:center;color:#94764b;margin-top:22px}.collateral-kin{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.collateral-kin .tree-person{min-height:144px}.chronicle-title{padding-bottom:8px;text-align:center}.chronicle-title .eyebrow{display:block}.chronicle-title h2{font-size:calc(29px * var(--ui-scale))!important}#info-dialog .chronicle-title p{font:italic 14px/1.5 var(--h)!important;margin:0 0 4px}#info-dialog .chronicle-title h2{margin:7px 0 9px}.chronicle-ledger{display:flex;justify-content:center;gap:18px;text-align:center;color:#7c603c;font:12px Georgia,serif;margin-top:14px}
.welcome{background:#e1cfa9 url('ui/vellum.webp') center/650px auto;border:4px double #b1935a;border-radius:0;box-shadow:0 20px 100px #000c;color:#503b23}.welcome-art{background-image:linear-gradient(180deg,#0f0b0800,#0f0b0866 60%,#0f0b08e6),url('hero_knight.webp');background-position:center,45% 20%;border-right:3px double #9d7d46}.welcome-art h2{color:#e5c88e;font-family:var(--h)}.welcome-art p{color:#e5d2a8}.welcome-art small{color:#bca576}.welcome-body{background:linear-gradient(90deg,#5c3e1d22,transparent 25%);padding:29px 30px}.welcome-body h3{color:#5d3e21;font:27px var(--h)}.welcome label{color:#8a693b;font-family:Georgia,serif}.welcome label b{color:#715027}.welcome select{background:#f0e3c3;border-color:#ab8c56;color:#5a4026}.setup-note,.welcome-note{color:#8b704d}.start-actions{background:linear-gradient(#decca400,#e2cfaa 25%);border-top-color:#b49a68}.start-choices button,.start-choices button small{color:#7e5b30}.victory-choices button{color:#7e5b30}.victory-choices button.active{color:#f5e3ba}.scenario-list button{border-color:#af8d57;color:#5c4328}.scenario-list b{color:#543a24}.scenario-list small{color:#886b47}#loading{background:#17130f;color:#cdb17b;font-family:var(--h)}
@media(min-width:1400px){:root{--panel:460px;--rail:100px}.campaign-nav{padding-top:24px}.nav-item{min-height:82px}}
@media(max-width:1100px) and (min-width:761px){.topbar{gap:14px;padding-left:18px;padding-right:16px}.brand{width:155px;font-size:25px}.brand span{font-size:8px}.resources{gap:17px}.resources>span:nth-child(3){display:none}.resources b{font-size:19px}:root{--panel:385px;--rail:80px}.nav-item{font-size:11px}.realm-banner{width:300px;max-width:calc(100% - 110px);padding:11px 10px}.realm-banner h1{font-size:20px}.map-shortcuts{display:none}}
@media(max-width:760px){:root{--bar:104px;--rail:0px;--panel:100%;--bottom-nav:74px}.topbar{height:104px;display:grid;grid-template-columns:1fr auto;grid-template-rows:55px 47px;gap:0 8px;padding:0 12px;border-bottom:3px double #836a3c}.brand{font-size:22px;width:auto;grid-column:1;grid-row:1;letter-spacing:.14em}.brand span{font-size:7px;letter-spacing:.13em;margin-top:5px}.resources{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;height:43px;border-top:1px solid #77603c66;width:100%;align-content:center}.resources>span,.resources>span:nth-child(2),.resources>span:nth-child(3){display:grid!important;grid-template-columns:15px 1fr;gap:2px 3px;padding:0 5px;border-left:1px solid #51442c66}.resources>span:first-child{border-left:0}.resources label{font-size:9px;margin:0;letter-spacing:.02em;grid-column:1/-1}.resources b{font-size:16px;white-space:nowrap}.resources i{font-size:13px}.resources small{display:none}.topbar .time{grid-column:2;grid-row:1;min-width:184px;width:184px;grid-template-columns:44px 94px 44px;padding:0;margin:0;height:47px}.time button{min-height:44px!important;min-width:44px!important;padding:3px!important;font-size:12px}#date{font-size:11px;min-width:94px}.topbar #help{display:none}#clock-status{display:none}.campaign-nav{position:fixed;top:auto;bottom:0;left:0;right:0;width:auto;height:calc(var(--bottom-nav) + env(safe-area-inset-bottom));padding:3px 3px calc(5px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;gap:2px;border:0;border-top:3px double #8b7041;background:linear-gradient(#32271d,#11100d);z-index:40}.nav-item{min-height:63px;height:63px;width:100%;font:11px/1.2 Georgia,serif;padding:4px 1px;gap:3px}.nav-icon{width:29px;height:29px;min-height:0;background:transparent;border:0;box-shadow:none;clip-path:none}.nav-icon svg{width:26px;height:26px}.nav-item em{right:3px;top:2px;font-size:8px;min-width:13px}.nav-item.active{border:1px solid #80643b;background:linear-gradient(#5b2923,#351a17)}.nav-item.active .nav-icon{background:transparent}.nav-spacer,.nav-home{display:none}.map-stage,body[data-inspector=true] .map-stage{inset:104px 0 calc(var(--bottom-nav) + env(safe-area-inset-bottom)) 0;right:0;border:0}.realm-banner{top:12px;left:11px;width:263px;max-width:calc(100% - 70px);padding:8px 9px;border-width:13px;border-image-width:16px 13px;box-shadow:0 4px 16px #0006}.realm-banner h1{font-size:18px;margin:2px 0 5px}.realm-banner p{font-size:10px;line-height:1.4}.realm-banner .eyebrow{font-size:8px;letter-spacing:.08em}.realm-status{display:none}.map-tools{top:12px;right:10px;grid-template-columns:44px;border-width:2px}.map-tools button{min-width:44px!important;min-height:44px!important;font-size:18px}.map-tools button:nth-child(n+5){display:none}.situation-prompt{top:auto;bottom:17px;left:12px;max-width:calc(100% - 24px);padding:8px 11px}.situation-prompt b{font-size:12px}.situation-prompt small{display:none}.situation-prompt>span{font-size:19px}.map-scale{bottom:66px;left:14px}.map-scale b{font-size:9px}.map-shortcuts,.minimap,.map-stage>canvas#minimap{display:none!important}.battle-status{top:auto;bottom:17px;left:12px;max-width:calc(100% - 24px)}#info-dialog.campaign-inspector{inset:auto 0 calc(var(--bottom-nav) + env(safe-area-inset-bottom)) 0;width:100%;max-width:100%;height:min(67dvh,calc(100dvh - 115px - var(--bottom-nav)));max-height:calc(100dvh - 104px - var(--bottom-nav));border-left:0;border-top:3px double #8f7142;box-shadow:0 -10px 28px #0007}#info-dialog.campaign-inspector.expanded{height:calc(100dvh - 104px - var(--bottom-nav));max-height:none}#info-dialog.campaign-inspector::after{border-width:20px;border-image-width:24px 18px}.inspector-top{height:60px;padding:0 24px 0 28px;gap:10px}.inspector-top>span{font-size:9px;letter-spacing:.1em}.inspector-top .dialog-close{width:44px;min-width:44px;min-height:44px;font-size:21px}#inspector-expand{display:block;border:1px solid #7f653c;border-radius:50%;width:44px;min-width:44px;min-height:44px;padding:0;background:#292017;color:#d9bf86;font:18px Georgia,serif}#info-content{height:calc(100% - 60px);padding:19px 26px 38px}#info-dialog h2{font-size:calc(25px * var(--ui-scale))}#info-dialog h3{font-size:calc(19px * var(--ui-scale))}#info-dialog p,#info-dialog li{font-size:calc(14px * var(--ui-scale));line-height:1.65}#info-dialog button{font-size:calc(13px * var(--ui-scale));min-height:44px}.desk-actions{gap:8px}.desk-summary b,.route-metrics b{font-size:21px}.desk-summary>div,.route-metrics>div{padding:10px 9px}.desk-summary small,.route-metrics small{font-size:9px}.tree-person{width:88px;min-height:142px}.tree-person strong{font-size:calc(14px * var(--ui-scale))!important}.tree-role{font-size:11px;min-height:16px;letter-spacing:0}.illuminated-seal{width:53px;height:65px}.tree-level{gap:9px}.tree-level+.tree-level{margin-top:26px}.tree-level+.tree-level::before{top:-27px;height:26px}.tree-children .tree-person::before{height:14px;top:-15px}.marriage-knot{font-size:20px;margin:0 -5px 30px}.chronicle-inscription{font-size:12px}.chronicle-title h2{font-size:calc(25px * var(--ui-scale))!important}.chronicle-colophon{font-size:11px}.welcome[open]{max-height:calc(100dvh - 20px);border-width:3px}.welcome-art{min-height:165px!important;padding:25px 24px!important}.welcome-art h2{font-size:34px!important}.welcome-body{padding:23px 22px}.start-actions{margin-left:-22px;margin-right:-22px;padding-left:22px;padding-right:22px}.context-menu{max-width:calc(100vw - 24px)}.command-mode{left:10px;right:10px;bottom:12px;max-width:none}.command-mode small{max-width:100%;font-size:11px}}
@media(max-width:380px){.brand{font-size:19px}.brand span{font-size:6px;letter-spacing:.09em}.topbar{padding:0 8px;gap:0 5px}.topbar .time{width:181px;min-width:181px;grid-template-columns:44px 91px 44px}#date{min-width:91px;font-size:10px}.resources b{font-size:14px}#info-content{padding-left:23px;padding-right:23px}.tree-person{width:79px}.tree-children{gap:4px}.tree-role{font-size:11px}.tree-person strong{font-size:calc(13px * var(--ui-scale))!important}}
/* The settlement desk uses the same folio as the campaign inspectors. */
#selection.town-card{background:#e3d1a8 url('ui/vellum.webp') center/640px auto;border:14px solid transparent;border-image:url('ui/chronicle-frame.webp') 200 140 200 140 / 19px 16px / 0 stretch;border-radius:0;padding:27px 24px 35px;box-shadow:-12px 0 30px #0006}
#selection h2{font:calc(29px * var(--ui-scale))/1.2 var(--h);color:#47301d}#selection .stat-grid{border-color:#b49b6b}#selection .stat-grid b{color:#4e3821;font-family:var(--h)}#selection .stat-grid small{color:#775e3a}#selection .owner,#selection p{color:#725636}#selection .upgrades button{background:linear-gradient(#f4e6c8aa,#dbc49366);border-color:#ad8e55;border-radius:0;color:#573b21;box-shadow:inset 0 0 0 2px #f0dfb94d}#selection .upgrades button:hover{background:#baa06a44}#selection .upgrades button span{color:#78562e}#selection .upgrades em{color:#7c6140}#selection .card-close{color:#79562e;min-width:44px;min-height:44px}#selection .diorama canvas{filter:saturate(.65) sepia(.1)}#selection .primary{color:#f4e2b7}#selection .section-label,#selection label{color:#795a32}
@media(max-width:760px){#selection.town-card{inset:auto 0 calc(var(--bottom-nav) + env(safe-area-inset-bottom));height:min(67dvh,calc(100dvh - 115px - var(--bottom-nav)));max-height:calc(100dvh - 104px - var(--bottom-nav));padding:22px 15px 30px;border-width:12px}#selection .upgrades{gap:8px}#selection .upgrades button{padding:12px 9px}#selection .upgrades button em{font-size:calc(12px * var(--ui-scale));line-height:1.55}}
/* Keep secondary workflows in the same material palette. */
#welcome{background:#e1cfa9 url('ui/vellum.webp') center/650px auto;border:4px double #b1935a;border-radius:0;box-shadow:0 20px 100px #000c}
.welcome-body .start-choices button.active,.welcome-body .victory-choices button.active{background:linear-gradient(#795244,#573126);border-color:#a8884f;color:#f0deac;box-shadow:inset 0 0 0 2px #3f241b55}
.welcome-body .start-choices button.active small{color:#d8c28e}.welcome-body .setup-note,.welcome-note{color:#775d3b}.campaign-presets{background:#a3834820;border-color:#b2935e;border-radius:0}.campaign-presets summary{color:#6e4c2b}.realm-list button,.menu-grid button,.posture-choices button,.rt-name b{color:#644722}.realm-list button{background:#f1e2bd;border-color:#ad8f57}.menu-grid button.primary,.posture-choices button.active{color:#f2dfb4}.formation>span,.formation small,.battle-army-title>small,.rt-row,.rt-head,.settings-label{color:#725834}.formation>b{color:#4e3c26}
@media(max-width:760px){#info-dialog .chronicle-title p{display:none}.dynasty-chronicle{margin-top:12px;padding-top:9px;padding-bottom:12px}.chronicle-inscription{margin-bottom:15px}.tree-person{min-height:116px;padding:4px 2px!important;gap:3px}.illuminated-seal{width:44px;height:54px}.tree-role{font-size:10px;line-height:1.2;min-height:13px}.tree-level+.tree-level{margin-top:17px}.tree-level+.tree-level::before{top:-18px;height:17px}.chronicle-colophon{margin-top:15px}.tree-children .tree-person::before{height:14px;top:-15px}.inspector-top{border-radius:0}.inspector-top::before{display:none}#info-dialog input,#info-dialog select,.welcome-body input[type=search],.welcome-body select{font-size:max(16px,calc(14px * var(--ui-scale)))}#welcome[open]{border-width:3px}.welcome-body .victory-choices button{min-height:44px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Atlas composition: open cartographic furniture; a folio is the one framed reading object. */
.map-stage{background:#667d82;box-shadow:inset 0 0 0 1px #766a4f}
.realm-banner{left:27px;top:24px;width:330px;padding:12px 16px 15px;border:0;border-image:none;background:linear-gradient(90deg,#eee2c3f0 55%,#eee2c3bd 83%,#eee2c300);box-shadow:none}
.realm-banner h1{font-size:26px;letter-spacing:-.025em;margin:7px 0}.realm-banner .eyebrow{letter-spacing:.19em}.realm-banner p{font-size:12px}.realm-status{font-style:italic}
.campaign-nav{border-right:1px solid #78613b;padding-inline:9px;background:linear-gradient(90deg,#191710,#29251b 65%,#17150f)}
.nav-item{border:0;background:none;box-shadow:none;min-height:79px}.nav-icon{border:0;clip-path:none;background:none;box-shadow:none;color:#ad9564}
.nav-item.active{border:0;background:#6c392622;box-shadow:none;color:#f0dab0}.nav-item.active .nav-icon{background:none;border:0;color:#efd393}.nav-item.active::after{content:'';position:absolute;left:16%;right:16%;bottom:6px;height:1px;background:#ac8d52}
.map-tools{border:1px solid #86734e;box-shadow:0 2px 5px #21190e33;background:#e5d8b9ed;gap:0}.map-tools button{color:#493e2c}.map-tools button.active{background:#756345;color:#fff0c7}.map-tools button:hover{background:#c1ad7c66}
.map-shortcuts{border:0;box-shadow:none;background:#eee1bdcf;color:#554b35}.map-shortcuts span{color:#9d8a62}
.map-scale{color:#efe2bd;text-shadow:0 1px 2px #34484b}.map-scale span{border-color:#e5d7ad}
.map-stage>canvas#minimap{border:3px double #c9b582;box-shadow:0 2px 5px #1b282b44}
.situation-prompt{top:183px;border:0;border-left:2px solid #a27b43;background:#e9ddc1ed;color:#59462d;box-shadow:0 2px 5px #352d1b22;max-width:315px;padding:11px 14px}.situation-prompt b{color:#59432b;font-size:13px}.situation-prompt small{color:#766044}.situation-prompt>span{color:#8b6236}
.desk-card{border:0;border-bottom:1px solid #af976047;background:none;box-shadow:none;padding:14px 0;margin:8px 0 16px}.desk-card.urgent,.desk-card.attention,.desk-card.opportunity{background:none;border-left:0}.desk-card.urgent h4{color:#8d3d2b}
.desk-summary,.route-metrics{background:none;gap:12px;border-top:1px solid #b9a17188;border-bottom:1px solid #b9a17188;padding:13px 0}.desk-summary>div,.route-metrics>div{background:none;padding:0 3px}
#info-dialog.campaign-inspector{border-radius:0}#info-content{height:calc(100% - 89px)}
.roster-row{background:none;padding:15px 3px}.person-summary{background:none}.status-chip{border:0;background:#ae9a6933}.desk-actions>button:not(.primary),.posture-choices button{background:transparent;box-shadow:none;border-width:0 0 1px;border-color:#b39a6888}
#selection .upgrade-grid{gap:0 14px}#selection .upgrade-grid button{background:none;border:0;border-bottom:1px solid #b39a6888;border-radius:0;padding:13px 0}#selection .upgrade-grid small{color:#795832}#selection .upgrade-grid em{color:#796749}
@media(max-width:1100px) and (min-width:761px){.realm-banner{left:19px;top:20px;width:285px}.realm-banner h1{font-size:23px}.situation-prompt{top:177px;max-width:285px}}
@media(max-width:760px){
 .realm-banner{left:9px;top:12px;padding:9px 10px 12px;width:calc(100% - 73px);max-width:290px;border:0;border-image:none;box-shadow:none}.realm-banner h1{font-size:20px;margin:5px 0}.realm-banner .eyebrow{font-size:8px}.realm-banner p{font-size:10px;line-height:1.45}
 .campaign-nav{padding-inline:3px;border-top:3px double #8b7041;background:linear-gradient(#32271d,#11100d)}.nav-item{min-height:63px}.nav-item.active{border:0;background:#74473322}.nav-item.active::after{bottom:2px}.nav-icon{width:29px;height:29px}
 .map-tools{top:12px;right:10px;border-width:1px}.situation-prompt{top:auto;bottom:15px;left:12px;max-width:calc(100% - 24px);padding:9px 11px}.situation-prompt b{font-size:12px}
 #info-dialog.campaign-inspector{height:min(61dvh,calc(100dvh - 115px - var(--bottom-nav)))}#info-dialog.campaign-inspector.expanded{height:calc(100dvh - 104px - var(--bottom-nav))}.desk-summary,.route-metrics{gap:12px 8px}.desk-summary>div,.route-metrics>div{padding:0 2px}
 #info-content{height:calc(100% - 82px)}
}
@media(max-width:380px){.realm-banner h1{font-size:18px}.realm-banner{padding-left:8px}.realm-banner .eyebrow{letter-spacing:.09em}}
/* Keep every desk reachable on a phone held sideways and short laptop windows. */
@media(min-width:761px) and (max-height:520px){
 .campaign-nav{padding:5px 4px;gap:0}.nav-item{min-height:40px;height:40px;padding:2px;font-size:10px;gap:0;flex-shrink:0}.nav-icon{width:24px;height:23px}.nav-icon svg{width:21px;height:21px}.nav-item.active::after{bottom:1px}.nav-spacer{display:none}.nav-home{padding:4px 0;font-size:8px}
 .realm-banner{top:8px;padding:8px 12px;width:270px}.realm-banner h1{font-size:21px}.realm-status,.situation-prompt,.map-stage>canvas#minimap{display:none!important}.map-tools{top:8px;grid-template-columns:repeat(4,36px)}.map-tools button{min-width:36px;min-height:36px}.map-shortcuts{display:none}
 body[data-inspector=true] .realm-banner{display:none}
}
