/* LubeWear Live — LUBE Magazine offer box, mystery speaker cards, provisional programme timeline */

/* ---- LUBE Magazine offer (delegate form) ---- */
.mag-offer { position: relative; border: 2px solid var(--gold); border-radius: 14px; padding: 1.4rem 1rem 0.6rem;
  background: linear-gradient(135deg, #fff6df 0%, #fff 55%, #fffaf0 100%); box-shadow: 0 8px 22px rgba(185, 140, 30, 0.16); }
.mag-badge { position: absolute; top: -0.8rem; left: 1rem; font-family: var(--font-head); font-size: 0.72rem; font-weight: 700;
  letter-spacing: 0.06em; text-transform: uppercase; color: #5c3d00; background: linear-gradient(90deg, var(--gold), #f8d47c);
  border-radius: 999px; padding: 0.25rem 0.75rem; }
.mag-offer .checks label { background: #fff; }
.mag-print { font-size: 0.9rem; color: #6b4b00; margin: 0.2rem 0 0.4rem; }

/* ---- Mystery speaker cards (carousel) ---- */
.car-mystery { border: 2px dashed rgba(122, 77, 232, 0.45); background: linear-gradient(160deg, #f7f3ff 0%, #fff 45%); }
.mys-badge { position: absolute; top: 1.6rem; right: -3.3rem; z-index: 3; transform: rotate(40deg); width: 13rem; text-align: center;
  font-family: var(--font-head); font-size: 0.66rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase;
  color: #fff; background: linear-gradient(90deg, #5a30c0, #7a4de8); padding: 0.3rem 0; box-shadow: 0 4px 12px rgba(90, 48, 192, 0.3); }
.car-mystery { overflow: hidden; }
.mys-img { position: relative; background: radial-gradient(circle at 50% 35%, #2a3d55, var(--navy)); color: #0b1522; }
.mys-silhouette svg { width: 100%; height: 100%; filter: drop-shadow(0 0 10px rgba(108, 196, 255, 0.35)); }
.mys-blur img { object-fit: cover; filter: blur(6px) saturate(0.8); transform: scale(1.25); }
.mys-q { position: absolute; inset: 0; display: grid; place-items: center; font-family: var(--font-head); font-size: 2.6rem;
  font-weight: 800; color: rgba(255, 255, 255, 0.92); text-shadow: 0 2px 12px rgba(0, 0, 0, 0.45); animation: mys-pulse 2.6s ease-in-out infinite; }
.mys-kicker { font-size: 0.72rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: #5a30c0; margin: 0; }
.car-mystery h3 { font-size: 1.12rem; }
@keyframes mys-pulse { 0%, 100% { opacity: 0.65; transform: scale(1); } 50% { opacity: 1; transform: scale(1.08); } }

/* ---- Condensed "What's on" (programme page) ---- */
.whats-compact { grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1rem; }
.whats-compact .card { padding: 1.2rem 1.2rem 1.1rem; }
.whats-compact .card-icon { width: 44px; height: 44px; padding: 10px; margin-bottom: 0.7rem; }
.whats-compact .card h3 { font-size: 1rem; margin-bottom: 0.3rem; }
.whats-compact .card p { font-size: 0.9rem; }
.whats-more { margin-top: 1.2rem; font-weight: 600; }
.whats-more a { color: var(--blue); }

/* ---- Provisional programme timeline ---- */
.prog-provisional { display: inline-block; margin-bottom: 1.2rem; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.06em;
  text-transform: uppercase; color: #8a6a11; background: #fdf6e4; border: 1px solid #ecd28a; border-radius: 999px; padding: 0.3rem 0.8rem; }
.prog-row { display: grid; grid-template-columns: 44px 150px 1fr; gap: 1rem; align-items: start; padding: 1rem 1.1rem;
  border-left: 3px solid rgba(0, 102, 170, 0.25); background: #f8fbfd; border-radius: 0 12px 12px 0; margin-bottom: 0.55rem; }
.prog-icon { width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; background: var(--sky); color: var(--blue-deep); }
.prog-icon svg { width: 24px; height: 24px; }
.prog-time { font-family: var(--font-head); font-size: 0.9rem; color: var(--blue); padding-top: 0.6rem; }
.prog-body h4 { font-size: 1.02rem; margin: 0.5rem 0 0.2rem; }
.prog-body p { color: var(--slate); font-size: 0.95rem; margin: 0; }
.prog-tags { display: flex; flex-wrap: wrap; gap: 0.35rem; margin-top: 0.5rem; }
.prog-tag { font-size: 0.7rem; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; border-radius: 999px;
  padding: 0.15rem 0.55rem; color: #55636f; background: #edf1f4; }
.prog-tag-talk { color: var(--blue-deep); background: var(--sky); }
.prog-tag-social { color: #8a3b00; background: #ffe9d6; }
.prog-social { border-left-color: #f08a24; background: linear-gradient(90deg, #fff4ea 0%, #fffaf5 100%); }
.prog-social .prog-icon { background: linear-gradient(135deg, #f08a24, #f5b942); color: #fff; }
.prog-logistics { opacity: 0.88; }
.prog-speaker { margin-top: 0.35rem !important; font-weight: 600; color: var(--ink) !important; }
.prog-mystery { color: #5a30c0 !important; }
.prog-tbc { color: var(--slate) !important; font-style: italic; font-weight: 500; }
.mys-chip { display: inline-block; font-size: 0.66rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: #fff;
  background: linear-gradient(90deg, #5a30c0, #7a4de8); border-radius: 999px; padding: 0.12rem 0.5rem; margin-right: 0.3rem; vertical-align: 1px; }
.agenda-row .prog-speaker { display: block; font-size: 0.9rem; }
.agenda-social { border-left-color: #f08a24; background: #fff7ef; }
@media (max-width: 640px) {
  .prog-row { grid-template-columns: 44px 1fr; }
  .prog-time { padding-top: 0.7rem; }
  .prog-body { grid-column: 1 / -1; }
  .prog-body h4 { margin-top: 0; }
}
@media (prefers-reduced-motion: reduce) { .mys-q { animation: none; } }
