:root{color-scheme:dark;--bg:#141714;--panel:#1d211d;--line:#3b433a;--ink:#eef1e8;--muted:#aeb9ac;--accent:#c7ed85;--red:#ffba9a}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 system-ui,Segoe UI,sans-serif}header,main,footer{max-width:1600px;margin:auto;padding:24px 32px}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}h1{font-size:28px;letter-spacing:-.7px;margin:3px 0}h2{font-size:17px;margin:0 0 12px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:var(--accent)}.header-actions,.toolbar,.section-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.section-head{justify-content:space-between;margin-bottom:12px}.section-head h2{margin:0}.section-head h2 span{font-size:13px;color:var(--muted);margin-left:10px}.panel{background:var(--panel);border:1px solid var(--line);padding:20px;margin-bottom:18px;border-radius:5px}.controls,#tune-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}label{display:flex;flex-direction:column;gap:5px;color:var(--muted);font-size:12px;font-weight:600}input,select,button{font:inherit;border-radius:3px;border:1px solid #55604f;color:var(--ink);background:#151915;padding:9px 11px;min-height:42px}input{min-width:0;width:150px}input[type=password]{width:min(500px,100%)}input[type=file]{width:290px;max-width:100%}input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--accent)}select{max-width:100%}button{font-size:13px;cursor:pointer;white-space:nowrap;background:#2c3429}button:hover{border-color:var(--accent);background:#394530}.primary{color:#17200c;background:var(--accent);font-weight:700}.primary:hover{background:#d9f5ae}button:disabled{opacity:.55;cursor:wait}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.frequency input{font:26px Consolas,monospace;color:var(--accent);width:205px;min-height:52px}.check{flex-direction:row;align-items:center}.presets{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.presets button{min-height:34px;font:12px Consolas,monospace}.muted{color:var(--muted);font-size:13px}.toolbar .muted{font-size:12px}.receivers{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px}.receiver{border:1px solid var(--line);border-top:3px solid var(--line);background:var(--panel);min-width:0;padding:15px;display:flex;flex-direction:column;border-radius:4px}.receiver.selected{border-top-color:var(--accent)}.receiver h3{font-size:12px;color:var(--muted);display:flex;align-items:center;justify-content:space-between;margin:0 0 12px}.receiver h3 button{padding:5px 9px;min-height:32px;font-size:11px}.receiver select{width:100%;font-size:12px}.status{font:12px Consolas,monospace;color:var(--muted);margin:12px 0 4px;overflow-wrap:anywhere}.status[data-state=listening]{color:var(--accent)}.status[data-state=error],.status[data-state=out-of-range]{color:var(--red)}.dial{font:19px Consolas,monospace;margin:4px 0}.meter{height:4px;background:#384036;margin:9px 0;overflow:hidden}.meter span{display:block;width:0;height:100%;background:var(--accent)}.receiver .actions{display:flex;gap:7px}.receiver .actions button{flex:1;font-size:12px}.transcript{height:300px;overflow:auto;margin-top:15px;border-top:1px solid var(--line);padding-top:10px;scrollbar-width:thin}.transcript p{font-size:14px;margin:0 0 14px;overflow-wrap:anywhere}.transcript time{display:block;font-size:10px;color:var(--muted);font-family:Consolas,monospace}.error{font-size:12px;color:var(--red);overflow-wrap:anywhere;min-height:18px}.caption-metrics{font:10px Consolas,monospace;color:var(--muted);margin-top:10px;min-height:30px}#notice{background:#45382c;border:1px solid #95764e;padding:12px;margin-bottom:15px;overflow-wrap:anywhere}summary{cursor:pointer;font-size:15px;font-weight:600;min-height:28px}details p{font-size:13px;color:var(--muted)}pre{padding:15px;background:#101410;border:1px solid var(--line);overflow:auto;font:12px/1.6 Consolas,monospace}code{font:12px Consolas,monospace;color:var(--accent)}footer{font-size:10px;letter-spacing:1px;color:var(--muted);padding-top:5px}#address-editor form{display:flex;align-items:end;gap:10px;margin-bottom:12px}#address-editor label{flex:1}#address-editor input{width:100%}#preset-form{margin:20px 0}#benchmark-result{margin-top:16px;overflow-wrap:anywhere}table{width:100%;border-collapse:collapse;font-size:13px}td,th{text-align:left;padding:8px;border-bottom:1px solid var(--line)}@media(max-width:1200px){.receivers{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:780px){header,main,footer{padding:18px 16px}.receivers{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:16px}}@media(max-width:500px){header{align-items:start}h1{font-size:24px}.header-actions{gap:5px;font-size:11px}.receivers{grid-template-columns:1fr}.transcript{height:230px}.controls label,#tune-form label{flex:1;min-width:120px}.controls input,#tune-form input{width:100%}.controls button,#tune-form button{width:100%}.frequency{min-width:180px!important}.check{font-size:11px}.eyebrow{font-size:8px;letter-spacing:1px}.section-head{align-items:start}.toolbar button{flex:1}#address-editor form{align-items:stretch;flex-direction:column}}
.waterfall-toolbar{margin-bottom:12px;gap:8px}.waterfall-toolbar button{min-height:36px;padding:6px 10px}.waterfall-wrap{background:#080f15;border:1px solid #425651;border-radius:4px;margin-bottom:18px;overflow:hidden}#waterfall{display:block;width:100%;height:250px;touch-action:none;cursor:crosshair}#wf-cursor{padding:5px 10px;font:11px Consolas,monospace;color:#b8c8c6}.stepper{margin-top:12px}.stepper label{flex-direction:row;align-items:center}.stepper select{min-height:36px}.transport-label{margin-top:8px;font-size:10px}.transport-mode{font-size:11px!important;padding:5px!important;min-height:32px}.live-partial{font-size:14px;color:#daf5b3;min-height:36px;margin-top:10px;border-left:2px solid #9bd674;padding-left:8px}.live-partial:empty{display:none}.transcript{height:230px}.transcript .playing{background:#32402b;outline:1px solid #758e5a;border-radius:3px}.timing-details{margin-top:8px;border-top:1px solid var(--line);padding-top:6px}.timing-details summary{font-size:11px;min-height:24px;font-weight:400}.timing{white-space:pre-line;font:10px/1.7 Consolas,monospace;color:var(--muted);margin-bottom:8px}.alignment{width:100%;min-height:32px;padding:5px}.timeline{max-height:320px;overflow:auto}.timeline p{margin:0;padding:6px;border-bottom:1px solid var(--line);color:var(--ink)}.timeline time{font:11px Consolas,monospace;color:var(--accent)}#audio-clock{font:11px Consolas,monospace}.tuner #audio-delay{min-height:36px}.receivers .caption-metrics{line-height:1.7}@media(max-width:600px){#waterfall{height:190px}.waterfall-toolbar label{flex:1;min-width:180px}.waterfall-toolbar button{flex:1}.waterfall-toolbar #wf-status{width:100%}.stepper label{min-width:0}.stepper label select{width:74px}}

.filter-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:8px 0 16px}.filter-controls label{flex:1;min-width:130px}.filter-controls input{width:100%;accent-color:var(--accent);padding:0;cursor:ew-resize}.filter-controls output{font:12px Consolas,monospace;color:var(--accent)}.quality{font:11px/1.6 Consolas,monospace;min-height:36px;margin:5px 0 10px;color:var(--muted)}.receiver.best .quality{color:var(--accent)}.reception-summary button{margin-left:12px}.reception-summary p{margin-bottom:0}#zoom-slider{padding:0;width:130px;accent-color:var(--accent)}

.seek-controls{margin-top:14px}.seek-controls button{border-color:#8da66b;color:var(--accent)}#seek-status{margin:8px 0;font-size:12px;overflow-wrap:anywhere}
.directory-row{padding:14px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}.directory-row strong{font-size:14px}.directory-row p{white-space:pre-line;margin:5px 0 9px}.directory-options{margin-top:12px}#directory-query{width:230px;max-width:100%}#directory-results{max-height:540px;overflow:auto;margin-bottom:12px;padding-right:8px}#receiver-discovery a{color:var(--accent)}#callsign-input{text-transform:uppercase}.callsign-candidate{display:block;font-size:11px;min-height:30px;padding:4px 7px;margin-top:5px;color:var(--accent)}
.combined-view .transcript,.combined-view .live-partial{display:none}.combined-panel{border-color:#647450}#combined-lines{max-height:410px;min-height:100px;overflow:auto;margin-top:12px}#combined-lines p{border-top:1px solid var(--line);padding:12px 0;margin:0;font-size:17px}#combined-lines time,#combined-lines small{display:block;color:var(--muted);font:11px/1.7 Consolas,monospace}#combined-lines time{margin-bottom:5px}#combined-lines small{margin-top:6px}.vote-uncertain{text-decoration:underline dotted #e0bd86;text-underline-offset:4px}.vote-corrected{color:var(--accent)}#slot-count{width:80px}

.digital-controls{border-top:1px solid var(--line);margin-top:10px;padding-top:8px}.digital-controls summary{font-size:12px}.digital-controls .actions{margin-top:8px;flex-wrap:wrap}.digital-controls input:not([type=checkbox]){width:100%;min-height:32px;padding:5px}.digital-controls p{font-size:11px}.digital-controls label{margin:5px 0}.digital-status{font:11px/1.6 Consolas,monospace;margin:8px 0;overflow-wrap:anywhere}.digital-output{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;min-height:70px;font-size:11px;padding:8px;margin:0;color:#d9ecb9}.digital-output[hidden]{display:none}
