/* An independent overlay preserves every existing radio control's geometry. */
#radio[data-meter="analog-s"] .horizontal-meter-face { visibility:hidden; }
#radio .analog-s-meter[hidden] { display:none; }
#radio .analog-s-meter {
  position:absolute; inset:2px 2px 30px; min-width:0; min-height:0;
  overflow:hidden; overflow:clip; display:flex; align-items:center; justify-content:center;
  border:7px solid; border-color:#74766c #35372f #f1f0df #b1b3a3;
  background:linear-gradient(115deg,#e6e6ca,#d9dcba 65%,#dfe1c3);
  box-shadow:inset 0 0 0 2px #f7f7e7,inset 0 0 0 4px #bfc3a8,inset 0 2px 12px #74765c44;
  isolation:isolate; pointer-events:none;
}
#radio .analog-s-meter::after {
  content:""; position:absolute; inset:3px; pointer-events:none;
  border:1px solid #ffffec88;
  background:linear-gradient(168deg,#ffffff12,transparent 32%,transparent 85%,#ffffff0a);
}
#radio .analog-s-meter > svg { display:block; width:100%; height:100%; min-height:0; overflow:hidden; }
#radio .analog-s-needle { filter:drop-shadow(3px 1px 2px #26281d66); }
#radio[data-meter="analog-s"] .network-readout { position:relative; }
#radio[data-meter="analog-s"] .has-radio-ticker > .analog-s-meter { bottom:calc(var(--ticker-space) + var(--ticker-inset) + 28px); }
@media (orientation:landscape) and (max-height:600px) and (pointer:coarse) {
  #radio .analog-s-meter { bottom:26px; border-width:4px; }
  #radio[data-meter="analog-s"] .has-radio-ticker > .analog-s-meter { bottom:calc(var(--ticker-space) + var(--ticker-inset) + 22px); }
}
body.compact-radio:not(.compact-meter-open) #radio .analog-s-meter { bottom:2px; border-width:2px; }
body.compact-radio:not(.compact-meter-open) #radio[data-meter="analog-s"] .has-radio-ticker > .analog-s-meter { bottom:calc(var(--ticker-space) + var(--ticker-inset)); }
