.guide-mode-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}
.guide-mode-bar .eyebrow{margin-bottom:3px}.guide-mode-bar>div>span{font:12px var(--mono);color:var(--muted)}
.guide-mode-buttons{display:flex;gap:8px}.guide-mode-buttons button{font:700 12px var(--mono);padding:12px 18px;background:var(--panel);border:1px solid var(--line);border-radius:2px;box-shadow:2px 2px #0005}.guide-mode-buttons button[aria-pressed=true]{background:#ffda43;color:#101e24;border-color:#ffe17b}
.epg-heading{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:18px}.epg-heading h1{font:900 clamp(23px,3vw,38px)/1.1 'Arial Black',Arial,sans-serif;letter-spacing:-1px;text-transform:uppercase;margin:0;color:#ffda43;text-shadow:2px 2px #000}.epg-heading>span{font:9px var(--mono);letter-spacing:1px;color:#86acac}
.guide-stage{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);gap:22px;align-items:stretch;margin-bottom:24px}#guide-player-slot{min-width:0;align-self:start}#guide-player-slot .receiver{margin:0}#guide-player-slot .screen{aspect-ratio:4/3}#guide-player-slot .test-message{padding:15px 18px}#guide-player-slot .test-message h2{font-size:clamp(27px,3vw,45px)}#guide-player-slot .test-message .eyebrow{font-size:7px}#guide-player-slot .test-caption{font-size:7px}#guide-player-slot .remote{flex-wrap:wrap;gap:5px}#guide-player-slot .remote button{font-size:8px;padding:7px}#guide-player-slot .receiver-label{gap:10px}#guide-player-slot .receiver-label>span:first-child{font-size:7px}#guide-player-slot .speaker-grille{max-width:90px}
.epg-detail{background:#102a35;border:1px solid #4b686c;border-top:4px solid #ffda43;box-shadow:4px 4px #0005;padding:19px 22px;color:#e5eddf;min-width:0}.epg-detail-header{display:flex;align-items:center;gap:12px}.epg-detail-header>span:first-child{font:700 30px var(--mono);background:#091d26;color:#ffda43;border:1px solid #4f6d6d;padding:5px 9px}.epg-detail-header h2{font:700 19px/1.25 var(--mono);text-transform:uppercase;color:#ffe05b;margin:0}.epg-detail-header p{font:8px var(--mono);text-transform:uppercase;letter-spacing:1px;color:#7cb8ba;margin:5px 0 0}.epg-state{font:700 9px var(--mono);white-space:nowrap;border:1px solid #648a79;padding:5px 7px;color:#9ad4a8;margin-left:auto;align-self:start}.epg-detail>p:not(#epg-feedback){font:11px/1.6 var(--mono);color:#abc0bd;margin:14px 0}
.epg-programme-detail{border-block:1px solid #3a535b;padding:15px 0 9px}.epg-programme-detail .eyebrow{color:#ffda43;font-size:8px;letter-spacing:1px;margin-bottom:8px}.epg-programme-detail h3{font:700 clamp(18px,1.8vw,25px)/1.3 var(--mono);color:#f4f1de;letter-spacing:-.5px;margin:0 0 10px}.epg-programme-detail p:not(.eyebrow){font:9px/1.5 var(--mono);color:#9eb8b4}.epg-progress{height:4px;background:#071924;margin-top:12px}.epg-progress>span{display:block;background:#ffda43;height:100%;box-shadow:0 0 7px #ffda4344}.epg-next-heading{font:700 9px var(--mono);color:#ffda43;letter-spacing:1px;margin:14px 0 8px}#epg-detail-next p{font:11px/1.45 var(--mono);display:flex;gap:13px;margin:6px 0}#epg-detail-next time{color:#83cecf;min-width:39px}
.epg-detail-actions{display:flex;align-items:center;gap:18px;margin-top:17px}.epg-detail-actions button{background:#ffda43;color:#10212a;font:700 10px var(--mono);border:1px outset #fff09b;border-radius:1px;box-shadow:2px 2px #0008}.epg-detail-actions a{font:9px var(--mono);color:#83cecf}.epg-detail #epg-feedback{font:8px/1.5 var(--mono);color:#a0c6ab;margin:12px 0 0;min-height:12px}
.epg-listings{border:2px solid #526b70;background:#0a1926;box-shadow:5px 5px #0005;color:#eaf0e0;margin-bottom:45px}.epg-toolbar{background:#192f39;padding:13px 15px;border-bottom:1px solid #587078;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.epg-toolbar>div:first-child{display:flex;gap:15px;align-items:center}.epg-toolbar strong{font:700 11px var(--mono);color:#ffda43;letter-spacing:1px}.epg-toolbar #epg-range{font:10px var(--mono);color:#b1c7c4}.epg-time-controls{display:flex;gap:6px;align-items:center}.epg-time-controls input{margin:0;width:138px;background:#0c202b;border-color:#425e64;color:#dce8d8;font:10px var(--mono);padding:7px;min-height:30px;color-scheme:dark}.epg-time-controls button{background:#0c202b;color:#dce8d8;border:1px solid #425e64;padding:7px;font:10px var(--mono);border-radius:1px}.epg-time-controls #epg-now{color:#ffda43;font-weight:bold}.epg-help{font:9px var(--mono);color:#95b2b3;margin:0;padding:10px 15px;background:#0d202b}
.epg-scroll{overflow:auto;max-height:500px;scrollbar-color:#637d7c #0c1b27;scrollbar-width:thin}.epg-grid{--channel-width:225px;min-width:1120px;position:relative}.epg-times-row{display:grid;grid-template-columns:var(--channel-width) minmax(0,1fr);position:sticky;top:0;z-index:5;background:#07131e;border-block:1px solid #537078;color:#ffda43}.epg-corner{padding:12px 15px;font:700 10px var(--mono);letter-spacing:1px;position:sticky;left:0;background:#07131e;border-right:1px solid #537078;z-index:7}.epg-times{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}.epg-time{font:700 12px var(--mono);padding:10px;border-left:1px solid #2f4c5b}.epg-rows{position:relative}
.epg-row{display:grid;grid-template-columns:var(--channel-width) minmax(0,1fr);min-height:84px;border-bottom:1px solid #38505b}.epg-row:nth-child(2n){background:#102738}.epg-channel{position:sticky;left:0;z-index:3;background:#102735;border:0;border-right:2px solid #557075;border-radius:0;text-align:left;display:flex;align-items:center;gap:12px;padding:13px;min-width:0;color:#eaf0db;box-shadow:3px 0 5px #0003}.epg-channel:hover,.epg-channel.is-tuned{background:#1c3c45}.epg-channel-number{font:700 29px var(--mono);color:#ffda43}.epg-channel strong{display:block;font:700 12px/1.3 var(--mono);text-transform:uppercase}.epg-channel small{display:block;font:7px/1.5 var(--mono);letter-spacing:.5px;color:#80afb2;margin-top:5px}.epg-track{position:relative;min-width:0;background:repeating-linear-gradient(90deg,transparent 0 calc(16.6667% - 1px),#2c455a calc(16.6667% - 1px) 16.6667%)}
.epg-cell{position:absolute;top:0;bottom:0;border:0;border-right:1px solid #3c5b69;border-radius:0;text-align:left;padding:13px 11px;overflow:hidden;background:#172f45;color:#eef0db;min-width:0;box-shadow:inset 0 1px #ffffff05}.epg-row:nth-child(2n) .epg-cell{background:#12283a}.epg-cell strong{font:700 12px/1.4 var(--mono);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.epg-cell>span{font:9px var(--mono);display:block;color:#9eb9bc;margin-top:7px;white-space:nowrap;overflow:hidden}.epg-cell.is-live{background:#1f4650!important}.epg-cell.is-selected{box-shadow:inset 0 0 0 2px #ffda43;background:#30505a!important;z-index:2}.epg-cell:hover{background:#305668!important;z-index:2;box-shadow:inset 0 0 0 2px #78cbcd}.epg-cell.is-short{padding:12px 2px}.epg-cell.is-short>span,.epg-cell.is-short strong{display:none}.epg-cell.is-short:before{content:'';display:block;width:2px;height:12px;background:#91bac4;opacity:.5;margin:auto}.epg-cell:focus-visible,.epg-channel:focus-visible{outline:2px solid #ffda43;outline-offset:-3px;z-index:4}
.epg-now-line{position:absolute;top:0;bottom:0;left:calc(var(--channel-width) + (100% - var(--channel-width))*var(--now));width:2px;background:#f06b59;pointer-events:none;z-index:2}.epg-now-line span{position:absolute;top:0;left:-13px;font:700 7px var(--mono);background:#f06b59;color:#071520;padding:2px}.epg-bottom{display:flex;justify-content:space-between;gap:15px;font:8px var(--mono);letter-spacing:1px;color:#8ba8ab;padding:11px 15px;background:#07131e}.epg-bottom i{display:inline-block;width:5px;height:5px;background:#f06b59;margin-right:5px}.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}
.epg-cell.is-break{background:repeating-linear-gradient(135deg,#162c37 0 8px,#1b333e 8px 16px)!important;color:#9ab7b5}.epg-cell.is-break strong{font-weight:400;font-style:italic;font-size:10px}.epg-cell.is-break.is-selected{box-shadow:inset 0 0 0 2px #ffda43}
/* Cabinet controls belong to the woodwork, with a separate recessed channel display. */
.receiver .screen-top{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0 3px 11px;gap:14px;font:8px var(--mono);color:#ebdfbf;text-shadow:0 1px #241b11;letter-spacing:.8px;min-height:25px}.receiver .screen-top>span:first-child{display:flex;align-items:center;white-space:nowrap}.receiver .screen-top>span:last-child{background:#1d211a;border:1px inset #9d8461;border-radius:2px;padding:5px 8px;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dbdca7;text-shadow:0 0 4px #b5c68944;font-size:8px;box-shadow:inset 0 1px 4px #0009}.receiver .screen-top .signal-dot{flex-shrink:0;width:7px;height:7px;background:#ed6448;box-shadow:0 0 0 2px #301d14,0 0 6px #ed644877;border:1px solid #ed9a72}.receiver .tuning-scale{height:19px;flex:1;position:relative;min-width:30px;border-bottom:1px solid #b8996b;background:repeating-linear-gradient(90deg,#d1b282 0 1px,transparent 1px 8px) bottom/100% 6px no-repeat}.receiver .tuning-scale i{position:absolute;bottom:-2px;left:42%;height:9px;width:2px;background:#ed6448;box-shadow:0 0 3px #ed6448}.receiver .tuning-scale b{position:absolute;top:-3px;font:6px var(--mono);color:#e1cba5;letter-spacing:2px;left:10%}
@media(max-width:1050px){.guide-stage{grid-template-columns:1fr 1fr;gap:16px}.epg-detail{padding:14px}.epg-detail-header h2{font-size:15px}.epg-detail-header>span:first-child{font-size:22px;padding:5px}.epg-detail-header{gap:8px}.epg-state{font-size:7px}.epg-detail-actions{gap:10px}.receiver .tuning-scale{display:none}.receiver .screen-top>span:last-child{font-size:7px}.receiver .screen-top{font-size:7px;gap:8px}}
@media(max-width:760px){.guide-mode-bar{align-items:start;flex-direction:column;gap:13px}.guide-mode-buttons{width:100%}.guide-mode-buttons button{flex:1;padding:11px 12px;font-size:11px}.guide-mode-bar>div>span{font-size:11px}.epg-heading{align-items:start;gap:10px}.epg-heading h1{font-size:25px;max-width:75%}.epg-heading>span{font-size:6px;max-width:100px;line-height:1.8;text-align:right}.guide-stage{grid-template-columns:1fr;gap:16px}#guide-player-slot .receiver{max-width:650px;margin:auto}.epg-detail{padding:18px}.epg-detail-header h2{font-size:17px}.epg-detail-header>span:first-child{font-size:28px}.epg-state{font-size:8px}.epg-programme-detail h3{font-size:22px}.epg-toolbar{padding:12px;gap:12px}.epg-toolbar>div:first-child{width:100%;justify-content:space-between;gap:10px}.epg-toolbar #epg-range{font-size:8px}.epg-time-controls{flex-wrap:wrap;gap:5px;width:100%}.epg-time-controls input{flex:1;min-width:110px}.epg-time-controls button{font-size:9px;flex:1;white-space:nowrap}.epg-scroll{max-height:430px}.epg-grid{--channel-width:165px;min-width:1030px}.epg-channel{gap:9px;padding:10px}.epg-channel strong{font-size:10px}.epg-channel-number{font-size:23px}.epg-channel small{font-size:6px}.epg-help{font-size:8px;line-height:1.6}.epg-bottom{font-size:6px;letter-spacing:.5px}.epg-corner{padding:12px 10px;font-size:8px}.receiver .screen-top{padding-bottom:10px;font-size:6px}.receiver .screen-top>span:last-child{max-width:57%;font-size:6px;padding:5px}.receiver .tuning-scale{display:block}.epg-detail-actions button{font-size:10px}}
@media(max-width:480px){.receiver .tuning-scale{display:none}.receiver .screen-top>span:last-child{max-width:58%}.epg-heading h1{font-size:23px}.epg-toolbar strong{font-size:9px}}

/* A fuller running order in the receiver's companion panel. */
.epg-detail #epg-detail-description { font-size: 13px; line-height: 1.75; }
.epg-detail #epg-detail-meta,
.epg-detail #epg-detail-timing { font-size: 12px; line-height: 1.7; }
.epg-detail #epg-detail-next p { display: grid; grid-template-columns: 98px minmax(0, 1fr); gap: 16px; align-items: start; padding: 11px 0; margin: 0; border-bottom: 1px solid var(--line); font: 14px/1.5 var(--mono); }
.epg-detail #epg-detail-next time { color: #83cecf; font-size: 14px; white-space: nowrap; }
.epg-detail #epg-detail-next time small { display: block; font-size: 11px; line-height: 1.5; color: var(--muted); }
.epg-detail #epg-detail-next span { overflow-wrap: anywhere; }
.epg-detail .epg-detail-actions button { font-size: 12px; }
.epg-detail .epg-detail-actions a,
.epg-detail #epg-feedback { font-size: 11px; }
@media(max-width:760px) { .epg-detail #epg-detail-next p { grid-template-columns: 86px minmax(0, 1fr); gap: 12px; font-size: 13px; } }
