/* ==========================================================================
   Liberty Weekgrid Schedule
   ========================================================================== */

.liberty-weekgrid{
  --lwg-text: var(--e-global-color-text, #000) !important;
  /* --lwg-primary: var(--e-global-color-primary, #1e73be); */
  --lwg-primary: var(--e-global-color-text, #000);

  --lwg-border: color-mix(in srgb, var(--lwg-text) 18%, transparent);
  --lwg-surface: color-mix(in srgb, var(--lwg-text) 6%, transparent);

  /* Muted tiers */
  --lwg-muted: color-mix(in srgb, var(--lwg-text) 65%, transparent);
  --lwg-muted-strong: color-mix(in srgb, var(--lwg-text) 65%, transparent);
  --lwg-border-strong: color-mix(in srgb, var(--lwg-text) 65%, transparent);

  --lwg-bg: #fff;
  --lwg-radius: 18px;
  --lwg-radius-pill: 999px;

  --lwg-shadow: 0 3px 14px rgba(0,0,0,.08);
  --lwg-shadow-hover: 0 6px 20px rgba(0,0,0,.12);

  --lwg-gap: 12px;
  --lwg-pad: 14px;
}

@supports not (color: color-mix(in srgb, #000 50%, transparent)){
  .liberty-weekgrid{
    --lwg-border: rgba(0,0,0,.18);
    --lwg-surface: rgba(0,0,0,.06);
    --lwg-muted: rgba(0,0,0,.65);
    --lwg-muted-strong: rgba(0,0,0,.82);
    --lwg-border-strong: rgba(0,0,0,.32);
  }
}

.liberty-weekgrid{ color: var(--lwg-text); }

.liberty-weekgrid[data-layout="grid"]{
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding: 0 10px;
  box-sizing: border-box;
}

.liberty-weekgrid__inner{ width:100%; box-sizing:border-box; }
.liberty-weekgrid__body{ display:block; }
.liberty-weekgrid__empty{ padding:1rem; opacity:.85; }

.liberty-weekgrid__dow{ font-weight:800; line-height:1.1; }
.liberty-weekgrid__date{ font-weight:700; line-height:1.1; }

.liberty-weekgrid__movieMeta{ display:flex; gap:12px; align-items:flex-start; }
.liberty-weekgrid__metaText{ min-width:0; }

.liberty-weekgrid__title{
  font-weight: 900;
  letter-spacing: -0.01em;
  line-height: 1.12;
  white-space: normal;

  /* Requested: true black / full opacity */
  color: #000;
}

.liberty-weekgrid__metaRow{
  margin-top: 8px;
  display:flex;
  gap:10px;
  align-items:center;
}

.liberty-weekgrid__submeta{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}

/* Rating is darker than runtime/misc */
.liberty-weekgrid__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--lwg-border-strong);
  padding:6px 10px;
  font-weight:800;
  line-height:1;
  border-radius: 0;
  background: transparent;
  color: var(--lwg-muted-strong);
}

/* runtime + misc slightly muted */
.liberty-weekgrid__runtime,
.liberty-weekgrid__misc{
  color: var(--lwg-muted);
}
.liberty-weekgrid__runtime{ font-weight:700; }

.liberty-weekgrid__submetaSep{ opacity:.55; }

.liberty-weekgrid__misc{
  margin-top: 6px;
  font-weight:650;
}

.liberty-weekgrid__synopsis{
  margin-top: 8px;
  color: var(--lwg-text);
  line-height: 1.35;
}

.liberty-weekgrid__status{
  margin-top: 8px;
  font-weight:850;
  color: var(--lwg-text);
}

.liberty-weekgrid__trailer{
  margin-left:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 10px 14px;
  border-radius: var(--lwg-radius-pill);

  font-weight:850;
  white-space: nowrap;
  background: color-mix(in srgb, var(--e-global-color-accent, #FD0000) 72%, white);
  border: 1px solid color-mix(in srgb, var(--e-global-color-accent, #FD0000) 82%, white);
  color: #fff;


  /* background: var(--e-global-color-accent, #FD0000);
  color: #fff;
  border: 1px solid var(--e-global-color-accent, #FD0000); */

  text-decoration: none !important;   /* ðŸ”¥í´¥ force remove underline */
}

/*
.liberty-weekgrid__trailer{
  margin-left:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 10px 14px;
  border-radius: var(--lwg-radius-pill);
  text-decoration:none;
  font-weight:850;
  border:1px solid var(--lwg-border);
  transition: filter .15s ease, transform .15s ease;
  background: var(--lwg-surface);
  color: var(--lwg-text);
  white-space: nowrap;
} */

.liberty-weekgrid__trailer:hover{ filter:brightness(.98); transform:translateY(-1px); }

.liberty-weekgrid__posterWrap{ flex:0 0 auto; width:84px; }
.liberty-weekgrid__poster{
  width:84px;
  height:auto;
  border-radius:12px;
  display:block;
  box-shadow:0 2px 10px rgba(0,0,0,.10);
}

/* Chips */
.liberty-weekgrid__chips{ display:flex; flex-wrap:wrap; gap:8px; }
.liberty-weekgrid__chipWrap{ display:inline-flex; align-items:center; }

.liberty-weekgrid__chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius: var(--lwg-radius-pill);
  font-weight:900;
  line-height:1;
  white-space:nowrap;

  background: var(--e-global-color-primary, #007DFF);
  color: #fff;
  border: 1px solid var(--e-global-color-primary, #007DFF);
}

.liberty-weekgrid__note{
  font-size:.72rem;
  font-weight:700;
  color: var(--lwg-muted);
  line-height:1.1;
}

.liberty-weekgrid__emptyCell{ display:block; min-height:1.4rem; }

/* ==========================================================================
   GRID header centering + sizing
   ========================================================================== */
.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__inner{
  min-width: 980px;
  padding-right: 14px; /* right gutter */
  box-sizing: border-box;
}

.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__header,
.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__row{
  display:grid;
  grid-template-columns: 320px repeat(7, minmax(90px, 1fr));
  column-gap: var(--lwg-gap);
  align-items: stretch;
}

.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__header{
  position:sticky;
  top:0;
  z-index:20;
  background: var(--lwg-bg);
  padding:10px 8px;
  border-bottom:1px solid var(--lwg-border);
}

.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__hcell,
.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__cell{
  padding:10px 8px;
  border-radius:12px;
}

.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__row{
  padding:12px 8px;
  border-bottom:1px solid var(--lwg-border);
}

/* Sticky movie column */
.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__cell--movie,
.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__hcell--movie{
  position: sticky;
  left: 0;
  z-index: 15;
  background: var(--lwg-bg);
}

.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__cell--movie{
  border:2px solid var(--lwg-border);
  box-shadow: var(--lwg-shadow);
  display:flex;
  align-items:center;
}

.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__cell--movie[data-modal]{ cursor:pointer; }
.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__cell--movie[data-modal]:hover{ box-shadow: var(--lwg-shadow-hover); }

/* Title larger in grid */
.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__title{ font-size: 1.38rem; }

/* Day header text smaller + CENTERED in each column */
.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__hcell--day{
  display:flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align:center;
}

.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__hcell--day .liberty-weekgrid__dow{ font-size: .92rem; }
.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__hcell--day .liberty-weekgrid__date{ font-size: .82rem; }

@media (max-width: 520px){
  .liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__hcell--day .liberty-weekgrid__dow{ font-size: .86rem; }
  .liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__hcell--day .liberty-weekgrid__date{ font-size: .78rem; }
}

/* Day cells centered H+V */
.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__cell--day{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__chips{ justify-content:center; }

.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__chipWrap{
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

.liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__cell--day.is-today{
  outline:2px solid var(--lwg-border);
  outline-offset:-2px;
  background: color-mix(in srgb, var(--lwg-text) 3%, transparent);
}
@supports not (color: color-mix(in srgb, #000 50%, transparent)){
  .liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__cell--day.is-today{ background: rgba(0,0,0,.02); }
}

/* Mobile: reduce sticky/left column width */
@media (max-width: 780px){
  .liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__inner{ min-width: 900px; }
  .liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__header,
  .liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__row{
    grid-template-columns: 240px repeat(7, minmax(86px, 1fr));
  }
}
@media (max-width: 520px){
  .liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__header,
  .liberty-weekgrid[data-layout="grid"] .liberty-weekgrid__row{
    grid-template-columns: 210px repeat(7, minmax(82px, 1fr));
  }
}

/* ==========================================================================
   CARDS layout
   ========================================================================== */
.liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__header{ display:none; }

.liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__row{
  border:2px solid var(--lwg-border);
  border-radius: var(--lwg-radius);
  box-shadow: var(--lwg-shadow);
  background: var(--lwg-bg);
  padding: var(--lwg-pad);
  margin: 14px 0;
}

.liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__title{ font-size: 1.38rem; }
.liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__trailer{ padding: 8px 12px; font-weight: 800; }

@media (min-width: 900px){
  .liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__row{
    display:grid;
    grid-template-columns: 360px repeat(7, minmax(80px, 1fr));
    column-gap: var(--lwg-gap);
    row-gap: 12px;
    align-items: start;
  }

  .liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__cardHeader{
    grid-column: 1 / -1;
    display:grid;
    grid-template-columns: 360px repeat(7, minmax(80px, 1fr));
    column-gap: var(--lwg-gap);
    align-items: stretch;
    margin-bottom: 2px;
  }
}

.liberty-weekgrid__cardDayHead{
  text-align:center;
  padding: 8px 6px;
  border-radius: 12px;
  background: var(--lwg-surface);
  border: 1px solid var(--lwg-border);
}
.liberty-weekgrid__cardDayHead .liberty-weekgrid__dow{ font-size: .90rem; }
.liberty-weekgrid__cardDayHead .liberty-weekgrid__date{ font-size: .80rem; }

.liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__cell--day{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:10px 8px;
  border-radius:12px;
}
.liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__chips{ justify-content:center; }

.liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__chipWrap{
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

.liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__cell--day.is-today{
  outline:2px solid var(--lwg-border);
  outline-offset:-2px;
  background: color-mix(in srgb, var(--lwg-text) 3%, transparent);
}
@supports not (color: color-mix(in srgb, #000 50%, transparent)){
  .liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__cell--day.is-today{ background: rgba(0,0,0,.02); }
}

/* Cards status pill */
.liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__status{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 12px;
  border-radius: var(--lwg-radius-pill);
  border: 1px solid var(--lwg-border);
  background: var(--lwg-surface);
}

/* Mobile: day/date grouping pill + BORDER around each grouping */
.liberty-weekgrid__dayPill{
  display:none;
  font-weight: 850;
  font-size: .82rem;
  padding: 6px 10px;
  border-radius: 999px;
  background: var(--lwg-surface);
  color: var(--lwg-text);
  border: 1px solid var(--lwg-border);
  margin-bottom: 10px;
}

@media (max-width: 899px){
  .liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__row{ display:block; }
  .liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__cardHeader{ display:none; }

  /* Hide empty day groupings on mobile (requested) */
  .liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__cell--day.is-empty{
    display:none !important;
  }

  /* Border around each day/date grouping */
  .liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__cell--day{
    margin-top: 10px;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;

    padding: 12px 10px;
    border: 2px solid var(--lwg-border);
    border-radius: 14px;
    background: transparent;
  }

  /* Today cell gets a slightly stronger border */
  .liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__cell--day.is-today{
    border-color: var(--lwg-border-strong);
    outline: none;
  }

  .liberty-weekgrid[data-layout="cards"] .liberty-weekgrid__dayPill{ display:inline-flex; }
}

/* ========= STATUS PILL (Coming Soon / Begins) - PROMINENT ========= */
.liberty-weekgrid__status{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  margin-top:10px;
  padding:8px 14px;

  /* Bigger typography */
  font-size: clamp(0.95rem, 0.9rem + 0.25vw, 1.15rem);
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;

  border-radius: 999px;

  /* Prominent styling (theme-aware) */
  color: #fff;
  
  background-color: var(--e-global-color-accent, #FD0000) !important;
  border: 2px solid color-mix(in srgb, var(--e-global-color-primary, #007DFF) 75%, #000);

  box-shadow: 0 6px 18px rgba(0,0,0,.18);

  /* Wiggle */
  transform-origin: 50% 60%;
  animation: liberty-status-wiggle 2.8s ease-in-out infinite;
}

/* Gentle wiggle that doesn't look "cartoony" */
@keyframes liberty-status-wiggle{
  0%, 84%, 100% { transform: rotate(0deg) translateY(0); }
  86% { transform: rotate(-2deg) translateY(-1px); }
  88% { transform: rotate(2deg) translateY(0); }
  90% { transform: rotate(-1.5deg) translateY(-1px); }
  92% { transform: rotate(1.5deg) translateY(0); }
  94% { transform: rotate(0deg) translateY(0); }
}

/* Accessibility: respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .liberty-weekgrid__status{ animation: none; }
}



/* ==========================================================================
   Modal (kept as-is)
   ========================================================================== */
.lwg-modal{
  position:fixed;
  inset:0;
  z-index:2147483647;
  display:none;
}
.lwg-modal.is-open{ display:block; }
.lwg-modal__backdrop{ position:absolute; inset:0; background: rgba(0,0,0,.72); }
.lwg-modal__panel{
  position:relative;
  max-width: 820px;
  margin: 6vh auto;
  background: #fff;
  opacity: 1;
  border-radius: 18px;
  border: 1px solid rgba(0,0,0,.10);
  box-shadow: 0 20px 70px rgba(0,0,0,.45);
  overflow:hidden;
}
.lwg-modal__header{
  display:flex;
  gap:12px;
  align-items:flex-start;
  justify-content:space-between;
  padding:18px 18px 10px 18px;
  border-bottom:1px solid rgba(0,0,0,.10);
}
.lwg-modal__title{ font-weight:900; letter-spacing:-0.01em; line-height:1.1; color:#000; }
.lwg-modal__close{
  border:0; background: rgba(0,0,0,.06); color:#000;
  border-radius:12px; padding:10px 12px; cursor:pointer; font-weight:900;
}
.lwg-modal__body{ padding:14px 18px 18px 18px; color:#000; }
.lwg-modal__meta{
  display:flex; flex-wrap:wrap; gap:10px; align-items:center;
  margin-bottom:12px; color: rgba(0,0,0,.70); font-weight:700;
}
.lwg-modal__synopsis{ line-height:1.45; color:#000; }
.lwg-modal__video{
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #000;
  border-radius: 14px;
  overflow: hidden;
}
.lwg-modal__video iframe{ width: 100%; height: 100%; border: 0; display: block; }
@media (max-width: 860px){ .lwg-modal__panel{ margin: 5vh 12px; } }


