:root{--ink:#10140f;--ink-soft:#1a2119;--panel:#212a20;--panel-high:#2b3629;--cream:#fff2d2;--muted:#b9b79e;--gold:#f0bd48;--gold-bright:#ffe17b;--vermilion:#d34a2d;--mint:#71e9c3;--indigo:#29366f;--danger:#f06b55;--line:#fff2d229;--serif:Georgia, "Times New Roman", serif;--sans:"Trebuchet MS", "Gill Sans", Arial, sans-serif;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px)}*{box-sizing:border-box}html,body{overscroll-behavior:none;min-height:100%}body{background:var(--ink);color:var(--cream);font-family:var(--sans);margin:0}button{color:inherit;font:inherit}button,canvas{-webkit-tap-highlight-color:transparent}:is(button:focus-visible,canvas:focus-visible){outline:3px solid var(--gold-bright);outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.48;transform:none!important}.eyebrow{color:var(--gold);letter-spacing:.2em;text-transform:uppercase;font-size:10px;font-weight:900}.brand-mark{object-fit:contain;filter:drop-shadow(0 5px 9px #0000008f);flex:none;width:50px;height:50px;display:block}.primary-button,.secondary-button,.text-button{cursor:pointer;text-transform:uppercase;letter-spacing:.13em;border:0;font-size:10px;font-weight:900;transition:transform .18s,border-color .18s,background .18s}.primary-button{background:linear-gradient(135deg, var(--gold-bright), var(--gold));color:#2c2716;border:1px solid #ffde76;justify-content:space-between;align-items:center;gap:28px;min-height:48px;padding:0 20px;display:inline-flex;box-shadow:0 10px 30px #00000040}.secondary-button{border:1px solid var(--line);background:#fff2d20f;min-height:44px;padding:0 18px}.text-button{color:var(--cream);background:0 0;border-bottom:1px solid #fff2d259;padding:13px 4px}.title-screen{isolation:isolate;background:#192019;grid-template-rows:auto 1fr;min-height:100svh;display:grid;position:relative;overflow:auto}.title-art{z-index:-3;background:url(/game/title-art.jpg) 58%/cover no-repeat;animation:1.4s ease-out both title-arrive;position:absolute;inset:0;transform:scale(1.015)}.title-vignette{z-index:-2;background:linear-gradient(90deg,#070b08fa 0%,#0b0f0beb 35%,#0a0e0a59 68%,#070a0852),linear-gradient(#0000 42%,#070a08f0),radial-gradient(circle at 76% 48%,#0000 0 24%,#080b0861 80%);position:absolute;inset:0}.title-header{background:#080c092e;border-bottom:1px solid #fff2d229;align-items:center;gap:13px;height:82px;padding:0 clamp(24px,4.5vw,78px);display:flex}.title-header>strong{color:var(--cream);font:700 17px/1 var(--serif);letter-spacing:.16em;text-shadow:0 2px 10px #000000b8}.alpha-label{color:#fff2d2ad;margin-left:auto;font-size:12px;font-weight:700}.start-shell{place-self:center;width:min(790px,100vw - 48px);margin:clamp(32px,5vh,60px) 24px;animation:.85s ease-out .15s both copy-arrive;position:relative;top:-100px}.title-banner{justify-content:center;margin:0 0 20px;display:flex}.title-banner img{filter:drop-shadow(0 13px 20px #0000009e);width:min(480px,92%);height:auto;display:block}.start-panel{border:1px solid #ffe17b57;border-top:3px solid var(--gold);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(145deg,#212a20f7,#0e140ff7);padding:clamp(22px,3vw,32px);box-shadow:0 24px 64px #00000085}.start-panel button,.lobby-modal button{letter-spacing:0;text-transform:none}.start-steps{width:min(440px,100%);margin:0 0 27px;padding:0;list-style:none;display:flex}.start-steps li{color:#fff2d27a;flex:1;justify-items:center;gap:6px;font-size:12px;font-weight:700;display:grid;position:relative}.start-steps li:not(:last-child):after{content:"";z-index:0;background:#fff2d233;height:1px;position:absolute;top:14px;left:calc(50% + 15px);right:calc(15px - 50%)}.start-steps li.is-complete:not(:last-child):after{background:#f0bd48a8}.start-steps i{z-index:1;color:#fff2d2a8;background:#1a2119;border:1px solid #fff2d247;border-radius:50%;place-items:center;width:29px;height:29px;font-size:12px;font-style:normal;display:grid;position:relative}.start-steps .is-current,.start-steps .is-complete{color:var(--cream)}.start-steps .is-current i,.start-steps .is-complete i{background:var(--gold);border-color:var(--gold-bright);color:#292312}.start-panel-heading{margin-bottom:19px}.start-panel-heading h1{font:700 clamp(32px, 4vw, 43px)/1 var(--serif);letter-spacing:-.025em;margin:0 0 6px}.start-panel-heading p{color:#fff2d29e;margin:0;font-size:14px;line-height:1.45}.mode-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.mode-card{border:1px solid var(--line);min-width:0;color:var(--cream);text-align:left;cursor:pointer;background:#fff2d209;gap:6px;padding:18px;transition:transform .16s,background .16s,border-color .16s;display:grid;position:relative}.mode-card.is-selected:not(:disabled){border-color:var(--gold);background:#f0bd481f;transform:translateY(-2px)}.mode-card:disabled{background:#0b0f0b61;border-color:#fff2d21a}.mode-card b{font:700 20px var(--serif)}.mode-card small{color:#fff2d29e;font-size:13px}.mode-card-status{color:var(--gold);letter-spacing:.09em;text-transform:uppercase;font-size:9px;font-weight:900;position:absolute;top:10px;right:12px}.join-code-field{gap:7px;margin-top:14px;display:grid}.join-code-field span{font-size:13px;font-weight:700}.join-code-field input{width:min(310px,100%);height:46px;color:var(--gold-bright);font:800 15px var(--sans);letter-spacing:.12em;text-transform:uppercase;background:#fff2d212;border:1px solid #ffe17b61;padding:0 13px}.join-code-field input::placeholder{color:#fff2d25c;letter-spacing:0;text-transform:none;font-weight:400}.step-actions{justify-content:space-between;align-items:center;gap:18px;margin-top:24px;display:flex}.step-actions .primary-button{justify-content:center;min-width:128px;font-size:14px}.step-actions .text-button{font-size:13px}.step-actions--faction>div{align-items:center;gap:16px;display:flex}.start-submit{justify-content:flex-end;max-width:440px}.start-notice{border-left:3px solid var(--danger);color:#ffe2d7;background:#6e1b11cc;margin:0;padding:9px 11px;font-size:12px;line-height:1.4}.start-faction-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.start-faction-card{border:1px solid var(--line);min-width:0;color:var(--cream);text-align:left;cursor:pointer;background:#fff2d209;grid-template-rows:84px auto auto 1fr;justify-items:start;gap:7px;padding:16px;transition:transform .16s,background .16s,border-color .16s;display:grid}.start-faction-card.is-selected{background:#f0bd481a;transform:translateY(-2px)}.start-faction-emblem{object-fit:contain;filter:drop-shadow(0 7px 9px #00000094);transform-origin:50%;width:82px;height:82px;transition:transform .18s,filter .18s;display:block}.start-faction-card.is-selected .start-faction-emblem{filter:drop-shadow(0 8px 12px #000000ad)drop-shadow(0 0 8px #ffe17b4d);transform:scale(1.06)}.start-faction-card b{font:700 17px/1.15 var(--serif)}.start-faction-card small{color:#fff2d2ad;min-height:34px;font-size:12px;line-height:1.4}.start-faction-card p{border-top:1px solid var(--line);color:var(--gold-bright);align-self:end;margin:5px 0 0;padding-top:11px;font-size:12px;line-height:1.4}.ios-install-prompt{z-index:45;left:max(12px, var(--safe-left));right:max(12px, var(--safe-right));bottom:max(12px, var(--safe-bottom));border:1px solid #ffe17b7a;border-left:4px solid var(--gold);background:linear-gradient(145deg,#273124fa,#0d130efa);grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;width:auto;min-width:0;max-width:720px;margin:0 auto;padding:12px 44px 12px 12px;animation:.26s ease-out both install-prompt-arrive;display:grid;position:fixed;overflow:hidden;box-shadow:0 18px 50px #000000a3}.ios-install-prompt-icon{object-fit:contain;filter:drop-shadow(0 6px 8px #0000008c);width:52px;height:52px;display:block}.ios-install-prompt-copy{min-width:0}.ios-install-prompt-copy>span{color:var(--gold);letter-spacing:.13em;margin-bottom:3px;font-size:8px;font-weight:900;display:block}.ios-install-prompt-copy h2{font:700 18px/1.1 var(--serif);margin:0 0 3px}.ios-install-prompt-copy p{color:#fff2d2b3;margin:0;font-size:11px;line-height:1.35}.ios-install-prompt-copy b{color:var(--cream)}.ios-install-prompt-close{color:#fff2d29e;cursor:pointer;background:0 0;border:0;width:40px;height:40px;padding:0;font-size:20px;position:absolute;top:0;right:0}.ios-install-prompt-continue{min-height:44px;color:var(--cream);cursor:pointer;white-space:nowrap;background:#fff2d212;border:1px solid #ffe17b57;padding:0 14px;font-size:11px;font-weight:900}.lobby-backdrop{z-index:60}.lobby-modal{border:1px solid #ffe17b61;border-top:4px solid var(--gold);background:linear-gradient(145deg,#2b3528,#121812 72%);width:min(760px,100%);max-height:calc(100svh - 48px);padding:clamp(24px,4vw,42px);position:relative;overflow:auto;box-shadow:0 30px 90px #000000b3}.lobby-modal .start-steps{margin-bottom:25px}.lobby-modal h2{font:700 clamp(30px, 5vw, 48px)/.95 var(--serif);letter-spacing:-.035em;margin:0 0 7px}.lobby-modal>p{color:#fff2d2a6;font:14px/1.45 var(--serif);margin:0 0 19px}.room-code-panel{background:#f0bd4814;border:1px solid #ffe17b42;grid-template-columns:1fr auto;align-items:center;gap:4px 16px;padding:14px 16px;display:grid}.room-code-panel span{color:var(--gold);font-size:12px;font-weight:700}.room-code-panel strong{color:var(--gold-bright);font:700 28px/1 var(--serif);letter-spacing:.11em;grid-row:2}.room-code-panel button{border:1px solid var(--line);cursor:pointer;background:#fff2d20f;grid-area:1/2/span 2;min-height:40px;padding:0 13px;font-size:13px;font-weight:700}.lobby-seats{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0;display:grid}.lobby-seats article{border:1px solid var(--line);opacity:.7;background:#fff2d209;grid-template-columns:44px 1fr;align-items:center;gap:10px;min-width:0;padding:12px;display:grid}.lobby-seats article.is-claimed{opacity:1}.lobby-seats article.is-you{border-color:#ffe17b80}.lobby-seats article.is-ally{border-color:#71e9c352}.lobby-seats article>i{color:#162016;width:42px;height:42px;font:900 20px var(--serif);clip-path:polygon(50% 0,93% 24%,83% 84%,50% 100%,17% 84%,7% 24%);background:#fff2d21f;place-items:center;font-style:normal;display:grid}.lobby-seats article>div{gap:3px;min-width:0;display:grid}.lobby-seats small{color:var(--gold);gap:7px;font-size:11px;font-weight:700;display:flex}.lobby-seats small span:last-child{color:#fff2d280}.lobby-seats b{font:700 16px var(--serif);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lobby-seats article>div>span{color:#fff2d294;font-size:12px}.connection-state{color:#fff2d2a6;align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.connection-state i,.multiplayer-status i{background:var(--gold);border-radius:50%;width:7px;height:7px;box-shadow:0 0 10px}.connection-state--connected i,.multiplayer-status--connected i{background:var(--mint)}.connection-state--reconnecting i,.multiplayer-status--reconnecting i{animation:.9s ease-in-out infinite ready-pulse}.lobby-actions{grid-template-columns:1fr auto;align-items:center;gap:14px;margin-top:18px;display:grid}.lobby-actions .primary-button{justify-content:center;font-size:14px}.lobby-actions>div{gap:14px;display:flex}.lobby-actions .text-button{font-size:13px}.lobby-footnote{color:#fff2d27a;margin-top:12px;font-size:11px;line-height:1.45;display:block}.multiplayer-status{z-index:20;border:1px solid var(--line);color:#fff2d2ad;letter-spacing:.12em;pointer-events:none;background:#0a0f0be6;align-items:center;gap:7px;padding:7px 10px;font-size:7px;font-weight:900;display:flex;position:fixed;top:70px;right:12px}.game-shell{background:#0d120e;grid-template-rows:62px minmax(390px,1fr) 218px;height:100svh;min-height:720px;display:grid;overflow:hidden}.game-header{z-index:8;background:linear-gradient(#1e281e,#111711);border-bottom:1px solid #f0bd486b;grid-template-columns:minmax(150px,.7fr) minmax(170px,1fr) 138px minmax(170px,1fr) minmax(84px,.35fr);align-items:center;gap:18px;padding:0 18px;display:grid;box-shadow:0 4px 20px #0006}.game-brand{cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;width:max-content;padding:0;display:flex}.game-brand .brand-mark{width:39px;height:39px}.game-brand strong{color:var(--cream);font:700 13px var(--serif);letter-spacing:.13em;text-shadow:0 2px 8px #000000b3}.keep-score{gap:4px;display:grid}.keep-score>div{letter-spacing:.1em;justify-content:space-between;font-size:8px;display:flex}.keep-score>div b{color:var(--gold)}.keep-score--enemy>div b{color:var(--mint)}.keep-score>div span{color:#fff2d29e}.keep-score>i{background:#00000080;border:1px solid #fff2d21a;height:6px;overflow:hidden}.keep-score>i span{background:linear-gradient(90deg, #d34429, var(--gold-bright));height:100%;transition:width .25s;display:block}.keep-score--enemy>i span{background:linear-gradient(90deg, var(--mint), #3d7f94);margin-left:auto}.match-clock{text-align:center;justify-items:center;display:grid}.match-clock>span{color:var(--gold);letter-spacing:.17em;font-size:7px;font-weight:900}.match-clock b{font:700 21px var(--serif);letter-spacing:.04em}.match-clock small{color:#fff2d273;letter-spacing:.14em;font-size:6px}.header-actions{justify-self:end;gap:7px;display:flex}.header-actions button{border:1px solid var(--line);color:#fff2d2c7;cursor:pointer;background:#fff2d20d;width:32px;height:32px;font-weight:900}.battlefield-stage{background:radial-gradient(circle,#263224,#0b100c 76%);min-height:0;position:relative;overflow:hidden}.battlefield-frame{background-image:linear-gradient(90deg,#070a08a6,#0000 20% 80%,#070a08a6);position:absolute;inset:0;overflow:hidden}.battlefield-scroll{overscroll-behavior-x:contain;scrollbar-color:var(--gold) #080c09d6;scrollbar-width:thin;align-items:stretch;display:flex;position:absolute;inset:0;overflow:auto hidden}.battlefield-scroll::-webkit-scrollbar{height:10px}.battlefield-scroll::-webkit-scrollbar-track{background:#080c09e6}.battlefield-scroll::-webkit-scrollbar-thumb{background:linear-gradient(90deg, #b77f25, var(--gold-bright));border:2px solid #080c09e6}.battlefield-world{aspect-ratio:3200/896;background:#485c3c;flex:none;width:auto;max-width:none;height:100%;max-height:100%;position:relative;overflow:hidden;box-shadow:0 0 42px #00000085}.battlefield-map,.battlefield-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.battlefield-map{object-fit:fill;pointer-events:none;-webkit-user-select:none;user-select:none}.battlefield-canvas{touch-action:pan-x pan-y;background:0 0}.battlefield-canvas.is-building{cursor:crosshair}.build-zone-input-layer{z-index:1;pointer-events:none;position:absolute;inset:0}.build-zone-input{pointer-events:auto;touch-action:none;cursor:crosshair;background:0 0;border:0;border-radius:0;outline:0;margin:0;padding:0;display:block;position:absolute}.placement-confirmation{z-index:5;pointer-events:auto;background:#0a0f0bf0;border:1px solid #ffe17b75;grid-template-columns:74px 44px;width:118px;min-height:44px;display:grid;position:absolute;overflow:hidden;transform:translateY(-50%);box-shadow:0 8px 20px #00000073}.placement-confirmation button{cursor:pointer;border:0;min-width:44px;min-height:44px;padding:0 5px;font-size:10px;font-weight:900}.placement-confirm{background:linear-gradient(135deg, var(--gold-bright), var(--gold));color:#282315}.placement-confirm:disabled{color:#fff2d294;background:#4c4e42}.placement-cancel{color:var(--cream);background:#fff2d212;border-left:1px solid var(--line)!important;font-size:18px!important}.camera-controls{z-index:6;border:1px solid #ffe17b57;border-bottom-color:var(--gold);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0f0bdb;grid-template-columns:31px minmax(150px,220px) 31px;align-items:stretch;display:grid;position:absolute;top:12px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 8px 24px #00000052}.camera-controls>button{color:var(--gold-bright);cursor:pointer;font:700 22px/1 var(--serif);background:#fff2d20f;border:0}.camera-controls label{text-align:left;grid-template-columns:1fr auto;align-items:center;gap:2px 8px;padding:6px 10px 5px;display:grid}.camera-controls label>span{color:var(--cream);letter-spacing:.13em;font-size:7px;font-weight:900}.camera-controls label>small{color:#fff2d26b;letter-spacing:.08em;font-size:6px;font-weight:900}.camera-controls input{width:100%;height:4px;accent-color:var(--gold);cursor:ew-resize;grid-column:1/-1;margin:2px 0 0}.battlefield-loading{z-index:2;letter-spacing:.12em;text-transform:uppercase;background:#0b100cdb;border:1px solid #ffe17b59;align-items:center;gap:10px;padding:11px 15px;font-size:9px;font-weight:900;display:flex;position:absolute}.battlefield-loading span{border:2px solid #f0bd4847;border-top-color:var(--gold);border-radius:50%;width:12px;height:12px;animation:.75s linear infinite spin}.resource-panel{z-index:3;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);pointer-events:none;background:#0b100cd1;border:1px solid #fff2d229;gap:4px;min-width:198px;padding:9px 12px;display:grid;position:absolute;top:16px}.resource-panel--player{border-left:3px solid var(--gold);left:18px}.resource-panel--enemy{text-align:right;border-right:3px solid var(--mint);right:18px}.resource-panel span{color:#fff2d280;letter-spacing:.16em;font-size:7px;font-weight:900}.resource-panel b{color:var(--gold-bright);font:700 13px var(--serif)}.resource-panel>div{gap:12px;display:flex}.resource-panel>div b:nth-child(2){color:#d9a768}.resource-panel>div b:nth-child(3){color:#af9cff}.resource-panel--enemy b{color:var(--mint)}.resource-panel small{color:#fff2d2b8;font-size:8px}.event-ribbon{z-index:4;border:1px solid #fff2d22e;border-bottom-color:var(--gold);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);pointer-events:none;background:#0b100cdb;grid-template-columns:8px 1fr;align-items:center;gap:2px 8px;width:min(610px,100% - 340px);padding:10px 13px;display:grid;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.event-ribbon>i{background:var(--gold);grid-row:1/span 2;width:6px;height:6px;transform:rotate(45deg)}.event-ribbon>span{font:700 12px var(--serif)}.event-ribbon>small{color:#fff2d28c;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.event-ribbon.is-placement{border-bottom-color:var(--gold-bright)}.tutorial-card{z-index:5;border:1px solid #ffe17b61;border-top:3px solid var(--gold);background:linear-gradient(145deg,#222b1ff5,#0d120ef2);width:min(290px,100% - 36px);padding:15px 17px;position:absolute;bottom:16px;left:18px;box-shadow:0 14px 32px #00000061}.tutorial-card>button{color:#fff2d28f;cursor:pointer;background:0 0;border:0;font-size:17px;position:absolute;top:6px;right:8px}.tutorial-step{color:var(--gold);letter-spacing:.16em;font-size:7px;font-weight:900;display:block}.tutorial-card>b{font:700 17px var(--serif);margin:6px 0 3px;display:block}.tutorial-card p{color:#fff2d2ab;margin:0;font-size:10px;line-height:1.45}.command-deck{z-index:7;background:linear-gradient(#263124,#111711);border-top:1px solid #f0bd486b;grid-template-columns:158px minmax(640px,1fr) 142px;align-items:stretch;gap:11px;padding:10px 14px 11px;display:grid;box-shadow:0 -7px 22px #0000005c}.ledger-nav{grid-template-rows:auto 1fr;gap:7px;min-width:0;display:grid}.command-tabs{gap:5px;display:grid}.command-tabs button{border:1px solid var(--line);color:#fff2d294;text-align:left;cursor:pointer;background:#fff2d209;border-left:3px solid #0000;gap:2px;padding:8px 10px;display:grid}.command-tabs button.is-active{border-left-color:var(--gold);color:var(--cream);background:#f0bd481a}.command-tabs b{font:700 13px var(--serif)}.command-tabs small{letter-spacing:.08em;text-transform:uppercase;font-size:6px;font-weight:900}.command-content{min-width:0;overflow:hidden}.foundry-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;min-width:0;height:100%;display:grid}.foundry-list--works{grid-template-columns:repeat(3,minmax(0,1fr))}.foundry-card{text-align:left;cursor:pointer;background:linear-gradient(140deg,#313c2e,#20281f);border:1px solid #fff2d22e;grid-template-rows:92px auto;align-content:start;gap:2px;min-width:0;padding:4px 8px 23px;transition:transform .16s,border-color .16s,background .16s;display:grid;position:relative;overflow:hidden}.foundry-card:after{content:"";background:var(--gold);height:3px;transition:transform .16s;position:absolute;inset:auto 0 0;transform:scaleX(0)}.foundry-card.is-selected{border-color:var(--gold);background:linear-gradient(140deg,#414933,#282c21);transform:translateY(-3px)}.foundry-card.is-selected:after{transform:scaleX(1)}.foundry-card:disabled{cursor:not-allowed;filter:grayscale(.55);opacity:.45}.hotkey{z-index:2;width:18px;height:18px;color:var(--cream);background:#0a0e0ad1;border:1px solid #fff2d247;place-items:center;font-size:8px;font-style:normal;display:grid;position:absolute;top:5px;left:5px}.foundry-art{object-fit:contain;filter:drop-shadow(0 7px 5px #0006);justify-self:center;width:96px;max-width:100%;height:92px}.foundry-copy{gap:3px;min-width:0;display:grid}.foundry-copy b{font:700 clamp(10px, 1vw, 14px) var(--serif);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.foundry-copy small{color:#fff2d285;letter-spacing:.07em;text-transform:uppercase;font-size:7px;font-weight:800}.foundry-copy em{color:var(--gold-bright);text-transform:uppercase;font-size:7px;font-style:normal;font-weight:900}.foundry-cost{color:var(--cream);font-size:7px;font-weight:900;position:absolute;bottom:6px;left:8px}.foundry-cost i{color:var(--gold);margin-right:3px;font-style:normal}.selected-notch{background:var(--gold);color:#252315;letter-spacing:.1em;padding:4px 5px;font-size:6px;font-weight:900;position:absolute;top:0;right:0}.shop-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;height:100%;display:grid}.shop-card{border:1px solid var(--line);min-width:0;color:var(--cream);text-align:center;cursor:pointer;background:linear-gradient(145deg,#2d3329,#191f19);grid-template-rows:50px 1fr auto;justify-items:center;gap:5px;padding:15px 9px 8px;display:grid;position:relative;overflow:hidden}.shop-card:disabled{opacity:.42;cursor:not-allowed}.shop-card>strong{color:var(--gold-bright);font:700 38px/1 var(--serif)}.shop-card>span{align-content:start;gap:3px;display:grid}.shop-card>span b{font:700 13px var(--serif)}.shop-card>span small{color:var(--gold);letter-spacing:.12em;font-size:6px;font-weight:900}.shop-card>span em{color:#fff2d285;max-height:32px;font-size:7px;font-style:normal;line-height:1.35;overflow:hidden}.shop-card mark{color:var(--cream);background:0 0;font-size:7px;font-weight:900}.building-inspector{background:linear-gradient(135deg,#333e2ef2,#171d17f2);border:1px solid #ffe17b47;grid-template-columns:150px 1fr minmax(190px,.55fr);align-items:center;gap:17px;height:100%;padding:9px 34px 9px 10px;display:grid;position:relative}.inspector-close{color:#fff2d28c;cursor:pointer;background:0 0;border:0;width:28px;height:28px;font-size:20px;position:absolute;top:4px;right:5px}.inspector-art{filter:drop-shadow(0 10px 8px #0000006b);width:148px;height:158px}.inspector-copy{min-width:0}.inspector-copy h3{font:700 26px/1 var(--serif);margin:5px 0 3px}.inspector-copy>p{color:#fff2d299;font:11px/1.42 var(--serif);margin:0 0 12px}.inspector-traits{border:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.inspector-traits span{border-right:1px solid var(--line);gap:3px;padding:8px;display:grid}.inspector-traits span:last-child{border:0}.inspector-traits small{color:#fff2d26b;letter-spacing:.1em;font-size:6px;font-weight:900}.inspector-traits b{color:var(--gold-bright);text-overflow:ellipsis;text-transform:uppercase;font-size:9px;overflow:hidden}.inspector-actions{gap:7px;display:grid}.upgrade-button,.production-button,.max-rank{border:1px solid var(--line);text-align:left;align-content:center;gap:3px;min-height:54px;padding:9px 12px;display:grid}.upgrade-button{background:linear-gradient(135deg, var(--gold-bright), var(--gold));color:#2c2716;cursor:pointer;border-color:#ffde76}.upgrade-button:disabled{filter:grayscale(.5);opacity:.48;cursor:not-allowed}.upgrade-button span,.production-button{text-transform:uppercase;font-size:8px;font-weight:900}.upgrade-button b{font-size:8px}.production-button{color:var(--cream);cursor:pointer;background:#fff2d20d}.production-button small{color:#fff2d275;text-transform:none;font-size:7px}.max-rank{color:var(--gold-bright);letter-spacing:.1em;background:#f0bd4814;place-items:center;font-size:9px;font-weight:900}.tactics-stack{grid-template-rows:52px 1fr;gap:7px;display:grid}.sync-button{border:1px solid var(--line);color:#fff2d280;cursor:pointer;background:#fff2d20a;align-content:center;gap:3px;padding:7px;display:grid}.sync-button.is-active{border-color:var(--gold);color:var(--cream);background:#f0bd4821}.sync-button:disabled{cursor:not-allowed;opacity:.38}.sync-button b{letter-spacing:.08em;font-size:8px}.sync-button small{font-size:6px}.reprieve-button{color:#fff2d273;cursor:not-allowed;background:#18221c;border:1px solid #71e9c333;align-content:center;justify-items:center;gap:0;padding:2px;display:grid;position:relative;overflow:hidden}.reprieve-button:before{content:"";opacity:0;background:radial-gradient(circle,#71e9c333,#0000 66%);position:absolute;inset:0}.reprieve-button.is-ready{border-color:var(--mint);color:var(--cream);cursor:pointer;animation:1.8s ease-in-out infinite ready-pulse}.reprieve-button.is-ready:before{opacity:1}.reprieve-art{object-fit:contain;width:58px;height:56px;position:relative}.reprieve-button>span{text-align:center;gap:2px;display:grid;position:relative}.reprieve-button b{letter-spacing:.13em;font-size:9px}.reprieve-button small{color:var(--mint);letter-spacing:.08em;font-size:6px;font-weight:900}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(11px);backdrop-filter:blur(11px);background:#060907d1;place-items:center;padding:24px;animation:.18s ease-out both fade-in;display:grid;position:fixed;inset:0;overflow:auto}.rules-backdrop{z-index:70}.rules-modal,.pause-modal,.result-modal{border:1px solid #ffe17b61;border-top:4px solid var(--gold);background:linear-gradient(145deg,#2b3528,#141a14 72%);width:min(900px,100%);max-height:calc(100svh - 48px);padding:clamp(24px,4vw,42px);position:relative;overflow:auto;box-shadow:0 30px 80px #000000a6}.rules-modal>.eyebrow{letter-spacing:.08em;font-size:11px}.modal-close{color:#fff2d299;cursor:pointer;background:0 0;border:0;width:34px;height:34px;font-size:25px;position:absolute;top:10px;right:14px}.rules-modal h2,.pause-modal h2,.result-modal h2{font:700 clamp(29px, 4vw, 45px)/1 var(--serif);letter-spacing:-.03em;margin:9px 0 8px}.rules-lead,.pause-modal>p,.result-modal>p{color:#fff2d2a8;font:15px/1.5 var(--serif)}.rule-steps{background:#fff2d21f;border:1px solid #fff2d21f;grid-template-columns:1fr 1fr;gap:1px;margin:23px 0;display:grid}.rule-steps article{background:#1c241b;grid-template-columns:34px 1fr;gap:9px;padding:14px;display:grid}.rule-steps article>i{color:var(--gold);font:700 18px var(--serif);font-style:normal}.rule-steps article div{gap:4px;display:grid}.rule-steps article b{font:700 14px var(--serif)}.rule-steps article span{color:#fff2d29e;font-size:12px;line-height:1.5}.counter-ledger{border:1px solid var(--line);grid-template-columns:repeat(5,1fr);margin:18px 0 24px;display:grid}.counter-ledger div{border-right:1px solid var(--line);text-align:center;gap:4px;padding:11px 8px;display:grid}.counter-ledger div:last-child{border:0}.counter-ledger b{color:var(--gold-bright);letter-spacing:.13em;font-size:9px}.counter-ledger span{color:#fff2d28f;font-size:10px}.rules-modal>.primary-button{letter-spacing:0;text-transform:none;justify-content:center;min-width:118px;font-size:14px}.pause-modal{text-align:center;width:min(460px,100%)}.pause-modal .primary-button,.pause-modal .secondary-button,.pause-modal>.text-button{justify-content:center;width:100%;margin-top:9px}.confirm-actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:24px;display:grid}.result-modal{text-align:center;width:min(620px,100%)}.result-modal.is-defeat{border-top-color:var(--mint)}.result-seal{border:1px solid var(--gold);width:72px;height:72px;color:var(--gold-bright);background:#f0bd481a;place-items:center;margin:15px auto 10px;font-size:36px;display:grid;transform:rotate(45deg)}.result-seal:first-letter{transform:rotate(-45deg)}.result-modal.is-defeat .result-seal{border-color:var(--mint);color:var(--mint)}.result-stats{border:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin:22px 0;display:grid}.result-stats div{border-right:1px solid var(--line);gap:4px;padding:13px 7px;display:grid}.result-stats div:last-child{border:0}.result-stats span{color:#fff2d280;letter-spacing:.12em;font-size:7px}.result-stats b{color:var(--gold-bright);font:700 20px var(--serif)}.feedback-field{border:1px solid var(--line);margin:0 0 21px;padding:13px}.feedback-field legend{color:#fff2d2b3;letter-spacing:.1em;text-transform:uppercase;padding:0 8px;font-size:9px;font-weight:900}.feedback-field>div{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.feedback-field button{border:1px solid var(--line);cursor:pointer;text-transform:uppercase;background:#fff2d20d;padding:8px 10px;font-size:8px;font-weight:900}.feedback-field button.is-selected{background:var(--gold);border-color:var(--gold-bright);color:#282315}.result-actions{grid-template-columns:1fr 1fr;gap:9px;display:grid}.result-actions .text-button{grid-column:1/-1;justify-self:center}.rotate-phone-prompt{display:none}@keyframes title-arrive{0%{filter:saturate(.7)brightness(.6);transform:scale(1.08)}to{filter:none;transform:scale(1.015)}}@keyframes copy-arrive{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ready-pulse{50%{box-shadow:inset 0 0 28px #71e9c342,0 0 13px #71e9c338}}@keyframes install-prompt-arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (hover:hover){.primary-button:hover,.secondary-button:hover,.text-button:hover{transform:translateY(-2px)}.mode-card:hover:not(:disabled){border-color:var(--gold);background:#f0bd481f;transform:translateY(-2px)}.start-faction-card:hover{background:#f0bd481a;transform:translateY(-2px)}.start-faction-card:hover .start-faction-emblem{filter:drop-shadow(0 8px 12px #000000ad)drop-shadow(0 0 8px #ffe17b4d);transform:scale(1.06)}.header-actions button:hover{border-color:var(--gold);color:var(--gold-bright)}.camera-controls>button:hover{background:#f0bd482e}.command-tabs button:hover{border-left-color:var(--gold);color:var(--cream);background:#f0bd481a}.foundry-card:hover:not(:disabled){border-color:var(--gold);background:linear-gradient(140deg,#414933,#282c21);transform:translateY(-3px)}.shop-card:hover:not(:disabled){border-color:var(--gold);transform:translateY(-2px)}}@media (hover:none) and (pointer:coarse){body,button,.game-shell,.battlefield-stage,.command-deck{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}button,.game-header,.command-deck{touch-action:manipulation}.foundry-art,.shop-card img,.building-inspector img,.inspector-art{pointer-events:none}.header-actions button,.camera-controls>button,.tutorial-card>button,.inspector-close{min-width:44px;min-height:44px}.upgrade-button,.production-button,.sync-button,.reprieve-button{min-height:44px}.camera-controls input{min-height:28px}.camera-controls input::-webkit-slider-thumb{width:28px;height:28px}.camera-controls input::-moz-range-thumb{width:28px;height:28px}}@media (max-width:1100px){.game-header{grid-template-columns:145px 1fr 110px 1fr 78px;gap:10px}.game-brand strong{display:none}.command-deck{grid-template-columns:130px minmax(500px,1fr) 118px}.foundry-card{grid-template-rows:76px auto;padding-left:5px;padding-right:5px}.foundry-art{width:76px;height:76px}.foundry-copy em{display:none}.building-inspector{grid-template-columns:112px 1fr 160px;gap:10px}.inspector-art{width:110px;height:132px}.inspector-copy h3{font-size:21px}.event-ribbon{width:min(560px,100% - 310px)}}@media (max-width:760px){.title-art{background-position:68%}.title-vignette{background:linear-gradient(90deg,#070b08f0,#070b0873),linear-gradient(#0000 40%,#070a08f0)}.title-header{height:64px;padding:0 18px}.title-header .brand-mark{width:40px;height:40px}.alpha-label{font-size:11px}.start-shell{width:calc(100vw - 32px);margin:28px 16px 48px;top:-32px}.title-banner{margin-bottom:14px}.title-banner img{width:min(420px,96%)}.start-panel{padding:20px 16px}.start-steps{margin-bottom:23px}.mode-grid,.start-faction-grid{grid-template-columns:1fr}.mode-card{padding:15px}.start-faction-card{grid-template-rows:auto auto auto;grid-template-columns:72px 1fr;align-items:center}.start-faction-emblem{grid-row:1/span 2;width:68px;height:68px}.start-faction-card small{min-height:0}.start-faction-card p{grid-column:1/-1;width:100%}.step-actions{flex-direction:column-reverse;align-items:stretch}.step-actions>.text-button{align-self:flex-start}.step-actions--faction{flex-direction:column-reverse;align-items:stretch}.step-actions--faction>div{justify-content:space-between}.start-submit{flex-direction:column;max-width:none;align-items:stretch!important}.step-actions .primary-button{width:100%}.ios-install-prompt{grid-template-columns:44px minmax(0,1fr);gap:8px;padding:10px 42px 10px 10px}.ios-install-prompt-icon{width:44px;height:44px}.ios-install-prompt-continue{grid-column:1/-1;width:100%}.lobby-modal{max-height:calc(100svh - 24px);padding:24px 18px}.room-code-panel{grid-template-columns:1fr}.room-code-panel button{grid-area:auto/1}.lobby-seats,.lobby-actions{grid-template-columns:1fr}.lobby-actions>div{justify-content:space-between}.multiplayer-status{top:59px;right:7px}.game-shell{grid-template-rows:54px 430px auto;height:auto;min-height:100svh;overflow:visible}.game-header{grid-template-columns:45px 1fr 76px 1fr 70px;gap:5px;padding:0 7px;position:sticky;top:0}.game-brand .brand-mark{width:34px;height:34px}.keep-score>div b{font-size:6px}.keep-score>div span,.match-clock>span,.match-clock small{display:none}.match-clock b{font-size:16px}.header-actions{gap:4px}.header-actions button{width:28px;height:28px}.battlefield-stage{height:430px;min-height:430px;overflow:hidden}.battlefield-scroll{align-items:stretch}.battlefield-world{max-height:426px}.camera-controls{grid-template-columns:28px minmax(112px,154px) 28px;top:8px;left:auto;right:8px;transform:none}.resource-panel{min-width:124px;padding:7px 9px;top:8px}.resource-panel.is-local{border-left:3px solid var(--gold);text-align:left;border-right:1px solid #fff2d229;display:grid;left:8px;right:auto}.resource-panel.is-rival{display:none}.event-ribbon{width:auto;position:absolute;bottom:7px;left:8px;right:8px;transform:none}.event-ribbon>small{display:none}.tutorial-card{width:244px;bottom:61px;left:8px}.command-deck{grid-template-columns:1fr;gap:9px;padding:10px}.ledger-nav{gap:5px}.command-tabs{grid-template-columns:repeat(3,1fr)}.command-tabs button{border-left:1px solid var(--line);border-bottom:3px solid #0000;min-width:0}.command-tabs button.is-active{border-left-color:var(--line);border-bottom-color:var(--gold)}.foundry-list{grid-template-columns:1fr 1fr}.foundry-list--works{grid-template-columns:1fr}.foundry-card{grid-template-rows:1fr;grid-template-columns:78px 1fr;align-items:center;min-height:132px}.foundry-art{width:78px;height:92px}.foundry-copy em{display:block}.shop-list{grid-template-columns:1fr 1fr}.shop-card{min-height:145px}.building-inspector{grid-template-columns:94px 1fr;height:auto;min-height:188px;padding-right:12px}.inspector-art{width:92px;height:120px}.inspector-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}.inspector-traits{grid-template-columns:1fr 1fr}.tactics-stack{grid-template-rows:82px;grid-template-columns:1fr 1fr}.reprieve-button{grid-template-columns:66px auto;justify-content:center;min-height:78px}.reprieve-art{width:62px;height:62px}.rule-steps,.counter-ledger{grid-template-columns:1fr}.counter-ledger div{border-right:0;border-bottom:1px solid var(--line)}.rules-modal,.pause-modal,.result-modal{max-height:calc(100svh - 24px);padding:24px 18px}.modal-backdrop{padding:12px}.result-stats{grid-template-columns:1fr 1fr}.result-stats div:nth-child(2){border-right:0}.result-stats div:nth-child(-n+2){border-bottom:1px solid var(--line)}.result-actions{grid-template-columns:1fr}.result-actions .text-button{grid-column:auto}}@media (hover:none) and (pointer:coarse) and (max-height:520px){html,body{width:100%;height:100%;overflow:hidden}.title-screen{width:100%;height:100dvh;min-height:0;display:block;overflow:hidden}.title-header{display:none}.start-shell{width:100%;height:100%;padding:max(6px, var(--safe-top)) max(6px, var(--safe-right)) max(6px, var(--safe-bottom)) max(6px, var(--safe-left));grid-template-rows:minmax(0,1fr);grid-template-columns:clamp(124px,22vw,180px) minmax(0,1fr);align-items:stretch;gap:8px;margin:0;animation:none;display:grid;position:static;top:auto}.title-banner{align-self:center;min-width:0;margin:0}.title-banner img{width:100%;max-width:180px}.start-panel{-webkit-backdrop-filter:none;backdrop-filter:none;flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;padding:8px 10px;display:flex;overflow:hidden}.start-steps{flex:none;width:min(240px,100%);margin:0 0 4px}.start-steps li{gap:1px;font-size:9px}.start-steps li:not(:last-child):after{top:10px;left:calc(50% + 11px);right:calc(11px - 50%)}.start-steps i{width:21px;height:21px;font-size:10px}.start-panel-heading{flex:none;margin-bottom:5px}.start-panel-heading h1{margin-bottom:2px;font-size:clamp(21px,7dvh,27px)}.start-panel-heading p{font-size:11px;line-height:1.2}.mode-grid{flex:auto;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;min-width:0;min-height:0}.mode-card{align-content:center;gap:2px;min-height:0;padding:5px 8px}.mode-card b{font-size:15px}.mode-card small{font-size:10px}.mode-card-status{font-size:8px;top:4px;right:6px}.join-code-field{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;margin-top:5px}.join-code-field span{font-size:10px}.join-code-field input{width:100%;height:36px;font-size:12px}.step-actions,.step-actions--faction{flex-direction:row;flex:none;align-items:center;gap:8px;min-height:44px;margin-top:5px}.step-actions>.text-button{align-self:auto}.step-actions .primary-button{width:auto;min-width:96px;min-height:44px;padding:0 14px;font-size:12px}.step-actions .text-button{min-height:44px;padding:0 4px;font-size:11px}.start-faction-grid{flex:auto;grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;min-width:0;min-height:0}.start-faction-card{text-align:center;grid-template-rows:48px auto minmax(0,1fr);grid-template-columns:1fr;align-content:stretch;justify-items:center;gap:2px;height:100%;min-height:0;padding:5px;overflow:hidden}.start-faction-card.is-selected{transform:none}.start-faction-emblem{grid-row:auto;width:48px;height:48px}.start-faction-card b{font-size:12px;line-height:1.05}.start-faction-card small{display:none}.start-faction-card p{grid-column:auto;width:100%;margin:2px 0 0;padding-top:4px;font-size:10px;line-height:1.15}.step-actions--faction{justify-content:space-between}.step-actions--faction>div{justify-content:flex-start;gap:9px}.start-submit{flex-direction:row;max-width:none;align-items:center!important}.start-notice{max-width:180px;padding:4px 6px;font-size:9px;line-height:1.2}.ios-install-prompt{grid-template-columns:38px minmax(0,1fr) auto;gap:7px;padding:7px 40px 7px 8px}.ios-install-prompt-icon{width:38px;height:38px}.ios-install-prompt-copy>span{margin-bottom:1px;font-size:7px}.ios-install-prompt-copy h2{margin-bottom:2px;font-size:13px}.ios-install-prompt-copy p{font-size:10px;line-height:1.2}.ios-install-prompt-close{width:44px;height:44px}.ios-install-prompt-continue{grid-column:auto;width:auto;min-height:44px;padding:0 10px;font-size:10px}.game-shell{--phone-rail:calc(108px + var(--safe-right));background:#0d120e;width:100%;height:100dvh;min-height:0;padding:0;display:block;position:fixed;inset:0;overflow:hidden}.game-header *,.resource-panel.is-local *,.event-ribbon *,.command-deck *{font-size:10px}.game-header{z-index:12;left:0;right:var(--phone-rail);height:calc(44px + var(--safe-top));padding:var(--safe-top) 4px 0 max(150px, calc(146px + var(--safe-left)));box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(#0a0f0be6,#0a0f0ba8);border:0;border-bottom:1px solid #ffe17b52;grid-template-columns:minmax(54px,1fr) 58px minmax(54px,1fr) 88px;gap:4px;display:grid;position:absolute;top:0}.game-brand{display:none}.keep-score{gap:2px;min-width:0}.keep-score>div{justify-content:flex-end;min-width:0;line-height:1}.keep-score>div b{display:none}.keep-score>div span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.keep-score>i{height:5px}.match-clock>span,.match-clock small{display:none}.match-clock b{font-size:17px}.header-actions{gap:0}.header-actions button{background:#fff2d20a;width:44px;height:44px}.battlefield-stage{inset:0 var(--phone-rail) 0 0;width:auto;height:auto;min-height:0;position:absolute;overflow:hidden}.battlefield-frame{inset:0}.battlefield-scroll{overscroll-behavior:contain;scrollbar-width:none;touch-action:pan-x pan-y;align-items:flex-start;overflow:auto}.battlefield-scroll::-webkit-scrollbar{width:0;height:0;display:none}.battlefield-world{flex:none;max-height:none}.battlefield-canvas,.battlefield-canvas.is-building{touch-action:pan-x pan-y}.build-zone-input{touch-action:none}.resource-panel.is-local{z-index:14;left:max(5px, var(--safe-left));right:auto;top:calc(var(--safe-top) + 4px);border:1px solid #ffe17b47;border-left:3px solid var(--gold);text-align:left;-webkit-backdrop-filter:none;backdrop-filter:none;background:#0a0f0bd1;place-items:center;width:140px;min-width:0;height:36px;padding:4px 7px;display:grid;position:absolute}.resource-panel.is-local>span,.resource-panel.is-local>small{display:none}.resource-panel.is-local>div{justify-content:space-between;gap:4px;width:100%;display:flex}.resource-panel.is-local b{font-family:var(--serif);white-space:nowrap}.resource-panel.is-rival{display:none}.event-ribbon{left:max(6px, var(--safe-left));right:auto;bottom:calc(6px + var(--safe-bottom));-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:auto;grid-template-columns:8px minmax(0,1fr) auto;gap:6px;width:auto;max-width:60%;min-height:44px;padding:0 0 0 10px;overflow:hidden;transform:none}.event-ribbon>i{grid-row:auto}.event-ribbon>span{text-overflow:ellipsis;white-space:nowrap;line-height:1.2;overflow:hidden}.event-ribbon>small{display:none}.event-ribbon>button{border:0;border-left:1px solid var(--line);width:44px;height:44px;color:var(--cream);cursor:pointer;background:#fff2d20f;padding:0;font-size:20px}.tutorial-card{display:none}.command-deck{z-index:20;width:var(--phone-rail);grid-template-columns:1fr;grid-template-rows:calc(132px + var(--safe-top)) minmax(0, 1fr) calc(96px + var(--safe-bottom));height:auto;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) 2px;background:linear-gradient(90deg,#182018,#0d120e);border:0;border-left:1px solid #f0bd486b;gap:2px;display:grid;position:absolute;top:0;bottom:0;right:0;overflow:hidden;box-shadow:-6px 0 18px #0000006b}.ledger-nav{min-width:0;display:block}.ledger-nav>.eyebrow{display:none}.command-tabs{grid-template-rows:repeat(3,44px);grid-template-columns:1fr;gap:0;height:132px;display:grid}.command-tabs button{border:1px solid var(--line);text-align:center;border-bottom:2px solid #0000;border-left:0;place-items:center;min-width:0;min-height:44px;padding:3px}.command-tabs button.is-active{border-left-color:var(--line);border-bottom-color:var(--gold)}.command-tabs small{display:none}.command-tabs b{font-family:var(--sans);text-transform:uppercase}.command-content{scrollbar-width:none;min-height:0;padding:2px;overflow:hidden auto}.command-content::-webkit-scrollbar{display:none}.foundry-list,.foundry-list--works,.shop-list{flex-direction:column;gap:4px;height:auto;display:flex}.foundry-card{text-align:center;flex:0 0 100px;grid-template-rows:56px auto;grid-template-columns:1fr;place-items:center;gap:0;min-height:100px;padding:2px 4px 20px;display:grid;transform:none}.foundry-card.is-selected{transform:none}.foundry-art{width:68px;height:56px}.foundry-copy{width:100%;display:block}.foundry-copy b{font-family:var(--serif);text-overflow:ellipsis;white-space:nowrap;line-height:1.1;display:block;overflow:hidden}.foundry-copy small,.foundry-copy em,.hotkey,.selected-notch{display:none}.foundry-cost{text-align:center;bottom:5px;left:0;right:0}.shop-card{flex:0 0 96px;grid-template-rows:36px auto auto;gap:2px;min-height:96px;padding:6px 3px;display:grid}.shop-card>strong{font-size:28px}.shop-card>span em{display:none}.shop-card mark{color:var(--gold-bright)}.tactics-stack{grid-template-rows:44px 44px;grid-template-columns:1fr;gap:4px;display:grid}.sync-button,.reprieve-button{min-width:0;height:44px;min-height:44px;padding:3px}.sync-button{align-content:center}.reprieve-button{grid-template-columns:1fr;place-items:center;display:grid}.reprieve-art{display:none}.sync-button b,.reprieve-button b{font-size:10px;line-height:1}.sync-button small,.reprieve-button small{text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1;overflow:hidden}.building-inspector{text-align:center;flex-direction:column;align-items:stretch;gap:4px;height:auto;min-height:100%;padding:44px 3px 4px;display:flex;overflow:visible}.inspector-close{top:0;right:0}.inspector-art{align-self:center;width:66px;height:62px}.inspector-copy h3{text-overflow:ellipsis;margin:2px 0;font-size:12px;line-height:1.05;overflow:hidden}.inspector-copy>p,.inspector-traits{display:none}.inspector-actions{grid-template-columns:1fr;gap:4px;width:100%;display:grid}.upgrade-button,.production-button,.max-rank{text-align:center;min-height:44px;padding:4px}.multiplayer-status{top:calc(46px + var(--safe-top));left:max(5px, var(--safe-left));font-size:10px;right:auto}}@media (hover:none) and (pointer:coarse) and (max-height:520px) and (max-width:700px){.start-shell{grid-template-columns:minmax(0,1fr)}.title-banner{display:none}}@media (hover:none) and (pointer:coarse) and (orientation:portrait) and (max-width:760px){.game-shell{width:100%;height:100dvh;min-height:0;position:fixed;inset:0;overflow:hidden}.rotate-phone-prompt{z-index:100;padding:max(24px, var(--safe-top)) max(24px, var(--safe-right)) max(24px, var(--safe-bottom)) max(24px, var(--safe-left));text-align:center;background:radial-gradient(circle at 50% 42%,#273326,#0d120e 68%);place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.rotate-phone-prompt>div{justify-items:center;gap:12px;width:min(330px,100%);display:grid}.rotate-phone-prompt span{border:2px solid var(--gold);width:80px;height:56px;color:var(--gold-bright);border-radius:9px;place-items:center;font-size:35px;display:grid;transform:rotate(90deg)}.rotate-phone-prompt h2{font:700 34px/1 var(--serif);margin:10px 0 0}.rotate-phone-prompt p{color:#fff2d2b3;font:16px/1.45 var(--serif);margin:0}}@media (hover:none) and (pointer:coarse) and (min-width:761px) and (max-width:800px) and (min-height:521px){.command-deck{grid-template-columns:120px minmax(440px,1fr) 110px}}@media (max-height:760px) and (min-width:761px) and (pointer:fine){.game-shell{grid-template-rows:56px minmax(350px,1fr) 190px}.command-deck{padding-top:8px;padding-bottom:8px}.foundry-card{grid-template-rows:72px auto}.foundry-art{height:72px}.foundry-copy em{display:none}.reprieve-art{height:54px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
