/* Electric-lime recovery HUD. Amounts stay readable while the optional reels move. */
:root :is(#recoupment,#store-recoupment) .recovery-hud.arcade-hp{
  --hp-accent:var(--arcade-lime,#ceff24);--hp-edge:#739122;--hp-muted:#c7cfb2;
  position:relative;isolation:isolate;min-width:0;max-width:none;padding:25px 28px;
  color:#f7ffe0;background:#080c09;border:2px solid var(--hp-accent);
  box-shadow:inset 0 0 0 5px #10170a,7px 7px 0 #5c33a6;clip-path:none;
  text-wrap:pretty;
}
:root :is(#recoupment,#store-recoupment) .arcade-hp::before{
  content:'';position:absolute;inset:8px;z-index:-1;pointer-events:none;opacity:.2;
  background-image:linear-gradient(#ceff2410 1px,transparent 1px),linear-gradient(90deg,#ceff2410 1px,transparent 1px);background-size:16px 16px;
}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-heading{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 18px;font:600 12px/1.5 Arial,'Hiragino Sans',sans-serif;letter-spacing:.04em}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-heading>strong{color:var(--hp-accent);font:600 21px/1.1 'OUT Pixel','Courier New',monospace;letter-spacing:.025em}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-icon{font-size:22px;line-height:1;color:var(--hp-accent);text-shadow:2px 2px #6537aa}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-state{margin-left:auto;max-width:100%;padding:5px 8px;border:1px solid #6e794b;color:#e8f6c5;background:#17200d;font:700 10px/1.4 Arial,'Hiragino Sans',sans-serif;letter-spacing:.05em}
:root :is(#recoupment,#store-recoupment) .arcade-hp[data-recovery-state=confirmed] .hp-state{color:#090d04;background:var(--hp-accent);border-color:var(--hp-accent)}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-counter{min-width:0;padding:19px 17px 16px;background:#11150d;border:1px solid #3c4723;box-shadow:inset 0 3px #0007}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-counter-label{display:block;margin:0 0 12px;color:#cfddac;font:700 11px/1.5 Arial,'Hiragino Sans',sans-serif;letter-spacing:.1em}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-counter-value{display:flex;align-items:baseline;gap:12px;min-width:0;color:var(--hp-accent);font:600 clamp(44px,5.8vw,78px)/1 'OUT Pixel','Courier New',monospace;letter-spacing:0;text-shadow:3px 3px 0 #6537aa;font-variant-numeric:tabular-nums;white-space:nowrap}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-currency{font:600 .28em/1 'OUT Pixel','Courier New',monospace;letter-spacing:0;text-shadow:1px 1px #6537aa}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-odometer{display:inline-flex;align-items:start;max-width:100%;gap:2px;height:1em}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-digit{display:block;flex:0 0 auto;width:.62em;height:1em;overflow:hidden;background:#18200e;border-bottom:2px solid #758837;line-height:1}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-reel{display:block;transform:translateY(-20em);will-change:auto;line-height:1}
:root :is(#recoupment,#store-recoupment) .arcade-hp.is-replaying .hp-reel{will-change:transform}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-reel>span{display:block;height:1em;line-height:1;text-align:center}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-punctuation{display:block;width:.32em;line-height:1}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-counter-caption{margin:13px 0 0;color:var(--hp-muted);font:13px/1.65 Arial,'Hiragino Sans',sans-serif;max-width:65ch}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-track{position:relative;isolation:isolate;margin-top:16px;min-height:38px;overflow:hidden;background:#1b2410;border:2px solid #739122;box-shadow:inset 0 3px #0005;clip-path:none}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-track.is-pending{background:repeating-linear-gradient(90deg,#1b2410 0 calc(5% - 3px),#080c09 calc(5% - 3px) 5%)}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-track::after{content:'';display:block;position:absolute;z-index:1;inset:0;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0 calc(5% - 3px),#080c09 calc(5% - 3px) 5%);opacity:.9}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-fill{display:block;position:absolute;inset:0 auto 0 0;width:var(--recovery-percent,0%);background:linear-gradient(#e6ff8f 0 16%,var(--hp-accent) 16% 80%,#83b011 80%);box-shadow:none}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-track-label{position:relative;z-index:2;display:block;width:fit-content;max-width:calc(100% - 14px);margin:5px auto;padding:3px 8px;color:#f6ffe1;background:#080c09e8;font:700 10px/1.5 Arial,'Hiragino Sans',sans-serif;letter-spacing:.035em;text-align:center}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:none;margin:19px 0 0}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-stats>div{min-width:0;border-left:2px solid #6537aa;padding-left:11px}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-stats span{display:block;color:var(--hp-muted);font:12px/1.6 Arial,'Hiragino Sans',sans-serif;margin:0 0 5px}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-stats strong{display:block;color:#f7ffe0;font:600 clamp(17px,1.7vw,23px)/1.3 'OUT Pixel',Arial,'Hiragino Sans',sans-serif;letter-spacing:0;overflow-wrap:anywhere;text-wrap:pretty}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:1px dashed #46512a}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-status-mark{font:600 12px/1.4 'OUT Pixel','Courier New',monospace;letter-spacing:.06em;color:#b59acc}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-replay{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;max-width:100%;padding:9px 12px;border:1px solid #8da24a;color:var(--hp-accent);background:#141e0c;box-shadow:3px 3px 0 #4c2d74;font:700 12px/1.5 Arial,'Hiragino Sans',sans-serif;cursor:pointer}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-replay:hover:not(:disabled){background:var(--hp-accent);color:#080c09}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-replay:focus-visible{outline:3px solid #fff;outline-offset:4px}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-replay:disabled{color:#a6b18d;border-color:#4c5737;cursor:default;box-shadow:none}
:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-note{margin:18px 0 0;max-width:76ch;color:#e0e8d1;font:14px/1.7 Arial,'Hiragino Sans',sans-serif}
:root :is(#recoupment,#store-recoupment) .arcade-hp .aggregate-status{margin:10px 0 0;max-width:76ch;color:#aab997;font:12px/1.65 Arial,'Hiragino Sans',sans-serif}
#store-recoupment{padding-top:34px;padding-bottom:42px}
#store-recoupment h2{font-size:clamp(28px,3vw,38px);line-height:1.2;text-wrap:balance;margin:9px 0 22px}
@media(max-width:600px){
  :root :is(#recoupment,#store-recoupment) .recovery-hud.arcade-hp{padding:20px 16px;box-shadow:5px 5px 0 #5c33a6}
  :root :is(#recoupment,#store-recoupment) .arcade-hp .hp-heading{gap:8px;margin-bottom:14px}
  :root :is(#recoupment,#store-recoupment) .arcade-hp .hp-heading>strong{font-size:19px}
  :root :is(#recoupment,#store-recoupment) .arcade-hp .hp-state{margin-left:0;width:auto;font-size:9px}
  :root :is(#recoupment,#store-recoupment) .arcade-hp .hp-counter{padding:16px 11px}
  :root :is(#recoupment,#store-recoupment) .arcade-hp .hp-counter-value{font-size:clamp(32px,9vw,52px);gap:7px;text-shadow:2px 2px #6537aa}
  :root :is(#recoupment,#store-recoupment) .arcade-hp .hp-odometer{gap:1px}
  :root :is(#recoupment,#store-recoupment) .arcade-hp .hp-counter-label{font-size:10px;letter-spacing:.06em}
  :root :is(#recoupment,#store-recoupment) .arcade-hp .hp-counter-caption{font-size:12px}
  :root :is(#recoupment,#store-recoupment) .arcade-hp .hp-stats{grid-template-columns:1fr 1fr;gap:10px}
  :root :is(#recoupment,#store-recoupment) .arcade-hp .hp-stats strong{font-size:17px}
  :root :is(#recoupment,#store-recoupment) .arcade-hp .hp-track-label{font-size:9px;letter-spacing:0}
  :root :is(#recoupment,#store-recoupment) .arcade-hp .hp-note{font-size:13px}
  :root :is(#recoupment,#store-recoupment) .arcade-hp .hp-actions{gap:9px}
}
@media(prefers-reduced-motion:reduce){:root :is(#recoupment,#store-recoupment) .arcade-hp .hp-reel{transform:translateY(-20em)!important}}
html[data-motion=off] :is(#recoupment,#store-recoupment) .arcade-hp .hp-reel{transform:translateY(-20em)!important}
