/* ==========================================================================
   AXN EPG — Base: Theme Variables, Shared Pills, Dialog
   ========================================================================== */

/* Force theme font inheritance — override WP core / plugin font-family fallbacks */
.axn-epg,
.axn-epg *,
.axn-epg-week,
.axn-epg-week *,
.axn-epg-live,
.axn-epg-live *,
.axn-epg-next,
.axn-epg-next *,
.axn-epg-compact,
.axn-epg-compact *,
.axn-epg-series,
.axn-epg-series *,
.axn-epg-guide,
.axn-epg-guide *,
.axn-epg-dialog,
.axn-epg-dialog * {
    font-family: inherit;
}

/* Theme Variables */
.axn-epg-theme {
    --axn-epg-accent:          #b7a373;
    --axn-epg-accent-hover:    #ad9967;
    --axn-epg-accent-contrast: #ffffff;
    --axn-epg-accent-soft:     rgba(183,163,115,.14);
    --axn-epg-header-tint:     rgba(183,163,115,.08);
}
.axn-epg-theme--white {
    --axn-epg-accent:          #c6b183;
    --axn-epg-accent-hover:    #b89f6d;
    --axn-epg-accent-contrast: #ffffff;
    --axn-epg-accent-soft:     rgba(198,177,131,.14);
    --axn-epg-header-tint:     rgba(198,177,131,.08);
}
.axn-epg-theme--black {
    --axn-epg-accent:          #111111;
    --axn-epg-accent-hover:    #222222;
    --axn-epg-accent-contrast: #ffffff;
    --axn-epg-accent-soft:     rgba(17,17,17,.14);
    --axn-epg-header-tint:     rgba(255,255,255,.06);
    --axn-epg-card-bg:         #1e1e1e;
    --axn-epg-card-border:     rgba(255,255,255,.1);
    --axn-epg-card-color:      #f0f0f0;
    --axn-epg-card-muted:      rgba(240,240,240,.6);
}

/* Black theme dark cards */
.axn-epg-theme--black .axn-epg__header,
.axn-epg-theme--black .axn-epg__item,
.axn-epg-theme--black .axn-epg-week__day,
.axn-epg-theme--black .axn-epg-live,
.axn-epg-theme--black .axn-epg-next__item,
.axn-epg-theme--black .axn-epg-compact__row {
    background: var(--axn-epg-card-bg);
    border-color: var(--axn-epg-card-border);
    color: var(--axn-epg-card-color);
}
.axn-epg-theme--black .axn-epg__item-title,
.axn-epg-theme--black .axn-epg__time span,
.axn-epg-theme--black .axn-epg-next__item-title,
.axn-epg-theme--black .axn-epg-next__time,
.axn-epg-theme--black .axn-epg-live__item-title,
.axn-epg-theme--black .axn-epg-live__time,
.axn-epg-theme--black .axn-epg-live__title,
.axn-epg-theme--black .axn-epg-compact__item-title,
.axn-epg-theme--black .axn-epg-compact__time { color: var(--axn-epg-card-color); }
.axn-epg-theme--black .axn-epg__time small,
.axn-epg-theme--black .axn-epg__subtitle,
.axn-epg-theme--black .axn-epg__meta,
.axn-epg-theme--black .axn-epg__description,
.axn-epg-theme--black .axn-epg-next__meta,
.axn-epg-theme--black .axn-epg-live__subtitle,
.axn-epg-theme--black .axn-epg-live__meta,
.axn-epg-theme--black .axn-epg-live__description,
.axn-epg-theme--black .axn-epg-live__note,
.axn-epg-theme--black .axn-epg-next__note,
.axn-epg-theme--black .axn-epg-compact__meta { color: var(--axn-epg-card-muted); }
.axn-epg-theme--black .axn-epg-week__day-header { background: rgba(255,255,255,.05); border-bottom-color: var(--axn-epg-card-border); }
.axn-epg-theme--black .axn-epg-week__day-kicker,
.axn-epg-theme--black .axn-epg-week__day-title,
.axn-epg-theme--black .axn-epg-week__item,
.axn-epg-theme--black .axn-epg-week__item-title { color: var(--axn-epg-card-color); }
.axn-epg-theme--black .axn-epg-week__item-meta,
.axn-epg-theme--black .axn-epg-week__time { color: var(--axn-epg-card-muted); }
.axn-epg-theme--black .axn-epg-week__item:hover,
.axn-epg-theme--black .axn-epg-week__item:focus-visible { background: rgba(255,255,255,.06); }
.axn-epg-theme--black .axn-epg-week__row + .axn-epg-week__row { border-top-color: var(--axn-epg-card-border); }
.axn-epg-theme--black .axn-epg__badge,
.axn-epg-theme--black .axn-epg-live__badge,
.axn-epg-theme--black .axn-epg-live__button,
.axn-epg-theme--black .axn-epg-next__button,
.axn-epg-theme--black .axn-epg-compact__state,
.axn-epg-theme--black .axn-epg-week__state { color: var(--axn-epg-card-color); border-color: #54575a !important; }
.axn-epg-theme--black .axn-epg__item.is-past,
.axn-epg-theme--black .axn-epg-week__row.is-past .axn-epg-week__item,
.axn-epg-theme--black .axn-epg-compact__row.is-past .axn-epg-compact__item { opacity: .4; }
.axn-epg-theme--black .axn-epg-live.is-live,
.axn-epg-theme--black .axn-epg-live.is-upcoming { background: #1a1a1a; border-color: rgba(255,255,255,.15); color: var(--axn-epg-card-color); }
.axn-epg-theme--black .axn-epg-live.is-live .axn-epg-live__badge,
.axn-epg-theme--black .axn-epg-live.is-live .axn-epg-live__button,
.axn-epg-theme--black .axn-epg-live.is-upcoming .axn-epg-live__badge,
.axn-epg-theme--black .axn-epg-live.is-upcoming .axn-epg-live__button { border-color: rgba(255,255,255,.45); color: var(--axn-epg-card-color); }

/* Shared Pills */
.axn-epg__badge, .axn-epg-live__badge, .axn-epg-week__state, .axn-epg-compact__state { border-width: 2px; }
.axn-epg-theme--white .axn-epg__badge,
.axn-epg-theme--white .axn-epg-live__badge,
.axn-epg-theme--white .axn-epg-live__button,
.axn-epg-theme--white .axn-epg-next__button,
.axn-epg-theme--white .axn-epg-week__state,
.axn-epg-theme--white .axn-epg-compact__state { border-color: rgba(0,0,0,.35) !important; }

/* Focus suppression (OneTap) */
.axn-epg-dialog .axn-epg-dialog__close:focus,
.axn-epg-dialog .axn-epg-dialog__close:focus-visible,
.axn-epg-week__day .axn-epg-week__item:focus,
.axn-epg-week__day .axn-epg-week__item:focus-visible,
.axn-epg-compact__list .axn-epg-compact__item:focus,
.axn-epg-compact__list .axn-epg-compact__item:focus-visible,
.axn-epg-live .axn-epg-live__button:focus,
.axn-epg-live .axn-epg-live__button:focus-visible,
.axn-epg-next__list .axn-epg-next__button:focus,
.axn-epg-next__list .axn-epg-next__button:focus-visible,
.axn-epg-week__row .js-axn-epg-open:focus,
.axn-epg-week__row .js-axn-epg-open:focus-visible,
.axn-epg-series__list .axn-epg-series__item:focus,
.axn-epg-series__list .axn-epg-series__item:focus-visible,
.axn-epg-guide__row:focus,
.axn-epg-guide__row:focus-visible { border: 0 !important; outline: none !important; }

/* Dialog */
.axn-epg-dialog {
    position: fixed; top: 50%; left: 50%; margin: 0;
    transform: translate(-50%,-50%);
    width: min(720px,calc(100vw - 32px));
    max-width: calc(100vw - 32px); max-height: calc(100vh - 32px);
    overflow: auto; border: 0; border-radius: 20px; padding: 0;
    box-shadow: 0 30px 80px rgba(0,0,0,.28);
}
.axn-epg-dialog::backdrop { background: rgba(0,0,0,.55); }
.axn-epg-dialog__inner { position: relative; padding: 28px; }
.axn-epg-dialog__image { margin: 0 0 18px; border-radius: 12px; overflow: hidden; aspect-ratio: 16/9; }
.axn-epg-dialog__image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.axn-epg-dialog__close {
    position: absolute; top: 12px; right: 12px; z-index: 20;
    display: block; width: 48px; height: 48px; padding: 0; border: 0;
    border-radius: 999px; background: rgba(165,135,85,.82);
    cursor: pointer; appearance: none; -webkit-appearance: none; outline: none !important;
}
.axn-epg-dialog__close::before {
    content: "x"; position: absolute; inset: 0;
    display: flex; align-items: center; justify-content: center;
    font-size: 28px; font-weight: 700; line-height: 1; color: #fff; pointer-events: none;
}
.axn-epg-dialog__close:hover,
.axn-epg-dialog__close:focus-visible { background: rgba(165,135,85,.98); }
.axn-epg-dialog__time     { margin: 0 0 10px; font-size: 14px; opacity: .7; }
.axn-epg-dialog__title    { margin: 0 0 8px; font-size: clamp(28px,4vw,38px); line-height: 1.05; }
.axn-epg-dialog__subtitle { margin: 0 0 12px; font-size: 18px; opacity: .85; }
.axn-epg-dialog__meta     { margin: 0 0 18px; font-size: 14px; opacity: .72; }
.axn-epg-dialog__description { font-size: 16px; line-height: 1.55; }
.axn-epg-dialog__tech { margin-top: 20px; padding-top: 18px; border-top: 1px solid rgba(0,0,0,.08); font-size: 14px; line-height: 1.5; opacity: .72; }

/* Theme accent overrides */
.axn-epg-theme .axn-epg__eyebrow,
.axn-epg-theme .axn-epg-week__eyebrow,
.axn-epg-theme .axn-epg-live__eyebrow,
.axn-epg-theme .axn-epg-next__eyebrow,
.axn-epg-theme .axn-epg-compact__eyebrow,
.axn-epg-theme .axn-epg-series__eyebrow { color: var(--axn-epg-accent); opacity: 1; }
.axn-epg-theme--black .axn-epg__eyebrow,
.axn-epg-theme--black .axn-epg-week__eyebrow,
.axn-epg-theme--black .axn-epg-live__eyebrow,
.axn-epg-theme--black .axn-epg-next__eyebrow,
.axn-epg-theme--black .axn-epg-compact__eyebrow,
.axn-epg-theme--black .axn-epg-series__eyebrow { color: rgba(240,240,240,.65); }
.axn-epg-theme .axn-epg__badge,
.axn-epg-theme .axn-epg-week__state,
.axn-epg-theme .axn-epg-live__badge,
.axn-epg-theme .axn-epg-live__button,
.axn-epg-theme .axn-epg-next__button,
.axn-epg-theme .axn-epg-compact__state { border-color: var(--axn-epg-accent-soft); }
.axn-epg-theme .axn-epg-live.is-upcoming .axn-epg-live__badge,
.axn-epg-theme .axn-epg-live.is-upcoming .axn-epg-live__button { background: var(--axn-epg-accent-soft); }
.axn-epg-theme--white .axn-epg-series__item:hover,
.axn-epg-theme--white .axn-epg-week__item:hover,
.axn-epg-theme--white .axn-epg-week__item:focus-visible,
.axn-epg-theme--white .axn-epg-compact__item:hover,
.axn-epg-theme--white .axn-epg-compact__item:focus-visible { background: var(--axn-epg-accent-soft); }
.axn-epg-theme--white .axn-epg-compact__row.is-live .axn-epg-compact__item:hover,
.axn-epg-theme--white .axn-epg-week__row.is-live .axn-epg-week__item:hover,
.axn-epg-theme--white .axn-epg-series__row.is-live .axn-epg-series__item:hover { background: var(--axn-epg-accent-hover); color: var(--axn-epg-accent-contrast); }
.axn-epg-live.is-live.axn-epg-theme--white .axn-epg-live__badge,
.axn-epg-live.is-live.axn-epg-theme--white .axn-epg-live__button,
.axn-epg-theme--white .axn-epg__item.is-live .axn-epg__badge,
.axn-epg-theme--white .axn-epg-week__row.is-live .axn-epg-week__state,
.axn-epg-theme--white .axn-epg-compact__row.is-live .axn-epg-compact__state,
.axn-epg-theme--white .axn-epg-series__row.is-live .axn-epg-series__state { border-color: rgba(255,255,255,.75) !important; color: rgba(255,255,255,.95) !important; }
