/* CeeBee BAKKIE — gedeelde huisstijl. */
:root{--cbj-bg:#060910;--cbj-panel:#101923;--cbj-line:#2c3d4b;--cbj-cyan:#29e1e8;--cbj-yellow:#f2d744;--cbj-text:#edf4fa;--cbj-muted:#a9bac8}
body.radio-page,body.admin-page{--bg:var(--cbj-bg);--ink:var(--cbj-text);--muted:var(--cbj-muted);--line:var(--cbj-line);--accent:var(--cbj-yellow);--orange:var(--cbj-yellow);--green:var(--cbj-cyan);color:var(--cbj-text);background:radial-gradient(ellipse at 12% 0,#12334877,transparent 46%),radial-gradient(ellipse at 100% 45%,#1f153f44,transparent 50%),#060910}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--cbj-cyan);outline-offset:4px}
.radio-page header{background:#050a11ee;border-bottom:1px solid #2b4d5e;box-shadow:0 3px 25px #0006}
.radio-page .brand{display:flex;align-items:center;gap:13px;letter-spacing:0;text-decoration:none;min-width:230px}
.brand svg{width:34px;height:43px;fill:none;stroke:var(--cbj-cyan);stroke-width:1.7;filter:drop-shadow(0 0 7px #29e1e844)}
.radio-page .brand-copy{color:var(--cbj-text);margin:0}.brand-copy b{font:700 27px 'Barlow Condensed',sans-serif;letter-spacing:1.2px}.radio-page .brand-copy b span{color:var(--cbj-yellow);margin:0}.brand-copy small{display:block;font:8px 'DM Sans',sans-serif;letter-spacing:2.2px;color:var(--cbj-cyan);margin-top:4px}
.radio-page .tag{color:var(--cbj-muted);letter-spacing:1px}.radio-page header button,.radio-page .admin-link{color:var(--cbj-text);border-color:var(--cbj-line)}
.radio-page .intro{margin-bottom:25px}.radio-page .intro h1{color:var(--cbj-text);letter-spacing:.2px}.radio-page .intro h1 em{color:var(--cbj-cyan)}.radio-page .intro>p{color:var(--cbj-muted)}.radio-page .eyebrow{color:var(--cbj-yellow)}.radio-page .eyebrow i{background:var(--cbj-cyan);box-shadow:0 0 9px #29e1e888}
.station-strip{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid #23424e;border-bottom:1px solid #23424e;padding:12px 3px;margin-bottom:17px;color:#a9c0cf;font:10px monospace;letter-spacing:1px}.station-strip span:first-child{color:var(--cbj-cyan)}.strip-led{display:inline-block;width:6px;height:6px;border:1px solid var(--cbj-cyan);border-radius:50%;margin-right:7px}#utc-clock{color:var(--cbj-yellow);font-variant-numeric:tabular-nums}
.radio-page button{background:#172635;color:#e4eef6;border-color:#3b5364}.radio-page button:hover{border-color:var(--cbj-cyan)}.radio-page .connection-bar{background:#0c1722;border-color:#284552;box-shadow:inset 3px 0 var(--cbj-cyan)}.radio-page .connection-bar>span:first-child{color:var(--cbj-cyan)}.radio-page .connection-bar>span:nth-child(2){color:var(--cbj-muted)}.radio-page #connect-server{background:var(--cbj-yellow);color:#11191f;border-color:var(--cbj-yellow);font-weight:700}
.radio-page .connection-diagnostics,.radio-page .side-card{background:linear-gradient(135deg,#111c28,#0b121c);border-color:#2a4050}.radio-page .connection-diagnostics summary span,.radio-page .connection-diagnostics p{color:var(--cbj-muted)}.radio-page .diagnostic-stage{border-color:#365061}.radio-page .diagnostic-stage span{color:#c2d6e4}.radio-page .diagnostic-stage small{color:var(--cbj-yellow)}
.radio-page .radio{position:relative;background:repeating-linear-gradient(0deg,#ffffff02 0 1px,transparent 1px 4px),linear-gradient(130deg,#263440,#111b24 50%,#1c2a34);border:1px solid #596b76;box-shadow:0 22px 50px #0008,inset 0 0 0 5px #070d13,inset 0 0 0 6px #344652;border-radius:15px;--channel-position:33.33%}
.radio-page .radio::before,.radio-page .radio::after{content:'⊖';position:absolute;top:10px;color:#8494a0;font:17px monospace;text-shadow:0 1px #000;pointer-events:none}.radio-page .radio::before{left:11px}.radio-page .radio::after{right:11px}
.radio-page .radio-head{margin:0 7px;padding-top:26px;background:linear-gradient(100deg,#ffffff05,transparent);border-color:#071019;box-shadow:0 1px #435764}.radio-page .radio-brand{font-style:normal;letter-spacing:2px;color:#eaf1f6}.radio-brand span{color:var(--cbj-yellow)}.radio-page .radio-head small{color:#a5b8c6;letter-spacing:1.3px}.radio-page .power-area{color:#bed3df}.radio-page .power-area button{color:var(--cbj-cyan);border-color:#468292;background:#10232d}
.radio-page .meter{background:linear-gradient(#12232b,#08171f);border-color:#060c11;color:#9bdde0;box-shadow:0 0 0 1px #4c6672,inset 0 4px 18px #0009}.radio-page .scale em{color:var(--cbj-yellow)}.radio-page .bars i{background:var(--cbj-cyan);opacity:.12}.radio-page .bars i:nth-child(n+15){background:var(--cbj-yellow)}.radio-page .bars i.on{opacity:1;box-shadow:0 0 8px #29e1e833}.radio-page .meter-bottom{border-color:#33505e;color:#b8cbd6}.radio-page .meter-bottom i{background:var(--cbj-cyan)}
.radio-page .display{background:repeating-linear-gradient(0deg,#0000 0 3px,#0003 3px 4px),#071118;border-color:#070c11;color:var(--cbj-cyan);box-shadow:0 0 0 1px #4c6672,inset 0 0 22px #000}.radio-page .display strong{font-variant-numeric:tabular-nums;text-shadow:0 0 17px #29e1e84d}.radio-page .display small{color:#9ab8c6;letter-spacing:.7px}
.channel-scale{position:relative;display:flex;justify-content:space-between;margin:20px 32px 17px;padding:11px 0 6px;background:repeating-linear-gradient(90deg,#577180 0 1px,transparent 1px calc(100% / 39));background-size:100% 6px;background-repeat:no-repeat;color:#b4c9d5;font:9px monospace}.channel-scale i{position:absolute;top:-4px;left:clamp(0%,var(--channel-position),100%);width:2px;height:23px;background:var(--cbj-yellow);box-shadow:0 0 7px #f2d74477}.channel-scale i::before{content:'';position:absolute;left:-3px;top:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--cbj-yellow)}
.radio-page .indicators{color:#bed2df}.radio-page .indicators .green{background:var(--cbj-cyan);box-shadow:0 0 6px #29e1e877}.radio-page .tune-label{color:#d0dfe8}.radio-page .tune-label small{color:#9bb2c1}.radio-page .dial{background:repeating-conic-gradient(#060d13 0 5deg,#4b606e 5deg 7deg);border-color:#09121a}.radio-page .dial::after{background:radial-gradient(at 30% 25%,#435866,#16232d)}.radio-page .dial i{background:var(--cbj-cyan)}
.radio-page .presets button{background:linear-gradient(#293e4d,#14232f);border-color:#080f16;color:#c8dce7}.radio-page .presets button.selected,.radio-page .presets button.occupied{color:var(--cbj-yellow);border-color:#b6a13d;background:#282a1c;box-shadow:inset 0 -2px var(--cbj-yellow)}
.speaker-strip{display:flex;align-items:center;gap:22px;margin:22px 30px 0;padding-top:15px;border-top:1px solid #3b4d5b}.speaker-grille{height:24px;flex:1;border-radius:3px;background:repeating-linear-gradient(0deg,#03080c 0 2px,#30414e 2px 4px);box-shadow:inset 2px 2px 5px #0008}.speaker-strip span{font:7px/1.8 monospace;letter-spacing:1px;color:#94acbc}.speaker-strip b{color:#d5e0e7;font-weight:400}
.radio-page .controls>label,.radio-page .switches{color:#c1d5e1}.radio-page input[type=range],.radio-page input[type=checkbox]{accent-color:var(--cbj-cyan)}.radio-page .switches button{color:#9eb3c2}.radio-page .ptt-wrap>button{background:radial-gradient(circle at 40% 28%,#314958,#101f2b 70%);color:#ecf5fa;border-color:var(--cbj-cyan);box-shadow:0 0 0 5px #060d13,0 0 0 7px #426778,0 12px 20px #0008,inset 0 2px 3px #ffffff15}.radio-page .ptt-wrap button span{color:var(--cbj-cyan)}.radio-page .ptt-wrap strong{letter-spacing:4px}.radio-page .ptt-wrap p{color:#b2c5d2}.radio-page kbd{background:#263946;border-color:#49616e;color:#e4eff6}.radio-page .transmitting .ptt-wrap>button{background:radial-gradient(circle at 40% 30%,#6a322d,#301618);color:#ffded5;border-color:#ff816f;box-shadow:0 0 0 5px #120c0d,0 0 0 7px #be5b4c,0 0 30px #ff6b4a33}.radio-page .transmitting .ptt-wrap button span{color:#ffaf9f}
.radio-page .station-controls label,.radio-page #awake-status{color:#c1d5e1}.radio-page .station-controls select{background:#0c1822;color:var(--cbj-text);border-color:#476275}.radio-page .radio-foot{background:#08121b;color:#aac2d1;border-color:#3a5262}.radio-page .card-title>span{background:#14333e;color:var(--cbj-cyan)}.radio-page .avatar{background:#173b49;color:var(--cbj-cyan);border:1px solid #345e70}.radio-page .station small,.radio-page .notice,.radio-page .channel-info p,.radio-page .network-legend,.radio-page #network-note,.radio-page .network-station span{color:#aebfcd}.radio-page .channel-info>span{color:var(--cbj-cyan)}.radio-page .station small i{background:var(--cbj-cyan)}.radio-page .waves{color:var(--cbj-cyan)}.radio-page .network-station,.radio-page .notice,.radio-page .entry,.radio-page #message-form{border-color:#2a4151}.radio-page #message{color:#e1edf5}.radio-page #message-form button{background:var(--cbj-cyan);color:#08212b}.radio-page .entry b{color:var(--cbj-yellow)}.radio-page .empty,.radio-page .empty p{color:#9db4c4}.radio-page .empty b{color:#c5d6e1}.radio-page footer{color:#a9bfce}.radio-page footer b,.radio-page footer a,.radio-page footer button{color:var(--cbj-cyan)}.radio-page dialog{background:#101d29;border-color:#42697e;color:var(--cbj-text)}.radio-page dialog p{color:#bdcedb}.radio-page dialog input{background:#08131d;border-color:#446577;color:white}
/* De regiekamer krijgt dezelfde donkere studio-uitstraling. */
.admin-page .sidebar{background:#060d15;border-right:1px solid #2b4557;color:#cddce6}.admin-page .logo{color:var(--cbj-text);letter-spacing:1px}.admin-page .logo span{color:var(--cbj-yellow);margin:0}.admin-page .logo small{color:var(--cbj-cyan);font-size:7px;letter-spacing:1.2px}.admin-page nav a{color:#a9bfce}.admin-page nav a:hover,.admin-page nav a.active{background:#15323e;color:var(--cbj-cyan);box-shadow:inset 2px 0 var(--cbj-cyan)}.admin-page .sidebar-bottom,.admin-page .sidebar-bottom span{color:#aac4d6}.admin-page .sidebar-bottom button{border-color:#395566;color:#d5e3ed}.admin-page .eyebrow{color:var(--cbj-cyan)}.admin-page h1,.admin-page h2,.admin-page h3{color:var(--cbj-text)}.admin-page header p{color:#afc1ce}.admin-page .jan>span{background:#163846;color:var(--cbj-cyan);font:11px monospace}.admin-page .jan small{color:#a2bbcd}.admin-page .card,.admin-page .stats article{background:linear-gradient(125deg,#13202d,#0d1621);border-color:#2b4253;box-shadow:0 8px 25px #0002}.admin-page .connect-card{background:#111f2b;border-color:#426378}.admin-page .card p,.admin-page .stats small,.admin-page .stats article>span,.admin-page .form-note,.admin-page label,.admin-page .empty,.admin-page .item small,.admin-page .roadmap p,.admin-page .roadmap small{color:#adbfcd}.admin-page .stats strong{color:var(--cbj-cyan)}.admin-page button,.admin-page input,.admin-page select,.admin-page textarea{color:#e4eff6;background:#142636;border-color:#3a556b}.admin-page .primary{background:var(--cbj-yellow);border-color:var(--cbj-yellow);color:#101923;font-weight:700}.admin-page input::placeholder,.admin-page textarea::placeholder{color:#829baa}.admin-page .badge{background:#25321f;color:#e2dc91}.admin-page .tabs{border-color:#314b5b}.admin-page .tabs button{background:transparent;color:#abc2d2}.admin-page .tabs button.active{color:var(--cbj-cyan);border-color:var(--cbj-cyan)}.admin-page .item,.admin-page .list,.admin-page .roadmap{border-color:#2c4454}.admin-page .item b{color:#e5eef5}.admin-page .channel-grid button.selected{background:#153d4c;border-color:var(--cbj-cyan);color:var(--cbj-cyan)}.admin-page .channel-grid button.locked{background:#43272b}.admin-page .idea{background:linear-gradient(120deg,#172e38,#13212c)}.admin-page .idea a{color:var(--cbj-yellow)}.admin-page #feedback{background:#163a3e;color:#dbf7f4;border-color:#3c787a}.admin-page #feedback.error{background:#482c29;border-color:#a75c4b;color:#ffe1d8}.admin-page .health-warning,.admin-page .health-stale{background:#332e1d;border-color:#aa9146}.admin-page .health-critical,.admin-page .health-unreachable,.admin-page .health-failed{background:#382023;border-color:#a75d58}.admin-page footer{color:#9fb8ca;border-color:#314a5d}.admin-page .health-card{border-color:#395361}.admin-page .health-card p{color:#b4c8d6}
@media(max-width:780px){.radio-page .brand{min-width:0;gap:8px}.brand svg{width:25px;height:34px}.brand-copy b{font-size:21px}.brand-copy small{font-size:6px;letter-spacing:1.1px}.radio-page header{padding:0 14px}.radio-page header button{font-size:9px}.station-strip{font-size:8px;letter-spacing:.4px}.station-strip span:last-child{display:none}.radio-page .radio-head small{font-size:6px;letter-spacing:.6px}.speaker-strip{margin:18px 20px 0;gap:12px}.speaker-strip span{font-size:6px}.channel-scale{margin-left:23px;margin-right:23px}.radio-page .intro h1{font-size:46px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.radio-page.live-connected .strip-led{background:var(--cbj-cyan);box-shadow:0 0 9px #29e1e877}.radio-page .receiving .display{box-shadow:0 0 0 1px #4c8392,inset 0 0 22px #000,0 0 18px #29e1e818}
.radio-page .workspace{align-items:start}.channel-scale{height:28px}.channel-scale span{position:absolute;top:12px;transform:translateX(-50%)}.channel-scale span:first-child{left:0;transform:none}.channel-scale span:nth-child(2){left:20.51%}.channel-scale span:nth-child(3){left:33.33%}.channel-scale span:nth-child(4){left:46.15%}.channel-scale span:nth-child(5){left:66.67%}.channel-scale span:nth-child(6){left:100%;transform:translateX(-100%)}
.current-speaker{min-height:53px;margin-top:13px;padding:11px 0 2px;border-top:1px solid #28444f}.current-speaker>span{display:block;font:8px monospace;letter-spacing:1.5px;color:#8eaebd}.current-speaker strong{display:block;margin-top:6px;font:600 20px/1.25 'Barlow Condensed',sans-serif;letter-spacing:.4px;color:#b8cedb;overflow-wrap:anywhere}.current-speaker.has-speaker>span{color:var(--cbj-cyan)}.current-speaker.has-speaker strong{color:var(--cbj-yellow);text-shadow:0 0 10px #f2d74422}
.radio-page dialog{max-height:calc(100dvh - 48px);overflow-y:auto}
#audio-setup-dialog{width:min(600px,calc(100vw - 32px));max-width:600px;padding:28px}#audio-setup-close{float:right;border:0;background:none;font-size:24px;padding:0 2px 8px 12px}#audio-setup-dialog h3{font-size:22px;color:var(--cbj-cyan);margin:0 0 12px}.audio-setup-step{border-top:1px solid var(--cbj-line);padding:18px 0}.audio-device-fields{display:grid;grid-template-columns:1fr;gap:8px}.audio-device-fields label{font-size:12px;color:var(--cbj-text)}.audio-device-fields select{width:100%;padding:11px;background:#0a1520;color:var(--cbj-text);border:1px solid #466174;border-radius:5px}.audio-actions{display:flex;flex-wrap:wrap;gap:9px}.audio-check{display:flex;align-items:center;gap:9px;font-size:12px;margin-top:12px}.audio-check input{width:auto!important;margin:0!important;accent-color:var(--cbj-cyan)}#audio-level{display:block;width:100%;height:18px;margin:10px 0}#audio-test-player{width:100%;height:40px;margin-top:12px}#audio-setup-message{padding:12px;border:1px solid #3b6673;border-radius:5px;color:#deeff5!important;background:#14303b}#audio-setup-done{background:var(--cbj-yellow);color:#101923;border-color:var(--cbj-yellow);font-weight:700}
.recovery-note{margin:-6px 0 18px;padding:13px 16px;background:#302b18;border:1px solid #8b7831;border-radius:6px;color:#f6e8ad;font-size:12px;line-height:1.6}.quality-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin-top:16px}.quality-grid>div{padding:12px;border:1px solid #355362;border-radius:5px}.quality-grid b,.quality-grid span{display:block}.quality-grid b{font-size:10px;color:#adc2cf;margin-bottom:8px}.quality-grid span{font:600 20px 'Barlow Condensed',sans-serif;color:var(--cbj-cyan)}#quality-summary{color:#adc2cf}

/* Meetinstrumenten en bediening ingebouwd in het metalen frontpaneel. */
.radio-page .bars[hidden]{display:none}
.radio-page .audio-controls{margin:14px 0 0;font:9px monospace;color:#a9d4d9}
.level-scale{display:flex;justify-content:space-between;margin:0 0 5px 28px;padding-right:1px;font-size:7px;color:#7a9ca8}
.level-row{display:grid;grid-template-columns:23px minmax(0,1fr);gap:4px 5px;align-items:center;margin:6px 0}
.level-row label{font:bold 8px monospace;letter-spacing:1px}.level-row>span{grid-column:2;text-align:right;min-height:12px;font:8px monospace;color:#96bdc8}.level-row .clipping{color:#ff8d79}
.level-row meter{display:block;appearance:none;width:100%;height:12px;border:1px solid #314c57;border-radius:1px;background:#07151c;overflow:hidden}
.level-row meter::-webkit-meter-bar{background:#07151c;border:0;border-radius:0;box-shadow:inset 0 2px 4px #000}
.level-row meter::-webkit-meter-optimum-value{background:repeating-linear-gradient(90deg,transparent 0 8px,#07151c 8px 10px),linear-gradient(90deg,#29e1e8 0 75%,#f2d744 75% 92%,#ff816f 92%);border-radius:0}
.level-row meter::-moz-meter-bar{background:repeating-linear-gradient(90deg,transparent 0 8px,#07151c 8px 10px),linear-gradient(90deg,#29e1e8 0 75%,#f2d744 75% 92%,#ff816f 92%)}
.radio-page .control-bank{min-width:0;max-width:160px;width:100%;justify-self:center;display:grid;gap:22px;color:#bed0dc;font:9px monospace}
.control-bank label{display:block;letter-spacing:1px}.control-bank output{color:var(--cbj-yellow);float:right;font-variant-numeric:tabular-nums}
.mic-gain-control{text-align:center}.mic-gain-control label{text-align:left}.gain-knob{position:relative;width:62px;height:62px;margin:16px auto 8px;border:5px solid #09121a;border-radius:50%;background:repeating-conic-gradient(#101a23 0deg 7deg,#526775 7deg 10deg);box-shadow:0 3px 6px #000b,0 0 0 1px #4c606e}
.gain-knob::after{content:'';position:absolute;inset:6px;border-radius:50%;background:radial-gradient(at 30% 25%,#536875,#1a2935 70%);box-shadow:inset 0 1px 2px #fff3}
.gain-knob i{position:absolute;inset:0;z-index:1;transform:rotate(var(--gain-angle,0deg));transition:transform .08s}
.gain-knob i::before{content:'';position:absolute;width:3px;height:12px;left:calc(50% - 1.5px);top:6px;background:var(--cbj-yellow);box-shadow:0 0 5px #f2d74455;border-radius:1px}
.radio-page .control-bank input[type=range]{margin-top:9px;height:20px}.gain-limits{display:flex;justify-content:space-between;font:7px monospace;color:#93aaba}.volume-control{padding-top:13px;border-top:1px solid #3b4d5b}
.radio-page .speech-queue{display:grid;grid-template-columns:160px minmax(0,1fr);gap:18px;align-items:center;margin:3px 30px 20px;padding:17px 0;border-top:1px solid #425563;border-bottom:1px solid #080f16;box-shadow:0 1px #3a4e5c}
.panel-label{display:block;font:7px monospace;letter-spacing:1.4px;color:#a6bdcc;margin-bottom:8px}
.radio-page #raise-hand{position:relative;width:100%;min-height:44px;padding:10px 8px;font:10px monospace;color:#c4d6df;background:linear-gradient(#2e4352,#14232e);border:1px solid #080e15;box-shadow:0 2px 3px #0008,inset 0 1px #ffffff18}
#raise-hand::before{content:'';display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:#09151d;box-shadow:0 0 0 1px #5b7180}
.radio-page #raise-hand[aria-pressed=true]{color:var(--cbj-yellow);border-color:#9d8b3d;background:linear-gradient(#373b2b,#21291f)}
#raise-hand[aria-pressed=true]::before{background:var(--cbj-yellow);box-shadow:0 0 7px #f2d74499}
.radio-page #raise-hand:disabled{opacity:.5;cursor:default}
.queue-display{min-width:0;padding:11px 13px;background:linear-gradient(#07151d,#0b1b25);border:1px solid #070d13;box-shadow:0 0 0 1px #3c5665,inset 0 2px 6px #0008;border-radius:3px}
.queue-display .panel-label{color:#71acb5;font-size:7px}.queue-display p{font:10px/1.5 monospace;color:#bed4dc;margin:0;overflow-wrap:anywhere}
#speech-queue{margin:8px 0 0;padding:0;list-style:none;counter-reset:speaker;display:flex;flex-wrap:wrap;gap:6px}#speech-queue:empty{display:none}#speech-queue li{counter-increment:speaker;max-width:100%;font:10px/1.5 monospace;color:var(--cbj-yellow);overflow-wrap:anywhere}#speech-queue li::before{content:counter(speaker,decimal-leading-zero) ' ';color:#6d9aa6}#speech-queue li+li{border-left:1px solid #35505a;padding-left:6px}
@media(max-width:1050px){.radio-page .control-bank{font-size:8px}.radio-page .speech-queue{margin-left:20px;margin-right:20px;grid-template-columns:130px minmax(0,1fr)}}
@media(max-width:600px){.radio-page .console{grid-template-columns:minmax(0,1fr) 90px}.radio-page .meter{padding:10px 8px}.radio-page .scale b{font-size:7px}.radio-page .scale span{font-size:6px}.radio-page .controls{grid-template-columns:minmax(0,1fr) 135px minmax(0,1fr);gap:10px;padding:24px 18px 14px}.control-bank label{letter-spacing:0;font-size:8px}.gain-knob{width:48px;height:48px;margin-top:12px;border-width:4px}.gain-knob i::before{top:5px;height:9px;width:2px}.radio-page .control-bank{gap:14px}.radio-page .speech-queue{grid-template-columns:110px minmax(0,1fr);gap:12px;margin:3px 20px 16px}.radio-page #raise-hand{font-size:9px;padding:10px 5px}.queue-display{padding:10px}.queue-display p{font-size:9px}.panel-label{font-size:6px;letter-spacing:.7px}.current-speaker strong{font-size:18px}}
@media(max-width:380px){.radio-page .controls{grid-template-columns:minmax(0,1fr) 115px minmax(0,1fr);padding-left:14px;padding-right:14px}.radio-page .ptt-wrap>button{width:110px;height:110px}.radio-page .ptt-wrap strong{font-size:40px}.radio-page .ptt-wrap small{font-size:4px}.radio-page .speech-queue{margin-left:15px;margin-right:15px}.radio-page .console{margin-left:15px;margin-right:15px;grid-template-columns:minmax(0,1fr) 78px;gap:8px}.radio-page .display strong{font-size:58px}}

.level-scale{position:relative;height:10px;display:block}.level-scale span{position:absolute;top:0}.level-scale span:first-child{left:0}.level-scale span:nth-child(2){left:50%;transform:translateX(-50%)}.level-scale span:nth-child(3){left:80%;transform:translateX(-50%)}.level-scale span:last-child{right:0}
.level-row meter::-webkit-meter-optimum-value{background:repeating-linear-gradient(90deg,#29e1e8 0 8px,#07151c 8px 10px)}
.level-row meter::-webkit-meter-suboptimum-value{background:repeating-linear-gradient(90deg,#f2d744 0 8px,#07151c 8px 10px)}
.level-row meter::-webkit-meter-even-less-good-value{background:repeating-linear-gradient(90deg,#ff816f 0 8px,#07151c 8px 10px)}
.level-row meter:-moz-meter-optimum::-moz-meter-bar{background:repeating-linear-gradient(90deg,#29e1e8 0 8px,#07151c 8px 10px)}
.level-row meter:-moz-meter-sub-optimum::-moz-meter-bar{background:repeating-linear-gradient(90deg,#f2d744 0 8px,#07151c 8px 10px)}
.level-row meter:-moz-meter-sub-sub-optimum::-moz-meter-bar{background:repeating-linear-gradient(90deg,#ff816f 0 8px,#07151c 8px 10px)}
.gain-knob{cursor:ns-resize;touch-action:none}.mic-gain-control:focus-within .gain-knob{outline:1px solid var(--cbj-cyan);outline-offset:4px}

/* Afstemming en kanaalactiviteit hebben elk een eigen kleur. */
.radio-page .presets button.selected{color:var(--cbj-cyan);border-color:#438896;background:#102b35;box-shadow:inset 0 -2px var(--cbj-cyan)}
.radio-page .presets button.occupied{color:var(--cbj-yellow);border-color:#b6a13d;background:#282a1c;box-shadow:inset 0 -2px var(--cbj-yellow)}

.radio-page #account-link{font-size:11px;white-space:nowrap}.station-profile{display:block;font-size:9px;color:#9cb6c6;line-height:1.6;margin-top:5px;overflow-wrap:anywhere}@media(max-width:780px){.radio-page #account-link{font-size:9px}.radio-page header{gap:7px}}

@media(max-width:780px){.radio-page header #help{display:none}.radio-page #account-link{max-width:70px;white-space:normal;text-align:center;line-height:1.5}}

.ptt-clock{width:150px;max-width:100%;margin:15px auto 0;font:10px monospace;letter-spacing:1px;color:#9fc5d1}.ptt-clock output{display:block;float:none;text-align:center!important;color:inherit!important}.ptt-clock progress{display:block;appearance:none;width:100%;height:4px;margin-top:7px;border:0;background:#08151e;border-radius:2px;overflow:hidden}.ptt-clock progress::-webkit-progress-bar{background:#08151e}.ptt-clock progress::-webkit-progress-value{background:#29e1e8}.ptt-clock progress::-moz-progress-bar{background:#29e1e8}.ptt-clock.time-warning{color:#f2d744}.ptt-clock.time-warning progress::-webkit-progress-value{background:#f2d744}.ptt-clock.time-warning progress::-moz-progress-bar{background:#f2d744}.ptt-clock.time-critical,.ptt-clock.time-expired{color:#ff9b85}.ptt-clock.time-critical progress::-webkit-progress-value{background:#ff816f}.ptt-clock.time-critical progress::-moz-progress-bar{background:#ff816f}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.radio-page .ptt-wrap.finishing>button{border-color:#f2d744}.radio-page .ptt-wrap.finishing button span{color:#f2d744}@media(max-width:600px){.ptt-clock{font-size:8px;width:115px}}

/* Persoonlijke ontvangstbediening; afstemmen en dempen zijn aparte knoppen. */
.personal-station-row{display:flex;gap:10px;align-items:center;border-top:1px solid #334550;padding:6px 0}.personal-station-row .network-station{flex:1;min-width:0;overflow-wrap:anywhere;border:0;text-align:left}.personal-station-row .personal-mute{flex:none;min-height:44px;padding:8px 12px;font-size:11px}.personal-station-row.personally-muted .personal-mute{color:#ffd284;border-color:#b78a48}.personal-station-row.personally-muted .network-station b:after{content:' · voor jou gedempt';color:#ffd284;font-size:10px}.personal-station-row button:focus-visible{outline:2px solid #ffd284;outline-offset:2px}

.channel-share-button{margin-top:12px;min-height:44px;font-size:11px}#channel-share-dialog{box-sizing:border-box;width:min(480px,calc(100vw - 24px));padding:24px}#channel-share-close{float:right;background:none;border:0;font-size:24px;padding:0 0 8px 12px}#channel-share-qr{display:block;width:min(240px,100%);height:auto;margin:16px auto;image-rendering:pixelated}#channel-share-link{box-sizing:border-box;width:100%;font-size:12px}#channel-share-dialog label{font-size:12px}.channel-share-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.channel-share-actions button,.channel-share-actions a{min-height:44px;box-sizing:border-box;padding:10px;font-size:12px}.channel-share-actions a{color:#77dfef}#channel-share-status{font-size:12px}
