:root{--dirt:#140d09;--panel:#1c110adb;--panel-edge:#6a4528;--amber:#e8b84a;--amber-dim:#b8882c;--cream:#f3e6c8;--muted:#c4ae8c;--leaf:#7dbe55;--danger:#e25a42;--ok:#8bc34a;--shadow:0 12px 40px #00000073}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--dirt);width:100%;height:100%;color:var(--cream);-webkit-user-select:none;user-select:none;touch-action:none;font-family:Nunito,Trebuchet MS,sans-serif;overflow:hidden}#app{width:100%;height:100%;position:relative}#game{cursor:crosshair;width:100%;height:100%;display:block}#vignette{pointer-events:none;z-index:2;background:radial-gradient(#0000 58%,#08040259 100%);position:absolute;inset:0}.hud{z-index:5;pointer-events:none;position:absolute}.hud button,.hud .panel{pointer-events:auto}#hud-top{background:var(--panel);border:2px solid var(--panel-edge);width:min(860px,100% - 24px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:16px;grid-template-columns:140px 1fr 140px;align-items:center;gap:16px;padding:10px 16px;display:grid;top:16px;left:50%;transform:translate(-50%)}.stat-block{flex-direction:column;display:flex}.stat-block.right{text-align:right;align-items:flex-end}.stat-label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:11px}.stat-value{color:var(--cream);font-family:Lilita One,Impact,sans-serif;font-size:28px;line-height:1}.stat-value.amber{color:var(--amber)}.stat-sub{color:var(--muted);margin-top:2px;font-size:12px}.nest-wrap{flex-direction:column;gap:6px;display:flex}.bar{background:#2a1810;border:1px solid #4a2e1c;border-radius:99px;height:12px;overflow:hidden}.bar-fill{transform-origin:0;background:linear-gradient(90deg,#c44832,#e8b84a 70%,#8bc34a);width:100%;height:100%;transition:transform .2s}#hud-bottom{flex-direction:column;align-items:center;gap:6px;width:min(920px,100% - 16px);display:flex;bottom:10px;left:50%;transform:translate(-50%)}.panel{background:var(--panel);border:2px solid var(--panel-edge);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:16px;flex-wrap:wrap;justify-content:center;gap:8px;padding:8px;display:flex}.unit-btn,.up-btn,.play-btn{cursor:pointer;color:var(--cream);border:0;font-family:inherit}.unit-btn,.up-btn{background:linear-gradient(#4a2e1c,#2d1a10);border:1px solid #7a5333;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;min-width:108px;padding:8px 10px 8px 12px;transition:transform 80ms,filter 80ms,opacity .12s;display:flex;position:relative;box-shadow:inset 0 1px #ffdca026}.unit-btn:hover,.up-btn:hover,.play-btn:hover{filter:brightness(1.12);transform:translateY(-1px)}.unit-btn:active,.up-btn:active,.play-btn:active{transform:translateY(1px)}.unit-btn.disabled,.up-btn.disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.3)}.key{color:var(--amber);border:1px solid var(--amber-dim);border-radius:4px;padding:0 5px;font-size:10px;font-weight:800;position:absolute;top:6px;right:8px}.unit-icon{opacity:.9;border-radius:99px;width:18px;height:10px;margin-bottom:4px;box-shadow:6px 0}.worker-icon{color:#c46a32;background:#c46a32}.soldier-icon{color:#8a3418;background:#8a3418}.major-icon{color:#3a1c10;background:#3a1c10;width:22px;height:12px}.unit-name,.up-name{font-size:14px;font-weight:800}.up-name em{color:var(--amber);font-style:normal}.up-desc{color:var(--muted);font-size:11px}.unit-cost{color:var(--amber);margin-top:4px;font-size:13px;font-weight:800}.unit-cost:before{content:"◉ ";font-size:10px}.pop-box{flex-direction:column;justify-content:center;min-width:90px;padding:0 12px;display:flex}.hint{color:var(--muted);text-shadow:0 1px 2px #000;font-size:12px}#banner{z-index:6;letter-spacing:.06em;color:var(--cream);text-shadow:0 4px #3a2010,0 8px 24px #000;pointer-events:none;font-family:Lilita One,Impact,sans-serif;font-size:clamp(28px,5vw,48px);animation:2.4s forwards banner-in;position:absolute;top:110px;left:50%;transform:translate(-50%)}#threat{z-index:6;letter-spacing:.18em;color:var(--danger);text-shadow:0 2px 8px #000;pointer-events:none;font-size:13px;font-weight:800;animation:.8s infinite alternate pulse;position:absolute;top:168px;left:50%;transform:translate(-50%)}.overlay{z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0804028c;place-items:center;display:grid;position:absolute;inset:0}.menu-card{width:min(560px,100% - 32px);box-shadow:var(--shadow), inset 0 1px 0 #ffdcaa33;text-align:center;background:linear-gradient(#3a2416 0%,#21140c 100%);border:3px solid #8a5a32;border-radius:24px;padding:36px 36px 28px}.menu-card.slim{padding:32px}.eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--amber);margin-bottom:6px;font-size:12px}.danger-text{color:var(--danger)}h1{color:var(--amber);text-shadow:0 6px #5a3514,0 14px #2a160a;font-family:Lilita One,Impact,sans-serif;font-size:clamp(64px,12vw,96px);line-height:.9}h2{color:var(--amber);text-shadow:0 4px #5a3514;font-family:Lilita One,Impact,sans-serif;font-size:48px}.tagline{color:var(--cream);margin:14px 0 18px;line-height:1.45}.howto,.stats-list{text-align:left;color:var(--muted);gap:8px;margin:0 0 22px;font-size:14px;list-style:none;display:grid}.howto strong,.stats-list strong{color:var(--cream)}.stats-list{font-size:16px}.stats-list li{border-bottom:1px dashed #6a4528;justify-content:space-between;padding-bottom:6px;display:flex}.play-btn{color:#2a1608;letter-spacing:.04em;background:linear-gradient(#f0c45a,#c88820);border-radius:12px;padding:12px 28px;font-family:Lilita One,Impact,sans-serif;font-size:22px;box-shadow:0 4px #7a4e10,0 10px 20px #00000059}.fine{color:var(--muted);margin-top:14px;font-size:12px}.hidden{display:none!important}@keyframes banner-in{0%{opacity:0;transform:translate(-50%,-12px)scale(.9)}12%{opacity:1;transform:translate(-50%)scale(1)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-8px)scale(1)}}@keyframes pulse{0%{opacity:.45}to{opacity:1}}@media (max-width:760px){#hud-top{grid-template-columns:1fr 1fr;top:8px}.nest-wrap{order:-1;grid-column:1/-1}.unit-btn,.up-btn{min-width:96px;padding:8px}.hint{display:none}h1{font-size:64px}}
