/*
Theme Name: K7RL Signal – Dual Radio Local/Remote Frequency
Theme URI: https://k7rl.com/
Description: Child of K7RL Signal 2026; adds a prominent homepage streaming sign and player while retaining the parent design.
Author: K7RL
Template: k7rl-signal-2026-v155
Version: 1.6.0
Text Domain: k7rl-live-dual-flex-source-v160
*/

/* Scoped homepage radio-station sign */
#k7rl-home-live-audio { box-sizing: border-box; position: relative; z-index: 2; width: 100%; padding: 22px clamp(20px,4vw,44px); background: linear-gradient(100deg,#0a1722 0%,#112c3e 55%,#0b1924 100%); border-block: 1px solid rgba(98,208,255,.26); color: #edf6ff; font-family: inherit; }
#k7rl-home-live-audio * { box-sizing: border-box; }
#k7rl-home-live-audio .kl-inner { width: 100%; max-width: 1242px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
#k7rl-home-live-audio .kl-left { flex: 1 1 520px; min-width: 250px; }
#k7rl-home-live-audio .kl-eyebrow { font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: #62d0ff; font-weight: 800; line-height: 1.4; margin: 0 0 5px; }
#k7rl-home-live-audio h2 { color: #fff; font-size: clamp(23px,2.8vw,35px); font-weight: 850; letter-spacing: -.03em; line-height: 1.1; margin: 0 0 7px; }
#k7rl-home-live-audio h2 span { color: #62d0ff; }
#k7rl-home-live-audio .kl-desc { color: #bdd3df; font-size: 14px; line-height: 1.55; margin: 0 0 13px; }
#k7rl-home-live-audio audio { width: 100%; max-width: 490px; display: block; height: 42px; color-scheme: light; border-radius: 8px; }
#k7rl-home-live-audio .kl-right { flex: 0 0 286px; text-align: center; }
#k7rl-home-live-audio #stream_info_status { display: flex; justify-content: center; align-items: center; gap: 13px; min-height: 80px; width: 100%; border: 3px solid #556271; border-radius: 13px; background: linear-gradient(165deg,#243648 0%,#111d2b 100%); color:#bdc9d3; font-size: 31px; font-weight: 950; letter-spacing: .14em; line-height: 1.15; text-shadow: 0 2px 2px rgba(0,0,0,.35); box-shadow: inset 0 3px 1px rgba(255,255,255,.09), inset 0 -5px 12px rgba(0,0,0,.4), 0 12px 22px rgba(0,0,0,.28); transition: background .25s, box-shadow .25s, color .25s; white-space: nowrap; padding: 10px 14px; text-transform: uppercase; }
#k7rl-home-live-audio #stream_info_status::before { content: ''; width: 16px; height: 16px; flex: 0 0 16px; border-radius: 50%; background: #617484; box-shadow: inset 0 0 5px #0d1520; }
#k7rl-home-live-audio #stream_info_status[data-state="on"] { background: linear-gradient(160deg,#a31722,#5a0c11); border-color: #ff8784; color:#fff4ed; text-shadow: 0 0 14px rgba(255,135,135,.95),0 0 24px rgba(255,88,88,.55); box-shadow: inset 0 2px 1px rgba(255,255,255,.19),inset 0 -6px 12px #340308,0 0 17px rgba(255,41,41,.75),0 0 38px rgba(255,41,41,.35); }
#k7rl-home-live-audio #stream_info_status[data-state="on"]::before { background:#ff6565; box-shadow: 0 0 0 4px rgba(255,123,123,.18),0 0 15px 6px rgba(255,75,75,.68); }
#k7rl-home-live-audio #stream_info_status[data-state="off"] { border-color:#435062; background:linear-gradient(160deg,#263645,#142230); color:#acbac5; text-shadow:none; box-shadow:inset 0 2px 1px rgba(255,255,255,.05), inset 0 -5px 12px rgba(0,0,0,.4),0 10px 20px rgba(0,0,0,.22); }
#k7rl-home-live-audio .kl-lower { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top: 12px; font-size: 12px; font-weight: 700; }
#k7rl-home-live-audio .kl-lower .kl-listeners { color:#b0c9d8; }
#k7rl-home-live-audio .kl-lower a { color: #80deff; text-decoration: none; border-bottom:1px solid rgba(128,222,255,.4); padding-bottom:2px; }
#k7rl-home-live-audio .kl-lower a:hover { color:#fff; border-bottom-color:#fff; }
@media(max-width:760px){ #k7rl-home-live-audio { padding:22px 20px; } #k7rl-home-live-audio .kl-inner { flex-wrap: wrap; gap:19px; } #k7rl-home-live-audio .kl-left { flex-basis: 100%; } #k7rl-home-live-audio .kl-right { flex: 1 1 100%; max-width:400px; } #k7rl-home-live-audio #stream_info_status { font-size:28px; } }


/* Frequency module, shared by home page and dedicated Live Audio page */
#k7rl-home-live-audio .kl-frequency,
#k7rl-live-stream .kl-frequency { margin-top: 14px; background: #091b2a; border: 1px solid #345872; border-radius: 11px; padding: 13px 16px; color: #e8f5ff; text-align: left; }
#k7rl-home-live-audio .kl-frequency[hidden],
#k7rl-live-stream .kl-frequency[hidden] { display:none!important; }
#k7rl-home-live-audio .kl-freq-kicker,
#k7rl-live-stream .kl-freq-kicker { font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #83d9ff; }
#k7rl-home-live-audio .kl-freq-value,
#k7rl-live-stream .kl-freq-value { font-size: clamp(21px,2.4vw,29px); font-variant-numeric: tabular-nums; font-weight: 850; letter-spacing: -.02em; line-height: 1.25; color:#fff; margin:6px 0 4px; }
#k7rl-home-live-audio .kl-freq-value small,
#k7rl-live-stream .kl-freq-value small { font-size: 11px; letter-spacing: .03em; color: #a1cbe1; font-weight: 700; }
#k7rl-home-live-audio .kl-freq-meta,
#k7rl-live-stream .kl-freq-meta { color: #b3d0df; font-size: 12px; line-height: 1.5; }
#k7rl-home-live-audio .kl-freq-call,
#k7rl-live-stream .kl-freq-call { color:#fff; font-size: 13px; font-weight: 750; margin-bottom: 8px; }


/* Active contest details, right under the frequency readout */
#k7rl-home-live-audio .kl-contest,
#k7rl-live-stream .kl-contest { margin-top: 14px; padding-top: 12px; border-top: 1px solid #36556e; }
#k7rl-home-live-audio .kl-contest[hidden],
#k7rl-live-stream .kl-contest[hidden] { display: none !important; }
#k7rl-home-live-audio .kl-contest-label,
#k7rl-live-stream .kl-contest-label { display:block; text-transform:uppercase; letter-spacing:.12em; font-size:10px; color:#80d9ff; font-weight:850; margin-bottom:6px; }
#k7rl-home-live-audio .kl-contest-name,
#k7rl-live-stream .kl-contest-name { color:#fff; font-size:clamp(16px,2.1vw,20px); font-weight:800; letter-spacing:-.025em; line-height:1.2; }
#k7rl-home-live-audio .kl-contest-category,
#k7rl-live-stream .kl-contest-category { color:#d2eaff; background:#153650; border:1px solid #355c76; display:inline-block; border-radius:6px; font-size:12px; font-weight:750; margin-top:9px; padding:5px 8px; line-height:1.35; }
#k7rl-home-live-audio .kl-contest-category[hidden],
#k7rl-live-stream .kl-contest-category[hidden] { display:none !important; }

/* Flex station panel, mounted directly beneath the existing K4D home panel. */
#k7rl-home-flex-audio { box-sizing:border-box; position:relative; z-index:2; padding:22px clamp(20px,4vw,44px); color:#edf6ff; background:linear-gradient(110deg,#0a1b2b,#102d43 60%,#091925); border-bottom:1px solid rgba(98,208,255,.3); }
#k7rl-home-flex-audio * {box-sizing:border-box}
#k7rl-home-flex-audio .kl-flex-inner{max-width:1242px;margin:0 auto;display:flex;gap:30px;align-items:center;justify-content:space-between}
#k7rl-home-flex-audio .kl-flex-main{flex:1 1 520px;min-width:0}
#k7rl-home-flex-audio .kl-flex-aside{flex:0 0 286px;text-align:center}
#k7rl-home-flex-audio .kl-flex-eyebrow{color:#62d0ff;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin:0 0 5px}
#k7rl-home-flex-audio h2{color:#fff;font-size:clamp(22px,2.7vw,35px);font-weight:850;letter-spacing:-.03em;line-height:1.15;margin:0 0 8px}
#k7rl-home-flex-audio h2 span{color:#62d0ff}
#k7rl-home-flex-audio p{font-size:14px;color:#bdd3df;line-height:1.55;margin:0 0 13px}
#k7rl-home-flex-audio audio{display:block;width:100%;max-width:490px;height:42px;color-scheme:light}
#k7rl-home-flex-audio .kl-flex-links{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:12px;color:#b0c9d8;margin-top:10px}
#k7rl-home-flex-audio a{color:#80deff;text-decoration:underline;text-underline-offset:3px}
#k7rl-live-stream .kl-flex-card {border:1px solid #34556e;border-radius:15px;background:#0d253a;padding:clamp(18px,3vw,28px);margin-top:22px;}
#k7rl-live-stream .kl-flex-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;margin:0 0 17px}
#k7rl-live-stream .kl-flex-head h3{font-size:22px;margin:0;color:#fff}
#k7rl-live-stream .kl-flex-card p{font-size:13px;margin:11px 0 0;color:#bdd3df}
#k7rl-live-stream .kl-flex-card audio{width:100%;height:54px;display:block;color-scheme:light}
#k7rl-live-stream .kl-flex-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:13px;font-size:13px;color:#bdd3df}
#k7rl-home-flex-audio .kl-flex-status,#k7rl-live-stream .kl-flex-status{display:inline-flex;justify-content:center;align-items:center;gap:12px;padding:13px 19px;min-height:66px;min-width:210px;background:linear-gradient(160deg,#253847,#122435);color:#c1cbd6;border:3px solid #566879;border-radius:13px;font-size:clamp(19px,2.6vw,28px);letter-spacing:.1em;font-weight:950;line-height:1.1;text-transform:uppercase;white-space:nowrap;box-shadow:inset 0 2px 2px rgba(255,255,255,.08),0 8px 18px rgba(0,0,0,.22)}
#k7rl-home-flex-audio .kl-flex-status:before,#k7rl-live-stream .kl-flex-status:before{content:'';width:15px;height:15px;flex:0 0 15px;background:#657584;border-radius:50%;box-shadow:inset 0 0 4px #101b27}
#k7rl-home-flex-audio .kl-flex-status[data-state="on"],#k7rl-live-stream .kl-flex-status[data-state="on"]{background:linear-gradient(160deg,#a11724,#570c12);color:#fff2ed;border-color:#ff8a8a;text-shadow:0 0 15px rgba(255,125,125,.88);box-shadow:inset 0 2px 2px rgba(255,255,255,.18),0 0 16px rgba(254,52,52,.65),0 0 35px rgba(252,49,49,.3)}
#k7rl-home-flex-audio .kl-flex-status[data-state="on"]:before,#k7rl-live-stream .kl-flex-status[data-state="on"]:before{background:#ff7272;box-shadow:0 0 0 4px rgba(255,102,102,.18),0 0 13px 5px rgba(255,85,85,.6)}
#k7rl-home-flex-audio .kl-flex-status[data-state="off"],#k7rl-live-stream .kl-flex-status[data-state="off"]{color:#a7b7c4;background:linear-gradient(160deg,#29394a,#172737);border-color:#435468;text-shadow:none}
#k7rl-home-flex-audio .kl-flex-status[data-state="unknown"],#k7rl-live-stream .kl-flex-status[data-state="unknown"]{font-size:15px;letter-spacing:.02em;min-width:210px}
@media(max-width:760px){#k7rl-home-flex-audio .kl-flex-inner{flex-wrap:wrap;gap:20px}#k7rl-home-flex-audio .kl-flex-main,#k7rl-home-flex-audio .kl-flex-aside{flex:1 1 100%}#k7rl-home-flex-audio .kl-flex-aside{max-width:400px}#k7rl-live-stream .kl-flex-status{min-width:200px}}

/* Unavailable is neutral: an unverified stream must never glow red. */
#k7rl-home-live-audio #stream_info_status[data-state="unknown"],
#k7rl-live-stream .kl-status[data-state="unknown"]{background:linear-gradient(160deg,#29394a,#172737);border-color:#435468;color:#c0cfda;text-shadow:none;box-shadow:inset 0 2px 2px rgba(255,255,255,.08);font-size:clamp(14px,1.8vw,20px);letter-spacing:.04em}

/* Local Flex CAT readout, visually distinct from the K4D panel and independent. */
#k7rl-home-flex-audio .kl-flex-frequency,
#k7rl-live-stream .kl-flex-frequency{
  margin-top:15px;background:#091b2a;color:#e8f5ff;
  border:1px solid #345872;border-radius:11px;padding:13px 15px;text-align:left;
}
#k7rl-home-flex-audio .kl-flex-frequency[hidden],
#k7rl-live-stream .kl-flex-frequency[hidden]{display:none!important}
#k7rl-home-flex-audio .kl-flex-frequency-label,
#k7rl-live-stream .kl-flex-frequency-label{
  color:#83d9ff;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;
}
#k7rl-home-flex-audio .kl-flex-frequency-value,
#k7rl-live-stream .kl-flex-frequency-value{
  color:#fff;font-size:clamp(20px,2.5vw,28px);font-weight:850;letter-spacing:-.025em;
  line-height:1.3;margin:6px 0;font-variant-numeric:tabular-nums;
}
#k7rl-home-flex-audio .kl-flex-frequency-meta,
#k7rl-live-stream .kl-flex-frequency-meta{font-size:12px;color:#bdd3df}
#k7rl-home-flex-audio .kl-flex-frequency-note,
#k7rl-live-stream .kl-flex-frequency-note{font-size:10px;color:#819dae;margin-top:8px}
