/* Live on X feed (home, under the timeline; also at the top of the Trending on X sheet on other pages).
   Fixed heights everywhere, so data arriving never moves the page. No shadows, glows or halos. Font = site font (unify-font.css). */
.xl{max-width:1100px;margin:6px auto 4px;padding:0 10px;box-sizing:border-box}
.xl-box{border:1px solid #2F3336;border-radius:12px;background:#0B0C0E;color:#E7E9EA;overflow:hidden}
.xl-hd{display:flex;align-items:center;gap:8px;height:30px;padding:0 10px;border-bottom:1px solid #2F3336}
.xl-hd h2{margin:0;font-size:10px!important;line-height:1!important;letter-spacing:.06em!important;color:#fff;font-weight:400!important;text-transform:uppercase;white-space:nowrap}
.xl-hd h2 svg{width:9px;height:9px;fill:#fff;vertical-align:-1px}
.xl-live{display:inline-flex;align-items:center;gap:5px;height:16px;padding:0 6px;border-radius:4px;background:#F4212E;color:#fff;font-size:8px;letter-spacing:.08em;line-height:1}
.xl-live i{width:5px;height:5px;border-radius:50%;background:#fff;animation:xlPulse 1.6s ease-in-out infinite}
.xl.xl-stale .xl-live{background:#3A3F45}.xl.xl-stale .xl-live i{animation:none;opacity:.6}
@keyframes xlPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.25;transform:scale(.7)}}
.xl-upd{margin-left:auto;color:#8B98A5;font-size:8px;letter-spacing:.03em;white-space:nowrap}
/* Live Spaces: one fixed-height row; several Spaces scroll sideways inside it */
.xl-sp{display:flex;align-items:center;gap:8px;height:34px;padding:0 10px;border-bottom:1px solid #2F3336;overflow:hidden}
.xl-sp h3{margin:0;flex:0 0 auto;font-size:8px!important;letter-spacing:.08em!important;color:#8B98A5;font-weight:400!important;text-transform:uppercase}
.xl-sp ul{display:flex;gap:6px;list-style:none;margin:0;padding:0;overflow-x:auto;scrollbar-width:none;flex:1 1 auto;min-width:0}
.xl-sp ul::-webkit-scrollbar{display:none}
.xl-sp li{flex:0 0 auto;max-width:300px}
.xl-sp .xl-empty{color:#8B98A5;font-size:8.5px;white-space:nowrap}
.xl-sp a{display:flex;align-items:center;gap:6px;height:24px;padding:0 8px;border:1px solid #2F3336;border-radius:999px;color:#E7E9EA;text-decoration:none;font-size:8.5px;white-space:nowrap;overflow:hidden}
.xl-sp a .t{overflow:hidden;text-overflow:ellipsis;max-width:150px}
.xl-sp a .h,.xl-sp a .n{color:#8B98A5}
.xl-sp a .j{color:#fff}
.xl-b{flex:0 0 auto;padding:2px 4px;border-radius:3px;font-size:7px;letter-spacing:.06em;line-height:1}
.xl-b.live{background:#F4212E;color:#fff}.xl-b.sch{border:1px solid #536471;color:#E7E9EA}
/* post feed: fixed-height window that scrolls by itself */
.xl-vp{position:relative;height:208px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.xl-vp::-webkit-scrollbar{display:none}
.xl-vp:focus-visible{outline:1px solid #fff;outline-offset:-2px}
.xl-list{list-style:none;margin:0;padding:0}
.xl-it>a{display:block;overflow:hidden;min-height:0;padding:9px 10px;border-bottom:1px solid #1F2226;color:#E7E9EA;text-decoration:none}
.xl-it .m{display:flex;gap:6px;align-items:baseline;font-size:8.5px;color:#8B98A5;letter-spacing:.03em}
.xl-it .m b{color:#fff;font-weight:400}
.xl-it .m .v{margin-left:auto;color:#8B98A5}
.xl-it p{margin:5px 0 0;font-size:10.5px;line-height:1.55;white-space:pre-line;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
.xl-it p .u{color:#8B98A5}
.xl-it.xl-new>a{animation:xlIn .9s cubic-bezier(.2,.7,.2,1) .25s both,xlFade 2.4s ease .25s both}
@keyframes xlIn{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}
@keyframes xlFade{from{background:#1A1D21}to{background:transparent}}
.xl-it .nw{color:#F4212E}
.xl-msg{padding:16px 10px;color:#8B98A5;font-size:9px}
.xl-ft{display:flex;justify-content:space-between;gap:8px;padding:6px 10px;border-top:1px solid #2F3336;color:#71767B;font-size:7.5px;letter-spacing:.03em}
.xl-ft a{color:#8B98A5;text-decoration:none}
@media(min-width:760px){
  .xl{padding:0 20px;margin:10px auto 6px}
  .xl-vp{height:236px}
  .xl-hd{height:34px}.xl-hd h2{font-size:11px!important}
  .xl-it p{font-size:11.5px}
}
/* inside the Trending on X sheet */
.tx-sheet .xl{padding:0;margin:0 0 4px}
@media(prefers-reduced-motion:reduce){.xl-live i{animation:none}.xl-it.xl-new,.xl-it.xl-new>a{animation:none}}
/* Live Spaces v2 (Nov 2): bolder cards, red strip + badge, @host, ET time, title readable. Row auto-scrolls in x-live.js.
   Solid colors only: no shadows, glows or halos. Fixed heights, so data arriving never moves the page. */
.xl-sp{height:78px;gap:10px;background:#120A0C}
.xl-sp h3{color:#FF5A64;font-size:8px!important;line-height:1.25;width:42px;white-space:normal}
.xl-sp ul{gap:8px;scroll-behavior:auto}
.xl-sp li{max-width:none}
.xl-sp a.xl-spc{flex-direction:column;align-items:stretch;justify-content:center;gap:4px;width:262px;height:62px;padding:0 10px 0 9px;box-sizing:border-box;
  border:1px solid #4A1A20;border-left:4px solid #F4212E;border-radius:8px;background:#1E0D10;white-space:nowrap}
.xl-sp a.xl-spc.sch{background:#17181B;border-color:#3A2A2D;border-left-color:#F4212E}
.xl-sp .r1{display:flex;align-items:center;gap:6px;min-width:0;font-size:8.5px;color:#C9D1D9}
.xl-sp .r1 .w{color:#fff}
.xl-sp .r1 .h{color:#8B98A5;overflow:hidden;text-overflow:ellipsis;min-width:0}
.xl-sp .r1 .n{color:#8B98A5}
.xl-sp .r1 .w{flex:0 0 auto}
.xl-sp .r2{display:flex;align-items:baseline;gap:6px;min-width:0}
.xl-sp .r2 .j{flex:0 0 auto;margin-left:auto;color:#FF5A64}
.xl-sp a.xl-spc .t{display:block;flex:1 1 auto;min-width:0;max-width:none;overflow:hidden;text-overflow:ellipsis;color:#fff;font-size:10.5px;line-height:1.2}
.xl-b.live{background:#F4212E;color:#fff}.xl-b.sch{background:#5C1118;border:1px solid #F4212E;color:#fff}
@media(min-width:760px){.xl-sp{height:80px}.xl-sp h3{width:auto;white-space:nowrap}.xl-sp a.xl-spc{width:330px;height:64px}.xl-sp a.xl-spc .t{font-size:11.5px}}
/* inside the sheet: one row of cards that scrolls sideways (auto) */
.tx-sheet.tx-v3 .tx-sp{height:auto;padding:8px;border:1px solid #4A1A20;border-radius:12px;background:#120A0C;overflow:hidden}
.tx-sheet.tx-v3 .tx-sp ul{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden}
.tx-sheet.tx-v3 .tx-sp a.xl-spc{width:290px;height:74px;font-size:10.5px;padding:0 11px 0 10px}
.tx-sheet.tx-v3 .tx-sp a.xl-spc .t{max-width:none;font-size:12.5px}
.tx-sheet.tx-v3 .tx-sp .r1{font-size:10px}
.tx-sheet.tx-v3 .tx-sp .xl-b{font-size:8px;padding:3px 5px}
.tx-spw>.tx-k{color:#FF5A64!important}
/* deep link #space-<host>: marked Space card. Solid border + tint only */
.xl-sp li.xl-here>a.xl-spc{border:2px solid #1D9BF0;border-left:4px solid #1D9BF0;background:#0E2A3D;transition:background-color .8s ease,border-color .8s ease}
.xl-sp li.xl-here-soft>a.xl-spc{border-color:#1D9BF0;transition:background-color .8s ease,border-color .8s ease}
.xl-sp .xl-tag{flex:0 0 auto;padding:2px 5px;border-radius:3px;background:#1D9BF0;color:#fff;font-size:7px;letter-spacing:.06em;line-height:1;text-transform:uppercase}
.tx-sheet.tx-v3 .tx-sp .xl-tag{font-size:8px;padding:3px 5px}
.tx-sheet.tx-v3 .tx-sp li{scroll-margin:90px}
/* spacefix: third line = where to find it on X; video cards use the same red system, labeled LIVE VIDEO */
.xl-sp .r3{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#C9A3A7;font-size:8px;letter-spacing:.02em}
.tx-sheet.tx-v3 .tx-sp .r3{font-size:9.5px}
.xl-sp li.xl-k-video>a.xl-spc.live{background:#2A0B10;border-color:#7A1E28;border-left-color:#F4212E}
/* sheet: Live Spaces now sit at the top of the left "Latest" column (top of the sheet on phones) */
.tx-col-live>.tx-spw{margin:0 0 12px}
.tx-col-live>.tx-spw>.tx-k{margin:2px 0 6px!important;font-weight:700!important;letter-spacing:.08em}
@media(min-width:760px){.tx-2c.tx-has-top .tx-col-live>.tx-spw:not([hidden])~.xl-box .xl-vp{height:calc(min(58vh,560px) - 110px);min-height:200px}}

/* Nov 3 lab fix: scheduled / pinned cards are neutral grey; red only while something is actually live (.xl-sp-on). Flat colors, no shadows or glows. */
.xl-sp{background:#0F1012}
.xl-sp.xl-sp-on{background:#120A0C}
.xl-sp h3{color:#8B98A5}
.xl-sp.xl-sp-on h3{color:#FF5A64}
.tx-sheet.tx-v3 .tx-sp{border-color:#2F3336;background:#0F1012}
.tx-sheet.tx-v3 .tx-sp.xl-sp-on{border-color:#4A1A20;background:#120A0C}
.xl-sp a.xl-spc.sch,.xl-sp a.xl-spc.pin{background:#17181B;border-color:#2F3336;border-left-color:#71767B}
.xl-sp a.xl-spc.pin{border-left-color:#E2BE6A}
.xl-b.sch{background:#22252A;border:1px solid #536471;color:#E7E9EA;text-transform:none;letter-spacing:.02em}
.xl-b.pin{background:#22252A;border:1px solid #8A7440;color:#E2BE6A}
.xl-sp a.xl-spc.sch .j,.xl-sp a.xl-spc.pin .j{color:#C9D1D9}
.xl-sp a.xl-spc.sch .r3,.xl-sp a.xl-spc.pin .r3{color:#8B98A5}
.xl-sp li.xl-k-pin>a.xl-spc{width:300px}
.xl-sp li.xl-k-pin .r2 .t{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.2}
@media(min-width:760px){.xl-sp li.xl-k-pin>a.xl-spc{width:420px}}
.tx-sheet.tx-v3 .tx-sp li.xl-k-pin>a.xl-spc{width:340px}
.tx-sheet.tx-v3 .tx-sp li.xl-k-pin>a.xl-spc{width:360px}
.tx-sheet.tx-v3 .tx-sp li.xl-k-pin .r2 .t{font-size:11px}
.xl-sp li.xl-k-pin{flex-shrink:0}
.tx-spw:not(.xl-on)>.tx-k{color:#C9D1D9!important}
