/* KatchTV.com brand refresh — loaded last on every page.
   Rusty "Denmark" orange, modern wordmark, and an always-on TV mark. */
:root{
  --signal:#F5A03C;   /* bright golden rust */
  --signal-2:#FFB85C; /* hover */
}

/* ---------- Wordmark ---------- */
.brand-word,.splash-title{font-family:'Outfit',var(--sans);font-weight:600;letter-spacing:-.02em}
.brand-word{font-size:1.38rem;line-height:1}
.brand-word em,.splash-title em{font-family:inherit;font-weight:inherit;letter-spacing:inherit;font-style:normal;color:var(--signal)}
.brand-word .dotcom{font-size:.5em;font-weight:400;letter-spacing:.02em;margin-left:.18em;vertical-align:.18em}
.splash-title{letter-spacing:-.03em;font-weight:500}
.splash-title .dotcom{font-weight:400;letter-spacing:.02em}
.sf-brand .brand-word{font-size:1.55rem}
.brand{gap:12px}

/* ---------- Splash: blinking ON AIR ---------- */
.splash-onair{display:inline-flex;align-items:center;gap:10px;font-size:.9rem;letter-spacing:.3em;color:var(--signal);margin:6px 0 10px;animation:onAir 1.6s steps(1,end) infinite}
.splash-onair .lamp{animation:none;width:9px;height:9px}
@keyframes onAir{0%,100%{opacity:1}55%{opacity:.4}}
@media (prefers-reduced-motion:reduce){.splash-onair{animation:none}}

/* ---------- Always-on TV mark ---------- */
.brand-mark.tv{width:40px;height:33px;overflow:visible;color:var(--paper)}
.brand-mark.tv .tv-screen{fill:var(--signal);animation:tvGlow 3.2s ease-in-out infinite}
.brand-mark.tv .tv-scan{fill:#fff;opacity:.28;animation:tvScan 2.4s linear infinite}
.brand-mark.tv .tv-glow{fill:var(--signal);filter:blur(5px);opacity:.45;animation:tvGlow 3.2s ease-in-out infinite}
@keyframes tvGlow{
  0%,100%{opacity:.95}
  42%{opacity:.35}
  47%{opacity:.8}
  50%{opacity:.4}
  58%{opacity:.9}
}
@keyframes tvScan{
  0%{transform:translateY(0);opacity:0}
  10%{opacity:.3}
  90%{opacity:.3}
  100%{transform:translateY(13px);opacity:0}
}
@media (prefers-reduced-motion:reduce){
  .brand-mark.tv .tv-screen,.brand-mark.tv .tv-glow,.brand-mark.tv .tv-scan{animation:none}
}

/* ---------- Player controls (our public-domain player) ---------- */
.player-slot .pc{position:absolute;inset:auto 14px 14px 14px;width:auto;height:auto;max-height:56px;z-index:5;display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:14px;background:rgba(11,11,14,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);opacity:0;transform:translateY(6px);transition:opacity .2s,transform .2s;pointer-events:none}
.player-slot:hover .pc,.player-slot .pc.show,.player-slot .pc:focus-within{opacity:1;transform:none;pointer-events:auto}
.pc-b{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;color:var(--paper);background:transparent;border:0;cursor:pointer}
.pc-b:hover{background:rgba(255,255,255,.1)}
.pc-b svg{width:20px;height:20px}
.pc-live{display:inline-flex;align-items:center;gap:6px;font:600 .7rem/1 var(--mono);letter-spacing:.14em;color:var(--paper);background:transparent;border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:7px 10px;cursor:pointer}
.pc-live i{width:7px;height:7px;border-radius:50%;background:var(--signal);box-shadow:0 0 8px var(--signal)}
.pc.behind .pc-live{color:var(--muted)}
.pc.behind .pc-live i{background:var(--dim);box-shadow:none}
.pc.behind .pc-live::after{content:"· GO LIVE";color:var(--signal)}
.pc-sp{flex:1}
.pc-vol{width:90px;accent-color:var(--signal)}
@media (max-width:600px){.pc-vol{display:none}}
