.selected-squad{position:absolute;top:49px;left:12px;min-height:44px;padding:8px 11px;max-width:calc(100% - 80px);background:#14251af0;border:1px solid;border-radius:8px;font-size:12px;font-weight:700;z-index:2}.map-controls{position:absolute;top:10px;right:10px;display:flex;flex-direction:column;gap:7px;z-index:2}.map-controls .map-fit{position:static;flex:0 0 44px}.context-toolbar{display:flex;align-items:flex-start;gap:10px}.context-toolbar>div{flex:1;min-width:0}.context-toolbar>button{min-height:44px;padding:9px;font-size:11px;flex-shrink:0}.context-toolbar>button[aria-pressed=true]{background:#4b5d37;border-color:#dfc082;color:#f0ddb0}:root{font-family:Segoe UI,Arial,sans-serif;color:#e9eddf;background:#101713;--muted:#a2b29a;--line:#40523b;--amber:#dfc082;--panel:#202d23;color-scheme:dark}*{box-sizing:border-box}html,body,#app{margin:0;width:100%;height:100%;overflow:hidden}body{background:radial-gradient(ellipse at top,#263329,#101713 70%)}button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible{outline:2px solid #f4d594;outline-offset:3px}button:disabled{opacity:.45;cursor:default}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{width:100%;max-width:520px;height:100dvh;margin:0 auto;display:flex;flex-direction:column;position:relative;background:#1a251d;box-shadow:0 0 80px #0005;isolation:isolate}.topbar{display:flex;align-items:center;gap:10px;flex:0 0 auto;min-height:62px;padding:calc(10px + max(env(safe-area-inset-top),var(--tg-content-safe-area-inset-top,0px))) 14px 9px;background:#19251d;border-bottom:1px solid #34442f}.brand-mark{width:30px;height:35px;display:grid;place-items:center;border:1px solid #9b885e;color:var(--amber);font-size:13px;flex-shrink:0;clip-path:polygon(0 0,100% 0,100% 85%,50% 100%,0 85%);background:#2c3b2a}.operation{min-width:0;flex:1}.operation h1{font-size:13px;line-height:1.3;font-weight:600;margin:0;white-space:nowrap}.operation>span{display:block;font-size:10px;color:#b4c0a7;margin-top:4px}#clock{font:17px Consolas,monospace;color:#e2ce9d;font-weight:400}.resources{display:grid;grid-template-columns:repeat(4,1fr);flex-shrink:0;background:#243222;border-bottom:1px solid #405238;padding:7px 8px;gap:1px}.resources>div{padding:0 7px;border-right:1px solid #415238;display:flex;flex-direction:column;gap:2px}.resources>div:last-child{border:0}.resources small{font-size:9px;color:#bdc9ad;white-space:nowrap}.resources strong{font:17px Consolas,monospace;color:#f0edd4}.command-resource strong{color:#f0cd83}.front{display:flex;align-items:center;gap:5px;min-height:46px;flex-shrink:0;padding:7px 12px;background:#1c281f;z-index:3;box-shadow:0 3px 10px #0002}.front-point{position:relative;display:flex;align-items:flex-start;gap:5px;flex:1;min-width:0;padding-bottom:5px}.front-point>i{height:6px;width:6px;border:1px solid #e0bd77;transform:rotate(45deg);flex-shrink:0;margin-top:3px}.front-point.de>i{background:#68a6ba;border-color:#68a6ba}.front-point.us>i{background:#ce8771;border-color:#ce8771}.front-point strong{font-size:10px;font-weight:600;display:block;white-space:nowrap}.front-point small{font-size:8px;color:#b1c09f;display:block;margin-top:3px;white-space:nowrap}.front-link{height:1px;width:8px;flex:0 0 8px;background:#5c704d;margin-top:-9px}.capture{position:absolute;bottom:0;left:11px;right:0;height:2px;background:#425738}.capture b{display:block;height:100%}.map-frame{flex:1;min-height:0;position:relative;overflow:hidden;background:#293c2a}#map-game{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden}canvas{display:block;touch-action:none}.map-status{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid #61744e80;background:#19291dec;color:#dae1c5;font:8px Consolas,monospace;letter-spacing:.5px;pointer-events:none}.status-dot{width:4px;height:4px;border-radius:50%;background:#c6c7a3}#recon-status.recon-active{color:#ffc8a0}.map-fit{position:absolute;top:10px;right:10px;width:44px;height:44px;border-radius:10px;background:#1d2c20ec;color:#e4dfbb;border:1px solid #768568;font:27px Arial,sans-serif;box-shadow:0 3px 10px #0002}.map-guide{display:none;position:absolute;bottom:12px;left:12px;right:12px;pointer-events:none;background:#19291de8;border:1px solid #637a4a66;padding:9px 12px;border-radius:8px}.map-guide strong{font-size:11px;font-weight:600;display:block;color:#e3e3c7}.map-guide small{font-size:9px;color:#bdc8aa;display:block;margin-top:4px}.dock{display:grid;grid-template-columns:1fr 1.55fr 1fr;align-items:center;gap:10px;flex-shrink:0;padding:9px 16px calc(9px + max(env(safe-area-inset-bottom),var(--tg-content-safe-area-inset-bottom,0px)));background:#19251df5;border-top:1px solid #4b5e3b;z-index:5}.dock button{min-height:52px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;color:#c1cfb1;background:none;border:0;font-size:10px;border-radius:11px}.dock button>span{font:22px Arial,sans-serif;position:relative}.dock .command-button{flex-direction:row;gap:10px;background:#ddbf80;color:#29341f;font-size:14px;font-weight:700;box-shadow:0 3px 12px #0002}.dock .command-button>span{font-size:24px}.dock button[aria-expanded=true]{background:#35452d}.dock .command-button[aria-expanded=true]{background:#edcf90}.dock i{position:absolute;top:-4px;right:-15px;border-radius:8px;min-width:16px;height:16px;background:#e3c385;color:#28331f;font:10px Consolas,monospace;display:grid;place-items:center}.context{position:absolute;left:10px;right:10px;bottom:10px;padding:12px;background:#1b2d20f5;border:1px solid #cfb378;border-radius:12px;box-shadow:0 6px 25px #0004}.context strong{display:block;font-size:13px;color:#f0ddb0}.context small{display:block;font-size:11px;color:#c5d2b6;line-height:1.4;margin-top:5px}.context-actions{display:flex;gap:7px;margin-top:11px}.context-actions>button{min-height:44px;font-size:12px}.context-actions>.primary{flex:1;justify-content:center;padding:10px}.quiet{background:none;border:1px solid #63784e;border-radius:8px;padding:10px 12px;color:#d0ddbd;font-size:12px}.primary{display:flex;justify-content:space-between;align-items:center;border:1px solid #ebd298;border-radius:9px;padding:14px 16px;background:#ddbf80;color:#28331f;font-size:14px;font-weight:600;min-height:48px;width:100%}.primary:active{background:#efd396}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#14221988;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;z-index:12;padding:16px;overflow-y:auto}.deployment{width:100%;max-width:360px;border:1px solid #7e9362;border-radius:14px;background:#1d2d21f5;padding:24px;box-shadow:0 15px 50px #0004}.eyebrow{font:9px Consolas,monospace;letter-spacing:1.5px;color:#dbc18a}.deployment h2{font-size:28px;line-height:1.15;font-weight:600;letter-spacing:-.7px;margin:15px 0;color:#f0ecd9}.deployment p{font-size:12px;line-height:1.7;color:#c6d4b6;margin:0 0 15px}.facts{display:flex;gap:13px;font:9px Consolas,monospace;color:#c0cfac;padding:11px 0;margin:13px 0 17px;border-top:1px solid #4d6540;border-bottom:1px solid #4d6540}.deployment>.quiet{width:100%;min-height:44px;margin-top:10px}.deployment>small{display:block;font-size:10px;line-height:1.6;color:#adbf98;margin-top:16px}.sheet{position:fixed;inset:auto 0 0;width:100%;max-width:520px;max-height:min(80dvh,760px);margin:0 auto;padding:0 0 max(env(safe-area-inset-bottom),var(--tg-content-safe-area-inset-bottom,0px));background:#1c2b20;color:#e8ecdc;border:1px solid #71855b;border-bottom:0;border-radius:20px 20px 0 0;box-shadow:0 -12px 60px #0005;overscroll-behavior:contain;overflow-y:auto}.sheet::backdrop{background:#0b140db3;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.sheet-handle{height:4px;width:38px;border-radius:4px;background:#7a8d65;margin:10px auto 0}.sheet-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px 12px;position:sticky;top:0;background:#1c2b20;z-index:2;border-bottom:1px solid #405536}.sheet-header small{font:8px Consolas,monospace;letter-spacing:1.4px;color:#b1c296}.sheet-header h2{font-size:23px;margin:5px 0 0;font-weight:600}.sheet-header>button{width:44px;height:44px;border-radius:50%;background:#2d3e2b;border:1px solid #536c43;color:#dbe4cc;font-size:26px}.sheet-copy{font-size:12px;line-height:1.6;color:#bbcdae;margin:14px 18px}.sheet-panel{padding-bottom:12px}.orders{padding:0 12px}.order{width:100%;min-height:66px;padding:12px 8px;display:flex;align-items:center;gap:13px;position:relative;background:none;border:0;border-bottom:1px solid #3e5334;color:#e1e9d2;text-align:left}.order:active,.order.selected{background:#3b462c}.order-icon{font:27px Arial,sans-serif;width:30px;flex:0 0 30px;text-align:center;color:#c3d0aa}.order>span:nth-child(2){flex:1;min-width:0}.order strong{display:block;font-size:13px;font-weight:600}.order small{display:block;font-size:11px;color:#a5be8e;margin-top:5px}.order>b{font-size:24px;font-weight:400;color:#899e70}.order em{font:11px Consolas,monospace;color:#e0be7c}.order.recovering .order-icon{opacity:.45}.sheet-summary{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;font-size:12px;color:#b9caa6}.sheet-summary strong{font:14px Consolas,monospace;color:#e1cc94}.squad{display:flex;align-items:center;gap:11px;width:calc(100% - 32px);margin:0 16px;padding:12px 0;border:0;border-top:1px solid #3e5434;background:none;color:#e1e9d2;text-align:left;min-height:65px}.squad.focused{background:#30482b}.letter{width:30px;height:32px;display:grid;place-items:center;border:1px solid #76975a;background:#304b2b;color:#d2e2ba;font:14px Consolas,monospace}.squad>span:nth-child(2){flex:1;min-width:0}.squad strong{font-size:13px}.squad small{display:block;margin-top:4px;font-size:10px;color:#abc293;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.squad>b{font:16px Consolas,monospace;display:flex;align-items:baseline}.squad>b small{font-size:10px;display:inline}#squad-detail{border-top:1px solid #3e5434;padding-top:12px}.hq-tabs{display:flex;padding:6px 12px 0;border-bottom:1px solid #3e5434}.hq-tabs button{flex:1;min-height:46px;background:none;color:#b9ceaa;border:0;border-bottom:2px solid transparent;font-size:12px}.hq-tabs button[aria-selected=true]{color:#e5c98b;border-bottom-color:#d2b47b}.upgrade{display:block;text-align:left;width:calc(100% - 32px);margin:0 16px 12px;padding:15px;background:#273b26;color:#e1e8d2;border:1px solid #4e693c;border-radius:10px}.upgrade.available{border-color:#d2b47b;background:#354329}.upgrade>span:first-child{display:flex;justify-content:space-between;align-items:center}.upgrade strong{font-size:15px;font-weight:600}.upgrade span small{font:12px Consolas,monospace;color:#b8cba5}.track{display:flex;gap:5px;margin:12px 0}.track i{height:4px;width:34px;background:#4f6a3c}.track i.filled{background:#e0bd7f}.upgrade>small{display:block;font-size:12px;line-height:1.6;color:#b6cba4}.upgrade-cost{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #526c3e;margin-top:12px;padding-top:10px;font-size:12px;color:#dbdfc2}.upgrade-cost b{font-size:19px;font-weight:400}.next-upgrade{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:4px 18px 10px;font-size:12px;color:#b1c59d}.next-upgrade strong{font:12px Consolas,monospace;color:#d2dfbb}.next-upgrade>div{height:4px;width:100%;background:#3a532e}.next-upgrade i{display:block;height:100%;background:#c8b274}.settings-action{display:flex;align-items:center;justify-content:space-between;width:calc(100% - 36px);margin:10px 18px;padding:15px;background:#2a3c27;color:#e0e6ce;border:1px solid #526c40;border-radius:9px;font-size:13px;min-height:49px}#journal{padding:0 18px}.log{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid #3b5132;color:#becfaa;font-size:12px;line-height:1.5}.log time{font:10px Consolas,monospace;color:#a0ba86;padding-top:3px;flex-shrink:0}.log.good{color:#d0e6b6}.log.warning,.warning{color:#ebbf83!important}.legend{display:flex;flex-wrap:wrap;gap:12px;padding:18px;font-size:10px;color:#c1d0ad}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:6px;height:6px}.blue{background:#6fa3b6}.red{background:#e54a38;border-radius:50%}.report{border:1px solid #d58a6b;transform:rotate(45deg)}#toast{position:fixed;left:50%;bottom:calc(92px + max(env(safe-area-inset-bottom),var(--tg-content-safe-area-inset-bottom,0px)));transform:translate(-50%,10px);width:max-content;max-width:min(90vw,460px);padding:12px 15px;background:#e2c68d;color:#29331f;border:1px solid #f1ddae;border-radius:10px;box-shadow:0 6px 22px #0005;font-size:12px;line-height:1.5;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;z-index:100}#toast.visible{opacity:1;transform:translate(-50%)}@media(min-width:560px){.app-shell{border-left:1px solid #42513c;border-right:1px solid #42513c}.sheet{border-left:1px solid #71855b;border-right:1px solid #71855b}}@media(max-width:350px){.topbar{gap:7px;padding-left:10px;padding-right:10px}.brand-mark{width:26px}.operation h1{font-size:11px}.operation>span{font-size:9px}#clock{font-size:15px}.resources small{font-size:8px}.front{padding-left:7px;padding-right:7px;gap:3px}.front-point strong{font-size:9px}.front-point small{font-size:7px}.front-link{flex-basis:5px;width:5px}.deployment{padding:18px}.deployment h2{font-size:24px}.dock{padding-left:10px;padding-right:10px;gap:7px}}@media(max-height:650px){.topbar{min-height:50px;padding-top:7px;padding-bottom:7px}.resources{padding-top:5px;padding-bottom:5px}.front{min-height:40px}.dock{padding-top:6px;padding-bottom:calc(6px + env(safe-area-inset-bottom))}.dock button{min-height:46px}.deployment{padding:16px}.deployment h2{font-size:23px;margin:10px 0}.deployment p{font-size:11px;margin-bottom:10px}.deployment>small{font-size:9px;margin-top:10px}.facts{margin:10px 0;padding:8px 0}.primary{min-height:44px;padding:11px 13px}.map-guide small{display:none}}.rules-toggle{flex-shrink:0;min-width:64px;min-height:44px;padding:8px;border:1px solid #63784e;border-radius:9px;background:#283a29;color:#ead4a3;font-size:11px;font-weight:600}.rules-toggle[aria-expanded=true]{background:#435132}.rules-dialog{position:fixed;top:0;right:0;bottom:0;left:0;display:none;flex-direction:column;width:calc(100% - 16px);max-width:520px;height:min(94dvh,900px);max-height:calc(100dvh - 16px);padding:0;margin:auto;border:1px solid #71855b;border-radius:16px;background:#1c2b20;color:#e8ecdc;overflow:hidden;box-shadow:0 14px 70px #0007}.rules-dialog[open]{display:flex}.rules-dialog::backdrop{background:#0b140dcc;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.rules-header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-shrink:0;padding:16px 18px;border-bottom:1px solid #405536}.rules-header small{font:10px Consolas,monospace;letter-spacing:.7px;color:#e0c58b}.rules-header h2{font-size:23px;line-height:1.2;font-weight:600;margin:6px 0 0}.rules-header>button{width:44px;height:44px;flex-shrink:0;border:1px solid #63784e;border-radius:50%;background:#2d3e2b;color:#e8ecdc;font-size:26px}.rules-content{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px;font-size:14px;line-height:1.7;color:#c6d4b6;overflow-wrap:anywhere;-webkit-overflow-scrolling:touch}.rules-content p{margin:0 0 13px}.rules-content strong{color:#f0e3c2}.rules-lead{font-size:15px;color:#e1e7d5}.rules-principle{padding:14px;border:1px solid #7d784e;border-radius:10px;background:#313d29}.rules-section{border-top:1px solid #405536;padding-top:19px;margin-top:22px}.rules-content h3{font-size:17px;line-height:1.4;margin:0 0 12px;color:#ebd39e;font-weight:600}.rules-content ul,.rules-content ol{padding-left:21px;margin:0 0 14px}.rules-content li{padding-left:2px;margin:8px 0}.rules-facts{margin:0 0 15px}.rules-facts>div{padding:10px 0;border-bottom:1px solid #405536}.rules-facts dt{font-weight:600;color:#e1e7d5}.rules-facts dd{margin:3px 0 0;color:#b9caa6}.rules-note{padding:12px;border-left:3px solid #c9ab70;background:#313b26;font-size:13px}.rules-advanced{margin-top:24px;padding:14px;border:1px solid #6b7049;border-radius:10px;background:#283423}.rules-advanced summary{min-height:44px;cursor:pointer;display:list-item;font-weight:600;color:#e4cb95;line-height:1.5}.rules-advanced[open] summary{margin-bottom:15px}.rules-advanced h3{font-size:15px;margin-top:18px}.rules-advanced p:last-child{margin-bottom:0}.rules-footer{flex-shrink:0;padding:12px 18px calc(12px + max(env(safe-area-inset-bottom),var(--tg-content-safe-area-inset-bottom,0px)));border-top:1px solid #405536;background:#1c2b20}.rules-footer>.primary{justify-content:center;min-height:48px}@media(max-width:380px){.topbar{gap:6px;padding-left:9px;padding-right:9px}.brand-mark{display:none}.operation h1{font-size:11px}.operation>span{font-size:9px}#clock{font-size:15px}.rules-toggle{min-width:60px;padding:7px;font-size:10px}.rules-content{padding:16px}.rules-header{padding:12px 16px}.rules-header h2{font-size:21px}}.difficulty-label{display:block;font-size:11px;color:#c4d0b5;margin:0 0 6px}#difficulty{display:block;width:100%;min-height:44px;border:1px solid #71855b;border-radius:8px;padding:9px 12px;margin-bottom:12px;background:#283b28;color:#eee6cc;font:13px Segoe UI,Arial,sans-serif}.approach-options{display:flex;gap:6px;margin-top:10px}.approach-options button{flex:1;min-height:44px;font-size:12px;padding:8px 5px}.approach-options button[aria-pressed=true]{background:#4c5733;border-color:#e0c083;color:#f0ddb0}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
