/* Stream-specific additions; no other project or scene styling. */
.viewer-channel-links[hidden]{display:none}
.featured-stream.featured-empty{min-height:370px;justify-content:center;padding:24px;text-align:center;gap:16px}.featured-empty h3{font-size:1.1rem;margin:0}.featured-empty p{color:#bdc7df;line-height:1.6;margin:0}.featured-empty a{color:#9edfff}.featured-stream-meta:has(>.stream-state){grid-template-columns:minmax(0,1fr) auto}.featured-twitch-player:has(iframe){min-height:300px}
/* Personal player: compact identity and navigation, with no repeated promotional hero. */
.stream-page-heading{padding:24px 0 12px}.stream-heading-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.stream-page-heading h1{font-size:clamp(1.55rem,3vw,2.15rem);line-height:1.2;margin:0}.streams-player-section.section{padding-block:12px 24px}.streams-info-section.section{padding-block:0 28px}.streams-info-section .info-card{padding:20px}.streams-info-section .plain-list [hidden]{display:none}
.stream-view-tabs{display:flex;flex-wrap:wrap;gap:5px;padding:5px;border:1px solid rgba(171,89,255,.32);border-radius:12px;background:rgba(5,10,25,.8);width:fit-content}.stream-view-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 15px;border-radius:8px;color:#c8d0e6;font-size:.82rem;font-weight:750;text-decoration:none;white-space:nowrap}.stream-view-tabs a:hover{color:#fff;background:rgba(169,112,255,.13)}.stream-view-tabs a[aria-current="page"]{color:#fff;background:linear-gradient(180deg,#8c36d4,#5d249f);box-shadow:inset 0 1px 0 rgba(237,204,255,.28),0 3px 14px rgba(122,45,217,.22)}
body.stream-viewer{margin:0;background:radial-gradient(ellipse at 12% 8%,rgba(111,37,184,.17),transparent 46%),radial-gradient(ellipse at 95% 40%,rgba(0,184,216,.06),transparent 45%),#060712;color:#eef2f8;font-family:var(--font,system-ui,sans-serif);color-scheme:dark}body.stream-viewer *{box-sizing:border-box}.viewer-main{width:min(calc(100% - 64px),1560px);margin:0 auto;padding:26px 0 36px}.viewer-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;margin-bottom:22px;border:1px solid rgba(170,95,255,.3);border-radius:18px;background:linear-gradient(115deg,rgba(30,13,54,.85),rgba(7,15,31,.92));box-shadow:0 16px 45px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.025)}.viewer-heading .kicker{font-size:.67rem;letter-spacing:.16em;margin:0 0 9px}.viewer-heading h1{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.16;letter-spacing:-.03em;margin:0 0 10px}.viewer-heading .intro{color:#b9c4de;max-width:62ch;line-height:1.6;font-size:.9rem;margin:0}.viewer-heading .stream-view-tabs{flex:none}.viewer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.viewer-slot{position:relative;background:linear-gradient(160deg,rgba(18,15,39,.97),rgba(6,14,28,.98));border:1px solid rgba(159,91,239,.4);border-radius:16px;padding:14px;min-width:0;box-shadow:0 15px 32px rgba(0,0,0,.3),inset 0 1px 0 rgba(215,178,255,.04)}.viewer-slot::before{content:"";position:absolute;top:-1px;left:24px;right:24px;height:1px;background:linear-gradient(90deg,transparent,rgba(177,105,255,.85),transparent);pointer-events:none}.viewer-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px;padding:3px 2px}.viewer-controls label{font-size:.7rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#c7a2f0}.viewer-controls select{flex:1;min-width:100px;max-width:100%;min-height:40px;font:inherit;font-size:.86rem;font-weight:650;border:1px solid rgba(167,123,224,.36);border-radius:8px;padding:9px 30px 9px 12px;background:#11162a;color:#f4f0ff}.viewer-controls button{flex:none;cursor:pointer;font-size:.8rem;min-height:40px}.viewer-controls button:disabled{opacity:.45;cursor:default;transform:none}.viewer-stage{width:100%;min-width:0;min-height:302px;aspect-ratio:16/9;display:grid;place-content:center;background:radial-gradient(ellipse at center,rgba(83,37,129,.18),transparent 72%),#050913;border:1px solid rgba(112,77,166,.19);border-radius:10px;overflow:hidden}.viewer-stage iframe{display:block;width:100%;height:100%;border:0;min-height:302px}.viewer-stage:has(iframe){display:block;border:0}.viewer-stage p{max-width:38ch;padding:20px;text-align:center;color:#aebbd8;font-size:.9rem;line-height:1.6;margin:auto}.viewer-status{display:inline-flex;align-items:center;gap:7px;min-height:27px;padding:5px 9px;margin:12px 0 3px;border:1px solid rgba(135,148,178,.2);border-radius:7px;background:rgba(8,13,27,.7);color:#aebbd0;font-size:.7rem;line-height:1.3}.viewer-status::before{content:"";width:5px;height:5px;border-radius:50%;background:#7d8ba7;flex:none}.viewer-status[data-state="live"]{color:#a6fbc0;border-color:rgba(65,230,125,.3)}.viewer-status[data-state="live"]::before{background:#5aed97;box-shadow:0 0 8px #5aed97}.viewer-channel-links{display:flex;gap:18px;flex-wrap:wrap;padding:8px 2px 2px;margin:0}.viewer-channel-links a{color:#98dfff;font-size:.76rem;font-weight:650;text-decoration:none}.viewer-channel-links a:hover{color:white;text-decoration:underline}.viewer-channel-links[hidden]{display:none}.viewer-help{font-size:.75rem;color:#8d9bb6;margin:20px 2px 0}.viewer-main button:focus-visible,.viewer-main a:focus-visible,.viewer-main select:focus-visible,.stream-view-tabs a:focus-visible{outline:3px solid #73e6ff;outline-offset:4px}.viewer-skip{position:absolute;left:12px;top:-80px;z-index:10005;background:#070b14;color:white;padding:12px}.viewer-skip:focus{top:8px}
@media(max-width:1100px){.viewer-heading{align-items:flex-start;flex-direction:column;gap:18px}.viewer-main{width:calc(100% - 40px)}}@media(max-width:940px){.viewer-grid{grid-template-columns:1fr}.viewer-heading{flex-direction:row;align-items:center;flex-wrap:wrap}}@media(max-width:600px){.stream-page-heading{padding-top:18px}.stream-heading-inner{gap:12px}.stream-view-tabs a{padding-inline:11px;font-size:.76rem}.viewer-main{width:calc(100% - 28px);padding-top:18px}.viewer-heading{padding:20px 18px;gap:16px;border-radius:14px}.viewer-heading h1{font-size:1.9rem}.viewer-heading .intro{font-size:.82rem}.viewer-heading .stream-view-tabs{width:100%}.viewer-heading .stream-view-tabs a{flex:1;padding-inline:8px}.viewer-slot{padding:12px}.viewer-controls{gap:9px}.viewer-controls button{font-size:.75rem;padding-inline:12px}.viewer-controls select{font-size:.82rem}.viewer-stage{aspect-ratio:auto;min-height:302px}.viewer-grid{gap:16px}}@media(max-width:440px){.viewer-stage{min-height:240px}}

/* Keep the single-stream view composed like the approved homepage without crowding the player. */
body[data-view="streams"] .stream-page-heading .wrap-narrow,body[data-view="streams"] .streams-player-section .wrap-narrow,body[data-view="streams"] .streams-info-section .wrap-narrow{width:min(calc(100% - 200px),1240px);max-width:none}
body[data-view="streams"] .stream-dock{border-color:rgba(154,83,232,.52);box-shadow:0 18px 48px rgba(0,0,0,.32),0 0 28px rgba(99,68,209,.13)}
body[data-view="streams"] .streams-info-section .info-grid{align-items:stretch}
body[data-view="streams"] :is(button,a,select){scroll-margin-block:7.5rem 11rem}
@media(max-width:1100px){body[data-view="streams"] .stream-page-heading .wrap-narrow,body[data-view="streams"] .streams-player-section .wrap-narrow,body[data-view="streams"] .streams-info-section .wrap-narrow{width:min(calc(100% - 40px),1040px)}}
@media(max-width:600px){body[data-view="streams"] #main{padding-bottom:10rem}body[data-view="streams"] .stream-page-heading .wrap-narrow,body[data-view="streams"] .streams-player-section .wrap-narrow,body[data-view="streams"] .streams-info-section .wrap-narrow{width:calc(100% - 28px)}body[data-view="streams"] .stream-view-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}body[data-view="streams"] .stream-view-tabs a{white-space:normal;text-align:center}}

/* Homepage idle slots: useful destinations while provider checks are unavailable or offline. */
[data-featured-streamers] .featured-empty{position:relative;isolation:isolate;overflow:hidden;align-items:center;min-width:0;min-height:370px;padding:32px 28px;gap:13px;border:1px solid rgba(177,105,255,.4);background:radial-gradient(ellipse at 50% 0,rgba(133,50,218,.24),transparent 68%),linear-gradient(145deg,#17102d,#080d1c);box-shadow:inset 0 1px 0 rgba(221,189,255,.08),0 14px 34px rgba(0,0,0,.22)}
[data-featured-streamers] .featured-watch-party{border-color:rgba(69,199,226,.3);background:radial-gradient(ellipse at 50% 0,rgba(0,167,205,.16),transparent 68%),linear-gradient(145deg,#101b30,#080d1c)}
.featured-empty-emblem{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;border:1px solid rgba(192,135,255,.4);background:linear-gradient(145deg,rgba(160,74,242,.24),rgba(109,50,180,.07));color:#d6b2ff;font-size:26px;line-height:1;box-shadow:0 0 34px rgba(161,76,243,.14)}
.featured-watch-party .featured-empty-emblem{border-color:rgba(92,212,238,.35);background:rgba(55,173,208,.1);color:#8feaff;box-shadow:0 0 34px rgba(55,173,208,.12)}
.featured-empty-eyebrow{font-size:.65rem;letter-spacing:.15em;font-weight:800;color:#c7a1ee}.featured-watch-party .featured-empty-eyebrow{color:#89d4e4}
[data-featured-streamers] .featured-empty h3{font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.25;letter-spacing:-.025em;color:#f6f0ff}
[data-featured-streamers] .featured-empty p{font-size:.86rem;max-width:42ch;line-height:1.65;color:#b9c4db}
.featured-empty-actions{display:flex;justify-content:center;align-items:center;gap:12px 18px;flex-wrap:wrap;margin-top:4px;width:100%}.featured-empty-actions a{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:10px 5px;font-size:.8rem;font-weight:750;text-decoration:none;line-height:1.4}.featured-empty-actions a:hover{text-decoration:underline;color:#fff}.featured-empty-actions .featured-empty-primary{padding:11px 17px;border:1px solid rgba(193,133,255,.55);border-radius:9px;color:#fff;background:linear-gradient(180deg,#7533b4,#512582);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}.featured-watch-party .featured-empty-actions .featured-empty-primary{background:linear-gradient(180deg,#195c76,#143b54);border-color:rgba(102,205,235,.45)}.featured-empty-actions a:focus-visible{outline:3px solid #8feaff;outline-offset:4px}
.featured-empty-status{color:#9ba9c3;font-size:.69rem;line-height:1.5;max-width:100%}
@media(max-width:600px){[data-featured-streamers] .featured-empty{padding:26px 20px;min-height:350px}.featured-empty-actions{gap:5px 12px}.featured-empty-actions a{font-size:.76rem}}

/* Give Twitch its widescreen viewport; stack slots before 16:9 would violate its 300px minimum. */
.home-dashboard .stream-panel{container-type:inline-size}
[data-featured-streamers]{align-items:stretch}
[data-featured-streamers] .featured-twitch-player{position:relative;aspect-ratio:16/9;height:auto;min-height:300px;overflow:visible}
[data-featured-streamers] .featured-twitch-player iframe{position:absolute;inset:0;width:100%;height:100%;min-height:300px;border:0}
@container(max-width:1100px){[data-featured-streamers]:has(>.is-live){grid-template-columns:minmax(0,1fr)}}
[data-featured-streamers] .featured-stream-meta:has(>.stream-state){grid-template-columns:minmax(0,1fr) auto auto;gap:12px;padding:12px;align-items:center}
.featured-identity{min-width:0}.featured-stream-meta .featured-creator-link{display:inline-flex;align-items:center;gap:10px;max-width:100%;min-height:40px}.featured-creator-link span{overflow-wrap:anywhere}.featured-creator-logo{width:36px;height:36px;flex:none;object-fit:contain;border-radius:50%;filter:drop-shadow(0 0 7px rgba(171,89,255,.25))}
[data-featured-streamers] .featured-stream-meta .featured-twitch-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 14px;margin:0;border:1px solid rgba(194,132,255,.65);border-radius:10px;background:linear-gradient(180deg,#8036c3,#552183);color:#fff;font-size:.75rem;font-weight:800;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 4px 16px rgba(116,45,185,.18)}
[data-featured-streamers] .featured-twitch-link .i{width:17px;height:17px;flex:none}.featured-stream-meta .featured-twitch-link:hover{filter:brightness(1.15)}.featured-stream-meta a:focus-visible{outline:3px solid #8feaff;outline-offset:4px}
@media(max-width:600px){[data-featured-streamers] .featured-stream-meta:has(>.stream-state){grid-template-columns:minmax(0,1fr) auto;gap:10px}[data-featured-streamers] .featured-twitch-link{grid-row:2;grid-column:1/-1}[data-featured-streamers] .stream-state{grid-row:1;grid-column:2}}

/* Keep the radio controls at their content height beside the taller stream column. */
.home-dashboard .dash-row > .radio-panel{height:auto;align-self:start}

/* Supplied stream-lounge artwork: decorative, with readable status and real channel actions. */
[data-featured-streamers] .featured-empty{justify-content:flex-end;gap:10px;padding:26px 24px;background:linear-gradient(180deg,rgba(4,8,20,.08)0%,rgba(4,8,20,.18)35%,rgba(4,8,20,.68)72%,rgba(4,8,20,.94)100%),url('/assets/neon-20261020/stream-lounge-20261031-21f3a05fc989.webp') center/cover no-repeat;box-shadow:inset 0 1px 0 rgba(223,191,255,.12),0 14px 34px rgba(0,0,0,.22)}
[data-featured-streamers] .featured-empty-emblem{display:none}
[data-featured-streamers] .featured-empty h3{text-shadow:0 2px 14px #02040d}
[data-featured-streamers] .featured-empty p{font-size:.82rem;line-height:1.55;color:#d2daed;text-shadow:0 1px 8px #02040d}
[data-featured-streamers] .featured-empty-eyebrow{color:#e0c9ff;text-shadow:0 1px 8px #02040d}
[data-featured-streamers] .featured-watch-party{background-position:right center;border-color:rgba(87,206,233,.4)}
@media(max-width:600px){[data-featured-streamers] .featured-empty{padding:24px 20px;min-height:350px}}

/* Prevent intrinsic dashboard/header widths from widening a narrow Home viewport. */
@media(max-width:899px){body[data-view="home"] .home-dashboard{width:100%!important;max-width:100%;min-width:0;grid-template-columns:minmax(0,1fr)}body[data-view="home"] .home-dashboard>.dash-row,body[data-view="home"] .home-dashboard .dashboard-panel{min-width:0;max-width:100%}}
@media(max-width:440px){body[data-view="home"] .home-dashboard .panel-heading{flex-wrap:wrap;gap:4px 10px}body[data-view="home"] .home-dashboard .panel-heading h2{min-width:0}}

/* Home's status summary must wrap instead of imposing an intrinsic grid width. */
@media(max-width:440px){body[data-view="home"] .network-status-strip{grid-template-columns:minmax(0,1fr)}body[data-view="home"] .network-status-strip p{min-width:0;white-space:normal;flex-wrap:wrap}body[data-view="home"] .network-status-strip p>span:last-child{flex-basis:100%}body[data-view="home"] .network-status-strip ul{min-width:0;max-width:100%}}
@media(max-width:360px){body[data-view="home"] .home-dashboard .radio-console{grid-template-columns:64px minmax(0,1fr) 44px;gap:10px}}
