/* ============================================================
   EM Eventos v1.0.0 — página pública del evento (estilo Posh)
   Oscuro + dorado, mobile-first. Todo con scope .emev-page.
   ============================================================ */

.emev-page {
  position: relative;
  background: #0d0d0d;
  color: #f5f0e6;
  font-family: -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
  line-height: 1.5;
}
.emev-page *, .emev-page *::before, .emev-page *::after { box-sizing: border-box; }
.emev-page button { font-family: inherit; cursor: pointer; }

/* Fondo difuminado del flyer */
.emev-bgblur { position: fixed; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
.emev-bgblur img { width: 100%; height: 100%; object-fit: cover; filter: blur(60px) brightness(.4) saturate(1.2); }
.emev-bgblur--gold { background: radial-gradient(120% 100% at 50% 0%, #3a2a10 0%, #141414 60%, #0d0d0d 100%); }

/* Nav */
.emev-nav { position: relative; z-index: 2; display: flex; justify-content: space-between; align-items: center; padding: 46px 24px 12px; max-width: 448px; margin: 0 auto; }
.emev-logo { font-weight: 900; letter-spacing: .06em; font-size: 15px; color: #f5f0e6; }
.emev-logo-g { color: #d4af37; }
.emev-nav-avatar { width: 30px; height: 30px; border-radius: 50%; background: #2a2a2a; display: flex; align-items: center; justify-content: center; font-size: 15px; }

/* Columna */
.emev-col { position: relative; z-index: 2; max-width: 448px; margin: 0 auto; padding: 0 24px; }

/* Flyer */
.emev-flyer { border-radius: 14px; overflow: hidden; box-shadow: 0 18px 50px rgba(0,0,0,.55); border: 1px solid #2b2b2b; background: #161616; }
.emev-flyer img { display: block; width: 100%; height: auto; }
.emev-flyer--placeholder { aspect-ratio: 4/5; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; padding: 30px; text-align: center; background: linear-gradient(160deg, #3d2c10 0%, #161616 60%, #0d0d0d 100%); }
.emev-flyer--t { font-size: 22px; font-weight: 800; color: #e8c15a; }
.emev-flyer--f { font-size: 13px; color: #a89e8e; letter-spacing: .08em; }

/* Organizador */
.emev-org { display: flex; align-items: center; gap: 10px; padding: 16px 0; border-top: 1px solid #2b2b2b; margin-top: 18px; }
.emev-monogram { width: 34px; height: 34px; flex: 0 0 34px; border-radius: 50%; background: linear-gradient(135deg, #e8c15a, #9a7420); border: 1px solid #d4af37; display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 800; color: #141414; }
.emev-monogram--lg { width: 48px; height: 48px; flex-basis: 48px; font-size: 16px; }
.emev-monogram svg { width: 18px; height: 18px; display: block; }
.emev-monogram--lg svg { width: 24px; height: 24px; }
.emev-org-name { font-weight: 700; font-size: 14px; }
.emev-check { color: #d4af37; font-size: 13px; }
.emev-org-icons { margin-left: auto; display: flex; gap: 8px; }
.emev-iconbtn { background: none; border: none; color: #f5f0e6; font-size: 17px; opacity: .85; padding: 6px; }

/* Título y datos */
.emev-title { font-size: 24px; line-height: 1.2; font-weight: 800; letter-spacing: -.01em; margin: 2px 0 10px; color: #f5f0e6; }
.emev-venue { font-size: 14px; font-weight: 700; color: #f5f0e6; }
.emev-datetime { font-size: 14px; color: #cfc8b8; margin-top: 2px; }
.emev-promo { margin: 14px 0 4px; padding: 12px 0; border-top: 1px solid #2b2b2b; border-bottom: 1px solid #2b2b2b; font-size: 12.5px; letter-spacing: .03em; color: #a89e8e; }
.emev-music { margin: 18px 0 6px; text-align: center; }
.emev-music-t { margin: 0 0 10px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: #a89f8d; }
.emev-music-bar { display: inline-flex; align-items: center; gap: 24px; background: #fff; border-radius: 16px; padding: 12px 24px; }
.emev-music-bar a { display: inline-flex; line-height: 0; }
.emev-music-bar svg { height: 26px; width: auto; display: block; }

/* Quién va */
.emev-going { margin: 16px 0 6px; }
.emev-going-row { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.emev-going-text { font-size: 14px; font-weight: 600; margin: 0; }
.emev-going-text b { color: #d4af37; }
.emev-viewlist { background: none; border: none; color: #a89e8e; font-size: 12.5px; padding: 4px 0; }
.emev-avatars { display: flex; }
.emev-avatars span { width: 32px; height: 32px; border-radius: 50%; border: 2px solid #0d0d0d; margin-left: -9px; display: inline-flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 700; color: #141414; }
.emev-avatars span:first-child { margin-left: 0; }
.emev-avatars-more { background: #3a3a3a !important; color: #a89e8e !important; }
.emev-guestlist { margin-top: 12px; display: flex; flex-wrap: wrap; gap: 8px; }
.emev-guestlist-name { background: #1e1e1e; border: 1px solid #2b2b2b; border-radius: 99px; padding: 6px 14px; font-size: 13px; color: #d8d2c2; }
.emev-guestlist-name small { color: #a89f8d; font-size: 11px; }

/* Secciones */
.emev-section { margin: 24px 0; }
.emev-section h2 { font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: #a89e8e; margin: 0 0 10px; font-weight: 700; }
.emev-section p { font-size: 14.5px; line-height: 1.7; color: #d8d2c2; margin: 0; }
.emev-section p b { color: #f5f0e6; }

/* About con fade */
.emev-about-fade { max-height: 150px; overflow: hidden; position: relative; }
.emev-about-fade::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 70px; background: linear-gradient(to bottom, transparent, #0d0d0d); }
.emev-about.open .emev-about-fade { max-height: none; }
.emev-about.open .emev-about-fade::after { display: none; }
.emev-about-more { background: none; border: none; color: #f5f0e6; font-size: 14px; font-weight: 600; margin-top: 8px; padding: 4px 0; }

/* Tarjeta organizador */
.emev-hostcard { display: flex; align-items: center; gap: 12px; background: #161616; border: 1px solid #2b2b2b; border-radius: 16px; padding: 16px; }
.emev-hostcard-n { font-weight: 700; font-size: 15px; color: #f5f0e6; }
.emev-hostcard-s { font-size: 12px; color: #a89e8e; margin-top: 2px; }
.emev-follow { margin-left: auto; background: #d4af37; color: #141414; border: none; border-radius: 99px; padding: 9px 20px; font-size: 13px; font-weight: 800; white-space: nowrap; }
.emev-igbtn { margin-left: auto; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg, #e8c15a, #c9962e); color: #141414; text-decoration: none; flex: none; box-shadow: 0 6px 18px rgba(212,175,55,.35); }
.emev-igbtn svg { width: 22px; height: 22px; fill: #141414; }
.emev-igbtn:hover { filter: brightness(1.08); color: #141414; }
.emev-follow.emev-following { background: #2a2a2a; color: #d4af37; border: 1px solid #d4af37; }

/* Compartir */
.emev-share-row { display: flex; gap: 10px; margin-top: 6px; }
.emev-wa, .emev-copy { flex: 1; text-align: center; padding: 13px 8px; border-radius: 12px; font-size: 13.5px; font-weight: 700; text-decoration: none; border: none; }
.emev-wa { background: #22b45e; color: #fff; display: block; }
.emev-copy { background: #1e1e1e; color: #f5f0e6; border: 1px solid #3a3a3a; }

/* CTA fijo */
.emev-cta { position: fixed; bottom: 0; left: 0; right: 0; z-index: 90; padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); background: linear-gradient(to top, rgba(13,13,13,.96), transparent); }
.emev-cta button:not(.emev-cta-menu) { display: block; width: 100%; max-width: 416px; margin: 0 auto; background: linear-gradient(135deg, #e8c15a, #c9962e); color: #141414; border: none; border-radius: 99px; padding: 15px; font-size: 16px; font-weight: 800; box-shadow: 0 10px 30px rgba(212,175,55,.35); }
.emev-cta-wa { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; max-width: 416px; margin: 0 auto; background: #25d366; color: #fff; border: none; border-radius: 99px; padding: 15px; font-size: 16px; font-weight: 800; text-decoration: none; box-shadow: 0 10px 30px rgba(37,211,102,.35); }
.emev-cta-wa svg { width: 22px; height: 22px; fill: #fff; flex: none; }
.emev-cta-wa:hover { background: #1eb856; color: #fff; }

/* Botón rojo RESERVA AHORA (abre el menú) y botón de boleta individual. */
.emev-cta-menu, .emev-cta-ticket { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; max-width: 416px; margin: 0 auto; background: linear-gradient(135deg, #d43d3d, #a52727); color: #fff; border: none; border-radius: 99px; padding: 18px 15px; font-size: 16px; font-weight: 800; letter-spacing: .03em; text-decoration: none; cursor: pointer; box-shadow: 0 10px 30px rgba(212,61,61,.35); }
.emev-cta-menu svg, .emev-cta-ticket svg { width: 22px; height: 22px; flex: none; }
.emev-cta-ticket img.emev-logo-ticket { height: 22px; width: auto; max-width: 120px; flex: none; }
.emev-cta-ticket img.emev-logo-solo { height: 26px; max-width: 150px; }
.emev-cta-menu:hover, .emev-cta-ticket:hover { filter: brightness(1.08); color: #fff; }
.emev-cta-menu:active, .emev-cta-ticket:active { transform: scale(.98); }

/* Sheet con las opciones de reserva. */
.emev-sheet { position: fixed; inset: 0; z-index: 90; background: rgba(0,0,0,.65); display: flex; align-items: flex-end; justify-content: center; }
.emev-sheet[hidden] { display: none; }
.emev-sheet-card { position: relative; width: 100%; max-width: 480px; background: #141414; border: 1px solid #2b2b2b; border-bottom: none; border-radius: 20px 20px 0 0; padding: 20px 20px calc(24px + env(safe-area-inset-bottom)); }
.emev-sheet-t { margin: 4px 0 16px; text-align: center; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: #a89e8e; }
.emev-sheet-close { position: absolute; top: 8px; right: 8px; background: none; border: none; color: #f5f0e6; opacity: .7; padding: 10px; cursor: pointer; }
.emev-sheet-close svg { width: 20px; height: 20px; display: block; }
.emev-sheet-btn { margin-bottom: 18px; }
.emev-sheet-btn:last-child { margin-bottom: 0; }

.emev-spacer { height: 120px; }
.emev-foot { text-align: center; padding: 0 0 26px; color: #6f675c; font-size: 11.5px; }

/* Modal RSVP (bottom-sheet en móvil) */
.emev-modal { position: fixed; inset: 0; z-index: 100; display: flex; align-items: flex-end; justify-content: center; }
.emev-modal[hidden] { display: none; }
.emev-modal::before { content: ''; position: absolute; inset: 0; background: rgba(0,0,0,.65); }
.emev-modal-card { position: relative; width: 100%; max-width: 480px; max-height: 92vh; overflow-y: auto; background: #141414; border: 1px solid #2b2b2b; border-bottom: none; border-radius: 20px 20px 0 0; padding: 22px 22px calc(22px + env(safe-area-inset-bottom)); animation: emev-up .25s ease-out; }
@keyframes emev-up { from { transform: translateY(40px); opacity: 0; } to { transform: none; opacity: 1; } }
.emev-modal-card h3 { margin: 0 0 4px; font-size: 20px; font-weight: 800; color: #f5f0e6; padding-right: 30px; }
.emev-modal-event { font-size: 13px; color: #a89e8e; margin: 0 0 16px; }
.emev-modal-close { position: absolute; top: 14px; right: 14px; background: #1e1e1e; border: 1px solid #2b2b2b; color: #f5f0e6; width: 32px; height: 32px; border-radius: 50%; font-size: 14px; }

.emev-field { display: block; margin-bottom: 12px; }
.emev-field > span { display: block; font-size: 12.5px; font-weight: 600; color: #a89e8e; margin-bottom: 6px; }
.emev-field input { width: 100%; background: #1e1e1e; border: 1px solid #3a3a3a; border-radius: 10px; color: #f5f0e6; padding: 12px 14px; font-size: 15px; }
.emev-field input:focus { outline: none; border-color: #d4af37; }
.emev-hp { position: absolute; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; }

.emev-submit { width: 100%; background: linear-gradient(135deg, #e8c15a, #c9962e); color: #141414; border: none; border-radius: 99px; padding: 15px; font-size: 16px; font-weight: 800; margin-top: 6px; }
.emev-submit:disabled { opacity: .6; }
.emev-form-msg { font-size: 14px; margin: 12px 0 0; min-height: 20px; color: #d8d2c2; }
.emev-form-msg.emev-ok { color: #9be08a; font-weight: 600; }
.emev-form-msg.emev-err { color: #e39a7e; font-weight: 600; }

/* Toast */
.emev-toast { position: fixed; bottom: 96px; left: 50%; transform: translateX(-50%) translateY(10px); z-index: 120; background: #1e1e1e; border: 1px solid #d4af37; color: #f5f0e6; font-size: 13px; font-weight: 600; padding: 10px 18px; border-radius: 99px; opacity: 0; pointer-events: none; transition: opacity .2s, transform .2s; white-space: nowrap; }
.emev-toast.emev-show { opacity: 1; transform: translateX(-50%); }

/* Desktop: modal centrado */
@media (min-width: 640px) {
  .emev-modal { align-items: center; padding: 20px; }
  .emev-modal-card { border-radius: 20px; border-bottom: 1px solid #2b2b2b; animation: emev-pop .2s ease-out; }
  @keyframes emev-pop { from { transform: scale(.96); opacity: 0; } to { transform: none; opacity: 1; } }
}

/* En móvil el countdown va justo debajo del flyer para que el tiempo
   se vea de una al entrar. Solo reordena; el escritorio no cambia. */
@media (max-width: 859px) {
  .emev-col { display: flex; flex-direction: column; }
  .emev-flyer { order: -2; }
  .emev-count { order: -1; }
}

/* ============================================================
   BLINDAJE CONTRA EL TEMA
   El tema puede imponer serif en h1, mayúsculas en botones,
   fondos/bordes en button, etc. Doble clase (0,2,0) + !important
   en lo crítico para que la página se vea igual en cualquier tema.
   ============================================================ */
.emev-page.emev-page h1.emev-title {
  font-family: -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
  font-size: 24px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  letter-spacing: -.01em !important;
  text-transform: none !important;
  color: #f5f0e6 !important;
  margin: 2px 0 10px !important;
}
.emev-page.emev-page .emev-section h2 {
  font-family: inherit !important;
  font-size: 13px !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: #a89e8e !important;
  font-weight: 700 !important;
  margin: 0 0 10px !important;
}
.emev-page.emev-page .emev-modal-card h3 {
  font-family: inherit !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  color: #f5f0e6 !important;
  margin: 0 0 4px !important;
}
.emev-page.emev-page button {
  font-family: inherit !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}
.emev-page.emev-page .emev-cta button {
  border-radius: 99px !important;
  background: linear-gradient(135deg, #e8c15a, #c9962e) !important;
  border: none !important;
  box-shadow: 0 10px 30px rgba(212,175,55,.35) !important;
  color: #141414 !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  padding: 15px !important;
  text-decoration: none !important;
}
.emev-page.emev-page .emev-cta-wa {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 416px !important;
  margin: 0 auto !important;
  border-radius: 99px !important;
  background: #25d366 !important;
  background-image: none !important;
  border: none !important;
  box-shadow: 0 10px 30px rgba(37,211,102,.35) !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  padding: 15px !important;
  text-decoration: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}
.emev-page.emev-page .emev-cta-wa svg {
  width: 22px !important;
  height: 22px !important;
  fill: #fff !important;
  flex: none !important;
}
.emev-page.emev-page .emev-cta button.emev-cta-menu,
.emev-page.emev-page .emev-cta-ticket {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 416px !important;
  margin: 0 auto !important;
  border-radius: 99px !important;
  background: linear-gradient(135deg, #d43d3d, #a52727) !important;
  background-image: linear-gradient(135deg, #d43d3d, #a52727) !important;
  border: none !important;
  box-shadow: 0 10px 30px rgba(212,61,61,.35) !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  padding: 18px 15px !important;
  text-decoration: none !important;
  text-transform: none !important;
  cursor: pointer !important;
}
.emev-page.emev-page .emev-cta button.emev-cta-menu svg,
.emev-page.emev-page .emev-cta-ticket svg {
  width: 22px !important;
  height: 22px !important;
  flex: none !important;
}
.emev-page.emev-page .emev-cta-ticket img.emev-logo-ticket {
  height: 22px !important;
  width: auto !important;
  max-width: 120px !important;
  flex: none !important;
}
.emev-page.emev-page .emev-cta-ticket img.emev-logo-solo {
  height: 26px !important;
  max-width: 150px !important;
}
.emev-page.emev-page .emev-sheet {
  position: fixed !important;
  inset: 0 !important;
  z-index: 90 !important;
  background: rgba(0,0,0,.65) !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
}
.emev-page.emev-page .emev-sheet[hidden] { display: none !important; }
.emev-page.emev-page .emev-sheet-card {
  position: relative !important;
  width: 100% !important;
  max-width: 480px !important;
  background: #141414 !important;
  border: 1px solid #2b2b2b !important;
  border-bottom: none !important;
  border-radius: 20px 20px 0 0 !important;
  padding: 20px 20px calc(24px + env(safe-area-inset-bottom)) !important;
}
.emev-page.emev-page .emev-sheet-btn { margin-bottom: 18px !important; }
.emev-page.emev-page .emev-sheet-btn:last-child { margin-bottom: 0 !important; }
.emev-page.emev-page .emev-cta-wa:hover {
  background: #1eb856 !important;
  color: #fff !important;
}
.emev-page.emev-page .emev-iconbtn {
  background: none !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  color: #f5f0e6 !important;
  padding: 6px !important;
  min-width: 0 !important;
}
.emev-page.emev-page .emev-follow {
  border-radius: 99px !important;
  background: #d4af37 !important;
  border: none !important;
  box-shadow: none !important;
  color: #141414 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  padding: 9px 20px !important;
  text-decoration: none !important;
}
.emev-page.emev-page .emev-igbtn {
  margin-left: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #e8c15a, #c9962e) !important;
  border: none !important;
  box-shadow: 0 6px 18px rgba(212,175,55,.35) !important;
  color: #141414 !important;
  text-decoration: none !important;
  flex: none !important;
  padding: 0 !important;
}
.emev-page.emev-page .emev-igbtn svg {
  width: 22px !important;
  height: 22px !important;
  fill: #141414 !important;
}
.emev-page.emev-page .emev-music {
  margin: 18px 0 6px !important;
  text-align: center !important;
}
.emev-page.emev-page .emev-music-t {
  margin: 0 0 10px !important;
  font-size: 12px !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: #a89f8d !important;
}
.emev-page.emev-page .emev-music-bar {
  display: inline-flex !important;
  align-items: center !important;
  gap: 24px !important;
  background: #fff !important;
  border-radius: 16px !important;
  padding: 12px 24px !important;
  border: none !important;
  box-shadow: none !important;
}
.emev-page.emev-page .emev-music-bar a {
  display: inline-flex !important;
  line-height: 0 !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}
.emev-page.emev-page .emev-music-bar svg {
  height: 26px !important;
  width: auto !important;
  display: block !important;
}
.emev-page.emev-page .emev-players {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 16px !important;
  margin: 16px 0 6px !important;
}
.emev-page.emev-page .emev-player {
  background: #161616 !important;
  border: 1px solid #2b2b2b !important;
  border-radius: 18px !important;
  padding: 16px 14px 14px !important;
}
.emev-page.emev-page .emev-player-t {
  margin: 0 0 12px !important;
  font-size: 12px !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  color: #d8c58f !important;
  text-align: center !important;
}
.emev-page.emev-page .emev-player iframe {
  width: 100% !important;
  border: 0 !important;
  display: block !important;
}
.emev-count { margin: 16px 0 4px; text-align: center; }
.emev-count-t { margin: 0 0 10px; font-size: 14px; letter-spacing: .18em; text-transform: uppercase; color: #a89f8d; }
.emev-count-boxes { display: flex; gap: 12px; justify-content: center; }
.emev-count-box { background: #161616; border: 1px solid #2b2b2b; border-radius: 14px; min-width: 78px; padding: 12px 8px; }
.emev-count-box span { display: block; font-size: 34px; font-weight: 800; color: #e8c15a; line-height: 1.1; }
.emev-count-box small { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: #a89f8d; }
.emev-page.emev-page .emev-count { margin: 16px 0 4px !important; text-align: center !important; }
.emev-page.emev-page .emev-count-t { margin: 0 0 10px !important; font-size: 14px !important; letter-spacing: .18em !important; text-transform: uppercase !important; color: #a89f8d !important; }
.emev-page.emev-page .emev-count-boxes { display: flex !important; gap: 12px !important; justify-content: center !important; }
.emev-page.emev-page .emev-count-box { background: #161616 !important; border: 1px solid #2b2b2b !important; border-radius: 14px !important; min-width: 78px !important; padding: 12px 8px !important; }
.emev-page.emev-page .emev-count-box span { display: block !important; font-size: 34px !important; font-weight: 800 !important; color: #e8c15a !important; line-height: 1.1 !important; }
.emev-page.emev-page .emev-count-box small { font-size: 11px !important; letter-spacing: .12em !important; text-transform: uppercase !important; color: #a89f8d !important; }
@media (max-width: 859px) {
  .emev-page.emev-page .emev-col { display: flex !important; flex-direction: column !important; }
  .emev-page.emev-page .emev-flyer { order: -2 !important; }
  .emev-page.emev-page .emev-count { order: -1 !important; }
}
.emev-cupo { margin: 12px 0 4px; font-size: 13px; color: #a89f8d; text-align: center; }
.emev-cupo-pocos { color: #e8c15a; font-weight: 800; font-size: 14px; }
.emev-cupo-lleno { color: #e05a5a; font-weight: 800; font-size: 14px; }
.emev-cta button[disabled] { opacity: .55; cursor: not-allowed; }
.emev-page.emev-page .emev-cupo { margin: 12px 0 4px !important; font-size: 13px !important; color: #a89f8d !important; text-align: center !important; }
.emev-page.emev-page .emev-cupo-pocos { color: #e8c15a !important; font-weight: 800 !important; font-size: 14px !important; }
.emev-page.emev-page .emev-cupo-lleno { color: #e05a5a !important; font-weight: 800 !important; font-size: 14px !important; }
.emev-players {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  margin: 16px 0 6px;
}
.emev-player {
  background: #161616;
  border: 1px solid #2b2b2b;
  border-radius: 18px;
  padding: 16px 14px 14px;
}
.emev-player-t {
  margin: 0 0 12px;
  font-size: 12px;
  letter-spacing: .16em;
  text-transform: uppercase;
  font-weight: 700;
  color: #d8c58f;
  text-align: center;
}
.emev-player iframe {
  width: 100%;
  border: 0;
  display: block;
}
.emev-page.emev-page .emev-submit {
  border-radius: 99px !important;
  background: linear-gradient(135deg, #e8c15a, #c9962e) !important;
  border: none !important;
  box-shadow: none !important;
  color: #141414 !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  padding: 15px !important;
  text-decoration: none !important;
}
.emev-page.emev-page .emev-copy {
  border-radius: 12px !important;
  background: #1e1e1e !important;
  border: 1px solid #3a3a3a !important;
  box-shadow: none !important;
  color: #f5f0e6 !important;
  text-decoration: none !important;
}
.emev-page.emev-page a.emev-wa {
  text-decoration: none !important;
  border: none !important;
  box-shadow: none !important;
  color: #fff !important;
  background: #22b45e !important;
}
.emev-page.emev-page .emev-viewlist,
.emev-page.emev-page .emev-about-more {
  background: none !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 4px 0 !important;
  min-width: 0 !important;
  text-decoration: none !important;
}
.emev-page.emev-page .emev-modal-close {
  border-radius: 50% !important;
  background: #1e1e1e !important;
  border: 1px solid #2b2b2b !important;
  box-shadow: none !important;
  color: #f5f0e6 !important;
  padding: 0 !important;
  min-width: 0 !important;
  text-decoration: none !important;
}
.emev-page.emev-page .emev-field input {
  appearance: none !important;
  -webkit-appearance: none !important;
  background: #1e1e1e !important;
  border: 1px solid #3a3a3a !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  color: #f5f0e6 !important;
  font-family: inherit !important;
  font-size: 15px !important;
  padding: 12px 14px !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Iconos SVG */
.emev-iconbtn svg { width: 20px; height: 20px; display: block; }
.emev-nav-avatar svg { width: 15px; height: 15px; display: block; color: #a89e8e; }
.emev-modal-close svg { width: 13px; height: 13px; display: block; margin: auto; }
.emev-modal-close { display: inline-flex; align-items: center; justify-content: center; }

/* ============================================================
   WEB (desktop): dos columnas estilo Posh —
   contenido a la izquierda, flyer fijo a la derecha.
   ============================================================ */
@media (min-width: 860px) {
  .emev-nav { max-width: 1080px; padding-top: 30px; }
  .emev-col {
    max-width: 1080px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 380px;
    column-gap: 56px;
    align-items: start;
  }
  .emev-col > :not(.emev-flyer) { grid-column: 1; min-width: 0; }
  .emev-flyer {
    grid-column: 2;
    grid-row: 1 / span 30;
    position: sticky;
    top: 30px;
    align-self: start;
  }
  .emev-page.emev-page h1.emev-title { font-size: 34px !important; }
  .emev-org { margin-top: 0; border-top: none; padding-top: 4px; }
  .emev-going { max-width: 540px; }
  .emev-section { max-width: 640px; }
  .emev-spacer { display: none; }
  .emev-foot { grid-column: 1 / -1; }
}
