.crown-race{z-index:8;color:#eadeb9;background:linear-gradient(100deg,#293b2e,#1b3027);border-bottom:1px solid #ad9357;justify-content:space-between;align-items:center;gap:12px;height:46px;padding:0 18px;display:flex;position:absolute;inset:0 0 auto;box-shadow:0 2px 6px #302b2920}.coronation-countdown,.crown-score,.crown-standings,.crown-city-yield{align-items:center;gap:7px;display:flex}.coronation-countdown{white-space:nowrap;min-height:44px;font:600 13px var(--serif);color:inherit;padding:0}.coronation-countdown strong{font-variant-numeric:tabular-nums}.crown-standings{gap:6px}.crown-score{border:1px solid #0000;border-radius:3px;min-height:34px;padding:3px 8px;font-size:12px}.crown-score.own{background:#f2dea51a;border-color:#c9b37655}.crown-score.leading{color:#fff3d0;background:linear-gradient(#c9a85966,#c9a85933);border-color:#d8b867}.crown-score.eliminated{opacity:.5}.crown-score>svg:not(.crest),.crown-city-yield>svg:not(.crest){color:#c9a859}.crown-score.leading>svg:not(.crest){color:#f6d47c}.crown-gain{color:#b9d29a;font-size:10px;font-weight:700}.coronation-track{flex-direction:column;width:clamp(56px,11vw,190px);display:flex}.coronation-bar{background:#eadeb922;border-radius:3px;height:6px;position:relative;overflow:hidden}.coronation-scoring,.coronation-elapsed{position:absolute;inset:0 auto 0 0}.coronation-scoring{background:#c9a85944;right:0}.coronation-elapsed{background:#eadeb9;border-radius:3px}.crown-race.urgent .coronation-elapsed{background:#ffcf7f}.crown-race.urgent .coronation-countdown{color:#ffcf7f}.atlas:has(.crown-race) .phaser-host{top:46px}.atlas:has(.crown-race) .map-top-actions{top:64px}.crown-cities{margin:18px 0 0;padding:0;list-style:none}.crown-cities button{text-align:left;border-bottom:1px solid #ac925b40;align-items:center;gap:12px;width:100%;min-height:62px;padding:10px;display:flex}.crown-cities button:hover{background:#b7a36c16}.crown-cities button>span{flex:1}.crown-cities strong{font:600 18px var(--serif)}.crown-cities small{color:#6a705b;margin-top:3px;display:block}.crown-cities>li>button>svg:first-child{color:#987430}.coronation-goal{font:17px/1.4 var(--serif);color:#4f533f;margin:0 0 18px}.coronation-timeline{background:#ad935714;border:1px solid #ac925b40;border-radius:3px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;padding:12px 16px 10px;display:grid}.coronation-remaining{color:#96783d;align-items:center;gap:6px;display:flex}.coronation-remaining strong{font:600 34px/1 var(--serif);color:#304b31;font-variant-numeric:tabular-nums}.coronation-track.scaled{width:auto;padding:0 10px}.modal .coronation-bar{background:#ac925b2e;border-radius:5px;height:10px}.modal .coronation-scoring{background:#c9a85966}.modal .coronation-elapsed{background:#476446;border-radius:5px}.coronation-scale{color:#6a705b;height:18px;margin-top:4px;font-size:11px;font-weight:600;position:relative}.coronation-scale>span{align-items:center;gap:2px;display:flex;position:absolute;top:0;transform:translate(-50%)}.coronation-scale>span:last-child{color:#8a6a2c}.coronation-scale>span:last-child>svg{color:#987430}.crown-heading{letter-spacing:.08em;text-transform:uppercase;color:#7d6c45;margin:22px 0 4px;font-size:12px;font-weight:700}.crown-ranking{margin:0;padding:0;list-style:none}.crown-ranking li{border-bottom:1px solid #ac925b40;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:10px;display:grid}.crown-ranking li.own{background:#7c8d5414}.crown-ranking li.leading{background:#c9a85926;box-shadow:inset 3px 0 #b8933f}.crown-ranking li.eliminated{opacity:.5}.crown-rank-name strong{font:600 18px var(--serif)}.crown-rank-name small{color:#8a6a2c;margin-top:2px;font-size:12px;font-weight:700;display:block}.crown-rank-claim{color:#987430;align-items:center;gap:5px;display:flex}.crown-rank-claim strong{font:600 26px/1 var(--serif);color:#304b31;font-variant-numeric:tabular-nums}.crown-rank-claim .crown-gain{color:#4d6a3e;align-items:baseline;gap:3px;font-size:12px;display:inline-flex}.crown-rank-bar{background:#ac925b26;border-radius:2px;grid-column:2/-1;height:4px;overflow:hidden}.crown-rank-bar>span{background:#b8933f;height:100%;display:block}.crown-ranking+.crown-heading+.crown-cities{margin-top:0}.capital-claim{border-top:1px solid #ac925b40;margin-top:20px;padding-top:14px}.capital-claim>div{align-items:center;gap:8px;display:flex}.capital-claim strong{margin-right:auto}.capital-claim progress{accent-color:#9c7d37;width:100%;height:8px;margin-top:10px}.mobile-campaign .atlas:has(.crown-race) dialog[aria-label=Coronation]{box-sizing:border-box;border-radius:12px 12px 0 0;width:100%;max-width:none;max-height:75dvh;margin:0;position:fixed;inset:auto 0 0}.crown-city-yield{background:#ad935718;border-radius:3px;width:fit-content;margin-top:6px;padding:4px 8px}.victory-setup{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;margin-top:14px;display:grid}.victory-setup>span{font:500 15px var(--serif)}.selected-map-preview:has(.victory-setup)>.campaign-preview{width:min(100%,380px,146.15dvh - 847.67px)}@media (width<=600px){.selected-map-preview:has(.victory-setup)>.campaign-preview{display:none}}@media (orientation:landscape) and (height<=500px){.mobile-campaign .crown-race{border:1px solid #ad9357;border-radius:3px;height:44px;inset:6px 10px auto 210px}:is(.campaign-app.mobile-campaign .atlas:has(.crown-race) .phaser-host,.campaign-app.mobile-campaign .atlas:has(.crown-race) .mobile-atlas){top:54px}.campaign-app.mobile-campaign .atlas:has(.crown-race) .map-top-actions{top:6px}}.mobile-campaign .crown-race{gap:4px;padding:0 10px}.mobile-campaign .crown-race .crown-house-name,.mobile-campaign .crown-race .crown-score:not(.own):not(.leading){display:none}.mobile-campaign .crown-race .crown-score{gap:4px;padding:2px 5px}:is(.mobile-campaign .atlas:has(.crown-race) .phaser-host,.mobile-campaign .atlas:has(.crown-race) .mobile-atlas){top:100px}.mobile-campaign .atlas:has(.crown-race) .map-top-actions{top:52px}.mobile-map-label>.mobile-crown-city{color:#927029;background:#f7ecd3;border:1px solid #bba064;border-radius:50%;place-items:center;width:17px;height:17px;display:grid;position:absolute;top:calc(50% - 24px);left:calc(50% - 8px)}@media (width<=1100px){.crown-race .crown-house-name{display:none}}@media (width<=380px){.crown-race .coronation-countdown{gap:4px;font-size:12px}}.tutorial-coach.parchment-panel{z-index:8;width:min(440px,100% - 32px);color:var(--ink);grid-template-columns:auto 1fr;align-items:center;gap:8px 12px;animation:.32s ease-out tutorial-coach-in;display:grid;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.tutorial-coach p{font-family:var(--serif);grid-column:1/-1;margin:0;font-size:1.22rem;font-weight:600;line-height:1.25}.tutorial-coach .chip{justify-self:start}.tutorial-coach .primary-button{grid-area:1/2;justify-self:end;align-items:center;gap:6px;min-height:36px;padding:6px 14px;display:inline-flex}.tutorial-dialog-slot .tutorial-coach.parchment-panel{width:auto;margin:0 0 12px;position:static;transform:none}.tutorial-coach.parchment-panel.in-battle{z-index:75;position:fixed;top:84px;bottom:auto}.tutorial-target{outline-offset:3px;outline:3px solid #d9a93e;animation:1.6s ease-in-out infinite tutorial-target-pulse;box-shadow:0 0 0 7px #f0c75a40}.menu-tutorial-done{color:#5f7a3c;margin-left:auto;display:inline-flex}@keyframes tutorial-coach-in{0%{opacity:0;translate:0 8px}}@keyframes tutorial-target-pulse{50%{box-shadow:0 0 0 12px #f0c75a00}}@media (prefers-reduced-motion:reduce){.tutorial-coach,.tutorial-target{animation:none}}.motion-reduced .tutorial-coach,.motion-reduced .tutorial-target{animation:none}@media (width<=700px),(width<=1000px) and (height<=550px){.tutorial-coach.parchment-panel{top:70px;bottom:auto}.tutorial-coach p{font-size:1.08rem}}.tutorial-pointer{z-index:90;pointer-events:none;position:fixed;inset:0}.tutorial-shade{fill:#142019;opacity:.38;animation:.35s ease-out tutorial-shade-in;position:absolute;inset:0}.tutorial-arrow{color:#e3b54a;filter:drop-shadow(0 2px 3px #1d2a2266);--nudge:translate(-6px, 0);animation:1.1s ease-in-out infinite tutorial-arrow-nudge;display:block;position:absolute}.tutorial-arrow svg{fill:currentColor;stroke:#5b4317;stroke-width:1.2px;stroke-linejoin:round;display:block}.tutorial-arrow[data-side=above]{--nudge:translate(0, -6px)}.tutorial-arrow[data-side=above] svg{rotate:90deg}.tutorial-arrow[data-side=below]{--nudge:translate(0, 6px)}.tutorial-arrow[data-side=below] svg{rotate:-90deg}@keyframes tutorial-arrow-nudge{50%{transform:var(--nudge)}}@keyframes tutorial-shade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.tutorial-arrow,.tutorial-shade{animation:none}}body:has(.motion-reduced) .tutorial-pointer .tutorial-arrow{animation:none}*{box-sizing:border-box}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/cormorant-garamond.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/dm-sans.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color:#3b4336;font-synthesis:none;--forest:#293c33;--forest-deep:#202e29;--gold:#c8ad72;--ink:#354335;--muted:#858774;--serif:"Cormorant Garamond", Georgia, serif;--paper:#f1e8d3;--line:#d3c4a0;background:#24332e;font-family:DM Sans,Arial,sans-serif;font-weight:400}body{margin:0}button{-webkit-tap-highlight-color:transparent;font:inherit;cursor:pointer;color:inherit;background:0 0;border:0;transition:background .17s,color .17s,box-shadow .17s,transform .17s}a{-webkit-tap-highlight-color:transparent;color:inherit}input{-webkit-tap-highlight-color:transparent;font:inherit}button:disabled,button[aria-disabled=true]{cursor:not-allowed;opacity:.48}button:focus-visible,a:focus-visible{outline-offset:4px;outline:2px solid #be9b50}button:hover:not(:disabled):not([aria-disabled=true]){filter:brightness(1.05)}button:active:not(:disabled){transform:translateY(1px)}svg{vertical-align:middle;flex-shrink:0}.icon-button{border-radius:3px;justify-content:center;align-items:center;width:30px;height:30px;padding:4px;display:inline-flex}.icon-button:hover{background:#979e7633}.eyebrow{letter-spacing:1.8px;color:#7e846c;font-size:8px;font-weight:600;line-height:1.5}.parchment-panel{background-color:#0000;background-image:radial-gradient(at 30% 20%,#fff8e433,#0000 85%),linear-gradient(110deg,#f7efdc,#eee4ca);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:auto,auto;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:padding-box;border:10px solid #0000;border-image:url(/art/panel-frame.svg) 12;padding:12px 13px;position:relative;box-shadow:0 4px 10px #6d572e13,inset 0 0 30px #ad8a4222}.tip-anchor{align-items:center;min-width:0;display:inline-flex}.tip-standalone{cursor:help;border-radius:2px}.tip-standalone:focus-visible{outline-offset:2px;outline:2px solid #94713b}.tip-bubble{z-index:1000;color:#263f32;font-variant-numeric:tabular-nums;letter-spacing:0;text-align:left;text-transform:none;white-space:normal;pointer-events:none;background:#fbf6e5;border:1px solid #c9b78a;border-top:2px solid #94713b;width:max-content;max-width:min(280px,100vw - 16px);padding:10px 12px 11px;font:11px/1.5 DM Sans,sans-serif;animation:.12s ease-out tip-in;position:fixed;box-shadow:0 8px 22px #4a3a1a2e}.tip-bubble:before{content:"";top:-7px;left:var(--tip-caret,50%);background:#fbf6e5;border-top:2px solid #94713b;border-left:1px solid #c9b78a;width:10px;height:10px;margin-left:-5px;position:absolute;transform:rotate(45deg)}.tip-bubble.above:before{border:1px solid #c9b78a;border-top:0;border-left:0;top:auto;bottom:-6px}.tip-bubble strong{font:500 15px/1.25 var(--serif,Georgia, serif);margin-bottom:4px;display:block}.tip-bubble p{color:#4d5443;margin:0}.tip-bubble p+p{margin-top:6px}.tip-bubble b{white-space:nowrap;font-weight:600}.tip-ledger{gap:1px;margin:0 0 6px;display:grid}.tip-ledger>div{justify-content:space-between;gap:16px;display:flex}.tip-ledger dt{color:#4d5443}.tip-ledger dd{margin:0;font-weight:600}.tip-bubble kbd{background:#f1e8cf;border:1px solid #c9b78a;border-radius:3px;padding:0 4px;font:600 10px DM Sans,sans-serif}@keyframes tip-in{0%{opacity:0;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.tip-bubble{animation:none}}.motion-reduced .tip-bubble{animation:none}.chip{color:#304536;font-variant-numeric:tabular-nums;white-space:nowrap;background:#ece4cd80;border:1px solid #d8cba6;border-radius:2px;gap:4px;min-height:24px;padding:2px 7px;font:600 11px/1.2 DM Sans,sans-serif}.chip>svg{color:#94713b;flex-shrink:0}.chip-good{color:#2c5a3a}.chip-bad{color:#8b4331}.chip-bad>svg{color:#a3573e}.chip-warn{color:#8b4331;background:#f2dcc8;border-color:#c79a7a}.chip-warn>svg{color:#8b4331}.chip-muted{color:#77775f;font-weight:500}.chip-row{flex-wrap:wrap;gap:5px;display:flex}.pips{vertical-align:middle;gap:3px;display:inline-flex}.pips i{background:0 0;border:1px solid #94713b;border-radius:50%;width:6px;height:6px}.pips i.on{background:#2c4c38;border-color:#2c4c38}.rank{vertical-align:middle;flex-shrink:0}.season-effects{gap:4px;margin:2px 0 8px;padding:0;list-style:none;display:grid}.season-effects li{color:#4d5443;grid-template-columns:14px auto 1fr;align-items:start;gap:6px;display:grid}.season-effects li svg{margin-top:2px}.season-effects b{font-variant-numeric:tabular-nums;white-space:nowrap}.season-effects+strong{margin-top:2px}.modal.wide:has(.new-campaign){width:min(1040px,100% - 32px);max-height:calc(100dvh - 32px);padding:24px 28px;overflow:hidden}.modal[open].wide:has(.new-campaign){flex-direction:column;display:flex}.modal:has(.new-campaign) .modal-head{margin:0;position:absolute;top:14px;right:16px}.modal:has(.new-campaign)>h2{flex-shrink:0;margin:0 48px 14px 0;font-size:34px}.new-campaign{--muted:#66694f;flex-direction:column;min-height:0;display:flex}.new-campaign .campaign-steps{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:10px;display:flex}.campaign-steps button{color:var(--muted);background:0 0;border:0;align-items:center;gap:8px;padding:4px 0;font-size:13px;display:flex}.campaign-steps button>span{border:1px solid var(--line);border-radius:50%;place-items:center;width:25px;height:25px;font-size:12px;display:grid}.campaign-steps button[aria-current=step]{color:var(--ink);font-weight:600}.campaign-steps button[aria-current=step]>span{color:#f6ecd0;background:#405c3e;border-color:#405c3e}.setup-step-line{background:var(--line);width:44px;height:1px}.setup-heading-row{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.new-campaign .setup-heading{font:500 26px/1.15 var(--serif);margin:0}.new-campaign .library-heading-row{clip-path:inset(50%);width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.campaign-setup-body{scrollbar-width:thin;min-height:0;overflow:auto}.map-library-layout{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:start;gap:28px;display:grid}.map-library-browser{min-width:0}.map-library-filters{grid-template-columns:minmax(0,1fr) 128px;gap:12px;display:grid}.map-library-filters label,.map-pagination label{color:var(--muted);gap:6px;font-size:12px;display:grid}.map-library-filters input,.map-library-filters select,.map-pagination select{border:1px solid var(--line);width:100%;min-width:0;min-height:40px;color:var(--ink);font:inherit;background:#f7efd9;border-radius:0;padding:8px 10px}.map-result-count{color:var(--muted);margin:10px 0 8px;font-size:12px}.map-library-grid{gap:8px;display:grid}.map-choice{border:1px solid var(--line);text-align:left;width:100%;min-width:0;min-height:70px;color:var(--ink);background:#e7dfc4;align-items:center;gap:12px;padding:6px;display:flex;position:relative}.map-choice[aria-pressed=true]{background:#dfe1bf;border-color:#526744;box-shadow:inset 0 0 0 1px #526744}.campaign-preview{background:#456365;border:1px solid #a8ac91;margin:0;position:relative;overflow:hidden}.campaign-preview>svg{width:100%;height:auto;display:block}.campaign-preview.miniature{aspect-ratio:1.7;border:0;flex:0 0 96px;width:96px}.campaign-preview.miniature>svg{height:100%}.map-choice-caption{flex:1;justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:0 8px 0 0;display:flex}.map-choice-caption strong{font:500 20px/1.2 var(--serif);overflow-wrap:anywhere;align-items:center;gap:6px;display:inline-flex}.map-player-count{color:var(--muted);flex-shrink:0;align-items:center;gap:5px;font-size:12px;display:inline-flex}.map-choice-check{color:#f4e8c0;background:#405c3e;border:1px solid #e3d6a5;padding:2px;display:flex;position:absolute;top:9px;left:9px}.preview-nameplate{color:#fff2d0;font:600 12px var(--serif);white-space:nowrap;border:1px solid #d3bc86;align-items:center;gap:4px;padding:3px 6px;display:flex;position:absolute;transform:translate(-50%,-50%)}.preview-nameplate.chosen{border:2px solid #f4dda2}.preview-nameplate>svg{flex-shrink:0}.selected-map-preview{border-left:1px solid var(--line);min-width:0;padding-left:28px}.selected-map-preview>.campaign-preview{width:min(100%,380px,146.15dvh - 628.445px);margin-inline:auto}.selected-map-preview>div{margin-top:14px}.selected-map-preview .eyebrow{display:none}.selected-map-preview h3{font:500 28px/1.1 var(--serif);margin:0 0 8px}.selected-map-preview p,.nation-start p{color:var(--muted);margin:0 0 12px;font-size:13px;line-height:1.55}.selected-map-preview .chip-row,.nation-start .chip-row{flex-wrap:wrap;gap:8px;display:flex}.map-library-empty{padding:18px 0;font-size:13px}.map-library-empty p{margin:0 0 12px}.map-pagination{justify-content:center;align-items:end;gap:12px;margin-top:12px;display:flex}.previous-arrow{transform:rotate(180deg)}.nation-setup-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.nation-setup-grid>*{min-width:0}.nation-setup-grid>div{--nation-preview-width:min(100%, 400px, calc((100dvh - 490px) * 1.4615))}.nation-setup-grid>div>.campaign-preview,.nation-setup-grid>div>.setup-occupancy{width:var(--nation-preview-width);margin-inline:auto}.difficulty-setup{width:min(100%, max(300px, var(--nation-preview-width)));margin-inline:auto}.nation-setup-grid section>h3{margin:0 0 10px;font-size:18px}.setup-occupancy{color:var(--muted);margin:8px 0 0;font-size:12px}.nation-choices{flex-direction:column;gap:8px;display:flex}.nation-choices button{border:1px solid var(--line);width:100%;min-height:60px;color:var(--ink);text-align:left;background:#e7dfc4;align-items:center;gap:12px;padding:8px 12px;display:flex}.nation-choices button[aria-pressed=true]{background:#dfe1bf;border-color:#526744;box-shadow:inset 0 0 0 1px #526744}.nation-choices button strong{font:500 19px var(--serif)}.nation-choices button>svg:last-child:not(.crest){flex-shrink:0;margin-left:auto}.nation-start{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.difficulty-setup{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px 12px;margin-top:12px;display:grid}.difficulty-setup>span{font:500 15px var(--serif)}.setup-choices{border:1px solid var(--line);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid}.setup-choices button,.setup-choices label{min-height:36px;color:var(--ink);cursor:pointer;background:#e7dfc4;border:0;justify-content:center;align-items:center;gap:6px;padding:6px 4px;font-size:14px;display:flex}.setup-choices>*+*{border-left:1px solid var(--line)}.setup-choices button[aria-pressed=true],.setup-choices label.selected{background:#dfe1bf;font-weight:700;box-shadow:inset 0 0 0 2px #526744}.setup-choices label:has(:focus-visible){outline-offset:2px;outline:2px solid #526744}.setup-choices label>svg{color:#8a6a2c;flex-shrink:0}.setup-choices label.unavailable{color:var(--muted);cursor:not-allowed}.setup-choices label.unavailable>svg{color:inherit}.setup-save-warning{color:var(--muted);flex-shrink:0;margin:14px 0 0;font-size:12px}.new-campaign .dialog-actions{flex-shrink:0;margin-top:16px;padding-top:14px}@media (width>=601px) and (height<=700px){.modal.wide:has(.new-campaign){padding:18px 24px}.modal:has(.new-campaign)>h2{margin-bottom:10px;font-size:30px}.new-campaign .campaign-steps{margin-bottom:12px;padding-bottom:8px}.setup-heading-row{margin-bottom:12px}.nation-choices button{min-height:50px;padding-block:5px}.nation-setup-grid section>h3{display:none}.nation-choices{gap:6px}.nation-choices button{min-height:46px;padding:6px 8px}.nation-choices .crest{width:26px;height:30px}.nation-start{margin-top:10px;padding-top:10px}.nation-start p{margin-bottom:8px;font-size:12px;line-height:1.45}}@media (width<=600px){.modal.wide:has(.new-campaign){width:calc(100% - 20px);max-height:calc(100dvh - 20px);padding:16px}.modal:has(.new-campaign)>h2{margin-bottom:8px;font-size:30px}.modal:has(.new-campaign) .modal-head{top:8px;right:8px}.new-campaign .campaign-steps{gap:10px;margin-bottom:10px;padding-bottom:8px}.campaign-steps button{padding-block:2px;font-size:12px}.setup-step-line{width:32px}.setup-heading-row{margin-bottom:12px}.new-campaign .setup-heading{font-size:23px}.setup-heading-row>.secondary-button{gap:6px;padding:8px 10px;font-size:11px}.map-library-layout,.nation-setup-grid{grid-template-columns:minmax(0,1fr);gap:12px}.map-library-filters{grid-template-columns:minmax(0,1fr) 120px;gap:10px}.map-library-filters input,.map-library-filters select{font-size:16px}.map-library-grid{gap:6px}.map-choice{gap:10px;min-height:52px;padding:4px}.campaign-preview.miniature{flex-basis:72px;width:72px}.map-choice-caption strong{font-size:18px}.map-choice-check{padding:1px;top:6px;left:6px}.map-choice-check>svg{width:12px;height:12px}.selected-map-preview{border-left:0;border-top:1px solid var(--line);padding:12px 0 0}.selected-map-preview>.campaign-preview{width:min(100%,200px)}.selected-map-preview>div{margin-top:8px}.selected-map-preview h3{margin-bottom:6px;font-size:22px}.selected-map-preview p,.nation-start p{margin-bottom:8px;font-size:12px;line-height:1.45}.campaign-preview{--preview-label-inset:28px}.preview-nameplate{gap:3px;padding:2px 3px}.preview-faction-name{display:none}.nation-setup-grid>div>.campaign-preview{width:min(100%,170px)}.setup-occupancy{text-align:center;margin-top:5px;font-size:11px}.nation-setup-grid section>h3{display:none}.nation-choices{gap:6px}.nation-choices button{gap:8px;min-height:46px;padding:6px 8px}.nation-choices button strong{font-size:18px}.nation-choices .crest{width:26px;height:30px}.nation-start{margin-top:10px;padding-top:10px}.setup-save-warning{margin-top:10px;font-size:11px;line-height:1.4}.new-campaign .dialog-actions{gap:8px;margin-top:12px;padding-top:12px}.new-campaign .dialog-actions .primary-button{flex:1;justify-content:center}}.nation-pick+.nation-pick{margin-top:10px}.nation-pick h3{margin:0 0 6px;font-size:16px}.nation-pick .nation-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.nation-pick .nation-choices button{gap:7px;min-height:0;padding:6px 8px;position:relative}.nation-pick .nation-choices button strong{font-size:15px;line-height:1.1}.nation-pick .nation-choices .crest{flex-shrink:0}.nation-pick .nation-choices button>svg:last-child:not(.crest){margin:0;position:absolute;top:6px;right:6px}.nation-traits{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}@media (width<=600px){.nation-pick+.nation-pick{margin-top:8px}.nation-pick .nation-choices button{gap:5px;padding:4px 6px}.nation-pick .nation-choices button strong{font-size:13px}.nation-pick .nation-choices .crest{width:20px;height:23px}.nation-traits{gap:4px;margin-top:6px}.nation-traits .chip{gap:3px;padding-inline:5px;font-size:10.5px}.nation-pick .nation-choices button>svg:last-child:not(.crest){display:none}}@media (width<=360px){.nation-traits .chip>svg{display:none}.nation-setup-grid:has(.nation-pick)>div>.campaign-preview{width:120px}.nation-traits .chip{padding-inline:4px;font-size:10px}.nation-setup-grid:has(.nation-pick) .nation-start p{display:none}}.army-actions{align-items:stretch;gap:6px;margin-top:2px;display:flex}.army-actions>.army-action{flex:1}.army-action{display:flex}.army-action>.march-button{width:100%}.army-actions .march-button{margin-top:0}.split-button{min-height:40px;font-family:var(--serif);color:#2f4a30;cursor:pointer;background:#eef0da;border:1px solid #8f9f72;border-radius:3px;align-items:center;gap:6px;padding:6px 12px;font-size:15px;font-weight:600;display:inline-flex}.split-button:hover:not(:disabled):not([aria-disabled=true]){background:#e0e6c4}.split-button:disabled,.split-button[aria-disabled=true]{opacity:.5;cursor:not-allowed}.split-button:focus-visible,.split-stepper button:focus-visible,.split-stepper input:focus-visible,.split-half:focus-visible{outline-offset:2px;outline:2px solid #94713b}.split-panel{border:0;min-width:0;margin:10px 0 8px;padding:0}.split-row{font-family:var(--serif);color:#3e5535;border-bottom:1px solid #bac19a88;grid-template-columns:minmax(0,1fr) 44px auto;align-items:center;gap:8px;padding:4px 0;font-size:15px;display:grid}.split-head{letter-spacing:.8px;text-transform:uppercase;color:#7b8661;padding:0 0 2px;font-family:DM Sans,sans-serif;font-size:10px}.split-head>span:last-child{text-align:center}.split-unit{overflow-wrap:anywhere;align-items:center;gap:5px;min-width:0;display:inline-flex}.split-unit>svg{color:#6b8053;flex:none}.split-stays{text-align:right;font-variant-numeric:tabular-nums;color:#5d6a48;justify-self:end}.split-stepper{align-items:center;gap:3px;display:inline-flex}.split-stepper button{color:#2f4a30;cursor:pointer;background:#eef0da;border:1px solid #a2ad84;border-radius:3px;place-items:center;width:32px;height:32px;padding:0;display:grid}.split-stepper button:disabled{opacity:.4;cursor:default}.split-stepper input{width:50px;height:32px;font:inherit;text-align:center;font-variant-numeric:tabular-nums;color:#24472f;appearance:textfield;background:#fbf8e8;border:1px solid #a2ad84;border-radius:3px;padding:0 4px;font-weight:600}.split-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.split-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.split-total{border-bottom:0;padding-top:6px;font-weight:600}.split-total .split-leaving{justify-content:center;justify-self:center;min-width:120px}.split-half{min-height:30px;font-family:var(--serif);color:#2f4a30;cursor:pointer;background:0 0;border:1px solid #a2ad84;border-radius:3px;justify-self:start;padding:3px 10px;font-size:14px}.split-half:hover{background:#e0e6c4}.split-warning{color:#8a3d26;align-items:center;gap:6px;margin:4px 0 0;font-size:13px;display:flex}@media (width<=700px){.split-stepper button,.split-stepper input{height:40px}.split-stepper button{width:40px}.split-button,.split-half{min-height:44px}.split-total .split-leaving{min-width:136px}}.leader-panel{padding:16px 22px}.leader-seal{color:#fbf6e4;background:var(--seal,#6b8053);border-radius:50%;flex:none;place-items:center;width:1.75em;height:1.75em;display:inline-grid;box-shadow:inset 0 0 0 2px #fbf6e455,0 0 0 1px #3d3a2a66}.leader-profile{align-items:flex-start;gap:12px;display:flex}.leader-profile>.leader-seal{font-size:26px}.leader-profile h3{font:600 22px/1.15 var(--serif);color:#2f4a30;overflow-wrap:anywhere;margin:0}.leader-personality{letter-spacing:.4px;color:#7b6a3c;margin:2px 0 0;font-size:12px;font-weight:600}.leader-bio{font:italic 16px/1.4 var(--serif);color:#4a5240;margin:8px 0 0}.leader-none{font:500 18px/1.3 var(--serif);align-items:center;gap:8px;margin:0;display:flex}.leader-none>svg{color:#94713b}.leader-reserve{margin-top:18px}.leader-note{color:#6a6b55;align-items:center;gap:5px;margin:0 0 8px;font-size:12px;display:flex}.leader-assign-list{gap:5px;margin:0;padding:0;list-style:none;display:grid}.leader-option{width:100%;min-height:44px;font:600 16px/1.2 var(--serif);color:#2f4a30;text-align:left;background:#eef0da;border:1px solid #a2ad84;border-radius:3px;align-items:center;gap:9px;padding:5px 10px 5px 6px;display:flex}.leader-option>.leader-seal{font-size:15px}button.leader-option{cursor:pointer}button.leader-option:hover:not(:disabled){background:#e0e6c4}.leader-option:disabled,.leader-wounded{cursor:default;color:#6f7560;background:#f2efdc}.leader-option:focus-visible{outline-offset:2px;outline:2px solid #94713b}.leader-option-name{overflow-wrap:anywhere;flex:1;min-width:0}.leader-option-personality{color:#7b6a3c;font:500 12px DM Sans,sans-serif}.leader-option .chip{font-family:DM Sans,sans-serif;font-size:12px}.leader-title{cursor:help;text-underline-offset:4px;-webkit-text-decoration:underline dotted #94713b88;text-decoration:underline dotted #94713b88}.leader-option-level{color:#6a5a2c;align-items:center;gap:3px;font:600 12px DM Sans,sans-serif;display:inline-flex}.leader-trait-choice{gap:5px;margin-top:12px;display:grid}.leader-trait-choice h4{color:#8a3d26;margin:0;font:600 12px DM Sans,sans-serif}.leader-trait-choice .leader-option-name{gap:2px;display:grid}.leader-trait-choice small{color:#4a5240;font:400 12px/1.35 DM Sans,sans-serif}.leader-reserve .ledger-section-label .chip{margin-left:auto}.province-trait-dot{background:#b0472f;border-radius:50%;width:7px;height:7px;display:inline-block}.leader-relieve{margin-top:12px}.personality-rules{color:#3f4a37;gap:5px;margin:10px 0 0;padding:0;font-size:12px;line-height:1.4;list-style:none;display:grid}.personality-rules li{grid-template-columns:16px minmax(0,1fr);align-items:start;gap:7px;display:grid}.personality-rules li>svg{color:#94713b;margin-top:2px}.personality-rules b{color:#5b4a1f}.tip-bubble .personality-rules{margin-top:6px}.leader-seal.leader-promoted{position:relative}.leader-seal.leader-promoted:after{content:"";pointer-events:none;border:2px solid #c6a051;border-radius:50%;animation:.75s ease-out both promotion-ring;position:absolute;inset:-5px}.leader-level:has(.figure-changed)>svg{animation:.65s ease-out level-star}.main-header{color:#e2dfcb;z-index:10;flex-shrink:0;align-items:center;display:flex}.wordmark{font-family:var(--serif);align-items:center;font-weight:600;line-height:1;text-decoration:none;display:flex}.brand-crown{color:var(--gold);padding:4px 0}.treasury{color:#ccb47e;align-items:center;margin-left:auto;display:flex}.treasury strong{font-family:var(--serif);font-weight:600;line-height:1}.treasury small{display:block}.treasury .income{border-left:1px solid #485241}.income small{letter-spacing:1px;font-size:8px}.header-house{text-align:left;font-family:var(--serif);white-space:nowrap;border-left:1px solid #485241;align-items:center;display:flex}.header-house small{color:#9da68e;font-family:DM Sans,sans-serif;display:block}@media (width<=1200px){.header-house>span{display:none}}@media (width<=700px){.income small{font-size:6px}}.main-header{background:radial-gradient(at 30% -80%,#4b6145aa,#0000 75%),linear-gradient(100deg,#142b22,#1e3428 55%,#13271e);border-bottom:1px solid #ac965d;gap:25px;height:64px;padding:0 28px;box-shadow:inset 0 -3px #bfa36518}.wordmark{letter-spacing:4.5px;color:#f3e8ca;gap:16px;font-size:28px}.wordmark>span:last-child{white-space:nowrap;align-items:center;gap:22px;display:flex}.brand-crown{display:block}.brand-crown svg{width:31px;height:31px}.treasury{border-left:1px solid #8b906344;gap:10px;padding-left:22px}.treasury strong{font-size:29px}.treasury small{letter-spacing:1.7px;color:#bdc1a0;margin-top:4px;font-size:7px}.treasury .income{font-family:var(--serif);color:#ded5ab;margin-left:14px;padding-left:24px;font-size:23px}.treasury .income small{font-family:DM Sans,sans-serif;font-size:7px}.header-house{color:#e4dec4;gap:11px;padding-left:23px;font-size:18px}.header-house small{letter-spacing:1.6px;margin-top:5px;font-size:6px}.header-house .crest{width:32px;height:37px}.settings-menu{border-left:1px solid #8b906344;flex-shrink:0;margin-left:0;padding-left:18px;position:relative}.settings-trigger{color:#dfca91;border-radius:3px;place-items:center;width:34px;height:36px;display:grid}.settings-trigger:hover,.settings-trigger[aria-expanded=true]{color:#f3dea2;background:#cbb47022}.settings-popover{z-index:60;color:#3c4c36;text-align:left;width:292px;position:absolute;top:48px;right:-8px}.settings-heading{letter-spacing:1.9px;color:#8c754b;border-bottom:1px solid #b6a47766;margin-bottom:5px;padding:5px 10px 14px;font-size:9px;display:block}.settings-popover>button{text-align:left;border-radius:2px;align-items:center;gap:15px;width:100%;padding:13px 10px;display:flex}.settings-popover>button:hover,.settings-popover>button:focus-visible{background:#d5d7b377}.settings-popover>button>svg{color:#967c46}.settings-popover strong{font-family:var(--serif);font-size:22px;font-weight:600;line-height:1.1;display:block}.settings-popover small{color:#8c8b71;margin-top:5px;font-size:9px;display:block}.settings-popover>p{font-family:var(--serif);color:#969070;margin:12px 10px 4px;font-size:14px;font-style:italic}.settings-separator{background:#b6a47766;height:1px;margin:5px 10px}@media (width>=1400px) and (width<=1599px){.main-header{gap:22px}}@media (width<=1399px){.main-header{gap:22px;height:64px}.wordmark{letter-spacing:3px;gap:12px;font-size:26px}.treasury{padding-left:17px}.treasury .income{margin-left:10px;padding-left:17px}.settings-menu{padding-left:14px}}@media (width<=1050px){.header-house>span{display:none}.main-header{gap:20px;padding:0 21px}.settings-menu{padding-left:15px}.treasury{border:0;padding-left:0}}@media (width<=700px){.main-header{gap:13px;height:62px;padding:0 15px}.wordmark{letter-spacing:1.8px;gap:9px;font-size:23px}.brand-crown{display:block}.brand-crown svg{width:22px;height:24px}.header-house>span{display:none}.header-house{border-left:0;padding-left:0}.header-house .crest{width:24px;height:28px}.treasury{gap:7px;margin-left:auto}.treasury>svg{width:17px}.treasury strong{font-size:24px}.treasury small{letter-spacing:1px;font-size:5px}.treasury .income{display:none}.settings-menu{margin-left:0;padding-left:10px}.settings-trigger{width:27px;height:33px}.settings-trigger>svg{width:21px}.settings-popover{width:min(290px,100vw - 28px);padding:10px;top:45px;right:-6px}.settings-heading{font-size:8px}.settings-popover>button{padding:13px 8px}.settings-popover strong{font-size:23px}}@media (width<=375px){.wordmark{letter-spacing:1.4px}.treasury strong{font-size:22px}.settings-menu{padding-left:7px}}.settings-menu .settings-popover{max-height:calc(100dvh - 105px);position:absolute;overflow-y:auto}@media (width<=700px){.main-header{position:relative}}@media (width<=375px){.main-header{gap:8px;padding:0 10px}.wordmark{gap:6px;font-size:18px}.brand-crown svg{width:18px}}.header-house>span small{display:none}@media (width<=1150px) and (width>=701px){.main-header{gap:14px;padding-inline:18px}.header-house>span{display:none}}@media (width<=1000px){.campaign-app .main-header{grid-template-columns:minmax(0,1fr) auto auto;gap:8px 12px;height:auto;min-height:116px;padding:10px 14px;display:grid}.main-header .wordmark{grid-area:1/1}.main-header .header-house{grid-area:1/2}.main-header .settings-menu{grid-area:1/3}}.header-house .nation-traits{flex-wrap:nowrap;flex-shrink:0;gap:4px;margin:0 0 0 2px}.header-house .nation-traits .chip{color:#e4dec4;background:#ffffff0a;border-color:#56654f;min-height:24px;padding:2px 4px}.header-house .nation-traits .chip>svg{color:#d8c48a}.header-house .nation-traits .chip-bad{border-color:#7d4a3c}.header-house .nation-traits .chip-bad>svg{color:#e39a83}.campaign-app{flex-direction:column;height:100dvh;min-height:650px;display:flex;overflow:hidden}.campaign-main{flex:1;min-height:0;display:flex}.atlas{flex:1;min-width:0;position:relative;overflow:hidden}.phaser-host{position:absolute;inset:0}.phaser-host canvas{cursor:grab;display:block}.atlas:after{content:"";pointer-events:none;mix-blend-mode:multiply;z-index:6;opacity:.38;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.12' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0;box-shadow:inset 0 0 80px #8d75441c}.map-top-actions{z-index:7;display:flex;position:absolute}.map-layer{align-items:center;display:flex}.map-layer.selected{color:#465d42;background:#eae7caa8;border-color:#6e7a5b88}.map-tools{z-index:7;border:1px solid #9da487;flex-direction:column;display:flex;position:absolute}.map-tools button{place-items:center;display:grid}.map-tools button:hover{background:#c5c8a8}.map-tools>span{background:#c2c6a7;height:1px;margin:3px 4px}@media (width<=1200px){.map-top-actions{left:30px}}@media (width<=950px){.map-top-actions{left:20px}}@media (width<=700px){.campaign-app{height:auto;overflow:visible}.campaign-main{flex-direction:column;flex:none;min-height:0;overflow:visible}.atlas{flex:none;width:100%}.map-tools svg{width:15px}}.atlas-sprite{aspect-ratio:1;display:block;overflow:hidden}.map-mode-switch{display:flex}.map-mode-switch .selected{color:#eee7c9;background:#405b42;border-color:#516446}.atlas{background:#eee6cf}.atlas .phaser-host{left:300px}.map-top-actions{background:linear-gradient(#f6f0dd,#e9dfc4);border:1px solid #b9a982;border-radius:25px;align-items:stretch;gap:0;padding:2px;top:26px;right:25px;box-shadow:0 2px 6px #7f6d3b22}.map-layer{font-family:var(--serif);color:#50593d;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:20px;gap:7px;padding:7px 13px;font-size:12px;font-weight:600}.map-mode-switch .map-layer{background:0 0;border:0;border-radius:20px}.map-mode-switch .map-layer.selected{color:#f1e6c1;background:linear-gradient(#365c3c,#24442b);box-shadow:inset 0 0 0 1px #b4b47a66}.map-top-actions>.map-layer{border-left:1px solid #c2b58f;border-radius:0;margin:5px 0;padding:1px 13px}.map-tools{background:linear-gradient(#f6efda,#e9dfc3);border-color:#bbad86;border-radius:5px;padding:3px;bottom:88px;right:24px;box-shadow:0 3px 9px #6d572e22}.map-tools button{color:#6a694a;width:29px;height:30px}@media (width>=1800px){.atlas .phaser-host{left:320px}}@media (width>=1400px) and (width<=1599px){.atlas .phaser-host{left:262px}.map-layer{padding:6px 11px;font-size:11px}.map-top-actions>.map-layer{padding-left:11px;padding-right:11px}}@media (width<=1399px){.atlas .phaser-host{left:0}.map-top-actions{top:25px;left:25px;right:auto}.map-layer{padding:6px 10px;font-size:11px}.map-top-actions>.map-layer{padding-left:10px;padding-right:10px}}@media (width<=1050px){.map-top-actions{top:22px;left:22px}.map-layer{padding:6px 9px;font-size:10px}.map-top-actions>.map-layer{padding-left:9px;padding-right:9px}.map-layer svg{width:13px;height:13px}}@media (width<=700px){.campaign-app{min-height:100dvh}.atlas{height:65dvh;min-height:430px}.map-top-actions{border-radius:18px;flex-direction:row;align-items:stretch;gap:0;max-width:calc(100% - 34px);padding:2px;top:17px;left:17px;right:auto}.map-layer{gap:4px;padding:6px 8px;font-size:9px}.map-top-actions>.map-layer{margin:4px 0;padding-left:8px;padding-right:8px}.map-layer svg{width:12px;height:12px}.map-tools{padding:2px;bottom:65px;right:14px}.map-tools button{width:27px;height:28px}}@media (width<=375px){.map-layer{padding-left:7px;padding-right:7px;font-size:8px}}.campaign-main .atlas .phaser-host{left:0;right:0}.atlas .map-top-actions{top:18px;left:18px;right:auto}.atlas .map-tools{bottom:18px;right:18px}@media (hover:hover) and (pointer:fine){.map-tools .zoom-button,.map-tools>span{display:none}}@media (width<=700px){.campaign-app{padding-bottom:63px}}.illustrated-scene{background:linear-gradient(#d0d5b0,#e0d8a5 75%);position:relative;overflow:hidden}.illustrated-scene:before{content:"";background:#9fb376;border-radius:50%;width:125%;height:90%;position:absolute;top:52%;left:-30%;box-shadow:120px 10px #98aa6f}.highland-scene{background:linear-gradient(#c7d2bf,#dbd9ad)}.scenic-sun{background:#f0e5bb;border-radius:50%;width:35px;height:35px;position:absolute;top:14%;right:20%;box-shadow:0 0 24px #f0e5bb55}.scenic-mountains{opacity:.7;filter:saturate(.65);width:210px;position:absolute;top:-20px;right:-15px}.scenic-hill{background:#91a566;border-radius:55% 0 0;height:35%;position:absolute;bottom:0;left:0;right:0}.scenic-city{position:absolute;left:50%;transform:translate(-50%)}.scenic-tree{width:135px;position:absolute;bottom:-24px}.scenic-tree.left{left:-34px}.scenic-tree.right{width:121px;right:-36px}.scenic-banner{clip-path:polygon(0 0,100% 40%,0 100%);width:20px;height:9px;position:absolute;top:11%;left:51%}.scenic-city{width:178px;bottom:-13px}@media (width<=700px){.scenic-city{width:198px;bottom:-15px}.scenic-tree{width:160px}.scenic-tree.right{width:146px}}.opportunity-panel{background:linear-gradient(125deg,#e8d6a330,#fff8e560);border:1px solid #b39659;border-radius:3px;margin:0 0 12px;padding:10px 12px}.opportunity-panel>header{color:#68502e;align-items:center;gap:7px;margin-bottom:7px;display:flex}.opportunity-panel h3{flex:1;margin:0;font-size:14px}.opportunity-panel .chip-row{gap:5px}.opportunity-actions{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.opportunity-actions>*{flex:120px}.opportunity-actions button{color:#3e4d33;background:#eee5ca;border-color:#a68c52;justify-content:center;gap:6px;width:100%;min-height:34px;padding:6px 8px;font-size:12px;font-weight:600}.opportunity-actions button:disabled{opacity:.55}.opportunity-price{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.opportunity-blocker{color:#786343;align-items:start;gap:5px;margin:7px 0 0;font-size:11px;display:flex}@media (pointer:coarse){.opportunity-actions button{min-height:44px}}.ledger-panel.province-panel{scrollbar-width:thin;scrollbar-color:#c2b386 transparent;padding:22px 16px;overflow-y:auto}.ledger-panel .province-ledger{--ledger-line:#d8cba6;--ledger-muted:#77775f;--ledger-green:#2c4c38;--ledger-paper:#f3ecd7;--ledger-soft:#ece4cd;border:1px solid var(--ledger-line);background:radial-gradient(ellipse at 5% 0, #b59b6130, transparent 36%), linear-gradient(100deg, #f7f0dd, var(--ledger-paper) 45%, #efe5cb);color:#263f32;border-top:3px solid #94713b;flex-direction:column;flex:1 0 auto;min-height:100%;padding:0;display:flex;overflow:visible;box-shadow:0 5px 18px #6d572e0d,inset 0 0 0 3px #fff8e640}.ledger-header{border-bottom:1px solid #c8b58755;padding:20px 22px 18px;container:ledger-header/inline-size}.ledger-kicker{color:var(--ledger-muted);letter-spacing:1.3px;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px;font-size:9px;display:flex}.ledger-owner{letter-spacing:0;text-transform:none;align-items:center;gap:5px;font-size:10px;display:inline-flex}.ledger-title{align-items:center;gap:12px;min-width:0;display:flex}.ledger-title>.crest{flex:0 0 38px}.ledger-title>div{min-width:0}.ledger-title .ledger-city-copy{flex:1}.ledger-title .ledger-city-art{flex:0 0 78px;width:78px;height:82px}.ledger-title .province-vignette{flex-basis:78px;width:78px;height:76px}.province-vignette[data-season=Autumn] image{filter:sepia(.12)saturate(.9)}.province-vignette[data-season=Winter] image{filter:saturate(.6)brightness(1.08)}@container ledger-header (width>=290px){.ledger-title .province-vignette{flex-basis:96px;width:96px;height:78px}}.ledger-title h2{font:500 37px/1.08 var(--serif);letter-spacing:-.7px;overflow-wrap:anywhere;margin:0;font-size:clamp(29px,11cqi,37px)}.ledger-title p{color:var(--ledger-muted);font:14px/1.3 var(--serif);align-items:center;gap:6px;margin:7px 0 0;display:flex}.ledger-title p svg{flex-shrink:0}.ledger-free-city{color:#94713b;background:var(--ledger-soft);clip-path:polygon(0 0,100% 0,100% 77%,50% 100%,0 77%);flex:0 0 38px;place-items:center;height:45px;display:grid}.ledger-stats{border-block:1px solid var(--ledger-line);grid-template-columns:repeat(3,minmax(0,1fr));margin:0 22px;padding:15px 0;display:grid}.ledger-stats>div{flex-direction:column;min-width:0;padding:0 10px;display:flex}.ledger-stats>div:first-child{padding-left:0}.ledger-stats>div:last-child{padding-right:0}.ledger-stats>div+div{border-left:1px solid var(--ledger-line)}.ledger-stats dd{font:500 27px/1.15 var(--serif);font-variant-numeric:tabular-nums;order:-1;margin:0}.ledger-stats dd small{color:var(--ledger-muted);font:11px DM Sans,sans-serif}.ledger-stats dt{color:var(--ledger-muted);align-items:center;gap:4px;margin-top:5px;font-size:10px;line-height:1.5;display:flex}.ledger-stats dt svg{color:#94713b;flex-shrink:0}.ledger-stats dt span{min-width:0}.ledger-stat-trigger{min-height:36px;font:inherit;text-align:left;cursor:help;text-underline-offset:5px;padding:0;-webkit-text-decoration:underline dotted #c9b78a;text-decoration:underline dotted #c9b78a;text-decoration-thickness:1px}.ledger-stat-trigger:hover{text-decoration-color:#94713b}.ledger-stat-trigger:focus-visible{outline-offset:2px;outline:2px solid #94713b;text-decoration-color:#94713b}.province-tabs{border-block:1px solid var(--ledger-line);background:var(--ledger-soft);gap:4px;padding:0 10px;display:flex;container:province-tabs/inline-size}.province-tabs>button{color:#6a6b55;border-bottom:3px solid #0000;flex:auto;justify-content:center;align-items:center;gap:5px;min-width:0;min-height:48px;padding:10px 3px;font-size:12px;display:flex}.province-tab-icon{flex:none;place-items:center;display:inline-grid;position:relative}.province-tab-icon>.province-project-dot,.province-tab-icon>.province-trait-dot{box-shadow:0 0 0 1.5px var(--ledger-soft);width:7px;height:7px;margin:0;position:absolute;top:-2px;right:-3px}.province-tab-icon>.province-tab-count{box-shadow:0 0 0 1.5px var(--ledger-soft);border-radius:7px;min-width:14px;height:14px;margin:0;padding:0 3px;font-size:9px;position:absolute;top:-7px;left:-11px}.province-tab-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@container province-tabs (width<=320px){.province-tabs>button[aria-selected=false] .province-tab-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.province-tabs>button[aria-selected=true]{flex:2}}.province-tabs>button[aria-selected=true]{border-bottom-color:var(--ledger-green);color:var(--ledger-green);font-weight:600}.province-tabs>button:focus-visible{outline-offset:-4px}.province-project-dot{vertical-align:middle;background:#94713b;border-radius:50%;width:5px;height:5px;margin-left:5px;display:inline-block}.province-tabpanel[hidden]{display:none}.province-tabpanel{padding-top:6px}.province-tabpanel .ledger-stats{border-top:0}.province-facts{border-bottom:1px solid var(--ledger-line);gap:6px;margin:16px 22px 14px;padding-bottom:14px}.province-facts .chip{min-height:28px;padding:3px 8px;font-size:12px}.province-facts .province-defence{background:var(--ledger-soft);font:600 14px/1.2 var(--serif);border-color:#b9a77a}.ledger-occupied{letter-spacing:0;text-transform:none;font-size:10px}.chip-sep{opacity:.3;background:currentColor;align-self:stretch;width:1px;margin:0 2px}.recruitment-destination{color:#62674e;flex-wrap:wrap;align-items:center;gap:6px;margin:14px 22px 0;font-size:12px;line-height:1.5;display:flex}.recruitment-destination>svg{color:#94713b;flex-shrink:0}.recruitment-destination .chip{margin-left:auto}.recruitment-host{margin:0 22px}.ledger-panel .recruitment-host .troop-breakdown{border-bottom:1px solid #bac19a88;margin-top:6px;padding:6px 0}.ledger-link-button{min-height:32px;color:var(--ledger-green);background:var(--ledger-soft);border:1px solid #b9a77a;border-radius:2px;align-items:center;gap:5px;margin-top:6px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.ledger-link-button:hover{background:#e4d9ba;border-color:#94713b}.ledger-link-button svg{color:#94713b}.ledger-military{border-bottom:1px solid var(--ledger-line);margin:0 22px;padding:17px 0}.ledger-section-label{color:var(--ledger-muted);align-items:center;gap:7px;margin:0 0 10px;font:500 11px DM Sans,sans-serif;display:flex}.ledger-section-label svg{color:#94713b}.ledger-empty-army{align-items:center;gap:10px;display:flex}.ledger-empty-army>svg{color:#94713b;flex-shrink:0}.ledger-empty-army strong{font:500 18px/1.3 var(--serif)}.ledger-empty-army p{color:var(--ledger-muted);margin:4px 0 0;font-size:10px;line-height:1.5}.ledger-panel .army-card{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.ledger-panel .army-card h4{font-size:20px}.ledger-panel .army-card-heading{gap:8px}.ledger-panel .army-card-heading>div{min-width:0}.ledger-panel .army-card-heading h4{overflow-wrap:anywhere}.ledger-panel .army-card-heading>strong{margin-left:auto;font-size:27px}.ledger-panel .army-emblem{background:var(--ledger-soft);flex-shrink:0;width:30px;height:35px}.ledger-panel .troop-breakdown{margin-top:9px;padding:8px 0}.ledger-panel .troop-breakdown>span+span{padding-left:12px}.ledger-panel .march-button{min-height:40px;padding:8px 11px;font-size:16px}.ledger-recruitment{flex-direction:column;flex:1;min-width:0;display:flex}.ledger-recruit-content{padding:0 22px 16px}.ledger-recruit-heading{justify-content:space-between;align-items:center;gap:10px;margin:18px 0 9px;display:flex}.ledger-recruit-heading h3{font:500 22px/1.2 var(--serif);margin:0}.ledger-slots.chip{color:var(--ledger-muted);background:0 0;border:0;gap:6px;padding:0;font-size:11px}.ledger-recruit-list{display:grid}.ledger-recruit-row{border-bottom:1px solid var(--ledger-line);grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;display:grid}.ledger-unit-icon{border:1px solid var(--ledger-line);color:#6a7f50;background:var(--ledger-soft);place-items:center;width:32px;height:38px;display:grid}.ledger-unit-name{min-width:0}.ledger-unit-name strong{font:500 18px/1.2 var(--serif);display:block}.ledger-unit-name small{color:var(--ledger-muted);margin-top:3px;font-size:10px;display:block}.ledger-unit-name .chip-row{gap:4px;margin-top:4px}.ledger-unit-name .chip{min-height:20px;padding:1px 5px;font-size:10px}.ledger-add-company{border:1px solid var(--ledger-line);color:#94713b;font-variant-numeric:tabular-nums;border-radius:2px;justify-content:center;align-items:center;gap:5px;min-width:67px;min-height:36px;padding:6px 8px;font-size:11px;display:flex}.ledger-add-company:hover:not(:disabled):not([aria-disabled=true]){background:var(--ledger-soft);border-color:#94713b}.ledger-chronicle{color:var(--ledger-muted);margin-top:13px}.ledger-chronicle summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;min-height:30px;font-size:10px;list-style:none;display:flex}.ledger-chronicle summary::-webkit-details-marker{display:none}.ledger-chronicle summary:after{content:"+";color:#94713b;font-size:16px}.ledger-chronicle[open] summary:after{content:"−"}.ledger-chronicle summary:focus-visible{outline-offset:4px;outline:2px solid #be9b50}.ledger-chronicle p{font:italic 17px/1.5 var(--serif);margin:0;padding-top:7px}.ledger-foreign-chronicle{padding:0 22px 20px}.ledger-foreign-note{border-top:1px solid var(--ledger-line);color:var(--ledger-muted);background:var(--ledger-soft);margin:auto 0 0;padding:17px 22px;font-size:11px;line-height:1.7}@media (width<=1050px) and (width>=701px){.ledger-panel.province-panel{padding:17px 10px}.ledger-header{padding:18px 16px}.ledger-title{gap:9px}.ledger-title h2{font-size:31px}.ledger-stats,.ledger-military{margin-inline:16px}.ledger-stats>div{padding-inline:7px}.ledger-stats dt{font-size:9px}.ledger-recruit-content,.ledger-foreign-chronicle,.ledger-foreign-note{padding-inline:16px}.ledger-unit-name strong{font-size:16px}.ledger-recruit-row{gap:7px}.ledger-add-company{min-width:60px;padding-inline:6px}}@media (width<=700px){.ledger-panel.province-panel{padding:18px 12px 22px;overflow:visible}.ledger-panel .province-ledger{min-height:0}.ledger-header{padding:20px}.ledger-stats,.ledger-military{margin-inline:20px}.ledger-recruit-content,.ledger-foreign-chronicle,.ledger-foreign-note{padding-inline:20px}}@media (width<=375px){.ledger-kicker{letter-spacing:1px}.ledger-stats>div{padding-inline:7px}.ledger-unit-name strong{font-size:16px}.ledger-recruit-row{gap:7px}.ledger-recruit-heading h3{font-size:20px}.ledger-slots{font-size:9px}}@media (pointer:coarse){.ledger-add-company,.ledger-chronicle summary,.ledger-panel .march-button{min-height:44px}}.development-ledger{border-block:1px solid #a998703d;padding:12px 16px;font-size:12px}.development-potential{color:#686248;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;margin-bottom:7px;display:flex}.development-potential b{color:#304536}.development-details{border-top:1px solid #aa98723b;margin-top:9px;padding-top:9px}.development-details>summary{cursor:pointer;color:#304536;list-style:revert;justify-content:space-between;gap:12px;padding:5px 0;font-weight:700;display:flex}.development-details>summary strong{color:#716447;text-align:right;font-size:11px}.development-details>summary:before{content:"▸"}.development-details[open]>summary:before{content:"▾"}.development-details p{color:#73694f;margin:7px 0;font-size:11px;line-height:1.5}.development-heading{justify-content:space-between;align-items:center;gap:10px;margin:6px 0 10px;display:flex}.development-heading h3{font:500 23px/1.2 var(--serif);margin:0}.development-heading>span{color:#6d6a50;text-align:right;font-size:11px}.province-tabpanel>.development-ledger{border-block:0;padding:12px 22px 20px}.province-tabpanel>.recruitment-retraining{border-top:1px solid var(--ledger-line)}.development-retraining p{color:#68664e;font-size:11px;line-height:1.6}.development-actions{flex-direction:column;justify-content:center;align-items:stretch;gap:5px;display:flex}.development-ledger button{color:#294433;font:inherit;cursor:pointer;background:#e7d9b9;border:1px solid #a38c596b;border-radius:4px;min-height:32px;padding:7px 8px;font-size:11px}.development-ledger button:disabled{cursor:default;opacity:.48}.development-ledger button:not(:disabled):hover{background:#d9c79f}.development-ledger button:focus-visible,.development-ledger summary:focus-visible{outline-offset:3px;outline:2px solid #28734b}.development-warning{color:#8b4331;line-height:1.5}.economy-breakdown{gap:5px;margin:8px 0;display:grid}.economy-breakdown>div{justify-content:space-between;gap:12px;display:flex}.economy-breakdown dd{font-variant-numeric:tabular-nums;margin:0;font-weight:700}.development-retraining{padding-top:12px}.development-retraining summary{cursor:pointer;color:#344b39;font-weight:700}.development-training{padding:6px 0}@media (width<=600px){.development-ledger{padding:12px}.development-ledger button{min-height:40px}}@media (width<=1050px) and (width>=701px){.province-tabs{padding-inline:7px}.province-tabs>button{font-size:11px}.ledger-title .ledger-city-art{flex-basis:64px;width:64px;height:70px}.province-facts,.province-defense{margin-inline:16px}.province-tabpanel>.development-ledger{padding-inline:16px}}@media (width<=375px){.ledger-title h2{font-size:29px}.ledger-title .ledger-city-art{flex-basis:60px;width:60px;height:66px}.province-tabs{padding-inline:7px}.province-tabs>button{font-size:11px}.ledger-stats dd{font-size:25px}.province-facts{font-size:11px}}@media (pointer:coarse){.ledger-stat-trigger,.province-defense summary{min-height:44px}}.development-heading .development-slots{gap:6px}.development-project{background:#d4bf8c42;border:1px solid #ad94584d;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;margin:10px 0;padding:10px;display:grid}.development-project strong{font:500 16px/1.2 var(--serif);display:block}.development-project-icon,.development-building-icon{border:1px solid var(--ledger-line);background:var(--ledger-soft);color:#6a7f50;place-items:center;width:32px;height:36px;display:grid}.development-project-time{color:#80724f;align-items:center;gap:4px;margin-top:3px;font-size:11px;display:flex}.development-ledger .development-cancel{align-items:center;gap:4px;display:inline-flex}.development-building{border-bottom:1px solid #b2a17b33;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 0;display:grid}.development-building-copy{justify-items:start;gap:5px;min-width:0;display:grid}.development-ledger .development-building-name{cursor:help;text-align:left;background:0 0;border:0;align-items:center;gap:8px;min-height:0;padding:0;display:inline-flex}.development-ledger .development-building-name:not(:disabled):hover{background:0 0}.development-building-name strong{color:#344b39;font:500 16px/1.2 var(--serif);text-underline-offset:4px;-webkit-text-decoration:underline dotted #c9b78a;text-decoration:underline dotted #c9b78a;text-decoration-thickness:1px}.development-building-name:hover strong{text-decoration-color:#94713b}.development-effects{gap:4px}.development-effects .chip{min-height:20px;padding:1px 5px;font-size:10px}.development-ledger .development-build{font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:4px;min-width:76px;font-weight:600;display:inline-flex}.development-build-time{color:#6d6a50;border-left:1px solid #a38c596b;align-items:center;gap:2px;margin-left:3px;padding-left:5px;font-weight:400;display:inline-flex}.development-max{color:#94713b;letter-spacing:1px;text-align:center;text-transform:uppercase;border:1px solid #b9a77a;border-radius:2px;padding:5px 8px;font-size:10px;font-weight:700}.development-ledger .development-demolish{color:#8c5740;background:0 0;border-color:#0000;justify-content:center;align-items:center;gap:4px;font-size:10px;display:inline-flex}.development-ledger .development-demolish.armed{background:#f2dcc8;border-color:#c79a7a;font-weight:700}.development-retraining summary{align-items:center;gap:7px;display:flex}.development-retraining summary .chip{margin-left:auto}.development-retraining-help{float:right;color:#94713b;margin-top:10px}.development-training-status{color:#856232;align-items:center;gap:5px;display:flex}.development-training-grid{grid-template-columns:32px 1fr 1fr;align-items:center;gap:6px 8px;margin-top:12px;display:grid}.development-training-head{color:#856232;justify-content:center;align-items:center;gap:3px;font-size:10px;font-weight:700;display:flex}.development-training-unit{color:#6a7f50;place-items:center;height:32px;display:grid}.development-training-grid button{font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:4px;display:inline-flex}.recruit-tier{border:1px solid #a38c596b;border-radius:3px;gap:0;margin:10px 0;display:flex;overflow:hidden}.recruit-tier label{color:#6a6b55;cursor:pointer;background:#efe4cb;flex:1;justify-content:center;align-items:center;gap:5px;min-height:34px;font-size:12px;font-weight:600;display:flex;position:relative}.recruit-tier label+label{border-left:1px solid #a38c596b}.recruit-tier label.selected{background:var(--ledger-green);color:#f3ecd7}.recruit-tier label:has(input:focus-visible){outline-offset:-3px;outline:2px solid #28734b}.recruit-tier label:has(input:disabled){cursor:default;opacity:.6}.troop-breakdown .chip{font:inherit;color:inherit;background:0 0;border:0;flex-wrap:wrap;gap:6px;padding:0}.troop-breakdown .chip>svg{color:inherit}.troop-tier{color:#856232;align-items:center;gap:1px;font:600 10px DM Sans,sans-serif;display:inline-flex}.army-training{color:#856232;align-items:center;gap:5px;padding:4px 0;font-size:11px;display:flex}.army-toll{color:#8a5a3c;align-items:center;gap:7px;margin:8px 0 0;font-size:11px;display:flex}.army-card-heading>.army-total .tip-anchor{gap:4px}.army-card-heading>.army-total svg{color:#8a9476}.army-enemy-crest{flex-shrink:0}.ledger-foreign-note{align-items:center;gap:8px;display:flex}.ledger-foreign-note>svg{color:#94713b;flex-shrink:0}.recruit-tier label.out-of-reach:not(.selected){color:#8f8a73}.recruit-tier-lock{color:#8b4331}.recruit-tier label.selected .recruit-tier-lock{color:#f2dcc8}.blocker-notice{color:#7a3d2c;background:#f2dcc880;border:1px solid #c79a7a;border-radius:2px;gap:4px;margin:0 0 8px;padding:7px 9px;font-size:11px;font-weight:600;line-height:1.35;list-style:none;display:grid}.blocker-notice li{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.blocker-notice li>svg{color:#8b4331;flex-shrink:0}.blocker-notice .chip{min-height:20px;padding:1px 5px;font-size:10px}.blocker-notice li>.tip-anchor:first-of-type{margin-left:auto}.development-ledger .blocker-notice{margin-top:4px}.ledger-unit-name .blocker-chips,.development-building-copy .blocker-chips{gap:4px;margin-top:2px}.blocker-chips .chip{min-height:20px;padding:1px 5px;font-size:10px}button.chip.blocker-link{cursor:pointer;align-items:center;display:inline-flex}.development-ledger button.chip.blocker-link:not(:disabled):hover,button.chip.blocker-link:hover{background:#ecc9ae;border-color:#8b4331}.blocker-go{opacity:.7;margin-left:1px}.ledger-recruit-row.blocked .ledger-unit-icon{color:#8f8a73}.province-tab-count{background:var(--ledger-green);color:#f3ecd7;border-radius:8px;place-items:center;min-width:16px;height:16px;margin-left:3px;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:inline-grid}.province-tab-count.spent{color:#8b4331;background:#d8cba6}.development-building.highlighted{animation:1.8s ease-out blocker-target}@keyframes blocker-target{0%,35%{background:#e8d39b;box-shadow:inset 3px 0 #94713b}to{background:0 0;box-shadow:inset 3px 0 #0000}}@media (prefers-reduced-motion:reduce){.development-building.highlighted{background:#e8d39b66;animation:none;box-shadow:inset 3px 0 #94713b}}.motion-reduced .development-building.highlighted{background:#e8d39b66;box-shadow:inset 3px 0 #94713b}.ledger-add-company[aria-disabled=true]:hover{border-color:var(--ledger-line);background:0 0}.development-ledger button[aria-disabled=true]{cursor:not-allowed;opacity:.48}.development-ledger button[aria-disabled=true]:hover{background:0 0}.province-panel{z-index:8;flex-direction:column;flex-shrink:0;display:flex;position:relative}.province-illustration{position:relative;overflow:hidden}.castle-art{width:100%;height:100%;display:block}.province-illustration:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 -15px 30px #68715512}.province-owner-tag{color:#efebd1;align-items:center;gap:5px;display:flex;position:absolute;box-shadow:0 2px 4px #38473516}.terrain-tag{color:#eff0d5;border:1px solid #dfe2c344;padding:4px 6px;position:absolute}.province-scroll{scrollbar-width:thin;scrollbar-color:#c3bfa1 transparent;flex:1}.province-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.province-heading .eyebrow{letter-spacing:1.5px;color:#979477;font-size:7px;display:none}.province-heading h2{font-family:var(--serif)}.province-heading p{align-items:center;margin:0;display:flex}.province-description{font-family:var(--serif)}.province-stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex}.province-stats>div{flex:1;align-items:center;display:flex}.province-stats>div+div{border-left:1px solid var(--line)}.province-stats strong{font-family:var(--serif);font-weight:600;line-height:1;display:block}.province-stats strong small{letter-spacing:0;font-weight:400;display:inline}.province-stats small{white-space:nowrap;display:block}.section-label{color:#7b8067;align-items:center;display:flex}.section-label h3{margin:0;line-height:1}.section-label>span{color:#9b9a7d;margin-left:auto;font-size:7px}.army-card{border:1px solid #c1c9aa}.army-card-heading{align-items:center;gap:9px;display:flex}.army-emblem{border:1px solid #8c9c78;flex-shrink:0;place-items:center;display:grid}.army-card h4{font-family:var(--serif);margin:0 0 5px}.army-status{color:#6b8556;align-items:center;display:flex}.army-status>i{background:#78935e;border-radius:50%}.army-status.spent{color:#969176}.army-status.spent>i{background:#a69b76}.army-card-heading>strong{font-family:var(--serif);text-align:right;margin-left:auto;font-weight:600;line-height:1}.army-card-heading>strong small{margin-top:4px;font-family:DM Sans,sans-serif;font-weight:400;display:block}.troop-breakdown{border-top:1px solid #bac5a577;justify-content:space-around;display:flex}.troop-breakdown>span{align-items:center;display:flex}.troop-breakdown>span+span{border-left:1px solid #bcc6a4}.march-button{align-items:center;width:100%;display:flex}.march-button:hover{background:#425f3c}.enemy{background:#e2d9c4;border-color:#d1bea5}.enemy .army-emblem{color:#956a54;background:#d1c2a7;border-color:#b29b7d}.enemy h4,.enemy .army-card-heading>strong{color:#805e4a}.empty-army{color:#9a987c;align-items:center;gap:12px;display:flex}.empty-army small{color:#aaa58b;display:block}.recruitment-list{border-top:1px solid var(--line)}.recruit-row{text-align:left;border-bottom:1px solid var(--line);align-items:center;gap:11px;width:100%;display:flex}.recruit-row:hover:not(:disabled){background:#dedcc188}.unit-icon{border:1px solid #d4d3b6;border-radius:2px;place-items:center;width:34px;height:35px;display:grid}.unit-name strong{font-weight:500;display:block}.unit-name small{margin-top:4px;display:block}.recruit-price{align-items:center;gap:4px;margin-left:auto;display:flex}.recruit-price>svg:last-child{color:#7d8a63;margin-left:7px}@media (width<=700px){.province-illustration .castle-art{object-fit:cover}.province-owner-tag{gap:3px}.province-heading{padding-right:0}.province-heading .eyebrow{letter-spacing:.7px;font-size:5px}.province-stats>div>svg{width:22px;height:22px}.recruit-row{gap:13px}.recruit-price{gap:7px}.recruit-price svg{width:15px;height:15px}}.province-panel{background:radial-gradient(at 80% 10%,#fbf6e6aa,#0000 70%),#ebe2ca;border-left:1px solid #c4b48d;width:380px;padding:24px 13px 28px;box-shadow:inset 5px 0 15px #8b744117,-2px 0 8px #7b66311a}.province-sheet{flex-direction:column;flex:1;min-height:0;padding:0;animation:.18s ease-out province-enter;display:flex;overflow:hidden}.province-illustration{float:none;border:1px solid #a9aa84;border-radius:5px 5px 0 0;flex-shrink:0;width:100%;height:148px;margin:0}.province-illustration .castle-art{width:100%;height:100%}.province-owner-tag{font-family:var(--serif);letter-spacing:1px;border:1px solid #efe6c199;border-radius:3px;padding:5px 9px;font-size:8px;top:12px;left:12px}.terrain-tag{background:#3e5639bb;font-size:7px;bottom:8px;right:9px}.province-scroll{background:0 0;padding:14px 15px 18px;overflow:auto}.province-heading h2{letter-spacing:-.7px;color:#263d2c;margin:0 0 9px;font-size:37px;font-weight:700;line-height:1}.province-heading p{font-family:var(--serif);color:#736b4d;gap:7px;font-size:13px}.province-heading .crest{width:37px;height:45px}.province-description{color:#777052;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:12px 0 14px;font-size:18px;line-height:1.23;display:-webkit-box;overflow:hidden}.province-stats{border-color:#cbbd9699;gap:13px;padding:11px 0}.province-stats>div{gap:10px}.province-stats>div+div{border-color:#b9aa7d99;padding-left:15px}.province-stats strong{color:#364a2f;font-size:27px}.province-stats strong small{font-family:var(--serif);color:#777154;font-size:14px}.province-stats small{letter-spacing:1.2px;color:#8e815d;margin-top:5px;font-size:6px}.province-stats svg{color:#95702d;width:21px;height:21px}.section-label{gap:8px;margin:14px 0 9px}.section-label h3{font-family:var(--serif);letter-spacing:1.3px;text-transform:uppercase;color:#5b5035;font-size:11px;font-weight:700}.section-label>svg{color:#927840}.army-card{background:linear-gradient(110deg,#e9ead4,#e4e2c8);border-color:#b9bd94;border-radius:6px;padding:11px 10px 10px;box-shadow:inset 0 0 0 3px #fff6d733}.army-card h4{color:#3e5535;margin-bottom:5px;font-size:20px;font-weight:600;line-height:1.1}.army-emblem{color:#6b8053;background:#d6ddbc;border-color:#9aaa7d;width:35px;height:41px}.army-status{font-family:var(--serif);gap:6px;font-size:11px}.army-status>i{width:5px;height:5px}.army-card-heading>strong{color:#3b4e30;font-size:28px}.army-card-heading>strong small{letter-spacing:1.1px;color:#8d9069;font-size:6px}.troop-breakdown{border-color:#bac19a88;margin-top:11px;padding:8px 0}.troop-breakdown>span{font-family:var(--serif);color:#78865d;gap:7px;font-size:15px}.troop-breakdown>span+span{border-color:#bac19a88;padding-left:20px}.march-button{font-family:var(--serif);letter-spacing:.2px;color:#eee9ce;background:linear-gradient(#3c5d3c,#24472f);border:1px solid #2d4d30;border-radius:3px;justify-content:space-between;gap:10px;margin-top:3px;padding:9px 13px;font-size:17px;font-weight:600;box-shadow:inset 0 1px #c4c59a33}.march-button>svg{width:20px}.empty-army{font-family:var(--serif);padding:8px 0 11px;font-size:15px;line-height:1.25}.empty-army small{margin-top:6px;font-family:DM Sans,sans-serif;font-size:9px;line-height:1.5}.recruitment-orders{border-top:1px solid #cbbb9499;border-bottom:1px solid #cbbb9499;margin-top:18px}.recruitment-heading{text-align:left;color:#6b6242;align-items:center;gap:10px;width:100%;padding:15px 0;display:flex}.recruitment-heading>svg:first-child{color:#94783d}.recruitment-heading>span{font-family:var(--serif);letter-spacing:1.2px;text-transform:uppercase;font-size:11px;font-weight:700}.recruitment-heading>small{letter-spacing:.4px;color:#969071;white-space:nowrap;margin-left:auto;font-size:7px}.recruitment-orders .recruitment-list{border-top:1px solid #cbbb9499}.recruit-row{padding:11px 0}.unit-name strong{font-family:var(--serif);color:#526341;font-size:17px}.unit-name small{color:#a19979;font-size:8px}.unit-icon{color:#81915d;background:#e8e2c9;border-color:#d1c8a6}.recruit-price{font-family:var(--serif);color:#94743c;font-size:16px}@media (width>=1800px){.province-panel{width:400px;padding:27px 15px}.province-illustration{height:164px}.province-scroll{padding:18px}.province-description{font-size:19px}.province-heading h2{font-size:40px}}@media (width>=1400px) and (width<=1599px){.province-panel{width:340px;padding:22px 11px}.province-scroll{padding:14px 12px}.province-heading h2{font-size:35px}.province-description{font-size:17px}}@media (width<=1399px){.province-panel{width:330px;padding:22px 11px}.province-heading h2{font-size:34px}.province-description{font-size:17px}.province-scroll{padding:13px 12px}.province-illustration{height:142px}}@media (width<=1050px){.province-panel{width:300px;padding:19px 9px}.province-scroll{padding:13px 10px}.province-heading h2{font-size:31px}.province-description{font-size:16px}.province-stats{gap:8px}.province-stats>div{gap:6px}.province-stats>div+div{padding-left:10px}.province-stats strong{font-size:25px}.province-stats strong small{font-size:12px}.province-stats small{letter-spacing:1px;font-size:5px}.army-card h4{font-size:18px}.army-card-heading{gap:7px}.army-card-heading>strong{font-size:25px}.army-emblem{width:30px;height:36px}.recruitment-heading>span{font-size:9px}.recruitment-heading{gap:7px}.recruitment-heading>small{font-size:6px}.section-label h3{font-size:10px}}@media (width<=700px){.province-panel{border-top:1px solid #c7b891;border-left:0;width:100%;padding:17px 12px 22px;display:block}.province-sheet{flex:none;min-height:0;display:flex;overflow:visible}.province-illustration{float:none;border-bottom:1px solid #a9aa84;border-right:1px solid #a9aa84;width:100%;height:162px;min-height:0;margin:0}.province-illustration .castle-art{width:100%;height:100%}.province-owner-tag{letter-spacing:1px;padding:5px 8px;font-size:8px;top:12px;left:12px}.province-owner-tag svg{width:12px;height:12px}.terrain-tag{font-size:8px;bottom:9px;right:10px}.province-scroll{padding:19px 16px;overflow:visible}.province-heading h2{margin-bottom:8px;font-size:38px}.province-heading p{font-size:14px}.province-heading .crest{width:40px;height:47px}.province-description{-webkit-line-clamp:unset;min-height:0;margin:15px 0 17px;font-size:19px;line-height:1.3;display:block;overflow:visible}.province-stats{clear:none;gap:20px;padding:15px 0}.province-stats>div{justify-content:flex-start;gap:10px}.province-stats strong{font-size:29px}.province-stats strong small{font-size:15px}.province-stats small{letter-spacing:1px;font-size:6px}.province-stats>div+div{padding-left:20px}.province-stats svg{width:22px;height:22px}.section-label{margin:20px 0 12px}.section-label h3{letter-spacing:1.3px;font-size:11px}.army-card{padding:14px 13px}.army-card h4{font-size:22px}.army-emblem{width:40px;height:45px}.army-status{font-size:12px}.army-card-heading>strong{font-size:31px}.army-card-heading>strong small{font-size:7px}.troop-breakdown{margin-top:15px;padding:11px 0}.troop-breakdown>span{font-size:17px}.march-button{padding:11px 13px;font-size:19px}.recruitment-orders{margin-top:23px}.recruitment-heading{gap:10px;padding:17px 0}.recruitment-heading>span{font-size:11px}.recruitment-heading>small{font-size:7px}.recruitment-list .recruit-row{padding:14px 0}.unit-name strong{font-size:19px}.unit-name small{font-size:10px}.recruit-price{font-size:18px}.unit-icon{width:42px;height:43px}}.development-building-icon.building-completed{animation:.7s ease-out building-completed}.province-tabs>button{transition:color .12s ease-out,background .12s ease-out;position:relative}.province-tabs>button:after{content:"";pointer-events:none;background:currentColor;height:2px;transition:transform .15s ease-out;position:absolute;bottom:-2px;left:5px;right:5px;transform:scaleX(0)}.province-tabs>button[aria-selected=true]:after{transform:scaleX(1)}.province-tabpanel:not([hidden]),.ledger-city-copy{animation:.15s ease-out ledger-content}.province-panel button.order-blocked{animation:.18s ease-out order-blocked}.campaign-footer{color:#d6d9bd;z-index:10;flex-shrink:0;align-items:center;display:flex}.turn-date{text-align:left;align-items:center;display:flex}.turn-date>svg{color:#a9b08b}.turn-date small{white-space:nowrap;display:block}.turn-date small span{margin:0 5px}.end-turn{text-align:left;justify-content:space-between;align-items:center;display:flex}.end-turn strong{font-family:var(--serif);display:block}.end-turn small{color:#756f4e;margin-top:5px;font-size:8px;display:none}.turn-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:20;color:#f5edd4;font-family:var(--serif);text-shadow:0 1px 6px #203b32;background:#263e3230;flex-direction:column;justify-content:center;align-items:center;gap:17px;font-size:25px;display:flex;position:fixed}.turn-spinner{border:1px solid #e6d4a255;border-top-color:#e6d4a2;border-radius:50%;width:42px;height:42px;animation:1.5s linear infinite spin}@media (width<=950px){.turn-date svg{width:20px}.end-turn small{font-size:7px}}@media (width<=700px){.turn-date>svg{width:20px}.end-turn small{font-size:6px}.turn-overlay{z-index:24;font-size:22px;position:fixed}}.campaign-footer{background:radial-gradient(ellipse at 50% 110%, var(--season-glow,#4f654066), transparent 70%), linear-gradient(#203c2c, #10291e);border-top:2px solid #ac9158;gap:26px;height:96px;padding:0 28px;position:relative;overflow:hidden;box-shadow:inset 0 4px #dbc1891a,0 -2px 9px #4e482922}.campaign-footer:before{content:"";pointer-events:none;background-image:var(--season-art);background-repeat:repeat-x;background-size:760px;background-position:center var(--season-art-position,55%);opacity:.72;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0007,#000 25% 75%,#0008);mask-image:linear-gradient(#0007,#000 25% 75%,#0008)}.campaign-footer:after{content:"";z-index:0;pointer-events:none;background:linear-gradient(90deg,#153023 0,#153023f0 180px,#15302300 380px calc(100% - 350px),#153023ef calc(100% - 210px),#153023 100%);position:absolute;inset:0}.campaign-footer[data-season=Spring]{--season-art:url(/art/footer-spring-v3.webp);--season-glow:#6a895044}.campaign-footer[data-season=Summer]{--season-art:url(/art/footer-summer-v3.webp);--season-glow:#b48c3e44}.campaign-footer[data-season=Autumn]{--season-art:url(/art/footer-autumn-v3.webp);--season-art-position:38%;--season-glow:#a55c354d}.campaign-footer[data-season=Winter]{--season-art:url(/art/footer-winter-v3.webp);--season-glow:#8daebd33}.turn-date{z-index:1;flex-shrink:0;gap:15px;margin:0;position:relative}.turn-date strong{font-family:var(--serif);color:#e9dfb5;font-size:30px;font-weight:500;line-height:1}.turn-date small{letter-spacing:2px;color:#c3c8a5;margin-top:7px;font-size:7px}.turn-date small b{color:#e5dcb4;font-weight:400}.season-seal{color:#d2b66f;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:4px;width:47px;height:57px;display:inline-flex}.season-seal svg{width:70%;height:auto;max-height:70%}.season-pips{gap:3px;display:flex}.season-pips i{opacity:.55;border:1px solid;border-radius:50%;width:4px;height:4px}.season-pips i.current{opacity:1;background:currentColor}.season-seal[data-season=Spring]{color:#b9cf8a}.season-seal[data-season=Summer]{color:#e3c56c}.season-seal[data-season=Autumn]{color:#d79a55}.season-seal[data-season=Winter]{color:#d6e0e2}.turn-date:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #d2b66f}.end-turn{z-index:1;outline-offset:2px;clip-path:polygon(9px 0,calc(100% - 9px) 0,100% 9px,100% calc(100% - 9px),calc(100% - 9px) 100%,9px 100%,0 calc(100% - 9px),0 9px);color:#233925;background:linear-gradient(125deg,#edce84,#f5dfa5 35%,#ceaa59 87%,#e4c47d);border:2px solid #b28c43;border-radius:4px;outline:1px solid #e5cb84;flex-shrink:0;width:298px;height:64px;margin-left:auto;padding:11px 25px;position:relative;box-shadow:inset 0 0 0 3px #ffe6a766,inset 0 0 0 5px #93743944}.end-turn strong{font-size:34px;font-weight:600;line-height:1}.end-turn svg{color:#6d642f;width:29px;height:29px}.end-turn:before{content:"";pointer-events:none;border:1px solid #bd985266;border-radius:2px;position:absolute;inset:4px}.end-turn:hover:not(:disabled){background:linear-gradient(125deg,#f1d48e,#ffe9b3 35%,#d8b666 87%,#ebcd8b);box-shadow:inset 0 0 0 3px #ffeab466,0 0 20px #d5bb5d22}.turn-overlay{inset:64px 380px 96px 0}@media (width>=1800px){.turn-overlay{right:400px}}@media (width>=1400px) and (width<=1599px){.turn-overlay{right:340px}}@media (width<=1399px){.turn-date strong{font-size:28px}.campaign-footer{gap:22px}.end-turn{width:260px}.turn-overlay{right:330px}}@media (width<=1050px){.campaign-footer{gap:20px;height:88px;padding:0 20px}.turn-date{gap:9px}.turn-date strong{font-size:26px}.season-seal{width:36px;height:47px}.end-turn{width:220px;height:59px;padding:11px 20px}.end-turn strong{font-size:30px}.turn-overlay{bottom:88px;right:300px}}@media (width<=700px){.campaign-footer{z-index:25;gap:10px;height:76px;padding:0 14px;position:fixed;bottom:0;left:0;right:0;overflow:hidden}.turn-date{gap:7px}.season-seal{width:27px;height:40px}.turn-date strong{white-space:nowrap;font-size:23px}.end-turn{outline-offset:1px;width:157px;height:49px;padding:9px 12px}.end-turn strong{font-size:27px}.end-turn>svg{width:21px;height:21px}.turn-overlay{inset:62px 0 76px}}@media (width<=375px){.turn-date strong{font-size:21px}.end-turn{width:141px}.end-turn strong{font-size:25px}}.campaign-footer .turn-date.season-changed .season-seal{animation:.65s ease-out season-seal}.campaign-footer .turn-date.season-changed strong{animation:.45s ease-out season-date}.campaign-footer .end-turn:active:not(:disabled){transform:translateY(2px)scale(.985);box-shadow:inset 0 3px 8px #142e2340}.campaign-app .campaign-footer{gap:20px;height:68px;min-height:68px;padding:0 24px}.campaign-footer .turn-date{text-shadow:0 1px 3px #10291e;gap:8px}.campaign-footer .turn-date strong{font-size:22px}.campaign-footer .turn-date small{margin-top:4px}.campaign-footer .season-seal{width:27px;height:35px}.campaign-footer .end-turn{width:190px;height:42px;padding:6px 18px}.campaign-footer .end-turn strong{white-space:nowrap;font-size:25px}.campaign-footer .end-turn>svg{width:23px;height:23px}.footer-notification{z-index:1;flex:1;min-width:0}.campaign-notice{color:#e2d7b7;text-shadow:0 1px 3px #10291e,0 0 6px #10291e;justify-content:center;align-items:center;gap:10px;font-size:11px;line-height:1.4;display:flex}.notice-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}.campaign-notice button{color:#efd495;flex-shrink:0;padding:8px 5px}.notice-undo{text-underline-offset:3px;font-weight:700;text-decoration:underline}@media (width<=700px){.campaign-footer:before{opacity:.65;background-size:600px}.campaign-footer:after{background:linear-gradient(90deg,#153023ee,#15302399 20%,#15302333 38%,#15302300 60%,#153023aa)}.campaign-app .campaign-footer{gap:10px;height:60px;min-height:60px;padding:0 12px}.campaign-footer .end-turn{width:144px;padding:6px 12px}.campaign-footer .end-turn strong{font-size:23px}.campaign-footer .turn-date strong{font-size:20px}.campaign-footer .season-seal{width:22px}.campaign-footer.has-notice .turn-date{display:none}.campaign-notice{justify-content:flex-start;gap:5px;font-size:10px}.campaign-notice>svg{display:none}.notice-text{-webkit-line-clamp:3}}@media (width<=375px){.campaign-footer .season-seal{display:none}}.notice-undo{align-items:center;gap:4px;display:inline-flex}.modal{color:#536046;scrollbar-width:thin;scrollbar-color:#bdb795 #e7e2cb;border:1px solid #c9b784;border-radius:2px;width:min(480px,100% - 32px);max-height:calc(100dvh - 60px);padding:25px 31px 30px;overflow:auto;box-shadow:0 0 0 5px #d4c69944,0 20px 100px #152d26a0}.modal.wide{width:min(740px,100% - 32px)}.modal::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#172d26b0}.modal-head{align-items:center;margin:-3px -5px 0 0;display:flex}.modal-head .eyebrow{color:#9e916b;font-size:8px}.modal-head .icon-button{color:#8d957c}.modal h2{font-family:var(--serif);margin:13px 0 15px;font-size:36px;font-weight:600;line-height:1.05}.modal-intro{font-family:var(--serif);color:#81836a;margin:0 0 24px;font-size:18px;line-height:1.4}.dialog-actions{border-top:1px solid #d3ccb2;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:21px;display:flex}.primary-button{color:#f0e9d0;background:#4b6545;border:1px solid #4b6545;justify-content:center;align-items:center;gap:13px;padding:12px 17px;font-size:11px;display:inline-flex}.secondary-button{border:1px solid #4b6545;justify-content:center;align-items:center;gap:13px;padding:12px 17px;font-size:11px;display:inline-flex}.primary-button:hover{background:#3c5938}.secondary-button{color:#889076;background:0 0;border-color:#c5c6a8}.secondary-button:hover{background:#e2dfc5}.full{width:100%}.muted{color:#96957b}.small{font-size:10px;line-height:1.7}.battle-versus{justify-content:space-evenly;align-items:center;margin:20px 0 26px;display:flex}.battle-versus>div{flex-direction:column;align-items:center;min-width:100px;display:flex}.battle-versus>div>svg{color:#969677;height:58px}.battle-versus strong{font-family:var(--serif);margin-top:8px;font-size:38px;font-weight:600;line-height:1}.battle-versus small{letter-spacing:1px;color:#939176;margin-top:6px;font-size:7px}.battle-versus>svg{color:#a59771}.forecast{color:#5b754c;background:#dbe1c5;border:1px solid #bdc8a2;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:14px 16px;font-size:13px;line-height:1.4;display:flex}.forecast small{color:#8b9377;text-align:center;width:100%;font-size:9px;display:block}.forecast.danger{color:#9b674c;background:#e4d7bc;border-color:#ceb899}.battle-season{justify-content:center;gap:8px;margin-top:8px;display:flex}.battle-report-art{border:1px solid #c9c4a6;height:140px;margin-bottom:20px;position:relative;overflow:hidden}.battle-report-art>span{color:#e1d5a9;background:#4c6849;border:1px solid #cfbe8c;border-radius:50%;padding:8px;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.losses{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:20px;margin:20px 0;padding:16px 0;display:flex}.losses>div{flex:1}.losses span{color:#9b967a;font-size:9px}.losses strong{font-family:var(--serif);color:#97664f;margin-top:5px;font-size:29px;font-weight:600;display:block}.losses strong small{color:#a29d83;font-family:DM Sans,sans-serif;font-size:10px}.help-grid{grid-template-columns:1fr 1fr;gap:26px 27px;margin:27px 0;display:grid}.help-grid>div{gap:13px;display:flex}.help-grid>div>svg{color:#a08d5c;margin-top:4px}.help-grid h3{font-family:var(--serif);color:#526347;margin:0 0 8px;font-size:22px;font-weight:600}.help-grid p{color:#8f8e74;margin:0;font-size:10px;line-height:1.7}.help-foot{border-top:1px solid var(--line);color:#969279;margin:25px 0 20px;padding-top:17px;font-size:9px;line-height:1.9}.help-foot svg{color:#8d9673;margin-right:5px}kbd{border:1px solid #c8c6a7;border-radius:2px;padding:1px 3px;font-family:inherit;font-size:8px}.chronicle-list{max-height:55vh;padding-right:5px;overflow:auto}.chronicle-list article{border-top:1px solid var(--line);gap:16px;padding:18px 0;display:flex}.chronicle-list article>svg{color:#a18d60;margin-top:3px}.chronicle-list p{font-family:var(--serif);color:#72795e;margin:4px 0 0;font-size:19px;line-height:1.4}.chronicle-list .eyebrow{color:#a39a7a;font-size:7px}.faction-choices{gap:12px;margin:25px 0;display:flex}.faction-choices button{text-align:center;background:#e4e1c9;border:1px solid #c9c8ab;flex-direction:column;flex:1;align-items:center;padding:20px 14px;display:flex}.faction-choices button.chosen{background:#dce0c5;border-color:#6d8057;box-shadow:inset 0 0 0 2px #a8b88b44}.faction-choices h3{font-family:var(--serif);min-height:45px;margin:16px 0 7px;font-size:21px;font-weight:600;line-height:1.1}.faction-choices p{color:#949178;flex:1;margin:0 0 20px;font-size:9px;line-height:1.7}.faction-choices button>span{color:#71815b;align-items:center;gap:5px;font-size:8px;display:flex}.faction-choices .faction-start{color:#49583d;flex:0;margin-bottom:16px;font-size:11px;line-height:1.6}.ending-crest{text-align:center;margin:20px 0 25px}button:hover .crest{filter:brightness(1.06)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes toast-in{0%{opacity:0;bottom:92px}to{opacity:1;bottom:103px}}@media (width<=700px){.modal{max-height:calc(100dvh - 35px);padding:22px 23px 25px}.modal h2{font-size:32px}.modal-intro{font-size:17px}.help-grid{grid-template-columns:1fr;gap:23px}.help-grid h3{font-size:22px}.help-grid p{font-size:11px}.faction-choices{flex-direction:column}.faction-choices button{text-align:left;grid-template-columns:45px 1fr;column-gap:16px;padding:15px 17px;display:grid}.faction-choices .crest{grid-row:1/4;width:40px}.faction-choices h3{min-height:0;margin:0 0 5px;font-size:22px}.faction-choices p{margin-bottom:9px;font-size:9px}.faction-choices button>span{font-size:8px}.dialog-actions{gap:9px}.primary-button,.secondary-button{padding:12px 14px;font-size:10px}.chronicle-list p{font-size:18px}}.modal{background:linear-gradient(115deg,#f4ecda,#e9dec1);border-color:#c0a976}.modal h2{color:#2e492f}.modal-head{justify-content:flex-end}.losses>div{animation:.3s ease-out both campaign-enter}.forecast{animation:.25s ease-out campaign-enter}.objective-progress{color:#96783d;grid-template-columns:auto 1fr;align-items:center;gap:16px;margin:24px 0;display:grid}.objective-progress strong{font:36px var(--serif);color:#304b31}.objective-progress small{font-size:20px}.objective-progress progress{accent-color:#42613b;grid-column:1/-1;width:100%;height:10px}.battle-versus strong{align-items:center;gap:6px;display:flex}.battle-versus strong>svg{color:#a59771;flex-shrink:0}.faction-choices .faction-start{flex-wrap:wrap;justify-content:center;gap:5px;display:flex}.faction-choices .faction-start .chip{font-size:12px}.icon-legend{border-top:1px solid var(--line,#d5c9a6);margin-top:22px;padding-top:16px}.icon-legend h3{font:500 19px/1.2 var(--serif);margin:0 0 4px}.icon-legend>p{color:#77775f;margin:0 0 10px;font-size:11px}.icon-legend ul{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:7px 14px;margin:0;padding:0;list-style:none;display:grid}.icon-legend li{color:#4d5443;align-items:center;gap:8px;font-size:12px;display:flex}.icon-legend li>svg{color:#94713b;flex-shrink:0}.realm-resource .figure-delta{font-size:10px;top:-10px;left:0}@media (width<=700px){.realm-resource small{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}}.realm-resources{flex-shrink:0;min-width:0;margin-left:auto;position:relative}.realm-resource-list{align-items:center;display:flex}.realm-resource{color:#e5cd91;text-align:left;border-left:1px solid #8b906344;align-items:center;gap:8px;min-height:44px;padding:0 18px;display:flex}.realm-resource strong{font:500 28px/1 var(--serif);font-variant-numeric:tabular-nums;white-space:nowrap;display:block}.realm-resource small{color:#c7c9ae;letter-spacing:1px;text-transform:uppercase;white-space:nowrap;margin-top:5px;font-size:8px;display:block}.realm-resource[aria-expanded=true]{background:#d7c18612}.realm-resource.resource-shortage{color:#ffbf9f}.realm-resource-figures{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.realm-resource-rate{color:#c7d2a3;font-variant-numeric:tabular-nums;white-space:nowrap;align-items:baseline;gap:3px;font-size:15px;display:inline-flex}.realm-resource-rate.resource-shortage{color:#ffbf9f}.resource-period{font-size:10px;font-weight:400}.realm-economy-popover{z-index:70;color:#293e31;text-align:left;background:#f5eed9;border:1px solid #beaa77;border-top:3px solid #a27e3d;width:min(360px,100vw - 24px);padding:18px 20px;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 8px 24px #17291e40}.realm-economy-popover:before{content:"";height:16px;position:absolute;top:-16px;left:0;right:0}.realm-economy-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.realm-economy-heading h2{font:500 25px/1.2 var(--serif);margin:0}.realm-economy-heading button{place-items:center;min-width:36px;min-height:36px;display:grid}.realm-economy-popover .economy-breakdown{margin:14px 0;font-size:12px}.realm-economy-popover .economy-total{border-top:1px solid #d3c4a0;margin-top:5px;padding-top:9px;font-weight:600}.realm-economy-popover .economy-forecast{color:#6a6550;font-style:italic}.realm-economy-popover .economy-forecast dt{align-items:center;gap:5px;display:inline-flex}.realm-economy-popover .economy-season{color:#7b6f50;margin-left:4px;font-weight:400}.realm-economy-popover .economy-treasury{border-bottom:1px solid #d3c4a0;margin-bottom:5px;padding-bottom:9px}.realm-economy-popover p{color:#62634c;margin:10px 0 0;font-size:12px;line-height:1.55}.realm-economy-popover .economy-warning{color:#963e29}@media (width<=1150px) and (width>=701px){.realm-resource{gap:6px;padding-inline:11px}.realm-resource strong{font-size:25px}}@media (width<=1000px){.realm-resources{grid-area:2/1/auto/-1;margin:0}.realm-resource-list{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);display:grid}.realm-resource{gap:6px;padding:5px 10px}.realm-resource:first-child{border-left:0;padding-left:0}.realm-resource strong{font-size:25px}.realm-resource small{letter-spacing:.5px;font-size:8px}.realm-resource>svg{width:15px}.realm-resource-rate{font-size:13px}.realm-economy-popover{top:calc(100% + 8px)}}@media (width<=375px){.realm-resource{gap:4px;padding-inline:6px}.realm-resource strong{font-size:23px}.realm-resource small{font-size:7px}}@media (pointer:coarse){.realm-economy-heading button{min-width:44px;min-height:44px}}.main-menu{isolation:isolate;box-sizing:border-box;background:radial-gradient(ellipse at 50% 28%, #3a5246 0%, transparent 70%), radial-gradient(ellipse at 50% 30%, var(--forest), var(--forest-deep));grid-template-columns:minmax(0,460px);grid-template-areas:"panel";justify-content:center;align-items:center;gap:32px;min-height:100dvh;padding:32px clamp(16px,5vw,72px);display:grid;position:relative;overflow:hidden}.menu-atlas{z-index:-2;pointer-events:none;opacity:0;filter:blur(2.5px)saturate(.85)brightness(.92);transition:opacity 1.2s;position:fixed;inset:-24px;transform:scale(1.03)}.menu-atlas[data-ready]{opacity:1}.menu-atlas .phaser-host canvas{cursor:default}.menu-veil{z-index:-1;pointer-events:none;background:radial-gradient(42% 60%,#1b2721b3 0%,#1b272159 55%,#0000 100%),radial-gradient(#0000 50%,#141d18a6 100%);position:fixed;inset:0}.menu-panel{box-sizing:border-box;width:100%;color:var(--ink);grid-area:panel;gap:18px;padding:26px 26px 28px;animation:.6s ease-out both menu-rise;display:grid;box-shadow:0 24px 60px #0b120e8c}.menu-heading{text-align:center;gap:4px;display:grid}.menu-panel h1{font-family:var(--serif);letter-spacing:4px;color:#33402f;justify-content:center;align-items:center;gap:13px;margin:0;font-size:2.4rem;font-weight:600;display:flex}.menu-panel h1 svg{color:var(--gold)}.menu-chronicle{box-sizing:border-box;color:#e4dac0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#18231e9e;border:1px solid #f1e8d31f;border-radius:6px;width:min(380px,100%);padding:12px 14px 8px;position:absolute;bottom:clamp(16px,4vh,40px);right:clamp(16px,3vw,40px);box-shadow:0 8px 24px #0b120e4d}.menu-chronicle header{border-bottom:1px solid #f1e8d326;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:8px;display:flex}.menu-chronicle header strong{font-family:var(--serif);color:var(--gold);font-size:1.08rem;font-weight:600}.menu-live{letter-spacing:1.2px;text-transform:uppercase;color:#d7ccb0;align-items:center;gap:7px;font-size:.7rem;font-weight:700;display:inline-flex}.menu-live i{background:#d9614a;border-radius:50%;width:7px;height:7px;animation:1.8s ease-out infinite menu-live;box-shadow:0 0 #d9614a99}.menu-chronicle ol{margin:0;padding:0;list-style:none;display:grid}.menu-chronicle li{grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:8px 0;animation:.45s ease-out both menu-entry;display:grid}.menu-chronicle li+li{border-top:1px solid #f1e8d314}.menu-chronicle li:nth-child(2){opacity:.68}.menu-chronicle li:nth-child(3){opacity:.42}.menu-chronicle li>span{min-width:0;display:grid}.menu-chronicle li strong,.menu-chronicle li small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.menu-chronicle li strong{font-family:var(--serif);font-size:1rem;font-weight:600}.menu-chronicle li small{color:#c9bf9f;font-size:.75rem}.menu-chronicle li>svg:last-child{color:var(--gold)}.menu-updates{box-sizing:border-box;color:#f1e8d3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#18231ee6;border:1px solid #c2953a66;border-radius:6px;width:min(380px,100%);padding:4px 14px 10px;animation:.6s ease-out .2s both menu-rise;position:absolute;bottom:clamp(16px,4vh,40px);left:clamp(16px,3vw,40px);box-shadow:0 14px 38px #0b120e80,inset 0 1px #f1e8d31a}.menu-updates[data-collapsed]{padding-bottom:4px}.menu-updates h2{margin:0}.menu-updates h2 button{width:100%;min-height:36px;color:var(--gold);font-family:var(--serif);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:1.08rem;font-weight:600;display:flex}.menu-updates h2 button>svg{color:#c9bf9f;flex:none;margin-left:auto;transition:transform .2s;transform:rotate(90deg)}.menu-updates[data-collapsed] h2 button>svg{transform:rotate(-90deg)}.menu-updates h2 button:hover>svg,.menu-updates h2 button:focus-visible>svg{color:var(--gold)}.menu-updates-peek{white-space:nowrap;text-overflow:ellipsis;color:#f1e8d3;align-items:center;gap:8px;min-width:0;font-weight:500;display:flex;overflow:hidden}.menu-updates-peek:before{content:"·";color:#c9bf9f}#menu-updates-body{border-top:1px solid #f1e8d326}.menu-updates-list{margin:0;padding:0;list-style:none;display:grid}.menu-updates-list>li{border-left:2px solid #0000;padding:8px 0 8px 10px;animation:.45s ease-out .3s both menu-entry}.menu-updates-list>li:nth-child(2){animation-delay:.42s}.menu-updates-list>li:nth-child(3){animation-delay:.54s}.menu-updates-list>li+li{border-top:1px solid #f1e8d314}.menu-updates-list>li:has(.update-new){border-left-color:var(--gold);background:linear-gradient(90deg,#c2953a26,#0000 75%)}.menu-updates .update-entry h3{color:#f1e8d3;font-size:1.05rem}.menu-updates .update-entry time{color:#c9bf9f}.menu-updates .update-entry p{color:#d7ccb0;font-size:.78rem}.menu-updates .update-new{position:relative;overflow:hidden}.menu-updates .update-new:after{content:"";background:linear-gradient(100deg,#0000 30%,#fff8e899 50%,#0000 70%);animation:3.6s ease-in-out 1.2s infinite update-shine;position:absolute;inset:0;transform:translate(-100%)}.menu-updates-all{color:#d7ccb0;font:inherit;letter-spacing:1.2px;text-transform:uppercase;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin-top:6px;padding:4px 0;font-size:.68rem;font-weight:700;-webkit-text-decoration:underline #d7ccb066;text-decoration:underline #d7ccb066}.menu-updates-all:hover,.menu-updates-all:focus-visible{color:var(--gold)}.update-entry>header{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.update-entry h3{font-family:var(--serif);margin:0;font-size:1.15rem;font-weight:600}.update-entry time{color:var(--muted);margin-left:auto;font-size:.75rem}.update-new{color:#1b2721;letter-spacing:1px;text-transform:uppercase;background:#c2953a;border-radius:3px;align-self:center;padding:1px 6px;font-size:.64rem;font-weight:800}.update-entry p{margin:3px 0 0;font-size:.86rem;line-height:1.35}.updates-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.updates-list>li+li{border-top:1px solid var(--line);padding-top:12px}@keyframes menu-rise{0%{opacity:0;transform:translateY(14px)}}@keyframes menu-entry{0%{opacity:0;transform:translateY(-8px)}}@keyframes update-shine{40%,to{transform:translate(100%)}}@keyframes menu-live{70%{box-shadow:0 0 0 7px #d9614a00}to{box-shadow:0 0 #d9614a00}}@media (prefers-reduced-motion:reduce){.menu-panel,.menu-updates,.menu-updates-list>li,.menu-updates .update-new:after,.menu-chronicle li,.menu-live i{animation:none}.menu-atlas,.menu-updates h2 button>svg{transition:none}}.menu-section{border-top:1px solid #d3ccb2;gap:9px;padding-top:16px;display:grid}.menu-section h2{font-family:var(--serif);align-items:center;gap:9px;margin:0 0 2px;font-size:1.35rem;font-weight:600;display:flex}.menu-section .primary-button,.menu-section .secondary-button{letter-spacing:1px;text-transform:uppercase;min-height:44px;font-size:12px}.menu-save>span{min-width:0;display:grid}.menu-save small{color:var(--muted);font-size:.8rem}.menu-save{border:1px solid var(--line);background:#fffaf080;border-radius:4px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:46px;padding:6px 10px;display:grid}.menu-join{grid-template-columns:1fr auto;align-items:center;gap:6px 8px;display:grid}.menu-join label{color:var(--muted);grid-column:1/-1;font-size:.85rem;font-weight:600}.menu-join input{box-sizing:border-box;border:1px solid var(--line);min-width:0;min-height:44px;color:var(--ink);background:#fffaf0;border-radius:4px;padding:8px 10px;font-size:.92rem}.menu-join input[aria-invalid]{border-color:#8a2f24}.menu-error{color:#8a2f24;grid-column:1/-1;margin:0;font-weight:600}.menu-note{color:var(--muted);align-items:center;gap:8px;margin:0;display:flex}@media (width<=1279px),(height<=760px){.main-menu{grid-template-areas:"chronicle""panel";align-content:center;gap:14px}.menu-chronicle{grid-area:chronicle;justify-self:stretch;width:100%;padding:8px 12px 4px;position:static}.menu-chronicle li+li,.menu-updates{display:none}}@media (width<=860px){.main-menu{grid-template-areas:"panel";padding:16px}.menu-chronicle{display:none}.menu-atlas{width:max(100vw + 48px,150dvh);inset:-24px auto -24px 50%;transform:translate(-50%)scale(1.03)}.menu-veil{background:linear-gradient(#1b272126 0%,#1b272180 40%,#1b2721cc 100%)}}@media (width<=480px){.menu-panel{padding:20px 16px 22px}.menu-panel h1{letter-spacing:3px;font-size:1.8rem}}.mp-shell{background:radial-gradient(ellipse at 50% 30%, var(--forest), var(--forest-deep));place-items:center;min-height:100vh;padding:24px 12px;display:grid}.mp-panel{width:min(520px,100%);color:var(--ink);gap:14px;display:grid}.mp-panel h1{font-family:var(--serif);align-items:center;gap:10px;margin:0;font-size:1.9rem;display:flex}.mp-map{color:var(--muted);margin:-8px 0 0;font-weight:600}.mp-link{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;display:grid}.mp-link input{border:1px solid var(--line);min-width:0;color:var(--ink);font:inherit;background:#fffaf0;border-radius:4px;padding:8px 10px;font-size:.88rem}.mp-seats{gap:6px;margin:0;padding:0;list-style:none;display:grid}.mp-seats li{border:1px solid var(--line);background:#fffaf080;border-radius:4px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:48px;padding:6px 10px;display:grid}.mp-seats li.mine{border-color:var(--gold);background:#f3e3b680}.mp-seat-status{align-items:center;gap:8px;font-weight:600;display:flex}.mp-presence{color:var(--muted);font-weight:500}.mp-presence.online:before,.mp-presence:before{content:"";background:#a19f8c;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.mp-presence.online:before{background:#4f8a4a}.mp-setup,.mp-turn{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.mp-setup label{align-items:center;gap:8px;font-weight:600;display:flex}.mp-setup select{font:inherit;color:var(--ink);padding:6px 8px;font-weight:500}.mp-setup .primary-button,.mp-turn .primary-button,.mp-turn .secondary-button{margin-left:auto}.mp-note{color:var(--muted);margin:0}.mp-error{color:#8a2f24;margin:0;font-weight:600}.mp-back{justify-self:start}.mp-toast:empty{display:none}.mp-toast{background:var(--forest-deep);color:var(--paper);border-radius:4px;padding:10px 16px;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}@media (width<=480px){.mp-link{grid-template-columns:auto 1fr}.mp-link button{grid-column:1/-1}}.mp-header-status{color:#e4dec4;align-items:center;gap:8px;padding-left:16px;display:flex}.atlas .mp-orders{z-index:3;max-width:min(320px,100% - 36px);padding:6px 8px;position:absolute;top:64px;left:18px}.mp-orders ul{gap:2px;margin:0;padding:0;list-style:none;display:grid}.mp-orders li{min-height:32px;color:var(--ink);grid-template-columns:auto 1fr auto;align-items:center;gap:6px;font-size:.88rem;font-weight:600;display:grid}.mp-orders .icon-button{width:32px;height:32px}.mp-report{gap:8px;margin:0 0 14px;padding:0;list-style:none;display:grid}.mp-report li{grid-template-columns:auto 1fr;align-items:start;gap:8px;display:grid}@media (width<=700px){.mp-header-status{padding-left:8px}.atlas .mp-orders{top:58px;left:10px}}.mp-header-status .chip{color:#e4dec4;background:#ffffff14;border-color:#e4dec455;font-size:13px}.mp-header-status .chip>svg{color:var(--gold)}.mp-remote-battle .battle-resolution-actions{grid-template-columns:1fr 44px}.mp-remote-battle .battle-menu-trigger{grid-column:2}.tactical-battle{z-index:70;isolation:isolate;color:#304735;background:#d6ddc0;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;height:100dvh;font:13px/1.4 DM Sans,sans-serif;display:grid;position:fixed;inset:0;overflow:hidden}.tactical-battle button,.tactical-battle summary{min-height:44px;font:inherit;color:inherit;cursor:pointer;background:#eae2ca;border:1px solid #c6ba99;border-radius:3px;justify-content:center;align-items:center;gap:6px;padding:7px 10px;display:inline-flex}.tactical-battle button:hover:not(:disabled),.tactical-battle summary:hover{background:#ddd2b4}.tactical-battle button:disabled{opacity:.48;cursor:default}.tactical-battle button[aria-pressed=true]{color:#f6edd3;background:#294b36;border-color:#294b36}.tactical-battle svg{flex-shrink:0}.tactical-battle button:focus-visible,.tactical-battle summary:focus-visible{outline-offset:-3px;outline:2px solid #b68a37}.battle-canvas-wrap canvas:focus-visible{outline-offset:-1px;outline:1px solid #627453}.tactical-header{color:#f0e6c7;background:#203d2d;border-bottom:1px solid #b79d61;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:20px;min-height:64px;padding:9px 20px;display:grid}.battle-heading,.tactical-title{min-width:0}.tactical-title h1{font:500 27px/1.05 var(--serif);white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.tactical-title p{color:#c9ccb1;margin:4px 0 0;font-size:11px}.battle-balance,.battle-balance-side,.battle-balance-side>.tip-anchor{align-items:center;gap:9px;display:flex}.battle-balance{justify-content:center}.battle-balance b{font-variant-numeric:tabular-nums;font-size:17px;font-weight:500}.battle-balance-divider{color:#adb99a;padding-inline:3px;font-size:17px}.battle-own-crest{flex-shrink:0;display:inline-flex;position:relative}.battle-own-crest>svg:last-child:not(:first-child){color:#fff0c8;background:#294b36;border-radius:50%;width:13px;height:13px;padding:1px;position:absolute;bottom:-1px;right:-4px}.battle-header-status{justify-self:end;align-items:center;gap:18px;display:flex}.battle-phase{color:#c9ccb1;white-space:nowrap;font-size:11px}.battle-clock{font-variant-numeric:tabular-nums;font-size:16px;font-weight:500}.battle-map{flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.battle-fortification{background:#eae2ca;border-bottom:1px solid #c6ba99;flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:6px 12px;padding:6px 10px;font-size:12px;display:flex}.battle-fortification>.tip-anchor{align-items:center;gap:6px;display:inline-flex}.battle-fortification button,.battle-fortification select{max-width:150px;min-height:44px;color:inherit;font:inherit;background:#f3ecd6;border:1px solid #c6ba99;border-radius:3px;padding:5px 8px}.battle-fortification progress{accent-color:#947b38;width:70px;height:10px}.battle-canvas-wrap{flex:1;min-height:0;position:relative;overflow:hidden}.battle-canvas-wrap canvas{touch-action:none;cursor:crosshair;width:100%;height:100%;display:block;position:absolute;inset:0}.tactical-header{grid-area:1/1}.battle-map{grid-area:2/1/4}.battle-command-dock{z-index:1;background:#f0e8d2;border:1px solid #b9ad89;border-radius:4px;grid-area:3/1;grid-template-columns:380px 188px;justify-self:center;gap:8px 12px;width:604px;min-width:0;margin:8px 12px 12px;padding:10px;display:grid;position:relative;box-shadow:0 3px 14px #253e2b20}.battle-selection{grid-column:1/-1;align-items:center;gap:12px;min-width:0;min-height:36px;display:flex}.battle-selection h2{font:500 21px/1.1 var(--serif);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;overflow:hidden}.battle-selection>.tip-anchor{font-variant-numeric:tabular-nums;flex-shrink:0;align-items:center;gap:5px;font-size:11px;display:flex}.battle-selection b{font-weight:500}.battle-morale-bar{background:#d0c7a9;width:32px;height:4px;display:inline-block}.battle-morale-bar>i{background:#708455;height:100%;display:block}.battle-selected-ground{color:#586747}.battle-speed{flex-shrink:0;gap:2px;margin-left:auto;display:flex}.battle-speed button{background:0 0;border-color:#0000;min-width:32px;min-height:34px;padding:4px;font-size:11px}.battle-inventory{scrollbar-width:thin;scrollbar-color:#9ca581 transparent;grid-template-columns:repeat(8,44px);grid-auto-rows:48px;gap:4px;height:100px;display:grid;overflow:auto}.battle-inventory .battle-unit,.battle-unit-empty{background:#e4dcc3;border:1px solid #c9bd9b;border-radius:2px;flex-direction:column;justify-content:center;gap:0;width:44px;height:48px;min-height:48px;padding:2px;display:flex;position:relative}.battle-inventory .battle-unit.selected{color:#f6edd3;background:#294b36;border-color:#294b36}.battle-inventory .battle-unit.selected:hover:not(:disabled){background:#355c40}.battle-inventory .battle-unit.routing{color:#873f2e;background:#e7d5bd}.battle-inventory .battle-unit.routing.selected{color:#f6edd3;background:#6e4636}.battle-unit-empty{background:#ece6d3;border-color:#dcd3b9}.battle-unit>.rank{color:#8a6f39;position:absolute;top:2px;right:1px}.battle-unit.selected>.rank{color:#e4d195}.battle-slot-count{font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:3px;font-size:12px;font-weight:600;display:flex}.battle-slot-state{color:#a74a31;position:absolute;top:2px;left:1px}.battle-unit.selected .battle-slot-state{color:#f3bf90}.battle-orders-group{min-width:0;position:relative}.battle-order-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid}.battle-order-grid button{min-height:48px;padding:4px;font-size:11px}.battle-target-prompt{color:#694a24;background:#f0e8d2;border:1px solid #c3b48b;border-radius:3px;width:max-content;max-width:260px;margin:0;padding:7px 10px;font-size:12px;position:absolute;bottom:calc(100% + 14px);right:0;box-shadow:0 2px 8px #30473512}.battle-resolution-actions{border-top:1px solid #d5c9ab;grid-column:1/-1;grid-template-columns:1.05fr 1.15fr 1fr 44px;gap:5px;padding-top:8px;display:grid}.battle-resolution-actions button{padding:6px;font-size:12px}.battle-resolution-actions .battle-play{color:#f6edd3;background:#294b36;border-color:#294b36}.battle-resolution-actions .battle-play:hover:not(:disabled){background:#355c40}.battle-resolution-actions .battle-auto{color:#2c432f;background:#d8c695;border-color:#b29a60;font-weight:500}.battle-resolution-actions .battle-auto:hover:not(:disabled){background:#cab67e}.tactical-battle[data-phase=battle] .battle-auto{background:#eae2ca;border-color:#c6ba99;font-weight:400}.battle-hint{background:#f0e8d2;border:1px solid #c9bd9b;border-radius:3px;align-items:center;gap:10px;width:max-content;max-width:calc(100% - 24px);padding:6px 7px 6px 12px;font-size:12px;display:flex;position:absolute;bottom:9px;left:50%;transform:translate(-50%)}.battle-hint button{background:0 0;border:0;flex-shrink:0;width:32px;min-height:32px;padding:4px}.battle-command-dock>.battle-hint{max-width:calc(100vw - 24px);bottom:calc(100% + 8px)}.battle-pursuit{background:#f0e8d2f2;border:1px solid #c9bd9b;border-radius:3px;align-items:center;gap:12px;width:max-content;max-width:calc(100% - 24px);padding:6px 6px 6px 14px;font-size:12px;display:flex;position:absolute;top:9px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #3a33201f}.battle-pursuit strong{font:19px var(--serif);color:#294b36}.battle-pursuit .primary-button{color:#f6edd3;background:#294b36;border-color:#294b36;flex-shrink:0;min-height:34px;padding:4px 14px}@media (width<=620px){.battle-pursuit{flex-wrap:wrap;justify-content:center;row-gap:4px;width:calc(100% - 24px);padding:6px 10px}.battle-pursuit span{text-align:center;flex-basis:100%;order:3}}.battle-menu-actions{gap:9px;margin:20px 0;display:grid}.battle-menu-actions button{justify-content:flex-start}.battle-menu-actions button>span:last-child{margin-left:auto}.tactical-battle .modal{max-width:520px}.tactical-battle .modal .primary-button{color:#f6edd3;background:#294b36;border-color:#294b36}.tactical-battle .modal .full{width:100%}.battle-terrain-legend,.battle-help{margin:12px 0}.tactical-battle summary{-webkit-user-select:none;user-select:none;justify-content:flex-start;font-weight:500;list-style:none}.tactical-battle summary::-webkit-details-marker{display:none}.summary-chevron{margin-left:auto;transition:transform .15s}details[open]>summary .summary-chevron{transform:rotate(90deg)}.motion-reduced .summary-chevron{transition:none}.battle-help{margin-top:4px}.battle-help h4{font:500 15px/1.2 var(--serif);color:#294b36;margin:14px 0 4px}.battle-help p{margin:0 0 8px}.battle-help>summary+h4{margin-top:10px}.battle-ground-legend{padding:12px 0}.battle-ground-legend ul{grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none;display:grid}.battle-ground-legend li>.tip-anchor{align-items:center;gap:8px;min-height:30px;display:flex}.battle-ground-legend b{font-size:12px;font-weight:500}.ground-swatch{background:#c7cfa8;border:1px solid #7c7f5f80;border-radius:50%;flex-shrink:0;width:15px;height:11px;display:inline-block}.ground-woods{background:#7a9866}.ground-orchard{background:radial-gradient(circle,#8ba56c 35%,#d3d19c 40%)}.ground-hill{background:repeating-radial-gradient(#c3c58f 0 2px,#8e8f60 2px 3px)}.ground-marsh{background:#93a98a}.ground-water,.ground-river{background:#8eb0b0;border-color:#5f8689}.ground-ice{background:#dfe8ea;border-color:#8ea3a6}.ground-village{background:#a8664c;border-radius:2px}.ground-road{background:#e1d8ad;border-radius:2px;height:6px}.ground-ford{background:#b8c8bb;border-style:dashed}.ground-bridge{background:#d8ceaf;border-color:#6e6650;border-radius:1px}.ground-rocks{background:repeating-linear-gradient(60deg,#b5b49c 0 2px,#7c7b64 2px 3px);border-radius:2px}.ground-sea{background:#93b2b2;border-color:#5d8487}.ground-snow{background:#f4f4ee;border-color:#a9b2ad}.ground-mud{background:#8f7a58;border-color:#6b5a3f}.ground-palisade{background:repeating-linear-gradient(90deg,#8d6a43 0 2px,#d9cba4 2px 4px);border-radius:2px}.ground-walls,.ground-towers{background:#b9b19a;border:2px solid #6f6650;border-radius:2px}.campaign-app:has(>.tactical-battle){height:100dvh;min-height:0;padding-bottom:0;overflow:hidden}:is(.campaign-app:has(>.tactical-battle)>.main-header,.campaign-app:has(>.tactical-battle)>.campaign-main,.campaign-app:has(>.tactical-battle)>.campaign-footer){visibility:hidden}@media (width<=620px){.battle-command-dock{grid-template-columns:188px minmax(0,1fr);gap:8px;width:calc(100% - 16px);margin:6px 8px 8px;padding:8px}.battle-inventory{grid-template-columns:repeat(4,44px)}.battle-order-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.battle-order-grid button{min-height:44px}.battle-selection{flex-wrap:nowrap;gap:8px;min-height:32px}.battle-selection.has-wall-position{flex-wrap:wrap}.battle-selection.has-wall-position h2{flex-shrink:0}.battle-selection h2{max-width:calc(100% - 115px);font-size:19px}.battle-morale-bar{display:none}.battle-selection>.tip-anchor{font-size:11px}.battle-selected-ground b{display:none}.battle-speed button{min-width:31px;min-height:36px}.battle-resolution-actions{grid-template-columns:1fr 1.15fr 1fr 36px;gap:4px}.battle-resolution-actions button{gap:4px;padding:4px;font-size:11px}.battle-resolution-actions .battle-play>svg{display:none}.battle-target-prompt{max-width:200px;right:0}}@media (width<=450px){.tactical-header{grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;min-height:76px;padding:8px 12px}.battle-heading{grid-area:1/1}.tactical-title h1{font-size:23px}.tactical-title p{display:none}.battle-header-status{grid-area:1/2}.battle-phase{display:none}.battle-clock{font-size:13px}.battle-balance{grid-area:2/1/auto/-1;justify-self:center}.battle-balance,.battle-balance-side,.battle-balance-side>.tip-anchor{gap:6px}.battle-balance b{font-size:15px}.battle-own-crest>.crest{width:18px;height:21px}.battle-selection{gap:5px}.battle-selection h2{flex:1;max-width:none;font-size:18px}.battle-selected-ground{display:none}.battle-resolution-actions button{font-size:11px}}@media (width<=350px){.battle-command-dock{grid-template-columns:140px minmax(0,1fr)}.battle-inventory{grid-template-columns:repeat(3,44px)}.battle-resolution-actions{grid-template-columns:1fr 1.2fr 1fr 32px}.battle-resolution-actions button{padding:4px 2px;font-size:11px}.battle-auto>svg{display:none}.battle-selection h2{font-size:17px}.battle-speed button{min-width:27px}.battle-selection>.tip-anchor{display:none}}@media (height<=500px) and (width>=621px){.tactical-header{min-height:46px;padding-block:3px}.tactical-title h1{font-size:23px}.tactical-title p{display:none}.battle-command-dock{row-gap:5px;margin-block:4px;padding-block:6px}.battle-selection{min-height:24px}.battle-speed button{min-height:26px}.battle-resolution-actions{padding-top:5px}}.tactical-result-crest{justify-content:center;margin:15px 0 22px;display:flex}.tactical-result-stats{border-block:1px solid #d5c8a3;gap:14px;margin:24px 0;padding:18px 0;display:grid}.tactical-result-stats>section{grid-template-columns:repeat(3,1fr);align-items:end;row-gap:6px;display:grid}.tactical-result-stats>section>.eyebrow{text-align:center;grid-column:1/-1}.tactical-result-stats>section>div{text-align:center}.tactical-result-stats>section.result-enemy{border-top:1px dashed #d5c8a3;padding-top:14px}.tactical-result-stats>section.result-enemy strong{color:#8a3d2e}.tactical-result-stats strong{font:34px var(--serif);color:#496744;display:block}.tactical-result-stats small{color:#666e50;font-size:11px}.battle-retreat-note{text-align:center;color:#596747;margin:15px 0;font-size:12px;line-height:1.8}.battle-order-grid .battle-ability{color:#4b3b18;background:#efe1b4;border-color:#b29a60;justify-content:center;align-items:center;gap:4px;font-weight:600;display:inline-flex}.battle-order-grid .battle-ability:hover:not(:disabled){background:#e5d29a}.battle-order-grid .battle-ability[aria-pressed=true]{color:#2a2210;background:#c9a957;border-color:#8f7434}.ground-effects{gap:3px;margin:2px 0 0;padding:0;list-style:none;display:grid}.ground-effects li{white-space:nowrap;align-items:center;gap:6px;display:flex}.ground-effects li>span{align-items:center;gap:3px;display:inline-flex}.ground-effects li[data-tone=good]{color:#3c6a35}.ground-effects li[data-tone=bad]{color:#9a4630}.ground-effects-none{color:#6b6a55;margin:0}.terrain-probe{z-index:2;pointer-events:none;font-variant-numeric:tabular-nums;background:#fbf6e5f2;border:1px solid #c9b78a;border-top:2px solid #94713b;border-radius:2px;min-width:140px;max-width:280px;padding:7px 10px 8px;font-size:11px;line-height:1.45;position:absolute;box-shadow:0 6px 16px #4a3a1a2e}.terrain-probe strong{font:500 14px/1.2 var(--serif);color:#263f32;margin-bottom:3px;display:block}.battle-map-legend{z-index:2;background:#f0e8d2f2;border:1px solid #b9ad89;border-radius:4px;max-width:280px;margin:0;position:absolute;bottom:12px;right:12px;box-shadow:0 3px 14px #253e2b20}.battle-map-legend>summary{background:0 0;border:0;width:100%;min-height:36px;padding:6px 10px;font-size:12px}.battle-map-legend .battle-ground-legend{border-top:1px solid #d5c9ab;padding:2px 10px 9px}.battle-map-legend ul{grid-template-columns:1fr;gap:2px}.battle-map-legend ul[data-count="5"],.battle-map-legend ul[data-count="6"],.battle-map-legend ul[data-count="7"],.battle-map-legend ul[data-count="8"],.battle-map-legend ul[data-count="9"],.battle-map-legend ul[data-count="10"]{grid-template-columns:1fr 1fr;column-gap:12px}.battle-map-legend li>.tip-anchor{min-height:26px}@media (width<=1079px){.battle-map-legend{display:none}}@media (width>=1080px){.battle-menu-legend{display:none}}.tactical-battle .modal summary{width:100%;display:flex}.world-playback{z-index:15;color:#344b36;background:#f1e8d3f5;border:1px solid #b6a271;align-items:center;gap:14px;width:min(570px,100% - 64px);padding:15px 17px 18px;animation:.22s ease-out campaign-enter;display:flex;position:absolute;bottom:56px;left:50%;transform:translate(-50%);box-shadow:0 5px 25px #23352228,inset 0 0 0 3px #d8ca9f45}.playback-seal{color:#8d7949;border:1px solid #c5b484;border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.playback-copy{flex:1;min-width:0}.playback-copy strong{font-family:var(--serif);font-size:21px;font-weight:600;line-height:1.15;display:block}.playback-copy small{color:#7b8068;margin-top:5px;font-size:10px;line-height:1.6;display:block}.playback-skip{color:#6b765d;border-left:1px solid #c6bb97;flex-shrink:0;align-items:center;gap:3px;padding:8px 0 8px 12px;font-size:10px;display:flex}.playback-skip:hover{color:#233f2b}.playback-progress{background:#d8cdad;height:3px;position:absolute;bottom:0;left:3px;right:3px}.playback-progress i{background:#7d905c;height:100%;transition:width .2s ease-out;display:block}.modal[open]{animation:.2s ease-out council-open}.modal[open]::backdrop{animation:.2s ease-out backdrop-open}.losses>div:nth-child(2){animation-delay:.1s}@keyframes campaign-enter{0%{opacity:0;translate:0 6px}to{opacity:1;translate:0}}@keyframes province-enter{0%{opacity:.65;translate:4px}to{opacity:1;translate:0}}@keyframes council-open{0%{opacity:0;translate:0 7px}to{opacity:1;translate:0}}@keyframes backdrop-open{0%{opacity:0}to{opacity:1}}.change-figure{font-variant-numeric:tabular-nums;display:inline-block;position:relative}.change-figure>.figure-changed{animation:.42s ease-out figure-change;display:inline-block}.change-figure>.figure-delta{z-index:4;color:#36583b;font:600 11px/1.2 var(--sans,sans-serif);white-space:nowrap;pointer-events:none;background:#f1e8d3;border-radius:2px;padding:1px 4px;animation:1.1s ease-out both figure-receipt;position:absolute;top:-.9em;left:50%}.change-figure[data-change=loss]>.figure-delta{color:#924f39}@keyframes figure-change{0%{color:#a47c31;text-shadow:0 0 8px #d2b36688}to{color:inherit;text-shadow:none}}@keyframes figure-receipt{0%{opacity:0;translate:0 3px}15%,65%{opacity:1}to{opacity:0;translate:0 -7px}}@keyframes promotion-ring{0%{opacity:1;transform:scale(.8)}to{opacity:0;transform:scale(1.4)}}@keyframes level-star{0%,35%{color:#bd923d;filter:drop-shadow(0 0 3px #c6a05188)}to{filter:none}}@keyframes building-completed{0%,35%{color:#a47c31;box-shadow:0 0 0 3px #c6a05145}to{box-shadow:0 0 0 7px #c6a05100}}@keyframes season-seal{0%{opacity:.5;transform:rotate(-7deg)scale(.94)}to{opacity:1;transform:none}}@keyframes season-date{0%{opacity:.4;translate:0 3px}to{opacity:1;translate:0}}@keyframes ledger-content{0%{opacity:.65}to{opacity:1}}@keyframes order-blocked{25%{translate:-2px}65%{translate:2px}to{translate:0}}.motion-reduced .figure-delta{display:none}@media (prefers-reduced-motion:reduce){.figure-delta{display:none}}@media (width<=700px){.world-playback{gap:9px;width:calc(100% - 30px);padding:11px 12px 14px;bottom:44px}.playback-copy strong{font-size:17px}.playback-copy small{font-size:8px}.playback-seal{width:29px;height:29px}.playback-seal svg{width:18px}.playback-skip{padding-left:8px;font-size:9px}}.mobile-settings-close{display:none!important}.mobile-campaign.campaign-app{overscroll-behavior:none;height:100dvh;min-height:0;padding:0;overflow:hidden}.mobile-campaign .main-header{height:auto;min-height:60px;padding:max(6px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) 6px max(10px, env(safe-area-inset-left));z-index:30;flex:none;gap:6px;display:flex}.mobile-campaign .main-header .wordmark{display:none}.mobile-campaign .main-header .header-house{border:0;flex:none;order:-1;margin:0;padding:0}.mobile-campaign .header-house>span{display:none}.mobile-campaign .header-house .crest{width:26px;height:31px}.mobile-campaign .realm-resources{flex:1;min-width:0;margin:0;position:static}.mobile-campaign .realm-resource-list{justify-content:space-evenly;align-items:center;gap:4px;display:flex}.mobile-campaign .realm-resource{border:0;gap:5px;min-width:44px;min-height:44px;padding:2px 5px}.mobile-campaign .realm-resource strong{font-size:21px;line-height:1.1}.mobile-campaign .realm-resource small{display:none}.mobile-campaign .realm-resource-rate{gap:3px;font-size:11px;display:flex}.mobile-campaign .realm-resource-figures{flex-direction:column;align-items:flex-start;gap:3px}.mobile-campaign .settings-menu{flex:none;margin:0;position:static}.mobile-campaign .settings-trigger{width:44px;min-height:44px;padding:10px}.mobile-campaign .main-header .mp-header-status{flex-direction:column;flex:none;gap:3px;padding:0}.mobile-campaign .mp-header-status .chip{min-height:20px;padding:1px 3px;font-size:11px}.mobile-campaign.multiplayer .realm-resource strong{font-size:19px}.mobile-campaign .campaign-main{flex-direction:column;flex:1;min-height:0;overflow:hidden}.mobile-campaign .atlas{flex:1;width:100%;height:auto;min-height:0}.mobile-campaign .atlas .phaser-host,.mobile-campaign .atlas .mobile-atlas{inset:54px 0 0}.mobile-campaign .phaser-host canvas{touch-action:none;cursor:default!important}.mobile-campaign .map-tools{display:none}.mobile-campaign .atlas .map-top-actions{border-radius:4px;max-width:calc(100% - 20px);padding:0;top:6px;left:10px;box-shadow:0 1px 3px #5d4e2920}.mobile-campaign .map-layer,.mobile-campaign .map-mode-switch .map-layer{border-radius:3px;gap:6px;min-width:90px;min-height:44px;padding:8px 12px;font-size:12px}.mobile-campaign .map-layer svg{width:15px;height:15px}.mobile-campaign .atlas:after{opacity:.22}.mobile-atlas{z-index:8;pointer-events:none;touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;overflow:hidden}.mobile-map-place{z-index:2;height:16px;position:absolute;transform:translate(-50%,-50%)}.mobile-map-label{color:#34432f;width:100%;min-width:44px;min-height:44px;font:600 var(--map-label-size)/1.15 var(--serif);letter-spacing:-.1px;pointer-events:none;text-shadow:0 1px #fff8e5;touch-action:none;place-items:center;padding:0;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mobile-map-label>span{pointer-events:auto}.mobile-map-label:active:not(:disabled){transform:translate(-50%,-50%)}.mobile-atlas[data-detail=true] .mobile-map-label{pointer-events:auto}.mobile-atlas[data-detail=true] .mobile-army-count{min-width:36px;height:20px;font-size:12px}.mobile-map-label>.mobile-label-name{white-space:nowrap;background:#f2e9d0f5;border-radius:2px;padding:1px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mobile-map-label>.mobile-opportunity-mark{position:absolute;top:calc(50% - 14px);right:-3px}.mobile-map-label>.mobile-occupation-tag{color:#fff3d0;font:700 calc(var(--map-label-size) - 1px) / 1.2 var(--serif);text-shadow:none;white-space:nowrap;pointer-events:none;background:#8e3b2c;border:1px solid #f3e3b8;border-radius:2px;align-items:center;gap:1px;padding:0 3px 0 2px;display:flex;position:absolute;top:50%;left:calc(100% - 1px);transform:translateY(-50%)}.mobile-occupation-tag svg{stroke-width:2.4px}.mobile-label-shield{width:9px;height:10px;color:var(--owner-color);clip-path:polygon(0 0,100% 0,100% 74%,50% 100%,0 74%);background:#f2e9d0;place-items:center;display:grid;position:absolute;top:calc(50% - 14px);left:3px}.mobile-label-shield svg{width:8px;height:8px}.mobile-map-label.own{text-shadow:none;font-weight:700}.mobile-map-label.own>.mobile-label-name{background:var(--owner-color);color:#fff3d0}.mobile-map-label.own .mobile-label-shield{color:#fff3d0;background:var(--owner-color)}.mobile-map-label.full{font-weight:700}.mobile-map-label.full>.mobile-label-name{box-shadow:0 0 0 1px var(--owner-color), 0 2px 3px #3e39292a}.mobile-map-label[aria-pressed=true]>.mobile-label-name{outline-offset:1px;outline:2px solid #bb923e}.mobile-map-label.march-target>.mobile-label-name{outline-offset:1px;outline:2px solid #a77432}.mobile-map-label:disabled{opacity:1}.mobile-armies{pointer-events:none;z-index:1;display:flex;position:absolute;transform:translate(-50%,-100%)}.mobile-army{pointer-events:auto;touch-action:none;flex-direction:column;justify-content:end;align-items:center;width:44px;min-height:44px;padding:0;display:flex}.mobile-army .atlas-sprite{width:calc(var(--pawn-height) * .9);height:var(--pawn-height);aspect-ratio:auto;overflow:hidden}.mobile-army-count{color:#fff3d0;border:1px solid #ecdaa1;border-radius:2px;justify-content:center;align-items:center;gap:2px;min-width:30px;height:14px;padding:0 2px;font:600 10px/1 DM Sans,sans-serif;display:inline-flex}.mobile-army.selected .mobile-army-count{outline:2px solid #bb923e}.mobile-army:disabled{opacity:1}.mobile-campaign-dock{z-index:9;background:linear-gradient(100deg,#f8f0da,#eee3c5);border:1px solid #c9b887;border-top-color:#94713b;border-radius:18px;flex:none;margin:0 10px 8px;padding:10px 12px;box-shadow:0 3px 18px #3b30251c}.mobile-dock-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.mobile-province-name{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.mobile-province-name>.crest{flex:none}.mobile-campaign-dock h2{font:600 25px/1.05 var(--serif);overflow-wrap:anywhere;margin:0}.mobile-province-owner{color:#6b7056;margin-top:3px;font-size:11px;display:block}.mobile-detail-button,.mobile-cancel{color:#2d4b36;background:#f8f0da;border:1px solid #c9b887;border-radius:10px;flex:none;align-items:center;gap:8px;min-height:44px;padding:7px 10px;font-size:13px;display:flex}.mobile-detail-button{background:0 0;border-color:#0000}.mobile-detail-button svg{transform:rotate(-90deg)}.mobile-dock-bottom{flex-wrap:nowrap;align-items:center;gap:6px;min-height:44px;margin-top:9px;display:flex}.mobile-dock-figures{flex-wrap:wrap;flex:1;align-items:center;gap:5px;margin-top:4px;display:flex}.mobile-dock-figures .chip{background:0 0;border:0;padding:2px 4px;font-size:12px}.mobile-march-button{color:#fff1cb;min-height:44px;font:600 15px var(--serif);background:linear-gradient(#3b5d3e,#26462f);border:1px solid #294d33;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:7px;padding:8px;display:inline-flex}.mobile-province-action{color:#2d4b36;border:1px solid #c9b887;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:50px;min-height:46px;padding:3px 6px;font-size:11px;display:flex}.mobile-province-action:active{background:#e2d4af}.mobile-split-button{border:1px solid #b9ad85;border-radius:10px;flex:none;place-items:center;width:44px;height:44px;display:grid}.mobile-campaign-dock.choosing-march{flex-direction:column;max-height:42dvh;padding:6px 10px;display:flex;overflow:hidden}.choosing-march .mobile-dock-heading h2{font-size:21px}.mobile-march-content{overscroll-behavior:contain;min-height:0;overflow-y:auto}.mobile-march-targets{scroll-snap-type:x proximity;overscroll-behavior-x:contain;gap:8px;padding:7px 0;display:flex;overflow-x:auto}.mobile-march-target{text-align:left;scroll-snap-align:start;background:#faf3df;border:1px solid #cfc19a;border-radius:10px;flex:0 0 min(190px,68vw);align-items:center;gap:6px;min-width:0;min-height:76px;padding:9px;display:flex}.mobile-march-target>span:first-child{flex:1;min-width:0}.mobile-march-target strong{font:600 17px var(--serif);overflow-wrap:anywhere;display:block}.mobile-march-target small{color:#747257;font-size:11px;display:block}.mobile-march-target .chip{background:0 0;border:0;gap:2px;padding:1px;font-size:11px}.mobile-march-target .march-toll{margin-top:2px;padding:0}.mobile-no-targets{margin:10px 0;font-size:13px}.mobile-detachment summary{min-height:44px;padding-top:12px;font-size:13px}.mobile-detachment .army-card{background:0 0;border:0;padding:8px 0}.mobile-detachment .army-card-heading{display:none}.mobile-detachment .split-row{font-size:14px}.mobile-detachment .split-head{font-size:11px}.mobile-detachment .split-stepper button,.mobile-detachment .split-stepper input{height:44px}.mobile-detachment .split-stepper button{width:44px}.mobile-detachment .split-stepper input{width:44px;font-size:16px}.mobile-campaign .campaign-footer{height:auto;min-height:64px;padding:7px max(12px, env(safe-area-inset-right)) max(7px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));box-shadow:none;background:#243c30;flex:none;gap:10px;position:relative;inset:auto;overflow:visible}.mobile-campaign .campaign-footer .turn-date,.mobile-campaign .campaign-footer.has-notice .turn-date{flex:1;display:flex}.mobile-campaign .campaign-footer:before,.mobile-campaign .campaign-footer:after{display:none}.mobile-campaign .campaign-footer .turn-date strong{font-size:22px}.mobile-campaign .campaign-footer .turn-date small{margin-top:3px;font-size:10px}.mobile-campaign .campaign-footer .end-turn{clip-path:none;width:auto;min-width:132px;height:46px;box-shadow:none;background:#e4ca86;border:1px solid #f0dcaa;border-radius:12px;outline:0;padding:7px 14px}.mobile-campaign .campaign-footer .end-turn:before,.mobile-campaign .campaign-footer .end-turn:after{display:none}.mobile-campaign .campaign-footer .end-turn:focus-visible{outline-offset:3px;outline:2px solid #fff0bb}.mobile-campaign .campaign-footer .end-turn strong{font-size:21px}.mobile-campaign .footer-notification:empty{display:none}.mobile-campaign .footer-notification:not(:empty){z-index:21;background:#243f30;border:1px solid #b4a06c;padding:4px 8px;position:absolute;bottom:calc(100% + 6px);left:10px;right:10px;box-shadow:0 2px 7px #1e352340}.mobile-campaign .campaign-notice{justify-content:flex-start;font-size:12px}.mobile-campaign .campaign-notice button{min-width:44px;min-height:44px}.mobile-campaign.mobile-marching .campaign-footer{display:none}.mobile-campaign .atlas .mp-orders{z-index:9;max-width:calc(100% - 210px);max-height:46px;top:6px;left:auto;right:10px;overflow-y:auto}.mobile-campaign .mp-orders .icon-button{min-width:44px;min-height:44px}.mobile-province-detail{padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);color:#263f32;width:100%;max-width:none;height:min(76dvh,760px);max-height:none;transform:translateY(var(--sheet-drag,0px));background:#f3ecd7;border:0;border-radius:22px 22px 0 0;margin:0;transition:transform .18s ease-out;position:fixed;inset:auto 0 0;overflow:hidden;box-shadow:0 -10px 50px #14291d50}.mobile-province-detail[data-dragging]{transition:none}.mobile-province-detail::backdrop{background:#172c215c}.mobile-province-detail .ledger-panel.province-panel{width:100%;height:100%;box-shadow:none;border:0;padding:0;overflow:hidden}.mobile-province-detail .province-sheet.province-ledger{height:100%;min-height:0;box-shadow:none;border:0;grid-template-rows:auto auto minmax(0,1fr) auto;animation:none;display:grid;overflow:hidden}.mobile-province-back{touch-action:none;border-bottom:1px solid #d8cba6;grid-row:1;padding:12px 16px 0;position:relative}.mobile-province-back:before{content:"";background:#b7a982;border-radius:4px;width:36px;height:4px;position:absolute;top:8px;left:calc(50% - 18px)}.mobile-province-back button{color:#33523b;align-items:center;gap:9px;min-height:48px;font-size:13px;display:flex}.mobile-province-back svg{transform:rotate(180deg)}.mobile-province-detail .ledger-header{grid-row:2;padding:9px 18px 12px}.mobile-province-detail .ledger-kicker{margin-bottom:7px;font-size:11px}.mobile-province-detail .ledger-owner{font-size:12px}.mobile-province-detail .ledger-title h2{font-size:34px}.mobile-province-detail .ledger-title .province-vignette{flex-basis:64px;width:64px;height:54px}.mobile-province-detail .ledger-title p{margin-top:3px;font-size:14px}.mobile-province-detail .province-tabs{background:#eee3c6;border-top:1px solid #cfbf98;border-bottom:0;grid-row:4;gap:0;padding-inline:10px}.mobile-province-detail .province-tabpanel{grid-area:3/1}.mobile-province-detail .province-tabs>button{flex-direction:column;flex:1;justify-content:center;gap:6px;min-height:60px;font-size:13px}.mobile-province-detail .province-tabs .province-tab-label{white-space:nowrap;clip:auto!important;width:auto!important;height:auto!important;position:static!important}.mobile-province-detail .province-tabpanel:not([hidden]){overscroll-behavior:contain;scrollbar-width:thin;min-height:0;padding-bottom:24px;display:block;overflow-y:auto}.mobile-province-detail .ledger-stats{margin-inline:18px}.mobile-province-detail .ledger-stats dd{font-size:29px}.mobile-province-detail .ledger-stats dt{font-size:11px}.mobile-province-detail .ledger-stat-trigger{min-height:44px}.mobile-province-detail .ledger-military,.mobile-province-detail .province-facts{margin-inline:18px}.mobile-province-detail .province-facts .chip{min-height:40px;font-size:13px}.mobile-province-detail .ledger-section-label{font-size:12px}.mobile-province-detail .ledger-panel .march-button,.mobile-province-detail .split-button{min-height:46px;font-size:18px}.mobile-province-detail .ledger-link-button,.mobile-province-detail .ledger-chronicle summary{min-height:44px;font-size:13px}.mobile-province-detail .ledger-recruit-content{padding-inline:18px}.mobile-province-detail .ledger-recruit-row{grid-template-columns:30px minmax(0,1fr) auto;gap:9px;padding-block:12px}.mobile-province-detail .ledger-unit-name strong{font-size:21px}.mobile-province-detail .ledger-unit-name small{font-size:12px}.mobile-province-detail .ledger-add-company{min-width:76px;min-height:46px;font-size:13px}.mobile-province-detail .ledger-foreign-note{font-size:14px}.mobile-province-detail .development-ledger{margin-inline:18px}.mobile-province-detail .development-row{padding-block:14px}.mobile-province-detail .development-row button{min-height:44px}.mobile-province-detail .development-row small{font-size:12px}.mobile-province-detail .recruit-tier label{min-height:44px}.mobile-province-detail .split-stepper input{font-size:16px}@media (width<=700px),(width<=1000px) and (height<=550px){.modal,.modal.wide{width:100%;max-width:none;height:100dvh;max-height:100dvh;padding:max(12px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));border:0;border-radius:0;margin:0}.modal-head{z-index:3;background:#f1e9d0;justify-content:flex-end;position:sticky;top:-12px}.modal-head .icon-button{min-width:44px;min-height:44px}.modal .dialog-actions{z-index:2;background:#f1e9d0;margin-inline:-2px;padding:12px 2px;position:sticky;bottom:-18px}.modal .dialog-actions button{min-height:44px;font-size:14px}.modal .forecast-forces{gap:12px}.mobile-campaign .settings-popover{width:100%;max-width:none;height:100dvh;max-height:none;padding:max(12px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));box-shadow:none;z-index:50;background:#f1e8ce;border:0;position:fixed;inset:0;overflow-y:auto}.mobile-campaign .settings-heading{display:none}.mobile-campaign .mobile-settings-close{justify-content:flex-end;margin-bottom:6px;display:flex!important}.mobile-campaign .settings-popover>button{min-height:48px;padding:8px 6px}.mobile-campaign .settings-popover strong{font-size:23px}.mobile-campaign .settings-separator{margin-block:5px}.mobile-campaign .realm-economy-popover{width:100%;max-width:none;height:100dvh;padding:max(14px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));z-index:45;box-shadow:none;background:#f1e8ce;border:0;position:fixed;inset:0;overflow-y:auto}.mobile-campaign .realm-economy-heading button{min-width:44px;min-height:44px}.mobile-campaign .realm-economy-popover .economy-breakdown,.mobile-campaign .realm-economy-popover p{font-size:14px}}@media (width<=375px){.mobile-campaign .main-header{gap:2px;padding-inline:6px}.mobile-campaign .realm-resource strong{font-size:19px}.mobile-campaign .realm-resource{gap:3px;padding-inline:3px}.mobile-campaign-dock{margin-inline:6px;padding-inline:9px}.mobile-dock-figures{gap:0}.mobile-march-button{padding-inline:8px}.mobile-campaign-dock h2{font-size:23px}.mobile-province-detail .province-tabs>button{gap:4px;font-size:12px}.mobile-province-detail .province-tabs{padding-inline:5px}}@media (width<=700px) and (height<=650px){.mobile-province-detail{height:calc(100dvh - 100px)}.mobile-province-detail .ledger-header{padding:6px 16px 8px}.mobile-province-detail .ledger-kicker{margin-bottom:4px}.mobile-province-detail .ledger-title h2{font-size:28px}.mobile-province-detail .ledger-title p{font-size:12px}.mobile-province-detail .ledger-title .province-vignette{flex-basis:52px;width:52px;height:44px}.mobile-province-detail .province-tabs>button{min-height:54px}.mobile-campaign .main-header{min-height:52px;padding-block:4px}.mobile-campaign .campaign-footer{min-height:56px;padding-block:5px}.mobile-campaign-dock{padding-block:6px}.mobile-campaign .atlas .phaser-host,.mobile-campaign .atlas .mobile-atlas{top:48px}}@media (width>=701px) and (width<=1000px) and (height<=550px){.mobile-campaign .campaign-main{flex-direction:row}.mobile-campaign .atlas{width:auto;min-width:0}.mobile-campaign-dock{flex-direction:column;justify-content:center;align-self:stretch;width:230px;margin:5px 10px 8px 0;display:flex}.mobile-campaign-dock:not(.choosing-march) .mobile-dock-heading{flex-wrap:wrap}.mobile-campaign-dock:not(.choosing-march) .mobile-province-name{flex-basis:100%}.mobile-campaign-dock:not(.choosing-march) .mobile-province-name h2{font-size:28px}.mobile-campaign-dock.choosing-march{justify-content:start;max-height:none}.mobile-march-targets{flex-direction:column}.mobile-march-target{flex-basis:auto}.mobile-province-detail{border-radius:0;height:100dvh}.mobile-campaign .main-header{min-height:50px;padding-block:3px}.mobile-campaign .campaign-footer{min-height:52px;padding-block:3px}.mobile-campaign .atlas .phaser-host,.mobile-campaign .atlas .mobile-atlas{top:48px}.mobile-province-detail .province-sheet.province-ledger{grid-template-rows:auto auto minmax(0,1fr);grid-template-columns:minmax(220px,32%) minmax(0,1fr)}.mobile-province-back{grid-column:1}.mobile-province-detail .ledger-header{grid-area:2/1}.mobile-province-detail .province-tabs{flex-wrap:wrap;grid-area:3/1;align-self:start}.mobile-province-detail .province-tabs>button{flex-basis:40%}.mobile-province-detail .province-tabpanel{border-left:1px solid #cabb96;grid-area:1/2/-1}}.mobile-opportunity-mark{color:#7b4e2b;background:#f5eacb;border:1px solid #b69a64;border-radius:2px;align-items:center;gap:2px;padding:1px 2px;font-size:9px;line-height:11px;display:inline-flex}.mobile-opportunity-mark[data-urgent=true]{color:#943f2d}.mobile-opportunity-mark[data-phase=appearing]{animation:opportunity-appear var(--opportunity-duration) cubic-bezier(.2, .7, .2, 1) both;transform-origin:bottom}.mobile-map-label>.mobile-opportunity-mark[data-phase=leaving]{pointer-events:none;animation:opportunity-depart var(--opportunity-duration) ease-in both;transform-origin:bottom}@keyframes opportunity-appear{0%{opacity:0;transform:translateY(5px)scale(.82);box-shadow:0 0 0 4px #d5b36635}to{opacity:1;transform:translateY(0)scale(1);box-shadow:0 0 #d5b36600}}@keyframes opportunity-depart{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-5px)scale(.86)}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.map-accessibility{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.motion-reduced *,.motion-reduced :before,.motion-reduced :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
