
/* COREBOUND — OPERATIONS DECK / HUD build 02. Gameplay canvas is unchanged. */
:root{--bg:#070b0e;--panel:#101719;--panel2:#192123;--muted:#8a999b;--line:#314043;--cyan:#d9f47e;--gold:#e9c18d;--danger:#ff7c6a;color-scheme:dark}
*{box-sizing:border-box}
body{background:#080d10;color:#e7eeeb;font-family:Arial,'Helvetica Neue',sans-serif;overflow-x:hidden}
body:before{content:'';position:fixed;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,transparent 93%,#77988e0b 93%,#77988e0b 94%,transparent 94%),linear-gradient(0deg,transparent 93%,#77988e0b 93%,#77988e0b 94%,transparent 94%);background-size:60px 60px}
.shell{max-width:1390px;padding:25px 24px 28px}
.masthead{padding:0 0 26px;border-bottom:1px solid #273336;margin-bottom:19px}
.brand{gap:14px;align-items:center}.brandmark{width:44px;height:44px;border:1px solid #d9f47e;display:grid;place-items:center;border-radius:0;background:#d9f47e0e;position:relative;transform:rotate(-12deg);box-shadow:none}
.brandmark:before,.brandmark:after{content:'';position:absolute;border:1.5px solid #d9f47e;transform:rotate(45deg)}.brandmark:before{width:21px;height:21px}.brandmark:after{width:8px;height:8px;background:#d9f47e;box-shadow:0 0 0 2px #0a0d0b}.brandmark>span{position:absolute;bottom:-4px;right:-4px;width:8px;height:8px;background:#d9f47e}
.brand b{font-size:27px;letter-spacing:.4px;font-weight:950;line-height:1.03;color:#f0f3ee}.brand b span,.intro-pane h1 span{color:#d9f47e}.brand small{font:9px 'Courier New',monospace;letter-spacing:2px;margin-top:8px;color:#93a3a0}.brand small em{color:#d9f47e;font-style:normal}
.mast-right{font:10px 'Courier New',monospace;letter-spacing:1.1px;color:#a6b1ac;gap:12px}.online-dot{width:6px;height:6px;background:#d9f47e;box-shadow:0 0 0 3px #c2e17321}.version{border-radius:0;border:1px solid #536346;color:#d9f47e;padding:8px 10px;background:#1b2419;font-weight:bold}
.section-kicker{display:flex;justify-content:space-between;align-items:center;font:700 10px 'Courier New',monospace;color:#82908a;letter-spacing:1.9px;padding-bottom:10px}.section-kicker span:first-child{color:#d5eb80}
.gamebox{background:#090f12;border:1px solid #344043;border-radius:0;overflow:hidden;box-shadow:12px 20px 0 #0004;position:relative}.gamebox:before{content:'';position:absolute;top:0;left:0;width:49px;height:2px;background:#d9f47e;z-index:3}
.gamebar{background:#131b1c;border-bottom:1px solid #394649;min-height:81px;padding:0 0 0 22px;gap:0;align-items:stretch}.bar-id{display:flex;align-items:center;gap:10px;min-width:181px;border-right:1px solid #313c3c;color:#b2c1b8;font:700 10px 'Courier New',monospace;letter-spacing:1px}.status-tick{width:8px;height:8px;border-radius:50%;background:#d9f47e;box-shadow:0 0 12px #d9f47e80}
.stat{display:flex;flex-direction:column;justify-content:center;min-width:0;flex:1;max-width:none;padding:0 23px;border-right:1px solid #313c3c}.stat i{color:#81908b;font:700 10px 'Courier New',monospace;letter-spacing:1.4px;margin-bottom:7px}.stat strong{font:800 22px Arial,sans-serif;letter-spacing:-.5px;color:#f1f1e9}.stat .gold{color:#e6be83}
.mini-meter{width:100%;height:3px;margin-top:10px;background:#38413b;border-radius:0}.mini-meter>span{border-radius:0;background:#d9f47e}.iconbtn{width:75px;height:auto;margin-left:0;border:none;border-radius:0;border-left:1px solid #313c3c;background:#131b1c;color:#d9f47e;font-size:26px}.iconbtn:hover{background:#223022}
.arena-layout{display:grid;grid-template-columns:minmax(0,1fr) 292px;align-items:stretch}.field{background:#0a1018;overflow:hidden;min-width:0;isolation:isolate}.field canvas{width:100%;height:auto;aspect-ratio:16/9;display:block;touch-action:manipulation}.field:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;border:1px solid #91d1bb10;box-shadow:inset 0 0 60px #0004}
.corner-label{bottom:12px;font:700 9px 'Courier New',monospace;letter-spacing:1.2px;color:#b1d6cf;z-index:2;text-shadow:0 1px 6px black}.left-corner{left:16px}.right-corner{right:14px;color:#e9c18d}
.fullscreen-btn{position:absolute;z-index:4;right:13px;top:14px;background:#091416ce;border:1px solid #6a8887;color:#d9f47e;padding:8px 10px;font:700 11px 'Courier New',monospace;letter-spacing:1px;cursor:pointer}.fullscreen-btn span{margin-left:5px;color:#d1ddce}.fullscreen-btn:hover{background:#2a3935}
.toast{z-index:8;border-color:#d9f47e;border-radius:0;background:#14231d;font:700 11px 'Courier New',monospace;letter-spacing:1px;color:#e3f1d3}
.actionbar{padding:0;min-height:0;background:#151d1d;border-top:none;border-left:1px solid #384548;display:flex;flex-direction:column;gap:0;overflow:hidden;align-items:stretch;flex-wrap:nowrap}
.command-heading{display:flex;justify-content:space-between;align-items:center;min-height:52px;padding:0 19px;color:#d9f47e;background:#1c2525;border-bottom:1px solid #364241;font:800 10px 'Courier New',monospace;letter-spacing:1.3px}.command-heading span:last-child{color:#758581}
.selection{max-width:none;min-width:0;gap:12px;padding:19px 17px 17px;flex:none;align-items:flex-start;border-bottom:1px solid #303b3b}.selection-indicator{color:#d9f47e;min-width:39px;width:39px;height:39px;background:#283428;border:1px solid #5d7147;border-radius:0;font-size:25px}.selection b{font-size:13px;line-height:1.35;margin-bottom:6px;font-weight:800;color:#f1f3ed;white-space:normal}.selection small{font-size:11px;line-height:1.5;color:#99aaa8;display:block}
.build-controls{display:flex;order:initial;flex:1;flex-basis:auto;flex-direction:column;gap:7px;min-height:178px;padding:16px 12px;overflow-y:auto;overflow-x:hidden;justify-content:flex-start}
.build-controls:empty::before{content:'01  /  ТОЧКА РАЗМЕЩЕНИЯ\A\AНажми на светящийся узел игрового поля, чтобы открыть чертежи башен.';white-space:pre-line;display:block;background:repeating-linear-gradient(45deg,#1f2a281b 0,#1f2a281b 2px,transparent 2px,transparent 8px);border:1px dashed #4d6060;min-height:161px;padding:23px 18px;color:#97aaa5;font:12px/1.7 'Courier New',monospace}
.toolbtn{display:flex;gap:12px;align-items:center;text-align:left;min-width:0;width:100%;padding:12px 11px;background:#202b2a;border:1px solid #45534e;border-radius:0;color:#f0f3e9;transition:background .15s,border-color .15s,transform .15s;position:relative}.toolbtn:hover:not(:disabled){background:#303b34;border-color:#d9f47e;transform:translateX(-2px)}.toolbtn:disabled{opacity:.31}.toolbtn .icon{width:40px;height:40px;flex-shrink:0;font-size:23px;background:#111e22;border:1px solid #436361;border-radius:0}.toolbtn>div:not(.icon){flex:1;min-width:0}.toolbtn b{font-size:11px;letter-spacing:1.15px}.toolbtn small{font:700 12px 'Courier New',monospace;color:#e3c18b;margin-top:6px}
.dock-bottom{order:initial;flex:none;padding:14px;background:#1a2422;border-top:1px solid #394541;margin-top:auto}.dock-hint{display:flex;justify-content:space-between;gap:7px;font:10px 'Courier New',monospace;color:#8b9e99;margin-bottom:12px}.dock-hint b{color:#d9f47e}.wave-actions{display:flex;gap:7px;align-items:stretch;width:100%}
.primary,.secondary{min-height:46px;border-radius:0;box-shadow:none;font-family:'Arial Narrow',Arial,sans-serif;font-size:12px;letter-spacing:.9px;text-transform:uppercase;transition:background .18s,filter .18s,border-color .18s,transform .18s}.primary{background:#d9f47e;border:1px solid #d9f47e;color:#111a12;font-weight:900}.primary:hover:not(:disabled){background:#ecffac;filter:none;transform:none}.primary:disabled{opacity:.34;filter:grayscale(.4);cursor:not-allowed}.secondary{background:#242f30;color:#e0eae5;border:1px solid #50605b}.secondary:hover:not(:disabled){background:#354342;filter:none;transform:none}.secondary:disabled{opacity:.43}.speed{width:64px;min-width:64px}.wave-actions #nextWaveBtn{flex:1;min-width:0;padding:0 8px;font-size:11px}
.footer{padding:16px 1px;color:#8d9c96;font:11px 'Courier New',monospace;gap:25px}.footer b{color:#d9f47e;letter-spacing:1px}.footer .sep{color:#d9f47e;padding:0 4px}.footer .tips{color:#667b78;font-size:9px;letter-spacing:.5px}
.modal{z-index:10;padding:25px;display:flex;align-items:center;justify-content:center}.modal.hidden{display:none}.modal-backdrop{background:linear-gradient(115deg,#070b0ef7 9%,#0b151de8 64%,#0a1019dd);backdrop-filter:blur(2px)}
.intro-pane{width:min(100%,610px);max-width:610px;text-align:left;border:1px solid #53635b;border-left:4px solid #d9f47e;border-radius:0;background:linear-gradient(140deg,#172420ef,#101918f7);box-shadow:17px 18px 0 #050909a6;padding:0 29px 23px;position:relative;overflow:hidden}.intro-pane:before{content:'';position:absolute;pointer-events:none;top:43px;right:-64px;width:210px;height:210px;border:1px solid #d9f47e1b;transform:rotate(45deg)}.intro-pane:after{content:'';position:absolute;pointer-events:none;right:31px;top:91px;width:68px;height:68px;border:1px solid #d9f47e2b;transform:rotate(45deg)}
.intro-topline{display:flex;justify-content:space-between;align-items:center;margin:0 -29px 25px;padding:14px 20px 14px 28px;background:#d9f47e0a;border-bottom:1px solid #42514b;font:700 10px 'Courier New',monospace;letter-spacing:1.15px;color:#d5e1d2;gap:12px}.intro-topline span:first-child{color:#d9f47e}.intro-topline span:last-child{color:#8fa59c;font-size:9px}.blink-marker{display:inline-block;width:6px;height:6px;background:#d9f47e;border-radius:50%;margin-left:6px;vertical-align:middle}.eyebrow{font:700 10px 'Courier New',monospace;letter-spacing:1px;color:#d9f47e;line-height:1.45}
.intro-pane h1{margin:14px 0 15px;font-family:Impact,'Arial Black',Arial,sans-serif;font-size:clamp(38px,5vw,66px);line-height:.98;letter-spacing:-1.9px;font-weight:950;max-width:530px;color:#f1f2e8}.intro-pane h1>span{display:block;letter-spacing:-2px}.stop,.accent-period{color:#fb825c!important}.intro-pane p{max-width:460px;color:#c4d1ca;font-size:14px;line-height:1.55;margin:0 0 19px;text-align:left}
.intro-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #3c4a45;border-bottom:1px solid #3c4a45;gap:0;margin:0 0 19px}.intro-features span{border:0;border-right:1px solid #3c4a45;background:transparent;color:#cddcd2;border-radius:0;padding:12px 8px 12px 0;font:700 11px Arial,sans-serif;white-space:nowrap}.intro-features span+span{padding-left:12px}.intro-features span:last-child{border-right:0}.intro-features em{font:700 11px 'Courier New',monospace;color:#d9f47e;margin-right:7px;font-style:normal}
.intro-bottom{position:relative;z-index:2}.meta{background:#131d1b;border:1px solid #41534b;border-radius:0;padding:10px 11px;margin-bottom:10px;text-align:left}.meta small,.result-grid small{font:700 10px 'Courier New',monospace;color:#8b9e95;letter-spacing:.5px;margin-bottom:6px}.meta b{font-size:13px;color:#e9c18d}.meta .secondary{min-height:35px;padding:0 12px;font-size:10px}
.large{width:100%;min-height:55px;font-size:13px;letter-spacing:.45px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 15px}.large .play-serial{font:700 11px 'Courier New',monospace;color:#536742;border-right:1px solid #8fa967;padding-right:14px}.large .play-arrow{font-size:22px;line-height:1;color:#33472c}.footnote{font:10px/1.5 'Courier New',monospace;color:#869b93;margin-top:14px;text-align:left;display:block}
.upgrade-pane{position:relative;z-index:1;max-width:740px;width:100%;padding:24px 25px;border:1px solid #6c7d70;border-left:4px solid #d9f47e;border-radius:0;text-align:left;background:#131e1c;box-shadow:14px 16px 0 #050909b3}.upgrade-pane h2,.end-pane h2{font:900 34px Impact,'Arial Black',Arial,sans-serif;color:#f1f4e8;letter-spacing:.1px;margin:9px 0}.upgrade-pane p{margin:0;max-width:none;text-align:left;font-size:12px;color:#9fb0a8;line-height:1.5}
.upgrade-cards{margin:18px 0;gap:9px}.upgrade-card{position:relative;border:1px solid #4b6257;border-radius:0;background:#202d29;color:#e7f0e5;min-height:175px;padding:15px;transition:background .15s,border-color .15s}.upgrade-card:hover{background:#2a3e32;border-color:#d9f47e;box-shadow:none}.upgrade-card>span{color:#d9f47e;font-size:30px;margin:0 0 12px}.upgrade-card b{font-size:14px;margin-bottom:10px}.upgrade-card small{font-size:11px;color:#bbcfc4;line-height:1.5}.wave-next{font:700 10px 'Courier New',monospace;letter-spacing:1px;color:#d9f47e}
.end-pane .broken{color:#ff7c6a;text-shadow:none;font:900 24px Arial;margin:14px 0 0}.end-pane h2{color:#f1f3e8;margin:10px 0 14px}.end-pane p{font-size:13px}.result-grid{margin:19px 0}.result-grid>div{background:#1d2925;border-color:#42544b;border-radius:0;padding:14px}.result-grid b{color:#e9c18d}
.gamebox:fullscreen{height:100dvh;display:flex;flex-direction:column;background:#070e13}.gamebox:fullscreen .gamebar{min-height:55px;flex:none}.gamebox:fullscreen .arena-layout{flex:1;min-height:0}.gamebox:fullscreen .field canvas{width:100%;height:100%;object-fit:fill}.gamebox:fullscreen .field{min-height:0}.gamebox:fullscreen .actionbar{min-height:0}
@media(max-width:1100px){.shell{padding:15px}.bar-id{min-width:146px}.stat{padding:0 14px}.arena-layout{grid-template-columns:minmax(0,1fr) 255px}.build-controls{padding:10px}.command-heading{padding:0 13px}.selection{padding:14px 10px}}
@media(max-width:780px){
.shell{padding:12px 10px}.masthead{padding-bottom:16px;margin-bottom:13px}.brandmark{width:34px;height:34px}.brandmark:before{width:16px;height:16px}.brand b{font-size:23px}.brand small{font-size:7px;letter-spacing:1px}.mast-right{gap:7px}.op-status{display:none}.version{padding:7px 6px;font-size:9px}
.section-kicker{font-size:9px;letter-spacing:.8px}.gamebar{min-height:73px;padding:0;gap:0;display:grid;grid-template-columns:1fr 1fr 1fr 37px}.bar-id{display:none}.stat{padding:11px 9px;border-right:1px solid #354441;min-width:0}.stat i{font-size:9px;letter-spacing:.4px;margin-bottom:6px}.stat strong{font-size:19px}.killstat{display:none}.iconbtn{width:37px;height:auto;flex:auto;font-size:21px;border:0}
.arena-layout{display:flex;flex-direction:column}.field{width:100%}.field canvas{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}.corner-label{font-size:8px;bottom:8px}.fullscreen-btn{padding:7px 8px;right:7px;top:7px}.fullscreen-btn span{display:none}
.actionbar{width:100%;border-left:0;border-top:1px solid #36433f;min-height:0;align-items:stretch;flex-wrap:nowrap}.command-heading{min-height:33px;padding:0 12px;font-size:9px}.selection{padding:10px 12px;gap:10px;align-items:center;border-bottom:0}.selection-indicator{min-width:33px;width:33px;height:33px;font-size:22px}.selection b{font-size:13px;margin-bottom:3px}.selection small{font-size:10px}
.command-heading,.selection,.build-controls,.dock-bottom{width:100%;max-width:none}
.build-controls{order:initial;flex-basis:auto;padding:3px 10px 12px;min-height:0;flex-direction:row;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;gap:7px;scroll-snap-type:x mandatory;flex:none}
.build-controls:empty::before{min-height:45px;width:100%;content:'⌖   НАЖМИ НА СВЕТЯЩИЙСЯ УЗЕЛ НА ПОЛЕ';font:700 10px 'Courier New',monospace;white-space:normal;padding:14px;color:#a0b2ab}
.toolbtn{flex:1 1 0;min-width:0;width:auto;max-width:none;padding:7px 5px;gap:5px;scroll-snap-align:start}.toolbtn .icon{width:26px;min-width:26px;height:29px;font-size:17px}.toolbtn b{font-size:9px;letter-spacing:.1px}.toolbtn small{font-size:10px;margin-top:5px}
.dock-bottom{order:initial;margin-top:0;padding:10px;border-top:1px solid #3c4944}.dock-hint{margin-bottom:8px;font-size:9px}.wave-actions #nextWaveBtn{font-size:12px}.footer{line-height:1.5;padding:14px 2px}.tips{display:none}
.field:has(#startModal:not(.hidden)),.field:has(#deadModal:not(.hidden)),.field:has(#upgradeModal:not(.hidden)){min-height:540px}
.modal{padding:15px 12px}.modal-backdrop{background:linear-gradient(140deg,#0b1113f8,#101a1df5)}.intro-pane{max-width:460px;padding:0 17px 18px;box-shadow:8px 10px 0 #050909a6}.intro-topline{margin:0 -17px 21px;padding:11px 14px 11px 16px;font-size:9px}
.intro-pane h1{font-size:clamp(40px,10vw,62px);line-height:.99;margin:12px 0 15px}.intro-pane p{font-size:13px;margin-bottom:16px}.intro-features{margin-bottom:14px}.intro-features span{font-size:10px;padding:11px 4px 11px 0}.intro-features em{margin-right:4px;font-size:10px}.intro-features span+span{padding-left:6px}
.meta{padding:10px 8px}.meta .secondary{min-height:33px;padding:0 9px}.large{min-height:49px;font-size:11px}.footnote{font-size:9px;margin-top:12px}
.upgrade-pane{padding:17px 15px}.upgrade-pane h2{font-size:30px}.upgrade-pane p{font-size:11px}.upgrade-cards{grid-template-columns:1fr;gap:6px;margin:12px 0;max-height:310px;overflow-y:auto}.upgrade-card{min-height:79px;padding:10px 13px 10px 62px}.upgrade-card>span{position:absolute;left:14px;top:13px;font-size:27px}.upgrade-card b{font-size:13px;margin:0 0 5px}.upgrade-card small{font-size:10px}.end-pane h2{font-size:29px}
}
@media(max-width:390px){.brand small{letter-spacing:.2px}.brand b{font-size:20px}.section-kicker{font-size:8px}.stat strong{font-size:16px}.intro-pane h1{font-size:39px}.intro-pane p{font-size:12px}.intro-features span{font-size:9px}.intro-topline span:last-child{font-size:8px}.meta .secondary{font-size:9px}.modal{padding:8px}.field:has(#startModal:not(.hidden)),.field:has(#deadModal:not(.hidden)),.field:has(#upgradeModal:not(.hidden)){min-height:515px}}
@media(max-height:540px) and (orientation:landscape){
.shell{padding:4px 8px}.masthead{padding:2px 0 8px;margin-bottom:6px}.brandmark{width:28px;height:28px}.brand b{font-size:17px}.brand small{display:none}.section-kicker{padding-bottom:4px;font-size:8px}.gamebar{display:flex;min-height:37px}.bar-id{display:none}.stat{max-width:unset;padding:5px 12px}.stat i{font-size:8px;margin-bottom:1px}.stat strong{font-size:12px}.mini-meter{display:none}.iconbtn{width:42px}.arena-layout{display:grid;grid-template-columns:minmax(0,1fr) 228px}.field:has(.modal:not(.hidden)){min-height:0}.field canvas{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}.actionbar{border-left:1px solid #3d4b44;border-top:0}.command-heading{min-height:31px}.selection{padding:6px}.selection-indicator{min-width:26px;width:26px;height:27px}.selection small{display:none}.build-controls{min-height:0;flex-direction:column;overflow-y:auto;overflow-x:hidden;gap:4px;padding:4px 6px}.toolbtn{min-height:32px;width:100%;max-width:none;padding:3px 6px}.toolbtn .icon{width:24px;min-width:24px;height:24px}.dock-bottom{padding:5px}.dock-hint{display:none}.wave-actions .primary,.wave-actions .secondary{min-height:29px;font-size:10px}.footer{display:none}
.modal{padding:6px}.intro-pane{max-width:455px;padding:0 14px 9px}.intro-topline{margin:0 -14px 6px;padding:5px 10px;font-size:7px}.intro-topline span:last-child{font-size:7px}.eyebrow{font-size:8px}.intro-pane h1{font-size:30px;margin:5px 0}.intro-pane p{font-size:10px;margin:0 0 7px;line-height:1.3}.intro-features{margin-bottom:6px}.intro-features span{font-size:8px;padding:5px 2px}.meta{padding:4px 8px;margin-bottom:5px}.meta small{font-size:7px;margin:0}.meta b{font-size:10px}.meta .secondary{min-height:25px;font-size:8px}.large{min-height:33px;font-size:10px}.footnote{display:none}.upgrade-pane{padding:10px}.upgrade-pane h2{font-size:21px;margin:3px 0}.upgrade-pane p{font-size:9px}.upgrade-cards{grid-template-columns:repeat(3,minmax(0,1fr));margin:5px 0;max-height:none}.upgrade-card{padding:7px;min-height:90px}.upgrade-card>span{position:static;font-size:18px;margin:0}.upgrade-card b{font-size:10px}.upgrade-card small{font-size:8px}.wave-next{font-size:8px}.end-pane h2{font-size:22px;margin:4px}.end-pane .broken{display:none}.result-grid{margin:4px 0}.result-grid>div{padding:5px}.result-grid b{font-size:13px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
