.chosen-radio{
  --cr-bg:#12100e;
  --cr-card:#1a1815;
  --cr-line:#2b2823;
  --cr-line2:#3a352f;
  --cr-text:#f5f1e8;
  --cr-muted:#a8a29a;
  --cr-dim:#7a7670;
  --cr-amber:#EA412C;
  --cr-amber2:#C93424;
  --cr-red:#EA412C;
  --cr-green:#5AA61C;
  font-family:inherit;
  background: var(--cr-card);
  border:1px solid var(--cr-line);
  border-radius:16px;
  overflow:hidden;
  max-width:560px;
  color:var(--cr-text);
  box-shadow: 0 12px 40px rgba(0,0,0,0.35);
  box-sizing:border-box;
}
.chosen-radio *{box-sizing:border-box}
.cr-radio-launcher{
  position:fixed;
  z-index:999999;
  left:20px;
  bottom:max(20px, env(safe-area-inset-bottom));
  width:54px;
  height:54px;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  background:#EA412C;
  border:0;
  border-radius:50%;
  box-shadow:0 8px 24px rgba(42,32,25,0.25);
  cursor:pointer;
  box-sizing:border-box;
  transition:transform .15s ease, background .15s ease, box-shadow .15s ease;
}
.cr-radio-launcher:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(42,32,25,0.30)}
.cr-radio-launcher:focus-visible,.cr-collapse:focus-visible{outline:3px solid rgba(234,65,44,.35);outline-offset:3px}
.cr-radio-launcher.is-playing{background:#5AA61C}
.cr-launcher-dot{
  position:absolute;
  top:3px;
  right:3px;
  width:10px;
  height:10px;
  border:2px solid #fff;
  border-radius:50%;
  background:#5AA61C;
}
.cr-radio-launcher.is-playing .cr-launcher-dot{animation:crPulse 1.2s infinite}
.chosen-radio.is-sticky{
  --cr-card:#fff;
  --cr-line:#dedad4;
  --cr-line2:#c7c1b8;
  --cr-text:#171512;
  --cr-muted:#68635c;
  --cr-dim:#817b73;
  position:fixed;
  z-index:999999;
  left:20px;
  right:auto;
  bottom:max(20px, env(safe-area-inset-bottom));
  width:min(340px, calc(100vw - 40px));
  max-width:340px;
  min-height:0;
  padding:11px;
  display:block;
  transform:none;
  background:#fff;
  border:1px solid var(--cr-line);
  border-radius:14px;
  box-shadow:0 12px 38px rgba(31,26,20,0.18);
}
.chosen-radio.is-sticky.is-collapsed{display:none}
.cr-collapse{
  position:absolute;
  z-index:2;
  top:8px;
  right:8px;
  width:32px;
  height:32px;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#68635c;
  background:#f7f5f2;
  border:1px solid #dedad4;
  border-radius:50%;
  cursor:pointer;
}
.cr-collapse:hover{color:#171512;background:#efebe5}
.chosen-radio.is-sticky .cr-head{
  padding:0 38px 7px 0;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  border:0;
  border-bottom:1px solid var(--cr-line);
  background:transparent;
}
.chosen-radio.is-sticky .cr-body{padding:8px 0;gap:10px}
.chosen-radio.is-sticky .cr-play{width:44px;height:44px}
.chosen-radio.is-sticky .cr-play{
  background:#fff;
  border-color:#d4cec5;
  color:var(--cr-red);
  box-shadow:0 3px 12px rgba(31,26,20,0.10);
}
.chosen-radio.is-sticky .cr-title{font-size:15px}
.chosen-radio.is-sticky .cr-sub,
.chosen-radio.is-sticky .cr-data-hint{display:none}
.chosen-radio.is-sticky .cr-status{
  margin-top:5px;
  padding:4px 8px;
  background:#f7f5f2;
}
.chosen-radio.is-sticky .cr-controls{
  padding:6px 0 0;
  border:0;
  border-top:1px solid var(--cr-line);
  background:transparent;
}
.chosen-radio.is-sticky .cr-mute{background:#fff;border-color:#d4cec5;color:var(--cr-text)}
.chosen-radio.is-sticky .cr-mute:hover{background:#f7f5f2}
.chosen-radio.is-sticky .cr-mute.is-muted{background:var(--cr-amber);border-color:var(--cr-amber);color:#211605}
.chosen-radio.is-sticky .cr-live{color:var(--cr-red);border-color:#f1b6ae;background:#fff4f2}
.chosen-radio.is-sticky .cr-live.is-playing{color:#fff;background:var(--cr-green);border-color:var(--cr-green)}
.chosen-radio.is-sticky .cr-foot{display:none}
.cr-head{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 14px;
  border-bottom:1px solid var(--cr-line);
  background: linear-gradient(180deg,#1e1c19,#161410);
  gap:12px;
}
.cr-church{
  font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--cr-muted);
  font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;
}
.cr-live{
  display:inline-flex;align-items:center;gap:6px;
  font-size:10px;letter-spacing:0.14em;font-weight:700;
  color:var(--cr-amber);
  border:1px solid #3a3120;background:#1c1a16;
  padding:5px 10px;border-radius:999px;white-space:nowrap;flex:0 0 auto;
}
.cr-live.is-playing{color:#fff;background:var(--cr-green);border-color:var(--cr-green)}
.cr-dot{width:7px;height:7px;border-radius:50%;background:var(--cr-red);box-shadow:0 0 8px var(--cr-red);animation:crPulse 1.2s infinite}
.cr-live.is-playing .cr-dot{background:#fff;box-shadow:0 0 8px rgba(255,255,255,0.8)}
.cr-body{
  display:flex;gap:16px;align-items:center;
  padding:18px 16px 14px;
}
.cr-play{
  flex:0 0 auto;
  width:64px;height:64px;border-radius:50%;
  border:1px solid #2f2c27;
  background: radial-gradient(circle at 30% 30%, #3a3631, #141311 68%);
  color:var(--cr-text);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  cursor:pointer;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 8px 18px rgba(0,0,0,0.45);
  transition: transform 0.12s, border-color 0.12s, background 0.12s;
}
.cr-play:hover{transform:translateY(-1px);border-color:var(--cr-line2)}
.cr-play:active{transform:scale(0.97)}
.cr-play:disabled{cursor:wait;opacity:0.62;transform:none}
.cr-play.is-playing{border-color:rgba(255,184,77,0.45);color:var(--cr-amber)}
.cr-play.is-playing .cr-play-icon{display:none}
.cr-play.is-playing .cr-play-icon-pause{display:block !important}
.cr-meta{flex:1;min-width:0}
.cr-title{font-family:inherit;font-size:18px;font-weight:700;line-height:1.15;color:var(--cr-text)}
.cr-sub{font-size:12px;color:var(--cr-muted);margin-top:3px;line-height:1.4}
.cr-status{
  display:flex;align-items:center;gap:7px;margin-top:10px;
  font-size:11px;color:var(--cr-muted);
  background:#0d0c0b;border:1px solid var(--cr-line);border-radius:999px;
  padding:6px 10px;display:inline-flex;max-width:100%;
}
.cr-status-dot{width:7px;height:7px;border-radius:50%;background:var(--cr-dim);flex:0 0 auto}
.cr-status.is-buffering .cr-status-dot{background:var(--cr-amber);box-shadow:0 0 8px var(--cr-amber)}
.cr-status.is-playing .cr-status-dot{background:var(--cr-green);box-shadow:0 0 8px var(--cr-green)}
.cr-status.is-error .cr-status-dot{background:var(--cr-red)}
.cr-status-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cr-offline{white-space:normal}
.cr-data-hint{font-size:10px;color:var(--cr-dim);margin-top:8px;line-height:1.4}
.cr-controls{
  display:flex;align-items:center;gap:10px;
  padding:12px 14px;
  border-top:1px solid var(--cr-line);
  background:#131210;
}
.cr-vol-label{font-size:10px;letter-spacing:0.1em;text-transform:uppercase;color:var(--cr-muted);font-weight:600}
.cr-vol{flex:1;accent-color:var(--cr-amber);height:28px;min-width:44px;cursor:pointer}
.cr-mute{
  font-size:11px;letter-spacing:0.06em;
  background:#1a1917;border:1px solid var(--cr-line);color:var(--cr-text);
  min-height:40px;padding:7px 11px;border-radius:999px;cursor:pointer;
}
.cr-mute:hover{border-color:var(--cr-line2)}
.cr-mute.is-muted{background:var(--cr-amber);color:#1a1205;border-color:var(--cr-amber)}
.cr-vol-val{font-size:11px;color:var(--cr-muted);min-width:36px;text-align:right;font-variant-numeric:tabular-nums}
.cr-foot{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:10px 14px;
  border-top:1px solid var(--cr-line);
  background:#0d0c0b;
  font-size:10px;color:var(--cr-dim);
}
.cr-foot-left{line-height:1.4}
.cr-yt-link{color:var(--cr-muted);white-space:nowrap;font-weight:600}
.cr-player-wrap{
  position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none;
}
.cr-error{
  margin:0 14px 14px;background:rgba(255,59,48,0.08);border:1px solid rgba(255,59,48,0.18);
  color:#ffb4ad;padding:10px 12px;border-radius:10px;font-size:12px;line-height:1.5;
}

@keyframes crPulse{0%,100%{opacity:1}50%{opacity:0.35}}

/* Widget / narrow context */
@media (max-width:480px){
  .cr-body{flex-direction:column;align-items:flex-start}
  .cr-play{width:56px;height:56px}
  .cr-foot{flex-direction:column;align-items:flex-start}
  .chosen-radio.is-sticky .cr-body{flex-direction:row;align-items:center}
  .chosen-radio.is-sticky .cr-play{width:44px;height:44px}
  .chosen-radio.is-sticky .cr-vol-label{display:none}
}
@media (max-width:900px){
  .chosen-radio.is-sticky{left:14px;bottom:max(14px, env(safe-area-inset-bottom))}
  .cr-radio-launcher{left:14px;bottom:max(14px, env(safe-area-inset-bottom))}
}
@media (max-width:600px){
  .chosen-radio.is-sticky{
    left:10px;
    bottom:max(10px, env(safe-area-inset-bottom));
    width:calc(100vw - 20px);
    max-width:none;
    padding:12px;
  }
  .cr-radio-launcher{left:10px;bottom:max(10px, env(safe-area-inset-bottom))}
  .chosen-radio.is-sticky .cr-church{max-width:55vw}
}
@media (max-height:480px){
  .chosen-radio.is-sticky{bottom:6px}
  .chosen-radio.is-sticky .cr-head{display:none}
  .chosen-radio.is-sticky .cr-body{padding:7px 0}
  .chosen-radio.is-sticky .cr-controls{padding:5px 0 0}
}
