:root{--left-w: 270px;--right-w: 286px;--top-h: 36px;--stats-h: 155px;--bottom-h: 160px;--right-bottom-h: 155px}body.stats-panel-hidden{--bottom-h: 0px;--right-bottom-h: 0px}:root{--panel-accent: rgba(215,120,40,.18);--panel-bg: rgba(8,6,4,.92);--modal-bg: rgba(8,6,4,.975);--panel-top-edge: inset 0 1px 0 rgba(255,210,150,.09);--hud-bg: rgba(8,8,18,.9);--card-bg: rgba(14,12,20,.92);--btn-primary-bg: rgba(200,120,40,.26);--btn-primary-bg-hover: rgba(200,120,40,.42);--btn-primary-fg: #f0c060;--btn-primary-edge: inset 0 1px 0 rgba(255,220,160,.08);--btn-primary-edge-hover: inset 0 1px 0 rgba(255,220,160,.12), 0 0 16px rgba(240,192,96,.22);--btn-secondary-bg: rgba(110,80,180,.2);--btn-secondary-bg-hover: rgba(110,80,180,.34);--btn-secondary-fg: #b8a0d8;--btn-secondary-edge: inset 0 1px 0 rgba(220,200,255,.06);--btn-secondary-edge-hover: inset 0 1px 0 rgba(220,200,255,.1), 0 0 14px rgba(176,144,208,.2);--btn-quiet-bg: rgba(130,100,40,.22);--btn-quiet-bg-hover: rgba(130,100,40,.36);--btn-quiet-fg: #c0a050;--btn-quiet-edge: inset 0 1px 0 rgba(255,230,180,.06);--btn-quiet-edge-hover: inset 0 1px 0 rgba(255,230,180,.1);--btn-float-bg: rgba(60,40,14,.8);--btn-float-bg-hover: rgba(90,62,20,.92);--btn-float-edge: 0 4px 14px rgba(0,0,0,.6);--btn-danger-bg: rgba(170,50,30,.22);--btn-danger-bg-hover: rgba(170,50,30,.36);--btn-danger-fg: #e89070;--btn-danger-edge: inset 0 1px 0 rgba(255,200,180,.06);--btn-danger-edge-hover: inset 0 1px 0 rgba(255,200,180,.1), 0 0 14px rgba(224,128,96,.22);--btn-armed-bg: rgba(150,35,20,.96);--btn-armed-fg: #ffd0b8;--btn-armed-edge: 0 0 18px 2px rgba(230,70,40,.5), inset 0 1px 0 rgba(255,200,180,.15);--btn-buy-bg: rgba(200,130,40,.2);--btn-buy-bg-hover: rgba(200,130,40,.34);--btn-buy-fg: #d8a850;--btn-upg-bg: rgba(70,150,210,.18);--btn-upg-bg-hover: rgba(70,150,210,.32);--btn-upg-fg: #78b4d4;--btn-tog-bg: rgba(100,180,60,.18);--btn-tog-bg-hover: rgba(100,180,60,.32);--btn-tog-fg: #98cc58;--btn-warren-bg: rgba(200,130,60,.2);--btn-warren-bg-hover: rgba(200,130,60,.34);--btn-scout-bg: rgba(60,160,190,.18);--btn-scout-bg-hover: rgba(60,160,190,.32);--btn-on-glow: 0 0 12px 1px;--input-bg: rgba(255,225,180,.06);--input-edge: inset 0 1px 3px rgba(0,0,0,.6);--track-bg: rgba(255,220,170,.08);--track-edge: inset 0 1px 2px rgba(0,0,0,.6);--notice-bg: rgba(160,96,48,.22);--focus-ring: #ffd23c}*{--panel-shadow: 0 28px 70px rgba(0,0,0,.88), 0 6px 18px rgba(0,0,0,.65), 0 0 44px 6px var(--panel-accent), var(--panel-top-edge);--hud-shadow: 0 6px 18px rgba(0,0,0,.55), 0 0 24px 2px var(--panel-accent), var(--panel-top-edge);--card-shadow: 0 3px 10px rgba(0,0,0,.5), 0 0 16px 1px var(--panel-accent), var(--panel-top-edge);--tip-shadow: 0 4px 12px rgba(0,0,0,.6), 0 0 18px 2px var(--panel-accent), var(--panel-top-edge)}:is(button,a,input,textarea,select,[role=button]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}*{margin:0;padding:0;box-sizing:border-box}html,body{overscroll-behavior-y:none;height:100%;overflow:hidden}body{background:#0a0a0f;font-family:Georgia,serif;color:#e8d5b7;font-size:18px}#ui{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}button,.research-node,.lin-node{-webkit-user-select:none;user-select:none}button{border:0}.panel{background:var(--hud-bg);box-shadow:var(--hud-shadow);border-radius:6px;padding:12px 16px}.panel h2{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#8a7060;margin-bottom:10px}#left-bar{position:fixed;left:0;top:0;bottom:var(--bottom-h);width:var(--left-w);overflow-y:auto;overscroll-behavior:contain;padding:8px;display:flex;flex-direction:column;gap:12px;z-index:1}#resources{position:static;min-width:unset;pointer-events:all}.res-row{pointer-events:all}.res-row:hover{background:#5a461e26;border-radius:3px}#units{position:static;min-width:unset;pointer-events:all}#cheatz-panel{pointer-events:all;--panel-accent: rgba(150,60,140,.3)}#cheatz-panel h2{color:#c060a0}.cheat-btn{pointer-events:all;cursor:pointer;font-family:Georgia,serif;display:block;width:100%;margin:4px 0;background:var(--btn-secondary-bg);box-shadow:var(--btn-secondary-edge);color:#d090e0;padding:5px 8px;border-radius:3px;font-size:13px;text-align:left;transition:background .15s,box-shadow .15s}.cheat-btn:hover{background:var(--btn-secondary-bg-hover);box-shadow:var(--btn-secondary-edge-hover)}.res-row{display:flex;justify-content:space-between;margin:4px 0;font-size:16px}.res-label{color:#b09070;font-size:15px}.res-val{color:#f0c060;font-weight:700;min-width:40px;text-align:right;font-size:14px}.res-cap{display:block;color:#8a7a58;font-weight:400;font-size:10px;line-height:1.1}.pop-cap-row{font-size:12px;color:#7a6a50;margin-bottom:8px}.pop-cap-row span{color:#c0a060}.unit-row{display:flex;justify-content:space-between;align-items:center;margin:4px 0;font-size:15px}.unit-name{color:#c0a880}.unit-count{color:#f0c060;font-weight:700}.monster-info-btn{pointer-events:all;cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-block;margin-left:6px;padding:0 3px;font-size:15px;opacity:.55;transition:opacity .15s,transform .15s}.monster-info-btn:hover{opacity:1;transform:scale(1.15)}.fullness-track{background:var(--track-bg);box-shadow:var(--track-edge);border-radius:2px;height:4px;overflow:hidden;margin:2px 0 6px}.fullness-fill{height:100%;border-radius:2px;transition:width .6s,background .6s}.horde-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.horde-hunger{pointer-events:all;display:inline-flex;align-items:center;gap:5px;padding:2px 4px;font-size:11px;font-weight:400;cursor:help}.horde-hunger-icon{font-size:11px;line-height:1;filter:saturate(.85)}.horde-hunger-track{display:inline-block;width:46px;height:5px;border-radius:2px;background:var(--track-bg);box-shadow:var(--track-edge);overflow:hidden}.horde-hunger-fill{display:block;height:100%;border-radius:2px;transition:width .6s,background .6s}.horde-hunger-pct{color:#9a8060;min-width:26px;text-align:right}.hob-btn{pointer-events:all;cursor:pointer;font-family:Georgia,serif;background:var(--btn-quiet-bg);box-shadow:var(--btn-quiet-edge);color:var(--btn-quiet-fg);padding:1px 5px;border-radius:3px;font-size:12px;transition:background .15s,box-shadow .15s}.hob-btn:hover{background:var(--btn-quiet-bg-hover);box-shadow:var(--btn-quiet-edge-hover)}.kbd-hint{opacity:.75}.mobile-only{display:none}.graph-zoom-controls{display:flex;gap:3px}.graph-zoom-controls .hob-btn{min-width:28px;text-align:center}#center-area{position:fixed;left:var(--left-w);top:var(--top-h);right:var(--right-w);bottom:var(--bottom-h);pointer-events:none;padding:0;z-index:6;display:flex;align-items:flex-start;justify-content:center}#center-dialog{--dlg-bg: #080604;--dlg-pad-x: 12px;--dlg-pad-y: 12px;position:relative;pointer-events:all;background:var(--panel-bg);border-radius:8px;box-shadow:var(--panel-shadow);padding:12px 12px 10px;margin-top:12px;width:fit-content;max-width:100%;max-height:calc(100% - 12px);overflow-y:auto;overscroll-behavior:contain}.cp-block{width:640px;max-width:100%}#building-grid{display:flex;flex-wrap:wrap;gap:8px}#center-dialog-head{display:flex;align-items:center;gap:8px;padding-bottom:6px;margin-bottom:8px}#center-dialog-head #center-close-btn{margin-left:auto;font-size:13px;padding:2px 8px}#building-filter-row{display:flex;gap:6px;flex-wrap:wrap}.bld-filter-chip,.rh-filter-chip{pointer-events:all;cursor:pointer;font-family:inherit;padding:4px 12px;border-radius:3px;font-size:13px;background:var(--btn-quiet-bg);box-shadow:var(--btn-quiet-edge);color:#a08050;transition:background .15s,box-shadow .15s,color .15s}.bld-filter-chip:hover,.rh-filter-chip:hover{background:var(--btn-quiet-bg-hover);color:#d0b080}.bld-filter-chip.active,.rh-filter-chip.active{color:var(--btn-primary-fg);background:var(--btn-primary-bg-hover);box-shadow:var(--btn-primary-edge),var(--btn-on-glow) #f0c06038}.rh-filter-row{display:flex;flex-wrap:nowrap;gap:6px;margin:6px 0 8px;pointer-events:all}.building-card{background:var(--card-bg);box-shadow:var(--card-shadow);border-radius:6px;padding:8px;display:flex;flex-direction:column;gap:4px;pointer-events:all;flex:0 0 185px;height:320px;overflow-x:hidden;overflow-y:auto}.building-card-title{font-size:13px;letter-spacing:1px;text-transform:uppercase;color:#8a7060;border-bottom:1px solid #3a2a1a;padding-bottom:6px;margin-bottom:2px;cursor:help;pointer-events:all;-webkit-user-select:none;user-select:none;transition:color .12s}.building-card-title:hover{color:#d0b080}.building-card-title:after{content:"ⓘ";margin-left:5px;font-size:12px;opacity:.55}.building-card-title:hover:after{opacity:.95}.building-level-row{display:flex;align-items:center;gap:3px;font-size:13px;color:#b09070;margin:1px 0}.level-badge{color:#7a6a50;min-width:20px;font-size:12px}.level-count{color:#f0c060;min-width:16px;text-align:center;font-weight:700}.level-cost{margin-left:auto;color:#d0a050;font-size:12px;white-space:nowrap}.level-cost.unaffordable{color:#b06050}.building-btn-row{display:flex;gap:3px;margin:1px 0}.building-btn-row .buy-btn,.building-btn-row .upg-btn{flex:1;min-width:46px;min-height:30px;text-align:center;line-height:12px;display:inline-flex;align-items:center;justify-content:center}.buy-btn[data-tip],.upg-btn[data-tip]{position:relative}.buy-btn[data-tip]:hover:after,.upg-btn[data-tip]:hover:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%);background:var(--modal-bg);box-shadow:var(--tip-shadow);color:#f0c060;font-size:12px;padding:2px 6px;border-radius:3px;white-space:nowrap;pointer-events:none;z-index:50}.building-stats{font-size:12px;color:#8a7060;border-top:1px solid #2a1a0a;padding-top:6px;margin-top:2px}.pop-bar-container{height:6px;background:#140f05b3;border-radius:3px;overflow:hidden;display:flex;margin:3px 0}.pop-bar-working{background:#40c040;height:100%}.pop-bar-reserved{background:#c0a020;height:100%}.pop-bar-warring{background:#c03030;height:100%}.pop-bar-feeding{background:#9040c0;height:100%}.pop-bar-scouting{background:#70a080;height:100%}.pop-bar-collecting{background:#80c0a0;height:100%}.pop-bar-resting{background:#5030a0;height:100%}.pop-bar-aggregated{background:#40a0c0;height:100%}.pop-bar-idle{background:#c0a020;height:100%}.pop-bar-dormant{background:#607040;height:100%}operator-row{display:block}.pop-bar-raiding{background:#c03030;height:100%}.op-row{display:flex;flex-direction:column;gap:3px;margin-top:6px;pointer-events:all}.op-row-header{display:flex;align-items:center;gap:4px;font-size:13px}.op-row-linked{cursor:pointer;pointer-events:all;padding:2px 3px;margin:-2px -3px;border-radius:3px}.op-row-linked:hover{background:#c896501f}.op-row-linked .op-label{text-decoration:underline dotted rgba(212,160,110,.45);text-underline-offset:2px}.op-icon{font-size:15px}.op-icon svg,.op-substat-icon svg,.res-label svg,.wd-tactic-name svg,.wd-potion-toggle svg,.tog-btn svg,.upg-btn svg,.priority-dialog-title svg{vertical-align:-.15em}.op-label{flex:1;color:#d4a06e}.op-nums{color:#b09070;font-size:12px}.op-row-bar-line,.op-row-slider-line{display:flex;align-items:center;gap:6px}.op-row-bar-line .pop-bar-container{flex:1;min-width:0}.op-stat-icon,.op-target-icon{font-size:13px;opacity:.7;flex:0 0 auto}.op-row-slider-line input[type=range]{flex:1;accent-color:#c06030;cursor:pointer;min-width:0;pointer-events:all}.op-rate{font-size:12px;color:#907050;min-width:40px;text-align:right}.op-substat{display:flex;align-items:center;gap:6px;font-size:12px;color:#a09070;margin-top:2px;pointer-events:all}.op-substat-icon{font-size:13px;opacity:.85;flex:0 0 auto}.op-substat .op-rate{margin-left:auto}.op-substat.warn,.op-substat.warn .op-rate{color:#d07040}.card-improved{font-size:12px;color:#a09070;margin-top:2px}#right-bar{position:fixed;right:0;top:0;bottom:var(--right-bottom-h);width:var(--right-w);min-width:var(--right-w);overflow:hidden;padding:8px;display:flex;flex-direction:column;gap:12px;z-index:1;pointer-events:none}body.stats-panel-hidden #stats-panel{display:none!important}#right-scroll{flex:1 1 0;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:12px;pointer-events:auto}#nest-panel{text-align:center;pointer-events:all}#nest-panel h2{color:#a08050}#nest-panel h2.nest-title{cursor:help;pointer-events:all;-webkit-user-select:none;user-select:none;transition:color .12s}#nest-panel h2.nest-title:hover{color:#d0b080}#nest-panel h2.nest-title:after{content:"ⓘ";margin-left:5px;font-size:12px;opacity:.55}#nest-panel h2.nest-title:hover:after{opacity:.95}.blight-row{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:6px;pointer-events:all}.blight-label{font-size:13px;color:#9a8060;cursor:help;-webkit-user-select:none;user-select:none;pointer-events:all;padding:2px 3px;transition:color .12s}.blight-label:hover{color:#d0b080}.blight-info{font-size:12px;opacity:.55}.blight-label:hover .blight-info{opacity:.95}.tog-btn.blight-toggle{width:auto;margin:0;padding:2px 12px;font-size:12px;pointer-events:all}.tog-btn.blight-toggle.on{background:#3c8c5099;color:#d0f0d0;box-shadow:var(--btn-quiet-edge),var(--btn-on-glow) #60c0804d}.tog-btn.blight-toggle.off{background:#3c8c5024;color:#90e0a0}.corrupt-row{display:flex;align-items:stretch;gap:6px;margin-top:6px;pointer-events:all}.corrupt-row .tog-btn{flex:1 1 0;width:auto;margin:0;padding:3px 8px;font-size:12px;pointer-events:all}.tog-btn.corrupt-plan-btn.on{background:#7846c899;color:#e8d8ff;box-shadow:var(--btn-secondary-edge),var(--btn-on-glow) #a870ff59}.tog-btn.corrupt-plan-btn.off{background:#6e50b42e;color:#b090e0}@keyframes corrupt-plan-pulse{0%,to{box-shadow:0 0 #f0c06000}50%{box-shadow:0 0 10px 3px #f0c0608c}}.tog-btn.corrupt-plan-btn.pulse,.buy-btn.tut-pulse,.upg-btn.tut-pulse,.tog-btn.tut-pulse,.secondary-btn.tut-pulse,.mtab.tut-pulse{animation:corrupt-plan-pulse 1.2s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.tog-btn.corrupt-plan-btn.pulse,.buy-btn.tut-pulse,.upg-btn.tut-pulse,.tog-btn.tut-pulse,.secondary-btn.tut-pulse,.mtab.tut-pulse,#menu-open-btn.tut-pulse{animation:none;box-shadow:0 0 8px 2px #f0c06073}}.corrupt-row .tog-btn:disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.6)}#corruption-plan-panel{position:fixed;left:8px;bottom:calc(var(--bottom-h) + 8px);width:240px;z-index:6;pointer-events:all;text-align:left;background:var(--panel-bg);border-radius:4px;padding:10px;box-shadow:var(--hud-shadow)}#corruption-plan-panel .cpp-title{font-size:13px;letter-spacing:1px;text-transform:uppercase;color:#c090e0;margin-bottom:6px}#corruption-plan-panel .cpp-count-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:6px 0 0;pointer-events:all}#corruption-plan-panel .cpp-count{font-size:12px;color:#9a8060;margin:0;pointer-events:all}#corruption-plan-panel .cpp-done-btn{flex:0 0 auto;margin:0;padding:5px 12px;font-size:13px;pointer-events:all;display:inline-block;background:#64b43c73;color:#e0f0c0;box-shadow:var(--btn-quiet-edge),var(--btn-on-glow) #7aa0504d}#corruption-plan-panel .cpp-done-btn:hover{background:#64b43c99}#threat-panel{text-align:center;pointer-events:all;--panel-accent: rgba(200,40,30,.26)}#threat-panel h2{color:#8a4040}#threat-track{position:relative;background:#781e1e47;box-shadow:var(--track-edge);border-radius:3px;height:16px;overflow:hidden}#threat-fill{height:100%;width:0%;background:linear-gradient(to right,#8b0000,#ff2020);border-radius:3px;transition:width .4s}.threat-arrow-row{position:absolute;right:4px;top:50%;transform:translateY(-50%);line-height:1;font-size:11px;letter-spacing:-1px;font-family:Georgia,serif;font-weight:700;pointer-events:none;text-shadow:0 0 3px rgba(0,0,0,.9)}.threat-arrow-row[data-level=Low]{color:#d8c890}.threat-arrow-row[data-level=Medium]{color:#e8a850}.threat-arrow-row[data-level=High]{color:#f07840}.threat-arrow-row[data-level="Very High"]{color:#ff4040}#threat-label{font-size:13px;color:#c06060;margin-top:6px}#wave-track,.wave-track{background:var(--track-bg);box-shadow:var(--track-edge);border-radius:3px;height:8px;overflow:hidden;margin-top:6px}#wave-fill,.wave-fill{height:100%;width:0%;background:linear-gradient(to right,#a06020,#ff6020,#ff2020);border-radius:3px;transition:width .4s linear}#attack-countdown{font-size:15px;color:#ff8040;font-weight:700;letter-spacing:1px;margin-top:4px}#run-timer{font-size:12px;color:#6a5040;margin-top:4px}.auto-resolve-row{display:flex;align-items:center;gap:6px;margin-top:8px}.auto-resolve-label{font-size:11px;color:#c09060;white-space:nowrap;flex:0 0 auto}.auto-resolve-row input[type=range]{flex:1;accent-color:#c06030;cursor:pointer;min-width:0;pointer-events:all}.auto-resolve-row input[type=range]:disabled{cursor:default;opacity:.4}.waylay-row{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:6px;pointer-events:all}.waylay-label{font-size:11px;color:#c09060;white-space:nowrap}.waylay-toggle-btn{pointer-events:all;font-size:11px;padding:2px 10px}.auto-resolve-readout{font-size:12px;color:#f0c060;min-width:40px;text-align:right}#combat-panel{--panel-accent: rgba(200,40,30,.26);background:var(--hud-bg);box-shadow:var(--hud-shadow);border-radius:8px;padding:14px 18px;pointer-events:all}#combat-panel h2{font-size:15px;color:#cc4040;letter-spacing:2px;text-align:center;margin-bottom:10px}.combat-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.combat-head h2{margin-bottom:10px;flex:1;text-align:left}#watch-combat-btn{pointer-events:all;padding:2px 6px;flex:none}#combat-round{text-align:center;font-size:13px;color:#9a7060;margin-bottom:10px}.combat-sides{display:flex;flex-direction:column;gap:10px}.combat-side{width:100%}.combat-side b{display:block;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#8a7060;margin-bottom:4px}.combat-unit{display:flex;align-items:center;gap:5px;font-size:13px;color:#c0a880;margin:3px 0}.combat-unit.dead{color:#5a4040;font-style:italic}.combat-unit span:first-child{min-width:68px}.hp-bar-bg{flex:1;background:#281414cc;border-radius:2px;height:5px}.hp-bar{height:100%;background:#40c040;border-radius:2px;transition:width .4s}.hp-val{font-size:12px;color:#8a7060;min-width:32px;text-align:right}.civilian-alert{font-size:12px;color:#ff8040;margin-top:4px}#combat-next{text-align:center;font-size:12px;color:#7a6050;margin-top:8px}#log{display:flex;flex-direction:column;pointer-events:auto;border-top:1px solid #2a1a0a;padding-top:8px}.log-entry{font-size:13px;color:#9a8070;line-height:1.5;white-space:pre-line;animation:fadeIn .3s ease;border-top:1px solid #1a1010;padding-top:4px;margin-top:4px}.log-entry:first-child{border-top:none;padding-top:0;margin-top:0}.log-entry.danger{color:#c06050}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1}}.buy-btn,.upg-btn,.tog-btn,.primary-btn,.secondary-btn{pointer-events:all;cursor:pointer;font-family:Georgia,serif;transition:background .15s,box-shadow .15s}.buy-btn{background:var(--btn-buy-bg);box-shadow:var(--btn-quiet-edge);color:var(--btn-buy-fg);padding:3px 8px;border-radius:3px;font-size:12px}.buy-btn:hover:not(:disabled){background:var(--btn-buy-bg-hover);box-shadow:var(--btn-quiet-edge-hover)}.buy-btn.warn{background:#c85a2838;color:#e08040}.buy-btn.warn:hover:not(:disabled){background:#c85a285c}.buy-btn.danger{background:var(--btn-danger-bg);color:var(--btn-danger-fg)}.buy-btn.danger:hover:not(:disabled){background:var(--btn-danger-bg-hover)}.buy-btn.secondary,.upg-btn.secondary{background:var(--btn-secondary-bg);color:#c090e0}.buy-btn.secondary:hover:not(:disabled),.upg-btn.secondary:hover:not(:disabled){background:var(--btn-secondary-bg-hover)}.upg-btn.warren{background:var(--btn-warren-bg);color:#e0b080}.upg-btn.warren:hover:not(:disabled){background:var(--btn-warren-bg-hover)}.upg-btn.scout{background:var(--btn-scout-bg);color:#6fb0c0}.upg-btn.scout:hover:not(:disabled){background:var(--btn-scout-bg-hover)}.upg-btn{background:var(--btn-upg-bg);box-shadow:var(--btn-quiet-edge);color:var(--btn-upg-fg);padding:3px 8px;border-radius:3px;font-size:12px}.upg-btn:hover:not(:disabled){background:var(--btn-upg-bg-hover);box-shadow:var(--btn-quiet-edge-hover)}.tog-btn{background:var(--btn-tog-bg);box-shadow:var(--btn-quiet-edge);color:var(--btn-tog-fg);padding:3px 8px;border-radius:3px;font-size:12px}.tog-btn:hover:not(:disabled){background:var(--btn-tog-bg-hover);box-shadow:var(--btn-quiet-edge-hover)}.buy-btn:disabled,.upg-btn:disabled,.tog-btn:disabled{opacity:.35;cursor:default}.primary-btn{background:var(--btn-primary-bg);box-shadow:var(--btn-primary-edge);color:var(--btn-primary-fg);padding:10px 32px;border-radius:5px;font-size:18px;letter-spacing:1px}.primary-btn:hover{background:var(--btn-primary-bg-hover);box-shadow:var(--btn-primary-edge-hover)}.secondary-btn{background:var(--btn-secondary-bg);box-shadow:var(--btn-secondary-edge);color:var(--btn-secondary-fg);padding:8px 24px;border-radius:5px;font-size:16px}.secondary-btn:hover{background:var(--btn-secondary-bg-hover);box-shadow:var(--btn-secondary-edge-hover)}.secondary-btn{position:relative}.secondary-btn.has-unread:after{content:"";position:absolute;top:-4px;right:-4px;width:8px;height:8px;border-radius:50%;background:#f0c060;box-shadow:0 0 6px 2px #f0c060b3}#title{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:56;text-align:center;pointer-events:all;max-height:calc(100vh - 40px);overflow-y:auto;padding:26px 34px;border-radius:10px;background:var(--panel-bg);box-shadow:var(--panel-shadow);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}#title h1{font-size:44px;color:#c08040;text-shadow:0 0 30px rgba(200,120,40,.5);letter-spacing:4px}#title .subtitle{color:#8a7060;font-size:16px;margin-top:8px}#meta-summary{color:#6a5a40;font-size:14px;margin-top:12px;border-top:1px solid #3a2a1a;padding-top:10px}#title.hidden{display:none}#menu-open-btn{position:fixed;z-index:57;top:calc(env(safe-area-inset-top,0px) + 12px);right:14px;pointer-events:all;cursor:pointer;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:var(--btn-float-bg);box-shadow:var(--btn-float-edge);border-radius:6px;transition:background .15s}#menu-open-btn:hover{background:var(--btn-float-bg-hover)}#menu-open-btn.hidden{display:none}.menu-dashes{display:flex;flex-direction:column;gap:4px}.menu-dashes span{display:block;width:20px;height:2px;background:#c8a860;border-radius:1px}#menu-open-btn.tut-pulse{animation:corrupt-plan-pulse 1.2s ease-in-out infinite}body.run-active #menu-open-btn{top:4px;right:auto;left:calc(50% - 152px);width:44px;height:36px}#resume-btn,#save-quit-btn,#abandon-btn{display:none}body.run-active #resume-btn,body.run-active #save-quit-btn,body.run-active #abandon-btn{display:block}body.run-active #start-btn,body.run-active #continue-btn,body.run-active #continue-error{display:none!important}#save-quit-btn:disabled{opacity:.5;cursor:default}#abandon-btn{background:var(--btn-danger-bg);color:var(--btn-danger-fg);box-shadow:var(--btn-danger-edge)}#abandon-btn:hover{background:var(--btn-danger-bg-hover);box-shadow:var(--btn-danger-edge-hover)}#abandon-btn[data-armed],#abandon-btn[data-armed]:hover{background:var(--btn-armed-bg);color:var(--btn-armed-fg);box-shadow:var(--btn-armed-edge)}#continue-error{color:#d07040;font-size:14px;text-align:center}#continue-report-btn{display:inline-block;padding:2px 6px;pointer-events:all;cursor:pointer;background:none;border:none;color:#d0a050;font:inherit;text-decoration:underline}.btn-group{margin-top:24px;display:flex;flex-direction:column;align-items:center;gap:10px}.btn-group>:is(button,a){width:min(340px,100%);font-family:Georgia,serif;font-size:16px;letter-spacing:1px;line-height:1.2;padding:10px 24px}.htp-wiki-link{margin-top:14px;color:#8a7060;font-size:13px}.htp-wiki-link a{color:#d0a050;pointer-events:all}.btn-group>a{display:block;box-sizing:border-box;text-align:center;text-decoration:none;pointer-events:all}.copyright-line{margin-top:4px;font-size:12px;letter-spacing:1px;color:#6a5a4a;text-align:center}.legal-links{margin-top:24px;font-size:12px;letter-spacing:1px;color:#6a5a4a;text-align:center;pointer-events:all}.legal-links .legal-link{display:inline-block;padding:4px 6px;pointer-events:all;color:#a89070;text-decoration:underline;font:inherit;letter-spacing:inherit;background:none;border:0;cursor:pointer}.legal-links .legal-link:hover,.legal-links .legal-link:focus-visible{color:#e0c880}body.run-active .legal-links .legal-stats{display:none}telemetry-consent{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#000000bf;display:none;align-items:center;justify-content:center;pointer-events:all}telemetry-consent.open{display:flex}telemetry-consent .tc-panel{background:#0a0814fa;border:1px solid #4a3a2a;border-radius:8px;width:520px;max-width:calc(100vw - 32px);max-height:90vh;overflow-y:auto;padding:18px 22px;box-shadow:0 8px 32px #000000bf;color:#d0c0a0;font-size:15px;line-height:1.5;pointer-events:all}telemetry-consent .tc-panel:focus{outline:none}telemetry-consent .tc-title{margin:0 0 8px;font-size:18px;letter-spacing:1px;color:#d0b080;text-transform:uppercase}telemetry-consent ul{margin:6px 0;padding-left:20px}telemetry-consent a{color:#e0c880;pointer-events:all}telemetry-consent .tc-current{color:#c0a880;font-style:italic}telemetry-consent .tc-device{margin:8px 0}telemetry-consent .tc-id{display:inline-block;padding:2px 6px;background:#1a1424;color:#e8d5b7;word-break:break-all;-webkit-user-select:all;user-select:all}telemetry-consent .tc-actions{display:flex;gap:12px;margin-top:12px}telemetry-consent .tc-option{flex:1 1 0;display:flex;flex-direction:column;min-width:0}telemetry-consent .tc-choice{width:100%;margin:0;pointer-events:all}telemetry-consent .tc-reload-note{margin:6px 0 0;font-size:13px;color:#c0a880}telemetry-consent .tc-choice[aria-pressed=true]{border-color:#e0c880;color:#e0c880}telemetry-consent .tc-close,telemetry-consent .tc-copy{margin-top:10px;pointer-events:all}telemetry-consent .tc-status{min-height:1em;font-size:13px;color:#c0a880;margin-top:6px}#gameover{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;--panel-accent: rgba(200,40,30,.32);background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:32px 48px;z-index:100}#gameover h2{font-size:32px;color:#cc3030;letter-spacing:3px;margin-bottom:16px}#run-stats{font-size:16px;color:#9a8070;line-height:2.2;margin-bottom:12px}#win-modal{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:all;--panel-accent: rgba(230,180,50,.3);background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:10px;padding:24px 36px;max-width:720px;width:90vw;z-index:200}#win-modal h2{font-size:32px;color:#f0c840;letter-spacing:3px;margin-bottom:16px}.threat-btns{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto;gap:6px;margin-top:8px}.threat-btns>.tog-btn{width:100%;margin:0}.threat-btns>#raids-btn{grid-column:1;grid-row:1}.threat-btns>#research-btn{grid-column:2;grid-row:1}.threat-btns>#raids-panel-btn{grid-column:1;grid-row:2}.threat-btns>#settlements-panel-btn{grid-column:2;grid-row:2}.threat-btns>#stats-toggle-btn{grid-column:1;grid-row:3}.threat-btns>#log-toggle-btn{grid-column:2;grid-row:3}#raid-map-container{position:fixed;top:0;right:0;bottom:0;left:0;display:none;z-index:5;pointer-events:all;touch-action:none}#raid-map-container canvas{display:block;width:100%!important;height:100%!important}#raids-panel{display:none;pointer-events:all;flex:1 1 0;min-height:0;overflow-y:auto}.raids-row{display:flex;justify-content:space-between;align-items:center;margin:4px 0;font-size:14px}.raids-label{color:#9a8060}.raids-val{color:#f0c060;font-weight:700}.raid-force-row{display:flex;align-items:center;gap:6px;font-size:13px;color:#b09070;margin:3px 0;min-width:0}.raid-force-row input[type=range]{flex:1;min-width:0;accent-color:#c06030}.raid-force-row .force-val{color:#f0c060;min-width:20px;text-align:right;flex:0 0 auto}.raid-force-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#scouting-dialog{position:fixed;inset:var(--top-h) 0 var(--bottom-h) 0;z-index:20;background:transparent;display:none;align-items:center;justify-content:center;pointer-events:all}#scouting-dialog[open]{display:flex}#scouting-dialog-inner{--dlg-bg: #080604;--dlg-pad-x: 20px;--dlg-pad-y: 16px;--panel-accent: rgba(47,111,128,.34);background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:16px 20px;width:520px;max-width:94vw;max-height:100%;display:flex;flex-direction:column;gap:6px;overflow-y:auto}#scouting-dialog .research-dialog-title,#scouting-dialog .research-dialog-queuecap{color:#6fb0c0}.scouting-section-label{font-size:13px;color:#8a7060;letter-spacing:1px;text-transform:uppercase;border-top:1px solid #1a2a3a;padding-top:6px;margin-top:6px}.route-toggle{display:inline-flex;align-items:center;gap:5px;pointer-events:all;cursor:pointer;font:inherit;font-size:12px;letter-spacing:1px;text-transform:uppercase;padding:3px 9px;border-radius:999px;background:#78789624;box-shadow:var(--btn-quiet-edge);color:#6a6a7a;transition:background .15s,box-shadow .15s,color .15s}.route-toggle:hover{background:#7878963d;color:#9a9ab0}.route-toggle.on{background:#46aa6e38;color:#90d0a8;box-shadow:var(--btn-quiet-edge),var(--btn-on-glow) #40c0802e}.route-toggle-dot{width:7px;height:7px;border-radius:50%;background:#4a4a58;box-shadow:none}.route-toggle.on .route-toggle-dot{background:#70e0a0;box-shadow:0 0 6px #40c080}#scouting-dialog .research-dialog-header .route-toggle{margin-right:auto}.scouting-section-count{float:right;text-transform:none;letter-spacing:0;font-size:12px;color:#6a5a48}.scouting-empty{font-size:13px;color:#7a6a50}.scouting-trip-row{padding:4px 0}.scouting-history-row{padding:2px 0}#lineage-dialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:none;align-items:center;justify-content:center;background:#04040ad1;pointer-events:all;--lineage-zoom-min: .4}#lineage-dialog.open{display:flex}body.menu-open #lineage-dialog,body.menu-open #how-to-play-modal,body.menu-open #patch-notes-modal,body.menu-open #feedback-dialog,body.menu-open #profile-modal{z-index:57}body.menu-open #merge-prompt,body.menu-open #sync-conflict{z-index:58}body.menu-open #sync-confirm{z-index:59}#lineage-dialog-inner{width:min(1100px,94vw);height:min(760px,88vh);--panel-accent: rgba(122,64,144,.34);background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:16px 20px;display:flex;flex-direction:column;gap:10px;overflow:hidden}#battle-orders-dialog,#raid-orders-dialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:none;align-items:center;justify-content:center;background:#04040ad1;pointer-events:all}#battle-orders-dialog.open,#raid-orders-dialog.open{display:flex}#battle-orders-inner,#raid-orders-inner{--dlg-pad-x: 20px;--dlg-pad-y: 16px;--dlg-bg: #080604;--panel-accent: rgba(122,64,144,.34);width:min(980px,94vw);max-height:90vh;overflow-y:auto;background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:var(--dlg-pad-y) var(--dlg-pad-x);display:flex;flex-direction:column;gap:12px;font-size:13px;color:#c0a880}.bo-head{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}.bo-titles{margin-right:auto;min-width:0}.bo-title{font-size:15px;letter-spacing:2px;text-transform:uppercase;color:#d090e0}.bo-sub{font-size:12px;color:#8a7a68;margin-top:2px}.bo-notice{padding:6px 10px;border-radius:4px;background:var(--notice-bg);box-shadow:var(--panel-top-edge);color:#e0b080}.bo-section{display:flex;flex-direction:column;gap:8px}.bo-section-title{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#a880c0;border-bottom:1px solid #2a2030;padding-bottom:3px}.bo-lead,.bo-example,.bo-foot{margin:0;font-size:12px;color:#8a7a68;line-height:1.45}.bo-example{color:#a89870;font-style:italic}.bo-subsection{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.bo-name{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#c0a0ff}.bo-row{width:100%;border-radius:4px;background:#3c285a38;box-shadow:var(--panel-top-edge);box-sizing:border-box}.bo-row-head{display:none}.bo-row-body{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:6px 8px}.bo-rule-main,.bo-clause,.bo-clauses,.bo-when,.bo-field,.bo-seg,.bo-rule-tools,.bo-copy{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.bo-clauses{gap:4px}.bo-clause{padding:2px 4px;border-radius:3px;background:#140c22b3;box-shadow:var(--panel-top-edge)}.bo-and{font-size:11px;color:#7a6a58;text-transform:uppercase;letter-spacing:1px}.bo-lock{font-size:11px;color:#7a6a58;font-style:italic}.bo-note{font-size:12px;color:#8a7a68}.bo-locked{color:#b08050}.bo-warn{color:#d08060}.bo-sel,.bo-num{font-family:inherit;font-size:12px;color:#d0c0a0;pointer-events:all;background:var(--input-bg);box-shadow:var(--input-edge);border:0;border-radius:3px;padding:2px 4px}.bo-num{width:64px}.bo-unit{font-size:12px;color:#8a7a68}.bo-btn,.bo-seg-btn,.bo-x,.bo-add{pointer-events:all;cursor:pointer;display:inline-block;padding:2px 8px;font-size:12px}.bo-x{padding:2px 6px}.bo-seg-btn.on{background:#6e46aa99!important;color:#e0c0ff!important;box-shadow:var(--btn-secondary-edge),var(--btn-on-glow) #8050b059!important}.bo-danger{background:var(--btn-danger-bg)!important;color:#e08080!important}#raid-orders-inner{width:min(620px,94vw)}.ro-head{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}.ro-titles{margin-right:auto;min-width:0}.ro-title{font-size:15px;letter-spacing:2px;text-transform:uppercase;color:#d090e0}.ro-notice{padding:6px 10px;border-radius:4px;background:var(--notice-bg);box-shadow:var(--panel-top-edge);color:#e0b080}.ro-section{display:flex;flex-direction:column;gap:8px}.ro-section-title{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#a880c0;border-bottom:1px solid #2a2030;padding-bottom:3px;cursor:pointer;pointer-events:all;min-height:24px}.ro-lead,.ro-foot{margin:6px 0;font-size:12px;color:#8a7a68;line-height:1.45}.ro-row{display:flex;align-items:center;gap:10px;justify-content:space-between;flex-wrap:wrap;padding:3px 0}.ro-label{color:#d0c0a0}.ro-help{color:#8a7a68;cursor:help;display:inline-block;padding:0 3px;pointer-events:all}.ro-slider{display:inline-flex;align-items:center;gap:8px}.ro-range{pointer-events:all;width:160px;min-height:32px}.ro-val{min-width:48px;text-align:right;color:#f0c060}.ro-seg{display:inline-flex;gap:4px}.ro-sel{font-family:inherit;font-size:12px;color:#d0c0a0;pointer-events:all;background:var(--input-bg);box-shadow:var(--input-edge);border:0;border-radius:3px;padding:2px 4px;min-height:28px}.ro-btn,.ro-toggle,.ro-seg-btn{pointer-events:all;cursor:pointer;display:inline-block;padding:2px 8px;font-size:12px}.ro-toggle.on,.ro-seg-btn.on{background:#6e46aa99!important;color:#e0c0ff!important;box-shadow:var(--btn-secondary-edge),var(--btn-on-glow) #8050b059!important}.ro-danger{background:var(--btn-danger-bg)!important;color:#e08080!important}.ro-copy{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;padding:4px 6px;border-radius:4px;background:#3c285a38;box-shadow:var(--panel-top-edge);max-width:100%}.ro-decision{font-size:12px;color:#c0a880;font-style:italic;padding:4px 0}.bo-copy{padding:4px 6px;border-radius:4px;background:#3c285a38;box-shadow:var(--panel-top-edge);max-width:100%}@media(max-width:899px),(max-height:500px){#battle-orders-dialog,#raid-orders-dialog{align-items:flex-start;padding-top:calc(var(--top-h) + 6px);box-sizing:border-box}#battle-orders-inner,#raid-orders-inner{width:96vw;max-height:calc(100vh - var(--top-h) - var(--bottom-h) - 12px);--dlg-pad-x: 12px;--dlg-pad-y: 12px}.bo-row-head{display:flex;align-items:center;gap:6px;width:100%;text-align:left;pointer-events:all;cursor:pointer;background:none;border:0;color:#d0c0a0;font-family:inherit;min-height:44px;padding:4px 8px}.bo-row:not(.open) .bo-row-body{display:none}.bo-tactic .bo-name{display:none}.bo-btn,.bo-seg-btn,.bo-x,.bo-add,.bo-sel,.bo-num{min-height:44px}.bo-x{min-width:44px}.bo-num{width:76px}}.lin-head{display:flex;align-items:center;gap:14px;flex:0 0 auto}.lin-title{font-size:15px;letter-spacing:2px;text-transform:uppercase;color:#d090e0}.lin-status{font-size:13px;color:#a880c0;margin-right:auto}.lin-balances{display:flex;gap:4px 18px;flex:0 0 auto;flex-wrap:wrap;font-size:13px}.lin-graph-viewport{position:relative;flex:1 1 0;min-height:0;overflow:hidden;background:#04020c8c;box-shadow:inset 0 2px 8px #0009;border-radius:4px;pointer-events:all;cursor:grab;touch-action:none}.lin-graph-viewport.panning{cursor:grabbing}.lin-graph-canvas{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);will-change:transform}.lin-graph{position:absolute;top:0;left:0;pointer-events:none}.lin-graph path{fill:none;stroke:#3a2a50;stroke-width:2}.lin-graph path.completed{stroke:var(--lin-accent, #c060e0)}.lin-graph path.locked{opacity:.55}.lin-pan-hint{position:absolute;bottom:6px;right:10px;font-size:12px;color:#4a3a60;letter-spacing:1px;pointer-events:none;-webkit-user-select:none;user-select:none}.lin-node{--node-glow: 0 0 0 0 transparent;position:absolute;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px 8px 6px 12px;min-height:74px;background:#150f26;box-shadow:inset 5px 0 0 var(--lin-accent, transparent),inset 0 1px #ffffff0d,var(--node-glow);border-radius:5px;font-size:12px;text-align:center;color:#9a80b0;pointer-events:all;cursor:default;transition:transform .1s,box-shadow .15s}.lin-node[data-action=lineage-unlock]{cursor:pointer}.lin-node[data-action=lineage-unlock]:hover{transform:scale(1.04);--node-glow: 0 0 16px 2px rgba(255,214,122,.4)}.lin-node-label{font-weight:700;font-size:13px;line-height:1.15}.lin-node-cost{font-size:12px;color:#f0c060;letter-spacing:.5px}.lin-node-root{color:#d0a040}.lin-node.root{background:#241a08;color:#f0d090;--node-glow: 0 0 14px 1px rgba(208,160,64,.3)}.lin-node.unlocked{background:#2a1448;color:#f0d8ff;--node-glow: 0 0 12px 1px rgba(192,96,224,.4)}.lin-node.available{background:#342608;color:#f0d8a0;--node-glow: 0 0 10px 1px rgba(240,192,96,.28)}.lin-node.affordable-blocked{background:#171220;color:#7c6a58}.lin-node.affordable-blocked .lin-node-cost{color:#8a7040}.lin-node.locked{background:#100c1a;color:#6a5c74}.lin-node.locked .lin-node-cost{color:#6a5a40}.lin-dev{pointer-events:all;cursor:pointer;font-family:inherit;font-size:12px;padding:3px 8px;border-radius:3px;background:var(--btn-tog-bg);box-shadow:var(--btn-quiet-edge);color:var(--btn-tog-fg)}.lin-dev:hover{background:var(--btn-tog-bg-hover)}.lineage-tooltip{position:fixed;z-index:30;--panel-accent: rgba(230,180,50,.26);background:var(--modal-bg);border-radius:4px;padding:6px 10px;max-width:280px;font-size:13px;color:#ffd67a;pointer-events:none;box-shadow:var(--tip-shadow)}.lineage-tooltip-label{font-weight:700;color:#ffd67a;margin-bottom:3px}.lineage-tooltip-desc{color:#a090b0;font-size:12px;line-height:1.4}.lineage-tooltip-cost{color:#f0c060;font-size:12px;margin-top:3px}#research-dialog{position:fixed;inset:var(--top-h) var(--right-w) var(--bottom-h) var(--left-w);z-index:20;background:transparent;display:none;align-items:stretch;justify-content:center;pointer-events:all;--research-zoom-default: 1;--research-zoom-min: .35}#research-dialog.open{display:flex}#research-dialog-inner{--panel-accent: rgba(90,64,128,.34);background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:16px 20px;width:100%;height:100%;display:flex;flex-direction:column;gap:10px;overflow:hidden}.research-dialog-header{display:flex;justify-content:space-between;align-items:center;flex:0 0 auto}.research-dialog-title{font-size:15px;letter-spacing:2px;text-transform:uppercase;color:#9060c0}.research-dialog-header-right{display:flex;gap:10px;align-items:center}.research-dialog-queuecap{font-size:13px;color:#9060c0}.research-queue-container{flex:0 0 auto;background:#46328c2e;box-shadow:var(--panel-top-edge),inset 0 0 24px #00000040;border-radius:4px;padding:8px;pointer-events:all;-webkit-user-select:none;user-select:none}.research-queue-empty{color:#7a6a80;font-size:13px;font-style:italic;padding:8px 4px}.research-queue-strip{display:flex;flex-direction:row;gap:10px;overflow-x:auto;overflow-y:hidden;overscroll-behavior:contain;pointer-events:all;touch-action:pan-x}.research-queue-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;width:96px;flex:0 0 auto;padding:6px 4px;background:#2a2412;box-shadow:inset 0 1px #ffffff0d;border-radius:5px;pointer-events:all;cursor:grab;transition:box-shadow .15s}.research-queue-card:hover{box-shadow:inset 0 1px #ffffff0d,0 0 12px 1px #a080ff59}.research-queue-card.head{background:#3a2c06;box-shadow:inset 0 1px #ffffff0f,0 0 12px 1px #ffd23c59}.research-queue-card.head:hover{box-shadow:inset 0 1px #ffffff0f,0 0 12px 1px #a080ff59}.research-queue-resume-hint{color:#8a7a48;font-size:10px}.research-queue-card.dragging{opacity:.55;box-shadow:0 4px 12px #0009,0 0 12px 1px #a080ff59;transform:translateY(-3px);cursor:grabbing}.research-queue-card.drop-before{box-shadow:inset 3px 0 #ffd23c}.research-queue-card.drop-after{box-shadow:inset -3px 0 #ffd23c}.research-queue-icon-wrap{position:relative;width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:#cabd8c}.research-queue-card.head .research-queue-icon-wrap{color:#ffe98f}.research-queue-icon-wrap svg.ring{position:absolute;top:0;left:0}.research-queue-icon-wrap .research-queue-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:22px;height:22px;display:flex;align-items:center;justify-content:center}.research-queue-icon svg{width:22px;height:22px}.research-queue-label{color:#cabd8c;font-size:12px;text-align:center;max-width:88px;line-height:1.15;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.research-queue-card.head .research-queue-label{color:#ffe98f}.research-queue-pct{color:#ffd23c;font-size:12px}.research-queue-remove{position:absolute;top:2px;right:2px;width:20px;height:20px;padding:0;display:flex;align-items:center;justify-content:center;pointer-events:all;cursor:pointer;font-family:inherit;background:#aa321e66;box-shadow:var(--btn-danger-edge);color:#f0a0a0;border-radius:3px;font-size:12px;line-height:1}.research-queue-remove:hover{background:#aa321e99}.mini-switch{display:inline-flex;align-items:center;gap:4px;pointer-events:all;cursor:pointer;font:inherit;font-size:11px;letter-spacing:.5px;padding:2px 7px;border-radius:999px;background:#78789624;box-shadow:var(--btn-quiet-edge);color:#6a6a7a}.mini-switch:hover{background:#7878963d;color:#9a9ab0}.mini-switch.on{background:#46aa6e38;color:#90d0a8}.mini-switch.on .route-toggle-dot{background:#70e0a0;box-shadow:0 0 6px #40c080}research-queue-strip{display:block;pointer-events:all}#warren-dialog{position:fixed;inset:var(--top-h) var(--right-w) var(--bottom-h) var(--left-w);z-index:20;background:transparent;display:none;align-items:stretch;justify-content:center;pointer-events:all}#warren-dialog.open{display:flex}#warren-dialog-inner{--panel-accent: rgba(138,90,48,.34);background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:16px 20px;width:100%;height:100%;display:flex;flex-direction:column;gap:10px;overflow:hidden}#warren-dialog .research-dialog-title,#warren-dialog .research-dialog-queuecap{color:#d09050}#warren-dialog .research-queue-container{background:#8c5a3029}.warren-now{margin:8px 0}.warren-now-label{font-size:14px;color:#e0b080}.warren-now-node{margin-left:8px;font-size:12px;opacity:.7}.warren-now-bar{height:8px;margin-top:4px;border-radius:3px;overflow:hidden;background:var(--track-bg);box-shadow:var(--track-edge)}.warren-now-fill{height:100%;background:#ffd23c}.warren-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;overflow-y:auto}.warren-group{display:flex;flex-direction:column;gap:6px;min-width:0}.warren-group-title{font-size:13px;letter-spacing:1px;color:#d09050}.warren-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:2px 8px;align-items:center;padding:6px 8px;border-radius:3px;background:#26190c;box-shadow:inset 0 1px #ffffff0d;color:#e0b080;font-size:12px}.warren-row.upgrading{background:#3a2c06;color:#ffe98f;box-shadow:inset 0 1px #ffffff0f,0 0 12px 1px #ffd23c4d}.warren-row.greyed{background:#15100a;color:#807060}.warren-row-icon,.warren-row-icon svg{width:22px;height:22px}.warren-row-label{font-size:13px}.warren-row-price,.warren-row-banked{grid-column:2 / 4;opacity:.85}.warren-row-banked:empty{display:none}.warren-row-status{grid-column:1 / 3;text-transform:uppercase;letter-spacing:1px;font-size:11px}.warren-row-priority{display:flex;gap:2px}.warren-priority-btn{min-width:30px;min-height:26px;padding:0 4px;border:0;border-radius:3px;background:var(--btn-quiet-bg);box-shadow:var(--btn-quiet-edge);color:#c0a080;cursor:pointer;pointer-events:all;transition:background .15s,box-shadow .15s}.warren-priority-btn:hover{background:var(--btn-quiet-bg-hover)}.warren-priority-btn.selected{background:#ffd23c38;color:#ffe98f;box-shadow:var(--btn-primary-edge),var(--btn-on-glow) #ffd23c38}@media(max-width:899px),(max-height:500px){.warren-groups{grid-template-columns:minmax(0,1fr)}}.research-graph-viewport{position:relative;flex:1 1 0;min-height:0;overflow:hidden;background:#04020c8c;box-shadow:inset 0 2px 8px #0009;border-radius:4px;pointer-events:all;cursor:grab;touch-action:none}.research-graph-viewport.panning{cursor:grabbing}.research-graph-canvas{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);will-change:transform}.research-graph{position:absolute;top:0;left:0;pointer-events:none}.research-graph path{fill:none;stroke:#3a2a5a;stroke-width:2}.research-graph path.completed{stroke:#40a060}.research-graph path.locked{opacity:.5}.research-graph path.hub,.research-graph path.hub-spine{stroke:#5c4a8a;stroke-dasharray:4 4;opacity:.65}.research-hub{fill:#8a70e0;stroke:#c0a0ff;stroke-width:2}.research-pan-hint{position:absolute;bottom:6px;right:10px;font-size:12px;color:#4a3a60;letter-spacing:1px;pointer-events:none;-webkit-user-select:none;user-select:none}.research-node{--node-glow: 0 0 0 0 transparent;position:absolute;box-sizing:border-box;width:104px;height:84px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px 8px;background:#150f26;box-shadow:inset 0 1px #ffffff0d,var(--node-glow);border-radius:5px;font-size:13px;color:#c0a0e0;pointer-events:all;cursor:default;text-align:center;transition:transform .1s,box-shadow .15s}.research-node[data-action^=research-queue-]{cursor:pointer}.research-node[data-action^=research-queue-]:hover{transform:scale(1.04);--node-glow: 0 0 16px 2px rgba(160,128,255,.45)}.research-node.completed{background:#12221a;color:#80c080;--node-glow: 0 0 10px 1px rgba(64,160,96,.22)}.research-node.available{background:#221648;--node-glow: 0 0 10px 1px rgba(128,96,224,.3)}.research-node.queue-full{background:#14101f;color:#8a7ca4}.research-node.active{background:#3a2c06;color:#ffe98f;--node-glow: 0 0 14px 2px rgba(255,210,60,.45)}.research-node.queued{background:#2a2412;color:#cabd8c;--node-glow: 0 0 10px 1px rgba(202,189,140,.18)}.research-node.locked{background:#100c1a;color:#6a5c74}.research-node.locked .research-node-icon{opacity:.55}.research-node-icon{flex:0 0 auto;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.research-node-icon svg{width:32px;height:32px}.research-node-label{font-weight:700;font-size:13px;line-height:1.15;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;text-align:center}.research-tooltip{position:fixed;z-index:30;--panel-accent: rgba(106,74,144,.34);background:var(--modal-bg);border-radius:4px;padding:6px 10px;max-width:280px;font-size:13px;color:#c0a0e0;pointer-events:none;box-shadow:var(--tip-shadow)}.research-tooltip-label{font-weight:700;color:#d8b8ff;margin-bottom:3px}.research-tooltip-desc{color:#a090b0;font-size:12px;line-height:1.4}.research-node.selected,.lin-node.selected{outline:4px solid #e8e0ff;outline-offset:3px;z-index:1}.node-detail{flex:0 1 auto;min-height:0;max-height:40%;display:flex;flex-direction:column;gap:6px;background:#6a4a9029;box-shadow:var(--panel-top-edge);border-radius:4px;padding:8px 10px;color:#c0a0e0;font-size:13px;pointer-events:all}.node-detail-head{flex:0 0 auto;display:flex;align-items:center;gap:10px}.node-detail-icon{flex:0 0 auto;width:32px;height:32px}.node-detail-icon svg{width:32px;height:32px}.node-detail-title{flex:1 1 auto;min-width:0}.node-detail-label{font-weight:700;color:#d8b8ff}.node-detail-status{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#8a7ca4}.node-detail.available .node-detail-status{color:#a080ff}.node-detail.active .node-detail-status{color:#ffd23c}.node-detail.queued .node-detail-status{color:#cabd8c}.node-detail.completed .node-detail-status{color:#80c080}.node-detail.unlocked .node-detail-status{color:#c060e0}.node-detail.root .node-detail-status{color:#d0a040}.node-detail-close{flex:0 0 auto}.node-detail-desc{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;color:#a090b0;font-size:13px;line-height:1.4}.node-detail-foot{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:10px}.node-detail-meta{margin-right:auto;font-size:12px;color:#8a7ca4}.node-detail-primary{font-size:13px}.node-detail-primary:disabled{opacity:.6;cursor:default}.res-rate{font-size:12px;color:#70a060;min-width:58px;text-align:right;white-space:nowrap}.res-rate.neg{color:#b06050}#slayer-activity{pointer-events:all;display:flex;flex-direction:column}#slayer-activity:empty{display:none}.ws-row{display:flex;justify-content:space-between;font-size:13px;margin:3px 0}.ws-label{color:#9a8060}.ws-val{color:#e0c080;font-weight:700}.rs-entry{border-top:1px solid #1a2a3a;padding-top:4px;margin-top:4px}.rs-entry:first-child{border-top:none;padding-top:0;margin-top:0}.rs-title-row{margin-bottom:2px}.rs-title{font-size:13px;font-weight:700;flex:1;min-width:0}.rs-title.victory{color:#70a080}.rs-title.defeat{color:#b05050}.rs-title.production{color:#c0a060}#raid-history-dialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:transparent;display:none;align-items:center;justify-content:center;pointer-events:all}#raid-history-dialog.open{display:flex}#flow-dialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:transparent;display:none;align-items:center;justify-content:center;pointer-events:all}#flow-dialog.open{display:flex}#flow-dialog-inner{--dlg-bg: #080604;--dlg-pad-x: 22px;--dlg-pad-y: 18px;--panel-accent: rgba(74,106,58,.3);background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:18px 22px;width:1080px;max-width:96vw;max-height:92vh;overflow:auto}.flow-dialog-header{display:flex;align-items:baseline;gap:14px;margin-bottom:12px}.flow-dialog-title{font-size:16px;font-weight:700;color:#c0a060;letter-spacing:2px;text-transform:uppercase}.flow-dialog-sub{font-size:13px;color:#8a7a5a;flex:1}.flow-dialog-svg{background:#00000059;box-shadow:inset 0 2px 8px #00000080;border-radius:4px;display:block}.flow-dialog-footer{margin-top:8px;font-size:12px;color:#6a6050;text-align:right}.flow-node:hover rect{stroke:#f0d060;stroke-width:2}#priority-dialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;background:transparent;display:none;align-items:center;justify-content:center;pointer-events:all}#priority-dialog.open{display:flex}#priority-dialog-inner{--dlg-bg: #080604;--dlg-pad-x: 22px;--dlg-pad-y: 18px;--panel-accent: rgba(74,106,58,.3);background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:18px 22px;width:520px;max-width:96vw;max-height:88vh;overflow:auto}.priority-dialog-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.priority-dialog-title{font-size:16px;font-weight:700;color:#c0a060;letter-spacing:2px;text-transform:uppercase;flex:1}.priority-dialog-sub{font-size:12px;color:#8a7a5a}.priority-dialog-badge{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#d09040;border-radius:3px;padding:2px 6px;background:#d0904029}.priority-dialog-body{display:flex;flex-direction:column;gap:14px}.priority-dialog-flag{background:#3c1e0a66;border-left:3px solid #c08040;padding:8px 12px;font-size:14px;color:#d0b090;border-radius:3px}.priority-dialog-explain{white-space:pre-wrap;word-wrap:break-word;font-family:Georgia,serif;font-size:14px;color:#a09070;line-height:1.5}.priority-row{border-radius:4px;padding:8px 10px;background:#ffdcaa0d;box-shadow:var(--panel-top-edge)}.priority-row.paused{background:#aa321e24}.priority-row-header{display:flex;justify-content:space-between;font-size:14px;margin-bottom:4px}.priority-row-label{color:#d0b070;font-weight:700}.priority-row-value{color:#f0c060;font-family:monospace}.priority-row input[type=range]{width:100%;margin:4px 0}.priority-row-sub{display:flex;gap:8px;font-size:12px;align-items:baseline}.priority-row-mult{color:#90a070;font-family:monospace;white-space:nowrap}.priority-row-desc{color:#7a6a50;font-style:italic}.priority-reserve{border-top:1px solid #3a2a1a;padding-top:12px;display:flex;flex-direction:column;gap:6px}.priority-reserve-label{font-size:14px;color:#c0a060;display:block}.priority-reserve-hint{color:#7a6a50;font-weight:400;font-style:italic;font-size:13px}#priority-reserve-input,#priority-cap-input{background:var(--input-bg);box-shadow:var(--input-edge);border:0;color:#f0c060;padding:4px 8px;font-family:monospace;font-size:15px;border-radius:3px;width:120px}.priority-cap .priority-reserve-label{color:#70a0c0}#priority-cap-input{color:#90c0e0}.priority-population{border-top:1px solid #3a2a1a;padding-top:12px;display:flex;flex-direction:column;gap:4px}.priority-population .op-row{pointer-events:all}.priority-population input[type=range]{width:100%}.cr-inner{background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:18px 22px;width:calc(100vw - 588px);min-width:620px;max-width:1400px;max-height:92vh;display:flex;flex-direction:column;gap:12px}.cr-header{display:flex;justify-content:space-between;align-items:center}.cr-title{font-size:16px;font-weight:700;color:#c0a060;letter-spacing:1px;text-transform:uppercase}.cr-title-block{display:flex;flex-direction:column;gap:3px;min-width:0}.cr-wave-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:15px;line-height:1.2}.cr-comp-strip{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}.cr-comp{white-space:nowrap}.cr-comp b{font-size:12px;color:#d0a860;margin-left:1px}.cr-comp-vs{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#7a6450}:root{--cr-tint-default: #c0a060;--cr-tint-goblin: #8aa050;--cr-tint-hobgoblin: #c07030;--cr-tint-vampire: #9040c0;--cr-tint-scoblin: #60a0b0;--cr-tint-skeleton: #d8d0c0;--cr-tint-skeletonArcher: #b0c8a0;--cr-tint-spinePiercer: #a0d0d8;--cr-tint-ghoul: #7a9a60;--cr-tint-fungalScourge: #d06090;--cr-tint-scout: #c0b070;--cr-tint-squire: #c8a860;--cr-tint-knight: #d0d8e0;--cr-tint-archer: #90c070;--cr-tint-mage: #7080e0;--cr-tint-wolf: #c08a4a;--cr-tint-bear: #a06838;--cr-tint-jackdaw: #8890a0;--cr-tint-magpie: #d8dce4;--cr-tint-raven: #6878a8;--cr-tint-shrike: #b89060}.cr-arena{display:flex;flex-direction:column;min-height:0;background:#0a0604b3;box-shadow:inset 0 2px 8px #00000080;border-radius:6px;padding:8px;overflow:hidden;position:relative}combat-arena-3d{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.cr3-arena{display:flex;flex-direction:column;gap:6px;flex:1 1 auto;min-height:0}.cr3-hud{display:flex;flex-direction:column;gap:3px;flex:0 0 auto}.cr3-stage{position:relative;flex:1 1 auto;min-height:clamp(240px,36vh,460px);overflow:hidden;background:#0a0604;border-radius:4px}.cr3-canvas-host{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:none;cursor:grab;pointer-events:all}.cr3-canvas-host:active{cursor:grabbing}.cr3-canvas-host:focus-visible{outline:2px solid #c0a060;outline-offset:-2px}.cr3-canvas{display:block;width:100%;height:100%}.cr3-tools{position:absolute;top:6px;right:6px;z-index:3;display:flex;gap:4px;pointer-events:none}.cr3-tool{pointer-events:all;padding:2px 8px!important;font-size:12px;background:#140c06d1}.cr3-flank-badge{position:absolute;left:8px;top:8px;z-index:3;pointer-events:all;margin:0}.cr3-recovering,.cr3-toast{position:absolute;left:50%;transform:translate(-50%);bottom:10px;padding:4px 12px;border-radius:12px;font-size:12px;color:#e0c090;background:#140c06e0;box-shadow:var(--tip-shadow);pointer-events:none}.cr3-recovering{top:10px;bottom:auto}.cr3-tip{position:absolute;transform:translate(-50%,-110%);pointer-events:none;z-index:3;padding:4px 8px;border-radius:4px;font-size:12px;line-height:1.35;white-space:nowrap;color:#d8c8a8;background:#0c0804f0;box-shadow:var(--tip-shadow)}.cr3-tip b{color:#e0b060}.cr3-tip-sticky{pointer-events:none;--panel-accent: rgba(192,160,96,.4);background:#30220cf5;color:#f0dcb0}.cr3-row-hit{position:absolute;padding:0;margin:0;border:0;cursor:crosshair;z-index:2;pointer-events:all;touch-action:none;background:#ff783c29}.cr3-row-hit:hover,.cr3-row-hit:focus-visible{background:#ff6e3261;outline:none}.cr3-row-vacant{cursor:not-allowed;background:#78787814}.cr3-row-vacant:hover{background:#78787814}.cr3-error{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:14px;text-align:center;background:#0e0806f5}.cr3-error-controls{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.cr3-primary{font-size:15px;padding:6px 16px!important}.webgl-error{display:flex;flex-direction:column;gap:4px;max-width:480px}.webgl-error-head{font-size:15px;font-weight:700;color:#e0b060;letter-spacing:1px}.webgl-error-detail{font-size:13px;color:#b09070;line-height:1.45}.cr-side-label{font-size:13px;letter-spacing:1px;text-transform:uppercase;font-weight:700}.cr-side-label{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.cr-side-totals{font-size:12px;letter-spacing:0;text-transform:none;font-weight:400;color:#8a7060;white-space:nowrap}.cr-side-totals b{color:#d0a860;font-variant-numeric:tabular-nums}.cr-count{color:#d0a860;font-size:14px;font-weight:700;margin-left:2px}.cr-frenzied{background:radial-gradient(circle,rgba(255,40,50,.45) 0%,rgba(200,20,30,.18) 55%,transparent 72%);border-radius:50%;filter:drop-shadow(0 0 5px #ff2030) saturate(1.7) brightness(1.15)}.cr-line-stats{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:12px;color:#8a7060}.cr-line-label{letter-spacing:1px;text-transform:uppercase;color:#7a6450}.cr-line-meter{display:flex;align-items:center;gap:5px}.cr-line-bar{display:inline-block;width:90px;height:6px;border-radius:3px;background:var(--track-bg);box-shadow:var(--track-edge);overflow:hidden}.cr-line-fill{display:block;height:100%;transition:width .35s ease}.cr-line-hp{background:linear-gradient(90deg,#3a7a40,#70c090)}.cr-line-val{color:#b09070;font-variant-numeric:tabular-nums}.cr-reserve{display:flex;flex-direction:column;gap:3px;border-top:1px dashed #3a2a1a;padding-top:4px;opacity:.5}.cr-reserve-label{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#8a7060}.cr-reserve-groups{display:flex;flex-wrap:wrap;gap:4px}.cr-reserve .cr-count{font-size:12px}.cr-reserve-group{display:flex;align-items:flex-end;padding:3px 6px;background:#140f0866;border-radius:4px}.cr-reserve-unit{display:inline-block;font-size:15px;line-height:1}.cr-mid-matchup{font-size:12px;color:#9a86c8;max-width:340px}.cr-matchup-rider{font-weight:700}.cr-mid-labels{display:flex;flex-direction:column;gap:2px;min-width:130px}.cr-round-summary{margin-left:auto;margin-right:14px;align-items:flex-end;text-align:right}.cr-side-damage{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:13px;opacity:.4;transition:opacity .15s ease}.cr-side-damage.cr-active{opacity:1}.cr-mid-round{font-size:14px;letter-spacing:1px;text-transform:uppercase;color:#c0a060;font-weight:700}.cr-mid-width{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#7a6450}.cr-arrow-dmg{color:#d08060;font-weight:700;white-space:nowrap}.cr-outcome{text-align:center;font-size:34px;font-weight:700;letter-spacing:4px;padding:8px;border-radius:6px;animation:cr-outcome-in .5s ease-out}@keyframes cr-outcome-in{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.cr-victory{color:#70e090;text-shadow:0 0 12px #40a060,0 0 24px #40a060;background:#143c1e59;box-shadow:0 0 20px 2px #40a0604d}.cr-defeat{color:#f06060;text-shadow:0 0 12px #c02020,0 0 24px #c02020;background:#3c141459;box-shadow:0 0 20px 2px #c020204d}.cr-tie{color:#d0c060;text-shadow:0 0 12px #a08020;background:#32280a59;box-shadow:0 0 20px 2px #a080204d}.cr-casualties{display:flex;align-items:baseline;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:4px;font-size:13px;font-weight:400;letter-spacing:0;text-transform:none;text-shadow:none;color:#a89078}.cr-casualties b{color:#e0c090;font-variant-numeric:tabular-nums}.cr-cas-sep{color:#6a5a48}.cr-hunger-satiated{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:2px;font-size:12px;color:#90a878}.cr-header-btns{display:flex;gap:6px;align-items:center}.cr-mid-tactics{font-size:12px;color:#b090d0;max-width:340px}.cr-mid-tactic-beat{color:#e0b0ff!important}.cr-flank-badge{display:inline-block;padding:0 3px;margin-left:6px;font-size:10px;letter-spacing:.5px;white-space:nowrap;color:#c08a4a;border-radius:3px;background:#78461a47}.cr-mid-flank{font-size:12px;color:#c08a4a}.wd-section-toggle{pointer-events:all;cursor:pointer;font:inherit;text-align:left;display:inline-flex;align-items:center;gap:6px;padding:2px 4px;background:transparent;border:0;color:inherit}.wd-section-toggle:hover .wd-section-label{color:#c0a070}.wd-caret{font-size:10px;color:#8a7060}.wd-collapsed-summary{font-size:12px;color:#9a8060}.wd-tactics-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wd-section-label{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#8a7060;margin-right:2px}.wd-plan{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.wd-formation{display:flex;flex-direction:column;gap:4px;flex:1 1 790px;min-width:0}.wd-formation-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}doctrine-editor{display:block;pointer-events:all}.wd-slot-label{font-size:12px;padding:2px 6px;color:#c0a880}.wd-doctrines{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}.wd-doctrine{display:flex;flex-direction:column;gap:3px;flex:1 1 250px;min-width:0;border-radius:4px;padding:5px 7px;background:#ffdcaa0d;box-shadow:var(--panel-top-edge)}.wd-doctrine-on{background:#6e46aa38;box-shadow:var(--panel-top-edge),0 0 14px 1px #8050b040}.wd-doctrine-head{display:flex;align-items:center;gap:6px}.wd-doctrine-tag{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#6a5a48}.wd-doctrine-on .wd-doctrine-tag{color:#c0a0ff}.wd-slot-btn{pointer-events:all}.wd-slot-on{background:#6e46aa99!important;color:#e0c0ff!important;box-shadow:var(--btn-secondary-edge),var(--btn-on-glow) #8050b059!important}.wd-formation-row{display:flex;align-items:center;gap:6px;border-radius:3px;padding:2px 3px}.wd-row-drop{background:#c090304d;box-shadow:0 0 10px 1px #c090304d}.wd-row-label{flex:0 0 40px;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#a08060;text-align:right}.wd-row-chips{display:inline-flex;gap:4px;flex-wrap:wrap;min-height:20px;align-items:center}.wd-row-empty{font-size:10px;color:#5a4a38;font-style:italic}.wd-chip{pointer-events:all;cursor:grab}.wd-chip:active{cursor:grabbing}.wd-chip-dragging{opacity:.4}.wd-tactics{display:flex;flex-direction:column;align-items:stretch;gap:5px;flex:0 0 auto;min-width:170px;max-width:210px}.wd-tactic{display:flex;flex-direction:column;gap:2px}.wd-tactic-btn{pointer-events:all;display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;text-align:left}.wd-tactic-name{white-space:nowrap}.wd-tactic-reason{font-size:10px;color:#8a5a40;font-style:italic;padding-left:2px}.wd-potion-toggle{display:flex;align-items:center;gap:5px;margin-top:6px;font-size:11px;color:#a09070;cursor:pointer;pointer-events:all;-webkit-user-select:none;user-select:none;padding:3px 2px}.wd-potion-toggle:hover{color:#d0b080}.wd-potion-toggle input{pointer-events:all;cursor:pointer;margin:0}.wd-tactic-supply{font-size:10px;color:#9a8a70;padding-left:2px}.wd-tactic-arming{background:#c090308c!important;color:#ffd080!important;box-shadow:var(--btn-quiet-edge),var(--btn-on-glow) #c0903059!important}.wd-pips{margin-left:4px;font-size:10px;color:#e0c060;letter-spacing:2px}.wd-volley-pick{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding-left:2px}.wd-btn:disabled{opacity:.4;cursor:not-allowed;filter:grayscale(.7)}.wd-btn:disabled:hover{background:var(--btn-quiet-bg)}.cr-live-hint{font-size:12px;color:#7a6450;font-style:italic}.cr-turn-block{display:flex;flex-direction:column;gap:6px;background:#8a303042;box-shadow:var(--panel-top-edge),0 0 16px 1px #c8281e38;border-radius:5px;padding:7px 10px}.cr-turn-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cr-fight-btn{background:#962314e6!important;color:#ffd0b0!important;box-shadow:var(--btn-armed-edge)!important;font-weight:700;padding:4px 12px!important}.cr-turn-toggle{display:flex;align-items:center;gap:4px;margin-left:auto;font-size:12px;color:#8a7060;pointer-events:all;cursor:pointer}#wave-defense-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:32;background:#0000008c;display:none;align-items:stretch;justify-content:stretch;padding:var(--top-h) var(--right-w) var(--bottom-h) var(--left-w);pointer-events:all}#wave-defense-panel.open{display:flex}.wd-inner{--panel-accent: rgba(200,40,30,.3);width:100%;height:100%;max-width:none;min-width:0;max-height:none;min-height:0;overflow-x:hidden;overflow-y:auto}.wd-inner .cr-arena{flex:1 0 auto}.wd-btn{pointer-events:all}.wd-done-block{background:#308a4038;box-shadow:var(--panel-top-edge),0 0 16px 1px #308a4040}.wd-done-block .cr-turn-bar .cr-fight-btn{flex:1 1 100%}#stats-panel{position:fixed;left:0;right:0;bottom:0;height:var(--stats-h);background:var(--hud-bg);box-shadow:0 -6px 18px #00000080,var(--panel-top-edge);display:none;gap:2px;padding:2px;justify-content:center;z-index:2;pointer-events:all;cursor:pointer;transition:box-shadow .15s}#stats-panel:hover{box-shadow:0 -6px 18px #00000080,inset 0 1px #ffd29638}#stats-panel canvas{width:100%;height:100%;display:block}#monster-detail-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;background:transparent;display:none;align-items:center;justify-content:center;pointer-events:all}#monster-detail-inner{--dlg-bg: #080604;--dlg-pad-x: 18px;--dlg-pad-y: 16px;--panel-accent: rgba(90,64,128,.3);background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:16px 18px;width:280px;max-width:94vw;max-height:80vh;overflow-y:auto}.mdm-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.hist-section{margin-bottom:12px}.mdm-armor{font-size:13px;color:#b09070;margin-bottom:10px}.hist-title{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#7a7060;margin-bottom:5px}.hist-row{display:flex;align-items:center;gap:6px;margin:3px 0}.hist-label{color:#9a8060;min-width:68px;font-size:13px;text-align:right;flex-shrink:0}.hist-bar-track{flex:1;height:10px;background:#140f05b3;border-radius:3px;overflow:hidden}.hist-bar-fill{height:100%;border-radius:3px}.hist-count{color:#c0a060;min-width:22px;text-align:right;font-size:12px}#building-info-dialog{position:static;pointer-events:all;display:none;flex:0 0 auto}#building-info-inner{--dlg-bg: #080604;--dlg-pad-x: 16px;--dlg-pad-y: 14px;background:var(--modal-bg);border-radius:8px;padding:14px 16px;width:auto;box-shadow:var(--panel-shadow)}#building-info-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}#building-info-title{font-size:15px;font-weight:700;color:#d0b080;letter-spacing:1px;text-transform:uppercase}#building-info-body{font-size:13px;color:#b09070;line-height:1.45}.building-info-p{margin:0 0 8px}.building-info-p:last-child{margin-bottom:0}.building-info-note{margin-top:10px;padding:8px 10px;background:#3c1e0a99;border-left:3px solid #c06030;border-radius:3px;color:#f0c080;font-size:13px}.tutorial-info-img{display:block;width:100%;max-width:100%;height:auto;margin:0 0 10px;border:1px solid #3a2a1a;border-radius:4px}.tutorial-info-action{display:block;width:100%;margin-top:10px}#building-info-dialog.floating{position:fixed;top:calc(var(--top-h) + 8px);left:50%;transform:translate(-50%);z-index:33}#building-info-dialog.floating #building-info-inner{width:340px;max-width:92vw;max-height:calc(100vh - var(--top-h) - var(--bottom-h) - 16px);overflow-y:auto}#stats-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;background:transparent;display:none;align-items:center;justify-content:center;pointer-events:all}#stats-modal-inner{--dlg-bg: #080604;--dlg-pad-x: 20px;--dlg-pad-y: 18px;background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:18px 20px;width:860px;max-width:96vw;max-height:90vh;overflow-y:auto}#stats-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}#stats-modal-grid .stat-cell{display:flex;flex-direction:column;gap:4px;border-radius:4px;padding:3px;transition:background-color .12s}#stats-modal-grid .stat-cell{position:relative}#stats-modal-grid canvas{width:100%;height:180px;display:block}#stats-modal-grid .stat-toggle{display:flex;align-items:center;gap:6px;font-size:13px;color:#b0a080;cursor:pointer;-webkit-user-select:none;user-select:none;pointer-events:all}#stats-modal-grid .stat-toggle input{cursor:pointer;margin:0}#stats-modal-grid .stat-reorder{position:absolute;top:0;right:0;display:flex;gap:2px;pointer-events:all}#stats-modal-grid .stat-move{pointer-events:all;cursor:pointer;font-family:Georgia,serif;background:var(--btn-quiet-bg);box-shadow:var(--btn-quiet-edge);color:#b09070;border-radius:3px;min-width:26px;min-height:24px;font-size:12px;line-height:1}#stats-modal-grid .stat-move:hover:not(:disabled){background:var(--btn-quiet-bg-hover);color:#d0a860}#stats-modal-grid .stat-move:disabled{opacity:.3;cursor:default}#stats-tooltip{position:fixed;z-index:30;background:var(--modal-bg);box-shadow:var(--tip-shadow);border-radius:4px;padding:3px 8px;font-size:13px;color:#e0c880;pointer-events:none;display:none}#how-to-play-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#0000008c;display:none;align-items:center;justify-content:center;pointer-events:all}#how-to-play-modal.open{display:flex}#account-row{margin-top:14px;display:flex;flex-direction:column;align-items:center;gap:6px;width:min(340px,100%);margin-left:auto;margin-right:auto;font-size:13px;color:#a89880;text-align:center;pointer-events:all}#account-row .acct-signin{display:flex;flex-direction:column;gap:8px;width:100%}#account-row .acct-signin>:is(a,button){display:block;box-sizing:border-box;width:100%;text-align:center;text-decoration:none;font-family:Georgia,serif;font-size:14px;letter-spacing:1px;padding:8px 16px;pointer-events:all}#account-row .acct-signin>button:disabled{opacity:.5;cursor:not-allowed}#account-row .acct-signin>a[aria-disabled=true]{opacity:.5;cursor:not-allowed}#account-row .acct-terms{display:flex;gap:6px;align-items:flex-start;text-align:left;pointer-events:all;cursor:pointer}#account-row .acct-terms input{margin-top:3px;pointer-events:all}#account-row .acct-terms a{color:#d0a050;display:inline-block;padding:0 2px;pointer-events:all}.acct-id{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 8px}.acct-avatar{width:28px;height:28px;border-radius:50%;box-shadow:0 0 0 1px #ffdcaa1f}.acct-name{color:#e0d0b0;font-size:15px}.acct-sync{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:#8a7a68}.acct-dot{width:8px;height:8px;border-radius:50%;background:#6a5a4a}.acct-sync.ok .acct-dot{background:#6fb06f}.acct-sync.busy .acct-dot{background:#d0a050}.acct-sync.warn{color:#a89060}.acct-sync.warn .acct-dot{background:#8a6a40}.acct-buttons{display:flex;gap:12px;justify-content:center}.acct-notice{color:#d0b080;font-size:13px}.acct-link{display:inline-block;padding:4px 8px;pointer-events:all;cursor:pointer;background:none;border:none;color:#d0a050;font:inherit;text-decoration:underline}body.run-active #account-row .acct-action{display:none!important}#profile-modal,#merge-prompt,#sync-conflict,#sync-confirm{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#0000008c;display:none;align-items:center;justify-content:center;pointer-events:all}#profile-modal.open,#merge-prompt.open,#sync-conflict.open,#sync-confirm.open{display:flex}body:not(.menu-open) #merge-prompt,body.run-active #merge-prompt,body.run-active #sync-conflict{display:none!important}#profile-inner,.acct-dlg-inner{--dlg-bg: #080604;background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:18px 22px;width:560px;max-width:92vw;max-height:80vh;overflow-y:auto;box-sizing:border-box;color:#d0c0a0;pointer-events:all}.acct-dlg-inner{width:460px}.acct-dlg-inner h3,#privacy-note h3{margin:0 0 10px;font-size:16px;color:#e0c880;font-weight:400}#privacy-note{margin-top:16px;font-size:13px;line-height:1.45}#privacy-note ul{margin:6px 0 10px 20px;padding:0}#profile-modal.signed-out #privacy-note{margin-top:0}.profile-actions{display:flex;flex-direction:column;gap:8px;margin:10px 0}.profile-actions>:is(a,button){display:block;box-sizing:border-box;text-align:center;text-decoration:none;padding:8px 16px;font-size:14px;pointer-events:all}.profile-danger{display:flex;flex-direction:column;gap:6px;margin:12px 0;font-size:13px}.profile-danger input{padding:6px 8px;background:var(--input-bg);box-shadow:var(--input-edge);border:0;border-radius:4px;color:#e0d0b0;font:inherit;pointer-events:all}.profile-delete-btn{padding:8px 16px;pointer-events:all}.profile-delete-btn:not(:disabled){background:var(--btn-danger-bg);color:var(--btn-danger-fg);box-shadow:var(--btn-danger-edge)}.profile-delete-btn:not(:disabled):hover{background:var(--btn-danger-bg-hover);box-shadow:var(--btn-danger-edge-hover)}.profile-delete-btn:disabled{opacity:.45;cursor:not-allowed}.acct-summary{margin:0 0 12px 18px;padding:0;font-size:14px;line-height:1.5}.acct-summary .acct-warn{color:#f0b060}.acct-dlg-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.acct-dlg-actions>button{padding:8px 16px;pointer-events:all}#sync-conflict-columns{display:flex;gap:12px;margin-bottom:14px}.acct-conflict-col{flex:1;font-size:13px}.acct-conflict-col h4{margin:0 0 6px;color:#e0c880;font-weight:400}.acct-conflict-col ul{margin:0 0 0 16px;padding:0}.lin-sync-banner{display:flex;align-items:center;gap:8px;flex:0 0 auto;flex-wrap:wrap;font-size:13px;color:#a880c0;pointer-events:all}.lin-sync-banner a{text-decoration:none;padding:3px 10px;pointer-events:all}body.run-active .lin-sync-banner{display:none}#patch-notes-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#0000008c;display:none;align-items:center;justify-content:center;pointer-events:all}#patch-notes-modal.open{display:flex}#patch-notes-inner{--dlg-bg: #080604;--dlg-pad-x: 22px;--dlg-pad-y: 18px;background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:18px 22px;width:560px;max-width:92vw;max-height:80vh;overflow-y:auto}.pn-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.pn-title{font-size:18px;letter-spacing:1px;color:#d0b080;text-transform:uppercase}.pn-footer{padding:10px 0 2px;text-align:center;font-size:13px}.pn-footer a{color:#d0a050;pointer-events:all}.pn-entry{margin:0 0 18px;padding-bottom:14px;border-bottom:1px solid #3a2a1a}.pn-entry:last-child{border-bottom:none}.pn-entry-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.pn-entry-title{font-size:15px;color:#f0c060;font-weight:700}.pn-entry-date{font-size:12px;color:#8a7060;white-space:nowrap}.pn-entry ul{margin:8px 0 0 20px;padding:0;color:#d0c0a0}.pn-entry li{margin:4px 0;line-height:1.4}#feedback-dialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#0009;display:none;align-items:center;justify-content:center;pointer-events:all}#feedback-dialog.open{display:flex}#feedback-dialog .fb-panel{background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;width:600px;max-width:94vw;max-height:88vh;display:flex;flex-direction:column;color:#d0c0a0;font-size:14px;pointer-events:all}#feedback-dialog .fb-header{display:flex;justify-content:space-between;align-items:center;padding:14px 20px 8px;border-bottom:1px solid #2a2030}#feedback-dialog .fb-title{margin:0;font-size:18px;letter-spacing:1px;color:#d0b080;text-transform:uppercase}#feedback-dialog .fb-body{padding:10px 20px;overflow-y:auto;overscroll-behavior:contain;flex:1 1 auto;min-height:0}#feedback-dialog .fb-foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 20px 14px;border-top:1px solid #2a2030}#feedback-dialog .fb-status{flex:1 1 200px;font-size:13px;color:#c0a880;min-height:1em}#feedback-dialog .fb-status[data-tone=warn]{color:#e0b050}#feedback-dialog .fb-status[data-tone=error]{color:#f08070}#feedback-dialog .fb-kinds{border:none;margin:0 0 8px;padding:0;display:flex;gap:6px;flex-wrap:wrap}#feedback-dialog .fb-kinds legend{font-size:12px;color:#8a7060;margin-bottom:4px;padding:0}#feedback-dialog .fb-kind{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:4px;cursor:pointer;pointer-events:all;background:var(--btn-quiet-bg);box-shadow:var(--btn-quiet-edge);transition:background .15s,box-shadow .15s}#feedback-dialog .fb-kind:hover{background:var(--btn-quiet-bg-hover)}#feedback-dialog .fb-kind:has(input:checked){background:var(--btn-primary-bg-hover);color:var(--btn-primary-fg);box-shadow:var(--btn-primary-edge),var(--btn-on-glow) #f0c06038}#feedback-dialog .fb-label{display:block;margin:10px 0 4px;color:#e0c880}#feedback-dialog .fb-input{width:100%;box-sizing:border-box;background:var(--input-bg);color:#e8dcc0;box-shadow:var(--input-edge);border:0;border-radius:4px;padding:7px 9px;font:inherit;pointer-events:all}#feedback-dialog .fb-textarea{resize:vertical;min-height:96px}#feedback-dialog .fb-count{font-size:12px;color:#a08060;min-height:1em;text-align:right}#feedback-dialog .fb-help{font-size:12px;color:#8a7060;margin-top:2px}#feedback-dialog .fb-dim{color:#8a7060;font-size:12px}#feedback-dialog .fb-hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}#feedback-dialog .fb-sub{margin:16px 0 6px;font-size:13px;color:#d0b080;text-transform:uppercase;letter-spacing:1px}#feedback-dialog .fb-group{padding:6px 0;border-bottom:1px solid #1e1826}#feedback-dialog .fb-group-row{display:flex;align-items:center;justify-content:space-between;gap:8px}#feedback-dialog .fb-check{display:inline-flex;align-items:center;gap:6px;padding:3px 0;cursor:pointer;pointer-events:all}#feedback-dialog .fb-check input,#feedback-dialog .fb-kind input{pointer-events:all;width:16px;height:16px;margin:0}#feedback-dialog .fb-always{cursor:default}#feedback-dialog .fb-show,#feedback-dialog .fb-link{display:inline-block;padding:4px 8px;pointer-events:all;cursor:pointer;background:none;border:none;color:#d0a050;font:inherit;font-size:13px;text-decoration:underline}#feedback-dialog a{color:#d0a050;pointer-events:all}#feedback-dialog .fb-json{margin:6px 0 2px;padding:8px;max-height:220px;overflow:auto;background:#0000006b;box-shadow:var(--input-edge);border-radius:4px;font-size:11px;line-height:1.35;color:#b8c8a8;white-space:pre-wrap;word-break:break-word}#feedback-dialog .fb-mini{display:inline-block;padding:3px 8px;pointer-events:all}#feedback-dialog .fb-mine{margin-top:14px}#feedback-dialog .fb-mine summary,#feedback-dialog .fb-privacy summary{cursor:pointer;pointer-events:all;color:#e0c880;padding:4px 0}#feedback-dialog .fb-mine-list{list-style:none;margin:6px 0 0;padding:0}#feedback-dialog .fb-mine-row{display:grid;grid-template-columns:auto auto 1fr auto;gap:2px 10px;align-items:center;padding:5px 0;border-bottom:1px solid #1e1826;font-size:12px}#feedback-dialog .fb-mine-id{font-family:monospace;color:#e8dcc0}#feedback-dialog .fb-mine-summary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#feedback-dialog .fb-mine-state{grid-column:1 / 4;color:#a08060}#feedback-dialog .fb-mine-actions{display:inline-flex;gap:4px;justify-self:end}#feedback-dialog .fb-mine-row[data-state=failed] .fb-mine-state{color:#f08070}#feedback-dialog .fb-privacy{margin-top:14px;font-size:12px;color:#a09080}#feedback-dialog .fb-privacy p{margin:6px 0}#feedback-dialog .fb-privacy .fb-link{font-size:12px;padding:2px 4px}#feedback-dialog .fb-collected{margin:4px 0 4px 18px;padding:0}#feedback-dialog .fb-done{font-size:15px}#feedback-dialog .fb-done-head{font-size:17px;color:#f0c060;font-weight:700}#feedback-dialog .fb-done-id{font-family:monospace;font-size:16px;color:#e8dcc0}#feedback-dialog .fb-failed{margin-top:10px}#feedback-dialog .fb-thumb{display:block;max-width:100%;max-height:220px;margin:6px 0 2px;border:1px solid #2a2030;border-radius:4px}#feedback-dialog .fb-attached{margin:6px 0;padding-left:18px;font-size:13px}#how-to-play-inner{background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:20px 28px;width:96vw;max-width:1400px;max-height:92vh;display:flex;flex-direction:column;gap:12px;color:#c0a880}.htp-header{display:flex;justify-content:space-between;align-items:center}.htp-title{font-size:17px;font-weight:700;color:#d0b080;letter-spacing:2px;text-transform:uppercase}.htp-body{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding-right:4px;font-size:15px;line-height:1.55;color:#b09070}.htp-step{display:none}.htp-step.active{display:block}.htp-step h3{font-size:16px;color:#d0b080;margin-bottom:10px;letter-spacing:1px;text-transform:uppercase;border-bottom:1px solid #3a2a1a;padding-bottom:6px}.htp-step h4{font-size:14px;color:#90e0a0;margin:18px 0 6px;letter-spacing:.5px}.htp-step p{margin:0 0 8px}.htp-step ul{margin:4px 0 10px 20px;padding:0}.htp-step li{margin:3px 0}.htp-step strong{color:#f0c060}.htp-figure{margin:10px 0 12px;text-align:center}.htp-figure img{max-width:100%;max-height:260px;border:1px solid #3a2a1a;border-radius:4px;background:#140f0580}.htp-figure-lg img{max-height:440px}.htp-figure figcaption{font-size:12px;color:#7a6a50;margin-top:4px;font-style:italic}.htp-placeholder{display:flex;align-items:center;justify-content:center;height:180px;padding:12px;border:1px dashed #5a4a2a;border-radius:4px;color:#7a6a50;font-size:13px;font-style:italic;background:#140f0559}.htp-victory{margin:10px 0 14px;padding:12px 14px;background:linear-gradient(180deg,#5a3c0a8c,#321e058c);border-radius:6px;box-shadow:0 0 22px 2px #c8962859,inset 0 1px #ffdc7840;color:#f0d080}.htp-victory-label{display:block;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#ffd060;margin-bottom:6px}.htp-victory-text{font-size:15px;line-height:1.55;color:#f0d890}.htp-victory-text strong{color:#ffe090}#how-to-play-modal.focused .htp-footer{display:none}#how-to-play-modal.focused{z-index:33}.htp-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #3a2a1a;padding-top:12px}.htp-dots{display:flex;gap:6px}.htp-dot{width:8px;height:8px;border-radius:50%;background:#5a4a2a;cursor:pointer;pointer-events:all;transition:background .15s,box-shadow .15s}.htp-dot:hover{background:#8a6a3a}.htp-dot.active{background:#f0c060;box-shadow:0 0 8px 1px #f0c0608c}.htp-nav{display:flex;gap:8px}#world-map-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:block;z-index:55;background:#101820;pointer-events:all;font-family:Georgia,serif}#world-map-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:#101820 url(/world-screen.png) center/cover no-repeat}#world-map-placeholder.hidden{display:none}#world-map-placeholder:has(.webgl-error){display:flex;align-items:center;justify-content:center;padding:24px;text-align:center}#world-map-placeholder .webgl-error{background:var(--panel-bg);box-shadow:var(--panel-shadow);border-radius:8px;padding:16px 20px}body.menu-open #world-title,body.menu-open #world-hint,body.menu-open #world-ladder{display:none!important}#world-map-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;width:46px;height:46px;border-radius:50%;border:3px solid rgba(200,168,96,.25);border-top-color:#c8a860;animation:world-spin .9s linear infinite;pointer-events:none}#world-map-spinner.hidden{display:none}@keyframes world-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}@media(prefers-reduced-motion:reduce){#world-map-spinner{animation-duration:2.4s}}#world-map-container{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:none}@media(max-width:899px),(max-height:500px){#world-title{top:calc(env(safe-area-inset-top,0px) + 20px);font-size:14px;left:50%;max-width:calc(100vw - 200px);text-align:center}#world-hint{bottom:calc(env(safe-area-inset-bottom,0px) + 12px);font-size:12px}#title{padding:18px 20px;width:calc(100vw - 32px);box-sizing:border-box}#title h1{font-size:30px;letter-spacing:2px}}.meta-panel{position:absolute;top:56px;left:16px;z-index:6;pointer-events:all;width:340px;max-width:calc(100vw - 32px);max-height:calc(100vh - 96px);box-sizing:border-box;overflow-y:auto;padding:12px 14px;--panel-accent: rgba(74,90,106,.3);background:var(--modal-bg);box-shadow:var(--panel-shadow);border-radius:8px;color:#d8d0c0;font-size:13px;display:flex;flex-direction:column;gap:8px}.meta-head{display:flex;align-items:center;justify-content:space-between}.meta-title{font-size:16px;letter-spacing:1px;color:#c8a8f0}.meta-close{padding:2px 8px}.meta-economy{display:flex;flex-direction:column;gap:1px}.meta-res{display:grid;grid-template-columns:1fr 72px 72px;gap:6px}.meta-res>span:nth-child(n+2){text-align:right}.meta-rate{color:#8a9a88}.meta-slot{border-top:1px solid #2c2436;padding-top:6px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.meta-slot-name{flex:1 0 100%}.meta-build-grid{flex:1 0 100%;display:grid;grid-template-columns:1fr 1fr;gap:4px}.meta-build{font-size:12px;padding:4px}.meta-note{color:#a8a090;font-size:12px}.meta-error{color:#e08070;font-size:12px}#meta-build-hint{position:absolute;top:56px;left:50%;transform:translate(-50%);z-index:6;pointer-events:all;padding:6px 12px;display:flex;gap:10px;align-items:center;--panel-accent: rgba(74,90,106,.3);background:var(--panel-bg);box-shadow:var(--hud-shadow);border-radius:8px;color:#d8d0c0}#world-title{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:2;color:#9aa8b8;font-size:17px;letter-spacing:2px;pointer-events:none;text-transform:uppercase}#world-hint{position:absolute;bottom:14px;left:50%;transform:translate(-50%);z-index:2;color:#6a7684;font-size:13px;pointer-events:none}#world-dev-panel{position:absolute;bottom:14px;left:16px;z-index:3;display:none;pointer-events:all;background:var(--panel-bg);--panel-accent: rgba(150,60,140,.3);box-shadow:var(--hud-shadow);border-radius:4px;padding:8px 10px;min-width:300px}#world-dev-panel h3{margin:0 0 6px;font-size:13px;color:#c060a0;letter-spacing:1px;text-transform:uppercase}.wd-row{display:flex;align-items:center;gap:7px;margin:4px 0}.wd-name{width:96px;font-size:12px;color:#d0c0d8}.wd-row input[type=range]{flex:1 1 auto;pointer-events:all;cursor:pointer}.wd-val{width:34px;text-align:right;font-size:12px;color:#e0d0e8}#world-dev-fog-row{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:12px;color:#d0c0d8;pointer-events:all;cursor:pointer}#world-dev-fog-row input{pointer-events:all;cursor:pointer;margin:0}#world-ladder{position:absolute;top:52px;left:50%;transform:translate(-50%);z-index:3;pointer-events:none;display:none;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center;max-width:calc(100% - 40px);background:#0e141cd1;box-shadow:var(--hud-shadow);--panel-accent: rgba(74,90,106,.3);border-radius:4px;padding:6px 14px;font-family:Georgia,serif;font-size:13px;color:#9aa8b8}#world-ladder .wl-title{letter-spacing:2px;color:#7f8c9c;font-size:12px}#world-ladder .wl-lore{color:#d8c88a}#world-ladder .wl-conquests{color:#b07ae0}#world-ladder .wl-pips{display:inline-flex;gap:10px;flex-wrap:wrap}#world-ladder .wl-pip{color:#55616e}#world-ladder .wl-pip.open{color:#8fd0a0}#world-ladder .wl-pip.current{color:#d8c88a}#world-ladder .wl-bar{display:inline-block;width:90px;height:6px;border-radius:3px;background:#24303c;overflow:hidden;vertical-align:middle}#world-ladder .wl-bar-fill{display:block;height:100%;background:#d8c88a}#world-ladder .wl-need{color:#8a97a5;font-size:12px}#world-unlock-toast{position:absolute;top:104px;left:50%;transform:translate(-50%);z-index:4;pointer-events:all;cursor:pointer;display:none;--panel-accent: rgba(122,90,160,.36);background:var(--modal-bg);border-radius:5px;padding:10px 20px;text-align:center;font-family:Georgia,serif;box-shadow:var(--panel-shadow)}#world-unlock-toast .wu-step+.wu-step{margin-top:8px}#world-unlock-toast .wu-label{font-size:17px;color:#e0c8ff;letter-spacing:1px}#world-unlock-toast .wu-blurb{font-size:13px;color:#a898bc;margin-top:2px}.ws-actions.ws-sealed .ws-primary{opacity:.65;cursor:not-allowed}.ws-lockbar{height:5px;border-radius:3px;background:#241d18;overflow:hidden;margin:8px 2px 0}.ws-lockbar span{display:block;height:100%;background:#8a7ba8}.ws-v.ws-locked{color:#a898bc}.ws-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:all;background:#060a0e9e;display:flex;align-items:center;justify-content:center}.ws-card{pointer-events:all;max-width:520px;width:calc(100% - 48px);--panel-accent: rgba(74,90,106,.3);background:var(--modal-bg);border-radius:6px;padding:18px 20px;color:#c8d4e0;box-shadow:var(--panel-shadow);max-height:calc(100% - 24px);overflow-y:auto;overscroll-behavior:contain}.ws-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ws-title{font-size:23px;color:#e8d5b7}.ws-sub{font-size:13px;letter-spacing:1px;margin-top:3px}.ws-card-simple{max-width:420px}.ws-welcome{font-size:15px;line-height:1.5;color:#d8c898;margin:16px 0 10px;text-align:center}.ws-welcome-note{font-size:12px;line-height:1.45;color:#8a8270;margin:0 0 18px;text-align:center}.ws-close{pointer-events:all;cursor:pointer;background:none;border:none;color:#8a96a4;font-size:19px;padding:0 4px;line-height:1}.ws-close:hover{color:#e0e8f0}.ws-pill{display:inline-block;margin:12px 0 4px;padding:3px 11px;border-radius:11px;font-size:12px;letter-spacing:1.5px;color:var(--pill, #8892a0);background:#8892a02e;background:color-mix(in srgb,var(--pill, #8892a0) 18%,transparent)}.ws-rows{margin:10px 0 4px}.ws-row{display:flex;gap:12px;padding:5px 0;border-top:1px solid rgba(90,110,130,.22)}.ws-k{width:104px;flex:0 0 auto;color:#7e8c9c;font-size:13px}.ws-v{font-size:14px;color:#cfdae6}.ws-trait{color:#e0a860;font-style:italic}.ws-pill-larder{--pill: #b07ae0}.ws-never{color:#7e8c9c;font-style:italic}.ws-actions{display:flex;gap:10px;margin-top:16px}.ws-bonuses{margin-top:14px;padding-top:10px;border-top:1px solid rgba(90,110,130,.22)}.ws-bonuses-head{font-size:13px;color:#7e8c9c;margin-bottom:6px}.ws-bonus{pointer-events:all;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:2px 10px;width:100%;text-align:left;margin-bottom:6px;padding:6px 9px;border-radius:4px;background:#7896b424;box-shadow:var(--btn-quiet-edge);color:#c8d4e0;font-family:Georgia,serif;font-size:14px;transition:background .15s,box-shadow .15s}.ws-bonus:hover:not(:disabled){background:#7896b43d}.ws-bonus.selected{color:#f0d8a0;background:var(--btn-primary-bg-hover);box-shadow:var(--btn-primary-edge),var(--btn-on-glow) #f0c06038}.ws-bonus:disabled{opacity:.4;cursor:default}.ws-bonus-name{font-weight:700}.ws-bonus-cost{color:#f0c060;font-size:13px}.ws-bonus-desc{grid-column:1 / -1;font-size:12px;color:#8fa0b2}.ws-confirm{margin-top:12px;font-size:13px;color:#e0a050}.ws-primary,.ws-secondary{pointer-events:all;cursor:pointer;font-family:Georgia,serif;border-radius:4px;padding:9px 16px;font-size:15px;transition:background .15s,box-shadow .15s}.ws-primary{flex:1 1 auto;background:#c83c5a4d;color:#f0d8c8;box-shadow:var(--btn-danger-edge)}.ws-primary:hover{background:#c83c5a75;box-shadow:var(--btn-danger-edge-hover)}.ws-secondary{background:#7896b429;color:#b8c4d0;box-shadow:var(--btn-quiet-edge)}.ws-secondary:hover{background:#7896b447;box-shadow:var(--btn-quiet-edge-hover)}#speed-controls{position:fixed;top:4px;left:50%;transform:translate(-50%);background:var(--hud-bg);box-shadow:var(--hud-shadow);border-radius:4px;padding:2px;display:flex;gap:2px;z-index:60;pointer-events:all}.speed-btn{pointer-events:all;cursor:pointer;font-family:Georgia,serif;background:var(--btn-quiet-bg);box-shadow:var(--btn-quiet-edge);color:#b09070;padding:2px 8px;border-radius:2px;font-size:12px;min-width:40px;min-height:32px;transition:background .15s,color .15s,box-shadow .15s}.speed-btn:hover{background:var(--btn-quiet-bg-hover);color:#d0a860}.speed-btn.active{background:var(--btn-primary-bg-hover);color:var(--btn-primary-fg);box-shadow:var(--btn-primary-edge),var(--btn-on-glow) #f0c06047}.speed-btn.paused-indicator.active{background:#aa321e80;color:#f06060;box-shadow:var(--btn-danger-edge),var(--btn-on-glow) #e6462859}.dlg-sticky-head{position:sticky;top:calc(-1 * var(--dlg-pad-y, 16px));z-index:3;background:var(--dlg-bg, #060610);margin:calc(-1 * var(--dlg-pad-y, 16px)) calc(-1 * var(--dlg-pad-x, 20px)) 10px;padding:var(--dlg-pad-y, 16px) var(--dlg-pad-x, 20px) 8px;border-bottom:1px solid #2a2030}#map-zoom-controls{position:fixed;right:calc(var(--right-w) + 12px);bottom:calc(var(--bottom-h) + 12px);display:flex;flex-direction:column;gap:6px;z-index:12;pointer-events:all}.map-zoom-btn{pointer-events:all;cursor:pointer;font-family:Georgia,serif;background:var(--btn-float-bg);box-shadow:var(--btn-float-edge);color:#c0a050;border-radius:4px;width:40px;height:40px;font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.map-zoom-btn:hover{background:var(--btn-float-bg-hover);color:#f0c060}.map-zoom-btn:active{background:var(--btn-primary-bg-hover)}body.world-map-open #map-zoom-controls{z-index:56;right:16px;bottom:16px}#threat-summary,#mobile-tabs,#mobile-actions{display:none}@media(max-width:899px),(max-height:500px){body,body.stats-panel-hidden{--left-w: 0px;--right-w: 0px;--top-h: calc(92px + env(safe-area-inset-top, 0px)) ;--bottom-h: calc(52px + env(safe-area-inset-bottom, 0px)) ;--right-bottom-h: calc(52px + env(safe-area-inset-bottom, 0px)) }#stats-panel{display:none!important}.kbd-hint,.desktop-only{display:none}.mobile-only{display:inline}#center-area{left:0;right:0}.building-card{flex:1 1 145px;max-width:calc(50% - 3px);height:auto;max-height:60vh}#center-dialog{--dlg-pad-x: 8px;--dlg-pad-y: 8px;padding:8px 8px 10px;width:100%}.bld-filter-chip,.rh-filter-chip{min-height:44px}.bld-filter-chip{padding:6px 14px}.rh-filter-chip{flex:1 1 0;min-width:0;padding:4px}#threat-summary{display:block;position:fixed;left:0;right:0;top:env(safe-area-inset-top,0px);z-index:58;pointer-events:all;background:var(--hud-bg);box-shadow:0 6px 18px #00000080}.ts-body{pointer-events:all;cursor:pointer;font-family:Georgia,serif;display:flex;align-items:center;gap:8px;width:100%;min-height:40px;padding:4px 8px;background:transparent;border:0;color:#c0a050;text-align:left}.ts-label{font-size:11px;color:#9a6060;white-space:nowrap}.ts-track{position:relative;flex:1 1 0;height:16px;min-width:40px;background:var(--track-bg);box-shadow:var(--track-edge);border-radius:3px;overflow:hidden}.ts-fill{display:block;height:100%;background:#a03030}.ts-threat-track{background:#781e1e47}.ts-threat-fill{background:linear-gradient(to right,#8b0000,#ff2020)}.ts-wave-track{overflow:visible}.ts-wave-track .ts-fill{border-radius:2px}.ts-wave{position:absolute;left:50%;right:auto;top:50%;transform:translate(-50%,-50%);width:max-content;min-width:100%;font-size:11px;line-height:1;text-align:center;color:#f0e0b0;white-space:nowrap;pointer-events:none;text-shadow:0 0 3px rgba(0,0,0,.9)}#speed-controls{top:calc(env(safe-area-inset-top,0px) + 44px);left:50px;right:auto;transform:none}.speed-btn{min-width:40px;min-height:44px}#mobile-actions{display:flex;position:fixed;top:calc(env(safe-area-inset-top,0px) + 44px);left:266px;right:4px;background:var(--hud-bg);box-shadow:var(--hud-shadow);border-radius:4px;padding:2px;gap:2px;z-index:60;pointer-events:all}.mact-btn{pointer-events:all;cursor:pointer;font-family:Georgia,serif;flex:1 1 0;min-width:0;min-height:44px;display:flex;align-items:center;justify-content:center;background:var(--btn-quiet-bg);box-shadow:var(--btn-quiet-edge);color:#b09070;border-radius:2px;font-size:17px;line-height:1;padding:0}.mact-btn:hover{background:var(--btn-quiet-bg-hover);color:#d0a860}body.run-active #menu-open-btn{top:calc(env(safe-area-inset-top,0px) + 44px);left:4px;right:auto;width:44px;height:48px}body.run-active #title{top:calc(var(--top-h) + 8px);transform:translate(-50%);max-height:calc(100dvh - var(--top-h) - var(--bottom-h) - 24px)}#map-zoom-controls{bottom:calc(var(--bottom-h) + 12px)}body[data-sheet] #map-zoom-controls,body.plan-mode #map-zoom-controls,body.center-open #map-zoom-controls{display:none!important}#corruption-plan-panel{width:auto;right:8px}#corruption-plan-panel .cpp-done-btn{min-height:44px}#mobile-tabs{display:flex;position:fixed;left:0;right:0;bottom:0;padding-bottom:env(safe-area-inset-bottom,0px);background:var(--hud-bg);box-shadow:0 -6px 18px #00000080,var(--panel-top-edge);z-index:58;pointer-events:all}.mtab{pointer-events:all;cursor:pointer;font-family:Georgia,serif;flex:1 1 0;min-width:0;min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px 2px;background:transparent;border:0;color:#8a7060;font-size:12px;transition:background .15s,color .15s}.mtab-icon{font-size:17px;line-height:1}.mtab.active{color:#f0c060;background:var(--btn-primary-bg)}.mtab.active .mtab-icon{filter:drop-shadow(0 0 6px rgba(240,192,96,.7))}#how-to-play-modal.focused{z-index:59}#left-bar,#right-bar{display:none;position:fixed;left:0;right:0;width:auto;min-width:0;top:auto;bottom:var(--bottom-h);max-height:60vh;overflow-y:auto;overscroll-behavior:contain;z-index:40!important;background:var(--modal-bg);box-shadow:0 -10px 30px #0009,var(--panel-top-edge);pointer-events:all}#right-bar{overflow-y:auto}#ui{position:absolute}#right-scroll{overflow-y:visible;flex:0 0 auto}body[data-sheet=resources] #left-bar,body[data-sheet=horde] #left-bar,body[data-sheet=activity] #right-bar{display:flex}body[data-sheet] [data-sheet-group]{display:none!important}body[data-sheet=resources] [data-sheet-group=resources],body[data-sheet=horde] [data-sheet-group=horde],body[data-sheet=activity] [data-sheet-group=activity]{display:block!important}#nest-panel{display:none!important}body[data-sheet=activity] #slayer-activity{display:flex!important}body[data-sheet=activity] #slayer-activity:empty{display:none!important}body[data-sheet=activity] #combat-panel[style*="display: none"],body[data-sheet=activity] #combat-panel[style*="display:none"]{display:none!important}body[data-sheet=activity] #threat-panel .threat-arrow-row,body[data-sheet=activity] #threat-panel #threat-track,body[data-sheet=activity] #threat-panel #threat-label,body[data-sheet=activity] #threat-panel #intel-label,body[data-sheet=activity] #threat-panel #wave-track,body[data-sheet=activity] #threat-panel #attack-countdown{display:none}body[data-sheet=activity] #slayer-activity>raid-ongoing-panel:not([data-activity-key=wave]){display:none}#log{flex:0 0 auto;max-height:30vh;overflow-y:auto}.wd-section-toggle{min-height:44px;padding:4px 8px}.wd-plan{gap:8px}.wd-formation,.wd-tactics{flex:1 1 100%}#flow-dialog,#priority-dialog,#monster-detail-modal,#stats-modal,body.run-active #lineage-dialog,body.run-active #how-to-play-modal,body.run-active #patch-notes-modal,body.run-active #profile-modal{inset:var(--top-h) 0 var(--bottom-h) 0}#flow-dialog-inner,#priority-dialog-inner,#monster-detail-inner,#stats-modal-inner,body.run-active #lineage-dialog-inner,body.run-active #how-to-play-inner,body.run-active #patch-notes-inner,body.run-active #profile-inner{max-height:100%}#gameover{max-width:94vw;padding:24px 16px}#stats-modal-inner{--dlg-pad-x: 10px;--dlg-pad-y: 14px;padding:14px 10px}#stats-modal-grid{grid-template-columns:1fr}#stats-modal-grid .stat-move{min-width:44px;min-height:36px}.cr-inner{width:100%;min-width:0;max-width:100vw;padding:12px 10px}.cr3-hud .cr-side-damage{display:none}.cr3-stage{min-height:300px}.cr-arena{padding:6px}.flow-dialog-svg{min-width:700px}.research-queue-strip{flex-wrap:nowrap;max-height:96px}#research-dialog{--research-zoom-default: .35;--research-zoom-min: .2}#lineage-dialog{--lineage-zoom-min: .2}.lin-head{flex-wrap:wrap;gap:6px 10px}.lin-title{margin-right:auto}.lin-status{order:1;flex:1 1 100%;margin-right:0}.research-dialog-header{flex-wrap:wrap;gap:6px 8px}.research-dialog-title{font-size:13px;letter-spacing:1px;white-space:nowrap}.research-dialog-header-right{flex:1 1 100%;justify-content:space-between;gap:6px}.research-dialog-queuecap{white-space:nowrap;font-size:12px;margin-right:auto}.research-dialog-header .graph-zoom-controls .hob-btn,.lin-head .graph-zoom-controls .hob-btn{min-width:40px;padding:6px 4px}.lin-title{font-size:13px;letter-spacing:1px}.hob-btn{min-height:44px;min-width:44px;padding:6px 10px}.research-queue-remove{width:24px;height:24px;font-size:12px}.htp-dot{width:24px;height:24px;background-clip:content-box;border:8px solid transparent;box-sizing:border-box}.htp-dot.active{background-clip:content-box}.htp-footer{flex-wrap:wrap;row-gap:8px}.htp-dots{order:-1;flex:1 1 100%;justify-content:center;gap:2px}.htp-figure img,.htp-figure-lg img{width:100%;height:auto;max-height:none}}@media(max-height:500px){.cr-wave-summary,.cr3-hud .cr-line-stats,.cr3-hud .cr-reserve{display:none}.cr3-stage{min-height:180px}.cr-inner{gap:6px;padding:6px 10px}#left-bar,#right-bar{max-height:calc(100vh - var(--top-h) - var(--bottom-h))}#left-bar,#right-bar{max-height:calc(100dvh - var(--top-h) - var(--bottom-h))}body,body.stats-panel-hidden{--top-h: calc(52px + env(safe-area-inset-top, 0px)) }#speed-controls{top:calc(env(safe-area-inset-top,0px) + 2px);left:50%;right:auto;transform:translate(-50%)}#threat-summary{right:200px}#threat-summary .ts-body{max-width:calc(50vw - 160px)}#threat-summary .ts-track{min-width:40px}#threat-summary .ts-threat-track{flex:0 0 48px}#mobile-actions{top:calc(env(safe-area-inset-top,0px) + 2px);right:4px;left:auto;transform:none}body.run-active #menu-open-btn{top:calc(env(safe-area-inset-top,0px) + 2px);left:calc(50% - 152px);right:auto;z-index:59}body.run-active #title .subtitle,body.run-active #meta-summary{display:none!important}body.run-active #title{padding-top:10px;padding-bottom:10px}body.run-active #title h1{font-size:22px}body.run-active #title .btn-group{margin-top:10px;gap:6px}.mact-btn{flex:0 0 44px}.building-card{max-height:70vh}#research-dialog-inner,#lineage-dialog-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto minmax(0,1fr);gap:6px 8px;padding:6px 10px}.research-dialog-header,.research-queue-container,.lin-head,.lin-balances{grid-column:1 / -1}.lin-sync-banner{display:none}#research-dialog-inner .research-queue-container{padding:4px 8px}.research-graph-viewport,.lin-graph-viewport{grid-column:1;grid-row:3}.node-detail{grid-column:2;grid-row:3;width:40vw;max-height:none}.lin-title{margin-right:0}.lin-status{order:0;flex:0 1 auto;margin-right:auto}}@media(hover:none){.kbd-hint,.desktop-only{display:none}.mobile-only{display:inline}.building-card-title:after{opacity:.95}}@media(max-width:899px),(max-height:500px){#feedback-dialog,body.menu-open #feedback-dialog{align-items:stretch;z-index:61}#feedback-dialog .fb-panel{width:100vw;max-width:100vw;height:100%;max-height:none;border-radius:0}#feedback-dialog .fb-header,#feedback-dialog .fb-body,#feedback-dialog .fb-foot{padding-left:16px;padding-right:16px}#feedback-dialog .fb-input{font-size:16px}}
