/* Compact community spotlight: direct partner selection, media and profile. */
.partners{position:relative;padding:56px 0;border-top:1px solid var(--rex-edge);scroll-margin-top:32px}
.partners-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:24px}
.partners .eyebrow{margin:0 0 10px}
.partners .section-title{margin:0;line-height:1.1}
.partners-intro{max-width:420px;margin:0;color:var(--rex-secondary);font-size:14px;line-height:1.65}
.partner-dots{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.partner-dots[hidden]{display:none}
.partner-dot{display:flex;align-items:center;justify-content:center;gap:8px;flex:1 1 auto;min-height:42px;padding:10px 12px;border:1px solid var(--rex-edge);border-radius:4px;background:var(--rex-card);color:var(--rex-secondary);font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:background .18s,border-color .18s}
.partner-dot::before{content:'';flex:0 0 5px;width:5px;height:5px;border-radius:50%;background:#59666d}
.partner-dot:hover{border-color:#66747b;color:var(--rex-ink)}
.partner-dot[aria-current="true"]{color:var(--rex-blue);border-color:var(--rex-blue);background:#00c6ff12}
.partner-dot[aria-current="true"]::before{background:var(--rex-blue);box-shadow:0 0 7px #00c6ff55}
.partner-dot:focus-visible,.partner-toolbar button:focus-visible,.partner-visit:focus-visible{outline:2px solid var(--rex-blue);outline-offset:3px}
.partner-grid{position:relative;list-style:none;margin:0;padding:0}
.partner-grid>li{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);min-width:0;min-height:300px;border:1px solid var(--rex-edge);background:var(--rex-card)}
.partner-grid>li[hidden]{display:none!important}
.partner-grid>li.partner-snapshot[hidden]{display:grid!important;position:absolute;inset:0 0 auto;z-index:1;pointer-events:none;user-select:none}
.partner-visual{position:relative;min-width:0;min-height:300px;border-right:1px solid var(--rex-edge);background:#050708}
.partner-card{display:block;height:100%;color:var(--rex-ink);text-decoration:none}
.partner-card:focus-visible{outline:3px solid var(--rex-blue);outline-offset:-3px}
.partner-stream{position:relative;display:block;width:100%;height:100%;min-height:300px;overflow:hidden;background:var(--rex-canvas)}
.partner-stream>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.partner-live{position:absolute;z-index:1;top:12px;left:12px;display:inline-flex;align-items:center;gap:6px;padding:6px 8px;background:#c91023;color:#fff;font-size:10px;font-weight:800;line-height:1;letter-spacing:.03em;text-transform:uppercase;border-radius:3px}
.partner-live[hidden]{display:none!important}
.partner-live::before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}
.partner-player{position:absolute;top:0;left:0;right:0;height:100%;min-height:300px;background:#000}
.partner-player:has(>.partner-play){background:transparent}
.partner-player iframe{display:block;width:100%;height:100%;border:0}
.partner-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;border:0;background:#0009;color:#fff;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.partner-play:hover,.partner-play:focus-visible{background:#000b;outline:3px solid var(--rex-blue);outline-offset:-3px}
.partner-bio{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:24px;gap:18px}
.partner-identity{display:flex;align-items:center;gap:12px;width:100%;min-width:0}
.partner-avatar{position:relative;display:block;flex:0 0 48px;width:48px;height:48px;overflow:hidden;border:1px solid var(--rex-edge);border-radius:50%;background:var(--rex-canvas)}
.partner-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.partner-info{min-width:0}
.partner-info>.partner-live{position:static;margin-bottom:6px}
.partner-bio h3{margin:0 0 4px;color:var(--rex-ink);font-size:clamp(20px,2vw,25px);font-weight:800;line-height:1.15;letter-spacing:-.04em;overflow-wrap:anywhere}
.partner-handle{display:block;color:var(--rex-subtle);font-size:11px;overflow-wrap:anywhere}
.partner-bio>p{margin:0;color:var(--rex-secondary);font-size:14px;line-height:1.65}
.partner-details{display:grid;gap:14px;margin:0}
.partner-details>div{min-width:0}
.partner-details>div[hidden]{display:none}
.partner-details dt{margin:0 0 8px;color:var(--rex-subtle);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.partner-details dd{margin:0;color:var(--rex-ink);font-size:13px;line-height:1.5}
.partner-games{display:flex;flex-wrap:wrap;gap:6px}
.partner-games span{max-width:100%;padding:4px 7px;border:1px solid var(--rex-edge);font-size:11px;overflow-wrap:anywhere}
.partner-visit{display:inline-flex;align-items:center;gap:9px;margin-top:auto;min-height:38px;padding:9px 12px;border:1px solid #00c6ff55;border-radius:3px;background:#00c6ff0a;color:var(--rex-blue);font-size:12px;font-weight:700;text-decoration:none}
.partner-visit:hover{background:#00c6ff1c;border-color:var(--rex-blue)}
.partner-visit img{object-fit:contain}
.partner-toolbar{display:flex;align-items:center;gap:18px;margin-top:12px}
.partner-pagination{display:flex;align-items:center;gap:10px}
.partner-toolbar button{display:grid;place-items:center;min-width:36px;min-height:36px;padding:6px 10px;border:1px solid var(--rex-edge);border-radius:3px;background:var(--rex-card);color:var(--rex-ink);font:inherit;font-size:18px;cursor:pointer}
.partner-toolbar button:hover{border-color:var(--rex-blue);color:var(--rex-blue)}
.partner-position{min-width:34px;text-align:center;font-size:11px;font-variant-numeric:tabular-nums;color:var(--rex-secondary)}
.partner-toolbar .partner-pause{border-color:transparent;background:transparent;padding:6px 0;color:var(--rex-secondary);font-size:11px;white-space:nowrap}
.partners-cycle{position:relative;flex:1;height:2px;background:var(--rex-edge);overflow:hidden}
.partners-cycle-bar{position:absolute;inset:0;width:0%;background:var(--rex-blue)}
.partners-footer{display:flex;justify-content:flex-end;margin-top:18px;font-size:12px;line-height:1.6}
.partners-footer a{color:var(--rex-secondary);text-underline-offset:4px}
.partners-footer a:hover{color:var(--rex-blue)}
@media(max-width:1000px){.partners-heading{display:block}.partners-intro{margin-top:14px;max-width:540px}.partner-bio{padding:20px}}
@media(max-width:900px){.partner-grid>li{grid-template-columns:minmax(0,1fr)}.partner-visual{border-right:0;border-bottom:1px solid var(--rex-edge);min-height:0}.partner-stream{height:auto;min-height:0;aspect-ratio:16/9}.partner-stream>img{position:absolute}.has-player .partner-stream{height:var(--player-h);aspect-ratio:auto}.partner-player{height:var(--player-h)}.partner-bio{gap:16px}.partner-visit{margin-top:0}}
@media(max-width:650px){.partners{padding:36px 0 40px}.partners-heading{margin-bottom:18px}.partners-intro{font-size:13px}.partner-dot{flex:1 1 calc(33.333% - 6px);min-width:0;padding:9px 5px;font-size:10px;gap:5px}.partner-bio{padding:18px}.partner-avatar{flex-basis:44px;width:44px;height:44px}.partner-bio h3{font-size:23px}.partner-toolbar{gap:12px}.partner-toolbar button{min-width:40px;min-height:40px}.partners-footer{justify-content:flex-start}.partner-visit{min-height:42px}}
@media(max-width:360px){.partner-dot{flex-basis:calc(50% - 6px);font-size:11px}.partner-toolbar{gap:8px}.partner-pagination{gap:5px}.partner-toolbar .partner-pause{font-size:10px}}
@media(prefers-reduced-motion:reduce){.partner-dot{transition:none}}
/* Preserve the supplied channel crops, including screenshot-based avatars. */
.partner-bio:has(.partner-handle) .partner-avatar img{object-fit:cover}
.partner-grid>li:has(.partner-card[data-partner="smoottoochill"]) .partner-avatar img{height:auto;aspect-ratio:1;object-position:50% 38.7%;transform:scale(2)}
.partner-card[data-partner="smoottoochill"] .partner-stream>img{transform:translateX(-4.2%) scale(1.25)}

.partner-grid>li:has(.partner-card[data-partner="m3rlyn_n"]) .partner-avatar img{position:absolute;left:-80%;top:-726.667%;width:1036.667%;max-width:none;height:auto}

/* Center spotlight with subdued previews of its circular neighbours. */
.partner-stage{--partner-card-width:min(860px,calc(100% - 160px));position:relative;width:min(1600px,calc(100vw - 24px));left:50%;transform:translateX(-50%);overflow:hidden;padding:26px 0;isolation:isolate;background:var(--rex-canvas)}
.partner-stage .partner-grid{width:var(--partner-card-width);margin:0 auto}
.partner-stage .partner-grid>li:not([hidden]){position:relative;z-index:2}
.partner-stage .partner-grid>.partner-neighbor[hidden]{display:grid!important;position:absolute;top:0;left:0;width:100%;z-index:0;opacity:.24;filter:blur(3px);pointer-events:none;user-select:none;transform:translateX(calc(-78% - 24px)) scale(.86);transform-origin:center center}
.partner-stage .partner-grid>.partner-neighbor-next[hidden]{transform:translateX(calc(78% + 24px)) scale(.86)}
.partner-side{position:absolute;top:0;bottom:0;width:calc((100% - var(--partner-card-width))/2);z-index:3;border:0;background:transparent;cursor:pointer;padding:0}
.partner-side-previous{left:0}.partner-side-next{right:0}
.partner-side:focus-visible{outline:2px solid var(--rex-blue);outline-offset:-8px;background:#00c6ff08}
@media(max-width:650px){.partner-stage{--partner-card-width:calc(100% - 88px);width:calc(100vw - 12px);padding:16px 0}.partner-stage .partner-bio{padding:16px;gap:14px}.partner-stage .partner-bio h3{font-size:22px}}

/* Low-key arrows over the side previews. The whole side is already the click target. */
.partner-side::before{content:'';position:absolute;top:50%;left:50%;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;border:1px solid #ffffff40;background:#00000059 center/18px 18px no-repeat;opacity:.45;transition:opacity .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease}
.partner-side-previous::before{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='15 5 8 12 15 19'/></svg>")}
.partner-side-next::before{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='9 5 16 12 9 19'/></svg>")}
.partner-side:hover::before,.partner-side:focus-visible::before{opacity:.95;background-color:#00000099;border-color:var(--rex-blue)}
.partner-side-previous:hover::before{transform:translateX(-3px)}
.partner-side-next:hover::before{transform:translateX(3px)}
@media(max-width:650px){.partner-side::before{width:34px;height:34px;margin:-17px 0 0 -17px;background-size:14px 14px}}
@media(prefers-reduced-motion:reduce){.partner-side::before{transition:none}}
