/* Upcoming Events card (site-seasonal9): an engraved-invitation card under the Dive-In Movie marquee, in the same gold and navy.
   Fonts are already self-hosted: Great Vibes ("MCC Script", title-script.css) for event names, Bebas Neue ("MCC Marquee", divein.css)
   for the header, date seal and countdown. Self-drawn CSS only; no images or outside requests. The seal shimmer is off under
   prefers-reduced-motion. Accent colour follows the seasonal theme (data-season on <html>, set by season.js). */
.evw { --ev-accent: #e2c788; --ev-glow: rgba(226,199,136,.35); position: relative; padding: 16px 20px 16px; border-radius: 14px; color: #fff;
  background: radial-gradient(120% 90% at 50% 0%, rgba(226,199,136,.10), transparent 60%), linear-gradient(160deg, #1d3157, #0f1c33 70%);
  border: 1px solid #c9a45c; box-shadow: inset 0 0 0 5px #0f1c33, inset 0 0 0 6px rgba(226,199,136,.45), 0 10px 30px rgba(0,0,0,.35); text-align: left; }
[data-theme="dark"] .evw { background: radial-gradient(120% 90% at 50% 0%, rgba(226,199,136,.08), transparent 60%), linear-gradient(160deg, #182844, #0a1222 70%); }
.evw[hidden] { display: none; }

/* engraved corner flourishes */
.evw-orn { position: absolute; width: 16px; height: 16px; border: 0 solid var(--ev-accent); pointer-events: none; filter: drop-shadow(0 0 3px var(--ev-glow)); }
.evw-orn.tl { top: 10px; left: 10px; border-top-width: 2px; border-left-width: 2px; border-top-left-radius: 6px; }
.evw-orn.tr { top: 10px; right: 10px; border-top-width: 2px; border-right-width: 2px; border-top-right-radius: 6px; }
.evw-orn.bl { bottom: 10px; left: 10px; border-bottom-width: 2px; border-left-width: 2px; border-bottom-left-radius: 6px; }
.evw-orn.br { bottom: 10px; right: 10px; border-bottom-width: 2px; border-right-width: 2px; border-bottom-right-radius: 6px; }

/* header: gold Bebas between hairline rules that end in a diamond */
.evw-head { display: flex; align-items: center; gap: 10px; margin: 0 6px 10px; font: 400 1.3rem/1 "MCC Marquee", var(--sans); letter-spacing: .22em; color: var(--gold-2, #e2c788); }
.evw-ht { flex: none; padding-left: .22em; }
.evw-rule { position: relative; flex: 1; height: 1px; background: linear-gradient(90deg, transparent, var(--ev-accent)); }
.evw-rule.r { background: linear-gradient(90deg, var(--ev-accent), transparent); }
.evw-rule::after { content: ""; position: absolute; top: -3px; right: -3px; width: 6px; height: 6px; background: var(--ev-accent); transform: rotate(45deg); }
.evw-rule.r::after { right: auto; left: -3px; }

.evw-list { list-style: none; margin: 0; padding: 0 4px; }
.evw-ev { display: flex; align-items: center; gap: 16px; padding: 8px 2px; }
.evw-ev + .evw-ev { border-top: 1px dashed rgba(226,199,136,.35); }
.evw-ev[hidden] { display: none; }

/* gold date seal */
.evw-seal { position: relative; flex: none; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 70px; height: 70px; border-radius: 50%; overflow: hidden;
  color: #0f1c33; background: radial-gradient(circle at 35% 30%, #fbf1d3, #e2c788 48%, #b88e45);
  box-shadow: 0 0 0 2px #0f1c33, 0 0 0 3.5px var(--ev-accent), 0 0 14px var(--ev-glow), inset 0 1px 0 rgba(255,255,255,.6), inset 0 -2px 4px rgba(0,0,0,.18); }
.evw-seal::before { content: ""; position: absolute; inset: 5px; border-radius: 50%; border: 1px dashed rgba(15,28,51,.45); }
.evw-seal::after { content: ""; position: absolute; top: -20%; bottom: -20%; left: -60%; width: 40%; transform: skewX(-20deg); background: linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent); animation: evw-shine 6s ease-in-out infinite; }
@keyframes evw-shine { 0%, 70% { left: -60%; } 100% { left: 130%; } }
.evw-mon, .evw-dow { font: 400 .78rem/1 "MCC Marquee", var(--sans); letter-spacing: .14em; padding-left: .14em; }
.evw-day { font: 400 1.9rem/.92 "MCC Marquee", var(--sans); margin: 1px 0; }
.evw-dow { opacity: .75; font-size: .66rem; }

/* text */
.evw-body { min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.evw-title { margin: 0; font: 400 2.15rem/1.05 "MCC Script", var(--serif); color: var(--gold-2, #e2c788); letter-spacing: 0; padding: 0 .1em .06em 0; text-shadow: 0 1px 10px rgba(226,199,136,.25); }
.evw-when { font: 700 .92rem/1.3 var(--sans); color: #f3eee2; }
.evw-blurb { font-size: .88rem; line-height: 1.4; color: #e8e2d2; }
.evw-details { margin: 2px 0 0; padding-left: 1.1em; font-size: .86rem; line-height: 1.4; color: #e8e2d2; }
.evw-tags { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; margin-top: 4px; }
.evw-tags:empty { display: none; }
.evw-soon { display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px; border-radius: 999px; border: 1px dashed rgba(226,199,136,.7); font-size: .8rem; font-style: italic; color: #f3e3b8; }
.evw-soon::before { content: ""; width: 5px; height: 5px; background: var(--ev-accent); transform: rotate(45deg); }
.evw-count { display: inline-block; padding: 4px 9px 2px; border-radius: 4px; font: 400 .92rem/1 "MCC Marquee", var(--sans); letter-spacing: .12em; color: #0f1c33;
  background: linear-gradient(180deg, #f3e3b8, #e2c788 45%, #b88e45); box-shadow: 0 1px 0 rgba(255,255,255,.5) inset, 0 2px 5px rgba(0,0,0,.3); }
.evw-count[hidden] { display: none; }
.evw-ev[data-when="today"] .evw-count { background: linear-gradient(180deg, #fff6dc, #f1d48c 45%, #c99a3c); box-shadow: 0 0 10px var(--ev-glow), 0 1px 0 rgba(255,255,255,.5) inset; }
.evw-menus { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
.evw-menu { display: inline-flex; align-items: center; gap: 5px; padding: 5px 11px; border-radius: 999px; border: 1px solid #c9a45c; color: #f3e3b8; text-decoration: none; font-size: .82rem; font-weight: 600; }
.evw-menu:hover { background: rgba(201,164,92,.16); }
.evw-pdf { font-size: .66rem; letter-spacing: .08em; padding: 1px 4px; border-radius: 3px; background: rgba(226,199,136,.2); }

/* seasonal accent (corners, rules, seal ring); the card stays gold and navy */
[data-season="spooky"] .evw { --ev-accent: #f08a24; --ev-glow: rgba(142,91,214,.55); }
[data-season="fall"] .evw { --ev-accent: #e8a33c; --ev-glow: rgba(200,100,30,.55); }
[data-season="christmas"] .evw { --ev-accent: #d8414b; --ev-glow: rgba(190,220,255,.6); }

@media (prefers-reduced-motion: reduce) { .evw-seal::after { animation: none; display: none; } }
@media (max-width: 520px) {
  .evw { padding: 15px 15px 14px; }
  .evw-head { font-size: 1.18rem; letter-spacing: .18em; }
  .evw-ev { gap: 13px; }
  .evw-seal { width: 62px; height: 62px; }
  .evw-day { font-size: 1.7rem; }
  .evw-title { font-size: 1.95rem; }
  .evw-when { font-size: .88rem; }
}
@media print {
  .evw { color: #000; background: none; border: 1pt solid #000; box-shadow: none; }
  .evw-orn, .evw-seal::after { display: none; }
  .evw-head, .evw-title, .evw-when, .evw-blurb, .evw-details, .evw-soon, .evw-menu { color: #000; text-shadow: none; }
  .evw-rule, .evw-rule::after { background: #000; }
  .evw-seal, .evw-count { background: none; box-shadow: none; border: .8pt solid #000; color: #000; }
  .evw-title { font-family: var(--serif); font-style: italic; font-size: 1.4rem; }
}
