/* /overlay/ death counter (docs/STREAMERS.md). The card is the game's look: ink, fire, bone. */
.ov-solo-stage{display:none}
.ov-card{--k:var(--ov-scale,1);position:relative;display:inline-flex;align-items:center;gap:calc(14px*var(--k));
  padding:calc(12px*var(--k)) calc(26px*var(--k)) calc(12px*var(--k)) calc(18px*var(--k));border-radius:calc(22px*var(--k));
  background:#0d0809;color:#efe4cf;box-shadow:0 0 0 calc(2px*var(--k)) rgba(255,74,28,.55),0 calc(10px*var(--k)) calc(30px*var(--k)) rgba(0,0,0,.35);
  font-family:"Grotesk",system-ui,sans-serif;line-height:1;transform-origin:left center}
.ov-skull{width:calc(54px*var(--k));height:calc(54px*var(--k));fill:#ff4a1c;flex:none}
.ov-num{font-size:calc(72px*var(--k));font-weight:850;letter-spacing:-.04em;font-variant-numeric:tabular-nums;min-width:1ch}
.ov-meta{display:flex;flex-direction:column;gap:calc(6px*var(--k))}
.ov-lbl{font-size:calc(17px*var(--k));font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#ff4a1c}
.ov-sub{font-size:calc(14px*var(--k));font-weight:700;color:rgba(239,228,207,.75);max-width:calc(320px*var(--k));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ov-dot{position:absolute;top:calc(10px*var(--k));right:calc(10px*var(--k));width:calc(8px*var(--k));height:calc(8px*var(--k));border-radius:50%;background:rgba(239,228,207,.25)}
.ov-live .ov-dot{background:#6fe04a;box-shadow:0 0 calc(8px*var(--k)) #6fe04a}
.ov-pop .ov-num{animation:ov-pop .45s cubic-bezier(.2,.7,.1,1)}
.ov-pop .ov-skull{animation:ov-shake .4s linear}
@keyframes ov-pop{0%{transform:scale(1.45);color:#ff4a1c}100%{transform:scale(1);color:inherit}}
@keyframes ov-shake{0%,100%{transform:none}25%{transform:rotate(-12deg)}75%{transform:rotate(12deg)}}
@media (prefers-reduced-motion:reduce){.ov-pop .ov-num,.ov-pop .ov-skull{animation:none}}

/* Page mode: preview and settings. */
.ov-panel{background:#0d0809;color:#efe4cf;border-radius:22px;padding:28px;margin:8px 0 40px}
.ov-panel a{color:#ff8a5c}
.ov-preview{min-height:110px;display:flex;align-items:center;padding:6px 0 10px;overflow:hidden}
html.ov-bg-green .ov-preview{background:#00b140;border-radius:14px;padding:16px}
html.ov-bg-clear .ov-preview{background:repeating-conic-gradient(#2a2220 0 25%,#1a1416 0 50%) 0 0/20px 20px;border-radius:14px;padding:16px}
.ov-status{font-size:16px;margin:6px 0 18px;color:rgba(239,228,207,.85)}
.ov-controls{display:flex;flex-wrap:wrap;gap:14px 22px;margin-bottom:18px}
.ov-controls label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#ff8a5c}
.ov-controls select{min-height:44px;font:600 16px/1.2 "Grotesk",system-ui,sans-serif;padding:8px 10px;border-radius:10px;border:1px solid rgba(239,228,207,.3);background:#1a1416;color:#efe4cf}
.ov-actions{display:flex;flex-wrap:wrap;gap:12px}
.ov-btn{font:800 17px/1 "Grotesk",system-ui,sans-serif;padding:13px 20px;border-radius:99px;border:0;background:#ff4a1c;color:#0d0809;cursor:pointer}
.ov-btn-ghost{background:transparent;color:#efe4cf;box-shadow:inset 0 0 0 2px rgba(239,228,207,.4)}
.ov-note{font-size:14px;color:rgba(239,228,207,.6);margin:16px 0 0}
.ov-page code{font-size:.85em;word-break:break-all}

/* Solo mode (?popup=1, ?obs=1): only the counter, for OBS Window Capture. */
html.ov-solo,html.ov-solo body{background:#1a1416;overflow:hidden;min-height:100vh}
html.ov-solo.ov-bg-green,html.ov-solo.ov-bg-green body{background:#00b140}
html.ov-solo.ov-bg-clear,html.ov-solo.ov-bg-clear body{background:transparent}
html.ov-solo body>:not(main){display:none!important}
html.ov-solo main>:not(.ov-solo-stage){display:none!important}
html.ov-solo .ov-solo-stage{display:flex;align-items:center;justify-content:flex-start;min-height:100vh;padding:0 calc(18px*var(--ov-scale,1));box-sizing:border-box}
html.ov-solo.ov-bg-green .ov-card,html.ov-solo.ov-bg-clear .ov-card{box-shadow:0 0 0 calc(2px*var(--ov-scale,1)) rgba(255,74,28,.55)}
