/* Aim-and-throw layer. The archived clicker keeps its original stylesheet. */
.cabinet{align-self:start}
.weapons{grid-template-columns:repeat(6,minmax(0,1fr))}
.weapon-detail{margin:12px 0 0;color:var(--lime);font:10px/1.6 monospace;text-align:center;min-height:16px}
.weapon-cycle,.mobile-switch-hint{display:none}
.weapon-cycle{position:absolute;top:var(--launch-y,72%);transform:translate(-50%,-50%);width:48px;min-height:52px;z-index:5;border:1px solid #94a66f;background:#232e20;border-radius:12px;color:#e5efce;touch-action:manipulation;cursor:pointer}
.weapon-cycle--prev{left:calc(50% - 90px)}.weapon-cycle--next{left:calc(50% + 90px)}
.weapon-cycle .cycle-icon{font-size:24px;line-height:1.1}.weapon-cycle small{font:700 8px monospace;letter-spacing:.5px}
.weapon-cycle:disabled{opacity:.4;cursor:default}.weapon-cycle:active:not(:disabled){background:#485630}
.weapon-cycle:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.splat.splat--poop{background:#79502e;border:1px solid #59371f;border-radius:41% 59% 38% 62%;box-shadow:8px 2px 0 -3px #79502e,-6px -4px 0 -2px #90633b,3px -7px 0 -4px #a97949,inset 2px 3px 0 #ad805244}
.splat.splat--poop:after{background:#79502e}
.cabinet-actions{display:flex;gap:18px}.cabinet-actions button{min-height:26px}
.arena{height:560px;background:radial-gradient(ellipse at 50% 72%,#566347 0,#303c2d 43%,#202a22 80%)}
.arena-grid{inset:37% -60% -35%;opacity:.65}
.arena-watermark{top:133px;font-size:100px;opacity:.75}
.range-lines{position:absolute;inset:135px 20px 128px;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none;opacity:.5}
.range-lines span{border-top:1px dashed #a8bc6833;padding-top:7px;color:#a7b28c;font:8px monospace;letter-spacing:1.5px}
.target{position:absolute;left:0;top:0;bottom:auto;width:1px;height:1px;aspect-ratio:1;transform:none;pointer-events:none;will-change:transform;width:285px;height:285px}
.target-base{position:absolute;bottom:-2px;left:6%;width:88%;height:7%;background:linear-gradient(#48533d,#222b22);border-top:2px solid #6a7c47;border-radius:50% 50% 30% 30% / 15% 15% 65% 65%;box-shadow:0 7px 14px #0005;text-align:center;color:#a9b992;font:700 clamp(5px,.7vw,8px)/1.6 monospace;letter-spacing:1px}
.speech{top:56px;font-size:12px;z-index:3;max-width:80%;padding:9px 14px}
.range-status{position:absolute;left:20px;bottom:94px;color:#d5dfbf;font:9px monospace;letter-spacing:.7px;max-width:35%;line-height:1.6;pointer-events:none}
.range-status.moving{color:#f4b875}
#aim-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none}
#launcher{position:absolute;left:50%;top:var(--launch-y,72%);width:62px;height:62px;transform:translate(-50%,-50%);border-radius:50%;background:#252f20;border:2px solid var(--lime);box-shadow:0 0 0 7px #d5f47710,0 8px 18px #0004;display:grid;place-items:center;z-index:5;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}
#launcher:active{cursor:grabbing}#launcher span{font-size:34px;line-height:1;pointer-events:none}#launcher.dragging{border-color:#fff4be;background:#44522b}#launcher:disabled{cursor:wait;opacity:.5}
.launcher-caption{position:absolute;top:calc(var(--launch-y,72%) + 43px);left:50%;transform:translateX(-50%);font:8px monospace;letter-spacing:1px;color:#ced8b3;white-space:nowrap;pointer-events:none;z-index:3}
input:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.combo{top:12px}.combo>span{font-size:8px}.combo b{font-size:26px}.combo-track{display:none}
.paused-banner{position:absolute;inset:100px 0 34px;z-index:5;background:#192019d9;backdrop-filter:blur(3px);display:flex;flex-direction:column;align-items:center;justify-content:center;font:800 46px 'Barlow Condensed',Impact,sans-serif;pointer-events:none}
.paused-banner span{font:12px 'DM Sans',sans-serif;color:#c1cba8;margin-top:12px}
.note{align-items:flex-start}.note>span{line-height:1.2}.note p{margin-top:0}
.result{z-index:8}.floor{z-index:5}.instruction span{display:block}
@media(min-width:1400px){.arena{height:580px}}
@media(max-width:1100px){.weapons{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:1000px){.cabinet-actions{gap:12px}}
@media(max-width:760px){.arena{height:530px}.speech{font-size:11px}.instruction span{font-size:7px}.note{grid-column:2;grid-row:auto}.utilities{grid-column:1/-1;grid-template-columns:1fr 1fr}.mission{grid-row:span 2}.utilities a{font-size:9px}.cabinet-top{padding:10px 14px;font-size:8px}.cabinet-top button{font-size:8px}.cabinet-actions{gap:10px}}
@media(max-width:460px){.arena{height:500px}.range-status{left:13px;font-size:8px;bottom:104px;max-width:40%}.launcher-caption{font-size:7px}.range-lines{inset:141px 14px 138px}.range-lines span{font-size:7px}.combo{right:12px}.combo b{font-size:23px}.combo>span{font-size:7px}.stage-badge{max-width:59%;font-size:7px}.speech{max-width:85%;top:57px}.floor span{max-width:77%;font-size:7px}.arena-watermark{font-size:85px}.target-base{font-size:5px}.note p{font-size:10px}.result h2{font-size:54px}}
@media(max-width:760px){.weapon-cycle{display:grid;place-content:center;gap:3px}.desktop-switch-hint{display:none}.dock-label span.mobile-switch-hint{display:inline}.range-status{bottom:140px}.weapons{gap:5px}.weapon b{font-size:9px}.weapon kbd{display:none}.weapon-detail{font-size:9px}.launcher-caption{letter-spacing:.5px}}
@media(max-width:360px){.weapons{grid-template-columns:repeat(3,minmax(0,1fr))}.weapon-detail{font-size:8px}.dock-label{font-size:7px}}
