/* Secret Squirrel TV — scoped to .sstv-root and .sstv-overlay */
.sstv-root,.sstv-overlay{--sstv-accent:#ccff55;--sstv-accent2:#ff8d62;--sstv-bg:#101720;--sstv-card-w:222px;--sstv-round:16px;--sstv-paper:#f0f5e9;--sstv-muted:#a9b6b4;color:var(--sstv-paper);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-sizing:border-box}
.sstv-root *,.sstv-overlay *{box-sizing:border-box}
.sstv-root button,.sstv-overlay button{font:inherit;cursor:pointer}
.sstv-root button:focus-visible,.sstv-overlay button:focus-visible,.sstv-overlay a:focus-visible{outline:3px solid var(--sstv-accent);outline-offset:3px}
.sstv-root .sstv-rail{background:var(--sstv-bg);background-image:radial-gradient(circle at 92% 10%,color-mix(in srgb,var(--sstv-accent) 13%,transparent),transparent 31%),radial-gradient(circle at 6% 100%,color-mix(in srgb,var(--sstv-accent2) 7%,transparent),transparent 36%);border-top:2px solid color-mix(in srgb,var(--sstv-accent) 55%,transparent);border-bottom:1px solid #334148;border-radius:0;box-shadow:0 -14px 40px rgba(0,0,0,.1);padding:28px clamp(14px,3.6vw,44px) 15px;position:relative;overflow:hidden;isolation:isolate}
.sstv-root .sstv-rail:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0px,transparent 7px,rgba(255,255,255,.013) 8px);z-index:-1;pointer-events:none}
.sstv-root .sstv-rail-head{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:18px;position:relative}
.sstv-root .sstv-brand{display:flex;align-items:center;min-width:0;gap:12px}
.sstv-root .sstv-mascot{width:96px;height:94px;align-self:flex-end;object-fit:contain;margin-top:-34px;margin-bottom:-10px;filter:drop-shadow(0 4px 1px rgba(0,0,0,.3));animation:sstv-peek 6.5s ease-in-out infinite;transform-origin:bottom center;flex-shrink:0}
@keyframes sstv-peek{0%,87%,100%{transform:translateY(3px) rotate(-3deg)}90%,95%{transform:translateY(-5px) rotate(3deg)}}
.sstv-root .sstv-eyebrow,.sstv-overlay .sstv-stage-brand small,.sstv-overlay .sstv-grid-heading small{font-size:9px;line-height:1.3;letter-spacing:2.1px;color:var(--sstv-accent);font-weight:800}
.sstv-root .sstv-eyebrow{display:flex;align-items:center;gap:7px;margin-bottom:6px}
.sstv-root .sstv-live-dot{width:6px;height:6px;border-radius:50%;display:inline-block;flex-shrink:0;background:var(--sstv-accent);box-shadow:0 0 9px var(--sstv-accent);animation:sstv-pulse 2s ease-in-out infinite}
@keyframes sstv-pulse{50%{opacity:.3}}
.sstv-root .sstv-logo{font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;color:var(--sstv-paper);font-size:clamp(26px,3.6vw,45px);letter-spacing:.8px;line-height:.98;text-transform:uppercase}
.sstv-root .sstv-logo-tv{color:var(--sstv-accent);text-shadow:2px 3px 0 rgba(0,0,0,.45)}
.sstv-root .sstv-subtitle{color:var(--sstv-muted);font-size:12px;margin-top:7px}
.sstv-root .sstv-open-hatch{background:var(--sstv-accent);border:0;border-radius:6px;color:#121914;font-size:12px;font-weight:900;letter-spacing:1px;padding:14px 16px;white-space:nowrap;box-shadow:4px 4px 0 var(--sstv-accent2);transform:rotate(1.5deg);transition:transform .18s,box-shadow .18s}
.sstv-root .sstv-open-hatch:hover{transform:rotate(-2deg) translateY(-2px);box-shadow:6px 6px 0 var(--sstv-accent2)}
.sstv-root .sstv-track-frame{position:relative;display:flex;align-items:center;gap:8px}
.sstv-root .sstv-track{display:flex;gap:13px;overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--sstv-accent) transparent;padding:10px 2px 15px;flex:1;min-width:0}
.sstv-root .sstv-video-card,.sstv-overlay .sstv-grid-card{background:#1b2730;border:1px solid #3c4b50;border-radius:var(--sstv-round);color:var(--sstv-paper);overflow:hidden;text-align:left;display:flex;flex-direction:column;padding:0;min-width:0;transition:transform .16s,border-color .16s,box-shadow .16s}
.sstv-root .sstv-video-card{flex:0 0 var(--sstv-card-w);scroll-snap-align:start;box-shadow:0 5px 0 rgba(0,0,0,.22)}
.sstv-root .sstv-video-card:hover,.sstv-overlay .sstv-grid-card:hover{transform:translateY(-4px) rotate(-.6deg);border-color:var(--sstv-accent);box-shadow:0 8px 20px rgba(0,0,0,.32)}
.sstv-root .sstv-card-image,.sstv-overlay .sstv-card-image{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;background:#24303b;width:100%}
.sstv-root .sstv-card-image img,.sstv-overlay .sstv-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .24s}
.sstv-root .sstv-video-card:hover img,.sstv-overlay .sstv-grid-card:hover img{transform:scale(1.06)}
.sstv-root .sstv-card-play,.sstv-overlay .sstv-card-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:44px;height:44px;display:grid;place-items:center;border:2px solid rgba(255,255,255,.85);background:rgba(6,15,21,.67);backdrop-filter:blur(5px);color:white;border-radius:50%;font-size:15px;padding-left:3px}
.sstv-root .sstv-video-card:hover .sstv-card-play,.sstv-overlay .sstv-grid-card:hover .sstv-card-play{background:var(--sstv-accent);color:#101720;border-color:var(--sstv-accent)}
.sstv-root .sstv-demo-badge,.sstv-overlay .sstv-demo-badge{position:absolute;top:7px;left:7px;font-size:8px;letter-spacing:1px;font-weight:850;color:#172017;background:var(--sstv-accent);padding:4px 6px;transform:rotate(-3deg)}
.sstv-root .sstv-card-bottom,.sstv-overlay .sstv-card-bottom{padding:10px 12px 12px;display:flex;flex-direction:column;gap:4px;min-width:0}
.sstv-root .sstv-card-number,.sstv-overlay .sstv-card-number{font-size:8px;font-weight:900;letter-spacing:1.5px;color:var(--sstv-accent2)}
.sstv-root .sstv-card-title,.sstv-overlay .sstv-card-title{font-size:13px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;line-height:1.4}
.sstv-root .sstv-track-nav{background:#27333b;border:1px solid #45535a;color:var(--sstv-accent);border-radius:50%;width:30px;height:30px;flex-shrink:0;font-size:24px;line-height:18px;display:grid;place-items:center;padding-bottom:5px}
.sstv-root .sstv-track-nav:hover{background:var(--sstv-accent);color:#121914}
.sstv-root .sstv-rail-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#7c9496;font-size:9px;letter-spacing:1.8px;padding-top:3px;font-weight:700}
.sstv-root .sstv-rail-foot b{color:var(--sstv-accent2)}
.sstv-root .sstv-empty{background:#161f26;color:#c9d3c7;padding:20px}
/* Modal */
body.sstv-overlay-open{overflow:hidden!important}
.sstv-overlay{position:fixed!important;inset:0!important;z-index:2147483000!important;display:flex;align-items:center;justify-content:center;padding:clamp(4px,2vw,23px);color:var(--sstv-paper);isolation:isolate}
.sstv-overlay-backdrop{position:absolute;inset:0;background:rgba(0,5,9,.87);backdrop-filter:blur(11px);cursor:zoom-out;z-index:-1}
.sstv-overlay .sstv-stage{height:100%;width:min(1500px,100%);position:relative;overflow:hidden;display:flex;flex-direction:column;border:2px solid var(--sstv-accent);border-radius:12px;background:var(--sstv-bg);box-shadow:0 0 0 5px rgba(0,0,0,.3),0 22px 65px rgba(0,0,0,.5)}
.sstv-overlay .sstv-stage:before{content:"TOP SECRET • TOP SECRET • TOP SECRET";position:absolute;left:-70px;top:290px;transform:rotate(-90deg);font-size:8px;letter-spacing:4px;color:rgba(255,255,255,.1);pointer-events:none}
.sstv-overlay .sstv-stage-head{display:flex;gap:12px;align-items:center;justify-content:space-between;border-bottom:1px solid #38434b;padding:14px clamp(12px,2.5vw,34px);background:#0b1118;flex-shrink:0;min-height:76px}
.sstv-overlay .sstv-stage-brand{display:flex;align-items:center;gap:12px;min-width:0}
.sstv-overlay .sstv-stage-icon{font-size:36px;transform:rotate(-17deg)}
.sstv-overlay .sstv-stage-brand small{display:block;margin-bottom:3px}
.sstv-overlay .sstv-stage-brand strong{display:block;font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:clamp(21px,2.7vw,34px);letter-spacing:1px;line-height:1.2!important;padding:.10em 0 .13em;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:65vw}
.sstv-overlay .sstv-stage-actions{display:flex;align-items:center;gap:20px}
.sstv-overlay .sstv-tiny-label{font-size:9px;color:#819395;letter-spacing:1.2px}
.sstv-overlay .sstv-close{background:transparent;color:var(--sstv-accent);border:1px solid var(--sstv-accent);border-radius:6px;font-size:12px;font-weight:800;letter-spacing:1px;padding:9px 12px}
.sstv-overlay .sstv-close:hover{background:var(--sstv-accent);color:#111}
.sstv-overlay .sstv-stage-scroll{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:clamp(12px,2.8vw,34px);scrollbar-color:var(--sstv-accent) #19232d;scrollbar-width:thin}
.sstv-overlay .sstv-top-content{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(230px,.75fr);align-items:start;gap:clamp(16px,3vw,40px)}
.sstv-overlay .sstv-player-shell{min-width:0}
.sstv-overlay .sstv-player{aspect-ratio:16/9;background:#010305;border:2px solid #39464c;position:relative;overflow:hidden;box-shadow:8px 9px 0 rgba(0,0,0,.25)}
.sstv-overlay .sstv-player video,.sstv-overlay .sstv-player iframe{display:block;width:100%;height:100%;border:0;object-fit:contain;background:black}
.sstv-overlay .sstv-player-sub{display:flex;gap:12px;justify-content:space-between;margin-top:14px;align-items:center;font-size:10px;font-weight:800;letter-spacing:1.4px;color:#b4c3bf}
.sstv-overlay .sstv-playing-pill{color:var(--sstv-accent);font-size:10px}
.sstv-overlay .sstv-file-tag{display:inline-block;background:var(--sstv-accent2);color:#1a1311;font-size:9px;font-weight:950;letter-spacing:2px;padding:7px 9px;transform:rotate(-2deg);margin:3px 0 20px}
.sstv-overlay .sstv-active-info h2{font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;line-height:1.05;letter-spacing:.4px;font-size:clamp(31px,4.5vw,63px);margin:0 0 18px;color:var(--sstv-paper);overflow-wrap:anywhere}
.sstv-overlay .sstv-current-description{font-size:clamp(13px,1.4vw,16px);line-height:1.7;color:#b3c0ba;margin:0 0 24px}
.sstv-overlay .sstv-actions{display:flex;flex-wrap:wrap;gap:11px}
.sstv-overlay .sstv-read-story,.sstv-overlay .sstv-next-video,.sstv-overlay .sstv-story-link{border:0;color:#142016;background:var(--sstv-accent);font-size:12px;font-weight:900;letter-spacing:.7px;border-radius:5px;padding:13px 14px;text-decoration:none;display:inline-block}
.sstv-overlay .sstv-next-video{background:#27353b;color:#f7f7e8;border:1px solid #536066}
.sstv-overlay .sstv-read-story:hover,.sstv-overlay .sstv-story-link:hover{filter:brightness(1.13)}
.sstv-overlay .sstv-disclaimer{font-size:10px;color:#637b7d;margin-top:22px}
.sstv-overlay .sstv-grid-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;border-top:1px dashed #4c605e;margin:40px 0 17px;padding-top:24px}
.sstv-overlay .sstv-grid-heading h3{font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:clamp(24px,3.5vw,39px);margin:6px 0 0;letter-spacing:.3px}
.sstv-overlay .sstv-grid-heading>span{color:var(--sstv-accent);font-size:10px;white-space:nowrap;letter-spacing:1.3px}
.sstv-overlay .sstv-video-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.sstv-overlay .sstv-grid-card{width:100%;cursor:pointer}
.sstv-overlay .sstv-grid-card.is-active{border-color:var(--sstv-accent);box-shadow:0 0 0 2px var(--sstv-accent)}
.sstv-overlay .sstv-grid-card .sstv-card-title{font-size:13px}
.sstv-overlay .sstv-stage-foot{margin:38px 0 3px;color:#678084;text-align:center;letter-spacing:2px;font-size:10px}
.sstv-overlay .sstv-no-signal{width:100%;height:100%;padding:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:repeating-linear-gradient(0deg,#16252b,#16252b 3px,#26343a 4px);gap:8px}
.sstv-overlay .sstv-no-signal span{font-size:56px}.sstv-overlay .sstv-no-signal strong{font-size:17px;letter-spacing:2px}.sstv-overlay .sstv-no-signal p{font-size:13px;color:#ccd3c5;margin:0}.sstv-overlay .sstv-no-signal a{color:var(--sstv-accent);font-weight:bold}
.sstv-overlay .sstv-story-panel{position:absolute;z-index:4;right:0;top:76px;bottom:0;width:min(470px,100%);background:#f2eedb;color:#1a2a28;padding:clamp(20px,4vw,44px);transform:translateX(103%);transition:transform .24s ease;box-shadow:-16px 0 25px rgba(0,0,0,.3);overflow-y:auto;visibility:hidden}
.sstv-overlay .sstv-story-panel.is-open{transform:translateX(0);visibility:visible}
.sstv-overlay .sstv-story-close{border:0;background:transparent;padding:0;color:#20372b;font-weight:800;font-size:12px;letter-spacing:1.2px;margin-bottom:52px}
.sstv-overlay .sstv-story-kicker{display:block;background:#203b2b;color:var(--sstv-accent);font-size:10px;letter-spacing:1.4px;padding:8px 10px;width:max-content;max-width:100%;transform:rotate(-1deg)}
.sstv-overlay .sstv-story-title{font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:clamp(34px,4vw,54px);margin:28px 0 14px;line-height:1.05;color:#193328}
.sstv-overlay .sstv-story-description{font-size:17px;line-height:1.65;color:#384940;margin-bottom:30px}
.sstv-overlay .sstv-story-link{background:#203b2b;color:#d9f8ac}
.sstv-overlay .sstv-story-link[aria-disabled="true"]{opacity:.6;pointer-events:none}
.sstv-overlay .sstv-story-note{margin-top:24px;font-size:11px;color:#6f7768;line-height:1.5}
/* alternate styles */
.sstv-root[data-tv-style="arcade"] .sstv-rail,.sstv-overlay[data-tv-style="arcade"] .sstv-stage{background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.03) 0 1px,transparent 1px 22px)}
.sstv-root[data-tv-style="arcade"] .sstv-logo,.sstv-overlay[data-tv-style="arcade"] .sstv-stage-brand strong{text-shadow:3px 3px 0 var(--sstv-accent2)}
.sstv-root[data-tv-style="noir"] .sstv-rail{background-image:radial-gradient(ellipse at 90% 40%,rgba(255,255,255,.045),transparent 65%)}
.sstv-root[data-tv-style="noir"] .sstv-mascot{filter:grayscale(.8) drop-shadow(1px 4px 0 #000)}
@media(max-width:850px){.sstv-overlay .sstv-top-content{grid-template-columns:1fr}.sstv-overlay .sstv-video-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sstv-overlay .sstv-file-tag{margin-bottom:10px}.sstv-overlay .sstv-active-info h2{margin-bottom:9px}.sstv-overlay .sstv-disclaimer{display:none}.sstv-overlay .sstv-current-description{margin-bottom:15px}}
@media(max-width:540px){.sstv-root .sstv-rail{padding:25px 8px 12px}.sstv-root .sstv-rail-head{align-items:flex-start;flex-direction:column;gap:11px;padding:0 7px}.sstv-root .sstv-brand{gap:6px}.sstv-root .sstv-mascot{width:65px;height:74px;margin-top:-24px;margin-bottom:-5px}.sstv-root .sstv-logo{font-size:27px}.sstv-root .sstv-eyebrow{font-size:7px;letter-spacing:.9px}.sstv-root .sstv-subtitle{font-size:11px}.sstv-root .sstv-open-hatch{font-size:11px;padding:9px 12px;margin-left:70px}.sstv-root .sstv-track-nav{display:none}.sstv-root .sstv-track{padding-left:8px}.sstv-root .sstv-rail-foot{font-size:8px;letter-spacing:.6px;padding:2px 9px}.sstv-overlay{padding:0}.sstv-overlay .sstv-stage{border-width:0;border-radius:0}.sstv-overlay .sstv-stage-head{min-height:64px;padding:8px 12px}.sstv-overlay .sstv-stage-icon{font-size:24px}.sstv-overlay .sstv-stage-brand strong{font-size:20px}.sstv-overlay .sstv-stage-brand small{font-size:7px;letter-spacing:1px}.sstv-overlay .sstv-close{padding:8px;font-size:17px}.sstv-overlay .sstv-close span,.sstv-overlay .sstv-tiny-label{display:none}.sstv-overlay .sstv-stage-scroll{padding:12px}.sstv-overlay .sstv-video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sstv-overlay .sstv-grid-heading{margin-top:23px}.sstv-overlay .sstv-grid-heading>span{display:none}.sstv-overlay .sstv-story-panel{top:64px}.sstv-overlay .sstv-stage-head{border-bottom:1px solid #3e5146}}
@media(prefers-reduced-motion:reduce){.sstv-root .sstv-mascot,.sstv-root .sstv-live-dot{animation:none}.sstv-root *, .sstv-overlay *{transition-duration:.001s!important;scroll-behavior:auto!important}}

/* v0.2.0: opt-in streaming previews on the compact footer rail only. */
.sstv-root .sstv-video-card .sstv-card-motion{position:absolute;inset:0;overflow:hidden;pointer-events:none;opacity:0;z-index:1;background:#06090d;transition:opacity .2s ease}
.sstv-root .sstv-video-card.is-playing .sstv-card-motion{opacity:1}
.sstv-root .sstv-video-card .sstv-card-motion video,
.sstv-root .sstv-video-card .sstv-card-motion iframe,
.sstv-root .sstv-video-card .sstv-youtube-anchor{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border:0!important;pointer-events:none!important}
.sstv-root .sstv-video-card .sstv-card-play{z-index:2;transition:opacity .15s ease,background .15s ease}
.sstv-root .sstv-video-card.is-playing .sstv-card-play{opacity:0}
.sstv-root .sstv-video-card .sstv-demo-badge{z-index:3}
.sstv-root .sstv-video-card .sstv-motion-label{display:none;position:absolute;bottom:7px;right:7px;z-index:3;color:var(--sstv-accent);background:rgba(8,13,17,.88);font-size:8px;letter-spacing:.75px;font-weight:900;padding:5px 7px;pointer-events:none;border-radius:3px}
.sstv-root .sstv-video-card.is-playing .sstv-motion-label{display:block}

/* v0.2.1: long titles must shrink within header flex space, not clip against controls. */
.sstv-overlay .sstv-stage-brand > div{min-width:0}

/* v0.2.2: uploaded logos don't inherit the squirrel's peek animation or overlap typography. */
.sstv-root .sstv-mascot.sstv-mascot-custom{width:auto;max-width:150px;height:76px;max-height:76px;align-self:center;object-fit:contain;animation:none;transform:none;margin:0;filter:none}
@media(max-width:540px){.sstv-root .sstv-mascot.sstv-mascot-custom{max-width:84px;height:58px;max-height:58px;margin:0}}

/* v0.2.4: TikTok videos are tall; preserve their native portrait framing in the TV. */
.sstv-overlay .sstv-player-shell.sstv-player-tiktok .sstv-player{
  width:min(100%, 390px, 42vh); aspect-ratio:9/16; height:auto;
  max-height:78vh; margin-inline:auto; overflow:hidden;
}
.sstv-overlay .sstv-player-shell.sstv-player-tiktok .sstv-player iframe{
  width:100%;height:100%;object-fit:contain;display:block;
}
.sstv-overlay .sstv-player-shell.sstv-player-tiktok .sstv-player-sub{flex-wrap:wrap}
.sstv-overlay .sstv-player-shell.sstv-player-tiktok .sstv-tiktok-original{
  display:inline-flex;align-items:center;position:static;
  background:rgba(6,10,17,.88);border:1px solid #496060;border-radius:5px;
  color:#f0f5e9;font-size:10px;font-weight:800;letter-spacing:.5px;
  padding:6px 9px;text-decoration:none;
}
.sstv-overlay .sstv-player-shell.sstv-player-tiktok .sstv-tiktok-original:hover{
  background:var(--sstv-accent);color:#101720;
}
@media(max-width:700px){
  .sstv-overlay .sstv-player-shell.sstv-player-tiktok .sstv-player{
    width:min(100%, 390px, 37vh);max-height:66vh;
  }
}

/* v0.3.0 — TV Series and expandable Contributor cards */
.sstv-root .sstv-card-series,.sstv-overlay .sstv-card-series{display:block;color:var(--sstv-accent);font-size:9px;letter-spacing:.35px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.sstv-overlay .sstv-contributors,.sstv-overlay .sstv-series-panel{border-top:1px solid #415459;margin:18px 0 20px;padding-top:14px;min-width:0}
.sstv-overlay .sstv-contributors[hidden],.sstv-overlay .sstv-series-panel[hidden],.sstv-overlay .sstv-grid-card[hidden]{display:none!important}
.sstv-overlay .sstv-detail-eyebrow{color:var(--sstv-accent);font-size:10px;font-weight:850;letter-spacing:1.5px;line-height:1.35;margin-bottom:10px}
.sstv-overlay .sstv-contributor{border:1px solid #40545a;background:#19262c;border-radius:9px;margin:9px 0;overflow:hidden;color:#f3f5e9}
.sstv-overlay .sstv-contributor-heading{display:flex;align-items:center;gap:10px;padding:10px 12px;min-width:0;list-style:none;cursor:pointer}
.sstv-overlay .sstv-contributor-heading::-webkit-details-marker{display:none}
.sstv-overlay div.sstv-contributor-heading{cursor:default}
.sstv-overlay .sstv-contributor-heading:focus-visible{outline:2px solid var(--sstv-accent);outline-offset:-3px}
.sstv-overlay .sstv-contributor-photo{width:49px;height:49px;flex:0 0 49px;display:grid;place-items:center;background:#364b4c;border-radius:7px;overflow:hidden}
.sstv-overlay .sstv-contributor-photo img{width:100%;height:100%;display:block;object-fit:cover}
.sstv-overlay .sstv-contributor-initial{font-weight:850;font-size:23px;color:var(--sstv-accent)}
.sstv-overlay .sstv-contributor-ident{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;line-height:1.35}
.sstv-overlay .sstv-contributor-badge{font-size:8px;color:var(--sstv-accent);font-weight:800;letter-spacing:.55px;overflow-wrap:anywhere}
.sstv-overlay .sstv-contributor-ident strong{font-size:13px;color:#fff;overflow-wrap:anywhere}
.sstv-overlay .sstv-contributor-ident>span:last-child:not(.sstv-contributor-badge){font-size:11px;color:#c1cecb;overflow-wrap:anywhere}
.sstv-overlay .sstv-contributor-expand{font-size:10px;letter-spacing:.3px;color:var(--sstv-accent);font-weight:850;white-space:nowrap}
.sstv-overlay details[open] .sstv-contributor-expand{font-size:0}
.sstv-overlay details[open] .sstv-contributor-expand:after{content:'LESS −';font-size:10px}
.sstv-overlay .sstv-contributor-extra{border-top:1px solid #36484b;padding:3px 12px 13px}
.sstv-overlay .sstv-contributor-extra p{margin:9px 0;color:#d0d9d6;font-size:12px;line-height:1.65;overflow-wrap:anywhere}
.sstv-overlay .sstv-contributor-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.sstv-overlay .sstv-contributor-links a{color:var(--sstv-accent);font-size:11px;font-weight:800;border:1px solid #607a55;border-radius:5px;padding:6px 9px;text-decoration:none;overflow-wrap:anywhere}
.sstv-overlay .sstv-contributor-links a:hover{background:var(--sstv-accent);color:#132117}
.sstv-overlay .sstv-series-identity{display:flex;gap:12px;align-items:center;min-width:0}
.sstv-overlay .sstv-series-cover{width:70px;height:70px;object-fit:cover;border-radius:7px;border:1px solid #4e6060;flex:none}
.sstv-overlay .sstv-series-identity>div{min-width:0;flex:1}
.sstv-overlay .sstv-series-identity h3{font-size:18px;line-height:1.25;margin:3px 0 5px;font-weight:900;overflow-wrap:anywhere;color:#f5f8ed}
.sstv-overlay .sstv-series-position{font-size:10px;color:#b9c7c7;font-weight:800;letter-spacing:1px}
.sstv-overlay .sstv-series-description{color:#c1cfcb;font-size:12px;line-height:1.6;margin:10px 0 12px}
.sstv-overlay .sstv-episode-list{display:flex;flex-direction:column;max-height:260px;overflow-y:auto;gap:5px;margin-top:12px;scrollbar-width:thin;scrollbar-color:#7d916c transparent}
.sstv-overlay .sstv-episode{display:flex;align-items:center;gap:9px;background:#1c2c32;border:1px solid #405157;color:#edf4ea;border-radius:6px;padding:8px 10px;text-align:left;min-width:0;width:100%;line-height:1.3}
.sstv-overlay .sstv-episode:hover{border-color:var(--sstv-accent);background:#26393b}
.sstv-overlay .sstv-episode.is-current{border-color:var(--sstv-accent);background:#2c3e32}
.sstv-overlay .sstv-episode-num{color:var(--sstv-accent);font-weight:900;font-size:10px;letter-spacing:1px;min-width:20px}
.sstv-overlay .sstv-episode-title{flex:1;font-size:11px;font-weight:750;min-width:0;overflow-wrap:anywhere}
.sstv-overlay .sstv-episode-play{color:var(--sstv-accent);font-size:12px}
.sstv-overlay .sstv-series-filter-label{display:flex;align-items:center;gap:8px;font-size:9px;font-weight:850;letter-spacing:1px;color:var(--sstv-accent);white-space:nowrap}
.sstv-overlay .sstv-series-filter{appearance:auto;background:#1c2a2e;border:1px solid #597368;border-radius:6px;color:#f3f7f0;max-width:min(210px,40vw);min-height:34px;padding:5px 8px;font:inherit;font-size:11px;letter-spacing:0}
@media(max-width:850px){.sstv-overlay .sstv-contributors,.sstv-overlay .sstv-series-panel{margin:15px 0;padding-top:12px}}
@media(max-width:540px){.sstv-overlay .sstv-grid-heading{align-items:start}.sstv-overlay .sstv-series-filter-label{flex-direction:column;align-items:flex-start;gap:4px}.sstv-overlay .sstv-series-filter{max-width:145px}.sstv-overlay .sstv-contributor-heading{padding:9px}.sstv-overlay .sstv-series-cover{width:55px;height:55px}.sstv-overlay .sstv-episode-list{max-height:215px}}

/* v0.3.2 — multi-season series navigation */
.sstv-overlay .sstv-season-group{border:1px solid #435b60;border-radius:8px;background:#152329;overflow:hidden;flex:none}
.sstv-overlay .sstv-season-group[open]{border-color:#68816d}
.sstv-overlay .sstv-season-heading{display:flex;align-items:center;gap:9px;padding:10px 12px;cursor:pointer;list-style:none;color:var(--sstv-accent);font-size:11px;font-weight:900;letter-spacing:1px;line-height:1.4}
.sstv-overlay .sstv-season-heading::-webkit-details-marker{display:none}
.sstv-overlay .sstv-season-heading::marker{content:''}
.sstv-overlay .sstv-season-heading:focus-visible{outline:2px solid var(--sstv-accent);outline-offset:-2px}
.sstv-overlay .sstv-season-heading:hover{background:#24363b}
.sstv-overlay .sstv-season-count{margin-left:auto;font-size:9px;letter-spacing:.5px;color:#b5c7c3;white-space:nowrap}
.sstv-overlay .sstv-season-chevron{font-size:16px;line-height:1;color:#b5c7c3;transition:transform .2s ease}
.sstv-overlay .sstv-season-group[open] .sstv-season-chevron{transform:rotate(180deg)}
.sstv-overlay .sstv-season-episodes{display:flex;flex-direction:column;gap:5px;padding:0 7px 7px}
@media(max-width:540px){.sstv-overlay .sstv-season-heading{padding:9px 10px}.sstv-overlay .sstv-season-count{font-size:8px}}
@media(prefers-reduced-motion:reduce){.sstv-overlay .sstv-season-chevron{transition:none}}

/* v0.3.5 — desktop compact scrolling info column + full-width episode shelf.
   The original right-hand season/episode list is retained unchanged in markup. */
.sstv-overlay .sstv-active-info{min-width:0}
@media(min-width:851px){
  .sstv-overlay .sstv-active-info{
    max-height:var(--sstv-info-max-height,540px);
    overflow-y:auto;overflow-x:hidden;
    padding:0 12px 5px 0;
    overscroll-behavior-y:contain;
    scrollbar-color:#738774 transparent;scrollbar-width:thin;
  }
  /* Only one vertical scroller in the right column on desktop. */
  .sstv-overlay .sstv-episode-list{max-height:none;overflow:visible}
}
.sstv-overlay .sstv-episode-shelf{border-top:1px dashed #4c605e;margin-top:26px;padding-top:23px;min-width:0}
.sstv-overlay .sstv-episode-shelf[hidden]{display:none!important}
.sstv-overlay .sstv-shelf-intro{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:15px}
.sstv-overlay .sstv-shelf-intro h3{margin:4px 0 0;font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:clamp(22px,2.5vw,34px);font-weight:700;line-height:1.16;color:#f5f8ed}
.sstv-overlay .sstv-shelf-intro h3 span{color:var(--sstv-accent)}
.sstv-overlay .sstv-shelf-total{font-size:10px;font-weight:800;letter-spacing:1px;color:#a5b9b4;white-space:nowrap}
.sstv-overlay .sstv-shelf-seasons{display:grid;gap:8px}
.sstv-overlay .sstv-shelf-season{border:1px solid #385055;border-radius:9px;overflow:hidden;background:#101c22;min-width:0}
.sstv-overlay .sstv-shelf-season[open]{border-color:#607a61}
.sstv-overlay .sstv-shelf-season-heading{display:flex;gap:12px;align-items:center;cursor:pointer;list-style:none;padding:12px 14px;color:var(--sstv-accent);font-size:11px;font-weight:900;letter-spacing:1px}
.sstv-overlay .sstv-shelf-season-heading::-webkit-details-marker{display:none}
.sstv-overlay .sstv-shelf-season-heading::marker{content:''}
.sstv-overlay .sstv-shelf-season-heading:focus-visible{outline:2px solid var(--sstv-accent);outline-offset:-3px}
.sstv-overlay .sstv-shelf-season-heading:hover{background:#21353a}
.sstv-overlay .sstv-shelf-season-heading>span:nth-child(2){margin-left:auto;color:#b3c6bf;font-size:9px;letter-spacing:.6px}
.sstv-overlay .sstv-shelf-chevron{font-size:18px;color:#b3c6bf;transition:transform .15s ease;line-height:1}
.sstv-overlay .sstv-shelf-season[open] .sstv-shelf-chevron{transform:rotate(180deg)}
.sstv-overlay .sstv-shelf-track{display:flex;gap:13px;padding:0 13px 15px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#698174 #17282e;scroll-snap-type:x proximity}
.sstv-overlay .sstv-shelf-card{flex:0 0 clamp(163px,17vw,228px);min-width:0;display:flex;flex-direction:column;gap:6px;align-items:stretch;text-align:left;color:#f3f7ec;background:#1b2a31;border:1px solid #44565a;border-radius:8px;padding:7px;cursor:pointer;scroll-snap-align:start;transition:border-color .15s,background .15s}
.sstv-overlay .sstv-shelf-card:hover,.sstv-overlay .sstv-shelf-card:focus-visible{border-color:var(--sstv-accent);background:#293d40;outline:none}
.sstv-overlay .sstv-shelf-card.is-current{border-color:var(--sstv-accent);box-shadow:inset 0 0 0 1px var(--sstv-accent)}
.sstv-overlay .sstv-shelf-image{aspect-ratio:16/9;position:relative;background:#0c1116;border-radius:5px;display:block;overflow:hidden}
.sstv-overlay .sstv-shelf-image img{display:block;width:100%;height:100%;object-fit:cover}
.sstv-overlay .sstv-shelf-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:36px;height:36px;display:grid;place-items:center;color:var(--sstv-accent);background:#101a21dc;border:1px solid #acbfaf;border-radius:50%;font-size:17px}
.sstv-overlay .sstv-shelf-card.is-current .sstv-shelf-play{color:#132015;background:var(--sstv-accent);font-size:20px}
.sstv-overlay .sstv-shelf-meta{color:var(--sstv-accent);font-size:9px;font-weight:900;letter-spacing:.7px;line-height:1.3}
.sstv-overlay .sstv-shelf-title{font-size:12px;line-height:1.3;font-weight:750;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:850px){
  .sstv-overlay .sstv-active-info{max-height:none;overflow:visible;padding-right:0}
  .sstv-overlay .sstv-episode-shelf{margin-top:20px;padding-top:18px}
  .sstv-overlay .sstv-shelf-card{flex-basis:195px}
}
@media(max-width:540px){
  .sstv-overlay .sstv-shelf-intro{align-items:start;flex-direction:column;gap:7px}
  .sstv-overlay .sstv-shelf-intro h3{font-size:24px}
  .sstv-overlay .sstv-shelf-card{flex-basis:167px}
  .sstv-overlay .sstv-shelf-season-heading{padding:10px}
}
@media(prefers-reduced-motion:reduce){.sstv-overlay .sstv-shelf-card,.sstv-overlay .sstv-shelf-chevron{transition:none}}

/* v0.3.8 — footer series lanes scroll naturally back into the containing page. */
/* v0.3.7 — optional stacked series lanes in the hidden footer */
.sstv-root .sstv-lanes{min-width:0}
.sstv-root .sstv-lane-jump-label{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin:0 0 10px;font-size:10px;letter-spacing:1px;font-weight:850;color:var(--sstv-accent)}
.sstv-root .sstv-lane-jump{max-width:min(320px,62vw);min-height:34px;padding:6px 10px;color:#eef5eb;border:1px solid #5d746e;background:#17272d;border-radius:6px;font:inherit;font-size:12px;letter-spacing:normal}
.sstv-root .sstv-lane-stack{max-height:490px;overflow-y:auto;overscroll-behavior-y:auto;scrollbar-color:var(--sstv-accent) #16252c;scrollbar-width:thin;display:grid;gap:10px;padding-right:7px;scroll-padding-block:10px}
.sstv-root .sstv-lane{min-width:0;border-top:1px solid #41565c;padding:10px 0 4px;scroll-margin-top:12px}
.sstv-root .sstv-lane-title{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 34px 6px;color:#f1f6ec}
.sstv-root .sstv-lane-title strong{font-size:15px;font-weight:850;letter-spacing:.3px;overflow-wrap:anywhere}
.sstv-root .sstv-lane-title span{font-size:9px;color:var(--sstv-accent);white-space:nowrap;font-weight:800;letter-spacing:1px}
.sstv-root .sstv-lane .sstv-video-card{--sstv-card-w:min(205px,55vw)}
/* Smooth pixel movement should not fight the browser's proximity snap points. */
.sstv-root .sstv-track.sstv-edge-scrolling,.sstv-overlay .sstv-shelf-track.sstv-edge-scrolling{scroll-snap-type:none!important;scroll-behavior:auto!important}
.sstv-overlay .sstv-collection-track{border:1px solid #405658;border-radius:8px;padding-top:12px;background:#101e25}
@media(max-width:540px){
 .sstv-root .sstv-lane-stack{max-height:420px;gap:5px;padding-right:2px}
 .sstv-root .sstv-lane-title{padding:0 7px 7px}
 .sstv-root .sstv-lane-jump-label{justify-content:space-between;gap:8px;font-size:9px}
 .sstv-root .sstv-lane-jump{max-width:57vw}
}
