*{margin:0;padding:0;box-sizing:border-box}
:root{--bg:#120d0a;--wood:#241812;--panel:#2e1f16;--line:#463327;--amber:#ffb454;--amber2:#ffd28f;
  --txt:#f2e8dc;--dim:#a8917c;--red:#ff4d4d;--green:#57d98a}
body{background:radial-gradient(900px 600px at 50% -10%,#241812 0%,var(--bg) 60%);color:var(--txt);
  font-family:'Noto Sans KR',sans-serif;min-height:100vh;line-height:1.65}
.wrap{max-width:560px;margin:0 auto;padding:24px 16px 56px}
.top{text-align:center;padding:6px 0 16px}
.onair{display:inline-flex;align-items:center;gap:7px;font-size:11px;letter-spacing:3px;font-weight:800;
  color:var(--red);border:1px solid #5c2626;border-radius:100px;padding:5px 14px;background:#2a1212}
.onair .dot{width:8px;height:8px;border-radius:50%;background:var(--red);animation:blink 1.6s infinite}
@keyframes blink{0%,100%{opacity:1;box-shadow:0 0 10px var(--red)}50%{opacity:.35}}
h1{font-size:32px;font-weight:900;letter-spacing:2px;margin:10px 0 8px}
.tg{color:var(--dim);font-size:13.5px}
.tg b{color:var(--amber2)}

.radio{background:linear-gradient(180deg,var(--wood),#1d120c);border:1px solid var(--line);border-radius:22px;
  padding:22px 18px;box-shadow:0 18px 50px #000b, inset 0 1px 0 #ffffff12}
.dial{text-align:center;background:#170e08;border:1px solid var(--line);border-radius:14px;padding:14px;
  box-shadow:inset 0 4px 18px #000a}
.freq{font-size:11px;letter-spacing:4px;color:var(--dim)}
.corner{font-family:'Noto Serif KR',serif;font-size:22px;font-weight:600;color:var(--amber2);margin:6px 0 4px;
  text-shadow:0 0 18px #ffb45444}
.djline{font-size:12px;color:var(--dim)}
.djline b{color:var(--amber)}
.viz{display:flex;justify-content:center;align-items:flex-end;gap:5px;height:34px;margin:16px 0 6px;opacity:.35;transition:.4s}
.viz.live{opacity:1}
.bar{width:7px;background:linear-gradient(180deg,var(--amber2),var(--amber));border-radius:3px;height:6px}
.viz.live .bar{animation:eq 1s ease-in-out infinite}
.viz.live .bar:nth-child(2n){animation-duration:.8s;animation-delay:.15s}
.viz.live .bar:nth-child(3n){animation-duration:1.25s;animation-delay:.3s}
.viz.live .bar:nth-child(5n){animation-duration:.7s;animation-delay:.05s}
@keyframes eq{0%,100%{height:6px}50%{height:30px}}
.power{display:block;width:100%;margin:12px 0 0;background:linear-gradient(135deg,var(--amber),#d98424);
  color:#241302;border:none;border-radius:14px;padding:16px;font-size:17px;font-weight:900;font-family:inherit;
  cursor:pointer;box-shadow:0 6px 22px #ffb45433}
.power.playing{background:#1d120c;color:var(--amber2);border:1px solid var(--amber)}
.script{margin-top:14px;background:#170e08;border:1px solid var(--line);border-radius:12px;padding:14px;
  font-size:13.5px;color:#cdbba8;max-height:180px;overflow-y:auto;line-height:1.9;display:none;white-space:pre-wrap}
.script.show{display:block}
.script .lb{font-size:11px;color:var(--dim);letter-spacing:2px;display:block;margin-bottom:6px}

.sched{margin-top:18px}
.sh{font-size:13px;font-weight:800;color:var(--amber2);letter-spacing:1px;margin-bottom:9px}
.schedlist{display:flex;flex-direction:column;gap:6px}
.schedrow{display:flex;align-items:center;gap:10px;background:#1c120c;border:1px solid var(--line);
  border-radius:11px;padding:9px 13px;font-size:13.5px}
.schedrow.now{border-color:var(--amber);background:#241708}
.schedrow .tag{font-size:10.5px;color:var(--dim);border:1px solid var(--line);border-radius:100px;padding:2px 9px;white-space:nowrap}
.schedrow.now .tag{color:var(--red);border-color:#5c2626;font-weight:800}
.schedrow .tt{flex:1}
.schedrow .eta{font-size:11.5px;color:var(--dim)}

.storybox{margin-top:20px;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px}
.storybox input,.storybox textarea{width:100%;background:#170e08;border:1px solid var(--line);border-radius:11px;
  color:var(--txt);padding:11px 13px;font-size:14.5px;font-family:inherit;margin-top:8px;resize:vertical}
.storybox input:focus,.storybox textarea:focus{outline:none;border-color:var(--amber)}
#storyBtn{width:100%;margin-top:10px;background:linear-gradient(135deg,var(--amber),#d98424);color:#241302;
  border:none;border-radius:12px;padding:13px;font-size:15px;font-weight:800;font-family:inherit;cursor:pointer}
#storyBtn:disabled{opacity:.5}
.storymsg{margin-top:9px;font-size:13px;color:var(--green);text-align:center;min-height:18px}
.foot{text-align:center;color:#6e5a48;font-size:11px;margin-top:32px;line-height:1.8}
@media(max-width:420px){h1{font-size:27px}.corner{font-size:19px}}
