/* The classic meter still determines the layout, so switching never moves PTT. */
.meter-bezel { position: relative; }
.radio[data-meter="digital"] .horizontal-meter-face,
.radio[data-meter="digital"] .network-readout,
.radio[data-meter="dark-bronze"] .horizontal-meter-face,
.radio[data-meter="dark-bronze"] .network-readout { visibility: hidden; }
.digital-meter[hidden] { display: none; }
.digital-meter {
  position: absolute;
  inset: 2px;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) minmax(0, .85fr);
  gap: 8px;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid #85644b;
  border-radius: 4px;
  color: #efeee9;
  background: linear-gradient(100deg, #171918, #090b0a 48%, #171918);
  box-shadow: inset 0 0 0 2px #252725, inset 0 0 16px #000;
  font: 700 11px/1.2 Arial, sans-serif;
  letter-spacing: 0;
}
.digital-meter-header { display: flex; justify-content: space-between; font-size: 8px; color: #b8bcb6; }
.digital-meter-header b { color: #e9dfd1; }
.digital-audio { display: grid; grid-template-rows: auto auto minmax(10px, 1fr); gap: 5px; min-width: 0; }
.digital-heading { display: flex; align-items: center; justify-content: space-between; gap: 6px; min-width: 0; }
.digital-heading strong { white-space: nowrap; font: inherit; }
.digital-heading output { font: 700 13px/1.1 monospace; white-space: nowrap; }
.digital-meter-scale { position: relative; height: 10px; margin: 0 2px; font: 700 8px/1 monospace; color: #a9aea8; }
.digital-meter-scale span { position: absolute; transform: translateX(-50%); }
.digital-meter-scale span:first-child { left: 0; transform: none; }
.digital-meter-scale span:nth-child(2) { left: 25%; }
.digital-meter-scale span:nth-child(3) { left: 50%; }
.digital-meter-scale span:nth-child(4) { left: 75%; }
.digital-meter-scale span:nth-child(5) { left: var(--meter-upper-tick, 90%); }
.digital-meter-scale span:last-child { right: 0; transform: none; color: #ff7771; }
.digital-bar { position: relative; min-height: 10px; max-height: 23px; align-self: stretch; }
.digital-segments { display: grid; grid-template-columns: repeat(30, minmax(0, 1fr)); gap: 2px; height: 100%; }
.digital-segments i { display: block; min-width: 0; background: #17251b; border: 1px solid #263c2a; border-radius: 1px; }
.digital-segments i[data-zone="amber"] { background: #2a2517; border-color: #423721; }
.digital-segments i[data-zone="red"] { background: #301b1a; border-color: #462423; }
.digital-segments i.lit { background: #57d860; border-color: #8af78c; box-shadow: inset 0 -3px 4px #259b39; }
.digital-segments i.lit[data-zone="amber"] { background: #f6b533; border-color: #ffdc85; box-shadow: inset 0 -3px 4px #bb771a; }
.digital-segments i.lit[data-zone="red"] { background: #ed5d50; border-color: #ff9686; box-shadow: inset 0 -3px 4px #b32923; }
.digital-peak { position: absolute; top: -1px; bottom: -1px; width: 2px; background: #ffd372; box-shadow: 0 0 4px #e6a735; transform: translateX(-1px); }
.digital-peak[hidden], .digital-clip[hidden] { display: none; }
.digital-clip { color: #ff8273; font-size: 8px; }
.digital-link { display: grid; grid-template-rows: auto minmax(8px, 1fr) auto; gap: 5px; min-width: 0; padding-top: 7px; border-top: 1px solid #4a504a; }
.digital-link .digital-heading { font-size: 10px; }
.digital-link .digital-heading output { font: inherit; color: #80e789; }
.digital-link .digital-heading output[data-quality="fair"] { color: #ffce6e; }
.digital-link .digital-heading output[data-quality="poor"] { color: #ff8273; }
.digital-link .digital-heading output[data-quality="offline"] { color: #a9aea8; }
.digital-link .digital-segments i { background: #17251b; border-color: #263c2a; }
.digital-link .digital-segments i.lit { background: #57d860; border-color: #8af78c; box-shadow: inset 0 -3px 4px #259b39; }
.digital-link .digital-segments[data-quality="fair"] i.lit { background: #f6b533; border-color: #ffdc85; box-shadow: none; }
.digital-link .digital-segments[data-quality="poor"] i.lit { background: #ed5d50; border-color: #ff9686; box-shadow: none; }
.digital-network-values { display: flex; justify-content: space-between; gap: 6px; font: 700 9px/1.2 monospace; }
.digital-network-values span { white-space: nowrap; }
.digital-network-values b { color: #a9aea8; font-weight: 400; }
.shop-finish-preview[data-finish="digital-meter"] { object-fit: contain; background: #0c0f0d; border-color: #85644b; }
.shop-finish-preview[data-finish="dark-bronze-meter"] { object-fit: contain; background: #171512; border-color: #9c7856; }
.bronze-meter[hidden], .bronze-meter [hidden] { display: none; }
.bronze-meter {
  position: absolute; inset: 1px; min-width: 0; min-height: 0;
  display: grid; grid-template-rows: 12px minmax(31px, 1fr) minmax(31px, 1fr) minmax(44px, 1.3fr) auto 10px;
  gap: 6px; padding: 10px 12px 8px;
  border: 5px solid #654b34; border-radius: 5px;
  background: linear-gradient(110deg, #201e19, #0c0e0d 42%, #181916) padding-box;
  box-shadow: 0 0 0 1px #bd9262, inset 0 0 0 1px #bc906044, inset 0 0 16px #000;
  color: #ffe1ac; font: 700 10px/1.2 Arial, sans-serif; letter-spacing: 0;
}
.bronze-meter::before { content: ""; position: absolute; inset: -5px; border: 5px solid transparent; border-image: repeating-linear-gradient(175deg, #473a2c 0, #876a47 1px, #5a4630 2px, #6e5336 4px) 5; pointer-events: none; }
.bronze-header { display: flex; justify-content: space-between; color: #dca46e; font-size: 8px; }
.bronze-signal { display: grid; grid-template-rows: auto 9px minmax(7px, 1fr); gap: 3px; min-width: 0; }
.bronze-heading { display: flex; align-items: center; gap: 4px; justify-content: space-between; min-width: 0; }
.bronze-heading strong { font: inherit; }
.bronze-heading output { font: 700 12px/1 monospace; white-space: nowrap; margin-left: auto; }
#bronzeClip { color: #ff7d6f; font-size: 8px; }
.bronze-scale { position: relative; height: 9px; color: #d6bd96; font: 700 7px/1 monospace; }
.bronze-scale span { position: absolute; transform: translateX(-50%); }
.bronze-rx-scale span:nth-child(1) { left: 8.33%; }
.bronze-rx-scale span:nth-child(2) { left: 25%; }
.bronze-rx-scale span:nth-child(3) { left: 41.67%; }
.bronze-rx-scale span:nth-child(4) { left: 58.33%; }
.bronze-rx-scale span:nth-child(5) { left: 75%; }
.bronze-rx-scale span:nth-child(6) { left: 83.33%; }
.bronze-rx-scale span:nth-child(7) { left: 91.67%; }
.bronze-scale span:last-child { right: 0; transform: none; color: #eeab8a; }
.bronze-tx-scale span:first-child { left: 0; transform: none; }
.bronze-tx-scale span:nth-child(2) { left: 25%; }
.bronze-tx-scale span:nth-child(3) { left: 50%; }
.bronze-tx-scale span:nth-child(4) { left: 75%; }
.bronze-tx-scale span:nth-child(5) { left: 87.5%; }
.bronze-bar { position: relative; min-height: 7px; }
.bronze-segments { display: grid; grid-template-columns: repeat(30, minmax(0, 1fr)); gap: 2px; height: 100%; min-height: 7px; max-height: 15px; padding: 2px; border: 1px solid #695139; background: #080c09; }
.bronze-segments i { display: block; min-width: 0; background: #24261f; border: 1px solid #35382d; }
.bronze-segments i[data-zone="red"] { background: #36221d; border-color: #54352b; }
.bronze-segments i.lit { background: #8ecb63; border-color: #bcf18b; box-shadow: inset 0 -2px 3px #386b29; }
.bronze-segments i.lit[data-zone="amber"], .bronze-mod i.lit { background: #ffc263; border-color: #ffe2a0; box-shadow: inset 0 -2px 3px #b57624; }
.bronze-segments i.lit[data-zone="red"] { background: #f46b50; border-color: #ff987d; box-shadow: inset 0 -2px 3px #a63322; }
.bronze-information { min-width: 0; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 7px; align-items: center; border-top: 1px solid #936b47; padding-top: 5px; }
.bronze-clock, .bronze-weather { min-width: 0; }
.bronze-clock { display: flex; flex-direction: column; gap: 3px; }
.bronze-clock time { font: 700 28px/1 monospace; font-variant-numeric: tabular-nums; text-shadow: 0 0 8px #ffbc501a; }
#bronzeDate { font-size: 8px; text-transform: uppercase; }
.bronze-weather { padding-left: 7px; border-left: 1px solid #6b5034; }
.bronze-weather > div { display: flex; align-items: center; justify-content: flex-end; gap: 3px; min-height: 24px; }
.bronze-weather img { width: 25px; height: 25px; flex: 0 0 25px; }
.bronze-weather output { white-space: nowrap; font: 700 18px/1 monospace; }
#bronzePlace { display: block; text-align: right; font-size: 9px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bronze-forecast { min-width: 0; border-top: 1px solid #6b5034; padding-top: 4px; text-align: center; }
.bronze-forecast p { margin: 0; font: inherit; overflow-wrap: anywhere; }
#bronzeWeatherDetails { color: #c5ab87; font-size: 8px; margin-top: 2px; }
.bronze-source { display: flex; justify-content: space-between; gap: 4px; min-width: 0; font: 400 7px/1 Arial, sans-serif; color: #b9a78d; }
.bronze-source a { color: inherit; text-decoration: none; }
.bronze-source a:hover, .bronze-source a:focus-visible { text-decoration: underline; color: #ffdc96; }
.bronze-source span { white-space: nowrap; }
@media (max-width: 760px) {
  body:not(.ptt-classic) .digital-meter { gap: 5px; padding: 8px 10px; grid-template-rows: minmax(0, 1fr) minmax(0, 1fr); }
  body:not(.ptt-classic) .digital-meter-header { display: none; }
  body:not(.ptt-classic) .digital-audio { gap: 3px; }
  body:not(.ptt-classic) .digital-link { padding-top: 4px; gap: 3px; }
}
.bronze-meter:not([data-density="normal"]) { grid-template-rows: minmax(25px, 1fr) minmax(25px, 1fr) 35px auto 8px; padding: 5px 8px; gap: 3px; border-width: 3px; }
.bronze-meter:not([data-density="normal"]) .bronze-header { display: none; }
.bronze-meter:not([data-density="normal"]) .bronze-signal { grid-template-rows: 10px 7px minmax(5px, 1fr); gap: 1px; }
.bronze-meter:not([data-density="normal"]) .bronze-heading { font-size: 9px; }
.bronze-meter:not([data-density="normal"]) .bronze-heading output { font-size: 10px; }
.bronze-meter:not([data-density="normal"]) .bronze-scale { height: 7px; font-size: 7px; }
.bronze-meter:not([data-density="normal"]) .bronze-segments { padding: 1px; min-height: 5px; }
.bronze-meter:not([data-density="normal"]) .bronze-information { padding-top: 3px; }
.bronze-meter:not([data-density="normal"]) .bronze-clock { gap: 1px; }
.bronze-meter:not([data-density="normal"]) .bronze-clock time { font-size: 23px; }
.bronze-meter:not([data-density="normal"]) .bronze-weather img { width: 22px; height: 22px; flex-basis: 22px; }
.bronze-meter:not([data-density="normal"]) .bronze-weather output { font-size: 17px; }
.bronze-meter:not([data-density="normal"]) .bronze-forecast { padding-top: 2px; font-size: 9px; }
.bronze-meter:not([data-density="normal"]) #bronzeWeatherDetails { margin-top: 0; font-size: 7px; }
.bronze-meter[data-density="tight"] { grid-template-rows: 25px 25px 32px auto 7px; gap: 2px; padding-block: 3px; }
.bronze-meter[data-density="tight"] #bronzeWeatherDetails { display: none; }
.bronze-meter[data-density="tight"] .bronze-forecast { font-size: 8px; padding-top: 1px; }
.bronze-meter[data-density="tight"] .bronze-information { padding-top: 2px; }
.bronze-meter[data-narrow="true"] .bronze-clock time { font-size: 22px; }
.bronze-meter[data-narrow="true"] .bronze-weather output { font-size: 15px; }
.bronze-meter[data-narrow="true"] .bronze-weather img { width: 18px; height: 18px; flex-basis: 18px; }
.bronze-meter[data-narrow="true"] .bronze-source { font-size: 6px; }
