/* the radio between stops. hidden room, reached by the little dial on each stop's caption */
body[data-page="radio"]{overflow:auto}
.radio{max-width:560px;margin:0 auto;padding:clamp(48px,12vh,120px) 22px 64px;font-size:17px;line-height:1.6;color:#c9cdc5}
.radio .h{font-family:var(--stamp);font-weight:400;font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--lamp);margin:0 0 6px}
.radio .here{font-family:var(--stamp);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#8a918a;margin:0 0 26px}
.set{position:relative;border:1px solid #3a2a20;border-radius:6px;padding:18px 18px 16px;
  background:linear-gradient(180deg,#161b1f,#101317);box-shadow:inset 0 0 0 1px rgba(154,74,34,.18),0 18px 40px rgba(0,0,0,.45)}
.readout{display:flex;align-items:baseline;gap:10px;margin:0 0 12px;font-family:var(--stamp);color:#8a918a;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.readout .fq{font-size:clamp(34px,9vw,48px);letter-spacing:.06em;color:var(--lamp);font-variant-numeric:tabular-nums;line-height:1;text-transform:none}
body[data-radio="off"] .readout .fq{color:#9b8a5c}
.dialband{position:relative;height:34px;margin:0 0 6px;border-top:1px solid #2c3236;border-bottom:1px solid #2c3236;overflow:hidden;
  background-image:linear-gradient(90deg,rgba(207,211,204,.38) 0 1px,transparent 1px),linear-gradient(90deg,rgba(207,211,204,.16) 0 1px,transparent 1px);
  background-size:4.7619% 42%,.95238% 22%;background-position:2.381% 100%,2.381% 100%;background-repeat:repeat-x}
.needle{position:absolute;top:0;bottom:0;left:2.38%;width:2px;margin-left:-1px;background:#e0703f;box-shadow:0 0 8px rgba(224,112,63,.85)}
body[data-radio="on"] .needle{background:#ff7a4a}
.scale{display:flex;justify-content:space-between;padding:0 calc(2.381% - 7px) 0 calc(2.381% - 7px);font-family:var(--stamp);font-size:11px;color:#7f8781;letter-spacing:.04em;margin:0 0 16px}
.what{min-height:1.5em;margin:0 0 14px;font-family:var(--stamp);font-size:12.5px;letter-spacing:.06em;color:#a9b0a8}
.tune{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:10px 18px;border:1px solid #6b4a2c;border-radius:22px;background:#1d1712;color:var(--paper);
  font-family:var(--stamp);font-size:13px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.tune:hover{border-color:var(--amber);color:#fff4da}
.tune:focus-visible{outline:2px solid var(--lamp);outline-offset:3px}
.tune:disabled{opacity:.55;cursor:default}
.tune .lamp{width:9px;height:9px;border-radius:50%;background:#3b2a1c;box-shadow:inset 0 0 0 1px #6b4a2c}
body[data-radio="on"] .tune .lamp{background:var(--emerald);box-shadow:0 0 8px rgba(62,224,138,.85)}
.tunehint{margin:10px 0 0;font-size:13px;color:#8a918a}
.voices{margin:16px 0 0;font-family:var(--stamp);font-size:12.5px;letter-spacing:.06em;color:#b7bdb4}
.radio .poem{margin:40px 0 0;padding-left:16px;border-left:1px solid #3a3f3a;max-width:none;font-size:17px;line-height:1.6;font-style:normal;color:#c9cdc5;text-shadow:none;pointer-events:auto}
.radio .poem .pl{margin:0 0 .35em}
.radio .poem .pl.on{opacity:1}
.radio .poem .sig{color:#c48a64;font-family:var(--stamp);font-size:13px;letter-spacing:.04em;transform:rotate(-2deg)}
.sealed{margin:34px 0 0;font-size:13px;color:#8a918a}
.radio .back{margin:40px 0 0;font-family:var(--stamp);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.radio .back a{color:#9aa39c;text-decoration:none;border-bottom:1px dotted #4a554e;padding:6px 0}
.radio .back a:hover,.radio .back a:focus-visible{color:var(--lamp)}
.radio a:focus-visible{outline:2px solid var(--lamp);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.poem .pl{transition:none;transform:none}}
