/* 2013 · "Sabeti Lab Live" — the studio intro. Every selector lives under .in-studio (set on ch.pin by y2013.js).
   Geometry (positions, sizes, font sizes) is written by the script from the safe rect; this file is colour, shape and type. */
.in-studio .studio{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.in-studio .st-dark{position:absolute;inset:0;background:var(--bg2);will-change:opacity}
.in-studio .st-floor{position:absolute;left:0;right:0;background:linear-gradient(180deg,rgba(185,200,255,.35) 0,rgba(185,200,255,0) 2px,#171350 2px,#0a0728 55%,#04030f 100%);opacity:0;will-change:opacity}

/* the set: monitor wall, anchors, desk — clipped so the desk and anchors can sink through the floor and the wall lift away */
.in-studio .st-setclip{position:absolute;overflow:hidden}
.in-studio .st-set{position:absolute;inset:0;will-change:transform}
.in-studio .st-wall{position:absolute;will-change:transform}
.in-studio .st-mon{position:absolute;opacity:0;will-change:opacity;background:linear-gradient(180deg,#2a2c35,#1a1b22);box-shadow:0 8px 22px -8px rgba(0,0,0,.9),inset 0 0 0 1px rgba(255,255,255,.07)}
.in-studio .st-scr{position:absolute;overflow:hidden;background:#000;will-change:transform,opacity}
.in-studio .st-scr>*{position:absolute;inset:0;opacity:0}
.in-studio .st-static{background-size:90px 90px;filter:contrast(1.25) brightness(.9)}
.in-studio .st-scr img{width:100%;height:100%;object-fit:cover}
.in-studio .st-wl{background-repeat:no-repeat;background-color:#2c2890}
.in-studio .st-fl{background:#fff}
.in-studio .st-scr::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.14),transparent 45%);pointer-events:none}
.in-studio .st-led{position:absolute;right:4%;top:5%;width:4px;height:4px;border-radius:50%;background:#ff3b3b;box-shadow:0 0 6px 1px rgba(255,60,60,.85);opacity:0}

.in-studio .st-presclip{position:absolute;overflow:hidden}
.in-studio .st-pres{position:absolute;will-change:transform;filter:drop-shadow(0 12px 22px rgba(0,0,0,.65))}

.in-studio .st-desk{position:absolute;overflow:hidden;border-radius:14px 14px 0 0;background:linear-gradient(180deg,#3d38b4 0,#221c78 9%,#140f4d 50%,#0b0836 100%);box-shadow:0 -1px 0 rgba(185,200,255,.6),0 24px 50px -10px rgba(0,0,0,.85);will-change:transform}
.in-studio .st-desk::before{content:"";position:absolute;left:6%;right:6%;top:30%;bottom:20%;border-radius:4px;background:linear-gradient(90deg,rgba(185,200,255,0),rgba(185,200,255,.2) 50%,rgba(185,200,255,0));box-shadow:inset 0 0 0 1px rgba(185,200,255,.16)}
.in-studio .st-desk b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-family:var(--serif);font-weight:400;letter-spacing:.34em;text-transform:uppercase;color:var(--accent);white-space:nowrap}

/* light rig: truss, panning lamps, the ON AIR sign; the cones and floor pools are siblings so they can screen-blend over the set */
.in-studio .st-lights{position:absolute;inset:0}
.in-studio .st-cone{position:absolute;filter:blur(6px);mix-blend-mode:screen;opacity:0;will-change:transform,opacity}
.in-studio .st-cone i{position:absolute;inset:0;display:block;clip-path:polygon(45% 0,55% 0,100% 100%,0 100%);background:linear-gradient(180deg,var(--gel) 0,transparent 100%)}
.in-studio .st-pool{position:absolute;border-radius:50%;mix-blend-mode:screen;opacity:0;background:radial-gradient(ellipse at 50% 50%,var(--gel) 0,transparent 68%);will-change:transform,opacity}
.in-studio .st-rig{position:absolute;will-change:transform}
.in-studio .st-truss{position:absolute;top:0;background:repeating-linear-gradient(62deg,transparent 0 9px,rgba(255,255,255,.14) 9px 11px),repeating-linear-gradient(-62deg,transparent 0 9px,rgba(255,255,255,.14) 9px 11px),#141321;border-top:2px solid rgba(255,255,255,.24);border-bottom:2px solid rgba(255,255,255,.24)}
.in-studio .st-lamp{position:absolute;transform-origin:50% 0;will-change:transform}
.in-studio .st-lamp i{position:absolute;display:block}
.in-studio .st-lamp .yoke{left:50%;top:0;width:2px;height:30%;background:rgba(255,255,255,.4);transform:translateX(-50%)}
.in-studio .st-lamp .house{left:0;right:0;top:30%;bottom:0;border-radius:3px 3px 7px 7px;background:linear-gradient(180deg,#2d2c3e,#111020);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.in-studio .st-lamp .lens{left:12%;right:12%;bottom:-2px;height:4px;border-radius:2px;background:var(--gel);box-shadow:0 0 12px 4px var(--gel);opacity:0}
.in-studio .st-sign{position:absolute;border-radius:4px;background:#0c0b1a;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);font-family:var(--sans);font-weight:500;letter-spacing:.3em;text-transform:uppercase}
.in-studio .st-sign span{position:absolute;inset:0;display:grid;place-items:center;white-space:nowrap;border-radius:4px;padding-left:.3em}
.in-studio .st-sign .sb{color:rgba(238,240,255,.5);opacity:0}
.in-studio .st-sign .oa{color:#fff;background:#d81f30;box-shadow:0 0 18px 3px rgba(240,40,60,.75);opacity:0}

/* broadcast graphics: count-in, lower-third, ticker, flash */
.in-studio .st-gfx{position:absolute;inset:0}
.in-studio .st-count{position:absolute}
.in-studio .st-num{position:absolute;left:50%;top:50%;font-family:var(--serif);font-weight:300;color:var(--accent);line-height:1;opacity:0;will-change:transform,opacity;text-shadow:0 0 40px rgba(185,200,255,.55)}
.in-studio .st-ring{position:absolute;left:0;top:0;border-radius:50%;opacity:0;-webkit-mask:radial-gradient(circle,transparent 0 63%,#000 64%);mask:radial-gradient(circle,transparent 0 63%,#000 64%)}
.in-studio .st-slate{position:absolute;transform:translateX(-50%);font-family:var(--sans);font-weight:400;letter-spacing:.32em;text-transform:uppercase;color:rgba(238,240,255,.55);white-space:nowrap;opacity:0}
.in-studio .st-lt{position:absolute;opacity:0;display:flex;flex-direction:column;align-items:flex-start;font-family:var(--sans);will-change:transform}
.in-studio .st-tag{background:#d81f30;color:#fff;font-weight:500;letter-spacing:.28em;text-transform:uppercase;padding:.4em .9em .3em 1.1em;border-radius:2px 2px 0 0;transform-origin:0 50%;will-change:transform}
.in-studio .st-main{background:linear-gradient(90deg,#3130ad,#1b1458);color:#fff;font-weight:500;text-transform:uppercase;letter-spacing:.06em;padding:.3em .9em .26em .8em;white-space:nowrap;border-left:4px solid var(--accent);box-shadow:0 10px 30px -10px rgba(0,0,0,.8)}
.in-studio .st-sub{background:rgba(8,5,32,.94);color:var(--accent);font-weight:400;letter-spacing:.26em;text-transform:uppercase;padding:.5em 1.1em .42em 1.4em;white-space:nowrap;opacity:0;will-change:transform,opacity}
.in-studio .st-ticker{position:absolute;opacity:0;overflow:hidden;display:flex;align-items:center;background:rgba(8,5,32,.95);border-top:1px solid rgba(185,200,255,.28);font-family:var(--sans);will-change:transform}
.in-studio .st-live{position:relative;z-index:1;flex:none;height:100%;display:grid;place-items:center;padding:0 1em 0 2.1em;background:#d81f30;color:#fff;font-weight:500;letter-spacing:.3em;text-transform:uppercase}
.in-studio .st-live::before{content:"";position:absolute;left:.9em;top:50%;width:.55em;height:.55em;border-radius:50%;background:#fff;transform:translateY(-50%)}
.in-studio .st-crawl{flex:none;white-space:nowrap;padding-left:1.6em;color:var(--accent);font-weight:400;letter-spacing:.2em;text-transform:uppercase;will-change:transform}
.in-studio .st-flash{position:absolute;background:radial-gradient(ellipse at 50% 50%,#fff 0,#fff 42%,rgba(255,255,255,0) 72%);opacity:0;will-change:opacity}

/* SNL wordmark: the N sits smaller between a capital S and L */
.in-studio .snl-n{font-size:.82em;line-height:1;vertical-align:baseline;letter-spacing:.02em;text-transform:none}
