:root{font-family:Arial,Helvetica,sans-serif;color:#fff8e7;background:#233329;font-synthesis:none;--gold:#f2c56e;--mint:#c5dfbe}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{user-select:none;-webkit-user-select:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button:disabled{cursor:wait;opacity:.5}[hidden]{display:none!important}#scene{display:block;width:100%;height:100%;touch-action:none}body[data-state=playing] #scene{cursor:none}.toolbar{position:absolute;inset:18px 24px auto;z-index:5;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.brand{font-size:11px;font-weight:700;letter-spacing:.17em;text-shadow:0 1px 5px #263a33}.brand i{font-style:normal;opacity:.5;margin:0 8px}.toolbar>div{display:flex;gap:7px;pointer-events:auto}.toolbar button,.hud__top>button{background:#213b35a6;border:1px solid #ffffff32;border-radius:9px;padding:8px 11px;font-size:12px;backdrop-filter:blur(8px)}.toolbar #fullscreen{font-size:19px;padding:4px 11px}.overlay{position:absolute;inset:0;z-index:4;display:flex;align-items:center;justify-content:center;padding:64px 28px 20px;background:linear-gradient(90deg,#142d27e6,#142d2769 58%,#142d271c)}.menu__panel{width:min(970px,100%)}.eyebrow{font-size:10px;letter-spacing:.22em;color:var(--gold);font-weight:700}h1{font-size:clamp(40px,7vw,78px);font-weight:600;letter-spacing:-.065em;margin:14px 0 13px;line-height:1}h1 em{font-style:normal;font-weight:300;color:var(--gold)}.lead{font-size:clamp(16px,2vw,22px);line-height:1.4;color:#f8f7ead1;margin:0 0 24px}.facts{display:flex;gap:26px;color:#f3f2e6c2;font-size:12px;margin-bottom:24px}.facts b{font-size:22px;color:white;margin-right:5px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.card{position:relative;text-align:left;padding:19px 16px;border:1px solid #eff4d94a;border-radius:14px;background:#1c352fcc;box-shadow:0 8px 24px #001c1218;transition:background .18s,transform .18s;min-height:124px}.card:hover{transform:translateY(-4px);background:#354a36e8;border-color:var(--gold)}.card small{display:block;color:var(--gold);font-size:10px;letter-spacing:.16em;margin-bottom:12px}.card b{display:block;font-size:20px;margin-bottom:7px}.card span{display:block;font-size:11px;color:#f7f5e7b8}.card i{position:absolute;right:14px;top:15px;font-size:18px;font-style:normal}.menu__rules{font-size:12px;line-height:1.65;color:#eeeeddce;margin:18px 0 9px}.menu__rules b{color:var(--gold)}.training{display:block;font-size:10px;color:#eeeedd8a;line-height:1.5}.hud{position:absolute;inset:76px 24px 0;z-index:2;pointer-events:none;text-shadow:0 1px 9px #112b31a8}.hud__top{display:flex;align-items:flex-start;gap:22px}.score small,.round small{display:block;font-size:9px;letter-spacing:.16em;color:#f3f6e7ba;margin-bottom:4px}.score strong{font-size:34px;line-height:1;font-variant-numeric:tabular-nums}.score>span{font-size:12px;opacity:.6;margin-left:4px}.round{padding-top:2px}.round strong{font-size:14px;letter-spacing:.04em}.hud__top>button{margin-left:auto;pointer-events:auto;font-weight:700}.markers{display:flex;gap:5px;margin-top:14px}.markers i{display:block;width:10px;height:10px;border:1px solid #f0f5e8a6;border-radius:50%;background:#26463836}.markers i.active{background:var(--gold);box-shadow:0 0 9px #f2c56e88}.markers i.hit{background:#b8e0ad;border-color:#b8e0ad}.markers i.escaped{background:#f4927a;border-color:#f4927a}.launchNotice{position:absolute;left:50%;top:23%;transform:translateX(-50%);font-size:15px;font-weight:700;color:#fff9dd;text-align:center;white-space:nowrap;letter-spacing:.07em}.flight{position:absolute;left:0;bottom:34px;width:min(390px,42vw)}.flight__label{display:flex;justify-content:space-between;font-size:11px;margin-bottom:8px}.flight__label>b{color:var(--gold)}.flight__track{position:relative;display:flex;border-radius:6px;overflow:visible;border:1px solid #f0f5e838;background:#143a33b8}.flight__track>span{flex:1;text-align:center;padding:8px 0;font-size:10px;border-right:1px solid #f0f5e833}.flight__track>span:last-of-type{background:#d4b05140;color:#fff2ba;border:0}.flight__track>i{position:absolute;height:100%;width:3px;background:#fff3bb;left:0;border-radius:2px;box-shadow:0 0 7px #fff2bbaa}.ammo{position:absolute;right:0;bottom:47px;display:flex;gap:7px;align-items:center}.ammo>i{width:9px;height:24px;border-radius:3px 3px 1px 1px;background:linear-gradient(#ab8150 20%,#cf8658 20% 80%,#e7c978 80%);box-shadow:0 1px 5px #0004}.ammo>i.used{opacity:.2}.ammo>span{font-size:11px;margin-left:4px}.controls{position:absolute;bottom:11px;left:0;font-size:10px;opacity:.7}.cross{position:absolute;width:0;height:0;color:#fff5c8;z-index:3;pointer-events:none;filter:drop-shadow(0 1px 1px #13382f)}.cross i{position:absolute;background:currentColor;width:7px;height:2px}.cross i:nth-child(1){right:5px;top:-1px}.cross i:nth-child(2){left:5px;top:-1px}.cross i:nth-child(3){width:2px;height:7px;left:-1px;bottom:5px}.cross i:nth-child(4){width:2px;height:7px;left:-1px;top:5px}.cross.cooldown{opacity:.4}.hitFlash{position:absolute;inset:0;pointer-events:none;z-index:1;opacity:0;box-shadow:inset 0 0 60px #ffdf7799;transition:opacity .1s}.floater{position:absolute;z-index:6;pointer-events:none;font-size:30px;font-weight:700;text-shadow:0 2px 8px #123325;animation:float 1s ease-out forwards;color:var(--gold)}.floater.negative{color:#ffa18f;font-size:23px}.floater small{display:block;font-size:10px;letter-spacing:.08em;margin-top:3px}.pausePanel,.result__panel{text-align:center;background:#19372fe8;border:1px solid #d5e6ce42;backdrop-filter:blur(16px);padding:28px 38px;border-radius:20px;width:min(500px,100%);box-shadow:0 20px 60px #10251b45}.paused,.result{background:#10291d55}.pausePanel h2,.result h2{font-size:30px;letter-spacing:-.04em;line-height:1.1;margin:14px 0}.pausePanel p{font-size:13px;color:#ffffffab}.primary,.secondary{border:0;border-radius:9px;padding:12px 18px;font-weight:700;font-size:12px}.primary{background:var(--gold);color:#263b2b}.secondary{background:transparent;border:1px solid #ffffff48;color:#f4f2df}.pausePanel button{margin:10px 3px 0}.result__score{margin:12px 0 6px}.result__score strong{font-size:66px;line-height:1;color:var(--gold);letter-spacing:-.06em;font-variant-numeric:tabular-nums}.result__score>span{opacity:.5;font-size:18px;margin-left:9px}#resultSummary{font-size:12px;color:#f2f3dfbf;margin:12px 0 17px}.ledger{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;font-size:12px}.ledger>div{padding:8px 4px;border-radius:6px;background:#eff3dc0c}.ledger small{display:block;opacity:.65;font-size:10px}.ledger b{display:block;font-size:16px;margin-top:4px;color:#dfedcc}.ledger .penalty{grid-column:span 2}.ledger .total{grid-column:span 3}.ledger .penalty b{color:#efaa8c}.floorNote{font-size:11px;opacity:.65}.result__actions{display:flex;gap:8px;margin:19px 0 12px;justify-content:center}.loading,.error{position:absolute;inset:0;background:#233329;z-index:10;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px}.loading>span:last-child{font-size:12px;opacity:.5}.loading__disc{height:42px;width:42px;border-radius:50%;border:4px solid #f2c56e33;border-top-color:var(--gold);animation:spin 1s linear infinite}.error p{max-width:400px;text-align:center;padding:0 20px;line-height:1.5}.error button{padding:12px 20px;border-radius:8px;background:var(--gold);color:#233329;border:0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{from{opacity:1;transform:translate(-50%,-100%)}to{opacity:0;transform:translate(-50%,-240%)}}@media(max-height:570px) and (min-width:650px){.toolbar{top:12px}.overlay{padding:48px 24px 15px}h1{font-size:49px;margin:8px 0}.lead{font-size:16px;margin-bottom:13px}.facts{margin-bottom:13px}.card{min-height:103px;padding:14px}.menu__rules{margin-top:12px}.result__panel{padding:18px 30px}.result h2{font-size:24px;margin:9px 0}.result__score strong{font-size:47px}.result__actions{margin:12px 0 8px}.hud{top:58px}}@media(max-width:650px){.toolbar{inset:12px 14px auto}.brand{font-size:8px;letter-spacing:.1em}.brand i{margin:0 4px}.toolbar button{font-size:10px;padding:7px}.overlay{padding:54px 17px 16px}.menu__panel{max-width:450px}h1{font-size:48px;margin:11px 0}.lead{font-size:16px;margin-bottom:16px}.facts{gap:18px;margin-bottom:15px}.facts b{font-size:19px}.cards{grid-template-columns:repeat(2,1fr);gap:8px}.card{padding:13px 12px;min-height:93px}.card small{margin-bottom:8px;font-size:8px}.card b{font-size:17px}.card span{font-size:10px}.menu__rules{font-size:11px;margin:14px 0 7px}.training{font-size:9px}.hud{inset:58px 15px 0}.score strong{font-size:28px}.round strong{font-size:12px}.hud__top{gap:15px}.markers{gap:4px}.markers i{width:9px;height:9px}.flight{width:62vw;bottom:42px}.ammo{bottom:46px}.ammo span{display:none}.controls{font-size:9px}.launchNotice{font-size:12px}.result__panel{padding:21px 18px}.result h2{font-size:27px}.result__score strong{font-size:54px}.result__actions{flex-direction:column}.pausePanel{padding:25px 16px}}@media(prefers-reduced-motion:reduce){.card{transition:none}.floater{animation-duration:.5s}}

.ammo{flex-direction:column;align-items:flex-end;gap:6px}.ammo #ammoRounds{display:flex;gap:3px}.ammo #ammoRounds i{display:block;width:5px;height:19px;border-radius:2px 2px 1px 1px;background:linear-gradient(#ad8550 15%,#cf8658 15% 80%,#e7c978 80%)}.ammo #ammoRounds i.used{opacity:.18}.ammo>span{display:block;font-variant-numeric:tabular-nums;font-size:12px}.ammo.empty>span{color:#ffa18f}@media(max-width:650px){.ammo #ammoRounds{display:grid;grid-template-columns:repeat(10,4px);gap:2px}.ammo #ammoRounds i{width:4px;height:11px}.ammo>span{display:block}}


/* Visible shared inventory: twenty shotgun cartridges on a contrasting panel. */
.ammo{bottom:42px;padding:10px 12px 8px;background:#14271ee8;border:1px solid #f2c56e80;border-radius:9px;text-shadow:none;box-shadow:0 2px 12px #0005;gap:7px}.ammo #ammoRounds{gap:4px}.ammo #ammoRounds i{width:7px;height:26px;border:1px solid #f3c78a;border-radius:3px 3px 1px 1px;background:linear-gradient(#b29452 14%,#e9985f 14% 78%,#f7d38a 78%);box-shadow:inset 1px 0 #ffe0ad66}.ammo #ammoRounds i.used{opacity:.18}.ammo>span{font-size:12px;font-weight:700;color:#ffedbf}.flight{max-width:calc(100% - 255px)}@media(max-width:650px){.ammo{bottom:39px;padding:8px;gap:5px}.ammo #ammoRounds{grid-template-columns:repeat(10,6px);gap:3px}.ammo #ammoRounds i{width:6px;height:17px}.ammo>span{font-size:11px}.flight{width:calc(100% - 116px);max-width:none}}

/* Independent timing for each clay in a wave. */
.cross::after{content:"";position:absolute;left:50%;top:50%;width:var(--shot-diameter,0px);height:var(--shot-diameter,0px);transform:translate(-50%,-50%);border:1px solid #ffe3a966;border-radius:50%;box-shadow:0 0 3px #10261c55}.cross.cooldown::after{border-color:#ffe3a92a}#shotCloud{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:3}#shotCloud i{position:absolute;width:2px;height:2px;border-radius:50%;background:#fff3cf;box-shadow:0 0 3px #ffbc6c;transform:translate(-50%,-50%);animation:clayShotCloud .22s ease-out both}@keyframes clayShotCloud{from{opacity:.6}to{opacity:0}}
.flight__row+.flight__row{margin-top:9px}.flight__row .flight__label{font-size:10px;margin-bottom:4px}.flight__row .flight__track>span{padding:5px 0}.plateTags{position:absolute;inset:0;z-index:2;pointer-events:none}.clayTag{position:absolute;transform:translate(-50%,-100%);font-size:10px;font-weight:700;white-space:nowrap;padding:3px 6px;border-radius:5px;background:#172d27b8;text-shadow:0 1px 2px #000}.menu{overflow-y:auto}.menu__panel{margin-block:auto}
@media(max-width:650px) and (max-height:570px){.menu{align-items:flex-start;padding-top:48px;padding-bottom:12px}.menu h1{font-size:36px;margin:8px 0 10px}.menu .lead{display:none}.menu .facts{margin-bottom:10px}.menu .card{min-height:77px;padding:10px}.menu .card b{font-size:16px;margin-bottom:4px}.menu .card span{font-size:9px;line-height:1.4}.menu .menu__rules{font-size:10px;margin:10px 0 6px}.menu .training{font-size:8px}.menu .eyebrow{font-size:8px}}

body[data-embed] #menu{display:none}

body[data-embed][data-mode=demo] #choose{display:none!important}

body[data-host-stage=entry] #hud,body[data-host-stage=entry] #paused,body[data-host-stage=entry] #result{display:none}
