/**
 * SSRP Webinars — front-end styles (v2)
 *
 * Self-contained (.ssrp-wbn-*). Reads the Solutions Divi token bridge
 * (--gcid-* colours, --gvid-* numbers) with hard fallbacks. Light is the base
 * palette; the theme's [data-theme="dark"] re-scopes the tokens.
 *
 * Follows the site's own patterns: Barlow, light-weight (200) display
 * headings with a bold or blue second half, hairline dividers, white cards
 * with a 20px radius, blue pill buttons, outlined "soft" status pills.
 */

.ssrp-wbn-scope {
    --wbn-canvas: var(--gcid-canvas, #f3f4f6);
    --wbn-panel: var(--gcid-panel, #ffffff);
    --wbn-panel-deep: var(--gcid-panel-deep, #e9edf2);
    --wbn-line: var(--gcid-line, rgba(3, 7, 18, 0.10));
    --wbn-text: var(--gcid-text, #030712);
    --wbn-text-2: var(--gcid-text-2, var(--gcid-text-secondary, #374151));
    --wbn-muted: var(--gcid-text-muted, #5f6877);
    --wbn-link: var(--gcid-link, #116cc9);
    --wbn-blue: var(--gcid-blue-5, #116cc9);
    --wbn-blue-light: var(--gcid-blue-3, #1995e2);
    --wbn-blue-tint: var(--gcid-sky-tint, rgba(42, 172, 226, 0.16));
    --wbn-teal: var(--gcid-teal-600, #0a7565);
    --wbn-teal-dot: var(--gcid-teal-400, #21e4c7);
    --wbn-live: #d92d20;
    --wbn-white: #ffffff;
    --wbn-glass-input: var(--gcid-glass-input, rgba(3, 7, 18, 0.04));
    --wbn-radius: var(--gvid-number-radius-lg, 20px);
    --wbn-radius-sm: var(--gvid-number-radius-sm, 8px);
    --wbn-radius-md: var(--gvid-number-radius-md, 16px);
    --wbn-pill: 9999px;
    --wbn-font: "Barlow", "Helvetica Neue", Helvetica, Arial, sans-serif;
    --wbn-mono: "SFMono-Regular", ui-monospace, Menlo, Consolas, monospace;
    --wbn-shadow: 0 1px 2px rgba(3, 7, 18, 0.05), 0 14px 34px -20px rgba(3, 7, 18, 0.22);
    --wbn-maxw: var(--gvid-number-content-max-width, 1280px);

    font-family: var(--wbn-font);
    color: var(--wbn-text);
    -webkit-font-smoothing: antialiased;
}

.ssrp-wbn-scope *, .ssrp-wbn-scope *::before, .ssrp-wbn-scope *::after { box-sizing: border-box; }
.ssrp-wbn-scope a { color: var(--wbn-link); text-decoration: none; }
.ssrp-wbn-scope a:focus-visible, .ssrp-wbn-scope button:focus-visible,
.ssrp-wbn-scope input:focus-visible, .ssrp-wbn-scope select:focus-visible { outline: 2px solid var(--wbn-link); outline-offset: 2px; }

/* ─── Layout ─── */

.ssrp-wbn-container { max-width: var(--wbn-maxw); margin: 0 auto; padding: 0 clamp(16px, 4vw, 32px); position: relative; }
.ssrp-wbn-single, .ssrp-wbn-archive { background: var(--wbn-canvas); padding-bottom: clamp(64px, 8vw, 110px); }

/* Page head — eyebrow + light display title (site pattern: "Shop", "Operations & Profitability") */
.ssrp-wbn-pagehead { position: relative; padding: clamp(20px, 3.5vw, 40px) 0 clamp(28px, 4vw, 44px); }
.ssrp-wbn-breadcrumb { margin: 0 0 16px; font-size: 13px; font-weight: 600; letter-spacing: .02em; }
.ssrp-wbn-breadcrumb a, body.ssrp-wbn-page #main-content .ssrp-wbn-pagehead .ssrp-wbn-breadcrumb a { color: var(--wbn-muted); display: inline-flex; align-items: center; gap: 6px; }
.ssrp-wbn-breadcrumb a:hover { color: var(--wbn-link); }
.ssrp-wbn-eyebrow { margin: 0 0 12px; font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--wbn-link); }
.ssrp-wbn-pagehead__title {
    margin: 0;
    font-family: var(--wbn-font);
    font-size: clamp(34px, 5vw, 60px);
    font-weight: 200;
    line-height: 1.04;
    letter-spacing: -.025em;
    color: var(--wbn-text);
    max-width: 24ch;
}
.ssrp-wbn-pagehead__title b, .ssrp-wbn-pagehead__title strong { font-weight: 700; }
.ssrp-wbn-pagehead__lede { margin: 16px 0 0; max-width: 64ch; font-size: clamp(16px, 1.4vw, 18px); line-height: 1.55; color: var(--wbn-text-2); }
.ssrp-wbn-pagehead__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 22px; margin-top: 20px; font-size: 15px; color: var(--wbn-text-2); }
.ssrp-wbn-pagehead__item { display: inline-flex; align-items: center; gap: 8px; }
.ssrp-wbn-pagehead__item svg { color: var(--wbn-muted); flex: none; }

/* Times are re-rendered in the visitor's zone by JS; the Eastern time follows as a muted reference */
.ssrp-wbn-eventtime { color: var(--wbn-muted); font-size: .92em; white-space: nowrap; }
.ssrp-wbn-eventtime::before { content: "("; }
.ssrp-wbn-eventtime::after { content: ")"; }
time[data-wbn-local] .ssrp-wbn-eventtime { margin-left: 6px; }
.ssrp-wbn-section-aside { display: inline-flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.ssrp-wbn-tznote { font-size: 13px; color: var(--wbn-muted); }
.ssrp-wbn-stage__tznote { margin: -8px 0 0; }

/* ─── Pills, badges, chips ─── */

/* Outlined "soft" pill — the site's COMING SOON treatment */
.ssrp-wbn-pill {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 6px 12px 6px 10px;
    border: 1px solid var(--wbn-line);
    border-radius: var(--wbn-pill);
    background: var(--wbn-panel);
    color: var(--wbn-text-2);
    font-size: 11.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; line-height: 1;
    white-space: nowrap;
}
.ssrp-wbn-pill__dot { width: 7px; height: 7px; border-radius: 50%; background: var(--wbn-blue-light); box-shadow: 0 0 10px var(--wbn-blue-light); flex: none; }
.ssrp-wbn-pill--replay .ssrp-wbn-pill__dot { background: var(--wbn-teal-dot); box-shadow: 0 0 10px var(--wbn-teal-dot); }
.ssrp-wbn-pill--ended .ssrp-wbn-pill__dot { background: var(--wbn-muted); box-shadow: none; }
.ssrp-wbn-pill--onmedia { background: rgba(8, 12, 21, .72); border-color: rgba(255, 255, 255, .22); color: #fff; backdrop-filter: blur(6px); }

.ssrp-wbn-live-badge {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 6px 12px 6px 10px;
    border-radius: var(--wbn-pill);
    background: var(--wbn-live); color: var(--wbn-white);
    font-size: 11.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; line-height: 1;
    white-space: nowrap;
}
.ssrp-wbn-live-dot { width: 7px; height: 7px; border-radius: 50%; background: currentColor; animation: ssrp-wbn-pulse 1.6s ease-out infinite; flex: none; }
@keyframes ssrp-wbn-pulse { 0% { box-shadow: 0 0 0 0 rgba(255, 255, 255, .55); } 100% { box-shadow: 0 0 0 8px rgba(255, 255, 255, 0); } }
@media (prefers-reduced-motion: reduce) { .ssrp-wbn-live-dot { animation: none; } }

.ssrp-wbn-chip {
    display: inline-flex; align-items: center;
    padding: 7px 13px;
    border: 1px solid var(--wbn-line); border-radius: var(--wbn-pill);
    background: var(--wbn-panel); color: var(--wbn-text-2);
    font-size: 13px; font-weight: 600; line-height: 1;
    transition: border-color .15s ease, color .15s ease, background .15s ease;
}
.ssrp-wbn-chip:hover, .ssrp-wbn-chip--active { border-color: var(--wbn-link); color: var(--wbn-link); }
.ssrp-wbn-chip--active { background: var(--wbn-blue-tint); }

/* ─── Buttons (site: blue pill, uppercase 14/600, 48–52px) ─── */

.ssrp-wbn-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 10px;
    min-height: 48px; padding: 0 24px;
    border-radius: var(--wbn-pill); border: 1px solid transparent;
    font-family: var(--wbn-font); font-size: 14px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; line-height: 1;
    cursor: pointer; text-decoration: none; white-space: nowrap;
    transition: filter .18s ease, background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}
.ssrp-wbn-btn svg { flex: none; }
.ssrp-wbn-btn--sm { min-height: 40px; padding: 0 18px; font-size: 13px; }
.ssrp-wbn-btn--lg { min-height: 54px; padding: 0 30px; font-size: 15px; }
.ssrp-wbn-btn--primary { background: var(--wbn-blue); color: var(--wbn-white) !important; box-shadow: 0 4px 10.5px rgba(17, 108, 201, .35); }
.ssrp-wbn-btn--primary:hover { filter: brightness(1.08); }
.ssrp-wbn-btn--ghost { background: transparent; border-color: var(--wbn-line); color: var(--wbn-text) !important; }
.ssrp-wbn-btn--ghost:hover { border-color: var(--wbn-link); color: var(--wbn-link) !important; }
.ssrp-wbn-btn--live { background: var(--wbn-live); color: var(--wbn-white) !important; box-shadow: 0 4px 10.5px rgba(217, 45, 32, .3); }
.ssrp-wbn-btn--live:hover { filter: brightness(1.08); }
.ssrp-wbn-btn__chev { transition: transform .18s ease; }
.ssrp-wbn-btn[aria-expanded="true"] .ssrp-wbn-btn__chev { transform: rotate(180deg); }
.ssrp-wbn-ext { font-size: 1.05em; line-height: 1; }
.ssrp-wbn-textlink { font-weight: 600; font-size: 15px; color: var(--wbn-link); }

/* ─── Add-to-calendar dropdown ─── */

.ssrp-wbn-atc { position: relative; display: inline-block; }
.ssrp-wbn-atc__menu {
    position: absolute; top: calc(100% + 8px); left: 0; z-index: 30;
    min-width: 224px; margin: 0; padding: 6px 0; list-style: none;
    background: var(--wbn-panel); border: 1px solid var(--wbn-line); border-radius: var(--wbn-radius-md);
    box-shadow: 0 10px 30px -10px rgba(3, 7, 18, .3);
}
.ssrp-wbn-atc__menu[hidden] { display: none; }
.ssrp-wbn-atc__menu li { margin: 0; padding: 0; }
.ssrp-wbn-atc__menu li + li { border-top: 1px solid var(--wbn-line); }
.ssrp-wbn-atc__item { display: block; padding: 12px 16px; color: var(--wbn-text) !important; font-size: 15px; font-weight: 500; line-height: 1.2; }
.ssrp-wbn-atc__item:hover, .ssrp-wbn-atc__item:focus-visible { background: var(--wbn-blue-tint); color: var(--wbn-link) !important; outline: none; }
.ssrp-wbn-atc__item--ics { color: var(--wbn-muted) !important; font-size: 14px; }
.ssrp-wbn-atc--right .ssrp-wbn-atc__menu { left: auto; right: 0; }

/* ─── Stage ─── */

.ssrp-wbn-stage {
    display: grid;
    background: var(--wbn-panel);
    border: 1px solid var(--wbn-line);
    border-radius: var(--wbn-radius);
    box-shadow: var(--wbn-shadow);
    overflow: hidden;
}
.ssrp-wbn-stage.has-media { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); }
.ssrp-wbn-stage__media { position: relative; background: #0b1a28; min-height: 280px; }
.ssrp-wbn-stage__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.ssrp-wbn-stage__panel { padding: clamp(24px, 4vw, 44px) clamp(20px, 4vw, 44px); display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.ssrp-wbn-stage__eyebrow { margin: 0; font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--wbn-link); display: flex; align-items: center; gap: 10px; }
.ssrp-wbn-stage__title { margin: 0; font-family: var(--wbn-font); font-size: clamp(26px, 3vw, 36px); font-weight: 200; letter-spacing: -.02em; line-height: 1.1; color: var(--wbn-text); }
.ssrp-wbn-stage__lede { margin: 0; font-size: 16px; line-height: 1.55; color: var(--wbn-text-2); max-width: 52ch; }
.ssrp-wbn-stage__when { margin: 0; display: inline-flex; align-items: center; gap: 8px; font-size: 16px; color: var(--wbn-text-2); }
.ssrp-wbn-stage__when svg { color: var(--wbn-muted); flex: none; }
.ssrp-wbn-stage__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px; padding-top: 6px; }
.ssrp-wbn-stage__hint { font-size: 13.5px; color: var(--wbn-muted); }
.ssrp-wbn-stage__foot { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; padding: 14px clamp(16px, 3vw, 22px); font-size: 14px; color: var(--wbn-text-2); }
.ssrp-wbn-stage__foot-link { margin-left: auto; font-size: 13.5px; font-weight: 600; color: var(--wbn-muted); }
.ssrp-wbn-stage__foot-link:hover { color: var(--wbn-link); }

/* Countdown — plain light numerals separated by hairlines (no tiles) */
.ssrp-wbn-countdown { display: flex; align-items: flex-end; margin: 2px 0 0; }
.ssrp-wbn-countdown__item { display: flex; flex-direction: column; align-items: flex-start; padding: 0 clamp(14px, 2vw, 24px); border-left: 1px solid var(--wbn-line); }
.ssrp-wbn-countdown__item:first-child { padding-left: 0; border-left: 0; }
.ssrp-wbn-countdown__value { font-size: clamp(40px, 5vw, 64px); font-weight: 200; line-height: .95; letter-spacing: -.03em; color: var(--wbn-text); font-variant-numeric: tabular-nums; }
.ssrp-wbn-countdown__label { margin-top: 8px; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--wbn-muted); }

/* Check list — mirrors the homepage offering lists */
.ssrp-wbn-checks { list-style: none; margin: 4px 0 0; padding: 14px 0 0; border-top: 1px solid var(--wbn-line); width: 100%; max-width: 560px; }
.ssrp-wbn-checks li { position: relative; padding: 5px 0 5px 26px; font-size: 15px; line-height: 1.45; color: var(--wbn-text-2); }
.ssrp-wbn-checks li::before {
    content: ""; position: absolute; left: 2px; top: 10px; width: 12px; height: 7px;
    border-left: 2px solid var(--wbn-blue-light); border-bottom: 2px solid var(--wbn-blue-light);
    transform: rotate(-45deg);
}

.ssrp-wbn-embed { position: relative; aspect-ratio: 16 / 9; background: #000; }
.ssrp-wbn-embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; display: block; }

/* ─── Section heads ─── */

.ssrp-wbn-section-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 12px 24px; margin: 0 0 20px; padding-bottom: 14px; border-bottom: 1px solid var(--wbn-line); }
.ssrp-wbn-section-head--library { align-items: center; }
.ssrp-wbn-section-title { margin: 0; font-family: var(--wbn-font); font-size: clamp(24px, 2.8vw, 32px); font-weight: 300; letter-spacing: -.02em; line-height: 1.1; color: var(--wbn-text); }
.ssrp-wbn-section-title--sm { font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--wbn-muted); }
.ssrp-wbn-section-count { font-size: 13px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--wbn-muted); }

/* ─── Upcoming list ─── */

.ssrp-wbn-upcoming { margin-top: clamp(8px, 2vw, 16px); }
.ssrp-wbn-upcoming__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.ssrp-wbn-upcoming__list > li { margin: 0; padding: 0; }

.ssrp-wbn-row {
    display: grid;
    grid-template-columns: 132px minmax(0, 1fr) auto;
    gap: clamp(18px, 3vw, 36px);
    align-items: center;
    padding: clamp(18px, 2.5vw, 26px) clamp(18px, 3vw, 30px);
    background: var(--wbn-panel);
    border: 1px solid var(--wbn-line);
    border-radius: var(--wbn-radius);
    box-shadow: var(--wbn-shadow);
    transition: border-color .18s ease;
}
.ssrp-wbn-row:hover { border-color: var(--wbn-link); }
.ssrp-wbn-row.is-live { border-color: var(--wbn-live); }

.ssrp-wbn-row__date { display: flex; flex-direction: column; align-self: stretch; justify-content: center; padding-right: clamp(14px, 2vw, 24px); border-right: 1px solid var(--wbn-line); line-height: 1; }
.ssrp-wbn-row__month { font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--wbn-link); }
.ssrp-wbn-row.is-live .ssrp-wbn-row__month { color: var(--wbn-live); }
.ssrp-wbn-row__day { margin-top: 6px; font-size: 48px; font-weight: 200; letter-spacing: -.03em; color: var(--wbn-text); }
.ssrp-wbn-row__dow { margin-top: 8px; font-size: 13px; color: var(--wbn-muted); }

.ssrp-wbn-row__tags { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-bottom: 10px; }
.ssrp-wbn-row__topic { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--wbn-muted); }
.ssrp-wbn-row__title { margin: 0; font-family: var(--wbn-font); font-size: clamp(20px, 2.2vw, 26px); font-weight: 600; letter-spacing: -.015em; line-height: 1.2; }
/* The theme's `body.archive:not(.woocommerce) #main-content a` (1,2,2) outranks plain classes; these selectors are (1,3,2). */
.ssrp-wbn-scope .ssrp-wbn-row__title a, body.ssrp-wbn-page #main-content .ssrp-wbn-row .ssrp-wbn-row__title a { color: var(--wbn-text); }
.ssrp-wbn-scope .ssrp-wbn-row__title a:hover, body.ssrp-wbn-page #main-content .ssrp-wbn-row .ssrp-wbn-row__title a:hover { color: var(--wbn-link); }
.ssrp-wbn-row__meta { display: flex; flex-wrap: wrap; gap: 6px 0; margin: 8px 0 0; font-size: 15px; color: var(--wbn-text-2); }
.ssrp-wbn-row__meta-item { display: inline-flex; align-items: center; }
.ssrp-wbn-row__meta-item + .ssrp-wbn-row__meta-item::before { content: "·"; margin: 0 10px; color: var(--wbn-muted); }
.ssrp-wbn-row__excerpt { margin: 10px 0 0; font-size: 15px; line-height: 1.5; color: var(--wbn-text-2); max-width: 64ch; }
.ssrp-wbn-avatar { width: 32px; height: 32px; border-radius: 50%; object-fit: cover; flex: none; }
.ssrp-wbn-avatar--lg { width: 56px; height: 56px; }

.ssrp-wbn-row__actions { display: flex; flex-direction: column; align-items: stretch; gap: 8px; min-width: 200px; }
.ssrp-wbn-row__actions .ssrp-wbn-atc, .ssrp-wbn-row__actions .ssrp-wbn-btn { width: 100%; }
.ssrp-wbn-row__actions .ssrp-wbn-atc__menu { left: auto; right: 0; }

/* ─── Filters ─── */

.ssrp-wbn-filters { display: flex; flex-direction: column; gap: 12px; flex: 1 1 420px; max-width: 640px; }
.ssrp-wbn-filters__form { display: flex; flex-wrap: wrap; gap: 10px; }
.ssrp-wbn-filters__field { flex: 1 1 180px; display: block; }
.ssrp-wbn-filters__select, .ssrp-wbn-filters__search {
    width: 100%; height: 46px; padding: 0 16px;
    border: 1px solid var(--wbn-line); border-radius: var(--wbn-pill);
    background: var(--wbn-glass-input); color: var(--wbn-text);
    font-family: var(--wbn-font); font-size: 15px;
    appearance: none; -webkit-appearance: none;
}
.ssrp-wbn-filters__select { padding-right: 40px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235f6877' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 16px center; }
.ssrp-wbn-filters__search-wrap { position: relative; flex: 2 1 240px; }
.ssrp-wbn-filters__search { padding-right: 46px; }
.ssrp-wbn-filters__search-btn { position: absolute; top: 4px; right: 4px; width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 50%; background: var(--wbn-blue); color: var(--wbn-white); cursor: pointer; }
.ssrp-wbn-filters__tags { display: flex; flex-wrap: wrap; gap: 8px; }

/* ─── Library grid ─── */

.ssrp-wbn-library { margin-top: clamp(44px, 6vw, 72px); }
.ssrp-wbn-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: clamp(16px, 2.5vw, 24px); }

.ssrp-wbn-card {
    display: flex; flex-direction: column;
    background: var(--wbn-panel); border: 1px solid var(--wbn-line); border-radius: var(--wbn-radius);
    box-shadow: var(--wbn-shadow); overflow: hidden;
    transition: border-color .18s ease;
}
.ssrp-wbn-card:hover { border-color: var(--wbn-link); }
.ssrp-wbn-card__media { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden;
    background: linear-gradient(180deg, transparent 28%, rgba(8, 12, 21, .82)), repeating-linear-gradient(135deg, #141d30 0 14px, #11192a 14px 28px); }
.ssrp-wbn-card__poster { width: 100%; height: 100%; object-fit: cover; display: block; }
.ssrp-wbn-card__poster--empty { display: flex; align-items: center; justify-content: center; color: rgba(255, 255, 255, .45); }
.ssrp-wbn-card__media .ssrp-wbn-pill { position: absolute; top: 12px; left: 12px; }
.ssrp-wbn-card__play {
    position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
    width: 56px; height: 56px; border-radius: 50%;
    display: inline-flex; align-items: center; justify-content: center;
    background: rgba(255, 255, 255, .94); color: var(--wbn-blue);
    box-shadow: 0 6px 20px rgba(0, 0, 0, .3);
}
.ssrp-wbn-card__body { display: flex; flex-direction: column; gap: 8px; padding: 18px 20px 20px; flex: 1; }
.ssrp-wbn-card__topic { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--wbn-muted); }
.ssrp-wbn-card__title { margin: 0; font-family: var(--wbn-font); font-size: 19px; font-weight: 600; line-height: 1.25; letter-spacing: -.01em; }
.ssrp-wbn-scope .ssrp-wbn-card__title a, body.ssrp-wbn-page #main-content .ssrp-wbn-card .ssrp-wbn-card__title a { color: var(--wbn-text); }
.ssrp-wbn-scope .ssrp-wbn-card__title a:hover, body.ssrp-wbn-page #main-content .ssrp-wbn-card .ssrp-wbn-card__title a:hover { color: var(--wbn-link); }
.ssrp-wbn-card__meta { display: flex; flex-wrap: wrap; gap: 4px 0; margin: 0; font-size: 14px; color: var(--wbn-text-2); }
.ssrp-wbn-card__meta span + span::before { content: "·"; margin: 0 8px; color: var(--wbn-muted); }
.ssrp-wbn-card__cta { margin-top: auto; padding-top: 10px; font-size: 14px; font-weight: 600; color: var(--wbn-link); }

.ssrp-wbn-pagination { margin-top: 32px; display: flex; justify-content: center; }
.ssrp-wbn-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px; padding: 0 12px; margin: 0 3px; border-radius: var(--wbn-pill); border: 1px solid var(--wbn-line); color: var(--wbn-text); font-size: 14px; font-weight: 600; }
.ssrp-wbn-pagination .page-numbers.current { background: var(--wbn-blue); border-color: var(--wbn-blue); color: var(--wbn-white); }
.ssrp-wbn-pagination .page-numbers:hover:not(.current) { border-color: var(--wbn-link); color: var(--wbn-link); }

.ssrp-wbn-empty { padding: clamp(28px, 4vw, 40px); border: 1px dashed var(--wbn-line); border-radius: var(--wbn-radius); text-align: center; color: var(--wbn-text-2); font-size: 16px; }
.ssrp-wbn-empty p { margin: 0 0 12px; }
.ssrp-wbn-empty p:last-child { margin-bottom: 0; }

/* ─── Single: description + presenter ─── */

.ssrp-wbn-single__columns { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: clamp(24px, 4vw, 56px); margin-top: clamp(36px, 5vw, 56px); }
.ssrp-wbn-single__columns > :only-child { grid-column: 1 / -1; }
.ssrp-wbn-single__description .ssrp-wbn-section-title { margin-bottom: 16px; }
.ssrp-wbn-prose { font-size: 17px; line-height: 1.6; color: var(--wbn-text-2); max-width: 68ch; }
.ssrp-wbn-prose p, .ssrp-wbn-prose ul, .ssrp-wbn-prose ol { margin: 0 0 1em; }
.ssrp-wbn-prose ul { list-style: disc; padding-left: 1.4em; }
.ssrp-wbn-prose ol { list-style: decimal; padding-left: 1.4em; }
.ssrp-wbn-prose li { margin-bottom: .35em; }
.ssrp-wbn-prose h2, .ssrp-wbn-prose h3, .ssrp-wbn-prose h4 { margin: 1.4em 0 .5em; color: var(--wbn-text); font-family: var(--wbn-font); font-weight: 600; letter-spacing: -.01em; line-height: 1.2; }
.ssrp-wbn-prose a { text-decoration: underline; text-underline-offset: 3px; }

.ssrp-wbn-presenter { align-self: start; }
.ssrp-wbn-presenter .ssrp-wbn-section-title--sm { margin-bottom: 12px; }
.ssrp-wbn-presenter__card { display: flex; align-items: center; gap: 14px; padding: 18px; background: var(--wbn-panel); border: 1px solid var(--wbn-line); border-radius: var(--wbn-radius); }
.ssrp-wbn-presenter__name { display: block; font-size: 17px; font-weight: 600; color: var(--wbn-text); }
.ssrp-wbn-presenter__title { display: block; margin-top: 3px; font-size: 14px; color: var(--wbn-text-2); line-height: 1.35; }
.ssrp-wbn-presenter__atc { margin-top: 12px; }
.ssrp-wbn-presenter__atc .ssrp-wbn-atc, .ssrp-wbn-presenter__atc .ssrp-wbn-btn { width: 100%; }

.ssrp-wbn-more { margin-top: clamp(52px, 7vw, 88px); }

/* ─── Responsive ─── */

@media (max-width: 900px) {
    .ssrp-wbn-stage.has-media { grid-template-columns: 1fr; }
    .ssrp-wbn-stage__media { min-height: 0; aspect-ratio: 16 / 9; }
    .ssrp-wbn-single__columns { grid-template-columns: 1fr; }
    .ssrp-wbn-row { grid-template-columns: 104px minmax(0, 1fr); }
    .ssrp-wbn-row__day { font-size: 40px; }
    .ssrp-wbn-row__actions { grid-column: 1 / -1; flex-direction: row; flex-wrap: wrap; min-width: 0; }
    .ssrp-wbn-row__actions .ssrp-wbn-atc, .ssrp-wbn-row__actions .ssrp-wbn-btn { width: auto; }
    .ssrp-wbn-row__actions .ssrp-wbn-atc__menu { left: 0; right: auto; }
}

@media (max-width: 560px) {
    .ssrp-wbn-countdown__item { padding: 0 12px; }
    .ssrp-wbn-countdown__value { font-size: 36px; }
    .ssrp-wbn-stage__actions { flex-direction: column; align-items: stretch; width: 100%; }
    .ssrp-wbn-stage__actions .ssrp-wbn-atc, .ssrp-wbn-stage__actions .ssrp-wbn-btn { width: 100%; }
    .ssrp-wbn-row { grid-template-columns: 1fr; }
    .ssrp-wbn-row__date { flex-direction: row; align-items: baseline; gap: 10px; padding: 0 0 12px; border-right: 0; border-bottom: 1px solid var(--wbn-line); }
    .ssrp-wbn-row__day { margin-top: 0; font-size: 28px; }
    .ssrp-wbn-row__dow { margin-top: 0; }
    .ssrp-wbn-row__actions .ssrp-wbn-atc, .ssrp-wbn-row__actions .ssrp-wbn-btn { width: 100%; }
    .ssrp-wbn-btn { white-space: normal; text-align: center; }
    .ssrp-wbn-section-head--library { flex-direction: column; align-items: stretch; }
}

/* ─── Registration modal ─── */

.ssrp-wbn-modal { position: fixed; inset: 0; z-index: 100000; display: flex; align-items: center; justify-content: center; padding: 24px; font-family: "Barlow", "Helvetica Neue", Helvetica, Arial, sans-serif; }
.ssrp-wbn-modal[hidden] { display: none; }
.ssrp-wbn-modal__backdrop { position: absolute; inset: 0; background: rgba(3, 7, 18, .72); backdrop-filter: blur(4px); }
.ssrp-wbn-modal__dialog { position: relative; width: min(960px, 100%); max-height: calc(100vh - 48px); display: flex; flex-direction: column; background: var(--gcid-panel, #fff); color: var(--gcid-text, #030712); border-radius: var(--gvid-number-radius-lg, 20px); box-shadow: 0 30px 80px -20px rgba(3, 7, 18, .6); }
.ssrp-wbn-modal__head { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1fr) auto auto; grid-template-areas: "eyebrow atc close" "title atc close"; align-items: center; column-gap: 12px; padding: 16px 16px 14px 24px; border-bottom: 1px solid var(--gcid-line, rgba(3, 7, 18, .1)); }
.ssrp-wbn-modal__atc { grid-area: atc; }
.ssrp-wbn-modal__atc .ssrp-wbn-atc__menu { left: auto; right: 0; z-index: 1000; transform: translateZ(0); }
.ssrp-wbn-modal__body iframe { z-index: 0; }
.ssrp-wbn-modal__eyebrow { grid-area: eyebrow; margin: 0 0 4px; font-size: 11.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--gcid-link, #116cc9); }
.ssrp-wbn-modal__title { grid-area: title; margin: 0; font-family: inherit; font-size: 18px; font-weight: 600; letter-spacing: -.01em; line-height: 1.25; color: var(--gcid-text, #030712); }
.ssrp-wbn-modal__close { grid-area: close; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 1px solid var(--gcid-line, rgba(3, 7, 18, .1)); border-radius: 50%; background: transparent; color: var(--gcid-text, #030712); cursor: pointer; }
.ssrp-wbn-modal__close:hover { border-color: var(--gcid-link, #116cc9); color: var(--gcid-link, #116cc9); }
.ssrp-wbn-modal__close:focus-visible { outline: 2px solid var(--gcid-link, #116cc9); outline-offset: 2px; }
.ssrp-wbn-modal__body { position: relative; flex: 1 1 auto; min-height: 0; aspect-ratio: 16 / 9; background: #05111c; border-radius: 0 0 var(--gvid-number-radius-lg, 20px) var(--gvid-number-radius-lg, 20px); overflow: hidden; }
.ssrp-wbn-atc--up .ssrp-wbn-atc__menu { top: auto; bottom: calc(100% + 8px); }
.ssrp-wbn-modal__body iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; display: block; }
body.ssrp-wbn-modal-open { overflow: hidden; }

@media (max-width: 640px) {
    .ssrp-wbn-modal { padding: 0; }
    .ssrp-wbn-modal__dialog { width: 100%; height: 100%; max-height: none; border-radius: 0; }
    .ssrp-wbn-modal__head { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "eyebrow close" "title close" "atc atc"; padding-left: 16px; }
    .ssrp-wbn-modal__atc { margin-top: 10px; }
    .ssrp-wbn-modal__atc .ssrp-wbn-atc, .ssrp-wbn-modal__atc .ssrp-wbn-btn { width: 100%; }
    .ssrp-wbn-modal__atc .ssrp-wbn-atc__menu { left: 0; right: 0; }
    .ssrp-wbn-modal__body { aspect-ratio: auto; border-radius: 0; }
}
