.tech-kicker { color:var(--accent); font-weight:720; letter-spacing:.025em; font-size:14px; }
.home-intro {
  position:relative; isolation:isolate; text-align:center;
  padding-block:clamp(40px,6vw,76px) 35px;
  --trace-color:#ff5a63;
  --fight-gold:#e8b85d;
  --sweep-color:#ff6e7838;
}
[data-theme=light] .home-intro { --trace-color:#ab2634; --fight-gold:#875e16; --sweep-color:#66728733; }
.hero-traces {
  position:absolute; inset:0 0 auto; width:100%; height:clamp(245px,36vw,390px);
  z-index:-1; color:var(--muted); opacity:.24; pointer-events:none;
  mask-image:linear-gradient(90deg,#000 4%,transparent 35%,transparent 65%,#000 96%);
}
.home-intro h1 { font-size:clamp(43px,7.5vw,104px); line-height:1; letter-spacing:-.068em; text-wrap:balance; margin:12px 0 18px; }
.home-intro > p:not(.tech-kicker) { max-width:54ch; margin:0 auto 22px; font-size:clamp(16px,2vw,21px); text-wrap:balance; }
.home-intro .tech-actions { justify-content:center; }
.product-figure { margin:clamp(29px,5vw,55px) auto 0; max-width:960px; }
.product-screen {
  border:1px solid var(--line); padding:10px; border-radius:19px; background:var(--surface);
  box-shadow:0 24px 56px -36px #0007; text-align:left;
}
.product-bar { display:flex; justify-content:space-between; align-items:center; gap:8px 16px; padding:5px 8px 12px; font-size:12px; }
.product-tabs {
  display:flex; flex-wrap:wrap; gap:5px 14px; margin:0; padding:0; list-style:none;
  color:var(--muted); font:600 11px/1.4 monospace; letter-spacing:.04em; text-transform:uppercase;
}
.product-tabs li:last-child { color:var(--fight-gold); }
.product-definitions { position:absolute; width:0; height:0; }
.product-panels {
  position:relative; display:grid; grid-template-columns:repeat(6,minmax(0,1fr));
  gap:6px; overflow:hidden; border-radius:10px;
}
.product-panel {
  position:relative; isolation:isolate; overflow:hidden; min-height:104px; aspect-ratio:1.03;
  display:flex; align-items:flex-end; padding:clamp(8px,1.3vw,15px);
  border:1px solid var(--line); border-radius:10px;
  background:linear-gradient(155deg,var(--raised),var(--surface));
}
.product-panel-fight {
  border-color:color-mix(in srgb,var(--fight-gold) 32%,var(--line));
  background:linear-gradient(155deg,color-mix(in srgb,var(--fight-gold) 13%,var(--raised)),var(--surface));
  color:var(--fight-gold);
}
.product-panel strong { font-size:clamp(15px,1.7vw,19px); line-height:1.13; white-space:nowrap; }
.product-trails,.product-sweep { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
.product-trails { z-index:-1; }
.product-sweep {
  background:linear-gradient(110deg,transparent 34%,var(--sweep-color) 50%,transparent 66%);
  opacity:0;
}
@media(prefers-reduced-motion:no-preference) {
  .product-sweep { animation:signal-sweep 6s linear infinite; }
}
@keyframes signal-sweep {
  0% { transform:translateX(-100%); opacity:0; }
  15%,60% { opacity:1; }
  75%,100% { transform:translateX(100%); opacity:0; }
}
.product-figure[data-motion-paused] .product-sweep { animation-play-state:paused; }
.signal-control { background:none; color:var(--muted); border:0; text-decoration:underline; text-underline-offset:2px; margin-left:8px; padding:3px; }
.product-figure figcaption { font-size:13px; color:var(--muted); margin-top:9px; }
.home-specs { padding:24px 0 75px; }
.home-specs h2 { font-size:clamp(30px,4vw,48px); margin:8px 0 22px; }
.control-specs,.portal-grid { display:grid; gap:12px; grid-template-columns:1fr 1fr; }
.control-specs { grid-template-columns:repeat(3,1fr); }
.control-specs > a,.portal-card { display:grid; align-content:start; gap:6px; border:1px solid var(--line); border-radius:10px; background:var(--surface); padding:20px; text-decoration:none; }
.control-specs > a:hover,.control-specs > a:focus-visible,.portal-card:hover { border-color:var(--accent); }
.control-specs > a:hover,.control-specs > a:focus-visible { box-shadow:0 0 0 1px var(--accent), 0 12px 28px -18px var(--accent); }
.feature-card-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; font:600 12px monospace; }
.feature-card-top .icon { width:22px; height:22px; color:var(--accent); }
.control-specs strong { font-size:19px; }
.control-specs span,.portal-card span { color:var(--muted); }
.portal-card strong { font-size:1.35em; }

.portal-check { display:flex; gap:8px; align-items:center; min-height:44px; margin-bottom:8px; }
[data-portal-text=large] .portal { font-size:1.2rem; }
[data-portal-contrast=high] .portal :is(.portal-panel,.portal-card,.channel-list button) { border-color:var(--muted); }
.release-entry { padding:16px 0; border-top:1px solid var(--line); }
.release-entry h2 { font-size:20px; margin:0 0 5px; }
.release-entry small { color:var(--muted); font-size:.75em; }
.release-entry p { margin:0; }
.usb-disclosure { border:0; padding:0; margin-top:12px; }
.usb-disclosure > summary { display:flex; width:fit-content; max-width:100%; }
.usb-disclosure[open] > summary .icon { transform:rotate(90deg); }
.usb-guide { margin-top:18px; border-top:1px solid var(--line); padding-top:14px; }
.watch-card { background:linear-gradient(135deg,var(--surface) 38%,color-mix(in srgb,var(--surface),#ba1624 13%)); }
.saved-playlists { list-style:none; padding:0; }
.saved-playlists li { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px; padding:8px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.usb-guide li { padding-bottom:9px; }
@media(max-width:820px) {
  .product-panels { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .product-panel { aspect-ratio:1.65; }
}
@media(max-width:520px) {
  .product-bar { align-items:flex-start; flex-direction:column; }
  .product-tabs { gap:4px 10px; font-size:10px; }
  .product-panels { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
  .control-specs { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:520px) {
  .hero-traces { opacity:.13; }
  .portal-grid,.control-specs { grid-template-columns:minmax(0,1fr); }
  .control-specs > a { padding:16px; }
  .feature-card-top { margin-bottom:6px; }
  .home-specs { padding-bottom:42px; }
}

.experiment-badge {
  display:inline-block; border:1px solid color-mix(in srgb,var(--gold) 45%,var(--line));
  border-radius:20px; padding:3px 10px; color:var(--gold); font-size:.78rem; font-weight:700;
}
.web-player-promo { margin-bottom:clamp(36px,6vw,76px); }
.web-promo-panel,.player-gate {
  display:flex; justify-content:space-between; align-items:center; gap:14px 28px; flex-wrap:wrap;
}
.web-promo-panel { padding:clamp(16px,4vw,32px); }
.web-promo-panel > div { flex:1 1 420px; min-width:0; }
.web-promo-panel h2 { font-size:clamp(25px,4vw,39px); margin:10px 0 6px; }
.web-promo-panel p,.workspace-head p { margin:6px 0 0; }
.player-head {
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap;
  gap:8px 20px; padding-block:clamp(18px,3vw,32px) 14px;
}
.player-title-row { display:flex; flex-wrap:wrap; align-items:center; gap:4px 12px; }
.player-head h1 { margin:0; font-size:clamp(30px,4vw,46px); }
.player-head p { margin:5px 0 0; }
.player-gate h2 { margin:0 0 6px; }
.player-gate { margin-bottom:clamp(28px,5vw,56px); }

.player-shell { --player-gap:12px; }
.player-shell .portal-panel { padding:clamp(12px,2vw,18px); min-width:0; }
.player-source { margin-bottom:var(--player-gap); }
.player-source-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:4px 12px; margin-bottom:8px; }
.player-source-heading h2,.player-stage-heading h2 { margin:0; font-size:clamp(20px,2.5vw,25px); }
.player-source-heading .text-link { font-size:.875rem; }
.player-source-form { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:8px; }
.player-source-form .field,.channel-filters .field { min-width:0; margin:0; }
.player-shell .field :is(input,select) { min-height:44px; background:var(--raised); }
.player-shell .field :is(input,select):disabled { opacity:.7; }
.player-hint { font-size:.875rem; overflow-wrap:anywhere; }
.player-shell .player-hint { margin:6px 0 0; }
.player-shell .player-hint:empty { display:none; }

.player-grid { display:grid; grid-template-columns:minmax(0,2.15fr) minmax(252px,1fr); gap:var(--player-gap); }
.player-stage-heading { margin-bottom:12px; }
.player-stage-heading h2 { overflow-wrap:anywhere; }
.player-kicker { display:block; margin-bottom:3px; color:var(--muted); font-size:.75rem; font-weight:720; letter-spacing:.08em; text-transform:uppercase; }
.video-frame { position:relative; overflow:hidden; aspect-ratio:16/9; border-radius:8px; background:#08090c; }
#web-video { width:100%; height:100%; background:#08090c; object-fit:contain; }
#web-video:fullscreen { border-radius:0; }
.video-empty { position:absolute; inset:0; display:grid; place-content:center; justify-items:center; gap:8px; padding:12px; text-align:center; }
.video-empty .icon { width:35px; height:35px; padding:7px; background:#252932; color:#f5f6f8; border-radius:50%; }
.video-empty p { margin:0; color:#c6cbd5; }
.player-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.player-actions .btn { background:var(--raised); }
.player-actions .btn:hover:not(:disabled) { border-color:var(--accent); }

.channel-panel { display:flex; flex-direction:column; min-height:0; }
.channel-panel .player-hint { margin:0; }
.channel-filters { display:grid; gap:8px; margin-bottom:10px; }
.channel-results { min-height:0; overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable; padding-right:2px; }
.channel-list { margin:0; padding:0; list-style:none; }
.channel-list button {
  display:block; width:100%; min-height:44px; padding:8px 10px; text-align:left; color:var(--text);
  background:transparent; border:0; border-bottom:1px solid var(--line); overflow-wrap:anywhere;
}
.channel-list button:hover { background:var(--raised); }
.channel-list button[aria-current] { background:var(--signal); box-shadow:inset 3px 0 var(--accent); }
.channel-list button:focus-visible { outline-offset:-3px; }
#channel-more { margin-top:8px; }
@media(min-width:781px) {
  .channel-panel { contain:size; min-height:340px; }
}
.player-tools { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--player-gap); align-items:start; margin-top:var(--player-gap); }
.player-source > .player-disclosure { margin-top:10px; border:0; border-top:1px solid var(--line); padding:8px 0 0; }
.player-disclosure > summary { min-height:32px; display:flex; justify-content:space-between; align-items:center; gap:8px; list-style:none; }
.player-disclosure > summary::-webkit-details-marker { display:none; }
.player-disclosure > summary::after { content:"+" / ""; color:var(--gold); }
.player-disclosure[open] > summary::after { content:"−" / ""; }
.player-disclosure[open] > summary { margin-bottom:8px; }
.player-jump { display:none; }
@media(max-width:780px) {
  .player-jump { display:inline-flex; align-items:center; align-self:flex-start; min-height:44px; }
  .player-grid { grid-template-columns:minmax(0,1fr); }
  .channel-results { max-height:min(50vh,350px); }
}
@media(max-width:520px) {
  .player-source-form,.player-tools { grid-template-columns:minmax(0,1fr); }
  .player-disclosure > summary { min-height:44px; }
  .player-source-form > .btn { justify-self:start; }
}

.account-portal .auth-panel { margin:0 0 20px; max-width:520px; }
.auth-choices { display:flex; gap:4px; padding:4px; margin-bottom:14px; border:1px solid var(--line); border-radius:9px; background:var(--raised); }
.auth-choices button { flex:1; min-height:38px; background:transparent; color:var(--muted); border:1px solid transparent; border-radius:6px; font-weight:650; }
.auth-choices button[aria-pressed=true] { background:var(--surface); color:var(--text); border-color:var(--line); }
.workspace-head,.account-portal { max-width:820px; }
.workspace-head { padding-block:clamp(28px,5vw,54px) 18px; }
.workspace-head h1 { margin:0; font-size:clamp(32px,5vw,54px); }
.workspace-lead { display:grid; justify-items:start; gap:12px; border-color:color-mix(in srgb,var(--red) 38%,var(--line)); }
.workspace-lead h2,.workspace-lead p { margin:0; }
.workspace-lead p { margin-top:4px; }
.workspace-section { margin-top:14px; }
.workspace-section h2,.workspace-section p { margin-block:0 8px; }
.workspace-section p:last-child { margin-bottom:0; }
.workspace-links { display:flex; align-items:center; gap:12px; margin-top:14px; }
.source-editor { border:0; padding:6px 0; }
.source-editor form { max-width:460px; padding-top:12px; }
#playlist-account-status:empty { display:none; }
.playlist-credentials { min-width:0; padding:0; margin:0; border:0; }
.category-tools .button-row { gap:6px; }

#signal-film {
  max-width: 1120px;
  margin-top: clamp(24px, 3vw, 40px);
}
#signal-film video {
  width: 100%;
  height: auto;
  mask-image: linear-gradient(to right, transparent, #000 11%, #000 89%, transparent),
              linear-gradient(to bottom, transparent, #000 17%, #000 82%, transparent);
  mask-composite: intersect;
}
#signal-film figcaption { margin-top: 0; }
