:root{--bg:#0d1630;--bg2:#16224a;--panel:#141c3adb;--line:#ffffff1a;--ink:#f3f1ff;--muted:#a9b0d4;--pink:#ff4fa3;--pink-2:#ff8fd0;--orange:#ff8a3d;--slate:#8ea2d8;--red:#ff4d6d;--gold:#ffd166;--radius:16px;--font:ui-rounded, "SF Pro Rounded", "Nunito", "Segoe UI", system-ui, -apple-system, sans-serif;--sat:env(safe-area-inset-top,0px);--sar:env(safe-area-inset-right,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{overscroll-behavior:none;background:var(--bg);height:100%;color:var(--ink);font-family:var(--font);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;margin:0;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}[hidden]{display:none!important}#app{background:radial-gradient(120% 80% at 0% 0%, #ff4fa329, transparent 55%), radial-gradient(120% 80% at 100% 100%, #ff8a3d24, transparent 55%), var(--bg);position:fixed;top:0;bottom:0;left:0;right:0}.layout{padding:calc(var(--sat) + 8px) calc(var(--sar) + 8px) calc(var(--sab) + 8px) calc(var(--sal) + 8px);grid-template:"hud""stage"minmax(0,1fr)"weapons"/minmax(0,1fr);gap:6px;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.hud{grid-area:hud;align-items:center;gap:10px;min-width:0;display:flex}.stage{grid-area:stage;min-width:0;min-height:0;position:relative}.weapons{grid-area:weapons;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;display:grid}#map{touch-action:none;cursor:crosshair;width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}@media (min-aspect-ratio:1){.layout{grid-template-columns:minmax(0, calc(100dvh - var(--sat) - var(--sab))) clamp(190px, 26vw, 300px);grid-template-rows:auto minmax(0,1fr);grid-template-areas:"stage hud""stage weapons";justify-content:center;column-gap:12px}.hud{flex-direction:column;align-items:stretch}.hud #btn-pause{align-self:flex-end}.weapons{grid-auto-rows:auto;grid-auto-flow:row;align-content:end}}@media (min-aspect-ratio:1) and (max-height:480px){.layout{padding-top:calc(var(--sat) + 4px);padding-bottom:calc(var(--sab) + 4px);gap:4px}.weapons{gap:5px}.weapon{padding:4px 8px!important}.weapon .w-ico{width:30px!important;height:30px!important}.weapon .w-hint{display:none}.weapon{min-height:0!important}}@media (max-aspect-ratio:1) and (min-height:640px){.weapon{min-height:68px}.weapon .w-ico{width:46px;height:46px}}.icon-btn{border:1px solid var(--line);background:var(--panel);border-radius:12px;flex:none;place-items:center;width:44px;height:44px;display:grid}.icon-btn svg{width:22px;height:22px;fill:var(--ink)}.icon-btn:active{transform:scale(.94)}.tug{flex:1;min-width:0}.tug-labels{color:var(--muted);white-space:nowrap;justify-content:space-between;align-items:baseline;gap:8px;font-size:13px;display:flex}.tug-labels b{font-variant-numeric:tabular-nums;font-size:17px}.lbl-dolls b{color:var(--pink-2)}.lbl-humans b{color:#c9d6ff}.lbl-level{text-overflow:ellipsis;color:var(--ink);opacity:.85;font-weight:700;overflow:hidden}.tug-bar{background:linear-gradient(90deg,#5d6c9c,#8ea2d8);border-radius:99px;height:10px;margin:5px 0 4px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff1f}#tug-pink{background:linear-gradient(90deg,#ff2e93,#ff8fd0);width:50%;transition:width .25s ease-out;position:absolute;top:0;bottom:0;left:0;right:auto;box-shadow:0 0 12px #ff4fa3cc}.hud-meta{color:var(--muted);white-space:nowrap;justify-content:space-between;gap:8px;font-size:12px;display:flex}.hud-meta .warn{color:var(--red);font-weight:700}@media (min-aspect-ratio:1){.tug-labels{flex-wrap:wrap}.lbl-level{order:-1;width:100%;font-size:15px}}.weapon{border-radius:var(--radius);border:1px solid var(--line);background:var(--panel);text-align:left;align-items:center;gap:8px;min-height:56px;padding:8px 10px;transition:transform .12s,border-color .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.weapon:active{transform:scale(.97)}.weapon .w-ico{background:conic-gradient(var(--gold) calc(var(--p,1) * 360deg), #ffffff14 0);border-radius:50%;flex:none;place-items:center;width:40px;height:40px;display:grid;position:relative}.weapon .w-ico:before{content:"";background:#1b2550;border-radius:50%;position:absolute;top:3px;bottom:3px;left:3px;right:3px}.weapon .w-ico svg{width:74%;height:74%;position:relative}.weapon .w-text{flex-direction:column;min-width:0;line-height:1.15;display:flex}.weapon .w-name{font-size:15px;font-weight:800}.weapon .w-hint{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.weapon .w-pips{gap:3px;margin-top:3px;display:flex}.weapon .w-pips i{background:#ffffff2e;border-radius:50%;width:8px;height:8px}.weapon .w-pips i.on{background:var(--gold);box-shadow:0 0 6px #ffd166b3}.weapon .w-key{color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:0 5px;font-size:11px;position:absolute;top:6px;right:8px}@media (hover:none){.weapon .w-key{display:none}}.weapon.selected{border-color:var(--gold);background:linear-gradient(#ffd1661f,#141c3ae6);box-shadow:0 0 0 2px #ffd16659,0 8px 24px #00000059}.weapon.empty .w-ico svg{opacity:.45}.weapon.ready-flash{animation:.6s ease-out readyflash}@keyframes readyflash{0%{box-shadow:0 0 #ffd166e6}to{box-shadow:0 0 0 14px #ffd16600}}.weapon.tut-highlight{border-color:var(--pink);animation:1.1s ease-in-out infinite pulse}@keyframes pulse{50%{box-shadow:0 0 0 6px #ff4fa373}}@media (max-width:360px){.weapon .w-hint{display:none}.weapon{gap:6px;padding:6px}}#toasts{pointer-events:none;flex-direction:column;align-items:center;gap:6px;width:max-content;max-width:92%;display:flex;position:absolute;top:8px;left:50%;transform:translate(-50%)}.toast{border:1px solid var(--line);background:#0e142ce6;border-radius:99px;padding:7px 14px;font-size:14px;font-weight:800;animation:.25s ease-out toast-in,.4s ease-in 2.1s forwards toast-out;box-shadow:0 6px 18px #00000059}.toast.good{color:#9ff0c0;border-color:#78f0aa66}.toast.bad{color:#ffb3c4;border-color:#ff4d6d99}.toast.warn{color:var(--gold)}.toast.nuke{color:#ffc28f;border-color:#ff8a3d99}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)scale(.95)}}@keyframes toast-out{to{opacity:0;transform:translateY(-6px)}}.advisor{align-items:flex-end;gap:8px;max-width:520px;margin:0 auto;animation:.3s ease-out toast-in;display:flex;position:absolute;bottom:8px;left:8px;right:8px}.advisor-face{border-radius:14px;flex:none;width:58px;height:58px;overflow:hidden;box-shadow:0 6px 18px #0006}.advisor-face svg{width:100%;height:100%;display:block}.bubble{color:#241b33;cursor:pointer;background:#fbf7ff;border-radius:16px 16px 16px 4px;flex:1;padding:10px 12px 8px;position:relative;box-shadow:0 10px 28px #00000073}.bubble p{margin:0 0 6px;font-size:15px;font-weight:600;line-height:1.35}.bubble-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.tap-hint{color:var(--pink);font-size:12px;font-weight:800;animation:1.2s ease-in-out infinite blink}@keyframes blink{50%{opacity:.35}}.link-btn{color:#7a6f8f;background:0 0;border:0;margin-left:auto;padding:6px 0 6px 8px;font-size:12px;text-decoration:underline}.overlay{padding:calc(var(--sat) + 16px) calc(var(--sar) + 16px) calc(var(--sab) + 16px) calc(var(--sal) + 16px);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10;background:#080c1c9e;place-items:center;animation:.2s ease-out fade;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}@keyframes fade{0%{opacity:0}}.card{border:1px solid var(--line);text-align:center;background:linear-gradient(#1e2852f5,#121936f5);border-radius:22px;width:min(440px,100%);max-height:100%;padding:22px 20px;animation:.28s cubic-bezier(.2,1.4,.4,1) pop-in;box-shadow:0 24px 60px #00000080}@keyframes pop-in{0%{opacity:0;transform:scale(.92)}}.scroll{touch-action:pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overflow-y:auto}.card h2{letter-spacing:.01em;margin:0 0 12px;font-size:26px}.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--pink-2);margin:0 0 2px;font-size:12px;font-weight:800}.menu{gap:10px;margin:16px 0 6px;display:grid}.row{gap:10px;margin-top:16px;display:flex}.row .btn{flex:1}.btn{border:1px solid var(--line);background:#ffffff12;border-radius:14px;min-height:50px;padding:0 20px;font-size:17px;font-weight:800;transition:transform .1s,background .15s}.btn:hover{background:#ffffff1f}.btn:active{transform:scale(.97)}.btn.primary{color:#fff;background:linear-gradient(90deg,#ff2e93,#ff7a4a);border:0;box-shadow:0 8px 22px #ff4fa359,inset 0 1px #ffffff4d}.btn.ghost{background:0 0}.btn:disabled{opacity:.4;cursor:default}.btn small{opacity:.8;margin-top:-2px;font-size:12px;font-weight:600;display:block}.toggles{justify-content:center;gap:8px;margin-top:10px;display:flex}.toggle{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:99px;padding:8px 14px;font-size:13px;font-weight:700}.toggle[aria-pressed=true]{color:var(--ink);background:#ffffff1a}.toggle[aria-pressed=false]{text-decoration:line-through}.screen-title{-webkit-backdrop-filter:blur(2px);background:linear-gradient(#080c1c59,#080c1cd1)}.title-card{text-align:center;width:min(420px,100%);animation:.4s cubic-bezier(.2,1.4,.4,1) pop-in}.logo{filter:drop-shadow(0 10px 30px #ff5fb873);width:120px;height:120px;margin:0 auto -8px;animation:3.5s ease-in-out infinite bob}.logo svg{width:100%;height:100%}@keyframes bob{50%{transform:translateY(-6px)scale(1.03)}}.wordmark{letter-spacing:-.02em;margin:0;font-size:clamp(42px,13vw,64px);font-weight:900;line-height:1}.w-barben{color:var(--pink);text-shadow:0 0 24px #ff4fa38c;font-style:italic}.w-heimer{color:#ffe9d6;text-shadow:0 0 24px #ff8a3d8c;letter-spacing:.02em}@media (max-height:560px){.logo{width:70px;height:70px}.wordmark{font-size:40px}.title-card .menu{grid-template-columns:1fr 1fr;margin-top:10px}.btn{min-height:44px}}.level-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}@media (min-width:560px){#levels .card{width:min(620px,100%)}.level-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.level{text-align:left;border:1px solid var(--line);background:#ffffff0d;border-radius:14px;flex-direction:column;gap:4px;min-height:92px;padding:12px;display:flex;position:relative}.level:hover:not(:disabled){border-color:#ff4fa399}.level .lv-num{color:var(--pink-2);letter-spacing:.1em;font-size:12px;font-weight:800}.level .lv-name{font-size:16px;font-weight:800;line-height:1.15}.level .lv-stars{gap:2px;margin-top:auto;display:flex}.level .lv-stars svg{fill:#ffffff2e;width:16px;height:16px}.level .lv-stars svg.on{fill:var(--gold)}.level:disabled{opacity:.45;cursor:default}.level .lv-lock{width:16px;height:16px;fill:var(--muted);position:absolute;top:10px;right:10px}.level.endless{background:linear-gradient(135deg,#ff4fa32e,#ff8a3d24)}.goals{text-align:left;gap:8px;margin:14px 0;padding:0;list-style:none;display:grid}.goals li{align-items:center;gap:10px;font-size:15px;font-weight:600;display:flex}.goals svg{width:18px;height:18px;fill:var(--gold);flex:none}.goals .goal-main svg{fill:var(--pink)}.brief-weapons{justify-content:center;gap:12px;display:flex}.brief-weapons span{color:var(--muted);flex-direction:column;align-items:center;font-size:12px;font-weight:700;display:flex}.brief-weapons svg{width:42px;height:42px}.brief-weapons .new{color:var(--gold)}.stars{justify-content:center;gap:8px;margin:4px 0 14px;display:flex}.stars svg{fill:#ffffff24;width:46px;height:46px}.stars svg.on{fill:var(--gold);filter:drop-shadow(0 0 10px #ffd166b3);animation:.45s cubic-bezier(.2,1.8,.4,1) both star-in}.stars svg.on:nth-child(2){animation-delay:.18s}.stars svg.on:nth-child(3){animation-delay:.36s}@keyframes star-in{0%{transform:scale(0)rotate(-40deg)}}.stats{text-align:left;grid-template-columns:1fr auto;gap:6px 16px;margin:0 0 6px;font-size:15px;display:grid}.stats dt{color:var(--muted)}.stats dd{font-variant-numeric:tabular-nums;text-align:right;margin:0;font-weight:800}.stats .best{color:var(--gold)}.howto{text-align:left}.howto h2{text-align:center}.howto p{color:#d7dbf3;line-height:1.45}.howto-list{gap:10px;padding:0;list-style:none;display:grid}.howto-list li{align-items:center;gap:12px;display:flex}.howto-list b{display:block}.hw-ico svg{width:40px;height:40px}.howto .keys{color:var(--muted);font-size:13px}@media (hover:none){.howto .keys{display:none}}.howto .btn{width:100%;margin-top:6px}.pink{color:var(--pink-2)}.slate{color:#c9d6ff}.red{color:var(--red)}#game.demo .hud,#game.demo .weapons{visibility:hidden}
