:root{
  --primary:#7C3CFF;
  --secondary:#FF3FA4;
  --accent:#00D4FF;
  --dark:#0D0D1F;
  --dark2:#17172E;
  --soft:#F6F2FF;
  --text:#242435;
  --muted:#6B6B80;
  --line:#E8E6F2;
  --success:#16A765;
  --warning:#B7791F;
  --danger:#D92D55;
  --gradient:linear-gradient(135deg,#7C3CFF,#FF3FA4);
  --shadow:0 24px 70px rgba(20,20,45,.14);
}

/* El acceso a WhatsApp queda como accion flotante, sin globo de texto. */
.whatsapp-float>span{display:none!important}

/* La maqueta de la invitacion muestra solo lo que recibira el invitado. */
.flyer-preview .preview-final-action{display:none!important}

/* Mantiene la grilla de tienda sin la tarjeta descriptiva intermedia. */
.store-entry-copy-placeholder{min-height:1px}
@media(max-width:600px){.store-entry-copy-placeholder{display:none}}

.guest-final-gate{
  overflow:hidden;
}

.guest-final-grid{
  display:grid;
  grid-template-columns:minmax(0, 1fr) 280px;
  gap:24px;
  align-items:stretch;
}

.guest-final-grid h2{
  margin:8px 0 12px;
  font-size:clamp(2rem, 4vw, 3.5rem);
  line-height:1.02;
}

.guest-final-grid p{
  margin:0;
  color:var(--muted);
  max-width:680px;
  line-height:1.65;
}

.guest-final-summary{
  border:1px solid rgba(137, 89, 255, .18);
  background:linear-gradient(135deg, rgba(137, 89, 255, .12), rgba(255, 52, 164, .10));
  border-radius:22px;
  padding:20px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
}

.guest-final-summary span{
  color:var(--muted);
  font-size:.78rem;
  font-weight:900;
  text-transform:uppercase;
}

.guest-final-summary strong{
  color:var(--text);
  font-size:1.4rem;
  line-height:1.1;
}

.guest-final-summary small{
  color:var(--muted);
  font-weight:800;
}

.guest-final-actions{
  margin-top:24px;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}

@media (max-width: 720px){
  .guest-final-grid{
    grid-template-columns:1fr;
    gap:16px;
  }

  .guest-final-actions .btn{
    width:100%;
    justify-content:center;
  }
}

*{box-sizing:border-box}

body{
  margin:0;
  font-family:'Inter',Arial,sans-serif;
  color:var(--text);
  background:#F8F7FC;
}

a{text-decoration:none;color:inherit}

.shell{
  min-height:100vh;
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
}

.shell.auth-shell{
  grid-template-columns:1fr;
}

.auth-shell .main{
  max-width:1180px;
  width:100%;
  margin:0 auto;
}

.sidebar{
  background:
    radial-gradient(circle at 20% 10%,rgba(255,63,164,.26),transparent 28%),
    radial-gradient(circle at 90% 30%,rgba(0,212,255,.16),transparent 24%),
    linear-gradient(155deg,var(--dark),var(--dark2) 58%,#241044);
  color:#fff;
  padding:28px;
  position:sticky;
  top:0;
  height:100vh;
  /* 2026-10-16: en pantallas bajas el menú no cabía y no se podía deslizar (solo pasaba en las páginas de evento). */
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
}

.brand{
  display:flex;
  align-items:center;
  gap:11px;
  font-size:1.45rem;
  font-weight:900;
}

.sidebar-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:34px;
}

.menu-close{
  display:none;
  width:40px;
  height:40px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:14px;
  background:rgba(255,255,255,.1);
  color:#fff;
  font-size:1rem;
}

.brand span{
  width:42px;
  height:42px;
  border-radius:15px;
  display:grid;
  place-items:center;
  background:var(--gradient);
  box-shadow:0 12px 28px rgba(124,60,255,.45);
}

.side-nav{
  display:grid;
  gap:8px;
}

.side-nav a{
  display:flex;
  align-items:center;
  gap:11px;
  padding:13px 14px;
  border-radius:14px;
  color:rgba(255,255,255,.78);
  font-weight:800;
}

.side-nav a:hover{
  background:rgba(255,255,255,.1);
  color:#fff;
}

/* 2026-10-21: "Salir" siempre a la vista, pegado al pie del menú aunque la lista no quepa en la pantalla. */
.side-nav a.side-logout{
  position:sticky;
  bottom:0;
  z-index:1;
  margin-top:4px;
  background:#211037;
  /* la segunda sombra tapa el margen de abajo del menú, para que no se asome lo que pasa por detrás */
  box-shadow:0 -14px 18px -6px #211037,0 44px 0 #211037;
}
.side-nav a.side-logout:hover{
  background:#33204d;
}

.side-card{
  margin-top:28px;
  padding:18px;
  border-radius:18px;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.14);
}

.side-card small,.kicker,.topbar small{
  color:var(--secondary);
  text-transform:uppercase;
  font-weight:900;
  letter-spacing:.06em;
  font-size:.72rem;
}

.side-card p{
  margin:8px 0 0;
  color:rgba(255,255,255,.78);
  line-height:1.55;
}

.main{
  min-width:0;
  width:100%;
  max-width:100%;
  padding:28px;
}

.topbar{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  margin-bottom:24px;
}

.dashboard-topbar{
  justify-content:flex-end;
}

.dashboard-topbar .top-actions{
  margin-left:auto;
}

.event-stage-topbar{
  justify-content:flex-end;
  min-height:0;
  margin-bottom:0;
}

.event-stage-topbar .top-actions{
  display:none;
}

.event-stage-card + .form-card > .section-head:first-child{
  justify-content:flex-end;
  margin-bottom:18px;
}

.event-stage-card + .form-card > .section-head:first-child > div:first-child{
  display:none;
}

.event-stage-card + .form-card > .section-head:first-child .top-actions .btn{
  display:none;
}

.menu-toggle{
  display:none;
  width:44px;
  height:44px;
  border:0;
  border-radius:14px;
  background:var(--gradient);
  color:#fff;
  font-size:1.45rem;
  box-shadow:0 12px 28px rgba(124,60,255,.28);
}

.mobile-overlay{
  display:none;
}

.topbar h1{
  margin:5px 0 0;
  font-size:1.85rem;
  letter-spacing:0;
}

.top-actions,.actions-row,.form-links,.row-tags{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:0;
  cursor:pointer;
  min-height:44px;
  padding:12px 18px;
  border-radius:999px;
  font-weight:900;
  font-family:inherit;
}

.btn[hidden]{
  display:none!important;
}

.quantity-symbol{
  display:inline-grid;
  place-items:center;
  font-size:1.15rem;
  font-weight:950;
  line-height:1;
}

.btn-primary{
  background:var(--gradient);
  color:#fff;
  box-shadow:0 14px 35px rgba(124,60,255,.28);
}

.btn-back-top{
  background:#1677FF;
  color:#fff;
  box-shadow:0 12px 28px rgba(22,119,255,.22);
  min-height:42px;
  padding:10px 15px;
}

.btn-back-top:hover{
  background:#0F66DF;
}

.btn-logout-top{
  background:#FFF0F3;
  color:var(--danger);
  border:1px solid rgba(217,45,85,.24);
}

.btn-logout-top:hover{
  background:var(--danger);
  color:#fff;
}

.top-icon-btn{
  width:42px;
  height:42px;
  display:inline-grid;
  place-items:center;
  border-radius:999px;
  background:#fff;
  color:var(--primary);
  border:1px solid var(--line);
  font-size:1rem;
  box-shadow:0 10px 22px rgba(20,20,45,.06);
  transition:.18s ease;
}

.top-icon-btn:hover{
  color:#fff;
  background:var(--gradient);
  border-color:transparent;
  transform:translateY(-1px);
}

.btn-ghost{
  background:#fff;
  color:var(--dark);
  border:1px solid var(--line);
}

.btn-soft-dark{
  background:var(--dark);
  color:#fff;
}

.btn-disabled{
  background:#F1EFF7;
  color:var(--muted);
  border:1px solid var(--line);
  cursor:not-allowed;
}

.btn-danger{
  background:#FFF0F3;
  color:var(--danger);
  border:1px solid rgba(217,45,85,.22);
}

.btn-full{width:100%}

.user-chip,.status-pill,.row-tags span,.bank-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:10px 13px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--line);
  font-weight:900;
  color:var(--dark2);
}

.bank-chip{
  color:var(--success);
  background:#EAF8F0;
  border-color:#BFEBD2;
}

.card,.metric-card,.hero-panel{
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  box-shadow:var(--shadow);
}

.card{padding:26px;margin-bottom:22px}

.event-stage-card{
  max-width:1120px;
  margin-bottom:22px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  box-shadow:var(--shadow);
}

.event-stage-card.is-joined-form{
  margin-bottom:0;
  border-radius:22px 22px 0 0;
  box-shadow:none;
}

.event-stage-card.has-invitation-status{
  position:relative;
  z-index:30;
  overflow:visible;
}

.event-stage-card.has-invitation-status .stage-progress{
  border-radius:21px 21px 0 0;
  overflow:hidden;
}

.event-stage-card.has-invitation-status + .form-card{
  position:relative;
  z-index:1;
}

.event-stage-card.is-joined-form + .form-card.is-joined-event-form{
  margin-top:0;
  border-top:0;
  border-radius:0 0 22px 22px;
}

.stage-payment-alert{
  display:flex;
  align-items:center;
  gap:10px;
  margin:14px 24px 18px;
  padding:10px 12px;
  border:1px solid #BFEBD2;
  border-radius:8px;
  background:#F1FFF7;
  color:#087040;
}
.stage-payment-alert>i{font-size:1.15rem}
.stage-payment-alert div{display:grid;gap:2px;min-width:0}
.stage-payment-alert strong{font-size:.86rem}
.stage-payment-alert span{color:#4B8062;font-size:.76rem;font-weight:800}
.stage-payment-alert .btn{margin-left:auto;min-height:34px;padding:8px 12px;font-size:.76rem}
.stage-payment-alert.is-expired{border-color:#FFD1D9;background:#FFF1F5;color:#C0184A}
.stage-payment-alert.is-expired span{color:#9F1239}
.stage-payment-alert.is-sealed{border-color:#D9D0FF;background:#F8F6FF;color:var(--primary)}
.stage-payment-alert.is-sealed span{color:var(--muted)}

.stage-progress{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  background:#F8F7FC;
  border-bottom:1px solid var(--line);
}

.stage-progress-item{
  display:flex;
  align-items:center;
  gap:9px;
  min-height:58px;
  padding:12px 14px;
  color:var(--muted);
  border-right:1px solid var(--line);
  text-decoration:none;
  transition:.18s ease;
}

.stage-progress-item:last-child{
  border-right:0;
}

a.stage-progress-item:hover{
  filter:saturate(1.08);
  box-shadow:inset 0 -3px 0 rgba(124,60,255,.16);
}

.stage-progress-icon{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--line);
  color:var(--muted);
  font-weight:900;
  flex:0 0 auto;
}

.stage-progress-item strong{
  font-size:.86rem;
  font-weight:900;
  line-height:1.2;
}

.stage-step-number{
  margin-left:auto;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(124,60,255,.14);
  border-radius:999px;
  background:#fff;
  color:var(--primary);
  font-size:.82rem;
  font-weight:950;
  line-height:1;
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(22,18,54,.06);
}

.stage-progress-item.is-done{
  color:var(--success);
  background:#F2FFF6;
}

.stage-progress-item.is-done .stage-progress-icon{
  color:#fff;
  border-color:transparent;
  background:var(--success);
}

.stage-progress-item.is-done .stage-step-number{
  border-color:rgba(22,167,101,.18);
  color:var(--success);
}

.stage-progress-item.is-current{
  color:#fff;
  background:var(--gradient);
}

.stage-progress-item.is-current .stage-progress-icon{
  color:var(--primary);
  background:#fff;
  border-color:transparent;
}

.stage-progress-item.is-current .stage-step-number{
  border-color:rgba(255,255,255,.55);
  background:rgba(255,255,255,.95);
  color:var(--primary);
}

.event-stage-main{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
  padding:24px;
}

.event-stage-main h2{
  margin:7px 0;
  font-size:1.6rem;
}

.event-stage-main p{
  margin:0;
  color:var(--muted);
  font-weight:800;
}

.invitation-status-control{position:relative;display:grid;gap:6px;min-width:210px;margin-left:auto}
.invitation-status-label{display:flex;align-items:center;justify-content:flex-end;gap:7px;color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}
.invitation-status-control select{min-height:42px;padding:8px 36px 8px 12px;border-color:#CFC5EA;background:#FBFAFF;font-weight:900}
.invitation-status-help{position:relative}
.invitation-status-help summary{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;color:var(--primary);cursor:pointer;list-style:none}
.invitation-status-help summary::-webkit-details-marker{display:none}
.invitation-status-help>div{position:absolute;right:0;top:31px;z-index:100;width:290px;padding:13px;border:1px solid #D8CCF8;border-radius:8px;background:#fff;box-shadow:0 16px 40px rgba(30,20,64,.18);text-align:left;text-transform:none}
.invitation-status-help>div:before{content:"";position:absolute;right:7px;top:-7px;width:12px;height:12px;border-left:1px solid #D8CCF8;border-top:1px solid #D8CCF8;background:#fff;transform:rotate(45deg)}
.invitation-status-help strong{display:block;margin-bottom:7px;color:var(--dark2);font-size:.78rem}
.invitation-status-help p{margin:5px 0;color:var(--muted);font-size:.72rem;font-weight:600;line-height:1.4}
@media(max-width:720px){
  .invitation-status-control{width:100%;min-width:0;margin-left:0}
  .invitation-status-label{justify-content:flex-start}
  .invitation-status-control select{width:100%}
  .invitation-status-help>div{position:absolute;left:auto;right:-8px;top:31px;width:min(290px,calc(100vw - 28px))}
  .invitation-status-help>div:before{display:none}
}

.event-stage-code{
  min-width:132px;
  padding:14px 16px;
  border-radius:16px;
  background:var(--soft);
  text-align:center;
}

.event-stage-code small{
  display:block;
  margin-bottom:5px;
  color:var(--primary);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.event-stage-code strong{
  color:var(--dark2);
  font-size:1.15rem;
}

.auth-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 430px;
  gap:24px;
  align-items:stretch;
}

.verify-grid{
  align-items:start;
}

.hero-panel{
  padding:38px;
  color:#fff;
  background:
    radial-gradient(circle at 12% 18%,rgba(255,63,164,.36),transparent 30%),
    radial-gradient(circle at 88% 20%,rgba(0,212,255,.24),transparent 28%),
    linear-gradient(135deg,#0D0D1F,#17172E 58%,#241044);
}

.hero-panel h2,.welcome-card h2,.section-head h2{
  margin:10px 0;
  font-size:2rem;
  line-height:1.05;
  letter-spacing:0;
}

.hero-panel p,.welcome-card p,.section-head p,.empty-state p{
  color:var(--muted);
  line-height:1.7;
}

.hero-panel p{color:rgba(255,255,255,.76)}

.form-card{
  display:grid;
  gap:13px;
}

.form-card.wide{
  max-width:1120px;
}

label{
  font-weight:900;
  color:var(--dark2);
  font-size:.9rem;
}

input,select,textarea{
  width:100%;
  min-height:46px;
  border:1px solid var(--line);
  border-radius:14px;
  padding:12px 14px;
  font-family:inherit;
  color:var(--text);
  background:#fff;
}

input:focus,select:focus,textarea:focus{
  outline:3px solid rgba(124,60,255,.14);
  border-color:var(--primary);
}

.password-field{
  position:relative;
  width:100%;
}

.password-field input{
  padding-right:54px;
}

.password-toggle{
  position:absolute;
  top:50%;
  right:6px;
  display:grid;
  width:40px;
  height:40px;
  place-items:center;
  transform:translateY(-50%);
  border:0;
  border-radius:12px;
  background:transparent;
  color:#6f43e6;
  cursor:pointer;
  font-size:1.1rem;
}

.password-toggle:hover,.password-toggle:focus-visible{
  outline:0;
  background:#f0ebff;
  color:#4820ba;
}

.form-links{
  justify-content:space-between;
  font-weight:800;
  color:var(--primary);
}

.alert{
  padding:14px 16px;
  border-radius:14px;
  margin-bottom:18px;
  font-weight:800;
}

.alert.success{background:#EAF8F0;color:var(--success)}
.alert.error{background:#FFF0F3;color:var(--danger)}
.alert.warning{background:#FFF7E8;color:var(--warning)}

.autosave-status{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:2500;
  display:inline-flex;
  align-items:center;
  gap:8px;
  max-width:min(340px,calc(100vw - 32px));
  padding:10px 13px;
  border:1px solid #BFEBD2;
  border-radius:999px;
  background:#F1FFF7;
  color:#087040;
  font-size:.78rem;
  font-weight:900;
  box-shadow:0 18px 46px rgba(18,14,44,.18);
}
.autosave-status[hidden]{display:none}
.autosave-status.saving{border-color:#D9D0FF;background:#F8F6FF;color:var(--primary)}
.autosave-status.error{border-color:#FFD1D9;background:#FFF1F5;color:#C0184A}
.autosave-status.pending{border-color:#E4D7FF;background:#FAF7FF;color:#7040C8}
.autosave-status i{font-size:1rem}

@media(max-width:700px){
  .autosave-status{left:12px;right:12px;bottom:12px;justify-content:center;border-radius:12px}
}

.dashboard-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 220px 220px;
  gap:18px;
  margin-bottom:22px;
}

.welcome-card{padding:30px}

.dashboard-compact{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
  padding:22px 24px;
  margin-bottom:14px;
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  box-shadow:var(--shadow);
}

.dashboard-compact h2{
  margin:7px 0;
  font-size:1.65rem;
}

.dashboard-compact p{
  margin:0;
  color:var(--muted);
  line-height:1.5;
}

.dashboard-overview{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px 24px;align-items:center;margin-bottom:24px;padding:24px 26px;border:1px solid #E4DCF6;border-radius:18px;background:linear-gradient(120deg,#fff 0%,#F9F5FF 58%,#EFFBF6 100%);box-shadow:0 16px 38px rgba(35,22,72,.08)}
.dashboard-overview-copy h2{margin:5px 0 6px;font-size:clamp(1.5rem,3vw,2rem);line-height:1.1}
.dashboard-overview-copy p{margin:0;color:var(--muted);font-size:.88rem}
.dashboard-overview-tools{display:flex;align-items:center;gap:9px}
.dashboard-overview-stats{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;padding-top:3px}
.dashboard-overview-stats span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #E8E2F3;border-radius:999px;background:rgba(255,255,255,.82);color:var(--muted);font-size:.7rem;font-weight:800}
.dashboard-overview-stats i{color:var(--primary)}
.dashboard-overview-stats b{color:var(--dark2);font-size:.82rem}
.dashboard-section{margin-bottom:28px}
.dashboard-section>.section-head{align-items:center;margin-bottom:15px}
.dashboard-section>.section-head h2{margin:5px 0;font-size:1.35rem}
.dashboard-section>.section-head p{margin:0;color:var(--muted);font-size:.82rem}
.dashboard-event-card{position:relative;min-height:258px;padding:18px;border-radius:14px;box-shadow:0 12px 30px rgba(32,20,72,.07);transition:transform .2s ease,box-shadow .2s ease}
.dashboard-event-card:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(32,20,72,.12)}
.host-event-card{border-top:4px solid #8745F5}
.guest-event-card{border-top:4px solid #19B579}
.dashboard-event-card>div:first-child{display:grid;align-content:start;min-width:0}
.dashboard-event-card .event-card-top{justify-content:space-between;margin-bottom:12px}
.event-card-state-actions{display:flex;align-items:center;gap:6px}.event-card-state-actions form{display:flex;margin:0}.mini-action.icon-only.mini-action-xs{width:28px;min-width:28px;height:28px;min-height:28px;padding:0;font-size:.72rem;box-shadow:0 5px 12px rgba(217,45,85,.18)}.dashboard-event-card .event-actions form{display:none!important}
.dashboard-event-card>div:first-child>strong{font-size:1.08rem;line-height:1.25}
.dashboard-event-card>div:first-child>span{margin-top:3px;color:var(--muted);font-size:.76rem}
.dashboard-event-card .event-actions{padding-top:13px;border-top:1px solid #EEEAF5}
.dashboard-event-card .attendance-pills{padding-top:4px}
.dashboard-event-card a.attendance-pill{text-decoration:none;cursor:pointer}
.dashboard-guest-section{padding-top:24px;border-top:1px solid var(--line)}

.section-footer-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid var(--line);
}

.participation-row{
  align-items:flex-end;
}

.participation-section{margin-bottom:28px}
.participation-page-head{margin-bottom:16px}
.participation-host-actions{justify-content:flex-end}
.participation-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.participation-event-card{display:grid;gap:18px;min-width:0;padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 14px 32px rgba(25,18,65,.07)}
.participation-event-card.host{border-top:4px solid #8745F5}
.participation-event-card.guest{border-top:4px solid #14B878}
.participation-event-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.participation-event-head h3{margin:8px 0 5px;font-size:1.16rem;line-height:1.18}
.participation-event-head p{max-width:310px;margin:0;color:var(--muted);font-size:.78rem;line-height:1.45}
.participation-event-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.participation-event-action{flex:0 0 auto;min-height:38px;padding:8px 11px;font-size:.74rem;white-space:nowrap}
.participation-event-actions .btn-ghost{border-color:#BFD5FF;background:#EDF4FF;color:#1769D6;box-shadow:0 7px 16px rgba(23,105,214,.1)}
.participation-event-actions .btn-ghost:hover{border-color:#1769D6;background:#1769D6;color:#fff}
.participation-event-notice{display:flex;align-items:flex-start;gap:8px;padding:10px 11px;border:1px solid #F5D99B;border-radius:8px;background:#FFF9E9;color:#765108;font-size:.73rem;line-height:1.42}
.participation-event-notice i{margin-top:1px;color:#DB9A00;font-size:.9rem}
.participation-event-notice strong{color:#5B3B00}
.participation-event-children{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.participation-child-card{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;gap:2px 7px;min-width:0;padding:10px;border:1px solid #E9E4F3;border-radius:8px;background:#FBFAFF}
.participation-child-card>i{grid-row:1/3;align-self:center;color:#8350EC;font-size:1rem}
.participation-child-card>span{overflow:hidden;color:var(--muted);font-size:.59rem;font-weight:900;letter-spacing:.04em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}
.participation-child-card>strong{overflow:hidden;color:var(--dark2);font-size:.72rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.participation-child-card.is-ready{border-color:#BDEBD2;background:#F1FFF7}
.participation-child-card.is-ready>i{color:var(--success)}
.participation-guest-section{padding-top:26px;border-top:1px solid var(--line)}
@media(max-width:860px){.participation-event-grid{grid-template-columns:1fr}}
@media(max-width:560px){.participation-event-card{padding:16px;gap:14px}.participation-event-head{display:grid;grid-template-columns:1fr}.participation-event-actions{display:grid;grid-template-columns:1fr 1fr}.participation-event-action{width:100%;justify-content:center}.participation-event-children{grid-template-columns:1fr}.participation-child-card{min-height:52px}.participation-page-head .btn{width:100%;justify-content:center}.participation-host-actions{justify-items:end}.participation-host-actions .btn{width:auto}}
@media(max-width:620px){.dashboard-overview{grid-template-columns:1fr;padding:19px;gap:14px}.dashboard-overview-tools{width:100%}.dashboard-overview-tools .top-icon-btn{flex:0 0 auto}.dashboard-overview-tools .btn{flex:1;justify-content:center}.dashboard-overview-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.dashboard-overview-stats span{display:grid;justify-items:center;gap:3px;padding:8px 4px;text-align:center;font-size:.6rem}.dashboard-overview-stats b{font-size:.86rem}.dashboard-section>.section-head{display:flex}.dashboard-section>.section-head h2{font-size:1.2rem}.dashboard-section>.section-head p{font-size:.76rem}.dashboard-event-card{min-height:0;padding:15px}.dashboard-event-card .event-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-event-card .event-actions .mini-action{width:100%;padding-inline:7px;font-size:.69rem}.dashboard-event-card .event-actions .icon-only{width:100%;min-width:0}.dashboard-event-card .event-actions form{display:grid}.dashboard-event-card .event-actions form .mini-action{width:100%}}

.compact-empty{
  min-height:150px;
}

.field-label-row{
  position:relative;
  display:flex;
  align-items:center;
  gap:7px;
  width:max-content;
  max-width:100%;
}

.field-label-row label{
  margin:0;
}

.field-help-button{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#F1EDFF;
  color:#7040E8;
  cursor:pointer;
}

.field-help-button:hover,
.field-help-button[aria-expanded="true"]{
  background:#7040E8;
  color:#fff;
}

.field-help-popover{
  position:absolute;
  z-index:20;
  top:34px;
  left:0;
  width:min(320px, calc(100vw - 48px));
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
  box-shadow:0 14px 34px rgba(22,18,54,.16);
  color:#55536A;
  font-size:13px;
  line-height:1.45;
}

.field-help-popover strong,
.field-help-popover span{
  display:block;
}

.field-help-popover strong{
  margin-bottom:4px;
  color:#17152D;
}

.bank-alert{
  display:flex;
  align-items:center;
  gap:10px;
  background:#FFF0F3;
  color:var(--danger);
}

.bank-alert a{
  margin-left:auto;
  color:var(--danger);
  font-weight:900;
}

.metric-card{
  padding:22px;
  display:grid;
  align-content:center;
  gap:8px;
}

.metric-card small{
  color:var(--muted);
  font-weight:900;
}

.metric-card strong{
  font-size:1.8rem;
}

.metric-card span{
  color:var(--muted);
  font-size:.9rem;
}

.section-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-bottom:18px;
}

.empty-state{
  text-align:center;
  padding:34px;
}

.empty-state i{
  font-size:2.2rem;
  color:var(--primary);
}

.event-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.event-row{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:14px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:18px;
  min-height:220px;
  background:#fff;
  text-decoration:none;
  color:inherit;
}

.summary-event-row{
  min-height:220px;
  padding:14px;
}

.summary-event-row .event-card-top{
  margin-bottom:8px;
}

.event-row.invited-row{
  border-color:rgba(0,212,255,.28);
  background:linear-gradient(90deg,#fff,#F7FCFF);
}

.calendar-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  justify-content:space-between;
  gap:12px;
  align-items:center;
}

.calendar-head h2{
  margin:7px 0;
  font-size:1.7rem;
}

.calendar-head p{
  margin:0;
  color:var(--muted);
}

.calendar-jump{
  grid-column:1/-1;
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
}

.calendar-jump select{
  width:auto;
  min-height:40px;
  border-radius:999px;
  font-weight:800;
}

.calendar-grid-card{
  padding:12px;
  margin-bottom:22px;
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  box-shadow:var(--shadow);
}

.calendar-weekdays,
.calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
}

.calendar-weekdays strong{
  padding:7px;
  color:var(--muted);
  font-size:.72rem;
  text-transform:uppercase;
  text-align:center;
}

.calendar-grid{
  gap:5px;
}

.calendar-day{
  min-height:94px;
  padding:7px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#FCFBFF;
}

.calendar-day.is-empty{
  background:#F8F7FC;
  border-style:dashed;
}

.calendar-day.is-today{
  border-color:rgba(124,60,255,.45);
  box-shadow:0 12px 28px rgba(124,60,255,.1);
}

.calendar-day-number{
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:999px;
  background:#fff;
  color:var(--dark2);
  font-weight:900;
  border:1px solid var(--line);
}

.calendar-events{
  display:grid;
  gap:4px;
  margin-top:6px;
}

.calendar-event{
  display:grid;
  gap:2px;
  padding:6px;
  border-radius:9px;
  text-decoration:none;
  border:1px solid #DED9EF;
  background:#fff;
}

.calendar-event.is-host{
  border-color:#DED0FF;
  background:#F8F4FF;
}

.calendar-event.is-guest{
  border-color:#B9EAF7;
  background:#F3FCFF;
}

.calendar-event.is-guest.attendance-confirmed{
  border-color:#BFEBD2;
  background:#EAF8F0;
}

.calendar-event.is-guest.attendance-confirmed span{
  color:var(--success);
}

.calendar-event.is-guest.attendance-maybe{
  border-color:#F2D28A;
  background:#FFF7E8;
}

.calendar-event.is-guest.attendance-maybe span{
  color:#B7791F;
}

.calendar-event.is-guest.attendance-declined{
  border-color:#F4B8C7;
  background:#FFF0F3;
}

.calendar-event.is-guest.attendance-declined span{
  color:var(--danger);
}

.calendar-event.is-guest.attendance-pending{
  border-color:#DAD6E7;
  background:#fff;
}

.calendar-event span{
  color:var(--primary);
  font-size:.66rem;
  font-weight:900;
}

.calendar-event strong{
  color:var(--dark2);
  font-size:.74rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.calendar-event small{
  color:var(--muted);
  font-size:.66rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:800;
}

.event-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
  margin-top:auto;
  padding-top:10px;
}

.event-actions form{
  margin:0;
}

.event-actions .mini-action{
  min-height:38px;
}

.event-row strong{
  display:block;
  margin-bottom:5px;
}

.event-row span{
  color:var(--muted);
}

.event-show-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-bottom:18px;
}

.event-show-grid > div{
  display:grid;
  gap:5px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#FCFBFF;
}

.event-show-grid small{
  color:var(--primary);
  font-weight:900;
  text-transform:uppercase;
}

.event-show-grid strong{
  color:var(--dark2);
}

.event-show-grid span{
  color:var(--muted);
}

.guest-response-card{
  display:grid;
  gap:3px;
  margin-top:12px;
  padding:12px 13px;
  border-radius:14px;
  border:1px solid var(--line);
  background:#fff;
}

.event-show-grid .guest-response-card{
  margin-top:0;
}

.event-summary-steps>div{position:relative;display:flex;align-items:center;gap:8px;min-height:58px;padding:10px 12px;border-right:1px solid var(--line);color:var(--muted);font-weight:850;font-size:.8rem}.event-summary-steps>div:last-child{border-right:0}.event-summary-steps>div>i{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#f5f3fa;color:#827a91}.event-summary-steps>div b{margin-left:auto;color:#13a873}.event-summary-steps>div.is-done{background:#effcf5;color:#0d9b67}.event-summary-steps>div.is-done>i{background:#16b978;color:#fff}.event-summary-steps>div.is-current{background:linear-gradient(135deg,#923dff,#ef38a7);color:#fff}.event-summary-steps>div.is-current>i{background:rgba(255,255,255,.2);color:#fff}body.event-detail-open{overflow:hidden}.event-detail-dialog[hidden]{display:none}.event-detail-dialog{position:fixed;inset:0;z-index:1950;display:grid;place-items:center;padding:18px}.event-detail-backdrop{position:absolute;inset:0;background:rgba(12,10,31,.72);backdrop-filter:blur(5px)}.event-detail-panel{position:relative;width:min(900px,100%);max-height:min(780px,92dvh);display:grid;grid-template-rows:auto minmax(0,1fr);border-radius:16px;background:#fff;box-shadow:0 34px 100px rgba(7,5,25,.35);overflow:hidden}.event-detail-panel header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 20px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#fff,#f7f3ff)}.event-detail-panel header h3{margin:3px 0 4px;font-size:1.35rem}.event-detail-panel header p{margin:0;color:var(--muted);font-size:.86rem}.event-detail-panel header button{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:#fff;cursor:pointer}.event-detail-content{min-height:0;padding:18px 20px;overflow:auto}.event-detail-list{display:grid;gap:8px}.event-detail-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fbfaff}.event-detail-list article>div{display:flex;align-items:center;gap:10px;min-width:0}.event-detail-list i{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#f0e9ff;color:var(--primary)}.event-detail-list span{display:grid;gap:3px;min-width:0}.event-detail-list small{overflow:hidden;color:var(--muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.event-detail-list b{white-space:nowrap}.event-detail-total,.event-detail-status{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding:13px;border-radius:12px}.event-detail-total{background:#f2ecff}.event-detail-total span,.event-detail-status span{color:var(--muted);font-weight:800;font-size:.78rem}.event-detail-total strong{font-size:1.2rem}.event-detail-status{justify-content:flex-start;background:#effcf5}.event-detail-status i{color:#11a96c}.event-detail-status strong{margin-left:auto}.event-detail-empty{display:grid;place-items:center;gap:7px;min-height:220px;text-align:center;color:var(--muted)}.event-detail-empty i{font-size:2rem;color:var(--primary)}.event-detail-empty strong{color:var(--dark2)}.event-guest-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.event-guest-detail-grid article{display:grid;gap:10px;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fbfaff}.event-guest-detail-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center}.event-guest-detail-head>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#eee8ff;color:var(--primary)}.event-guest-detail-head>div{display:grid;gap:2px;min-width:0}.event-guest-detail-head small{overflow:hidden;color:var(--muted);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.event-guest-detail-meta{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding-top:9px;border-top:1px solid #eeeaf5}.event-guest-detail-meta span{color:var(--muted);font-size:.7rem}.event-guest-detail-meta i{color:var(--primary)}.event-guest-detail-grid footer{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:.74rem}.event-guest-detail-grid footer strong{color:#0f9e6a}
.event-summary-invitation-details{display:grid;gap:16px;padding:17px;border:1px solid #ded3f6;border-radius:16px;background:linear-gradient(125deg,rgba(255,255,255,.96),rgba(249,246,255,.9));box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 12px 28px rgba(59,35,111,.06)}.event-summary-invitation-details.has-image{grid-template-columns:190px minmax(0,1fr)}.event-summary-invitation-image{aspect-ratio:16/10;border-radius:12px;overflow:hidden;background:#eeeaf5;box-shadow:0 12px 24px rgba(41,27,84,.14)}.event-summary-invitation-image img{display:block;width:100%;height:100%;object-fit:cover}.event-summary-invitation-copy h3{margin:4px 0 6px;color:var(--dark2);font-size:1.18rem;line-height:1.2}.event-summary-invitation-copy>p{margin:0;color:var(--muted);line-height:1.5}.event-summary-invitation-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.event-summary-invitation-meta span{padding:7px 10px;border:1px solid #e7e0f6;border-radius:999px;background:#fff;color:var(--muted);font-size:.71rem;box-shadow:0 4px 10px rgba(55,34,102,.04)}.event-summary-invitation-meta i{color:var(--primary)}.event-summary-invitation-meta b{color:var(--dark2)}.event-summary-invitation-extra{display:flex;gap:8px;margin-top:11px;padding:11px;border-left:3px solid #43a9df;border-radius:10px;background:#f0faff;color:#506276;font-size:.78rem;line-height:1.45}.event-summary-invitation-extra i{color:#2584bd}.event-summary-invitation-link{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:7px;align-items:center;margin-top:11px;padding:10px 11px;border:1px solid #cdecdc;border-radius:10px;background:#f3fff8;color:#168857;font-size:.72rem}.event-summary-invitation-link strong{min-width:0;overflow:hidden;color:#0c7549;text-overflow:ellipsis;white-space:nowrap}
.event-option-summary-section{margin-bottom:16px}.event-option-summary-type{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 0 9px}.event-option-summary-type>span{color:var(--dark2);font-size:.82rem;font-weight:950}.event-option-summary-type>span i{color:var(--primary)}.event-option-summary-type small{padding:5px 8px;border-radius:999px;background:#f2edff;color:var(--primary);font-size:.66rem;font-weight:900}.event-option-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.event-option-summary-card{display:grid;align-content:start;gap:9px;min-height:220px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 10px 26px rgba(36,22,74,.05)}.event-option-summary-card.gift{border-top:3px solid #a049f5}.event-option-summary-card.fee{border-top:3px solid #23b7df}.event-option-summary-card.ticket{border-top:3px solid #f2a420}.event-option-guest-card{grid-template-rows:auto auto minmax(54px,1fr) auto auto;overflow:hidden;padding:0}.event-option-guest-card>.event-option-summary-head,.event-option-guest-card>.event-option-guest-copy,.event-option-guest-card>.event-option-summary-values,.event-option-guest-card>footer{margin-right:14px;margin-left:14px}.event-option-guest-card>.event-option-summary-head{margin-top:14px}.event-option-guest-media{width:100%;aspect-ratio:16/8;overflow:hidden;background:#f4f0fc}.event-option-guest-media img{display:block;width:100%;height:100%;object-fit:cover}.event-option-summary-head{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.67rem;font-weight:900;text-transform:uppercase}.event-option-summary-head>i{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#f2ecff;color:var(--primary);font-size:.85rem}.event-option-guest-copy{display:grid;align-content:start;gap:6px;min-height:54px}.event-option-summary-card h3{margin:0;color:var(--dark2);font-size:1rem;line-height:1.2}.event-option-summary-card p{display:-webkit-box;min-height:34px;margin:0;color:var(--muted);font-size:.72rem;line-height:1.35;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.event-option-summary-values{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:auto}.event-option-summary-values span{display:grid;gap:3px;padding:8px;border-radius:9px;background:#faf9fd;color:var(--muted);font-size:.64rem;font-weight:800}.event-option-summary-values strong{color:var(--dark2);font-size:.78rem}.event-option-summary-card footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:2px;padding-bottom:14px;color:var(--muted);font-size:.68rem}.event-option-summary-card footer .btn{min-height:32px;padding:6px 9px;font-size:.68rem}.event-option-detail-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:14px}.event-option-detail-stats span{display:grid;gap:4px;padding:10px;border-radius:10px;background:#f8f6fc;color:var(--muted);font-size:.67rem;font-weight:850}.event-option-detail-stats strong{color:var(--dark2);font-size:.88rem}.event-option-detail-payment{display:grid!important;justify-items:end;gap:5px}.event-option-detail-payment .state-badge{font-size:.62rem}

.event-summary-hero{display:grid;gap:22px;padding:26px;margin-bottom:18px;border:1px solid #e4dcf7;border-radius:18px;background:linear-gradient(135deg,#fff 0%,#f8f4ff 58%,#f0fbf7 100%);box-shadow:0 18px 42px rgba(35,22,72,.08)}.event-summary-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.event-summary-hero h2{margin:4px 0 7px;font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.05}.event-summary-hero p{margin:0;color:var(--muted)}.event-summary-hero p span{padding:0 4px}.event-summary-statuses,.event-summary-actions{display:flex;flex-wrap:wrap;gap:8px}.event-summary-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.event-summary-facts article{display:grid;grid-template-columns:auto 1fr;gap:2px 9px;align-items:center;min-width:0;padding:13px;border:1px solid rgba(137,104,218,.18);border-radius:12px;background:rgba(255,255,255,.82)}.event-summary-facts i{grid-row:span 2;display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#f1eaff;color:var(--primary);font-size:1rem}.event-summary-facts span{color:var(--muted);font-size:.66rem;font-weight:900;text-transform:uppercase}.event-summary-facts strong{overflow:hidden;color:var(--dark2);font-size:.8rem;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.event-summary-panel{margin-bottom:16px}.event-summary-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid var(--line);border-radius:12px}.event-summary-steps a{position:relative;display:flex;align-items:center;gap:8px;min-height:58px;padding:10px 12px;border-right:1px solid var(--line);color:var(--muted);font-weight:850;font-size:.8rem}.event-summary-steps a:last-child{border-right:0}.event-summary-steps a>i{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#f5f3fa;color:#827a91}.event-summary-steps a b{margin-left:auto;color:#13a873}.event-summary-steps a.is-done{background:#effcf5;color:#0d9b67}.event-summary-steps a.is-done>i{background:#16b978;color:#fff}.event-summary-steps a.is-current{background:linear-gradient(135deg,#923dff,#ef38a7);color:#fff}.event-summary-steps a.is-current>i{background:rgba(255,255,255,.2);color:#fff}.event-summary-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}.summary-metric{display:grid;gap:3px;min-height:116px;padding:15px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 10px 26px rgba(36,22,74,.05)}.summary-metric span{font-size:.68rem;font-weight:900;text-transform:uppercase;color:var(--muted)}.summary-metric strong{font-size:1.6rem;color:var(--dark2)}.summary-metric small{color:var(--muted);font-size:.7rem}.summary-metric.confirmed{border-color:#b8edce;background:#f4fff8}.summary-metric.confirmed strong{color:#119c68}.summary-metric.maybe{border-color:#ffe0a5;background:#fffaf0}.summary-metric.maybe strong{color:#c68400}.summary-metric.pending{border-color:#ded8eb;background:#fbfaff}.summary-metric.declined{border-color:#ffc9d3;background:#fff6f8}.summary-metric.declined strong{color:#db3058}.event-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.event-summary-card{display:grid;align-content:start;gap:8px;margin:0}.event-summary-card .section-head{margin:0}.event-summary-card .section-head>i{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#f1eaff;color:var(--primary);font-size:1.15rem}.event-summary-inline{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #f0edf6;color:var(--muted);font-size:.78rem}.event-summary-inline strong{color:var(--dark2);text-align:right}.event-summary-inline.total{margin-bottom:5px;border-bottom:0}.event-summary-card .btn{justify-self:start;margin-top:4px}.event-guest-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:16px}.event-guest-summary h2{margin:4px 0}.event-guest-summary p{margin:0;color:var(--muted)}.event-guest-summary .attendance-actions{grid-column:1/-1}.event-summary-orders{margin-bottom:16px}
.attendance-summary-card .section-head>i{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#f1eaff;color:var(--primary);font-size:1.15rem}.attendance-summary-card .event-summary-metrics{margin-bottom:0}
.revenue-stats-card .section-head>i{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#eaf2ff;color:#2b6cb0;font-size:1.15rem}.revenue-stats-card .revenue-grid{margin:0}

.guest-response-card small{
  color:inherit;
  font-size:.68rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.guest-response-card span{
  color:inherit;
  opacity:.78;
  font-size:.84rem;
}

.guest-response-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  max-width:100%;
  min-height:30px;
  padding:7px 11px;
  border-radius:999px;
  background:#fff;
  border:1px solid currentColor;
  color:inherit!important;
  opacity:1!important;
  font-size:.82rem!important;
  font-weight:900;
}

.guest-response-card.attendance-confirmed{
  background:#EAF8F0;
  color:var(--success);
  border-color:#BFEBD2;
}

.guest-response-card.attendance-maybe{
  background:#FFF7E8;
  color:#B7791F;
  border-color:#F2D28A;
}

.guest-response-card.attendance-declined{
  background:#FFF0F3;
  color:var(--danger);
  border-color:#F4B8C7;
}

.guest-response-card.attendance-pending{
  background:#fff;
  color:var(--muted);
  border-color:#DAD6E7;
}

.attendance-actions{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}

.attendance-pills{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}

.attendance-pills.compact{
  margin-top:12px;
}

.attendance-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:34px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid var(--line);
  background:#fff;
  color:var(--muted);
  font-weight:900;
  text-decoration:none;
  transition:.18s ease;
}

.attendance-pill:hover,
.attendance-pill.is-active{
  transform:translateY(-1px);
  box-shadow:0 12px 24px rgba(20,20,45,.08);
}

.attendance-pill strong{
  margin:0;
  font-size:.95rem;
  color:inherit;
}

.attendance-pill span{
  color:inherit;
  font-size:.74rem;
}

.attendance-pill.confirmed{
  background:#EAF8F0;
  color:var(--success);
  border-color:#BFEBD2;
}

.attendance-pill.maybe{
  background:#FFF7E8;
  color:#B7791F;
  border-color:#F2D28A;
}

.attendance-pill.declined{
  background:#FFF0F3;
  color:var(--danger);
  border-color:#F4B8C7;
}

.attendance-pill.pending{
  background:#fff;
  color:var(--muted);
  border-color:#DAD6E7;
}

.attendance-pill.all{
  background:#F3ECFF;
  color:var(--primary);
  border-color:#DED0FF;
}

.guest-board{
  max-width:1120px;
}

.guest-summary{
  margin-bottom:18px;
}

.guest-summary .attendance-pill{
  min-height:44px;
  padding:10px 13px;
}

.guest-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.guest-card{
  padding:15px;
  border:1px solid var(--line);
  border-radius:18px;
  background:linear-gradient(180deg,#fff 0%,#FCFBFF 100%);
}

.guest-card-main{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}

.guest-identity{
  min-width:0;
}

.guest-identity strong{
  display:block;
  color:var(--dark2);
  font-size:1rem;
  word-break:break-word;
}

.guest-identity span{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:.86rem;
  font-weight:700;
  overflow-wrap:anywhere;
}

.guest-card-actions{
  display:flex;
  gap:8px;
  justify-content:flex-end;
  align-items:center;
  flex:0 0 auto;
}

.guest-details{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid var(--line);
}

.guest-details[hidden]{
  display:none;
}

.guest-details div{
  min-width:0;
  padding:10px;
  border:1px solid #EEEAF8;
  border-radius:12px;
  background:#fff;
}

.guest-details small{
  display:block;
  margin-bottom:5px;
  color:var(--primary);
  font-size:.68rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.guest-details strong{
  color:var(--dark2);
  font-size:.86rem;
  overflow-wrap:anywhere;
}

.event-card-top{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
  justify-content:flex-end;
  margin-bottom:10px;
}

.state-badge{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:6px 10px;
  border-radius:999px;
  font-size:.76rem;
  font-weight:900;
  border:1px solid #E4E0EE;
  background:#F8F7FC;
  color:var(--muted);
}

.role-host,.role-co_host{
  background:#F3ECFF;
  color:var(--primary);
  border-color:#DED0FF;
}

.role-guest{
  background:#EAF8F0;
  color:var(--success);
  border-color:#BFEBD2;
}

.status-draft,.attendance-pending,.payment-pending{
  background:#FFF7E8;
  color:#B7791F;
  border-color:#F2D28A;
}

.status-published,.status-active,.attendance-confirmed,.payment-paid{
  background:#EAF8F0;
  color:var(--success);
  border-color:#BFEBD2;
}

.status-finished,.status-archived,.payment-not_required{
  background:#EDF5FF;
  color:#2B6CB0;
  border-color:#B9D8FF;
}

.status-blocked,.status-deleted,.attendance-declined,.payment-failed{
  background:#FFF0F3;
  color:var(--danger);
  border-color:#F4B8C7;
}

.attendance-maybe,.payment-partial{
  background:#F6F2FF;
  color:var(--primary);
  border-color:#DCCEFF;
}

.micro-timeline{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:6px;
  margin-top:12px;
  max-width:520px;
}

.micro-step{
  position:relative;
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  padding:7px 8px;
  border-radius:999px;
  border:1px solid #E4E0EE;
  background:#F1EFF7;
  color:var(--muted);
  font-weight:900;
  text-decoration:none;
  transition:.18s ease;
}

.micro-step:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(20,20,45,.08);
}

.micro-step span{
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#fff;
  border:1px solid #DED9EF;
  flex:0 0 auto;
  color:var(--muted);
  font-size:.75rem;
}

.micro-step small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.72rem;
}

.micro-step.is-current{
  background:#FFF7E8;
  color:#B7791F;
  border-color:#F2D28A;
}

.micro-step.is-current span{
  border-color:#F6D28B;
  background:#FFE6A8;
  color:#B7791F;
}

.micro-step.is-done{
  background:#EAF8F0;
  color:var(--success);
  border-color:#BFEBD2;
}

.micro-step.is-done span{
  border-color:transparent;
  background:var(--success);
  color:#fff;
}

.form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.start-event-form{
  max-width:900px;
}

.format-choice-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.format-choice{
  position:relative;
  cursor:pointer;
}

.format-choice input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.format-choice > span{
  min-height:112px;
  position:relative;
  display:flex;
  align-items:center;
  gap:5px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  transition:.16s ease;
}

.format-choice-main{
  display:grid;
  gap:5px;
  padding-right:30px;
}

.format-choice-main > i{
  color:var(--primary);
  font-size:1.25rem;
}

.format-choice strong{
  color:var(--dark2);
}

.format-choice small{
  color:var(--muted);
  font-weight:700;
}

.format-choice input:checked + span{
  border-color:var(--primary);
  background:#F6F1FF;
  box-shadow:0 10px 24px rgba(124,60,255,.12);
}

.format-info{
  position:absolute;
  top:12px;
  right:12px;
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border:1px solid rgba(124,60,255,.18);
  border-radius:999px;
  background:#fff;
  color:var(--primary);
  cursor:help;
  outline:0;
  z-index:3;
}

.format-info > i{
  font-size:1rem;
}

.format-info em{
  position:absolute;
  z-index:30;
  right:0;
  top:36px;
  width:min(260px, calc(100vw - 44px));
  padding:12px 14px;
  border:1px solid rgba(124,60,255,.16);
  border-radius:10px;
  background:#fff;
  box-shadow:0 16px 38px rgba(22,18,54,.18);
  color:#55536A;
  font-size:.78rem;
  font-style:normal;
  font-weight:800;
  line-height:1.4;
  opacity:0;
  visibility:hidden;
  transform:translateY(-4px);
  transition:.15s ease;
  pointer-events:none;
}

.format-info em::before{
  content:"";
  position:absolute;
  top:-7px;
  right:10px;
  width:12px;
  height:12px;
  background:#fff;
  border-left:1px solid rgba(124,60,255,.16);
  border-top:1px solid rgba(124,60,255,.16);
  transform:rotate(45deg);
}

.format-info:hover,
.format-info:focus{
  background:var(--primary);
  color:#fff;
}

.format-info:hover em,
.format-info:focus em{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.compact-flow-note{
  display:flex;
  align-items:center;
  gap:10px;
}

.compact-flow-note i{
  color:var(--secondary);
}

.store-explainer{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#F8F7FC;
}

.store-explainer div{
  display:flex;
  align-items:flex-start;
  gap:9px;
  color:var(--muted);
  font-size:.84rem;
  line-height:1.45;
}

.store-explainer i{
  color:var(--primary);
  font-size:1rem;
}

.store-explainer strong{
  color:var(--dark2);
}

.store-toolbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) 220px auto;
  gap:10px;
  align-items:center;
}

.store-cart-pill{
  min-height:46px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:10px 13px;
  border-radius:999px;
  background:#EAF8F0;
  color:var(--success);
  border:1px solid #BFEBD2;
  font-size:.78rem;
  font-weight:800;
}

.store-product-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.store-product-card{
  min-height:220px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:9px;
  padding:15px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  transition:.16s ease;
}

.store-product-card.is-selected{
  border-color:#BFEBD2;
  background:#F5FFF8;
  box-shadow:0 12px 26px rgba(22,167,101,.1);
}

.store-product-top,
.store-product-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.store-product-top > span:first-child{
  color:var(--primary);
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
}

.store-selected-check{
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  border-radius:7px;
  background:#fff;
  color:transparent;
}

.store-product-card-actions{
  display:flex;
  align-items:center;
  gap:6px;
  flex:0 0 auto;
}

.store-product-card.is-selected .store-selected-check{
  border-color:var(--success);
  background:var(--success);
  color:#fff;
}

.store-product-card h3{
  margin:0 0 7px;
  color:var(--dark2);
  font-size:.88rem;
  line-height:1.22;
}

.store-product-card p{
  margin:0;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.45;
}

.store-product-bottom > strong{
  color:var(--dark2);
}

.quantity-control{
  display:grid;
  grid-template-columns:32px 70px 32px;
  align-items:center;
  border:1px solid var(--line);
  border-radius:10px;
  overflow:hidden;
  background:#fff;
}

.quantity-control button{
  height:34px;
  border:0;
  background:#F8F7FC;
  color:var(--primary);
  cursor:pointer;
}

.quantity-control button span{display:none}

.quantity-control input[type="number"]{
  width:70px;
  min-height:34px;
  height:34px;
  padding:4px;
  border:0;
  border-radius:0;
  text-align:center;
  appearance:textfield;
}

.store-product-delete{
  display:none;
  flex:0 0 auto;
  width:28px;
  height:28px;
  border:1px solid #FFD2D8;
  border-radius:8px;
  background:#FFF2F4;
  color:#D92E49;
  cursor:pointer;
}
.store-product-card.is-selected .store-product-delete{display:grid;place-items:center}
.store-product-delete:hover{background:#D92E49;color:#fff}

.store-entry-panel{
  display:grid;
  grid-template-columns:minmax(220px,auto) minmax(0,1fr) auto;
  align-items:center;
  gap:22px;
  padding:24px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#F8F7FC;
}
.delivery-location-foot .delivery-save{margin-left:auto;min-height:34px;padding:8px 11px;font-size:.74rem;white-space:nowrap}
.delivery-location-tools{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;width:max-content;max-width:100%;margin:10px 0 0 auto}.delivery-location-tools[hidden],.delivery-location-tools.is-hidden{display:none!important}.delivery-clear{min-height:36px;padding:8px 10px;color:#C2264C!important;border-color:#FFC9D4!important;font-size:.76rem}.delivery-copy-feedback{display:flex;align-items:flex-start;gap:8px;margin:10px 0 0;padding:9px 10px;border:1px solid #F2B6B6;border-radius:8px;background:#FFF4F4;color:#C2263D;font-size:.74rem;font-weight:750;line-height:1.35}.delivery-copy-feedback[hidden]{display:none}.delivery-copy-feedback i{flex:0 0 auto;margin-top:1px;color:#E0223D;font-size:1rem}
.delivery-shipping-quote{display:flex;align-items:center;gap:8px;margin:10px 0 0;padding:9px 11px;border:1px solid #d7c7ff;border-radius:9px;background:#f7f3ff;color:#5d32ba;font-size:.78rem}.delivery-shipping-quote[hidden]{display:none}.delivery-shipping-quote i{font-size:1rem}
.checkout-edit-delivery{width:max-content;max-width:100%;margin-top:12px}
.delivery-location-card{margin-bottom:14px;padding:20px;border:1px solid #DDD5FF;border-radius:8px;background:linear-gradient(135deg,#FCFAFF,#F4F1FF);box-shadow:0 12px 30px rgba(66,42,130,.06)}
.store-delivery-modal{position:fixed!important;z-index:2400;inset:0!important;display:grid!important;place-items:center;width:100vw!important;max-width:none!important;height:100dvh!important;margin:0!important;padding:20px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.store-delivery-modal[hidden]{display:none!important}.store-delivery-backdrop{position:absolute;inset:0;background:rgba(13,9,34,.72);backdrop-filter:blur(7px)}.store-delivery-panel{position:relative;width:calc(100vw - 40px);height:calc(100dvh - 40px);max-height:calc(100dvh - 40px);padding:clamp(24px,4vw,52px);border:1px solid #DDD2FA;border-radius:20px;background:linear-gradient(145deg,#FFF,#F7F3FF);box-shadow:0 32px 90px rgba(10,6,30,.34);overflow:auto}.store-delivery-close{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;border:1px solid #D8CCF5;border-radius:50%;background:#FFF;color:var(--primary);cursor:pointer;box-shadow:0 8px 20px rgba(65,38,124,.1)}.store-delivery-actions{display:flex;justify-content:flex-end;margin-top:16px}.store-delivery-actions .btn{min-height:44px}body.store-delivery-modal-open{overflow:hidden}
.delivery-location-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:15px}.delivery-location-head h3{margin:4px 0;font-size:1.1rem}.delivery-location-head p{margin:0;color:var(--muted);font-size:.84rem}.delivery-fill-event{flex:0 0 auto;min-height:36px;padding:8px 11px;font-size:.76rem}
.delivery-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.delivery-method-choice{margin:0}.delivery-method-choice input{position:absolute;opacity:0;pointer-events:none}.delivery-method-choice span{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:9px;align-items:center;min-height:72px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}.delivery-method-choice i{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#F1EDFF;color:var(--primary);font-size:1rem}.delivery-method-choice b{font-size:.84rem}.delivery-method-choice small{color:var(--muted);font-size:.71rem;line-height:1.3}.delivery-method-choice input:checked+span{border-color:var(--primary);box-shadow:0 0 0 3px rgba(124,61,255,.12);background:#FBF9FF}.delivery-method-choice input:checked+span i{background:linear-gradient(135deg,var(--primary),var(--pink));color:#fff}
.delivery-address-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:13px}.delivery-address-fields[hidden]{display:none}.delivery-address-fields label{display:grid;gap:5px;margin:0;color:var(--dark2);font-size:.72rem;font-weight:900}.delivery-address-fields input,.delivery-address-fields select{min-width:0;min-height:39px;padding:8px 10px;font-size:.8rem}.delivery-address-fields .delivery-note{grid-column:span 2}.delivery-location-foot{display:flex;align-items:center;gap:7px;margin-top:12px;color:var(--muted);font-size:.72rem;line-height:1.35}.delivery-location-foot i{color:#17A96B;font-size:1rem}.delivery-coverage-notice{color:#D92E49;font-weight:900}.delivery-coverage-notice i{color:#D92E49}

.delivery-method-choice input:checked + span i{
  border:1px solid #9D75FF;
  background:#E9E0FF;
  color:#6F2EFF;
  box-shadow:0 5px 14px rgba(124,61,255,.24);
  font-size:1.08rem;
}

/* Estructura estable: la imagen conserva la misma posicion en todas las tarjetas. */
.store-product-top + .store-product-media{margin-top:0}
.store-product-card > .store-product-bottom{margin-top:auto}
.profile-page-topbar h1{margin-top:0}

.gift-partial-toggle{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 28px;align-items:center;gap:11px;margin:5px 0 13px;padding:12px;border:1px solid #E2DAFF;border-radius:13px;background:linear-gradient(135deg,#FCFAFF 0%,#F7F3FF 100%);box-shadow:0 8px 22px rgba(72,42,145,.07);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.gift-partial-toggle:hover{border-color:#BEA7FF;box-shadow:0 11px 27px rgba(91,50,190,.12);transform:translateY(-1px)}.gift-partial-toggle>input{position:absolute;opacity:0;pointer-events:none}.gift-partial-toggle>span{display:grid;gap:4px;min-width:0}.gift-partial-toggle>span>strong{display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:var(--dark2);font-size:.78rem}.gift-partial-toggle strong em{padding:3px 7px;border-radius:999px;background:#EDE5FF;color:#7134E8;font-size:.55rem;font-style:normal;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.gift-partial-toggle small{color:var(--muted);font-size:.67rem;line-height:1.35}.gift-partial-toggle>b{display:grid;place-items:center;width:27px;height:27px;border:1px solid #D8CEF3;border-radius:50%;background:#fff;color:transparent;font-size:.8rem;transition:.2s ease}.gift-partial-toggle:has(input:checked){border-color:#8C55FF;background:linear-gradient(135deg,#F5EFFF 0%,#FFF4FB 100%);box-shadow:0 0 0 3px rgba(124,61,255,.1),0 13px 30px rgba(91,50,190,.15)}.gift-partial-toggle:has(input:checked)>b{border-color:#7C3DFF;background:#7C3DFF;color:#fff;box-shadow:0 5px 12px rgba(124,61,255,.24)}
.gift-partial-info{display:grid;place-items:center;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:#EEE8FF;color:#7C3DFF;cursor:pointer}.gift-partial-info:hover,.gift-partial-info[aria-expanded="true"]{background:#7C3DFF;color:#fff}.gift-partial-toggle .gift-partial-info-cloud{position:absolute;z-index:12;right:38px;top:47px;display:block;width:min(245px,calc(100% - 58px));padding:12px 34px 12px 12px;border:1px solid #D8C9FF;border-radius:10px;background:#fff;color:#554D6E;box-shadow:0 12px 28px rgba(48,28,95,.18);font-size:.68rem;font-weight:650;line-height:1.4}.gift-partial-toggle .gift-partial-info-cloud[hidden]{display:none}.gift-partial-info-cloud:before{content:"";position:absolute;right:18px;top:-6px;width:10px;height:10px;border-top:1px solid #D8C9FF;border-left:1px solid #D8C9FF;background:#fff;transform:rotate(45deg)}.gift-partial-info-cloud>[data-gift-partial-info-close]{position:absolute;z-index:2;top:6px;right:6px;display:grid;place-items:center;width:23px;height:23px;padding:0;border:1px solid #dfd2ff;border-radius:50%;background:#f4efff;color:#7139df;cursor:pointer}.gift-partial-info-cloud>[data-gift-partial-info-close]:hover{background:#7139df;color:#fff}
.gift-commercial-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,1fr);align-items:end;gap:12px;margin-bottom:13px}.gift-commercial-row .compact-fields{margin:0}.gift-commercial-row .gift-partial-toggle{min-height:64px;margin:0}@media(max-width:700px){.gift-commercial-row{grid-template-columns:1fr;align-items:stretch}.gift-commercial-row .gift-partial-toggle{min-height:0}}

.store-entry-launch{display:grid;gap:10px;align-content:center}
.store-entry-copy h3{margin:3px 0 6px;font-size:1.25rem}
.store-date-warning{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;margin-bottom:10px;padding:10px 12px;border:1px solid #ffc4ce;border-radius:11px;background:#fff5f6;color:#ba2746}.store-date-warning>i{font-size:1.15rem;color:#e52f51}.store-date-warning strong{display:block;font-size:.78rem}.store-date-warning p{margin:2px 0 0!important;color:#a63b52!important;font-size:.72rem;line-height:1.35}.store-date-warning .btn{min-height:32px;padding:6px 9px;border-color:#f3b9c5;color:#bd2d4a;font-size:.68rem;white-space:nowrap}.store-entry-delivery{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;padding:10px 0}.store-entry-delivery>i{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#f0eaff;color:var(--primary)}.store-entry-delivery span{display:block;color:var(--muted);font-size:.65rem;font-weight:800;text-transform:uppercase}.store-entry-delivery strong{display:block;overflow:hidden;color:#382758;font-size:.75rem;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.store-entry-delivery button{grid-column:2;width:max-content;max-width:100%;padding:0;border:0;background:transparent;color:var(--primary);font-size:.72rem;font-weight:800;cursor:pointer;text-align:left}@media(max-width:700px){.store-date-warning{grid-template-columns:auto minmax(0,1fr)}.store-date-warning .btn{grid-column:2;width:max-content}.store-entry-delivery strong{white-space:normal}}
.store-entry-copy p{margin:0;color:var(--muted)}
.store-entry-status{display:grid;gap:8px}
.store-entry-status span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:.76rem;font-weight:800}
.store-entry-status i{color:var(--primary)}
.store-open-button{white-space:nowrap;width:100%}
.store-entry-side{display:flex;align-items:center;gap:16px}
.store-entry-total{text-align:right;white-space:nowrap}
.store-entry-total span{display:block;color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}
.store-entry-total strong{display:block;margin-top:3px;color:var(--dark2);font-size:1.35rem}
.store-no-coverage-panel{
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  border-color:#FFD1D9;
  background:
    radial-gradient(circle at top right, rgba(124,61,255,.10), transparent 34%),
    linear-gradient(135deg,#FFF7F9 0%,#fff 58%,#F7F2FF 100%);
}
.store-no-coverage-panel .store-entry-icon{
  width:64px;
  height:64px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:linear-gradient(135deg,#FF3C8E,#7C3DFF);
  color:#fff;
  font-size:1.65rem;
  box-shadow:0 18px 36px rgba(255,60,142,.20);
}
.store-no-coverage-panel h3{margin-top:4px;color:var(--dark2);font-size:1.42rem}
.store-no-coverage-copy{display:grid;gap:10px}
.store-no-coverage-copy p{max-width:720px;line-height:1.55}
.store-no-coverage-panel .store-entry-status{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.store-no-coverage-panel .store-entry-status span{border-color:#FFD1D9;background:#fff;color:#6D5F79}
.store-no-coverage-panel .store-entry-status i{color:#FF3C8E}
.store-no-coverage-badge{
  min-width:150px;
  padding:15px 16px;
  border:1px solid rgba(255,60,142,.18);
  border-radius:16px;
  background:#fff;
  text-align:center;
  box-shadow:0 14px 34px rgba(22,18,54,.08);
}
.store-no-coverage-badge small{
  display:block;
  color:var(--muted);
  font-size:.68rem;
  font-weight:950;
  text-transform:uppercase;
}
.store-no-coverage-badge strong{
  display:block;
  margin-top:4px;
  color:#D92D55;
  font-size:1rem;
}

body.store-modal-open{overflow:hidden}
.store-modal[hidden]{display:none}
.store-modal{position:fixed;inset:0;z-index:1500;display:grid;place-items:center;padding:18px}
.store-modal-backdrop{position:absolute;inset:0;background:rgba(12,10,31,.72);backdrop-filter:blur(4px)}
.store-modal-panel{position:relative;width:min(1320px,100%);height:min(860px,calc(100vh - 36px));display:flex;flex-direction:column;overflow:hidden;border-radius:8px;background:#fff;box-shadow:0 30px 90px rgba(10,8,30,.32)}
.store-modal-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px 14px;border-bottom:1px solid var(--line)}
.store-modal-header h2{margin:2px 0 4px;font-size:1.28rem;line-height:1.12}.store-modal-header p{margin:0;color:var(--muted);font-size:.88rem}
.store-modal-header-side{display:flex;align-items:center;gap:14px;flex:0 0 auto}
.store-modal-close{flex:0 0 auto;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--dark2);cursor:pointer}

.store-modal-total{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:2px;
  min-width:124px;
}
.store-modal-total span{color:var(--muted);font-size:.76rem;font-weight:900;text-transform:uppercase}
.store-modal-total strong{color:var(--dark2);font-size:1.35rem}

.store-modal-tools{display:grid;grid-template-columns:minmax(260px,1.6fr) repeat(2,minmax(150px,1fr));gap:9px;padding:12px 20px;background:#F8F7FC;border-bottom:1px solid var(--line)}
.store-modal-tools label>span{display:block;margin-bottom:5px;color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}
.store-modal-tools select,.store-modal-tools input{min-height:42px}
.store-keyword-search{align-self:end}
.store-modal-results-head{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;color:var(--muted);font-size:.84rem}
.store-modal-results-head .store-cart-pill{min-height:36px}
.store-results-actions{display:flex;align-items:center;gap:9px}
.store-payment-stack{display:grid;gap:8px;justify-items:end}
.store-payment-pill{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:7px 11px;border:1px solid #BFEBD2;border-radius:999px;background:#F1FFF7;color:#087040;font-size:.74rem;font-weight:950;white-space:nowrap}
.store-payment-pill i{font-size:.92rem}
.store-payment-pill.is-blocked{border-color:#FFD1D9;background:#FFF1F5;color:#C0184A}
.store-payment-warning{margin:12px 0 0}
.store-register-card{display:grid;justify-items:end;gap:7px;max-width:260px;text-align:right}
.store-register-card span{display:inline-flex;align-items:center;gap:6px;color:var(--primary);font-size:.72rem;font-weight:950;text-transform:uppercase}
.store-register-card p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.35}
.store-register-card .btn{min-height:34px;padding:8px 13px;font-size:.78rem}
.store-cart-button{position:relative;isolation:isolate;cursor:pointer}
.store-cart-button .bi-chevron-right{margin-left:3px;transition:transform .18s ease}
.store-cart-button[aria-expanded="true"] .bi-chevron-right{transform:rotate(180deg)}
.store-cart-button.has-cart-energy{
  border-color:#43D694;
  background:#E9FFF4;
  color:#067443;
  animation:store-cart-soft-pulse 2.4s ease-in-out infinite;
}

@keyframes store-cart-soft-pulse{
  0%,100%{box-shadow:0 0 0 0 rgba(35,207,125,0);transform:scale(1)}
  50%{box-shadow:0 0 0 4px rgba(35,207,125,.12),0 5px 14px rgba(35,207,125,.14);transform:scale(1.012)}
}

@media(prefers-reduced-motion:reduce){
  .store-cart-button.has-cart-energy{animation:none;box-shadow:0 0 0 4px rgba(35,207,125,.14)}
}
.store-selected-list[hidden]{display:none}
.store-modal-body{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:14px;flex:1;min-height:0;padding:0 20px 16px;overflow:hidden}
.store-modal-body.has-open-cart{grid-template-columns:minmax(0,1fr) minmax(520px,600px)}
.store-catalog-pane{min-height:0;overflow:hidden}
.store-catalog-scroll{height:100%;min-height:0;overflow-y:auto;padding:0 2px 8px}
.store-selected-list{display:flex;flex-direction:column;min-height:0;margin:0;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 14px 35px rgba(20,18,50,.1)}
.store-selected-list-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 16px;border-bottom:1px solid var(--line)}
.store-cart-delivery-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 16px;border-bottom:1px solid var(--line);background:#fbf9ff}.store-cart-delivery-summary>i{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#f0eaff;color:var(--primary)}.store-cart-delivery-summary span{display:block;color:var(--muted);font-size:.65rem;font-weight:800;text-transform:uppercase}.store-cart-delivery-summary strong{display:block;overflow:hidden;color:#382758;font-size:.72rem;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.store-cart-delivery-summary button{border:0;background:transparent;color:var(--primary);font-size:.72rem;font-weight:800;cursor:pointer}
.store-selected-list-head h3{margin:2px 0 0;font-size:1rem}
.store-selected-list-head button{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#fff;cursor:pointer}
.store-register-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin:0 18px 12px;padding:10px 12px;border:1px solid #D9D0FF;border-radius:10px;background:#F8F6FF}
.store-register-inline strong{display:block;color:var(--dark2);font-size:.82rem}
.store-register-inline span{display:block;margin-top:2px;color:#D92E49;font-size:.73rem;font-weight:850;line-height:1.35}
.store-register-inline .btn{min-height:34px;padding:8px 12px;font-size:.76rem;white-space:nowrap}
.store-selected-table-wrap{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}
.store-selected-table{width:100%;border-collapse:collapse;table-layout:fixed}
.store-selected-table th,.store-selected-table td{padding:9px 8px;border-bottom:1px solid var(--line);text-align:left;font-size:.78rem;vertical-align:middle}
.store-selected-table th{position:sticky;top:0;background:#F8F7FC;color:var(--muted);font-size:.68rem;text-transform:uppercase;z-index:1}
.store-selected-table th:nth-child(1),.store-selected-table td:nth-child(1){width:98px;text-align:center}
.store-selected-table th:nth-child(2),.store-selected-table td:nth-child(2){width:auto;white-space:normal;overflow-wrap:anywhere;line-height:1.25}
.store-selected-table th:nth-child(3),.store-selected-table td:nth-child(3),.store-selected-table th:nth-child(4),.store-selected-table td:nth-child(4){width:74px;text-align:right}
.store-selected-table th:nth-child(5),.store-selected-table td:nth-child(5){width:76px;text-align:center}
.selected-quantity-control{display:grid;grid-template-columns:30px 42px 30px;justify-content:center;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}
.selected-quantity-control button{display:grid;place-items:center;min-width:30px;height:32px;padding:0;border:0;background:#F8F7FC;color:var(--primary);font-size:1rem;font-weight:950;line-height:1;cursor:pointer}
.quantity-control [data-quantity-plus] .bi,
.selected-quantity-control [data-selected-quantity-plus] .bi,
.detail-quantity-control [data-detail-quantity-plus] .bi,
.detail-quantity-control [data-checkout-detail-plus] .bi{display:none}
.quantity-control [data-quantity-plus] .quantity-symbol,
.selected-quantity-control [data-selected-quantity-plus] .quantity-symbol,
.detail-quantity-control [data-detail-quantity-plus] .quantity-symbol,
.detail-quantity-control [data-checkout-detail-plus] .quantity-symbol{display:inline-grid}
.detail-quantity-control [data-detail-quantity-plus],
.detail-quantity-control [data-checkout-detail-plus]{position:relative;color:#fff!important}
.detail-quantity-control [data-detail-quantity-plus] .quantity-symbol,
.detail-quantity-control [data-checkout-detail-plus] .quantity-symbol{display:none!important}
.detail-quantity-control [data-detail-quantity-plus]::after,
.detail-quantity-control [data-checkout-detail-plus]::after{content:"+";display:grid;place-items:center;color:#fff;font-size:1.35rem;font-weight:950;line-height:1}
.quantity-control [data-quantity-plus],
.selected-quantity-control [data-selected-quantity-plus]{position:relative}
.quantity-control [data-quantity-plus] .bi,
.quantity-control [data-quantity-plus] .quantity-symbol,
.quantity-control [data-quantity-plus] span:not(.quantity-symbol),
.selected-quantity-control [data-selected-quantity-plus] .bi,
.selected-quantity-control [data-selected-quantity-plus] .quantity-symbol{display:none!important}
.quantity-control [data-quantity-plus]::after{content:"+";display:grid;place-items:center;color:currentColor;font-size:1.12rem;font-weight:950;line-height:1}
.selected-quantity-control [data-selected-quantity-plus]::after{content:"";display:none}
.selected-quantity-control input{width:42px;min-height:32px;height:32px;padding:2px;border:0;border-radius:0;text-align:center;appearance:textfield}
.selected-quantity-control [data-selected-quantity-plus]{color:var(--primary)!important}
.selected-row-actions{display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}
.selected-detail-button{display:grid;place-items:center;width:32px;height:32px;border:1px solid #D9D0FF;border-radius:8px;background:#F8F6FF;color:var(--primary);cursor:pointer}
.selected-detail-button:hover{border-color:var(--primary);background:#F0EBFF}
.selected-product-delete{width:32px;height:32px;border:1px solid #FFD2D8;border-radius:8px;background:#FFF2F4;color:#D92E49;cursor:pointer}
.selected-product-delete:hover{background:#D92E49;color:#fff}
.store-selected-list-total{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:13px 16px;background:#F8F7FC}
.store-selected-list-total span{color:var(--muted);font-size:.74rem;font-weight:900;text-transform:uppercase}
.store-selected-list-total strong{font-size:1.08rem}
.store-modal-product-grid{min-height:0;overflow:visible;padding:0;align-content:start;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.store-service-grid{align-content:start;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));padding-bottom:8px}
.store-service-card{min-height:218px}
.store-service-card .service-slot-pills:empty{display:none}
.store-service-card .service-slots-open{min-width:112px;border:1px solid var(--line);background:#F8F7FC;color:var(--primary);box-shadow:none}
.store-service-card .service-slots-open:hover{border-color:var(--primary);background:#F2EEFF}
.store-modal-product-grid .store-product-card{min-height:218px}
.store-product-card[hidden]{display:none}
.store-product-tags{display:flex;align-items:center;flex-wrap:wrap;gap:5px}
.store-product-tags>span{color:var(--primary);font-size:.68rem;font-weight:900;text-transform:uppercase}
.store-product-tags small{padding:3px 6px;border-radius:5px;background:#F0EDFA;color:var(--muted);font-size:.65rem;font-weight:800}
.store-product-tags em{padding:3px 6px;border-radius:5px;background:#FFF3CC;color:#8B6500;font-size:.65rem;font-style:normal;font-weight:900}
.store-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 20px;border-top:1px solid var(--line);background:#fff}
.store-modal-footer-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto}
.store-mobile-cart-button{display:none}
.store-empty-cart{min-height:36px;padding:7px 12px;border:1px solid #F2A9B4;border-radius:999px;background:#FFF1F3;color:#C8233F;font-size:.75rem;font-weight:900;cursor:pointer}
.store-empty-cart:hover{border-color:#C8233F;background:#C8233F;color:#fff}
.store-empty-cart[hidden]{display:none}
.store-no-results{margin:20px 24px}

@media(max-width:900px){
  .store-modal-tools{grid-template-columns:1fr 1fr}
  .store-keyword-search{grid-column:1/-1}
  .store-modal-body,
  .store-modal-body.has-open-cart{grid-template-columns:1fr}
  .store-selected-list{position:absolute;left:18px;right:18px;bottom:16px;z-index:3;max-height:min(620px,calc(100% - 20px))}
  .store-entry-panel{grid-template-columns:minmax(210px,auto) minmax(0,1fr)}
  .store-no-coverage-panel{grid-template-columns:auto minmax(0,1fr)}
  .store-no-coverage-badge{grid-column:1/-1;text-align:left}
  .store-entry-side{grid-column:1/-1;justify-content:space-between;width:100%}
}

@media(max-width:600px){
  .delivery-location-tools{display:grid;grid-template-columns:1fr 1fr}.delivery-location-tools .btn{width:100%;padding-left:6px;padding-right:6px;font-size:.69rem}
  .delivery-location-foot{align-items:flex-start;flex-wrap:wrap}.delivery-location-foot .delivery-save{width:100%;margin-left:0}
  .delivery-location-card{padding:15px}.delivery-location-head{align-items:stretch;flex-direction:column;gap:10px}.delivery-fill-event{width:100%}.delivery-methods{grid-template-columns:1fr}.delivery-address-fields{grid-template-columns:1fr 1fr}.delivery-address-fields label:nth-child(3),.delivery-address-fields .delivery-note{grid-column:1/-1}.delivery-location-foot{align-items:flex-start}.store-delivery-modal{padding:0!important}.store-delivery-panel{width:100%;height:100dvh;max-height:none;padding:20px 16px calc(24px + env(safe-area-inset-bottom));border:0;border-radius:0}.store-delivery-panel .delivery-location-head{position:relative;padding-right:50px}.store-delivery-close{position:absolute;top:0;right:0}.store-delivery-actions{position:sticky;bottom:0;padding-top:12px;background:linear-gradient(180deg,rgba(248,245,255,0),#F8F5FF 30%)}.store-delivery-actions .btn{width:100%}
  .store-entry-panel{grid-template-columns:1fr;padding:18px}
  .store-no-coverage-panel{grid-template-columns:1fr;text-align:left}
  .store-no-coverage-panel .store-entry-icon{width:54px;height:54px;border-radius:16px;font-size:1.35rem}
  .store-no-coverage-panel h3{font-size:1.18rem}
  .store-no-coverage-panel .store-entry-status{display:grid}
  .store-no-coverage-badge{min-width:0;padding:12px 13px;text-align:left}
  .store-entry-side{display:grid;grid-template-columns:1fr;text-align:left}
  .store-entry-total{text-align:left}
  .store-modal{padding:0}
  .store-modal-panel{width:100%;height:100dvh;border-radius:0;overflow-y:auto}
  .store-modal-header{position:sticky;top:0;z-index:5;align-items:center;padding:9px 12px;background:#fff}.store-modal-header h2{margin:0;font-size:.98rem}
  .store-modal-header .kicker,.store-modal-header p{display:none}
  .store-modal-header-side{gap:8px}
  .store-modal-total{min-width:auto}.store-modal-total span{font-size:.62rem}.store-modal-total strong{font-size:1rem}
  .store-modal-close{width:38px;height:38px}
  .store-modal-tools{grid-template-columns:1fr 1fr;padding:8px 12px;gap:7px}
  .store-modal-tools select,.store-modal-tools input{min-height:38px;font-size:.82rem}
  .store-modal-tools label>span{display:none}
  .store-keyword-search{grid-column:1/-1}
  .store-modal-results-head{padding:7px 12px}
  .store-modal-results-head>span{display:none}
  .store-results-actions .store-cart-button{display:none}
  .store-modal-body{display:block;min-height:auto;overflow:visible;padding:0 12px 118px}
  .store-catalog-pane,.store-catalog-scroll{height:auto;overflow:visible}
  .store-selected-list{position:fixed;left:10px;right:10px;bottom:112px;z-index:12;max-height:calc(100dvh - 132px);border-radius:12px;box-shadow:0 -16px 50px rgba(10,8,30,.24)}
  .store-register-inline{grid-template-columns:1fr;margin:0 10px 10px}
  .store-register-inline .btn{width:100%;justify-content:center}
  .store-selected-table thead{display:none}
  .store-selected-table,.store-selected-table tbody,.store-selected-table tr,.store-selected-table td{display:block;width:100%!important}
  .store-selected-table tr{display:grid;grid-template-columns:1fr 1fr;padding:10px 14px;border-bottom:1px solid var(--line)}
  .store-selected-table td{display:flex;justify-content:space-between;gap:10px;padding:5px 0!important;border:0;text-align:right!important}
  .store-selected-table td:nth-child(2){grid-column:1/-1;text-align:left!important;font-weight:800}
  .store-selected-table td:nth-child(5){justify-content:flex-end}
  .store-selected-table td::before{content:attr(data-label);color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}
  .store-selected-table td:nth-child(2)::before{display:none}
  .store-modal-results-head{align-items:flex-start;gap:8px}
  .store-results-actions{align-items:stretch;flex-direction:column-reverse;gap:6px}
  .store-modal-product-grid{height:auto;overflow:visible;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 0 16px}
  .store-modal-product-grid .store-product-card{min-height:0;padding:10px;gap:9px}
  .store-product-top + .store-product-media{margin-top:0}
  .store-product-card h3{margin-bottom:4px;font-size:.76rem;line-height:1.2}
  .store-product-card p{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    min-height:32px;
    font-size:.72rem;
    line-height:1.3;
  }
  .store-product-tags{gap:4px}
  .store-product-tags>span,.store-product-tags small,.store-product-tags em{font-size:.56rem;padding:2px 5px}
  .store-product-top{align-items:flex-start;gap:6px}
  .store-selected-check{width:24px;height:24px;border-radius:7px}
  .store-product-delete{width:24px;height:24px}
  .store-product-bottom{align-items:stretch;gap:7px;flex-direction:column}
  .store-product-bottom>strong{font-size:.96rem}
  .store-service-card .service-slots-open{display:flex;align-items:center;justify-content:center;width:100%;min-height:34px;background:linear-gradient(135deg,var(--primary),var(--pink));color:#fff}
  .quantity-control{width:100%;grid-template-columns:32px minmax(34px,1fr) 32px;border-radius:9px}
  .quantity-control button{display:grid;place-items:center;height:34px;min-width:32px;padding:0;font-size:.82rem;font-weight:900}
  .quantity-control button[data-quantity-plus]{background:linear-gradient(135deg,var(--primary),var(--pink));color:#fff}
  .quantity-control button[data-quantity-plus] span:not(.quantity-symbol){display:none}
  .quantity-control input[type="number"]{width:100%;min-width:0;font-size:.86rem}
  .store-modal-footer{position:fixed;left:0;right:0;bottom:0;z-index:10;align-items:stretch;flex-direction:column;padding:9px 14px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -10px 30px rgba(20,14,45,.12)}
  .store-mobile-cart-button{display:flex;justify-content:center;width:100%;min-height:40px}
  .store-modal-footer-actions{display:grid;grid-template-columns:1fr 1.35fr;width:100%;margin-left:0}
  .store-modal-footer .btn{padding-left:10px;padding-right:10px}
  .store-empty-cart{width:100%}
}

.store-actions{
  justify-content:flex-start;
}

/* En la tienda del evento, primero se presenta el acceso a la tienda y luego
   la configuracion de entrega, conservando las acciones al final. */
.store-stage{
  display:flex;
  flex-direction:column;
}
.store-stage > *{
  order:1;
}
.store-stage > .delivery-location-card{
  order:2;
  margin-top:14px;
  margin-bottom:0;
}
.store-stage > .store-actions{
  order:3;
}


.final-event-details{
  margin-bottom:20px;
  overflow:visible;
}

.field-label-with-help{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}

.field-label-with-help label{
  margin:0;
}

.field-inline-help{
  position:relative;
  flex:0 0 auto;
}

.field-inline-help summary{
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:50%;
  background:#F1EDFF;
  color:var(--primary);
  cursor:pointer;
  list-style:none;
}

.field-inline-help summary::-webkit-details-marker{
  display:none;
}

.field-inline-help[open] summary{
  background:var(--primary);
  color:#fff;
}

.field-inline-help>div{
  position:absolute;
  right:0;
  top:31px;
  z-index:120;
  width:min(280px,calc(100vw - 42px));
  padding:12px;
  border:1px solid #D8CCF8;
  border-radius:8px;
  background:#fff;
  box-shadow:0 16px 42px rgba(22,18,54,.18);
}

.field-inline-help>div:before{
  content:"";
  position:absolute;
  right:7px;
  top:-7px;
  width:12px;
  height:12px;
  border-left:1px solid #D8CCF8;
  border-top:1px solid #D8CCF8;
  background:#fff;
  transform:rotate(45deg);
}

.field-inline-help strong{
  display:block;
  margin-bottom:5px;
  color:var(--dark2);
  font-size:.78rem;
}

.field-inline-help p{
  margin:0;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.45;
}

@media(max-width:700px){
  .field-inline-help>div{
    position:absolute;
    left:50%;
    right:auto;
    top:30px;
    width:min(260px,calc(100vw - 34px));
    transform:translateX(-50%);
    z-index:260;
  }
  .field-inline-help>div:before{
    left:50%;
    right:auto;
    transform:translateX(-50%) rotate(45deg);
  }
}

.final-context-pill{
  min-height:72px;
  display:grid;
  align-content:center;
  gap:4px;
  padding:13px 15px;
  border:1px solid #DED0FF;
  border-radius:14px;
  background:#F6F1FF;
}

.final-context-pill small{
  color:var(--primary);
  font-size:.7rem;
  font-weight:900;
  text-transform:uppercase;
}

.final-context-pill strong{
  color:var(--dark2);
}

.span-2{grid-column:span 2}

.flow-note{
  padding:16px;
  border-radius:16px;
  background:var(--soft);
  line-height:1.6;
  color:var(--muted);
}

.verification-link{
  max-width:100%;
  overflow:hidden;
}

.verification-link a{
  display:block;
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:break-word;
  color:var(--primary);
  font-weight:800;
}

.event-context{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:18px;
}

.event-context div{
  padding:15px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
}

.event-context small{
  display:block;
  color:var(--muted);
  font-weight:900;
  margin-bottom:5px;
}

.event-context strong{
  color:var(--dark2);
}

.checks-row{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.check-card{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:56px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  cursor:pointer;
}

.check-card input{
  width:18px;
  min-height:18px;
}

.check-card-with-help{position:relative;justify-content:space-between}
.check-card-with-help>label{display:flex;align-items:center;gap:10px;margin:0;cursor:pointer}
.check-info-help{position:relative;flex:0 0 auto}
.check-info-help summary{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#F1EDFF;color:var(--primary);cursor:pointer;list-style:none}
.check-info-help summary::-webkit-details-marker{display:none}
.check-info-help[open] summary{background:var(--primary);color:#fff}
.check-info-help>div{position:absolute;right:0;top:35px;z-index:25;width:min(320px,calc(100vw - 48px));padding:14px;border:1px solid #D8CCF8;border-radius:8px;background:#fff;box-shadow:0 14px 34px rgba(22,18,54,.16)}
.check-info-help>div:before{content:"";position:absolute;right:8px;top:-7px;width:12px;height:12px;border-left:1px solid #D8CCF8;border-top:1px solid #D8CCF8;background:#fff;transform:rotate(45deg)}
.check-info-help strong{display:block;margin-bottom:5px;color:var(--dark2);font-size:.78rem}
.check-info-help p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.45}

.stage-card{
  display:grid;
  gap:12px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:20px;
  background:#FCFBFF;
}

.section-head.compact{
  margin-bottom:0;
}

.section-head.compact h3{
  margin:8px 0 6px;
  font-size:1.25rem;
}

.section-head.compact p{
  margin:0;
}

.repeat-row{
  display:grid;
  grid-template-columns:1fr 160px 1fr;
  gap:10px;
}

.repeat-row.three{
  grid-template-columns:1fr 160px 180px;
}

.gift-card-grid,
.ticket-card-grid,
.potluck-card-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.guest-card-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.contact-import-note{
  margin:12px 0 16px;
  padding:13px 15px;
  border-radius:14px;
  font-weight:800;
  line-height:1.45;
}

.contact-import-note[hidden]{
  display:none;
}

.contact-import-note.success{
  background:#EAF8F0;
  color:var(--success);
  border:1px solid #BFEBD2;
}

.contact-import-note.warning{
  background:#FFF7E8;
  color:var(--warning);
  border:1px solid #F2D28A;
}

.contact-picker-open{
  overflow:hidden;
}

.contact-picker-backdrop{
  position:fixed;
  inset:0;
  z-index:100;
  display:grid;
  place-items:center;
  padding:22px;
  background:rgba(13,13,31,.62);
  backdrop-filter:blur(8px);
}

.contact-picker-backdrop[hidden]{
  display:none;
}

.contact-picker-dialog{
  width:min(720px,100%);
  max-height:min(780px,90vh);
  display:grid;
  grid-template-rows:auto auto minmax(150px,1fr) auto;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
  box-shadow:0 34px 90px rgba(0,0,0,.3);
}

.contact-picker-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:20px;
  border-bottom:1px solid var(--line);
}

.contact-picker-head h3{
  margin:6px 0 4px;
  color:var(--dark2);
  font-size:1.35rem;
}

.contact-picker-head p{
  margin:0;
  color:var(--muted);
  font-size:.86rem;
}

.contact-picker-head p strong{
  color:var(--primary);
}

.contact-picker-tools{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  padding:14px 20px;
  background:#F8F7FC;
  border-bottom:1px solid var(--line);
}

.contact-search{
  position:relative;
  display:block;
}

.contact-search i{
  position:absolute;
  top:50%;
  left:14px;
  z-index:1;
  color:var(--muted);
  transform:translateY(-50%);
}

.contact-search input{
  padding-left:40px;
}

.contact-picker-list{
  display:grid;
  align-content:start;
  gap:8px;
  padding:14px 20px;
  overflow:auto;
}

.contact-select-card{
  width:100%;
  min-width:0;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 28px;
  align-items:center;
  gap:12px;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  color:var(--text);
  font-family:inherit;
  text-align:left;
  cursor:pointer;
  transition:.16s ease;
}

.contact-select-card:hover{
  border-color:rgba(124,60,255,.35);
  background:#FCFBFF;
}

.contact-select-card.is-selected{
  border-color:#BFEBD2;
  background:#F2FFF6;
  box-shadow:0 8px 20px rgba(22,167,101,.08);
}

.contact-avatar{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#F3ECFF;
  color:var(--primary);
  font-size:.78rem;
  font-weight:900;
}

.contact-select-card.is-selected .contact-avatar{
  background:#DDF5E7;
  color:var(--success);
}

.contact-select-info{
  min-width:0;
  display:grid;
  gap:3px;
}

.contact-select-info strong,
.contact-select-info small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.contact-select-info strong{
  color:var(--dark2);
  font-size:.91rem;
}

.contact-select-info small{
  color:var(--muted);
  font-size:.78rem;
  font-weight:700;
}

.contact-select-check{
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  border:1px solid #DAD6E7;
  border-radius:8px;
  background:#fff;
  color:#fff;
  font-size:.85rem;
}

.contact-select-card.is-selected .contact-select-check{
  border-color:var(--success);
  background:var(--success);
}

.contact-picker-empty{
  margin:20px;
  padding:24px;
  border:1px dashed var(--line);
  border-radius:12px;
  color:var(--muted);
  font-weight:800;
  text-align:center;
}

.contact-picker-empty[hidden]{
  display:none;
}

.contact-picker-footer{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  padding:15px 20px;
  border-top:1px solid var(--line);
  background:#fff;
}

.contact-picker-footer .btn:disabled{
  opacity:.45;
  cursor:not-allowed;
  box-shadow:none;
}

.gift-option-card,
.ticket-option-card,
.potluck-option-card{
  display:grid;
  gap:11px;
  padding:18px;
  border:2px solid rgba(124,60,255,.18);
  border-radius:18px;
  background:#fff;
  box-shadow:0 18px 45px rgba(20,20,45,.1);
  position:relative;
  overflow:visible;
}

.guest-option-card{
  display:grid;
  gap:11px;
  padding:18px;
  border:2px solid rgba(255,63,164,.18);
  border-radius:18px;
  background:linear-gradient(180deg,#FFFFFF 0%,#FFF8FC 100%);
  box-shadow:0 18px 45px rgba(20,20,45,.1);
  position:relative;
  overflow:hidden;
}

.guest-option-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:5px;
  background:linear-gradient(135deg,#FF3FA4,#7C3CFF);
}

.gift-option-card::before,
.ticket-option-card::before,
.potluck-option-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:5px;
  background:var(--gradient);
}

.ticket-option-card{
  border-color:rgba(0,212,255,.24);
  background:linear-gradient(180deg,#FFFFFF 0%,#F7FCFF 100%);
}

.gift-option-card.is-empty-card [data-edit-gift],
.gift-option-card.is-empty-card [data-remove-gift],
.fee-option-card.is-empty-card [data-edit-fee],
.fee-option-card.is-empty-card [data-remove-fee],
.ticket-option-card.is-empty-card [data-edit-ticket],
.ticket-option-card.is-empty-card [data-remove-ticket]{
  display:none!important;
}

.ticket-option-card::before{
  background:linear-gradient(135deg,#00D4FF,#7C3CFF);
}

.potluck-option-card{
  border-color:rgba(22,167,101,.22);
  background:linear-gradient(180deg,#FFFFFF 0%,#F7FFF9 100%);
}

.potluck-option-card::before{
  background:linear-gradient(135deg,#16A765,#00D4FF);
}

.ticket-card-body{
  display:grid;
  gap:12px;
  padding:12px;
  border-radius:14px;
  background:#fff;
  border:1px solid rgba(0,212,255,.18);
}
.ticket-option-card>.gift-card-head{order:1}.ticket-option-card>.gift-card-empty-image,.ticket-option-card>.gift-card-image-strip{order:2}.ticket-option-card>.ticket-card-body{order:3;padding:0;border:0;background:transparent}.ticket-option-card>.gift-image-dialog{order:4}.ticket-option-card .gift-card-actions{flex-wrap:nowrap}

.card-number{
  display:inline-flex;
  width:26px;
  height:26px;
  align-items:center;
  justify-content:center;
  margin-right:8px;
  border-radius:999px;
  background:linear-gradient(135deg,#00D4FF,#7C3CFF);
  color:#fff;
  font-size:.78rem;
  font-weight:900;
}

.gift-card-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:nowrap;
}

.gift-card-head strong{
  color:var(--dark2);
  font-size:1rem;
  font-weight:900;
  padding-left:2px;
  display:inline-flex;
  align-items:center;
  white-space:nowrap;
}

.gift-card-actions{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}

.gift-images-button{display:inline-flex;align-items:center;gap:5px;background:#F1EDFF;color:var(--primary)}
.gift-images-button b{display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--primary);color:#fff;font-size:.62rem}
.contribution-preview-button{display:inline-flex;align-items:center;gap:5px;background:#EEF9FF;color:#1384CC}
.gift-card-actions .gift-toolbar-action{position:relative;display:grid;place-items:center;box-sizing:border-box;width:34px;min-width:34px;height:34px;min-height:34px;padding:0;border-radius:10px}.gift-card-actions .gift-images-button{border:2px solid #8B5CF6;background:#F1EDFF;color:#7438E8}.gift-card-actions .contribution-preview-button{border:2px solid #168FCA;background:#EAF8FF;color:#087DBD}.gift-card-actions .mini-edit.gift-toolbar-action{border:2px solid #3B82F6;background:#EDF7FF;color:#226FD4}.gift-card-actions .gift-toolbar-action:hover{transform:translateY(-1px);filter:saturate(1.12);box-shadow:0 8px 17px rgba(37,24,85,.14)}.gift-card-actions .mini-edit.gift-toolbar-action.is-active{border-color:#4056E8;background:linear-gradient(135deg,#695CFF,#2ABFEF);color:#fff}.gift-card-actions .gift-images-button b{position:absolute;top:-6px;right:-6px;min-width:17px;height:17px;padding:0 4px;border:2px solid #fff;font-size:.56rem}
.gift-card-empty-image{
  display:grid;
  place-items:center;
  gap:4px;
  width:100%;
  min-height:120px;
  margin:4px 0 8px;
  border:1px dashed #CDBDFF;
  border-radius:12px;
  background:linear-gradient(180deg,#FAF8FF 0%,#F3EEFF 100%);
  color:var(--primary);
  cursor:pointer;
  font-weight:900;
  text-align:center;
}
.gift-card-empty-image[hidden]{display:none}
.gift-card-empty-image i{font-size:1.35rem}
.gift-card-empty-image small{color:var(--muted);font-size:.66rem;font-weight:800}
.gift-card-image-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:8px 0}
.gift-card-image-strip[hidden]{display:none}
.gift-card-image-strip:before{content:"Vista previa invitados";grid-column:1/-1;color:var(--primary);font-size:.62rem;font-weight:950;text-transform:uppercase}
.gift-card-image-strip img{width:100%;aspect-ratio:4/5;border:1px solid var(--line);border-radius:8px;object-fit:cover;background:#F4F2F8}
.gift-card-image-strip img:first-child{grid-column:span 2;grid-row:span 2}
.gift-image-dialog{position:fixed;inset:0;z-index:1900;display:grid;place-items:center;padding:16px}.gift-image-dialog[hidden]{display:none}
.gift-image-dialog-backdrop{position:absolute;inset:0;background:rgba(15,12,35,.72)}
.gift-image-dialog>section{position:relative;width:min(1040px,100%);max-height:min(860px,94dvh);display:grid;grid-template-rows:auto auto minmax(220px,1fr) auto;border-radius:12px;background:#fff;box-shadow:0 30px 90px rgba(10,8,30,.35);overflow:hidden}
.gift-image-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line)}.gift-image-dialog header h3{margin:4px 0 0}.gift-image-dialog header>button{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:#fff}
.gift-image-dialog-tools{display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line);background:#FBFAFF}.gift-image-dialog-tools small{margin-left:auto;color:var(--muted);font-size:.7rem}
.contribution-library-open{order:-1;white-space:nowrap}.contribution-library-open small{margin-left:4px;opacity:.72}.contribution-library-modal{position:fixed;z-index:2400;inset:0;display:grid;place-items:center;padding:18px;background:rgba(15,10,32,.68)}.contribution-library-modal[hidden]{display:none}.contribution-library-modal-backdrop{position:absolute;inset:0}.contribution-library-modal>section{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr);width:min(860px,100%);max-height:min(760px,90dvh);border-radius:18px;background:#fff;box-shadow:0 30px 90px rgba(10,8,30,.4);overflow:hidden}.contribution-library-modal header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px 16px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#fcfaff,#f6f0ff)}.contribution-library-modal header h3{margin:3px 0 5px}.contribution-library-modal header p{margin:0;color:var(--muted);font-size:.8rem}.contribution-library-modal header>button{display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--primary);cursor:pointer}.contribution-library-modal-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:160px;gap:14px;align-content:start;padding:18px 22px 24px;overflow:auto}.contribution-library-modal-grid article{position:relative;height:160px;min-height:160px;overflow:hidden;border:1px solid #dfd6f5;border-radius:12px;background:#f4efff;box-shadow:0 8px 18px rgba(36,22,73,.08)}.contribution-library-modal-grid img{display:block;width:100%;height:100%;object-fit:cover}.contribution-library-modal-actions{position:absolute;right:7px;bottom:7px;left:7px;display:flex;align-items:center;gap:6px}.contribution-library-modal-actions button{height:32px;border:0;border-radius:9px;font-weight:800;cursor:pointer}.library-image-view{display:grid;place-items:center;width:32px;background:rgba(255,255,255,.94);color:var(--primary);box-shadow:0 3px 9px rgba(22,13,46,.18)}.library-image-select{flex:1;background:linear-gradient(90deg,var(--primary),var(--accent));color:#fff;font-size:.7rem}.contribution-library-preview{position:fixed;z-index:2500;inset:0;display:grid;place-items:center;padding:18px;background:rgba(15,10,32,.72)}.contribution-library-preview[hidden]{display:none}.contribution-library-preview>div{position:relative;display:grid;gap:10px;width:min(390px,100%);max-height:90dvh;padding:12px;border-radius:16px;background:#fff}.contribution-library-preview img{width:100%;max-height:70dvh;object-fit:contain;border-radius:10px;background:#f6f2ff}.contribution-library-preview>div>button:first-child{position:absolute;top:18px;right:18px;width:34px;height:34px;border:0;border-radius:50%;background:#fff;color:#632cd0;font-size:1.25rem;cursor:pointer}@media(max-width:600px){.gift-image-dialog-tools{align-items:center;flex-direction:row;flex-wrap:wrap}.gift-image-dialog-tools .btn{width:auto}.gift-image-dialog-tools small{flex-basis:100%;margin-left:0}.contribution-library-open{justify-content:center}.contribution-library-modal{padding:10px}.contribution-library-modal>section{max-height:94dvh}.contribution-library-modal header{padding:16px}.contribution-library-modal-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:155px;gap:9px;padding:12px}.contribution-library-modal-grid article{height:155px;min-height:155px}.contribution-library-modal-actions{right:5px;bottom:5px;left:5px}.contribution-library-modal-actions button{height:29px}.library-image-view{width:29px}.library-image-select{font-size:.62rem}}
.gift-image-manager{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));align-content:start;gap:14px;padding:18px;overflow:auto}
.gift-image-manager:empty:before{content:"Aun no hay imagenes para este regalo.";grid-column:1/-1;padding:30px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);text-align:center;font-size:.8rem}
.gift-image-tile{position:relative;display:grid;min-width:0;gap:9px;padding:9px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 9px 22px rgba(35,24,75,.08);cursor:grab}.gift-image-tile.is-dragging{opacity:.45;border-color:var(--primary)}
.gift-image-tile>.image-adjust-preview{display:block;position:relative;width:100%;aspect-ratio:4/5;border-radius:9px;background:#F4F2F8;overflow:hidden}.image-adjust-preview>img{display:block;width:100%;height:100%;object-fit:cover;transform-origin:center;transition:transform .18s ease,object-position .18s ease}.gift-image-tile>div:not(.image-adjust-preview){display:flex;flex-wrap:nowrap;justify-content:center;gap:7px;width:100%}
.gift-image-tile button,.gift-image-tile label{display:grid;place-items:center;width:30px;height:30px;margin:0;border:1px solid var(--line);border-radius:7px;background:#F8F7FC;color:var(--primary);cursor:pointer}.gift-image-tile [data-remove-gift-image]{border-color:#FFD2D8;background:#FFF2F4;color:var(--danger)}
.gift-image-tile{overflow:visible}.gift-image-tile>div:not(.image-adjust-preview){position:relative}.gift-image-tile .image-adjust-toggle{border-color:#CDBBFF;background:#F0EAFF;color:#7135E7}.gift-image-tile .image-adjust-toggle[aria-expanded="true"]{background:#7135E7;color:#fff}.gift-image-tile .image-adjust-panel{position:absolute;z-index:25;right:0;bottom:38px;display:grid;width:245px;height:auto;padding:13px;border:1px solid #CDBBFF;border-radius:13px;background:#fff;box-shadow:0 18px 42px rgba(45,25,94,.24);cursor:default}.gift-image-tile .image-adjust-panel[hidden]{display:none}.gift-image-tile .image-adjust-panel>strong{display:flex;align-items:center;gap:7px;margin-bottom:5px;color:#27213A;font-size:.76rem}.gift-image-tile .image-adjust-panel>strong i{color:#7C3DFF}.gift-image-tile .image-adjust-panel label{display:grid;place-items:stretch;width:auto;height:auto;padding:5px 0;border:0;background:transparent;cursor:default}.image-adjust-panel label span{display:flex;justify-content:space-between;color:#5F5874;font-size:.65rem;font-weight:850}.image-adjust-panel output{color:#7135E7}.image-adjust-panel input[type=range]{width:100%;accent-color:#7C3DFF;cursor:pointer}.gift-image-tile .image-adjust-reset{display:inline-flex;justify-content:center;width:100%;height:30px;margin-top:4px;border-color:#DDD3F6;background:#F8F5FF;font-size:.65rem;font-weight:850}.gift-card-image-strip{overflow:hidden}.gift-card-image-strip img,.public-contribution-image{transform-origin:center}
.gift-card-image-strip img{transform:none!important}
@media(max-width:600px){.gift-image-tile .image-adjust-panel{position:fixed;z-index:120;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));left:14px;width:auto;padding:16px;border-radius:16px}.gift-image-tile .image-adjust-panel label{padding:7px 0}.gift-image-tile .image-adjust-reset{height:38px}}
body.image-adjust-open{overflow:hidden}body.image-adjust-open:before{content:"";position:fixed;inset:0;z-index:2998;background:rgba(15,12,35,.68);backdrop-filter:blur(4px)}body>.image-adjust-panel{position:fixed;z-index:2999;top:50%;right:50%;display:grid;width:min(480px,calc(100vw - 28px));height:auto;max-height:calc(100dvh - 24px);padding:18px;border:1px solid #BBA2FF;border-radius:20px;background:linear-gradient(180deg,#fff 0%,#FAF8FF 100%);box-shadow:0 30px 90px rgba(10,8,30,.42);transform:translate(50%,-50%);cursor:default}body>.image-adjust-panel[hidden]{display:none}body>.image-adjust-panel header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:0 0 12px;border-bottom:1px solid #E8E0FA}body>.image-adjust-panel header strong{display:flex;align-items:center;gap:9px;color:#27213A;font-size:.92rem}body>.image-adjust-panel header strong i{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#EEE7FF;color:#7135E7}body>.image-adjust-panel header>button{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid #DDD3F4;border-radius:50%;background:#fff;color:#5D5275}.image-adjust-popup-preview{width:auto;height:clamp(190px,34dvh,270px);aspect-ratio:4/5;margin:0 auto 7px;border:1px solid #DED4F7;border-radius:14px;background:#EEEAF5;overflow:hidden}.image-adjust-popup-preview img{display:block;width:100%;height:100%;object-fit:cover;transform-origin:center;transition:transform .15s ease,object-position .15s ease}body>.image-adjust-panel>label{display:grid;gap:5px;width:auto;height:auto;margin:0;padding:7px 0;border:0;background:transparent}body>.image-adjust-panel label span{display:flex;align-items:center;justify-content:space-between;color:#514865;font-size:.74rem;font-weight:900}body>.image-adjust-panel output{padding:3px 7px;border-radius:999px;background:#EEE7FF;color:#7135E7;font-size:.66rem}body>.image-adjust-panel input[type=range]{width:100%;height:22px;accent-color:#7C3DFF;cursor:pointer}body>.image-adjust-panel .image-adjust-reset{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;height:38px;margin-top:7px;border:1px solid #D4C5F7;border-radius:11px;background:#F5F0FF;color:#6730D1;font-size:.72rem;font-weight:900}@media(max-width:600px){body>.image-adjust-panel{top:auto;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));left:8px;width:auto;max-height:calc(100dvh - 16px);padding:13px;border-radius:18px;transform:none}body>.image-adjust-panel header{margin-bottom:7px;padding-bottom:8px}.image-adjust-popup-preview{width:auto;height:clamp(150px,28dvh,215px);aspect-ratio:4/5;margin:0 auto 3px}body>.image-adjust-panel>label{padding:4px 0;gap:2px}body>.image-adjust-panel input[type=range]{height:20px}body>.image-adjust-panel .image-adjust-reset{height:35px;margin-top:4px}}
.gift-image-dialog footer{display:flex;justify-content:flex-end;padding:12px 18px;border-top:1px solid var(--line)}
@media(max-width:600px){body:has(.gift-image-dialog:not([hidden])) .whatsapp-float{display:none!important}.gift-images-button span{display:none}.gift-image-dialog{padding:0}.gift-image-dialog>section{width:100%;height:100dvh;max-height:none;border-radius:0}.gift-image-dialog-tools{align-items:stretch;flex-direction:column}.gift-image-dialog-tools .btn{width:100%}.gift-image-manager{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:10px}.gift-image-tile{gap:7px;padding:7px}.gift-image-tile>div:not(.image-adjust-preview){gap:4px}.gift-image-tile button,.gift-image-tile label{width:28px;min-width:28px;height:28px}}
.contribution-preview-modal{position:fixed;inset:0;z-index:1950;display:grid;place-items:center;padding:18px}
.contribution-preview-modal[hidden]{display:none}
.contribution-preview-backdrop{position:absolute;inset:0;background:rgba(13,10,32,.72);backdrop-filter:blur(5px)}
.contribution-preview-panel{position:relative;width:min(620px,100%);padding:18px;border-radius:16px;background:#fff;box-shadow:0 30px 90px rgba(10,8,30,.36)}
.contribution-preview-close{position:absolute;top:10px;right:10px;z-index:2;display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:rgba(15,13,34,.72);color:#fff}
.contribution-preview-shell{display:grid;gap:14px;padding:4px}
.contribution-preview-heading{padding-right:44px}
.contribution-preview-heading h3{margin:3px 0 4px;font-size:1.18rem}
.contribution-preview-heading p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.45}
.contribution-preview-guest-card{width:100%!important;max-width:420px;justify-self:center}
.contribution-preview-guest-card .public-contribution-image[hidden],.contribution-preview-guest-card [data-preview-gallery][hidden]{display:none!important}
.contribution-preview-guest-card .public-contribution-copy{grid-template-columns:minmax(0,1fr)!important}.contribution-preview-guest-card .public-contribution-eye{pointer-events:none}
.contribution-preview-guest-card .public-quantity-control button,
.contribution-preview-guest-card .public-quantity-control input{cursor:not-allowed;opacity:.78}
@media(max-width:600px){.contribution-preview-modal{align-items:end;padding:0}.contribution-preview-panel{width:100%;border-radius:18px 18px 0 0}.contribution-preview-heading{padding-right:40px}.contribution-preview-guest-card{max-width:none}}
.checkout-shell{max-width:1080px;margin:0 auto}.checkout-head{display:flex;align-items:end;justify-content:space-between;gap:18px;padding:18px 0}.checkout-head h1{margin:5px 0}.checkout-head p{margin:0;color:var(--muted)}.checkout-running-total{text-align:right}.checkout-running-total span{display:block;color:var(--muted);font-size:.7rem;font-weight:900;text-transform:uppercase}.checkout-running-total strong{font-size:1.7rem}
.checkout-progress{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:14px;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}.checkout-progress a{display:flex;align-items:center;gap:8px;min-height:54px;padding:10px;border-right:1px solid var(--line);color:var(--muted);text-decoration:none;font-size:.78rem;font-weight:900}.checkout-progress a:last-child{border:0}.checkout-progress b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#F1EDFF;color:var(--primary)}.checkout-progress .is-current{background:var(--gradient);color:#fff}.checkout-progress .is-current b,.checkout-progress .is-done b{background:#fff;color:var(--primary)}.checkout-progress .is-done{color:var(--success);background:#F1FFF7}
.checkout-stage{padding:22px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow)}.checkout-stage-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.checkout-stage-head h2{margin:5px 0}.checkout-stage-head p{margin:0;color:var(--muted)}.checkout-cart-card{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.checkout-cart-row{display:grid;grid-template-columns:34px minmax(0,1fr) 72px 100px 68px;align-items:center;gap:9px;padding:8px 10px;border-bottom:1px solid var(--line);transition:opacity .2s}.checkout-cart-row:last-child{border-bottom:0}.checkout-cart-row.is-saving{opacity:.58}.checkout-cart-labels{grid-template-columns:minmax(0,1fr) 72px 100px 68px;padding:6px 10px 6px 53px;background:#F8F7FC;color:var(--muted);font-size:.63rem;font-weight:800;text-transform:uppercase}.checkout-item-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:7px;background:#F1EDFF;color:var(--primary)}.checkout-item-icon.service{background:#E9FFF4;color:var(--success)}.checkout-item-copy span{color:var(--primary);font-size:.56rem;font-weight:900;text-transform:uppercase}.checkout-item-copy h3{margin:1px 0;font-size:.8rem;line-height:1.15}.checkout-item-copy p{margin:0;color:var(--muted);font-size:.65rem}.checkout-cart-row>strong{text-align:right;font-size:.82rem}.checkout-quantity{display:flex;align-items:center}.checkout-quantity input{width:66px;min-height:30px;padding:3px 5px;text-align:center;font-size:.78rem}.checkout-row-actions{display:flex;justify-content:flex-end;gap:5px}.checkout-view,.checkout-delete{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:7px;cursor:pointer}.checkout-view{border:1px solid #D9D0FF;background:#F8F6FF;color:var(--primary)}.checkout-view:hover{border-color:var(--primary);background:#F0EBFF}.checkout-delete{background:#FFF0F3;color:#E63260}.checkout-delete:hover{background:#E63260;color:#fff}.checkout-delete:disabled{opacity:.45;cursor:not-allowed}.checkout-totals,.checkout-delivery-result{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:11px 13px;border-radius:8px;background:#F7F4FF}.checkout-totals strong,.checkout-delivery-result strong{font-size:1.12rem}
.checkout-delivery-result[hidden]{display:none!important}.checkout-actions{display:flex;justify-content:space-between;gap:10px;margin-top:18px}.checkout-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.checkout-choice{position:relative;margin:0}.checkout-choice>input{position:absolute;opacity:0}.checkout-choice>span{display:grid;gap:6px;height:100%;padding:18px;border:2px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}.checkout-choice i{color:var(--primary);font-size:1.35rem}.checkout-choice b{font-size:1rem}.checkout-choice small{color:var(--success);font-weight:900}.checkout-choice p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.45}.checkout-choice input:checked+span{border-color:var(--primary);background:#F7F3FF;box-shadow:0 10px 24px rgba(124,60,255,.1)}
.checkout-page .whatsapp-float{display:none!important}
.checkout-cloud{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:13px;border:1px solid;border-radius:8px}.checkout-cloud i{font-size:1.15rem}.checkout-cloud strong{display:block}.checkout-cloud p{margin:3px 0;color:var(--muted);font-size:.76rem;line-height:1.45}.checkout-cloud.warning{border-color:#F2D28A;background:#FFF9E9;color:#9A6800}.checkout-cloud.info{border-color:#B9D8FF;background:#F2F8FF;color:#2B6CB0}.checkout-cloud.success{border-color:#BFEBD2;background:#F1FFF7;color:var(--success)}.checkout-payment-summary{display:grid;gap:1px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.checkout-payment-summary>div{display:flex;justify-content:space-between;padding:13px;background:#FBFAFF}.checkout-payment-summary .due-now{background:#F1FFF7;color:#087040;font-size:1.05rem}.checkout-final-delivery-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;margin-top:12px;padding:14px;border:1px solid #ddd3f5;border-radius:12px;background:linear-gradient(135deg,#fff,#f8f4ff)}.checkout-final-delivery-card>i{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#eee7ff;color:var(--primary);font-size:1.1rem}.checkout-final-delivery-card>div{display:grid;gap:3px;min-width:0}.checkout-final-delivery-card span{color:var(--primary);font-size:.65rem;font-weight:950;text-transform:uppercase}.checkout-final-delivery-card strong{color:var(--dark2);font-size:.82rem}.checkout-final-delivery-card small{color:var(--muted);font-size:.71rem;line-height:1.4}
.checkout-payment-window{display:flex;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;border:1px solid #BFEBD2;border-radius:999px;background:#F1FFF7;color:#087040;font-weight:950}.checkout-payment-window small{color:#4B8062;font-weight:800}.checkout-payment-window i{font-size:1rem}
.checkout-change-request{display:grid;gap:8px;margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#FBFAFF}.checkout-change-request textarea{margin-top:6px}
@media(max-width:700px){.checkout-head{align-items:flex-start;flex-direction:column}.checkout-running-total{text-align:left}.checkout-progress a{justify-content:center}.checkout-progress span{display:none}.checkout-stage{padding:14px}.checkout-stage-head{align-items:stretch;flex-direction:column}.checkout-stage-head .btn{width:100%}.checkout-cart-labels{display:none}.checkout-cart-row{grid-template-columns:28px minmax(0,1fr) 58px 76px 58px;gap:5px;padding:7px 6px}.checkout-item-icon{width:27px;height:27px}.checkout-item-copy h3{font-size:.72rem}.checkout-item-copy p{display:none}.checkout-quantity input{width:56px;min-height:29px}.checkout-cart-row>strong{font-size:.72rem}.checkout-view,.checkout-delete{width:26px;height:26px}.checkout-row-actions{gap:4px}.checkout-choice-grid{grid-template-columns:1fr}.checkout-actions .btn{flex:1;padding-left:9px;padding-right:9px}.checkout-page .whatsapp-float{display:none!important}.checkout-page .checkout-shell{padding-bottom:calc(82px + env(safe-area-inset-bottom))}.checkout-page .checkout-actions{position:fixed;z-index:1800;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));left:58px;align-items:center;gap:8px;margin:0;padding:6px;border:1px solid rgba(216,204,243,.94);border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 15px 38px rgba(24,14,54,.22);backdrop-filter:blur(14px)}.checkout-page .checkout-actions .btn{min-width:0;min-height:44px;margin:0;border-radius:999px;font-size:.82rem}.checkout-page .checkout-actions .btn-primary{box-shadow:0 9px 22px rgba(147,54,229,.24)}}
@media(max-width:700px){.checkout-payment-window{align-items:flex-start;flex-direction:column;border-radius:8px}.stage-payment-alert{align-items:flex-start;flex-direction:column;margin:12px 14px}.stage-payment-alert .btn{width:100%;margin-left:0}.store-payment-stack,.store-register-card{justify-items:stretch;max-width:none;text-align:left}.store-payment-pill{width:100%;white-space:normal;text-align:center}.store-results-actions .store-payment-pill{order:3}}
.store-browse-badge{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#F1EDFF;color:var(--primary);font-size:.72rem;font-weight:850}.store-purchase-gate[hidden]{display:none}.store-purchase-gate{position:fixed;inset:0;z-index:2600;display:grid;place-items:center;padding:18px}.store-purchase-gate-backdrop{position:absolute;inset:0;background:rgba(13,12,35,.62);backdrop-filter:blur(3px)}.store-purchase-gate-card{position:relative;width:min(470px,100%);padding:28px;border-radius:8px;background:#fff;box-shadow:0 24px 70px rgba(15,12,45,.28);text-align:center}.store-purchase-gate-card h2{margin:8px 0 10px;font-size:1.45rem}.store-purchase-gate-card p{margin:0;color:var(--muted);line-height:1.55}.store-purchase-gate-icon{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 12px;border-radius:50%;background:#F1EDFF;color:var(--primary);font-size:1.25rem}.store-purchase-gate-close{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:#F6F4FA;color:var(--text)}.store-purchase-gate-actions{display:flex;justify-content:center;gap:9px;margin-top:20px}@media(max-width:560px){.store-purchase-gate-card{padding:24px 16px 18px}.store-purchase-gate-actions{flex-direction:column}.store-purchase-gate-actions .btn{width:100%}}
.public-contribution-card{margin-top:18px}.public-rsvp-icon.contribution{background:#F1EDFF;color:var(--primary)}.public-contribution-tabs{display:flex;gap:7px;overflow-x:auto;margin:16px 0;padding-bottom:5px}.public-contribution-tabs button{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:9px 12px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--text);font-size:.76rem;font-weight:850}.public-contribution-tabs button.is-active{border-color:var(--primary);background:var(--primary);color:#fff}.public-contribution-panel h3{margin:0 0 8px;font-size:.92rem}.public-contribution-list{overflow:hidden;border:1px solid var(--line);border-radius:8px}.public-contribution-row{display:grid;grid-template-columns:minmax(0,1fr) 100px 82px;align-items:center;gap:10px;padding:9px 11px;border-bottom:1px solid var(--line)}.public-contribution-row.has-image{grid-template-columns:54px minmax(0,1fr) 100px 82px}.public-contribution-image{width:54px;aspect-ratio:4/5;border:1px solid var(--line);border-radius:7px;object-fit:cover;background:#F4F2F8}.public-contribution-row:last-child{border-bottom:0}.public-contribution-row>div{min-width:0}.public-contribution-row strong{display:block;font-size:.8rem}.public-contribution-row small{display:block;color:var(--muted);font-size:.66rem}.public-contribution-row>span{text-align:right;font-size:.78rem;font-weight:900}.public-contribution-row label{margin:0}.public-contribution-row label small{text-align:center}.public-contribution-row input{width:100%;min-height:32px;padding:4px;text-align:center;font-size:.76rem}.public-contribution-identity{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-top:14px}.public-contribution-identity label{font-size:.72rem}.public-contribution-identity input{min-height:40px}.public-contribution-total{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding:12px;border-radius:8px;background:#F7F4FF}.public-contribution-total strong{font-size:1.2rem}.public-orders-card{margin-top:18px}.public-order-list{overflow:hidden;border:1px solid var(--line);border-radius:8px}.public-order-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line)}.public-order-list>div:last-child{border-bottom:0}.public-order-list span{min-width:0}.public-order-list span strong,.public-order-list span small{display:block}.public-order-list span strong{font-size:.76rem}.public-order-list span small{color:var(--muted);font-size:.65rem}.public-order-list b{font-size:.8rem}.public-order-list em{font-style:normal}.public-order-list .btn{padding:7px 9px;font-size:.68rem}@media(max-width:700px){.public-contribution-identity{grid-template-columns:1fr}.public-contribution-row{grid-template-columns:minmax(0,1fr) 78px 64px;padding:8px 7px;gap:5px}.public-contribution-row.has-image{grid-template-columns:42px minmax(0,1fr) 70px 58px}.public-contribution-image{width:42px;border-radius:6px}.public-contribution-row strong{font-size:.7rem}.public-contribution-row small{font-size:.59rem}.public-contribution-row>span{font-size:.68rem}.public-order-list>div{grid-template-columns:minmax(0,1fr) auto}.public-order-list em,.public-order-list .btn{grid-column:1/-1}.public-order-list .btn{width:100%}}
.public-payment-panel{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid #D9D0FF;border-radius:8px;background:#F8F6FF}.public-payment-panel[hidden]{display:none}.public-payment-panel>i{color:var(--primary);font-size:1.35rem}.public-payment-panel h3{margin:0 0 4px}.public-payment-panel p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.45}

.potluck-card-actions{
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:end;
  flex-wrap:nowrap;
  min-width:0;
}

.secondary-actions{
  display:flex;
  gap:8px;
  align-items:center;
}

.mini-action{
  border:0!important;
  border-radius:999px;
  min-height:36px;
  padding:9px 14px;
  font-family:inherit;
  font-weight:900;
  cursor:pointer;
  line-height:1;
  display:inline-flex;
  align-items:center;
  gap:7px;
  justify-content:center;
  text-decoration:none;
  transition:.2s ease;
}

.mini-action.icon-only{
  width:38px;
  min-width:38px;
  height:38px;
  padding:0;
  font-size:1rem;
  gap:0;
}

.mini-edit{
  color:#fff!important;
  background:linear-gradient(135deg,#7C3CFF,#00D4FF)!important;
  box-shadow:0 10px 22px rgba(124,60,255,.28);
}

.mini-delete{
  color:#fff!important;
  background:linear-gradient(135deg,#D92D55,#FF3FA4)!important;
  box-shadow:0 10px 22px rgba(217,45,85,.24);
}

.mini-pick{
  color:#fff!important;
  background:linear-gradient(135deg,#16A765,#00D4FF)!important;
  box-shadow:0 10px 22px rgba(22,167,101,.2);
}

.primary-pick{
  min-width:150px;
}

.mini-action:hover{
  transform:translateY(-1px);
  filter:saturate(1.08);
}

.compact-fields{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}

.gift-option-card label,
.ticket-option-card label,
.potluck-option-card label{
  font-size:.78rem;
  color:var(--dark2);
  text-transform:uppercase;
  letter-spacing:.04em;
}

.guest-option-card label{
  font-size:.78rem;
  color:var(--dark2);
  text-transform:uppercase;
  letter-spacing:.04em;
}

.gift-option-card input,
.gift-option-card textarea,
.ticket-option-card input,
.ticket-option-card textarea,
.potluck-option-card input,
.potluck-option-card textarea{
  min-height:40px;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid #DED9EF;
}

.guest-option-card input{
  min-height:40px;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid #DED9EF;
}

.gift-option-card input[readonly],
.gift-option-card textarea[readonly],
.ticket-option-card input[readonly],
.ticket-option-card textarea[readonly],
.potluck-option-card input[readonly],
.potluck-option-card textarea[readonly]{
  background:#F8F7FC;
  color:var(--muted);
  border-color:#EEEAF8;
}

.guest-option-card input[readonly]{
  background:#F8F7FC;
  color:var(--muted);
  border-color:#EEEAF8;
}

.gift-option-card.is-editing,
.ticket-option-card.is-editing,
.potluck-option-card.is-editing{
  border-color:rgba(124,60,255,.45);
  box-shadow:0 16px 40px rgba(124,60,255,.1);
}

.guest-option-card.is-editing{
  border-color:rgba(255,63,164,.42);
  box-shadow:0 16px 40px rgba(255,63,164,.1);
}

.gift-option-card.is-editing input,
.gift-option-card.is-editing textarea,
.ticket-option-card.is-editing input,
.ticket-option-card.is-editing textarea,
.potluck-option-card.is-editing input,
.potluck-option-card.is-editing textarea{
  background:#fff;
  color:var(--text);
}

.guest-option-card.is-editing input{
  background:#fff;
  color:var(--text);
}

.compact-fields.two{
  grid-template-columns:1fr 1fr;
}

.selected-product-chip{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:8px 12px;
  border-radius:999px;
  background:#EAF8F0;
  color:var(--success);
  font-weight:900;
  font-size:.84rem;
}

.selected-product-chip.is-empty{
  background:#F8F7FC;
  color:var(--muted);
}

.picker-backdrop{
  position:fixed;
  inset:0;
  z-index:60;
  display:grid;
  place-items:center;
  padding:24px;
  background:rgba(13,13,31,.58);
  backdrop-filter:blur(10px);
}

.picker-backdrop[hidden]{
  display:none;
}

.product-picker{
  width:min(980px,100%);
  max-height:86vh;
  overflow:hidden;
  display:grid;
  grid-template-rows:auto 1fr;
  background:#fff;
  border-radius:22px;
  box-shadow:0 34px 90px rgba(0,0,0,.28);
}

.picker-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  padding:22px;
  border-bottom:1px solid var(--line);
}

.picker-head h3{
  margin:6px 0 0;
}

.picker-layout{
  min-height:0;
  display:grid;
  grid-template-columns:230px 1fr;
}

.picker-categories{
  display:grid;
  align-content:start;
  gap:8px;
  padding:18px;
  background:#F8F7FC;
  border-right:1px solid var(--line);
  overflow:auto;
}

.category-filter{
  border:1px solid var(--line);
  border-radius:12px;
  padding:11px 12px;
  background:#fff;
  color:var(--dark2);
  font-family:inherit;
  font-weight:900;
  text-align:left;
  cursor:pointer;
}

.category-filter.is-active{
  color:#fff;
  background:var(--gradient);
  border-color:transparent;
}

.picker-products{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  padding:18px;
  overflow:auto;
}

.product-pick-card{
  display:grid;
  gap:6px;
  padding:15px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  text-align:left;
  font-family:inherit;
  cursor:pointer;
}

.product-pick-card:hover{
  border-color:rgba(124,60,255,.4);
  box-shadow:0 16px 32px rgba(124,60,255,.12);
}

.product-pick-card span{
  color:var(--primary);
  font-weight:900;
  font-size:.78rem;
}

.product-pick-card strong{
  color:var(--dark2);
}

.product-pick-card small{
  color:var(--muted);
  font-weight:800;
}

.empty-state.compact{
  box-shadow:none;
  border:1px dashed var(--line);
  grid-column:1/-1;
}

.invite-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:22px;
  align-items:start;
}

.flyer-preview{
  position:sticky;
  top:24px;
}

.flyer-preview .phone{
  max-width:340px;
  margin:0 auto;
}

.flyer-preview .phone-screen{
  min-height:0;
}

.flyer-live-card h4{
  word-break:break-word;
}

.share-box{
  display:grid;
  gap:9px;
  padding:16px;
  border-radius:16px;
  background:var(--soft);
}

.share-box small{
  color:var(--primary);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.share-box > div{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
}

.share-box p{
  margin:0;
  color:var(--muted);
  line-height:1.5;
}

.invitation-approval-card{
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:14px;
  align-items:start;
  padding:16px;
  border:1px solid rgba(132,70,255,.18);
  border-radius:16px;
  background:linear-gradient(135deg,#F7F1FF,#FFF3FB);
  box-shadow:0 16px 40px rgba(132,70,255,.08);
}

.invitation-approval-card > span{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:14px;
  background:linear-gradient(135deg,var(--primary),var(--pink));
  color:#fff;
  font-size:1.25rem;
  box-shadow:0 12px 26px rgba(132,70,255,.24);
}

.invitation-approval-card small{
  display:block;
  margin-bottom:4px;
  color:var(--pink);
  font-size:.72rem;
  font-weight:950;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.invitation-approval-card strong{
  display:block;
  color:var(--text);
  font-size:1rem;
  line-height:1.25;
}

.invitation-approval-card p{
  margin:7px 0 0;
  color:var(--muted);
  line-height:1.45;
}

.invitation-approve-button{
  background:linear-gradient(135deg,#15C98F,var(--primary));
}

.preview-approval-card{
  width:100%;
  max-width:none;
  margin:0;
  padding:10px;
  grid-template-columns:30px minmax(0,1fr);
  gap:8px;
  border-radius:12px;
}

.preview-final-action{
  display:block;
  margin-top:auto;
  padding-top:12px;
}

.preview-approval-card > span{
  width:30px;
  height:30px;
  border-radius:9px;
  font-size:.82rem;
}

.preview-approval-card strong{
  font-size:.76rem;
}

.preview-approval-card p{
  margin-top:4px;
  font-size:.66rem;
  line-height:1.3;
}

.preview-approval-card .invitation-approve-button{
  width:100%;
  min-height:32px;
  margin-top:8px;
  padding:7px 9px;
  font-size:.68rem;
  justify-content:center;
}

.preview-approval-card.is-published{
  border-color:rgba(124,60,255,.18);
  background:linear-gradient(180deg,#FFFFFF,#F7F2FF);
}

.preview-approval-card.is-published > span{
  background:linear-gradient(135deg,#7C3CFF,#C044FF);
}

.preview-approval-card .invitation-unpublish-button{
  width:100%;
  min-height:32px;
  margin-top:8px;
  padding:7px 9px;
  font-size:.68rem;
  justify-content:center;
  background:linear-gradient(135deg,#7C3CFF,#C044FF)!important;
  box-shadow:0 14px 30px rgba(124,60,255,.22)!important;
}

.phone{
  background:rgba(13,13,31,.08);
  border:1px solid rgba(13,13,31,.08);
  border-radius:38px;
  padding:14px;
  box-shadow:0 25px 70px rgba(20,20,45,.18);
}

.phone-screen{
  display:flex;
  flex-direction:column;
  min-height:520px;
  background:#fff;
  color:var(--text);
  border-radius:28px;
  padding:18px;
  overflow:visible;
}

.phone-top{
  width:76px;
  height:7px;
  background:#E4E4EC;
  border-radius:99px;
  margin:0 auto 18px;
}

.app-head{
  position:relative;
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:14px;
}

.preview-title-help{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
}

.preview-info-help{
  position:relative;
}

.preview-info-help summary{
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  border-radius:50%;
  background:#F1EDFF;
  color:var(--primary);
  cursor:pointer;
  list-style:none;
}

.preview-info-help summary::-webkit-details-marker{
  display:none;
}

.preview-info-help[open] summary{
  background:var(--primary);
  color:#fff;
}

.preview-info-help>div{
  position:absolute;
  left:0;
  top:30px;
  z-index:60;
  width:230px;
  padding:11px;
  border:1px solid #D8CCF8;
  border-radius:10px;
  background:#fff;
  box-shadow:0 16px 36px rgba(22,18,54,.18);
}

.preview-info-help>div:before{
  content:"";
  position:absolute;
  left:8px;
  top:-7px;
  width:12px;
  height:12px;
  border-left:1px solid #D8CCF8;
  border-top:1px solid #D8CCF8;
  background:#fff;
  transform:rotate(45deg);
}

.preview-info-help>div strong{
  display:block;
  margin-bottom:4px;
  color:var(--dark2);
  font-size:.72rem;
}

.preview-info-help>div p{
  margin:0;
  color:var(--muted);
  font-size:.66rem;
  line-height:1.35;
}

.app-icon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:var(--gradient);
  color:#fff;
  font-weight:900;
}

.event-preview{
  padding:16px;
  border-radius:18px;
  background:var(--soft);
  margin-bottom:14px;
}

.event-preview small{
  color:var(--secondary);
  font-weight:900;
  text-transform:uppercase;
}

.event-preview h4{
  margin:7px 0;
  color:var(--dark2);
}

.event-preview p{
  margin:0;
  color:var(--muted);
  line-height:1.5;
}

.app-btn{
  display:block;
  width:100%;
  border:0;
  border-radius:15px;
  padding:12px;
  background:var(--dark);
  color:#fff;
  font-weight:900;
  text-align:center;
  margin-bottom:9px;
}

.app-btn.secondary{
  background:var(--soft);
  color:var(--primary);
}

@media (max-width:980px){
  .shell{grid-template-columns:minmax(0,1fr)}
  .sidebar{
    position:fixed;
    z-index:80;
    top:0;
    left:0;
    /* 2026-10-21: en el celular 100vh es más alto que lo visible (no descuenta la barra del navegador) y "Salir" quedaba
       pegado bajo el borde; con top+bottom el menú mide justo la pantalla visible. */
    bottom:0;
    width:min(82vw,320px);
    height:auto;
    padding-bottom:calc(18px + env(safe-area-inset-bottom));
    transform:translateX(-105%);
    transition:.25s ease;
    overflow:auto;
  }
  .menu-open .sidebar{
    transform:translateX(0);
  }
  .menu-open .whatsapp-float{display:none!important}
  .mobile-overlay{
    display:block;
    position:fixed;
    inset:0;
    z-index:70;
    background:rgba(13,13,31,.58);
    backdrop-filter:blur(6px);
    opacity:0;
    pointer-events:none;
    transition:.2s ease;
  }
  .menu-open .mobile-overlay{
    opacity:1;
    pointer-events:auto;
  }
  .menu-toggle{
    display:inline-grid;
    place-items:center;
    flex:0 0 auto;
  }
  .menu-close{
    display:inline-grid;
    place-items:center;
  }
  .side-nav{
    margin-top:6px;
  }
  .topbar{
    justify-content:flex-start;
  }
  .top-actions{
    width:100%;
  }
  .dashboard-compact{
    display:grid;
  }
  .calendar-head{grid-template-columns:1fr}
  .calendar-jump{justify-content:flex-start}
  .auth-grid,.dashboard-grid,.event-context,.checks-row,.gift-card-grid,.ticket-card-grid,.potluck-card-grid,.guest-card-grid,.picker-layout,.picker-products,.invite-layout,.event-list,.event-show-grid{grid-template-columns:1fr}
  .contribution-option-section .section-head.compact{display:contents}
  .contribution-option-section .section-head.compact>div{order:1}
  .contribution-option-section .gift-card-grid,
  .contribution-option-section .ticket-card-grid{order:2}
  .contribution-option-section .section-head.compact>.btn{order:3;width:100%;margin-top:2px}
  .guest-list{grid-template-columns:1fr}
  .flyer-preview{position:relative;top:auto}
  .stage-progress{grid-template-columns:repeat(2,minmax(0,1fr))}
  .event-stage-main{display:grid}
  .store-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .store-toolbar{grid-template-columns:1fr 1fr}
  .store-toolbar .contact-search{grid-column:1/-1}
  .event-summary-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .event-summary-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
  .event-summary-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .event-summary-steps a:nth-child(2),.event-summary-steps>div:nth-child(2){border-right:0}
  .event-summary-steps a:nth-child(-n+2),.event-summary-steps>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
}

@media (max-width:640px){
  .main,.sidebar{padding:18px}
  .topbar,.section-head{display:grid}
  .form-grid,.event-row,.repeat-row,.repeat-row.three,.compact-fields.two{grid-template-columns:1fr}
  .span-2{grid-column:auto}
  .format-choice-grid,.store-explainer,.store-product-grid,.store-toolbar{grid-template-columns:1fr}
  .event-summary-hero{padding:17px;gap:16px;border-radius:14px}
  .event-summary-hero-top{display:grid;grid-template-columns:1fr}
  .event-summary-statuses{justify-content:flex-start}
  .event-summary-facts,.event-summary-metrics,.event-summary-grid{grid-template-columns:1fr}
  .event-summary-steps{grid-template-columns:1fr}
  .event-summary-steps a,.event-summary-steps a:nth-child(2){border-right:0;border-bottom:1px solid var(--line)}
  .event-summary-steps a:last-child{border-bottom:0}
  .event-summary-actions{display:grid;grid-template-columns:1fr 1fr}
  .event-summary-actions .btn{justify-content:center}
  .event-guest-summary{grid-template-columns:1fr}
  .event-summary-steps>div,.event-summary-steps>div:nth-child(2){border-right:0;border-bottom:1px solid var(--line)}
  .event-summary-steps>div:last-child{border-bottom:0}
  .event-detail-dialog{align-items:end;padding:0}
  .event-detail-panel{width:100%;max-height:94dvh;border-radius:18px 18px 0 0}
  .event-detail-panel header{padding:15px}
  .event-detail-content{padding:12px}
  .event-guest-detail-grid{grid-template-columns:1fr}
  .event-guest-detail-meta{grid-template-columns:1fr}
  .event-option-summary-grid{grid-template-columns:1fr}
  .event-option-detail-stats{grid-template-columns:1fr 1fr}
  .event-summary-invitation-details{grid-template-columns:1fr}
  .event-summary-invitation-image{width:min(280px,100%)}
  .event-summary-invitation-link{grid-template-columns:auto minmax(0,1fr)}
  .event-summary-invitation-link strong{grid-column:1/-1}
  .store-modal-product-grid.store-product-grid,.store-service-grid.store-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .store-toolbar .contact-search{grid-column:auto}
  .store-actions{display:grid}
  .store-actions .btn{width:100%}
  .gift-card-head{
    display:grid;
    grid-template-columns:1fr;
  }
  .potluck-card-actions{
    grid-template-columns:1fr;
    justify-content:stretch;
  }
  .secondary-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .primary-pick,
  .secondary-actions .mini-action{
    width:100%;
  }
  .share-box > div{
    grid-template-columns:1fr;
  }
  .invitation-approval-card{
    grid-template-columns:1fr;
  }
  .invitation-approval-card > span{
    width:42px;
    height:42px;
  }
  .contact-picker-backdrop{
    align-items:end;
    padding:0;
  }
  .contact-picker-dialog{
    width:100%;
    max-height:92vh;
    border-radius:18px 18px 0 0;
  }
  .contact-picker-tools{
    grid-template-columns:1fr;
  }
  .contact-picker-tools .btn{
    width:100%;
  }
  .contact-picker-footer{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .contact-picker-footer .btn{
    width:100%;
    padding-inline:10px;
  }
  .bank-alert{
    display:grid;
  }
  .bank-alert a{
    margin-left:0;
  }
  .verify-grid .hero-panel,
  .verify-grid .card{
    padding:22px;
  }
  .verify-grid .hero-panel h2{
    font-size:1.75rem;
  }
  .verify-grid .empty-state{
    padding:20px 0;
  }
  .micro-timeline{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .attendance-actions{
    display:grid;
    width:100%;
  }
  .attendance-actions .btn{
    width:100%;
  }
  .attendance-pills{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .attendance-pill{
    justify-content:center;
  }
  .guest-card-main{
    display:grid;
  }
  .guest-card-actions{
    justify-content:space-between;
  }
  .guest-details{
    grid-template-columns:1fr;
  }
  .calendar-weekdays{display:grid}
  .calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr))}
  .calendar-day{min-height:62px;padding:4px;border-radius:9px}
  .calendar-day-number{width:20px;height:20px;font-size:.72rem}
  .calendar-event{padding:4px;border-radius:7px}
  .calendar-event span,
  .calendar-event small{display:none}
  .calendar-event strong{font-size:.62rem}
  .stage-progress{grid-template-columns:1fr}
  .stage-progress-item{border-right:0;border-bottom:1px solid var(--line)}
  .stage-progress-item:last-child{border-bottom:0}
}
.store-service-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:22px 0 10px;padding-top:18px;border-top:1px solid var(--line)}.store-service-heading h3{margin:4px 0 0}.store-service-heading>span{padding:7px 10px;border-radius:999px;background:#F2EEFF;color:#6E37DC;font-size:.72rem;font-weight:900}.store-service-card .store-product-bottom strong small{color:var(--muted);font-size:.65rem}.service-slots-open{min-height:36px;padding:8px 11px;font-size:.76rem}.service-slot-pills{display:flex;flex-wrap:wrap;gap:5px;min-height:25px}.service-slot-pills span{padding:5px 7px;border:1px solid #BFEBD4;border-radius:999px;background:#EDFFF5;color:#087040;font-size:.66rem;font-weight:900}.service-slot-dialog{position:fixed;inset:0;z-index:1300;display:grid;place-items:center;padding:18px}.service-slot-dialog[hidden]{display:none}.service-slot-backdrop{position:absolute;inset:0;background:rgba(16,12,38,.65)}.service-slot-dialog>section{position:relative;width:min(620px,100%);max-height:min(720px,90vh);display:grid;grid-template-rows:auto minmax(0,1fr) auto;border-radius:8px;background:#fff;box-shadow:0 28px 90px rgba(10,8,30,.3);overflow:hidden}.service-slot-dialog header{display:flex;justify-content:space-between;gap:12px;padding:18px;border-bottom:1px solid var(--line)}.service-slot-dialog header h3{margin:4px 0}.service-slot-dialog header p{margin:3px 0 0;color:var(--muted);font-size:.8rem}.service-slot-dialog header button{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:#fff}.service-slot-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:14px;overflow:auto}.service-slot-options label{display:grid;grid-template-columns:auto minmax(0,1fr) 70px;align-items:center;gap:9px;margin:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:#FBFAFF}.service-slot-options label:has(input[type=checkbox]:checked){border-color:#21A86B;background:#F1FFF7}.service-slot-options input[type=checkbox]{width:18px;min-height:18px}.service-slot-options input[type=number]{min-height:36px;padding:6px 8px}.service-slot-options span{display:grid}.service-slot-options small{color:var(--muted);font-size:.68rem}.service-slot-options .sold-out{opacity:.5}.service-slot-dialog footer{display:flex;justify-content:flex-end;padding:12px 14px;border-top:1px solid var(--line)}
.store-service-heading-tools{display:flex;align-items:end;gap:8px}.store-service-heading-tools label{margin:0}.store-service-heading-tools label>span{display:block;margin-bottom:4px;color:var(--muted);font-size:.64rem;font-weight:900;text-transform:uppercase}.store-service-heading-tools select{min-height:36px;padding:7px 32px 7px 10px;font-size:.76rem}.store-service-heading-tools>span{padding:7px 10px;border-radius:999px;background:#F2EEFF;color:#6E37DC;font-size:.72rem;font-weight:900;white-space:nowrap}
.service-no-slots{grid-column:1/-1;display:grid;justify-items:center;gap:6px;padding:24px;border:1px dashed var(--line);border-radius:8px;background:#FBFAFF;text-align:center}.service-no-slots i{color:var(--primary);font-size:1.4rem}.service-no-slots span{max-width:360px;color:var(--muted);font-size:.78rem}
@media(max-width:600px){.store-service-heading{align-items:flex-start;flex-direction:column}.store-service-heading-tools{width:100%}.store-service-heading-tools label{flex:1}.service-slot-options{grid-template-columns:1fr}.service-slot-dialog{padding:8px}.service-slot-dialog>section{max-height:94vh}.service-slot-dialog header{padding:14px}.service-slot-options label{grid-template-columns:auto minmax(0,1fr) 62px}}
.public-invitation-layout{display:block;min-height:100vh;background:#F6F4FA}.public-invitation-layout .main{width:min(1080px,100%);margin:0 auto;padding:22px}.public-invitation-layout .topbar{justify-content:flex-end;min-height:48px;margin-bottom:12px}.public-invitation-shell{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.public-invitation-hero{display:flex;flex-direction:column;justify-content:space-between;gap:30px;min-height:620px;padding:36px;color:#fff;background:linear-gradient(145deg,#16142C,#271044 58%,#7C3CFF)}.public-invitation-brand{display:flex;align-items:center;gap:9px;font-size:1.05rem}.public-invitation-brand span{display:grid;place-items:center;width:34px;height:30px;border-radius:9px;background:var(--gradient);font-weight:950}.public-invitation-hero .kicker{color:#FF70BB}.public-invitation-hero h1{margin:10px 0;font-size:clamp(2rem,4vw,3.4rem);line-height:1}.public-invitation-hero p{max-width:580px;color:rgba(255,255,255,.78);font-size:1rem;line-height:1.65}.public-event-facts{display:grid;gap:8px}.public-event-facts span{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid rgba(255,255,255,.15);border-radius:8px;background:rgba(255,255,255,.08)}.public-event-facts i{color:#FF70BB}.public-rsvp-card{display:flex;flex-direction:column;justify-content:center;gap:18px;padding:32px}.public-rsvp-head h2{margin:6px 0;font-size:1.8rem}.public-rsvp-head p{margin:0;color:var(--muted);line-height:1.5}.public-rsvp-options{display:grid;gap:7px}.public-rsvp-options label{margin:0}.public-rsvp-options input{position:absolute;opacity:0}.public-rsvp-options label>span{display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:#FBFAFF;cursor:pointer}.public-rsvp-options input:checked+span{border-color:#A98CF3;background:#F4EFFF;color:var(--primary)}.public-rsvp-options label:nth-child(1) i{color:var(--success)}.public-rsvp-options label:nth-child(2) i{color:#D69B00}.public-rsvp-options label:nth-child(3) i{color:#D92E49}.public-rsvp-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.public-rsvp-fields label small{color:var(--primary);font-size:.62rem}.field-note{display:block;margin-top:5px;color:var(--muted);font-size:.68rem;line-height:1.35}.public-rsvp-submit{width:100%}
@media(max-width:800px){.public-invitation-layout .main{padding:12px}.public-invitation-shell{grid-template-columns:1fr}.public-invitation-hero{min-height:390px;padding:26px}.public-rsvp-card{padding:24px}.public-top-actions{width:100%;justify-content:flex-end}}
@media(max-width:520px){.public-invitation-layout .main{padding:8px}.public-invitation-shell{border-radius:14px}.public-invitation-hero{min-height:340px;padding:20px}.public-invitation-hero h1{font-size:2rem}.public-rsvp-card{padding:18px}.public-rsvp-fields{grid-template-columns:1fr}}

/* Invitacion publica comercial */
.public-invitation-layout{background:#F5F3F9}.public-invitation-layout .topbar{padding:0 4px}.public-invitation-shell{position:relative;border-radius:18px;box-shadow:0 28px 80px rgba(22,18,54,.14)}.public-invitation-hero{position:relative;isolation:isolate;min-height:650px;padding:34px;overflow:hidden;background:linear-gradient(150deg,#121126 0%,#26123F 58%,#6F32E5 100%)}.public-invitation-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(13,12,30,.12),rgba(13,12,30,.3) 45%,rgba(13,12,30,.88))}.public-cover-media{position:absolute;inset:0;z-index:-2}.public-cover-media img{width:100%;height:100%;object-fit:cover}.public-invitation-brand{position:relative;z-index:1}.public-invitation-copy{margin-top:auto}.public-invitation-label{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.11);color:#fff;font-size:.7rem;font-weight:900;text-transform:uppercase;backdrop-filter:blur(8px)}.public-invitation-copy h1{max-width:650px;margin:14px 0 10px}.public-invitation-copy p{margin:0}.public-event-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.public-event-facts span{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:8px;padding:10px;background:rgba(255,255,255,.1);backdrop-filter:blur(9px)}.public-event-facts i{grid-row:1/3;align-self:center}.public-event-facts small{color:rgba(255,255,255,.6);font-size:.58rem;font-weight:900;text-transform:uppercase}.public-event-facts strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem}.public-rsvp-card{gap:16px;padding:34px}.public-rsvp-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:0 11px}.public-rsvp-head>p{grid-column:1/-1;margin-top:9px}.public-rsvp-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:linear-gradient(135deg,var(--primary),var(--pink));color:#fff;font-size:1.05rem;box-shadow:0 12px 24px rgba(124,60,255,.22)}.public-rsvp-head h2{font-size:1.65rem}.public-rsvp-options label>span{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:9px;padding:10px 12px}.public-rsvp-options label>span i{grid-row:1/3;align-self:center;font-size:1.05rem}.public-rsvp-options label>span small{color:var(--muted);font-size:.64rem;font-weight:700}.public-rsvp-options input:focus-visible+span{outline:3px solid rgba(124,60,255,.16)}.public-rsvp-fields input{min-height:42px;border-radius:10px;padding:9px 11px}.public-rsvp-security{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.68rem}.public-rsvp-security i{color:var(--success)}.public-rsvp-submit{min-height:46px;box-shadow:0 14px 30px rgba(124,60,255,.22)}
@media(max-width:900px){.public-invitation-shell{grid-template-columns:1fr}.public-invitation-hero{min-height:440px}.public-event-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.public-rsvp-card{padding:28px}.public-rsvp-options{grid-template-columns:repeat(3,minmax(0,1fr))}.public-rsvp-options label>span{height:100%;grid-template-columns:1fr;text-align:center;justify-items:center}.public-rsvp-options label>span i{grid-row:auto}.public-rsvp-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.public-invitation-layout .topbar{min-height:42px;margin-bottom:7px}.public-invitation-layout .top-actions .btn{min-height:36px;padding:8px 12px;font-size:.72rem}.public-invitation-hero{min-height:400px;padding:20px}.public-invitation-copy h1{font-size:2.1rem}.public-event-facts{grid-template-columns:1fr 1fr}.public-event-facts span:last-child{grid-column:1/-1}.public-rsvp-card{padding:20px 16px}.public-rsvp-options{grid-template-columns:1fr}.public-rsvp-options label>span{grid-template-columns:auto minmax(0,1fr);text-align:left;justify-items:start}.public-rsvp-options label>span i{grid-row:1/3}.public-rsvp-fields{grid-template-columns:1fr}.public-rsvp-submit{position:sticky;bottom:8px;z-index:3}}
.invitation-image-upload>label small{color:var(--primary);font-size:.65rem}.invitation-image-current{position:relative;width:min(420px,100%);aspect-ratio:16/9;margin:7px 0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#F5F3F9}.invitation-image-current img{width:100%;height:100%;object-fit:cover}.invitation-image-current span{position:absolute;left:8px;bottom:8px;padding:5px 8px;border-radius:999px;background:rgba(17,15,38,.78);color:#fff;font-size:.62rem;font-weight:900}.invitation-image-upload input[type=file]{padding:7px;background:#FBFAFF}.invitation-image-upload>small{display:block;margin-top:5px;color:var(--muted);font-size:.68rem;line-height:1.4}.public-invitation-image-signal{width:min(360px,88%);aspect-ratio:16/9;margin-bottom:14px;border:1px solid rgba(255,255,255,.3);border-radius:12px;overflow:hidden;box-shadow:0 18px 42px rgba(8,6,24,.3)}.public-invitation-image-signal img{width:100%;height:100%;object-fit:cover}
@media(max-width:600px){.public-invitation-image-signal{width:min(280px,86%);margin-bottom:11px}}

.store-entry-pay{min-width:130px;justify-content:center}
.store-selected-list-total{justify-content:space-between;flex-wrap:wrap}
.store-selected-list-pay{min-height:36px;padding:8px 13px;font-size:.76rem}
.store-modal-footer-actions{flex-wrap:wrap}
.store-modal-footer-actions .btn{white-space:nowrap}
@media(max-width:600px){
  .store-entry-pay{width:100%}
  .store-modal-footer-actions{grid-template-columns:1fr 1fr}
  .store-modal-footer-actions .btn[type="submit"]:last-child{grid-column:1/-1}
}

.public-event-facts{grid-template-columns:repeat(4,minmax(0,1fr))}
.public-event-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}
.public-event-notes span{display:grid;gap:3px;padding:10px;border:1px solid rgba(255,255,255,.15);border-radius:8px;background:rgba(255,255,255,.1);backdrop-filter:blur(9px)}
.public-event-notes .wide{grid-column:1/-1}
.public-event-notes small{color:rgba(255,255,255,.6);font-size:.58rem;font-weight:900;text-transform:uppercase}
.public-event-notes strong{color:#fff;font-size:.75rem;line-height:1.35}
.public-payment-breakdown{display:grid;gap:1px;margin-top:8px;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--line)}
.public-payment-breakdown[hidden]{display:none}
.public-payment-breakdown>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#FBFAFF}
.public-payment-breakdown span{color:var(--muted);font-size:.76rem;font-weight:850}
.public-payment-breakdown strong{font-size:.82rem}
.public-payment-breakdown .total{background:#F1FFF7}
.public-payment-breakdown .total span,.public-payment-breakdown .total strong{color:#087040;font-weight:950}
@media(max-width:900px){.public-event-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
  .public-event-facts{grid-template-columns:1fr 1fr}
  .public-event-facts span:last-child{grid-column:auto}
  .public-event-notes{grid-template-columns:1fr}
}
.store-product-media{position:relative;width:100%;aspect-ratio:4/5;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#F4F2F7}.store-product-slides,.store-product-slides img{width:100%;height:100%}.store-product-slides img{display:block;object-fit:cover}.store-product-slides img[hidden]{display:none}.store-media-arrow,.store-product-eye{position:absolute;display:grid;place-items:center;border:1px solid rgba(255,255,255,.5);background:rgba(20,17,42,.62);color:#fff;box-shadow:0 6px 16px rgba(9,7,26,.2);backdrop-filter:blur(7px);cursor:pointer}.store-media-arrow{top:50%;width:28px;height:34px;transform:translateY(-50%)}.store-media-arrow.previous{left:6px;border-radius:8px}.store-media-arrow.next{right:6px;border-radius:8px}.store-product-eye{top:7px;right:7px;width:32px;height:32px;border-radius:50%}.store-product-eye.inline{position:static;width:28px;height:28px;border-color:#D9CCF8;background:#F2EDFF;color:var(--primary);box-shadow:none}.store-media-count{position:absolute;left:7px;bottom:7px;padding:4px 7px;border-radius:999px;background:rgba(20,17,42,.7);color:#fff;font-size:.6rem;font-weight:900;backdrop-filter:blur(7px)}.product-detail-modal{position:fixed;inset:0;z-index:1800;display:grid;place-items:center;padding:18px}.product-detail-modal[hidden]{display:none}.product-detail-backdrop{position:absolute;inset:0;background:rgba(10,8,28,.76);backdrop-filter:blur(5px)}.product-detail-panel{position:relative;display:grid;grid-template-columns:minmax(300px,.95fr) minmax(320px,1.05fr);width:min(880px,100%);max-height:min(760px,92vh);border-radius:16px;background:#fff;box-shadow:0 34px 100px rgba(7,5,25,.38);overflow:hidden}.product-detail-close{position:absolute;top:12px;right:12px;z-index:3;display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(18,15,42,.7);color:#fff;backdrop-filter:blur(8px);cursor:pointer}.product-detail-gallery{display:grid;align-content:center;padding:18px;background:#F3F0F8}.product-detail-image-wrap{position:relative;width:min(390px,100%);aspect-ratio:4/5;margin:auto;border-radius:12px;overflow:hidden;background:#E9E5F0;box-shadow:0 18px 42px rgba(24,18,52,.14)}.product-detail-image-wrap>img{display:block;width:100%;height:100%;object-fit:cover}.product-detail-placeholder{display:grid;place-items:center;width:100%;height:100%;color:#AAA2B8;font-size:2rem}.product-detail-placeholder[hidden],.product-detail-image-wrap>img[hidden],.product-detail-arrow[hidden]{display:none}.product-detail-arrow{position:absolute;top:50%;display:grid;place-items:center;width:38px;height:44px;border:0;border-radius:9px;background:rgba(18,15,42,.67);color:#fff;transform:translateY(-50%);cursor:pointer}.product-detail-arrow.previous{left:9px}.product-detail-arrow.next{right:9px}.product-detail-dots{display:flex;justify-content:center;gap:5px;min-height:8px;margin-top:10px}.product-detail-dots button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#C9C3D3}.product-detail-dots button.is-active{width:20px;border-radius:999px;background:var(--primary)}.product-detail-content{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:34px}.product-detail-content h2{margin:8px 0 10px;font-size:1.8rem;line-height:1.05}.product-detail-content p{margin:0;color:var(--muted);line-height:1.65}.product-detail-price{margin:20px 0;color:var(--dark2);font-size:1.7rem;font-weight:950}.product-detail-content .btn{min-width:190px;margin-top:14px}.detail-quantity-control{display:grid;grid-template-columns:44px minmax(76px,1fr) 44px;width:min(260px,100%);margin-top:4px;border:1px solid #D9D0FF;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 12px 28px rgba(124,61,255,.10)}.detail-quantity-control[hidden]{display:none}.detail-quantity-control button{display:grid;place-items:center;min-height:44px;border:0;background:#F8F6FF;color:var(--primary);font-weight:950;cursor:pointer}.detail-quantity-control button:last-child{background:linear-gradient(135deg,var(--primary),var(--pink));color:#fff}.detail-quantity-control input{min-height:44px;border:0;border-left:1px solid #EEE8FF;border-right:1px solid #EEE8FF;text-align:center;font-weight:950;font-size:1rem}.product-detail-description{display:grid;gap:5px;width:100%;margin-top:18px;padding-top:15px;border-top:1px solid var(--line)}.product-detail-description>span{color:var(--primary);font-size:.68rem;font-weight:950;text-transform:uppercase;letter-spacing:.03em}
@media(max-width:700px){.store-product-media{border-radius:8px}.store-media-arrow{width:24px;height:30px}.store-product-eye{top:5px;right:5px;width:29px;height:29px}.store-media-count{left:5px;bottom:5px}.product-detail-modal{align-items:end;padding:0}.product-detail-panel{grid-template-columns:1fr;width:100%;max-height:94dvh;border-radius:18px 18px 0 0;overflow-y:auto}.product-detail-gallery{padding:12px}.product-detail-image-wrap{width:min(310px,72vw);max-height:50dvh}.product-detail-content{padding:20px 18px 24px}.product-detail-content h2{font-size:1.45rem}.product-detail-content p{font-size:.84rem}.product-detail-price{margin:14px 0;font-size:1.35rem}.product-detail-content .btn,.detail-quantity-control{width:100%}.product-detail-close{position:fixed;top:auto;right:12px;bottom:calc(94dvh - 48px)}}
.detail-quantity-control [data-detail-quantity-plus],
.detail-quantity-control [data-checkout-detail-plus]{
  background:#F8F6FF!important;
  color:var(--primary)!important;
  font-size:1.25rem!important;
  font-weight:950!important;
}
.detail-quantity-control [data-detail-quantity-plus]::after,
.detail-quantity-control [data-checkout-detail-plus]::after{
  content:none!important;
}

.public-preview-return{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 12px 28px rgba(22,18,54,.08)}
.public-preview-return .btn{min-height:38px;padding:9px 14px}
.public-preview-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.public-unpublish-form{margin:0}
.public-unpublish-btn{background:linear-gradient(135deg,#7C3CFF,#C044FF)!important;box-shadow:0 14px 30px rgba(124,60,255,.22)!important}
.public-unpublish-btn:hover{transform:translateY(-1px)}
.public-preview-return span{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}
.public-preview-return span i{color:var(--primary)}
.public-host-review-card{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);
  align-items:center;
  gap:28px;
  padding:28px 34px;
  border-top:1px solid var(--line);
  background:linear-gradient(135deg,#fff 0%,#F8F4FF 68%,#F2ECFF 100%);
}
.public-host-review-card .public-rsvp-head{margin:0}
.public-host-review-card .public-rsvp-head h2{
  margin-bottom:0;
}
.public-host-review-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.public-host-review-actions form{
  margin:0;
}
.public-host-review-actions .btn{
  width:100%;
  justify-content:center;
}
@media(max-width:900px){
  .public-host-review-card{grid-template-columns:1fr;gap:18px;padding:24px 28px}
}
@media(max-width:600px){
  .public-host-review-card{gap:14px;padding:18px 16px}
}
.public-preview-lock{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid rgba(124,60,255,.18);border-radius:10px;background:#F5F0FF;color:#6F32E5;font-size:.76rem;font-weight:900}
.public-preview-lock i{color:var(--primary)}
.public-rsvp-card.is-preview-locked input,
.public-rsvp-card.is-preview-locked button[disabled]{cursor:not-allowed}
.public-rsvp-card.is-preview-locked .public-rsvp-submit[disabled],
.public-rsvp-card.is-preview-locked [data-contribution-tab][disabled]{opacity:.55;box-shadow:none}
.public-rsvp-card.is-preview-locked .public-rsvp-options label>span{cursor:not-allowed}
.public-contribution-fieldset{display:contents;border:0;margin:0;padding:0}
.public-contribution-fieldset[disabled]{opacity:1}
.public-event-facts{grid-template-columns:repeat(auto-fit,minmax(142px,1fr));align-items:stretch}
.public-event-facts span{min-width:0;min-height:64px;align-content:center;align-items:center}
.public-event-facts strong{white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word;overflow-wrap:anywhere;font-size:.78rem;line-height:1.22}
.public-event-notes{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.public-event-notes .wide{grid-column:auto}
.public-event-notes span{min-width:0}
.public-event-notes strong{white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word;overflow-wrap:anywhere}
.public-featured-carousel{display:grid;gap:9px;margin-top:10px;overflow:hidden}
.public-featured-options{display:flex;width:100%;transition:transform .28s ease}
.public-featured-options article{position:relative;flex:0 0 100%;min-height:160px;display:grid;align-content:end;gap:4px;overflow:hidden;padding:14px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.1)}
.public-featured-options article:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,10,31,.06),rgba(14,10,31,.76));z-index:-1}
.public-featured-options img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}
.public-featured-options span{color:#FF70BB;font-size:.58rem;font-weight:950;text-transform:uppercase}
.public-featured-options strong{color:#fff;font-size:1rem;line-height:1.18}
.public-featured-options small{color:rgba(255,255,255,.82);font-size:.82rem;font-weight:900}
.public-featured-controls{display:flex;align-items:center;justify-content:center;gap:10px}
.public-featured-controls>button{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:rgba(255,255,255,.12);color:#fff;backdrop-filter:blur(8px);cursor:pointer}
.public-featured-dots{display:flex;align-items:center;justify-content:center;gap:6px}
.public-featured-dots button{width:7px;height:7px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.38);cursor:pointer}
.public-featured-dots button.is-active{width:22px;background:#FF70BB}
.public-contribution-card{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);align-items:start;gap:16px;padding:30px;background:linear-gradient(180deg,#fff,#FBFAFF)}
.public-contribution-card .public-rsvp-head,
.public-contribution-card .public-flow-success,
.public-contribution-card .public-contribution-toolbar,
.public-contribution-card .public-contribution-panel,
.public-contribution-card .public-preview-lock{grid-column:1/2}
.public-contribution-card .public-contribution-guest-summary,
.public-contribution-card .public-identity-warning,
.public-contribution-card .public-contribution-total-side,
.public-contribution-card .public-payment-breakdown,
.public-contribution-card .public-rsvp-submit{grid-column:2/3}
.public-contribution-card .public-contribution-guest-summary{position:sticky;top:16px}
.public-contribution-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}
.public-contribution-toolbar .public-contribution-tabs{margin:0;min-width:0}
.public-contribution-total.compact{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin:0;padding:9px 12px;min-width:190px;white-space:nowrap}
.public-contribution-total.compact span{font-size:.68rem}
.public-contribution-total.compact strong{font-size:1rem}
.public-contribution-total-side{display:none!important}
.public-contribution-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,245px));justify-content:start;gap:12px;border:0!important;overflow:visible!important}
.public-contribution-row{display:grid!important;grid-template-columns:86px minmax(0,1fr)!important;grid-template-rows:auto 1fr auto;align-items:stretch;gap:8px 10px!important;width:245px;min-height:178px;height:178px;padding:12px!important;border:1px solid var(--line)!important;border-radius:12px;background:#fff;box-shadow:0 12px 30px rgba(20,18,50,.08)}
.public-contribution-row:not(.has-image){grid-template-columns:minmax(0,1fr)!important}
.public-contribution-row:last-child{border-bottom:1px solid var(--line)!important}
.public-contribution-image{grid-row:1/4;width:86px!important;height:100%;min-height:154px;border-radius:10px!important}
.public-contribution-copy{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px 7px;min-width:0}
.public-contribution-eye{display:grid;place-items:center;width:28px;height:28px;border:1px solid #D9CCF8;border-radius:50%;background:#F2EDFF;color:var(--primary);box-shadow:0 8px 18px rgba(124,60,255,.12);cursor:pointer}
.public-contribution-eye i{font-size:.85rem}
.public-contribution-row strong{font-size:.95rem!important;line-height:1.18}
.public-contribution-row small{display:-webkit-box!important;grid-column:1/-1;min-height:34px;margin-top:0;font-size:.72rem!important;line-height:1.32;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.public-contribution-row>span{align-self:end;text-align:left!important;font-size:.95rem!important}
.public-contribution-row label{align-self:end}
.public-contribution-row label small{text-align:left!important}
.public-quantity-field{display:grid;justify-self:start;gap:4px;width:126px;margin:0}
.public-quantity-control{display:grid;grid-template-columns:30px 42px 30px;width:102px;overflow:hidden;border:1px solid #DCD4F3;border-radius:9px;background:#fff}
.public-quantity-control button{display:grid;place-items:center;min-height:30px;border:0;background:#F8F6FF;color:var(--primary);font-size:.9rem;font-weight:950;line-height:1;cursor:pointer}
.public-quantity-control button:last-child{background:#F1EDFF}
.public-quantity-control input{width:100%!important;min-width:0;min-height:30px!important;padding:2px!important;border:0!important;border-left:1px solid #EFEAFF!important;border-right:1px solid #EFEAFF!important;border-radius:0!important;background:#fff;text-align:center;font-size:.78rem!important;font-weight:900;appearance:textfield}
.public-quantity-control input::-webkit-outer-spin-button,
.public-quantity-control input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}
.public-quantity-control button:focus-visible,
.public-quantity-control input:focus-visible{position:relative;z-index:1;outline:2px solid rgba(124,60,255,.18);outline-offset:-2px}
.public-contribution-preview-modal{position:fixed;inset:0;z-index:1850;display:grid;place-items:center;padding:18px}
.public-contribution-preview-modal[hidden]{display:none}
.public-contribution-preview-backdrop{position:absolute;inset:0;background:rgba(10,8,28,.74);backdrop-filter:blur(5px)}
.public-contribution-preview-panel{position:relative;display:grid;grid-template-columns:minmax(220px,.85fr) minmax(280px,1fr);width:min(760px,100%);overflow:hidden;border-radius:16px;background:#fff;box-shadow:0 34px 100px rgba(7,5,25,.38)}
.public-contribution-preview-close{position:absolute;top:12px;right:12px;z-index:2;display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(18,15,42,.7);color:#fff;backdrop-filter:blur(8px);cursor:pointer}
.public-contribution-preview-media{display:grid;place-items:center;min-height:360px;background:#F3F0F8}
.public-contribution-preview-media img{width:100%;height:100%;object-fit:cover}
.public-contribution-preview-media [data-public-preview-placeholder]{display:grid;place-items:center;width:100%;height:100%;color:#A79DB8;font-size:2.4rem}
.public-contribution-preview-media img[hidden],
.public-contribution-preview-media [hidden]{display:none}
.public-contribution-preview-content{display:grid;align-content:center;gap:10px;padding:34px}
.public-contribution-preview-content h3{margin:0;color:var(--dark2);font-size:1.7rem;line-height:1.08}
.public-contribution-preview-content p{margin:0;color:var(--muted);line-height:1.6}
.public-contribution-preview-content strong{color:var(--primary);font-size:1.45rem}
@media(max-width:900px){
  .public-contribution-card{grid-template-columns:1fr;padding:26px 22px}
  .public-contribution-card .public-rsvp-head,
  .public-contribution-card .public-flow-success,
  .public-contribution-card .public-contribution-toolbar,
  .public-contribution-card .public-contribution-panel,
  .public-contribution-card .public-preview-lock,
  .public-contribution-card .public-contribution-guest-summary,
  .public-contribution-card .public-identity-warning,
  .public-contribution-card .public-contribution-total-side,
  .public-contribution-card .public-payment-breakdown,
  .public-contribution-card .public-rsvp-submit{grid-column:1/-1}
  .public-contribution-card .public-contribution-guest-summary{position:static}
  .public-contribution-list{grid-template-columns:repeat(auto-fill,minmax(220px,220px))}
  .public-contribution-row{width:220px}
}
@media(max-width:600px){
  .public-featured-options article{min-height:138px}
  .public-contribution-card{padding:20px 16px}
  .public-contribution-toolbar{grid-template-columns:1fr;gap:8px}
  .public-contribution-tabs{margin:0}
  .public-contribution-total.compact{justify-content:space-between;width:100%;min-width:0}
  .public-contribution-list{grid-template-columns:1fr}
  .public-contribution-row{grid-template-columns:76px minmax(0,1fr)!important;width:100%;min-height:158px;height:158px;padding:10px!important}
  .public-contribution-row:not(.has-image){grid-template-columns:minmax(0,1fr)!important}
  .public-contribution-image{width:76px!important;min-height:124px}
  .public-contribution-eye{width:26px;height:26px}
  .public-quantity-field{width:116px}
  .public-quantity-control{grid-template-columns:28px 38px 28px;width:94px}
  .public-quantity-control button,.public-quantity-control input{min-height:28px!important}
  .public-contribution-preview-modal{align-items:end;padding:0}
  .public-contribution-preview-panel{grid-template-columns:1fr;width:100%;max-height:92dvh;border-radius:18px 18px 0 0;overflow-y:auto}
  .public-contribution-preview-media{min-height:260px;max-height:48dvh}
  .public-contribution-preview-content{padding:22px 18px 26px}
  .public-contribution-preview-content h3{font-size:1.35rem}
}
.public-flow-success,
.public-contribution-guest-summary,
.public-identity-warning{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border-radius:10px;font-size:.8rem;line-height:1.35}
.public-flow-success{border:1px solid #BFEBD2;background:#F1FFF7;color:#087040;font-weight:850}
.public-flow-success i{color:var(--success);font-size:1rem}
.public-contribution-guest-summary{border:1px solid #D9D0FF;background:#F8F6FF}
.public-contribution-guest-summary>i{color:var(--primary);font-size:1.05rem}
.public-contribution-guest-summary strong,
.public-contribution-guest-summary span{display:block}
.public-contribution-guest-summary strong{color:var(--dark2);font-size:.86rem}
.public-contribution-guest-summary span{margin-top:2px;color:var(--muted);font-size:.74rem}
.public-identity-warning{border:1px solid #FFD8A8;background:#FFF8EA;color:#8B6500;font-weight:850}
.public-identity-warning[hidden]{display:none}
.public-identity-warning i{font-size:1rem}
.contribution-preview-button{border:1px solid #BFEAFF;background:#EAF8FF;color:#0878BC;box-shadow:0 8px 18px rgba(15,132,204,.12)}
.contribution-preview-button i{font-size:1rem}
.gift-option-card .gift-card-actions .gift-images-button{border:2px solid #7C3DFF!important;box-shadow:0 0 0 1px rgba(124,61,255,.12),0 7px 15px rgba(124,61,255,.13)}
.gift-option-card .gift-card-actions .contribution-preview-button{border:2px solid #0785C8!important;box-shadow:0 0 0 1px rgba(7,133,200,.1),0 7px 15px rgba(7,133,200,.12)}
.gift-option-card .gift-card-actions .mini-edit{border:2px solid #3977ED!important;box-shadow:0 0 0 1px rgba(57,119,237,.1),0 7px 15px rgba(57,119,237,.14)}
.gift-option-card .gift-card-actions .mini-delete{border:2px solid #D91F5D!important;box-shadow:0 0 0 1px rgba(217,31,93,.12),0 7px 15px rgba(217,31,93,.17)}
@media(max-width:600px){
  .public-preview-return{position:sticky;top:8px;z-index:20;align-items:stretch}
  .public-preview-actions{width:100%;display:grid;grid-template-columns:1fr;gap:8px}
  .public-preview-actions .btn{width:100%}
  .public-preview-return .btn{flex:1;justify-content:center}
  .public-preview-return span{display:none}
  .public-host-review-card{grid-column:1/-1}
  .public-host-review-actions{grid-template-columns:1fr}
  .public-event-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .public-event-facts span{min-height:68px;padding:10px 9px}
  .public-event-facts strong{font-size:.74rem}
  .public-event-notes{grid-template-columns:1fr}
}

.selected-quantity-control button[data-selected-quantity-plus]{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  min-width:32px!important;
  color:transparent!important;
  font-size:0!important;
  line-height:1!important;
}

.selected-quantity-control button[data-selected-quantity-plus]::before{
  content:"+"!important;
  display:grid!important;
  place-items:center!important;
  color:var(--primary)!important;
  font-size:1.12rem!important;
  font-weight:950!important;
  line-height:1!important;
}

.quantity-control button[data-quantity-plus]{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  min-width:32px!important;
  background:#F8F7FC!important;
  color:transparent!important;
  font-size:0!important;
  line-height:1!important;
}

.quantity-control button[data-quantity-plus]::before{
  content:"+"!important;
  position:absolute!important;
  inset:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:var(--primary)!important;
  font-size:1.12rem!important;
  font-weight:950!important;
  line-height:1!important;
  text-align:center!important;
}

/* Vista publica: aportes mas amplios, comerciales y sin espacios muertos */
.public-contribution-card{
  grid-template-columns:1fr!important;
  gap:18px!important;
  padding:clamp(18px,3vw,34px)!important;
  background:linear-gradient(180deg,#FFFFFF 0%,#FBFAFF 58%,#F7F4FF 100%)!important;
}
.public-contribution-card .public-rsvp-head,
.public-contribution-card .public-flow-success,
.public-contribution-card .public-contribution-guest-summary,
.public-contribution-card .public-identity-warning,
.public-contribution-card .public-contribution-toolbar,
.public-contribution-card .public-contribution-panel,
.public-contribution-card .public-preview-lock,
.public-contribution-card .public-payment-breakdown,
.public-contribution-card .public-rsvp-submit{
  grid-column:1/-1!important;
}
.public-contribution-card .public-rsvp-head{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:12px 14px;
  padding-bottom:2px;
}
.public-contribution-card .public-rsvp-head p{
  grid-column:2;
  max-width:760px;
  margin:0;
}
.public-contribution-card .public-contribution-guest-summary{
  position:static!important;
  width:100%;
}
.public-contribution-toolbar{
  position:sticky;
  top:8px;
  z-index:12;
  grid-template-columns:minmax(0,1fr) auto!important;
  padding:10px;
  border:1px solid rgba(124,60,255,.1);
  border-radius:14px;
  background:rgba(255,255,255,.9);
  box-shadow:0 16px 34px rgba(22,18,54,.08);
  backdrop-filter:blur(10px);
}
.public-contribution-tabs{
  display:flex!important;
  align-items:center;
  gap:8px!important;
  overflow-x:auto;
  padding:2px 2px 5px!important;
  scrollbar-width:thin;
}
.public-contribution-tabs button{
  min-height:40px;
  border-radius:999px!important;
  box-shadow:0 8px 18px rgba(22,18,54,.05);
}
.public-contribution-total.compact{
  min-height:44px;
  border:1px solid #E4DCF8;
  border-radius:999px;
  background:#fff;
  box-shadow:0 10px 22px rgba(124,60,255,.08);
}
.public-contribution-panel{
  min-width:0;
}
.public-contribution-panel h3{
  margin:2px 0 12px!important;
  color:var(--dark2);
  font-size:1.05rem!important;
}
.public-contribution-list{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr))!important;
  justify-content:stretch!important;
  align-items:stretch!important;
  gap:14px!important;
  width:100%!important;
}
.public-contribution-row{
  position:relative;
  width:100%!important;
  height:100%!important;
  min-height:218px!important;
  grid-template-columns:minmax(92px,32%) minmax(0,1fr)!important;
  grid-template-rows:auto minmax(64px,1fr) auto!important;
  gap:10px 12px!important;
  padding:14px!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#fff,#FEFCFF)!important;
  box-shadow:0 18px 40px rgba(22,18,54,.1)!important;
}
.public-contribution-row:hover{
  transform:translateY(-2px);
  box-shadow:0 24px 54px rgba(22,18,54,.14)!important;
}
.public-contribution-row.has-image .public-contribution-image{
  grid-column:1;
  grid-row:1/4;
}
.public-contribution-image{
  width:100%!important;
  height:100%!important;
  min-height:190px!important;
  border-radius:13px!important;
  object-fit:cover!important;
}
.public-contribution-copy{
  grid-column:2;
  grid-row:1/3;
  align-content:start;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:7px 8px!important;
}
.public-contribution-row:not(.has-image){
  grid-template-columns:minmax(0,1fr)!important;
}
.public-contribution-row:not(.has-image) .public-contribution-copy{
  grid-column:1/-1;
}
.public-contribution-row strong{
  font-size:1rem!important;
}
.public-contribution-row small{
  min-height:42px!important;
  font-size:.76rem!important;
  -webkit-line-clamp:3!important;
}
.public-contribution-row>span{
  grid-column:2;
  grid-row:3;
  align-self:center!important;
  color:var(--dark2);
  font-size:1.05rem!important;
}
.public-contribution-row label{
  grid-column:2;
  grid-row:3;
  justify-self:end!important;
  align-self:center!important;
}
.public-contribution-row:not(.has-image)>span{
  grid-column:1;
}
.public-contribution-row:not(.has-image) label{
  grid-column:1;
}
.public-quantity-field{
  justify-items:end;
}
.public-quantity-field small{
  min-height:0!important;
  font-size:.62rem!important;
  text-transform:uppercase;
}
.public-custom-amount-field{
  display:grid;
  grid-column:2;
  grid-row:3;
  justify-self:end!important;
  align-self:center!important;
  gap:4px;
  width:138px;
  margin:0;
}
.public-custom-amount-field[hidden]{
  display:none!important;
}
.public-custom-amount-field small{
  min-height:0!important;
  text-align:left!important;
  color:var(--muted);
  font-size:.62rem!important;
  font-weight:900;
  text-transform:uppercase;
}
.public-custom-amount-field input{
  width:100%!important;
  min-height:32px!important;
  padding:5px 9px!important;
  border:1px solid #DCD4F3!important;
  border-radius:9px!important;
  background:#fff!important;
  color:var(--dark2);
  font-size:.78rem!important;
  font-weight:900;
  text-align:right;
}
.public-contribution-row:not(.has-image) .public-custom-amount-field{
  grid-column:1;
}
.public-contribution-row.is-partial-gift .public-quantity-field{
  display:none!important;
}
.public-payment-panel{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:12px;
  padding:18px;
  border:1px solid #D9D0FF;
  border-radius:16px;
  background:#fff;
}
.public-payment-panel[hidden]{
  display:none;
}
@media(max-width:900px){
  .public-contribution-toolbar{
    position:static;
    grid-template-columns:1fr!important;
  }
  .public-contribution-total.compact{
    justify-content:space-between!important;
    width:100%!important;
    min-width:0!important;
  }
}
@media(max-width:640px){
  .public-contribution-card{
    padding:16px 12px!important;
  }
  .public-contribution-card .public-rsvp-head{
    grid-template-columns:auto minmax(0,1fr);
  }
  .public-contribution-card .public-rsvp-head p{
    grid-column:1/-1;
  }
  .public-contribution-list{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .public-contribution-row{
    min-height:172px!important;
    grid-template-columns:82px minmax(0,1fr)!important;
    padding:12px!important;
  }
  .public-contribution-image{
    min-height:148px!important;
  }
  .public-contribution-row strong{
    font-size:.94rem!important;
  }
  .public-contribution-row small{
    min-height:36px!important;
    font-size:.7rem!important;
    -webkit-line-clamp:2!important;
  }
  .public-contribution-row>span{
    font-size:.92rem!important;
  }
  .public-quantity-control{
    width:94px!important;
  }
  .public-custom-amount-field{
    width:118px;
  }
}

/* Homologa el tamano de las tarjetas de aportes en invitacion y vista previa etapa 3 */
.public-contribution-list{
  grid-template-columns:repeat(auto-fill,minmax(270px,320px))!important;
  justify-content:start!important;
}
.public-contribution-row{
  width:100%!important;
  max-width:320px!important;
  min-height:218px!important;
}
.contribution-preview-panel{
  width:min(700px,100%)!important;
}
.contribution-preview-guest-card{
  width:min(320px,100%)!important;
  max-width:320px!important;
  min-height:218px!important;
  justify-self:center!important;
}
@media(min-width:1180px){
  .public-contribution-list{
    grid-template-columns:repeat(auto-fill,minmax(290px,320px))!important;
  }
}
@media(max-width:640px){
  .public-contribution-list{
    grid-template-columns:1fr!important;
  }
  .public-contribution-row,
  .contribution-preview-guest-card{
    max-width:none!important;
    width:100%!important;
    min-height:172px!important;
  }
}

/* Invitacion publica: accesos de aporte completos y compactos en celular. */
@media(max-width:640px){
  .public-contribution-toolbar{
    gap:7px!important;
    padding:7px!important;
  }
  .public-contribution-tabs{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(68px,1fr));
    gap:5px!important;
    width:100%;
    overflow:visible!important;
    padding:0!important;
  }
  .public-contribution-tabs button{
    display:flex!important;
    justify-content:center;
    gap:4px!important;
    min-width:0;
    min-height:34px!important;
    padding:5px 4px!important;
    font-size:.64rem!important;
    line-height:1!important;
    white-space:nowrap;
  }
  .public-contribution-tabs button i{
    font-size:.78rem;
  }
  .public-contribution-total.compact{
    min-height:36px!important;
    padding:6px 11px!important;
  }
  .public-contribution-total.compact span{
    font-size:.62rem!important;
  }
  .public-contribution-total.compact strong{
    font-size:.86rem!important;
  }

  /* Cada dato ocupa su propia fila para evitar cruces en las tarjetas de aporte. */
  .public-contribution-row,
  .public-contribution-row.has-image{
    grid-template-rows:auto minmax(34px,1fr) auto auto!important;
    min-height:232px!important;
  }
  .public-contribution-row.has-image .public-contribution-image{
    grid-row:1/5!important;
    min-height:208px!important;
  }
  .public-contribution-copy{
    grid-row:1/3!important;
  }
  .public-contribution-row>span{
    grid-row:3!important;
    align-self:end!important;
    margin-top:4px;
  }
  .public-contribution-row label,
  .public-contribution-row .public-custom-amount-field{
    grid-row:4!important;
    justify-self:stretch!important;
    align-self:end!important;
    width:100%!important;
    margin-top:2px!important;
  }
  .public-contribution-row label small,
  .public-contribution-row .public-custom-amount-field small{
    min-height:0!important;
    margin:0 0 3px!important;
  }
  .public-contribution-row .public-custom-amount-field input{
    min-height:34px!important;
  }
  .public-contribution-row .public-quantity-field{
    justify-items:start!important;
  }
  .public-contribution-row:not(.has-image) .public-contribution-copy{
    grid-row:1/3!important;
  }

  .public-contribution-panel-heading{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin:2px 0 10px;
  }
  .public-contribution-panel-heading h3{
    min-width:0;
    margin:0!important;
  }
  .public-contribution-navigation{
    display:flex;
    flex:0 0 auto;
    gap:5px;
  }
  .public-contribution-navigation button{
    display:grid;
    width:29px;
    height:29px;
    place-items:center;
    padding:0;
    border:1px solid #DDD3F7;
    border-radius:8px;
    background:#fff;
    color:var(--primary);
    box-shadow:0 7px 16px rgba(65,37,130,.1);
    cursor:pointer;
    font-size:.76rem;
  }
  .public-contribution-navigation button:active{
    transform:scale(.94);
  }
  .public-contribution-list[data-public-contribution-list]{
    display:flex!important;
    gap:10px!important;
    overflow-x:auto!important;
    overscroll-behavior-x:contain;
    padding:1px 1px 8px!important;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .public-contribution-list[data-public-contribution-list]::-webkit-scrollbar{
    display:none;
  }
  .public-contribution-list[data-public-contribution-list] .public-contribution-row{
    flex:0 0 100%;
    scroll-snap-align:start;
  }
}

@media(min-width:641px){
  .public-contribution-panel-heading h3{margin:2px 0 12px!important}
  .public-contribution-navigation{display:none}
}

/* Selector premium para la imagen personalizada de la invitacion. */
.invitation-premium-file{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);align-items:center;gap:10px;margin-top:10px;padding:10px;border:1px solid #DED2F7;border-radius:16px;background:linear-gradient(135deg,#FBF9FF 0%,#F5F0FF 100%);box-shadow:0 12px 28px rgba(65,35,123,.08)}
.invitation-premium-file>input[type=file]{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.invitation-premium-file-button{position:relative;display:flex!important;align-items:center;gap:10px;min-width:230px;margin:0!important;padding:10px 12px!important;border:1px solid #6E42E8!important;border-radius:12px!important;background:linear-gradient(110deg,#642DE5 0%,#913DF0 54%,#E23AB5 100%)!important;color:#FFF!important;cursor:pointer;overflow:hidden;box-shadow:0 10px 24px rgba(112,46,212,.24);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.invitation-premium-file-button:before{content:"";position:absolute;top:-70%;bottom:-70%;left:-35%;width:22%;background:rgba(255,255,255,.28);transform:rotate(18deg);transition:left .5s ease}
.invitation-premium-file-button:hover{transform:translateY(-1px);filter:saturate(1.08);box-shadow:0 14px 30px rgba(112,46,212,.3)}
.invitation-premium-file-button:hover:before{left:118%}
.invitation-premium-file-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid rgba(255,255,255,.28);border-radius:10px;background:rgba(255,255,255,.16);font-size:1rem}
.invitation-premium-file-button>span:nth-child(2){display:grid;gap:1px;min-width:0;text-align:left}
.invitation-premium-file-button strong{font-size:.76rem;font-weight:950;line-height:1.2}
.invitation-premium-file-button small{color:rgba(255,255,255,.78)!important;font-size:.58rem!important;font-weight:750;line-height:1.2}
.invitation-premium-file-arrow{margin-left:auto;font-size:.75rem}
.invitation-premium-file-name{min-width:0;padding:0 6px;color:#777086;font-size:.7rem;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.invitation-premium-file-name.has-file{color:#6230D5;font-weight:900}
.invitation-premium-file>input[type=file]:focus-visible+.invitation-premium-file-button{outline:3px solid rgba(124,61,255,.22);outline-offset:3px}
@media(max-width:600px){.invitation-premium-file{grid-template-columns:1fr;padding:8px}.invitation-premium-file-button{width:100%;min-width:0}.invitation-premium-file-name{padding:3px 5px 2px;text-align:center}}

/* Editor de encuadre de invitacion: control preciso y distribucion movil. */
.invitation-image-editor label>span{justify-content:flex-start}
.invitation-image-editor output{margin-left:auto;padding:3px 7px;border:1px solid #DCCEFF;border-radius:999px;background:#F0E9FF;color:#6C32D7;font-size:.59rem;font-weight:950}
.invitation-image-editor input[type=range]{height:22px;cursor:grab}
.invitation-image-editor input[type=range]:active{cursor:grabbing}
.invitation-image-editor input[type=range]{appearance:none;-webkit-appearance:none;padding:0;border:0;background:transparent;touch-action:none}
.invitation-image-editor input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:linear-gradient(90deg,#DCCFFF,#9C72F5 50%,#DCCFFF)}
.invitation-image-editor input[type=range]::-webkit-slider-thumb{width:20px;height:20px;margin-top:-7px;border:3px solid #FFF;border-radius:50%;background:#7135E7;box-shadow:0 2px 8px rgba(68,35,135,.35);-webkit-appearance:none}
.invitation-image-editor input[type=range]::-moz-range-track{height:6px;border:0;border-radius:999px;background:linear-gradient(90deg,#DCCFFF,#9C72F5 50%,#DCCFFF)}
.invitation-image-editor input[type=range]::-moz-range-thumb{width:15px;height:15px;border:3px solid #FFF;border-radius:50%;background:#7135E7;box-shadow:0 2px 8px rgba(68,35,135,.35)}
.invitation-image-current>img{will-change:transform,object-position;transform-origin:50% 50%}
@media(max-width:700px){
 .invitation-image-upload{display:grid;grid-template-columns:1fr}
 .invitation-image-upload>.invitation-image-current{justify-self:center;width:min(360px,100%)}
 .invitation-image-editor{grid-template-columns:1fr!important;gap:8px;padding:12px;border-radius:15px;background:linear-gradient(180deg,#FCFAFF,#F6F1FF);box-shadow:0 12px 28px rgba(71,39,133,.08)}
 .invitation-image-editor>div{grid-column:1!important;padding-bottom:8px;border-bottom:1px solid #E5DCF7}
 .invitation-image-editor>label{grid-template-columns:minmax(105px,.42fr) minmax(0,1fr);align-items:center;gap:10px;min-height:42px;padding:7px 9px;border:1px solid #E3D9F6;border-radius:11px;background:#FFF}
 .invitation-image-editor label>span{min-width:0;white-space:nowrap}
 .invitation-image-editor input[type=range]{min-width:0;width:100%;height:32px}
}

/* Navegacion XS fija de etapas durante la edicion en celular. */
@media(max-width:700px){
 body:has(.event-stage-card){padding-bottom:72px}
 .event-stage-card .stage-progress,
 .event-stage-card.has-invitation-status .stage-progress{position:fixed;z-index:1800;right:50%;bottom:calc(8px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,38px);gap:5px;width:auto;padding:6px;border:1px solid rgba(205,190,239,.92);border-radius:999px;background:rgba(255,255,255,.94);box-shadow:0 15px 38px rgba(22,13,49,.24);transform:translateX(50%);overflow:visible;backdrop-filter:blur(14px)}
 .event-stage-card .stage-progress-item{display:grid;place-items:center;width:38px;min-width:38px;height:34px;min-height:34px;padding:0;border:0!important;border-radius:999px;background:transparent;color:#756D85;box-shadow:none}
 .event-stage-card .stage-progress-item:hover{filter:none;box-shadow:none}
 .event-stage-card .stage-progress-icon,.event-stage-card .stage-progress-item>strong{display:none!important}
 .event-stage-card .stage-step-number{width:26px;height:26px;margin:0;border:0;background:#F2EEFA;color:#716880;font-size:.68rem;box-shadow:none}
 .event-stage-card .stage-progress-item.is-done{background:#F0FFF6;color:#0E9C63}
 .event-stage-card .stage-progress-item.is-done .stage-step-number{background:#E1F9EC;color:#0B9B61}
 .event-stage-card .stage-progress-item.is-current{background:linear-gradient(135deg,#7435ED,#DA3BBC);box-shadow:0 7px 16px rgba(114,48,220,.3)}
 .event-stage-card .stage-progress-item.is-current .stage-step-number{background:#FFF;color:#7134DF;font-weight:950}
}

/* Confirmacion premium para quitar la imagen de invitacion. */
body.invitation-remove-confirm-open{overflow:hidden}
.invitation-remove-confirm[hidden]{display:none!important}
.invitation-remove-confirm{position:fixed;inset:0;z-index:4000;display:grid;place-items:center;padding:18px}
.invitation-remove-confirm-backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(15,10,35,.7);backdrop-filter:blur(7px);cursor:default}
.invitation-remove-confirm>section{position:relative;display:grid;justify-items:center;width:min(410px,100%);padding:28px 26px 22px;border:1px solid rgba(255,255,255,.7);border-radius:22px;background:radial-gradient(circle at 50% 0,#FFF 0%,#FFF8FC 55%,#FAF6FF 100%);box-shadow:0 32px 100px rgba(8,5,25,.42);text-align:center}
.invitation-remove-confirm-icon{position:relative;display:grid;place-items:center;width:58px;height:58px;margin-bottom:13px;border:1px solid #FFC6D4;border-radius:18px;background:linear-gradient(135deg,#FFF0F5,#FFE3EC);color:#E22F5C;font-size:1.35rem;box-shadow:0 12px 28px rgba(217,45,85,.16)}
.invitation-remove-confirm-icon i:last-child{position:absolute;right:-5px;bottom:-5px;display:grid;place-items:center;width:24px;height:24px;border:3px solid #FFF;border-radius:50%;background:#E92F61;color:#FFF;font-size:.58rem}
.invitation-remove-confirm h3{margin:6px 0 8px;color:#201A31;font-size:1.28rem}
.invitation-remove-confirm p{max-width:320px;margin:0;color:#6E687D;font-size:.78rem;line-height:1.5}
.invitation-remove-confirm>section>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;margin-top:20px}
.invitation-remove-confirm>section>div .btn{justify-content:center;min-height:42px;border-radius:12px}
.invitation-remove-confirm-action{border:1px solid #E12E5B!important;background:linear-gradient(135deg,#E92F61,#C91F4C)!important;color:#FFF!important;box-shadow:0 10px 24px rgba(211,37,80,.24)}
@media(max-width:480px){.invitation-remove-confirm{align-items:end;padding:8px}.invitation-remove-confirm>section{width:100%;padding:23px 18px calc(18px + env(safe-area-inset-bottom));border-radius:22px}.invitation-remove-confirm-icon{width:52px;height:52px}.invitation-remove-confirm>section>div{grid-template-columns:1fr}.invitation-remove-confirm>section>div .invitation-remove-confirm-action{grid-row:1}.invitation-remove-confirm>section>div .btn{min-height:44px}}
@media(max-width:420px){
 .invitation-image-upload>.invitation-image-current{width:min(310px,100%)}
 .invitation-image-editor{padding:9px}
 .invitation-image-editor>label{grid-template-columns:1fr;gap:3px;padding:8px 10px}
 .invitation-image-editor label>span{width:100%}
 .invitation-image-editor input[type=range]{height:24px}
}

/* El detalle usa el mismo cierre circular de la tienda. */
.product-detail-close{width:42px;height:42px;border-radius:50%!important}
@media(max-width:600px){.product-detail-close{width:38px;height:38px;border-radius:50%!important}}

/* El detalle movil queda limpio, sin accesos flotantes superpuestos. */
@media(max-width:600px){
  body.product-detail-open .menu-toggle,
  body.product-detail-open .whatsapp-float{display:none!important}
}

/* Ancho movil real para las cuatro etapas y sus ventanas, sin franjas laterales. */
@media(max-width:700px){
  html{width:100%;max-width:100%;overflow-x:hidden}
  body:has(.event-stage-card){position:relative;width:100%;min-width:0;max-width:100%;overflow-x:hidden}
  body:has(.event-stage-card) .shell,
  body:has(.event-stage-card) .main{width:100%;min-width:0;max-width:100%;margin-right:0;margin-left:0}
  body:has(.event-stage-card) .main{padding-right:8px;padding-left:8px}
  body:has(.event-stage-card) .event-stage-card,
  body:has(.event-stage-card) .event-stage-card + .form-card,
  body:has(.event-stage-card) .event-stage-card + .store-stage{width:100%;min-width:0;max-width:100%;margin-right:0;margin-left:0}
  body:has(.event-stage-card) .event-stage-card + .form-card,
  body:has(.event-stage-card) .event-stage-card + .store-stage{padding-right:10px;padding-left:10px}
  body:has(.event-stage-card) .store-modal,
  body:has(.event-stage-card) .product-detail-modal{right:0;left:0;width:auto;max-width:none}
  body:has(.event-stage-card) .store-modal-panel{width:100%;min-width:0;max-width:100%;margin:0}
  body:has(.event-stage-card) .product-detail-panel{width:100%;min-width:0;max-width:100%;margin:0}
  body:has(.event-stage-card) .invitation-image-adjust-pill[open]>.invitation-image-editor,
  body:has(.event-stage-card) .invitation-image-filter-pill[open]>.invitation-image-filter-panel{width:auto!important;max-width:none!important}
  body:has(.event-stage-card) .store-modal{inset:0;padding:0}
  body:has(.event-stage-card) .store-modal-panel{width:100%;height:100dvh;max-width:100%;max-height:100dvh;border:0;border-radius:0;box-shadow:none}
}

/* Detalle de producto contenido y optimizado para la pantalla del celular. */
@media(max-width:600px){
  .product-detail-modal{align-items:stretch;padding:0}
  .product-detail-panel{display:block;width:100%;max-width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0;background:#fff;box-shadow:none;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}
  .product-detail-close{position:absolute;z-index:8;top:calc(12px + env(safe-area-inset-top));right:12px;bottom:auto;width:38px;height:38px;border-radius:50%!important}
  .product-detail-gallery{min-height:0;padding:calc(12px + env(safe-area-inset-top)) 12px 9px;background:linear-gradient(145deg,#f5f1fb,#eee9f7)}
  .product-detail-image-wrap{width:min(330px,calc(100vw - 42px));max-height:43dvh;border-radius:15px;box-shadow:0 14px 34px rgba(35,20,75,.15)}
  .product-detail-content{padding:17px 16px calc(20px + env(safe-area-inset-bottom))}
  .product-detail-content h2{padding-right:2px;font-size:1.3rem;line-height:1.08}
  .product-detail-price{margin:12px 0;font-size:1.25rem}
  .detail-quantity-control{min-height:40px;margin-top:2px}
  .detail-quantity-control button,.detail-quantity-control input{min-height:40px;height:40px}
  .product-detail-description{margin-top:14px;padding-top:12px}
}

/* Controles XS del carrito del evento en celular. */
@media(max-width:600px){
  body.store-cart-view-open .selected-quantity-control{grid-template-columns:24px 34px 24px;border-radius:8px}
  body.store-cart-view-open .selected-quantity-control button{width:24px;min-width:24px;height:27px;min-height:27px;font-size:.7rem}
  body.store-cart-view-open .selected-quantity-control input{width:34px;min-width:34px;height:27px;min-height:27px;padding:1px;font-size:.72rem}
  body.store-cart-view-open .selected-detail-button,
  body.store-cart-view-open .selected-product-delete{width:27px;min-width:27px;height:27px;min-height:27px;padding:0;border-radius:8px;font-size:.7rem}
  body.store-cart-view-open .selected-product-actions{gap:5px}
}

/* Acciones compactas para imagen de invitacion. */
.invitation-image-actions{position:relative;z-index:30;display:flex;align-items:center;justify-content:flex-end;gap:8px;width:min(640px,100%);margin-top:9px}
.invitation-image-actions .invitation-image-remove{margin:0!important;border-radius:999px!important}
.invitation-image-adjust-pill{position:relative}
.invitation-image-adjust-pill[hidden]{display:none!important}
.invitation-image-adjust-pill>summary{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:8px 12px;list-style:none;border:1px solid #7B42EA;border-radius:999px;background:linear-gradient(135deg,#F4EEFF,#FFF);color:#6730D2;font-size:.71rem;font-weight:950;cursor:pointer;box-shadow:0 8px 18px rgba(91,46,180,.12);transition:background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}
.invitation-image-adjust-pill>summary::-webkit-details-marker{display:none}
.invitation-image-adjust-pill>summary:hover,.invitation-image-adjust-pill[open]>summary{background:linear-gradient(110deg,#7135E7,#B43BE0);color:#FFF;box-shadow:0 11px 24px rgba(100,42,190,.25);transform:translateY(-1px)}
.invitation-image-adjust-pill>summary>i:first-child{font-size:.8rem}
.invitation-image-adjust-chevron{font-size:.58rem;transition:transform .18s ease}
.invitation-image-adjust-pill[open] .invitation-image-adjust-chevron{transform:rotate(180deg)}
.invitation-image-adjust-pill>.invitation-image-editor{position:absolute;z-index:80;top:calc(100% + 8px);right:0;width:min(720px,calc(100vw - 48px));margin:0;box-shadow:0 22px 50px rgba(33,20,70,.22)}
@media(max-width:700px){
 .invitation-image-actions{align-items:stretch;width:100%;justify-content:flex-end;flex-wrap:wrap}
 .invitation-image-adjust-pill{position:static}
 .invitation-image-adjust-pill>.invitation-image-editor{position:relative;top:auto;right:auto;width:100%;margin-top:8px;box-shadow:0 14px 32px rgba(43,25,87,.15)}
 .invitation-image-adjust-pill[open]{display:contents}
 .invitation-image-adjust-pill[open]>summary{margin-left:auto}
}
@media(max-width:420px){.invitation-image-actions{gap:6px}.invitation-image-actions .invitation-image-remove,.invitation-image-adjust-pill>summary{min-height:34px;padding:7px 10px;font-size:.66rem}}

/* Invitacion publica: replica comercial de las tarjetas configuradas por el anfitrion. */
.public-contribution-row.has-image{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto auto auto auto!important;align-content:start!important;gap:11px!important;height:auto!important;min-height:0!important;padding:13px!important;overflow:visible}.public-contribution-gallery{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;width:100%;overflow:hidden}.public-contribution-media{display:block;aspect-ratio:4/5;border:1px solid #E1DAF0;border-radius:9px;background:#F4F2F8;box-shadow:0 7px 16px rgba(34,22,74,.07);overflow:hidden}.public-contribution-media:first-child{grid-column:span 2;grid-row:span 2}.public-contribution-row.has-image .public-contribution-media .public-contribution-image{display:block!important;width:100%!important;height:100%!important;min-height:0!important;border:0!important;border-radius:0!important;object-fit:cover!important}.public-contribution-more{position:absolute;right:8px;bottom:8px;display:grid;place-items:center;min-width:28px;height:28px;padding:0 7px;border:2px solid #fff;border-radius:999px;background:#7135E7;color:#fff;font-size:.68rem;box-shadow:0 7px 15px rgba(50,25,110,.22)}.public-contribution-row.has-image .public-contribution-gallery{grid-column:1!important;grid-row:1!important}.public-contribution-row.has-image .public-contribution-copy{grid-column:1!important;grid-row:2!important;min-height:62px}.public-contribution-row.has-image>span{grid-column:1!important;grid-row:3!important;justify-self:start!important;font-weight:950}.public-contribution-row.has-image>label,.public-contribution-row.has-image>.public-custom-amount-field{grid-column:1!important;grid-row:4!important;justify-self:stretch!important;width:100%!important}.public-contribution-row.has-image .public-quantity-field{justify-items:start!important}.public-contribution-row.has-image .public-custom-amount-field input{width:100%!important}.public-contribution-copy small{min-height:0!important}.public-contribution-row.has-image:hover{transform:translateY(-2px)}
@media(max-width:640px){.public-contribution-row.has-image{grid-template-rows:auto auto auto auto!important;min-height:0!important}.public-contribution-row.has-image .public-contribution-gallery{grid-row:1!important}.public-contribution-row.has-image .public-contribution-copy{grid-row:2!important}.public-contribution-row.has-image>span{grid-row:3!important}.public-contribution-row.has-image>label,.public-contribution-row.has-image>.public-custom-amount-field{grid-row:4!important}.public-contribution-gallery{gap:6px}.public-contribution-media{border-radius:8px}}

/* Acabado premium de las opciones que ve el invitado. */
.public-contribution-row{isolation:isolate;border:1px solid #E2DAF2!important;background:linear-gradient(155deg,#FFF 0%,#FCFAFF 64%,#F7F2FF 100%)!important;box-shadow:0 18px 42px rgba(38,24,82,.12)!important;overflow:hidden!important}.public-contribution-row:before{content:"";position:absolute;z-index:2;top:0;right:0;left:0;height:4px;background:linear-gradient(90deg,#7C3DFF,#D83AC2,#FF3D8D)}.public-contribution-row[data-contribution-type="fee"]:before{background:linear-gradient(90deg,#14B8A6,#36C6ED)}.public-contribution-row[data-contribution-type="ticket"]:before{background:linear-gradient(90deg,#2187F5,#725CFF)}.public-contribution-gallery.image-count-1{grid-template-columns:1fr}.public-contribution-gallery.image-count-1 .public-contribution-media:first-child{grid-column:1;grid-row:1;width:100%}.public-contribution-gallery.image-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}.public-contribution-gallery.image-count-2 .public-contribution-media:first-child{grid-column:auto;grid-row:auto}.public-contribution-gallery.image-count-1 .public-contribution-media{border-radius:13px}.public-contribution-gallery.image-count-1 .public-contribution-image{width:100%!important;height:100%!important}.public-contribution-copy{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;align-items:start!important;gap:9px!important}.public-contribution-eye{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;border:1px solid #D8C9FF!important;border-radius:12px!important;background:linear-gradient(135deg,#F3EDFF,#FFF)!important;color:#7135E7!important;box-shadow:0 8px 18px rgba(80,43,160,.12)!important}.public-contribution-copy-text{display:grid;gap:4px;min-width:0}.public-contribution-copy-text em{width:max-content;padding:4px 8px;border-radius:999px;background:#EEE7FF;color:#7135E7;font-size:.56rem;font-style:normal;font-weight:950;letter-spacing:.045em;text-transform:uppercase}.public-contribution-row[data-contribution-type="fee"] .public-contribution-copy-text em{background:#E6FAF6;color:#078878}.public-contribution-row[data-contribution-type="ticket"] .public-contribution-copy-text em{background:#E9F3FF;color:#176FC5}.public-contribution-copy-text strong{color:#17132A!important;font-size:1.08rem!important;line-height:1.15}.public-contribution-copy-text small{display:-webkit-box;min-height:0!important;color:#706881!important;font-size:.73rem!important;line-height:1.4;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.public-contribution-row.has-image>span{display:inline-flex;align-items:center;width:max-content;padding:7px 10px;border:1px solid #DDD1FA;border-radius:10px;background:#F5F0FF;color:#221839!important;font-size:1.02rem!important;box-shadow:0 7px 16px rgba(62,37,125,.08)}.public-contribution-row .public-custom-amount-field,.public-contribution-row .public-quantity-field{padding:9px 10px;border:1px solid #DED5F3;border-radius:12px;background:rgba(255,255,255,.9);box-shadow:inset 0 1px 0 #fff}.public-contribution-row .public-custom-amount-field input{border-color:#CFC0F5!important;background:#FCFAFF!important}.public-contribution-row .public-quantity-control{border-color:#CFC0F5!important;background:#FCFAFF!important}.public-contribution-row:hover{border-color:#CBB8FF!important;box-shadow:0 24px 58px rgba(48,27,100,.17)!important}
@media(max-width:640px){.public-contribution-gallery.image-count-1{width:min(100%,310px);margin-inline:auto}.public-contribution-copy{grid-template-columns:34px minmax(0,1fr)!important}.public-contribution-eye{width:34px!important;height:34px!important;border-radius:10px!important}.public-contribution-copy-text strong{font-size:1rem!important}.public-contribution-row.has-image>span{font-size:.94rem!important}}
.public-contribution-copy{grid-template-columns:minmax(0,1fr)!important}.public-contribution-price-action{display:flex;grid-column:1!important;grid-row:3!important;align-items:center;justify-content:flex-start;gap:8px;width:100%}.public-contribution-price-action>span{display:inline-flex;align-items:center;width:max-content;padding:7px 10px;border:1px solid #DDD1FA;border-radius:10px;background:#F5F0FF;color:#221839;font-size:1.02rem;font-weight:950;box-shadow:0 7px 16px rgba(62,37,125,.08)}.public-contribution-row.has-image .public-contribution-price-action{grid-column:1!important;grid-row:3!important}.public-contribution-row:not(.has-image){grid-template-rows:auto minmax(34px,1fr) auto auto!important}.public-contribution-row:not(.has-image) .public-contribution-price-action{grid-column:1!important;grid-row:3!important}.public-contribution-row>label,.public-contribution-row>.public-custom-amount-field{grid-row:4!important}@media(max-width:640px){.public-contribution-copy{grid-template-columns:minmax(0,1fr)!important}.public-contribution-price-action{grid-row:3!important}.public-contribution-price-action>span{font-size:.94rem}.public-contribution-row>label,.public-contribution-row>.public-custom-amount-field{grid-row:4!important}}

/* Pulido final premium para la experiencia publica. */
.public-contribution-card{background:radial-gradient(circle at 100% 0,rgba(124,61,255,.08),transparent 28%),linear-gradient(180deg,#FFF,#FBF9FF)!important}.public-contribution-panel-heading h3{letter-spacing:-.025em}.public-contribution-row{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.public-contribution-gallery{padding:3px;border:1px solid rgba(216,204,245,.72);border-radius:15px;background:linear-gradient(145deg,#F8F4FF,#FFF);box-shadow:inset 0 1px 0 #fff}.public-contribution-media{transition:transform .22s ease,box-shadow .22s ease}.public-contribution-media:hover{z-index:2;transform:translateY(-2px);box-shadow:0 12px 24px rgba(49,28,105,.16)}.public-contribution-copy-text em{box-shadow:inset 0 0 0 1px rgba(124,61,255,.1)}.public-contribution-price-action{padding-top:2px;border-top:1px solid rgba(224,215,243,.72)}.public-contribution-price-action .public-contribution-eye{flex:0 0 auto;border:2px solid #8E61F4!important;background:linear-gradient(145deg,#FFF,#EEE7FF)!important;color:#6B2DDA!important;transition:transform .18s ease,box-shadow .18s ease}.public-contribution-price-action .public-contribution-eye:hover{transform:translateY(-1px) scale(1.03);box-shadow:0 10px 22px rgba(91,47,180,.2)!important}.public-contribution-price-action>span{min-height:38px;background:linear-gradient(135deg,#F7F2FF,#FFF)!important;letter-spacing:-.015em}.public-contribution-row .public-custom-amount-field,.public-contribution-row .public-quantity-field{transition:border-color .2s ease,box-shadow .2s ease}.public-contribution-row .public-custom-amount-field:focus-within,.public-contribution-row .public-quantity-field:focus-within{border-color:#9C75F5;box-shadow:0 0 0 3px rgba(124,61,255,.1)}.public-contribution-row .public-custom-amount-field>small,.public-contribution-row .public-quantity-field>small{color:#756A89!important;font-weight:950!important;letter-spacing:.045em}.public-contribution-row .public-custom-amount-field input{font-weight:900}.public-contribution-more{backdrop-filter:blur(7px)}
@media(max-width:640px){.public-contribution-row{border-radius:18px!important}.public-contribution-gallery{border-radius:13px}.public-contribution-price-action{gap:7px}.public-contribution-price-action .public-contribution-eye{width:36px!important;height:36px!important}.public-contribution-price-action>span{min-height:36px;padding:6px 9px}.public-contribution-row .public-custom-amount-field,.public-contribution-row .public-quantity-field{padding:8px 9px}}

/* Movimiento premium y carga progresiva de la invitacion publica. */
@keyframes publicSectionReveal{0%{opacity:0;transform:translateY(18px)}100%{opacity:1;transform:translateY(0)}}
@keyframes publicCardReveal{0%{opacity:0;transform:translateY(24px) scale(.965);filter:blur(5px)}65%{filter:blur(0)}100%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
@keyframes publicImageReveal{0%{opacity:0;filter:saturate(.7) brightness(1.08)}100%{opacity:1;filter:saturate(1) brightness(1)}}
@keyframes publicSoftGlow{0%,100%{box-shadow:0 18px 42px rgba(38,24,82,.12)}50%{box-shadow:0 22px 52px rgba(98,50,205,.18)}}
.public-contribution-card .public-rsvp-head{animation:publicSectionReveal .55s cubic-bezier(.22,.8,.26,1) both}.public-contribution-toolbar{animation:publicSectionReveal .58s .08s cubic-bezier(.22,.8,.26,1) both}.public-contribution-panel-heading{animation:publicSectionReveal .5s .13s cubic-bezier(.22,.8,.26,1) both}.public-contribution-row{opacity:0;animation:publicCardReveal .62s cubic-bezier(.2,.82,.24,1) both}.public-contribution-row:nth-child(1){animation-delay:.12s}.public-contribution-row:nth-child(2){animation-delay:.2s}.public-contribution-row:nth-child(3){animation-delay:.28s}.public-contribution-row:nth-child(4){animation-delay:.36s}.public-contribution-row:nth-child(5){animation-delay:.44s}.public-contribution-row:nth-child(6){animation-delay:.52s}.public-contribution-row:nth-child(n+7){animation-delay:.58s}.public-contribution-media{position:relative;background:linear-gradient(110deg,#F1ECFA 8%,#FCFAFF 18%,#F1ECFA 33%);background-size:220% 100%}.public-contribution-media .public-contribution-image{animation:publicImageReveal .7s .18s cubic-bezier(.22,.75,.22,1) both}.public-contribution-row:active{transform:scale(.992)!important}.public-contribution-tabs button,.public-contribution-navigation button,.public-contribution-eye,.public-quantity-control button{transition:transform .16s ease,box-shadow .2s ease,background-color .2s ease}.public-contribution-tabs button:active,.public-contribution-navigation button:active,.public-contribution-eye:active,.public-quantity-control button:active{transform:scale(.92)!important}
@media(max-width:640px){@keyframes publicMobileCardReveal{0%{opacity:0;transform:translate3d(26px,18px,0) scale(.97)}100%{opacity:1;transform:translate3d(0,0,0) scale(1)}}.public-contribution-card{animation:publicSectionReveal .5s ease both}.public-contribution-row{animation-name:publicMobileCardReveal;animation-duration:.55s;will-change:transform,opacity}.public-contribution-list[data-public-contribution-list]{scroll-padding-inline:1px}.public-contribution-row.is-selected,.public-contribution-row:focus-within{opacity:1!important;transform:none!important;border-color:#A982FF!important;animation:publicSoftGlow 1.8s ease-in-out infinite}.public-contribution-gallery{transform:translateZ(0)}.public-contribution-tabs button{touch-action:manipulation}.public-contribution-price-action .public-contribution-eye,.public-quantity-control button{min-width:38px;min-height:38px}}
@media(prefers-reduced-motion:reduce){.public-contribution-card .public-rsvp-head,.public-contribution-toolbar,.public-contribution-panel-heading,.public-contribution-row{opacity:1!important;animation:none!important;filter:none!important;transform:none!important;transition:none!important}.public-contribution-media .public-contribution-image{opacity:1!important;animation:none!important;filter:none!important;transition:none!important}.public-contribution-row.is-selected,.public-contribution-row:focus-within{animation:none!important}}
@keyframes giftNextCuriosity{0%,100%{border-color:#DDD3F7;background:#FFF;color:#7C3DFF;box-shadow:0 7px 16px rgba(65,37,130,.1);transform:scale(1)}18%{border-color:#7C3DFF;background:#7C3DFF;color:#FFF;box-shadow:0 0 0 7px rgba(124,61,255,.14),0 12px 24px rgba(88,42,180,.28);transform:scale(1.1)}36%{border-color:#D83AC2;background:#D83AC2;color:#FFF;box-shadow:0 0 0 3px rgba(216,58,194,.12),0 9px 20px rgba(174,42,157,.22);transform:scale(1.04)}}
@media(max-width:640px){.public-contribution-navigation [data-public-contribution-nav="next"].is-curiosity-pulse{animation:giftNextCuriosity 1.25s ease-in-out 4;will-change:transform,box-shadow}.public-contribution-navigation [data-public-contribution-nav="next"].is-curiosity-pulse i{animation:publicSectionReveal .65s ease-in-out 4}}
@media(prefers-reduced-motion:reduce){.public-contribution-navigation [data-public-contribution-nav="next"].is-curiosity-pulse,.public-contribution-navigation [data-public-contribution-nav="next"].is-curiosity-pulse i{animation:none!important}}

/* Icono premium para la confirmacion de asistencia. */
@keyframes attendanceIconFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-2px) rotate(-3deg)}}
.public-rsvp-icon.attendance{position:relative;width:46px;height:46px;border:2px solid rgba(255,255,255,.82);border-radius:14px;background:linear-gradient(145deg,#7C3DFF 0%,#B63CE2 48%,#FF3D8D 100%)!important;color:#FFF!important;box-shadow:0 12px 25px rgba(124,61,255,.27),inset 0 1px 0 rgba(255,255,255,.35)!important}.public-rsvp-icon.attendance:after{content:"";position:absolute;top:-4px;right:-3px;width:11px;height:11px;border:2px solid #FFF;border-radius:50%;background:#FFB52E;box-shadow:0 4px 10px rgba(255,181,46,.35)}.public-rsvp-icon.attendance i{display:block;color:#FFF!important;font-size:1.25rem;line-height:1;animation:attendanceIconFloat 2.4s ease-in-out infinite}.public-rsvp-icon.attendance:hover{box-shadow:0 15px 31px rgba(124,61,255,.34),0 0 0 5px rgba(124,61,255,.08)!important}
@media(max-width:640px){.public-rsvp-icon.attendance{width:44px;height:44px;border-radius:13px}.public-rsvp-icon.attendance i{font-size:1.18rem}}
@media(prefers-reduced-motion:reduce){.public-rsvp-icon.attendance i{animation:none!important}}
.public-rsvp-card.is-host-heading-only{display:none!important}
.public-invitation-hero{align-self:start;width:100%;min-height:0!important;aspect-ratio:5/6}
@media(max-width:900px){.public-invitation-hero{aspect-ratio:4/5}}
.public-host-review-card{width:100%;margin:18px 0 0;border:1px solid var(--line)!important;border-radius:18px;box-shadow:0 18px 48px rgba(31,20,70,.11)}
.public-payment-breakdown>summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:12px 14px;background:#F1FFF7;color:#087040;cursor:pointer;list-style:none}.public-payment-breakdown>summary::-webkit-details-marker{display:none}.public-payment-breakdown>summary span,.public-payment-breakdown>summary strong{color:#087040;font-weight:950}.public-payment-breakdown>summary i{transition:transform .2s ease}.public-payment-breakdown[open]>summary i{transform:rotate(180deg)}.public-payment-breakdown-detail{display:grid;gap:1px;background:var(--line)}.public-payment-breakdown-detail>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#FBFAFF}.public-partial-help{position:relative;display:inline-flex;margin-left:4px;color:#7135E7;cursor:help}.public-partial-help>span{position:absolute;z-index:30;right:-8px;bottom:calc(100% + 9px);display:none;width:min(280px,calc(100vw - 42px));padding:11px 12px;border:1px solid #D8C8FA;border-radius:11px;background:#FFF;color:#514865;font-size:.68rem;font-weight:750;line-height:1.45;box-shadow:0 16px 36px rgba(39,22,84,.2)}.public-partial-help:hover>span,.public-partial-help:focus-within>span{display:block}.public-contribution-media{padding:0;cursor:zoom-in}

/* Confirmacion de asistencia: acabado comercial premium. */
.public-rsvp-card:not(.public-contribution-card){position:relative;background:radial-gradient(circle at 100% 0,rgba(124,61,255,.075),transparent 30%),linear-gradient(180deg,#FFF 0%,#FEFCFF 62%,#F9F6FF 100%)}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-head>p{padding:10px 12px;border-left:3px solid #B593FF;border-radius:0 10px 10px 0;background:linear-gradient(90deg,#F8F4FF,transparent);font-size:.8rem}.public-rsvp-options{gap:9px!important}.public-rsvp-options label>span{position:relative;min-height:64px;padding:12px 14px!important;border:1px solid #E1D9F1!important;border-radius:13px!important;background:rgba(255,255,255,.86)!important;box-shadow:0 8px 20px rgba(34,24,72,.055);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.public-rsvp-options label>span:hover{transform:translateY(-1px);border-color:#C9B8EF!important;box-shadow:0 12px 25px rgba(47,29,97,.1)}.public-rsvp-options label>span i{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;font-size:.88rem!important}.public-rsvp-options label:nth-child(1)>span i{background:#E7F9F0;color:#0BA566}.public-rsvp-options label:nth-child(2)>span i{background:#FFF5D9;color:#C58B00}.public-rsvp-options label:nth-child(3)>span i{background:#FFEBEF;color:#DA2C50}.public-rsvp-options label>span strong{color:#18142A;font-size:.86rem}.public-rsvp-options label>span small{font-size:.65rem!important}.public-rsvp-options label:nth-child(1) input:checked+span{border:2px solid #28B77A!important;background:linear-gradient(135deg,#F0FFF7,#FFF)!important;box-shadow:0 0 0 3px rgba(40,183,122,.1),0 12px 26px rgba(27,139,91,.12)}.public-rsvp-options label:nth-child(2) input:checked+span{border:2px solid #E4AA24!important;background:linear-gradient(135deg,#FFF9E9,#FFF)!important;box-shadow:0 0 0 3px rgba(228,170,36,.1),0 12px 26px rgba(180,126,10,.12)}.public-rsvp-options label:nth-child(3) input:checked+span{border:2px solid #E54767!important;background:linear-gradient(135deg,#FFF2F5,#FFF)!important;box-shadow:0 0 0 3px rgba(229,71,103,.1),0 12px 26px rgba(181,38,69,.12)}.public-rsvp-fields{padding:14px;border:1px solid #E5DDF3;border-radius:15px;background:rgba(255,255,255,.82);box-shadow:0 12px 28px rgba(39,24,79,.065)}.public-rsvp-fields:before{content:"Tus datos de contacto";grid-column:1/-1;color:#6D35DA;font-size:.66rem;font-weight:950;letter-spacing:.055em;text-transform:uppercase}.public-rsvp-fields label{gap:6px;font-size:.75rem!important}.public-rsvp-fields input{border:1px solid #DCD3EC!important;background:#FFF!important;box-shadow:inset 0 1px 2px rgba(30,19,58,.025);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.public-rsvp-fields input:focus{border-color:#8F63ED!important;box-shadow:0 0 0 4px rgba(124,61,255,.1)!important;transform:translateY(-1px)}.public-rsvp-security{padding:9px 11px;border:1px solid #DDF0E8;border-radius:10px;background:#F7FFFB}.public-preview-lock{padding:10px 12px!important;border:1px solid #D8C7FF!important;border-radius:11px!important;background:linear-gradient(135deg,#F5EFFF,#FCF9FF)!important;color:#7135E7!important;box-shadow:0 8px 20px rgba(88,46,175,.08)}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-submit{position:relative;overflow:hidden;border:0!important;border-radius:14px!important;background:linear-gradient(100deg,#8C5CFF 0%,#D746CB 52%,#FF65A9 100%)!important;color:#FFF!important;font-size:.86rem!important;font-weight:950!important;box-shadow:0 16px 32px rgba(173,57,190,.24)!important}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-submit:before{content:"";position:absolute;top:-80%;bottom:-80%;left:-35%;width:24%;background:rgba(255,255,255,.3);transform:rotate(18deg);transition:left .5s ease}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-submit:hover:before{left:118%}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-submit:disabled{opacity:.68;filter:saturate(.78);box-shadow:0 10px 24px rgba(132,70,180,.14)!important}
@media(max-width:640px){.public-rsvp-card:not(.public-contribution-card){gap:14px!important;padding:18px 14px 22px!important}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-head>p{padding:8px 10px}.public-rsvp-options label>span{min-height:60px;padding:10px 12px!important}.public-rsvp-fields{gap:10px;padding:12px}.public-rsvp-fields input{min-height:44px!important}.public-rsvp-security{align-items:flex-start}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-submit{min-height:48px!important;border-radius:15px!important}}

.whatsapp-float{
  position:fixed;
  right:18px;
  bottom:18px;
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  border-radius:50%;
  background:#25D366;
  color:#fff;
  font-size:1.8rem;
  text-decoration:none;
  box-shadow:0 16px 35px rgba(37,211,102,.38);
  z-index:1900;
  isolation:isolate;
  transition:transform .22s ease, box-shadow .22s ease;
  animation:whatsappPulse 2.4s ease-in-out infinite;
}
.whatsapp-float:before,
.whatsapp-float:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  border-radius:50%;
  background:rgba(37,211,102,.28);
  animation:whatsappHalo 2.4s ease-out infinite;
}
.whatsapp-float:after{
  animation-delay:1.2s;
}
.whatsapp-float:hover{
  color:#fff;
  transform:translateY(-4px) scale(1.05);
  box-shadow:0 22px 46px rgba(37,211,102,.48);
}
.whatsapp-float span{
  position:absolute;
  right:72px;
  bottom:7px;
  width:max-content;
  max-width:230px;
  padding:10px 13px;
  border:1px solid rgba(37,211,102,.25);
  border-radius:14px;
  background:#fff;
  color:#111128;
  font-size:.82rem;
  font-weight:900;
  line-height:1.25;
  box-shadow:0 14px 35px rgba(14,12,32,.16);
}
.whatsapp-float span small{
  display:block;
  margin-top:2px;
  color:#667085;
  font-size:.68rem;
  font-weight:700;
}
.whatsapp-float span:after{
  content:"";
  position:absolute;
  right:-7px;
  bottom:15px;
  width:13px;
  height:13px;
  border-top:1px solid rgba(37,211,102,.25);
  border-right:1px solid rgba(37,211,102,.25);
  background:#fff;
  transform:rotate(45deg);
}
@keyframes whatsappPulse{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.06)}
}
@keyframes whatsappHalo{
  0%{opacity:.65;transform:scale(1)}
  100%{opacity:0;transform:scale(1.85)}
}
@media(max-width:640px){
  .whatsapp-float{
    right:14px;
    bottom:14px;
    width:54px;
    height:54px;
    font-size:1.65rem;
  }
  .whatsapp-float span{
    right:0;
    bottom:68px;
    max-width:190px;
    font-size:.76rem;
    text-align:left;
  }
  .whatsapp-float span:after{
    right:22px;
    bottom:-7px;
    border:0;
    border-right:1px solid rgba(37,211,102,.25);
    border-bottom:1px solid rgba(37,211,102,.25);
  }
}

.mini-revenue{
  min-width:116px;
  padding-inline:13px;
  background:linear-gradient(135deg,#20C997,#3B82F6);
  color:#fff!important;
  box-shadow:0 10px 22px rgba(32,201,151,.22);
}
.mini-revenue i{display:block;flex:0 0 auto;font-size:.95rem}
.dashboard-event-card .event-actions:has(.mini-revenue){
  display:grid;
  grid-template-columns:minmax(0,1fr);
  width:100%;
}
.dashboard-event-card .event-actions .mini-revenue{
  width:100%;
  min-width:0;
  justify-content:center;
  text-align:center;
  white-space:nowrap;
}
.revenue-hero{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  overflow:visible;
  background:
    radial-gradient(circle at 85% 10%,rgba(32,201,151,.16),transparent 30%),
    linear-gradient(135deg,#fff 0%,#F7F4FF 100%);
}
.revenue-hero h2{margin:5px 0;font-size:clamp(1.8rem,4vw,3rem)}
.revenue-hero p{margin:0;color:var(--muted);line-height:1.55}
.revenue-hero-total{
  position:relative;
  min-width:220px;
  padding:18px 52px 18px 18px;
  border:1px solid #D8CCF8;
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 46px rgba(22,18,54,.1);
  text-align:right;
}
.revenue-hero-total small,.revenue-hero-total span{display:block;color:var(--muted);font-weight:800}
.revenue-hero-total strong{display:block;margin:5px 0;color:var(--dark2);font-size:2rem;line-height:1}
.revenue-grid,.revenue-type-grid{
  position:relative;
  overflow:visible;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:16px 0;
}
.revenue-stat,.revenue-type-card{
  position:relative;
  z-index:1;
  overflow:visible;
  min-width:0;
  padding:16px 52px 16px 16px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  box-shadow:0 14px 34px rgba(22,18,54,.07);
}
.revenue-info-help{
  position:absolute;
  top:12px;
  right:12px;
  z-index:15;
}
.revenue-info-help[open],
.revenue-section-help[open],
.revenue-stat:has(.revenue-info-help[open]),
.revenue-type-card:has(.revenue-info-help[open]),
.revenue-hero-total:has(.revenue-info-help[open]){
  z-index:400;
}
.revenue-info-help>div,
.revenue-section-help>div{
  z-index:401;
}
.revenue-info-help summary,
.revenue-section-help summary{
  width:24px;
  height:24px;
  font-size:.76rem;
  font-weight:900;
  line-height:1;
  border-radius:50%;
  background:#F1EDFF;
  color:var(--primary);
  box-shadow:none;
}
.revenue-info-help[open] summary,
.revenue-section-help[open] summary{
  background:var(--primary);
  color:#fff;
}
.revenue-info-help>div,
.revenue-section-help>div{
  text-align:left;
}
.revenue-section-help{
  position:relative;
  flex:0 0 auto;
  margin-left:auto;
}
.revenue-stat i,.revenue-type-card i{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  margin-bottom:10px;
  border-radius:10px;
  background:#F1EDFF;
  color:var(--primary);
}
.revenue-stat span,.revenue-type-card span{display:block;color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}
.revenue-stat strong,.revenue-type-card>strong{display:block;margin:5px 0;color:var(--dark2);font-size:1.45rem;line-height:1.1}
.revenue-stat small,.revenue-type-card small{display:block;color:var(--muted);font-size:.72rem;font-weight:750;line-height:1.35}
.revenue-stat.paid i{background:#E9FFF4;color:#0CA76A}
.revenue-stat.pending i{background:#FFF7DF;color:#C08400}
.revenue-stat.muted i{background:#F4F2F7;color:#77718A}
.revenue-stat.info i{background:#EAF2FF;color:#2B6CB0}
.revenue-section{
  position:relative;
  z-index:1;
  overflow:visible;
  margin-top:16px;
}
.revenue-section:has(.field-inline-help[open]){
  z-index:300;
}
.revenue-type-card{display:grid;gap:9px;min-height:170px}
.revenue-type-card>div{display:flex;align-items:center;gap:10px}
.revenue-type-card>div i{margin:0}
.revenue-type-card footer{display:grid;gap:5px;margin-top:auto}
.revenue-type-card footer span{padding:6px 8px;border-radius:999px;background:#F8F7FC;font-size:.64rem;text-transform:none}
.revenue-detail-open{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  width:max-content;
  min-height:32px;
  margin-top:2px;
  padding:7px 11px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#7C3DFF,#FF2E9F);
  color:#fff;
  font-size:.7rem;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 12px 26px rgba(124,61,255,.2);
}
.revenue-type-card .revenue-detail-open i{
  display:inline-grid;
  place-items:center;
  width:auto;
  height:auto;
  margin:0;
  border-radius:0;
  background:transparent;
  color:inherit;
}
.revenue-type-card.gift{border-color:#E7D9FF}
.revenue-type-card.fee{border-color:#CDEFE2}
.revenue-type-card.ticket{border-color:#CFE6FF}
.revenue-type-card.potluck{border-color:#FFE5BB}
.revenue-order-list{display:grid;gap:10px}
.revenue-order{
  display:grid;
  grid-template-columns:minmax(0,1fr) 130px minmax(220px,.7fr);
  gap:12px;
  align-items:center;
  padding:12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
}
.revenue-order-main{min-width:0}
.revenue-order-main strong{display:block;margin:6px 0 2px;font-size:.95rem}
.revenue-order-main small,.revenue-order-main p{color:var(--muted);font-size:.72rem;line-height:1.35}
.revenue-order-main p{margin:5px 0 0;overflow-wrap:anywhere}
.revenue-order-money{text-align:right}
.revenue-order-money small,.revenue-order-klap small{display:block;color:var(--muted);font-size:.62rem;font-weight:900;text-transform:uppercase}
.revenue-order-money strong{font-size:1.1rem}
.revenue-order-klap{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.revenue-order-klap span{min-width:0;padding:8px;border-radius:10px;background:#F8F7FC}
.revenue-order-klap strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem}
.revenue-order-klap .btn{grid-column:1/-1;justify-content:center;min-height:34px;padding:7px 10px;font-size:.72rem}
body.revenue-detail-open{overflow:hidden}
.revenue-detail-dialog[hidden]{display:none}
.revenue-detail-dialog{
  position:fixed;
  inset:0;
  z-index:1900;
  display:grid;
  place-items:center;
  padding:18px;
}
.revenue-detail-backdrop{
  position:absolute;
  inset:0;
  background:rgba(12,10,31,.72);
  backdrop-filter:blur(5px);
}
.revenue-detail-panel{
  position:relative;
  width:min(1080px,100%);
  max-height:min(780px,92dvh);
  display:grid;
  grid-template-rows:auto auto minmax(0,1fr) auto;
  border:1px solid rgba(255,255,255,.32);
  border-radius:14px;
  background:#fff;
  box-shadow:0 34px 100px rgba(7,5,25,.35);
  overflow:hidden;
}
.revenue-detail-panel header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:18px 20px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(135deg,#fff 0%,#F7F3FF 100%);
}
.revenue-detail-panel header h3{margin:3px 0 4px;font-size:1.35rem}
.revenue-detail-panel header p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.45}
.revenue-detail-panel header>button{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:38px;
  height:38px;
  border:1px solid var(--line);
  border-radius:50%;
  background:#fff;
  color:var(--dark2);
  cursor:pointer;
}
.revenue-detail-tools{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 20px;
  border-bottom:1px solid var(--line);
  background:#FBFAFF;
}
.revenue-detail-tools span{
  color:var(--muted);
  font-size:.78rem;
  font-weight:900;
}
.btn-xs{
  min-height:34px;
  padding:8px 12px;
  font-size:.72rem;
}
.revenue-detail-table-wrap{
  min-height:0;
  overflow:auto;
  padding:0;
}
.revenue-detail-empty{
  display:grid;
  place-items:center;
  gap:8px;
  min-height:260px;
  padding:28px;
  text-align:center;
  background:
    radial-gradient(circle at 50% 0%,rgba(124,61,255,.09),transparent 34%),
    #fff;
}
.revenue-detail-empty i{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border-radius:14px;
  background:#F1EDFF;
  color:var(--primary);
  font-size:1.35rem;
}
.revenue-detail-empty strong{color:var(--dark2);font-size:1rem}
.revenue-detail-empty p{max-width:430px;margin:0;color:var(--muted);font-size:.82rem;line-height:1.5}
.revenue-detail-table{
  width:100%;
  min-width:920px;
  border-collapse:separate;
  border-spacing:0;
}
.revenue-detail-table th,
.revenue-detail-table td{
  padding:11px 12px;
  border-bottom:1px solid var(--line);
  text-align:left;
  vertical-align:top;
  font-size:.76rem;
}
.revenue-detail-table th{
  position:sticky;
  top:0;
  z-index:2;
  background:#F5F2FC;
  color:var(--muted);
  font-size:.66rem;
  font-weight:950;
  text-transform:uppercase;
}
.revenue-detail-table td{
  color:var(--dark2);
  font-weight:750;
}
.revenue-detail-panel footer{
  display:flex;
  justify-content:flex-end;
  padding:12px 20px;
  border-top:1px solid var(--line);
  background:#fff;
}
@media(max-width:980px){
  .revenue-grid,.revenue-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .revenue-order{grid-template-columns:1fr}
  .revenue-order-money{text-align:left}
}
@media(max-width:640px){
  .revenue-hero{grid-template-columns:1fr}
  .revenue-hero-total{text-align:left;min-width:0;padding-right:52px}
  .revenue-grid,.revenue-type-grid{grid-template-columns:1fr}
  .revenue-order-klap{grid-template-columns:1fr}
  .revenue-info-help>div{
    left:50%;
    right:auto;
    width:min(260px,calc(100vw - 34px));
    transform:translateX(-50%);
  }
  .revenue-info-help>div:before{
    left:50%;
    right:auto;
    transform:translateX(-50%) rotate(45deg);
  }
  .revenue-section .section-head{
    align-items:flex-start;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
  }
  .revenue-detail-dialog{
    align-items:end;
    padding:0;
  }
  .revenue-detail-panel{
    width:100%;
    max-height:94dvh;
    border-radius:18px 18px 0 0;
  }
  .revenue-detail-panel header,
  .revenue-detail-tools,
  .revenue-detail-panel footer{
    padding-left:14px;
    padding-right:14px;
  }
  .revenue-detail-tools{
    align-items:stretch;
    flex-direction:column;
  }
  .revenue-detail-tools .btn{
    width:100%;
  }
}

/* El detalle de recaudacion usa toda la pantalla en celular. */
@media(max-width:640px){
  body.revenue-detail-open .whatsapp-float{display:none!important}
  .revenue-detail-dialog{display:block;inset:0;width:100%;height:100dvh;padding:0;background:#fff}
  .revenue-detail-backdrop{display:none}
  .revenue-detail-panel{width:100%;height:100dvh;max-height:none;border:0;border-radius:0;box-shadow:none}
  .revenue-detail-panel header{padding-top:calc(16px + env(safe-area-inset-top))}
  .revenue-detail-panel footer{padding-bottom:calc(12px + env(safe-area-inset-bottom))}
  .revenue-detail-table-wrap{min-height:0;overscroll-behavior:contain}
}

/* Compacta exclusivamente el resumen de regalos, cuotas y entradas. */
.event-option-summary-section .event-option-summary-grid{gap:8px}
.event-option-summary-section .event-option-summary-card{gap:6px;min-height:154px;border-radius:11px}
.event-option-summary-section .event-option-guest-card>.event-option-summary-head,.event-option-summary-section .event-option-guest-card>.event-option-guest-copy,.event-option-summary-section .event-option-guest-card>.event-option-summary-values,.event-option-summary-section .event-option-guest-card>footer{margin-right:10px;margin-left:10px}
.event-option-summary-section .event-option-guest-card>.event-option-summary-head{margin-top:10px}
.event-option-summary-section .event-option-guest-media{aspect-ratio:16/6}
.event-option-summary-section .event-option-guest-copy{gap:3px;min-height:38px}
.event-option-summary-section .event-option-summary-head{font-size:.6rem}
.event-option-summary-section .event-option-summary-head>i{width:23px;height:23px;border-radius:7px;font-size:.72rem}
.event-option-summary-section .event-option-summary-card h3{font-size:.86rem}
.event-option-summary-section .event-option-summary-card p{min-height:27px;font-size:.64rem;line-height:1.3}
.event-option-summary-section .event-option-summary-values{gap:5px}
.event-option-summary-section .event-option-summary-values span{padding:6px;font-size:.57rem}
.event-option-summary-section .event-option-summary-values strong{font-size:.69rem}
.event-option-summary-section .event-option-summary-card footer{padding-bottom:10px;font-size:.61rem}
.event-option-summary-section .event-option-summary-card footer .btn{min-height:27px;padding:4px 7px;font-size:.6rem}
.event-option-summary-section .event-option-guest-card{overflow:visible}
.event-option-summary-section .event-option-guest-media{border-radius:10px 10px 0 0}
.event-option-summary-section .event-option-summary-head{position:relative}
.event-option-info-button{display:grid;place-items:center;width:23px;height:23px;margin-left:auto;padding:0;border:0;border-radius:50%;background:#f1edff;color:#7040e8;cursor:pointer}.event-option-info-button:hover,.event-option-info-button[aria-expanded="true"]{background:#7040e8;color:#fff}.event-option-info-popover{position:absolute;z-index:40;top:31px;right:0;width:min(250px,calc(100vw - 40px));padding:11px 12px;border:1px solid #ddd2ff;border-radius:10px;background:#fff;box-shadow:0 16px 34px rgba(32,19,74,.2);color:#5c5870;font-size:.68rem;line-height:1.4;text-transform:none}.event-option-info-popover:before{content:"";position:absolute;top:-6px;right:7px;width:11px;height:11px;border-top:1px solid #ddd2ff;border-left:1px solid #ddd2ff;background:#fff;transform:rotate(45deg)}.event-option-info-popover strong,.event-option-info-popover span{display:block}.event-option-info-popover strong{margin-bottom:3px;color:var(--dark2);font-size:.7rem}
.event-option-info-button-title{display:inline-grid;vertical-align:middle;margin:0 0 0 5px}.event-option-summary-section h2,.event-detail-panel header h3{position:relative}.event-option-summary-section h2>.event-option-info-popover,.event-detail-panel header h3>.event-option-info-popover{top:32px;left:0;right:auto}.event-option-summary-section h2>.event-option-info-popover:before,.event-detail-panel header h3>.event-option-info-popover:before{right:auto;left:8px}.event-option-detail-stats span{position:relative}.event-option-info-button-xs{position:absolute;top:7px;right:7px;width:17px;height:17px;margin:0;font-size:.57rem}.event-option-detail-stats .event-option-info-popover{top:31px;right:auto;left:0;font-style:normal}.event-option-detail-stats .event-option-info-popover:before{right:auto;left:8px}
.event-detail-trigger{border-color:#d8c7ff!important;background:#f1eaff!important;color:#6f35df!important;font-weight:850}.event-detail-trigger:hover,.event-detail-trigger:focus-visible{border-color:#7b3ff0!important;background:#7b3ff0!important;color:#fff!important;box-shadow:0 8px 18px rgba(123,63,240,.22)}
.event-summary-card-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px}.event-summary-card-actions .btn{margin-top:0}.event-store-pay-button{min-height:36px;padding:8px 13px;border-radius:999px;font-size:.74rem;box-shadow:0 9px 20px rgba(125,61,255,.2)}.event-detail-payment-action{display:flex;justify-content:flex-end;margin-top:12px}@media(max-width:520px){.event-summary-card-actions{gap:6px}.event-summary-card-actions .btn{min-height:34px;padding:7px 10px;font-size:.67rem}.event-detail-payment-action .btn{width:auto}}
.revenue-summary-footer>.event-summary-card{grid-column:1/-1}.contribution-revenue-card{margin-bottom:16px}.contribution-financial-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:4px 0}.contribution-financial-grid .revenue-stat{min-height:112px;padding:12px}.contribution-summary-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.contribution-summary-counts span,.contribution-download-tile{display:flex;align-items:center;justify-content:center;gap:5px;padding:8px;border:1px solid #e7def7;border-radius:10px;background:#faf8ff;color:var(--muted);font-size:.68rem;font-weight:850}.contribution-summary-counts b{color:#7139dc;font-size:.82rem}.contribution-download-tile{display:grid;grid-template-columns:auto auto;justify-content:center;border-color:#cbb9f7;background:linear-gradient(135deg,#f6f0ff,#effff9);color:#7139dc}.contribution-download-tile i{grid-row:1/3;font-size:1rem}.contribution-download-tile small{color:var(--muted);font-size:.58rem}.contribution-download-tile.is-disabled{pointer-events:none;opacity:.46}.contribution-revenue-actions{justify-content:flex-start;flex-wrap:wrap}@media(max-width:620px){.contribution-financial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contribution-financial-grid .revenue-stat{min-height:106px}.contribution-summary-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.contribution-summary-counts span{display:grid;justify-items:center;padding:7px 3px}.contribution-revenue-actions{display:block;width:100%}.contribution-revenue-actions .btn{width:100%;min-width:0}}
.public-cover-media{overflow:hidden}.public-cover-media img{transition:transform .2s ease,object-position .2s ease}.public-event-type{display:inline-flex;align-items:center;gap:6px;margin-left:7px;padding:7px 10px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(18,14,44,.36);color:#fff;font-size:.7rem;font-weight:900;vertical-align:middle;backdrop-filter:blur(8px)}.public-event-type i{color:#ff70bb}.public-event-address{grid-column:span 2}.public-event-address strong{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}.invitation-image-current{isolation:isolate}.invitation-image-current img{transform-origin:center;transition:transform .2s ease,object-position .2s ease}.invitation-image-editor{display:grid;grid-template-columns:minmax(150px,1fr) repeat(3,minmax(120px,1fr));gap:10px;align-items:end;margin-top:10px;padding:12px;border:1px solid #e3d9ff;border-radius:12px;background:#fbf9ff}.invitation-image-editor>div{display:grid;gap:3px}.invitation-image-editor strong{color:var(--dark2);font-size:.78rem}.invitation-image-editor small{color:var(--muted);font-size:.66rem;line-height:1.35}.invitation-image-editor label{display:grid;gap:5px;margin:0;color:var(--dark2);font-size:.68rem;font-weight:850}.invitation-image-editor label>span{display:inline-flex;align-items:center;gap:5px}.invitation-image-editor label>span i{display:grid;place-items:center;width:19px;height:19px;border-radius:6px;background:#eee7ff;color:#7040e8;font-size:.72rem}.invitation-image-editor input[type=range]{width:100%;accent-color:#7c3cff}@media(max-width:700px){.invitation-image-editor{grid-template-columns:1fr 1fr}.invitation-image-editor>div{grid-column:1/-1}.public-event-address{grid-column:span 1}}@media(max-width:480px){.invitation-image-editor{grid-template-columns:1fr}.public-event-type{margin:7px 0 0}.public-event-facts .public-event-address{grid-column:1/-1}}
.invitation-image-current{width:min(360px,100%);aspect-ratio:5/6;border-radius:14px;background:#18142b;box-shadow:0 16px 34px rgba(31,21,65,.14)}.invitation-image-current:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(12,9,28,.1),rgba(12,9,28,.18) 40%,rgba(12,9,28,.88))}.invitation-image-current>img{position:absolute;inset:0;z-index:0;display:block}.invitation-image-preview-copy{position:absolute;z-index:2;right:16px;bottom:16px;left:16px;display:grid;gap:5px;color:#fff}.invitation-image-preview-copy small{color:#ff84c2;font-size:.58rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.invitation-image-preview-copy strong{overflow:hidden;font-size:1.15rem;line-height:1.08;text-overflow:ellipsis;white-space:nowrap}.invitation-image-preview-copy span{position:static;display:-webkit-box;max-width:92%;padding:0;border-radius:0;background:transparent;color:rgba(255,255,255,.82);font-size:.7rem;line-height:1.35;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.invitation-image-current>.invitation-image-source-label{position:absolute;z-index:2;top:10px;right:10px;bottom:auto;left:auto;padding:5px 8px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(17,15,38,.68);color:#fff;font-size:.6rem;font-weight:850}@media(max-width:520px){.invitation-image-current{width:min(300px,100%);aspect-ratio:4/5}.invitation-image-preview-copy{right:12px;bottom:12px;left:12px}.invitation-image-preview-copy strong{font-size:1rem}}
.invitation-image-current.is-empty{background:linear-gradient(145deg,#15122f,#42217d 62%,#7c3cff)}.invitation-image-current.is-empty:before{content:"";position:absolute;z-index:1;top:18%;right:14%;width:72px;height:72px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:-96px 96px 0 -30px rgba(255,255,255,.1),58px 152px 0 -36px rgba(255,255,255,.12)}.invitation-image-current.is-empty:after{background:linear-gradient(180deg,rgba(13,10,34,.12),rgba(13,10,34,.92))}.invitation-image-remove{min-height:34px;margin-top:8px;border-color:#ffc9d3!important;background:#fff7f9!important;color:#d92d55!important;font-size:.72rem}.invitation-image-remove:hover{border-color:#d92d55!important;background:#d92d55!important;color:#fff!important}
.invitation-image-current>img[hidden]{display:none!important}
.invitation-image-editor{position:relative;z-index:5}.invitation-image-editor-title{position:relative;display:flex!important;align-items:flex-start;justify-content:space-between;gap:8px}.invitation-image-editor-help{position:relative;z-index:20}.invitation-image-editor-help summary{display:grid;place-items:center;width:25px;height:25px;list-style:none;border-radius:50%;background:#eee7ff;color:#7040e8;cursor:pointer}.invitation-image-editor-help summary::-webkit-details-marker{display:none}.invitation-image-editor-help summary:hover,.invitation-image-editor-help[open] summary{background:#7040e8;color:#fff}.invitation-image-editor-help>div{position:absolute;z-index:60;top:32px;right:0;width:min(270px,calc(100vw - 48px));padding:11px 12px;border:1px solid #ddd2ff;border-radius:10px;background:#fff;box-shadow:0 16px 34px rgba(32,19,74,.22);color:#5c5870;font-size:.7rem;line-height:1.4}.invitation-image-editor-help>div:before{content:"";position:absolute;top:-6px;right:7px;width:11px;height:11px;border-top:1px solid #ddd2ff;border-left:1px solid #ddd2ff;background:#fff;transform:rotate(45deg)}.invitation-image-editor-help>div strong{display:block;margin-bottom:3px;font-size:.72rem}.invitation-image-editor-help>div p{margin:0}.invitation-image-editor label>span i{flex:0 0 19px}@media(max-width:480px){.invitation-image-editor-help>div{right:-6px}}
.dashboard-event-card .event-card-top{flex-wrap:nowrap}.dashboard-event-card .event-card-state-actions{display:inline-flex!important;flex:0 0 auto;flex-flow:row nowrap!important;align-items:center;justify-content:flex-end;gap:10px;white-space:nowrap}.dashboard-event-card .event-card-state-actions form{display:inline-flex!important;flex:0 0 auto;width:auto!important;margin:0!important}.dashboard-event-card .event-card-state-actions .mini-action-xs{flex:0 0 28px;margin:0}
@media(min-width:1201px){.dashboard-section .event-list{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:701px) and (max-width:1200px){.dashboard-section .event-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
.dashboard-event-card .attendance-pills.compact{gap:4px;margin-top:8px}.dashboard-event-card .attendance-pill{gap:4px;min-height:26px;padding:4px 7px}.dashboard-event-card .attendance-pill i{font-size:.7rem}.dashboard-event-card .attendance-pill strong{font-size:.74rem}.dashboard-event-card .attendance-pill span{font-size:.62rem}
.dashboard-event-card .attendance-pill:hover{transform:none;box-shadow:none}
@media(max-width:620px){.dashboard-page-topbar{display:flex;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:8px}.dashboard-page-topbar .top-actions{flex:0 0 auto;width:auto;margin-left:auto}.dashboard-page-topbar .btn-back-top{min-height:40px;padding:9px 14px}}
@media(max-width:620px){.revenue-page-topbar{display:flex!important;width:100%;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:8px}.revenue-page-topbar .menu-toggle{flex:0 0 44px}.revenue-page-topbar .top-actions{display:flex!important;flex:0 0 auto;justify-content:flex-end!important;flex-wrap:nowrap;width:auto!important;margin-left:auto!important}.revenue-page-topbar .btn-back-top{min-height:40px;padding:9px 14px}}

/* Dashboard premium */
.dashboard-premium-page{position:relative;isolation:isolate;padding:2px;border-radius:24px}.dashboard-premium-page:before,.dashboard-premium-page:after{content:"";position:fixed;z-index:-1;width:420px;height:420px;border-radius:50%;filter:blur(90px);pointer-events:none;opacity:.18}.dashboard-premium-page:before{top:80px;right:-150px;background:#9a55ff}.dashboard-premium-page:after{bottom:-170px;left:11%;background:#20d8b5}.dashboard-premium-page .bank-alert{border:1px solid #f2d799;background:linear-gradient(120deg,#fffaf0,#fff4d9);box-shadow:0 12px 28px rgba(143,96,0,.09);animation:dashboardPremiumEnter .48s ease both}.dashboard-premium-page .dashboard-overview{position:relative;overflow:hidden;border-color:rgba(154,105,255,.28);border-radius:22px;background:linear-gradient(125deg,rgba(255,255,255,.98),rgba(247,241,255,.97) 52%,rgba(235,255,248,.97));box-shadow:0 24px 60px rgba(49,29,101,.12),inset 0 1px 0 rgba(255,255,255,.95);animation:dashboardPremiumEnter .58s cubic-bezier(.2,.75,.25,1) both}.dashboard-premium-page .dashboard-overview:before{content:"";position:absolute;top:-110px;right:-80px;width:270px;height:270px;border:1px solid rgba(126,63,245,.12);border-radius:50%;box-shadow:0 0 0 35px rgba(126,63,245,.035),0 0 0 72px rgba(27,191,145,.025);pointer-events:none}.dashboard-premium-page .dashboard-overview:after{content:"";position:absolute;right:0;bottom:0;left:0;height:3px;background:linear-gradient(90deg,#7c3dff,#e93cab,#16cba1)}.dashboard-premium-page .dashboard-overview-copy,.dashboard-premium-page .dashboard-overview-tools,.dashboard-premium-page .dashboard-overview-stats{position:relative;z-index:1}.dashboard-premium-page .dashboard-overview-copy .kicker{display:inline-flex;padding:5px 9px;border:1px solid #dccdff;border-radius:999px;background:rgba(255,255,255,.76);box-shadow:0 5px 14px rgba(94,48,186,.07)}.dashboard-premium-page .dashboard-overview-copy h2{background:linear-gradient(100deg,#17132c,#6d35dc 62%,#d72e90);background-clip:text;-webkit-background-clip:text;color:transparent;letter-spacing:-.025em}.dashboard-premium-page .dashboard-overview-tools .btn{border:1px solid rgba(255,255,255,.38);box-shadow:0 14px 28px rgba(124,61,255,.24);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.dashboard-premium-page .dashboard-overview-tools .btn:hover{transform:translateY(-2px) scale(1.015);filter:saturate(1.08);box-shadow:0 18px 38px rgba(124,61,255,.32)}.dashboard-premium-page .dashboard-overview-stats span{min-height:38px;border-color:rgba(213,201,240,.82);background:rgba(255,255,255,.76);box-shadow:0 7px 18px rgba(49,30,91,.055);backdrop-filter:blur(10px);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.dashboard-premium-page .dashboard-overview-stats span:hover{transform:translateY(-2px);border-color:#bea6f6;box-shadow:0 11px 24px rgba(69,38,137,.1)}.dashboard-premium-page .dashboard-section{position:relative;animation:dashboardPremiumEnter .58s .08s cubic-bezier(.2,.75,.25,1) both}.dashboard-premium-page .dashboard-section>.section-head{position:relative;padding-left:15px}.dashboard-premium-page .dashboard-section>.section-head:before{content:"";position:absolute;top:3px;bottom:3px;left:0;width:4px;border-radius:999px;background:linear-gradient(180deg,#7c3dff,#ec3ba4);box-shadow:0 5px 13px rgba(124,61,255,.24)}.dashboard-premium-page .dashboard-guest-section>.section-head:before{background:linear-gradient(180deg,#12b97c,#21d9bf);box-shadow:0 5px 13px rgba(18,185,124,.22)}.dashboard-premium-page .dashboard-event-card{isolation:isolate;overflow:hidden;border:1px solid rgba(221,213,240,.95);border-top-width:1px!important;border-radius:18px;background:linear-gradient(145deg,#fff 0%,#fdfcff 70%,#f7f3ff 100%);box-shadow:0 14px 34px rgba(34,21,73,.08),inset 0 1px 0 #fff;opacity:0;animation:dashboardCardReveal .55s cubic-bezier(.18,.8,.25,1) forwards;transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}.dashboard-premium-page .dashboard-event-card:before{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#7c3dff,#e83ba4)}.dashboard-premium-page .dashboard-event-card:after{content:"";position:absolute;z-index:-1;top:-70px;right:-75px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(135,69,245,.13),rgba(135,69,245,0) 70%);transition:transform .35s ease}.dashboard-premium-page .guest-event-card{background:linear-gradient(145deg,#fff 0%,#fcfffd 70%,#f0fff9 100%)}.dashboard-premium-page .guest-event-card:before{background:linear-gradient(90deg,#11b978,#22d5bb)}.dashboard-premium-page .guest-event-card:after{background:radial-gradient(circle,rgba(20,185,120,.14),rgba(20,185,120,0) 70%)}.dashboard-premium-page .dashboard-event-card:hover{transform:translateY(-6px);border-color:#ccbafb;box-shadow:0 25px 55px rgba(47,26,103,.16),0 8px 20px rgba(123,61,255,.08),inset 0 1px 0 #fff}.dashboard-premium-page .dashboard-event-card:hover:after{transform:scale(1.22)}.dashboard-premium-page .event-list .dashboard-event-card:nth-child(1){animation-delay:.12s}.dashboard-premium-page .event-list .dashboard-event-card:nth-child(2){animation-delay:.18s}.dashboard-premium-page .event-list .dashboard-event-card:nth-child(3){animation-delay:.24s}.dashboard-premium-page .event-list .dashboard-event-card:nth-child(4){animation-delay:.30s}.dashboard-premium-page .event-list .dashboard-event-card:nth-child(5){animation-delay:.36s}.dashboard-premium-page .event-list .dashboard-event-card:nth-child(6){animation-delay:.42s}.dashboard-premium-page .event-list .dashboard-event-card:nth-child(n+7){animation-delay:.48s}.dashboard-premium-page .dashboard-event-card>div:first-child>strong{color:#17132c;font-size:1.12rem;letter-spacing:-.012em}.dashboard-premium-page .dashboard-event-card .state-badge{border-width:1px;box-shadow:0 5px 13px rgba(44,28,84,.06)}.dashboard-premium-page .dashboard-event-card .attendance-pill{border-width:1px;background:rgba(255,255,255,.86);box-shadow:0 5px 12px rgba(40,25,80,.04);backdrop-filter:blur(8px)}.dashboard-premium-page .dashboard-event-card .event-actions{position:relative}.dashboard-premium-page .dashboard-event-card .mini-revenue{border:1px solid rgba(255,255,255,.34);box-shadow:0 10px 22px rgba(38,177,177,.18);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.dashboard-premium-page .dashboard-event-card .mini-revenue:hover{transform:translateY(-2px);filter:saturate(1.12);box-shadow:0 15px 28px rgba(77,89,224,.24)}.dashboard-premium-page .mini-action-xs{transition:transform .18s ease,box-shadow .18s ease}.dashboard-premium-page .mini-action-xs:hover{transform:scale(1.09) rotate(-3deg);box-shadow:0 9px 20px rgba(217,45,85,.27)}.dashboard-premium-page .empty-state{border:1px solid #e5dcf6;border-radius:20px;background:linear-gradient(145deg,#fff,#faf7ff);box-shadow:0 16px 36px rgba(38,23,81,.07);animation:dashboardPremiumEnter .55s .15s ease both}.dashboard-premium-page .section-footer-actions .btn{border-color:#ddd2f3;background:rgba(255,255,255,.8);box-shadow:0 8px 20px rgba(36,22,75,.06);backdrop-filter:blur(8px)}
@keyframes dashboardPremiumEnter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes dashboardCardReveal{from{opacity:0;transform:translateY(18px) scale(.975)}to{opacity:1;transform:none}}
@media(max-width:620px){.dashboard-premium-page{padding:0}.dashboard-premium-page:before,.dashboard-premium-page:after{width:250px;height:250px;filter:blur(70px)}.dashboard-premium-page .dashboard-overview{padding:19px 17px;border-radius:19px}.dashboard-premium-page .dashboard-overview-copy h2{font-size:1.65rem}.dashboard-premium-page .dashboard-overview-stats span:hover{transform:none}.dashboard-premium-page .dashboard-section>.section-head{padding-left:12px}.dashboard-premium-page .dashboard-event-card{border-radius:16px;box-shadow:0 11px 27px rgba(34,21,73,.085)}.dashboard-premium-page .dashboard-event-card:hover{transform:none;box-shadow:0 11px 27px rgba(34,21,73,.085)}.dashboard-premium-page .dashboard-event-card:active{transform:scale(.985)}.dashboard-premium-page .dashboard-event-card .attendance-pill{box-shadow:none}}
@media(prefers-reduced-motion:reduce){.dashboard-premium-page *{animation:none!important;transition-duration:.01ms!important}.dashboard-premium-page .dashboard-event-card{opacity:1}}
.legal-public-page{width:min(960px,calc(100% - 28px));margin:24px auto 60px}.legal-public-page>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.legal-public-page>header>a:first-child{display:flex;align-items:center;gap:9px;color:var(--dark2);font-size:1.1rem}.legal-public-page>header>a:first-child span{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--pink));color:#fff;font-weight:950}.legal-document-card{padding:clamp(22px,5vw,58px);border-radius:22px}.legal-document-card h1{margin:9px 0 12px;font-size:clamp(1.7rem,4vw,2.8rem)}.legal-document-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}.legal-document-meta span{padding:7px 10px;border-radius:999px;background:#f1ebff;color:#6d35d8;font-size:.7rem;font-weight:900}.legal-summary{padding:16px;border-left:4px solid var(--primary);background:#f8f5ff;color:#544a66;line-height:1.65}.legal-content{color:#3f384d;font-size:.9rem;line-height:1.8}.client-legal-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:34px 0 10px;padding:18px 4px;border-top:1px solid var(--line);color:var(--muted);font-size:.7rem}.client-legal-footer nav{display:flex;flex-wrap:wrap;gap:13px}.client-legal-footer a{color:#6740c5;font-weight:850}.legal-acceptance-check{display:grid!important;grid-template-columns:auto 1fr;align-items:start;gap:9px;padding:12px;border:1px solid #d9cdf5;border-radius:11px;background:#faf7ff;font-size:.72rem!important;line-height:1.45}.legal-acceptance-check input{width:18px;min-height:18px}.legal-update-notice{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:12px 14px;border:1px solid #d9cafa;border-radius:14px;background:linear-gradient(135deg,#f8f3ff,#fff)}.legal-update-notice>div{display:flex;align-items:center;gap:9px}.legal-update-notice>div>i{color:var(--primary);font-size:1.3rem}.legal-update-notice span{display:grid}.legal-update-notice small{color:var(--muted)}.legal-update-links{display:flex!important;flex:1;flex-wrap:wrap;gap:6px}.legal-update-links a{padding:5px 8px;border-radius:999px;background:#eee7ff;color:#6631cf;font-size:.65rem;font-weight:900}.cookie-consent{position:fixed;z-index:3000;right:18px;bottom:18px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;width:min(720px,calc(100vw - 36px));padding:18px;border:1px solid #d8caf8;border-radius:18px;background:#fff;box-shadow:0 26px 75px rgba(19,11,45,.28)}.cookie-consent[hidden]{display:none}.cookie-consent strong{font-size:.92rem}.cookie-consent p{margin:5px 0;color:var(--muted);font-size:.74rem;line-height:1.45}.cookie-consent a{color:var(--primary);font-size:.68rem;font-weight:900}.cookie-consent>div:last-child{display:flex;gap:8px}@media(max-width:650px){.legal-public-page{width:calc(100% - 18px);margin-top:10px}.legal-document-card{padding:20px 16px}.client-legal-footer{align-items:flex-start;flex-direction:column}.legal-update-notice{align-items:stretch;flex-direction:column}.cookie-consent{right:9px;bottom:9px;grid-template-columns:1fr;width:calc(100vw - 18px);padding:15px}.cookie-consent>div:last-child{display:grid;grid-template-columns:1fr 1fr}.cookie-consent .btn{width:100%;padding-inline:8px;font-size:.68rem}}
.calendar-dashboard-list{padding:2px}.calendar-dashboard-list .calendar-dashboard-event-card .attendance-pills{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.calendar-dashboard-list .calendar-dashboard-event-card .attendance-pill{justify-content:center;min-width:0}.calendar-dashboard-list .calendar-dashboard-event-card .attendance-pill span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:620px){.calendar-dashboard-list{padding:0}.calendar-dashboard-list .calendar-dashboard-event-card .attendance-pills{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.calendar-dashboard-list .calendar-dashboard-event-card .attendance-pill{display:grid;grid-template-columns:auto auto;justify-content:center;gap:3px;padding:5px 3px;text-align:center}.calendar-dashboard-list .calendar-dashboard-event-card .attendance-pill span{grid-column:1/-1;width:100%;font-size:.58rem}.calendar-dashboard-list .calendar-dashboard-event-card .event-actions{grid-template-columns:1fr}.calendar-dashboard-list .calendar-dashboard-event-card .event-actions .mini-action{font-size:.72rem}}
.revenue-page-topbar .top-icon-btn{border:1px solid #cdbaff;color:var(--primary)}
.revenue-movements-card{overflow:visible;background:linear-gradient(135deg,#fff 0%,#fbf9ff 100%)}.revenue-movements-card>.section-head{margin-bottom:0}.revenue-movements-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.revenue-movements-count{display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;border:1px solid #ded3fa;border-radius:999px;background:#f5f1ff;color:var(--primary);font-size:.68rem;font-weight:900}.revenue-movements-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 13px;border:1px solid #cab7ff;border-radius:999px;background:linear-gradient(135deg,#7c3cff,#a849f5);color:#fff;font-family:inherit;font-size:.72rem;font-weight:900;cursor:pointer;box-shadow:0 9px 22px rgba(124,60,255,.2)}.revenue-movements-toggle i{transition:transform .2s ease}.revenue-movements-toggle[aria-expanded="true"] i{transform:rotate(180deg)}.revenue-movements-content{margin-top:18px;padding-top:18px;border-top:1px solid #eee8fa}.revenue-movements-content[hidden]{display:none}@media(max-width:620px){.revenue-movements-card>.section-head{display:grid}.revenue-movements-actions{justify-content:flex-start}.revenue-movements-toggle{margin-left:auto}}
@media(max-width:620px){.revenue-movements-card{padding:16px;border-radius:16px}.revenue-movements-card>.section-head{grid-template-columns:1fr!important;gap:14px}.revenue-movements-card>.section-head h2{margin:4px 0 7px;font-size:1.28rem;line-height:1.15}.revenue-movements-card>.section-head p{font-size:.76rem;line-height:1.45}.revenue-movements-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%}.revenue-movements-count{justify-content:center;min-height:32px;padding:6px 9px}.revenue-movements-actions .revenue-section-help{position:relative;top:auto;right:auto}.revenue-movements-toggle{grid-column:1/-1;width:100%;min-height:43px;margin:0;font-size:.76rem}.revenue-movements-content{margin-top:14px;padding-top:14px}.revenue-movements-content .empty-state{min-height:180px;padding:24px 12px}.revenue-movements-content .empty-state i{font-size:1.7rem}.revenue-movements-content .empty-state h3{font-size:1rem}.revenue-movements-content .empty-state p{font-size:.75rem;line-height:1.45}.revenue-movements-content .revenue-order{gap:11px;padding:12px;border-radius:12px}.revenue-movements-content .revenue-order-money{display:flex;align-items:center;justify-content:space-between;padding-top:9px;border-top:1px solid #eeeaf5}.revenue-movements-content .revenue-order-klap{grid-template-columns:1fr 1fr}.revenue-movements-content .revenue-order-klap .btn{grid-column:1/-1}}
.revenue-types-collapse-card{overflow:visible;background:linear-gradient(135deg,#fff 0%,#fbf9ff 100%)}.revenue-types-collapse-card>.section-head{margin-bottom:0}.revenue-types-collapse-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.revenue-types-count{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border:1px solid #ded3fa;border-radius:999px;background:#f5f1ff;color:var(--primary);font-size:.68rem;font-weight:900}.revenue-types-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 13px;border:1px solid #cab7ff;border-radius:999px;background:linear-gradient(135deg,#7c3cff,#a849f5);color:#fff;font-family:inherit;font-size:.72rem;font-weight:900;cursor:pointer;box-shadow:0 9px 22px rgba(124,60,255,.2)}.revenue-types-toggle i{transition:transform .2s ease}.revenue-types-toggle[aria-expanded="true"] i{transform:rotate(180deg)}.revenue-types-content{margin-top:18px;padding-top:18px;border-top:1px solid #eee8fa}.revenue-types-content[hidden]{display:none}.revenue-types-content .revenue-type-grid{margin-top:0;margin-bottom:0}@media(max-width:620px){.revenue-types-collapse-card{padding:16px;border-radius:16px}.revenue-types-collapse-card>.section-head{grid-template-columns:1fr!important;gap:14px}.revenue-types-collapse-card>.section-head h2{margin:4px 0 7px;font-size:1.28rem;line-height:1.15}.revenue-types-collapse-card>.section-head p{font-size:.76rem;line-height:1.45}.revenue-types-collapse-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%}.revenue-types-collapse-actions .revenue-section-help{position:relative;top:auto;right:auto}.revenue-types-toggle{grid-column:1/-1;width:100%;min-height:43px;font-size:.76rem}.revenue-types-content{margin-top:14px;padding-top:14px}.revenue-types-content .empty-state{min-height:180px;padding:24px 12px}.revenue-types-content .empty-state i{font-size:1.7rem}.revenue-types-content .empty-state h3{font-size:1rem}.revenue-types-content .empty-state p{font-size:.75rem;line-height:1.45}}
.attendance-summary-actions{display:flex;align-items:center;justify-content:flex-end}.attendance-detail-button{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 13px;border:1px solid #cab7ff!important;border-radius:999px;background:linear-gradient(135deg,#7c3cff,#a849f5)!important;color:#fff!important;font-family:inherit;font-size:.72rem;font-weight:900;cursor:pointer;box-shadow:0 9px 22px rgba(124,60,255,.2)}.attendance-detail-button i{color:#fff}.attendance-popup-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:16px}.attendance-popup-metrics .summary-metric{min-height:100px;padding:12px;box-shadow:none}.attendance-popup-metrics .summary-metric strong{font-size:1.3rem}@media(max-width:760px){.attendance-popup-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-popup-metrics .summary-metric:first-child{grid-column:1/-1}}@media(max-width:620px){.attendance-summary-card>.section-head{grid-template-columns:1fr!important;gap:12px}.attendance-summary-actions{display:grid;grid-template-columns:1fr;width:100%}.attendance-detail-button{grid-column:1;width:100%;min-height:43px}.attendance-popup-metrics{gap:6px}.attendance-popup-metrics .summary-metric{min-height:84px;padding:10px}.attendance-popup-metrics .summary-metric span{font-size:.58rem}.attendance-popup-metrics .summary-metric strong{font-size:1.15rem}.attendance-popup-metrics .summary-metric small{font-size:.61rem}}
.guest-contribution-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding-top:9px;border-top:1px solid #eeeaf5}.guest-contribution-type{display:grid;align-content:start;gap:7px;min-width:0;padding:9px;border:1px solid #e9e3f3;border-radius:10px;background:#fff}.guest-contribution-type>header{display:flex;align-items:center;gap:6px;color:var(--dark2)}.guest-contribution-type>header i{color:var(--primary);font-size:.78rem}.guest-contribution-type>header strong{font-size:.68rem}.guest-contribution-type>small{color:var(--muted);font-size:.62rem}.guest-contribution-type>div{display:flex;align-items:flex-start;justify-content:space-between;gap:6px;padding-top:6px;border-top:1px solid #f0edf6}.guest-contribution-type>div:first-of-type{padding-top:0;border-top:0}.guest-contribution-type>div>span{display:grid;gap:2px;min-width:0}.guest-contribution-type>div>span:last-child{justify-items:end;text-align:right}.guest-contribution-type b{overflow-wrap:anywhere;font-size:.65rem}.guest-contribution-type small{color:var(--muted);font-size:.57rem}.guest-contribution-type>div strong{font-size:.66rem}.guest-contribution-type em{color:var(--muted);font-size:.55rem;font-style:normal}.guest-contribution-type.is-empty{background:#faf9fc;opacity:.75}@media(max-width:620px){.event-guest-detail-grid{grid-template-columns:1fr}.guest-contribution-breakdown{grid-template-columns:1fr}.guest-contribution-type{padding:10px}.guest-contribution-type>header strong{font-size:.72rem}.guest-contribution-type b{font-size:.69rem}}
.attendance-summary-card .event-summary-metrics{width:100%;grid-template-columns:repeat(4,minmax(0,1fr))}.attendance-summary-card .event-summary-metrics>.summary-metric{width:100%;min-width:0}@media(min-width:621px){.attendance-summary-card .event-summary-metrics{grid-template-columns:repeat(4,minmax(0,1fr))!important}}@media(max-width:620px){.attendance-summary-card .event-summary-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.attendance-summary-card .summary-metric{min-height:92px;padding:11px}.attendance-summary-card .summary-metric strong{font-size:1.3rem}}
@media(min-width:621px){.attendance-summary-card .event-summary-metrics{display:flex!important;align-items:stretch;width:100%!important;gap:10px}.attendance-summary-card .event-summary-metrics>.summary-metric{flex:1 1 0;width:0!important;max-width:none!important}}@media(max-width:620px){.attendance-summary-card .event-summary-metrics{display:grid!important;width:100%;grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* Encuadre compacto: mantiene la imagen visible mientras se ajusta en celular. */
@media(max-width:700px){
 .invitation-image-adjust-pill[open]>.invitation-image-editor{position:fixed!important;z-index:2200;top:auto!important;right:8px!important;bottom:calc(8px + env(safe-area-inset-bottom));left:8px!important;display:grid!important;grid-template-columns:1fr!important;gap:5px!important;width:auto!important;max-height:42dvh;margin:0!important;padding:10px!important;border:1px solid #CBB9F7!important;border-radius:16px!important;background:rgba(255,255,255,.97)!important;box-shadow:0 22px 65px rgba(18,11,42,.34)!important;backdrop-filter:blur(14px)}
 .invitation-image-adjust-pill[open]>.invitation-image-editor>.invitation-image-editor-title{grid-column:1!important;display:flex!important;align-items:center!important;min-height:30px;padding:0 2px 6px!important;border-bottom:1px solid #E9E1F8}
 .invitation-image-editor-title>div{display:flex!important;align-items:center;gap:7px}
 .invitation-image-editor-title>div>strong{font-size:.72rem!important}
 .invitation-image-editor-title>div>small{display:none}
 .invitation-image-editor-help summary{width:24px!important;height:24px!important}
 .invitation-image-adjust-pill[open]>.invitation-image-editor>label{display:grid!important;grid-template-columns:92px minmax(0,1fr)!important;align-items:center!important;gap:7px!important;min-height:34px!important;margin:0!important;padding:4px 7px!important;border:1px solid #E8E0F6!important;border-radius:10px!important;background:#FCFBFF!important}
 .invitation-image-adjust-pill[open]>.invitation-image-editor label>span{gap:4px!important;font-size:.62rem!important}
 .invitation-image-adjust-pill[open]>.invitation-image-editor label>span i{width:17px!important;height:17px!important;font-size:.62rem!important}
 .invitation-image-adjust-pill[open]>.invitation-image-editor output{padding:2px 5px!important;font-size:.54rem!important}
 .invitation-image-adjust-pill[open]>.invitation-image-editor input[type=range]{width:100%!important;height:24px!important}
 .invitation-image-current{max-height:48dvh}
}
@media(max-width:380px){
 .invitation-image-adjust-pill[open]>.invitation-image-editor{right:5px!important;bottom:calc(5px + env(safe-area-inset-bottom));left:5px!important;padding:8px!important}
 .invitation-image-adjust-pill[open]>.invitation-image-editor>label{grid-template-columns:82px minmax(0,1fr)!important;min-height:31px!important;padding:3px 6px!important}
}
.invitation-image-editor-head-actions{display:flex;align-items:center;gap:6px;margin-left:auto}
.invitation-image-editor-close{display:none;place-items:center;width:27px;height:27px;padding:0;border:1px solid #D8C9F5;border-radius:50%;background:#FFF;color:#6530CF;cursor:pointer;box-shadow:0 4px 10px rgba(59,31,116,.1)}
@media(max-width:700px){
 .invitation-image-editor-close{display:grid}
 .invitation-image-editor-close:active{background:#7135E7;color:#FFF;transform:scale(.94)}
}

/* Selector de imagen compacto junto a las acciones. */
.invitation-image-actions{width:100%;justify-content:flex-end;flex-wrap:wrap}
.invitation-premium-file.invitation-premium-file-pill{display:block;grid-template-columns:none;width:auto;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.invitation-premium-file-pill .invitation-premium-file-button{gap:7px;min-width:0;min-height:36px;margin:0!important;padding:7px 11px!important;border-radius:999px!important}
.invitation-premium-file-pill .invitation-premium-file-icon{flex-basis:23px;width:23px;height:23px;border-radius:50%;font-size:.7rem}
.invitation-premium-file-pill .invitation-premium-file-button strong{font-size:.69rem;white-space:nowrap}
.invitation-premium-file-pill .invitation-premium-file-name[hidden]{display:none!important}
@media(max-width:480px){
 .invitation-image-actions{gap:6px;justify-content:flex-end;flex-wrap:wrap}
 .invitation-premium-file-pill .invitation-premium-file-button{min-height:34px;padding:6px 9px!important}
 .invitation-premium-file-pill .invitation-premium-file-icon{flex-basis:21px;width:21px;height:21px}
 .invitation-premium-file-pill .invitation-premium-file-button strong{font-size:.62rem}
 .invitation-image-actions .invitation-image-remove,.invitation-image-adjust-pill>summary{white-space:nowrap}
}

/* Seleccionar y eliminar: mismas pills y una sola linea. */
.invitation-image-actions{justify-content:center;flex-wrap:nowrap}
.invitation-premium-file-pill .invitation-premium-file-button{min-height:34px!important;padding:7px 11px!important;border:1px solid #CDBAFF!important;border-radius:999px!important;background:#F7F3FF!important;color:#6831D3!important;box-shadow:none!important;filter:none!important;transform:none!important}
.invitation-premium-file-pill .invitation-premium-file-button:before{display:none!important}
.invitation-premium-file-pill .invitation-premium-file-button:hover{border-color:#7135E7!important;background:#EEE7FF!important;color:#5723BD!important;box-shadow:none!important;transform:none!important}
.invitation-premium-file-pill .invitation-premium-file-icon{display:inline-grid;flex:0 0 auto;width:auto;height:auto;border:0;border-radius:0;background:transparent;color:inherit;font-size:.75rem}
.invitation-premium-file-pill .invitation-premium-file-button strong,.invitation-image-actions .invitation-image-remove{font-size:.68rem!important}
.invitation-image-actions .invitation-image-remove{min-height:34px!important;padding:7px 11px!important;border-radius:999px!important;white-space:nowrap}
@media(max-width:480px){
 .invitation-image-actions{gap:5px;justify-content:center;overflow:visible}
 .invitation-premium-file-pill .invitation-premium-file-button,.invitation-image-actions .invitation-image-remove,.invitation-image-adjust-pill>summary{min-height:32px!important;padding:6px 8px!important;font-size:.6rem!important}
 .invitation-premium-file-pill .invitation-premium-file-button strong{font-size:.6rem!important}
 .invitation-premium-file-pill .invitation-premium-file-icon{font-size:.68rem}
}
@media(max-width:380px){.invitation-image-adjust-pill>summary span,.invitation-image-adjust-pill>summary .invitation-image-adjust-chevron{display:none}.invitation-image-adjust-pill>summary{width:32px!important;justify-content:center!important;padding:6px!important}}
@media(max-width:700px){.invitation-image-adjust-pill[open]>summary{margin-left:0}}
@media(max-width:700px){
 .invitation-premium-file-pill .invitation-premium-file-button strong,
 .invitation-image-actions .invitation-image-remove>span,
 .invitation-image-adjust-pill>summary>span,
 .invitation-image-adjust-pill>summary>.invitation-image-adjust-chevron{display:none!important}
 .invitation-premium-file-pill .invitation-premium-file-button,
 .invitation-image-actions .invitation-image-remove,
 .invitation-image-adjust-pill>summary{display:grid!important;place-items:center!important;width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;border-radius:50%!important}
 .invitation-premium-file-pill .invitation-premium-file-button{gap:0!important}
 .invitation-premium-file-pill .invitation-premium-file-icon{font-size:.76rem!important}
 .invitation-image-actions .invitation-image-remove{gap:0!important}
}

/* Estabilidad movil entre etapas, especialmente la tienda (etapa 2). */
@media(max-width:700px){
 html,body{max-width:100%;overflow-x:clip}
 .event-stage-card,.event-stage-card.is-joined-form,.store-stage,.store-stage>*{min-width:0;max-width:100%}
 .store-stage{width:100%;overflow-x:clip}
 .store-stage .delivery-location-card,.store-stage .delivery-methods,.store-stage .delivery-address-fields,.store-stage .delivery-location-tools,.store-stage .store-entry-panel,.store-stage .store-actions{min-width:0;max-width:100%;box-sizing:border-box}
 .store-stage input,.store-stage select,.store-stage textarea,.store-stage button{max-width:100%;box-sizing:border-box}
 .event-stage-card .stage-progress,.event-stage-card.has-invitation-status .stage-progress{right:auto!important;left:50%!important;bottom:calc(8px + env(safe-area-inset-bottom))!important;grid-template-columns:repeat(4,38px)!important;grid-auto-columns:38px!important;width:179px!important;min-width:179px!important;max-width:179px!important;height:48px!important;min-height:48px!important;max-height:48px!important;margin:0!important;padding:6px!important;box-sizing:border-box!important;transform:translate3d(-50%,0,0)!important;contain:layout;isolation:isolate}
 .event-stage-card .stage-progress-item{width:38px!important;min-width:38px!important;max-width:38px!important;height:34px!important;min-height:34px!important;max-height:34px!important;margin:0!important;box-sizing:border-box!important;transform:none}
 .event-stage-card .stage-step-number{width:26px!important;min-width:26px!important;max-width:26px!important;height:26px!important;min-height:26px!important;max-height:26px!important}
}
@supports not (overflow:clip){@media(max-width:700px){html,body,.store-stage{overflow-x:hidden}}}

/* El mismo boton hamburguesa superior se integra al dock inferior movil. */
@media(max-width:700px){
 .event-stage-topbar .menu-toggle{position:fixed!important;z-index:1801;left:8px!important;bottom:calc(11px + env(safe-area-inset-bottom));display:grid!important;place-items:center;width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important;margin:0!important;padding:0!important;border:1px solid rgba(255,255,255,.7)!important;border-radius:50%!important;background:linear-gradient(135deg,#7435ED,#C83DCE)!important;color:#FFF!important;font-size:1.15rem!important;box-shadow:0 11px 26px rgba(87,38,174,.3)!important;transform:none!important}
 .event-stage-card .stage-progress,.event-stage-card.has-invitation-status .stage-progress{left:50%!important}
 .event-stage-topbar{min-height:0!important;height:0!important;margin:0!important;padding:0!important}
 .event-stage-topbar .menu-toggle:active{transform:scale(.94)!important}
 body.store-modal-open.menu-open .mobile-overlay{z-index:5100}
 body.store-modal-open.menu-open .sidebar{z-index:5200}
}

/* Confirmacion comercial para publicar la invitacion desde su vista previa. */
body.public-approval-confirm-open{overflow:hidden}
.public-approval-confirm[hidden]{display:none!important}
.public-approval-confirm{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:18px}
.public-approval-confirm-backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(13,8,32,.76);backdrop-filter:blur(8px)}
.public-approval-confirm>section{position:relative;display:grid;justify-items:center;width:min(500px,100%);padding:32px 30px 26px;border:1px solid rgba(255,255,255,.72);border-radius:24px;background:radial-gradient(circle at 50% 0,#FFF 0%,#FBF7FF 55%,#FFF6FC 100%);box-shadow:0 35px 110px rgba(7,4,24,.46);text-align:center}
.public-approval-confirm-icon{position:relative;display:grid;place-items:center;width:68px;height:68px;margin-bottom:14px;border:1px solid #D7C6FF;border-radius:21px;background:linear-gradient(135deg,#EEE6FF,#FFE9F6);color:#7537E5;font-size:1.55rem;box-shadow:0 15px 34px rgba(107,48,207,.18)}
.public-approval-confirm-icon i:last-child{position:absolute;right:-6px;bottom:-6px;display:grid;place-items:center;width:28px;height:28px;border:3px solid #FFF;border-radius:50%;background:#12AD70;color:#FFF;font-size:.72rem}
.public-approval-confirm h2{margin:7px 0 9px;color:#1F1930;font-size:1.55rem;line-height:1.1}
.public-approval-confirm>section>p{max-width:390px;margin:0;color:#6D667D;font-size:.84rem;line-height:1.55}
.public-approval-confirm-note{display:flex;align-items:flex-start;gap:9px;margin-top:17px;padding:11px 12px;border:1px solid #DCCFFF;border-radius:12px;background:#F5F0FF;color:#5E37AA;text-align:left;font-size:.72rem;font-weight:800;line-height:1.4}
.public-approval-confirm-note i{margin-top:1px;color:#8B45F3}
.public-approval-confirm-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:9px;width:100%;margin-top:20px}
.public-approval-confirm-actions .btn{justify-content:center;min-height:44px;border-radius:13px}
.public-approval-publish{border:1px solid #7533E2!important;background:linear-gradient(110deg,#7135E7,#C43DCE 60%,#EF469F)!important;color:#FFF!important;font-weight:950;box-shadow:0 12px 28px rgba(119,45,200,.27)}
.invitation-share-ready:target{animation:invitationShareReady 1.8s ease both}
@keyframes invitationShareReady{0%,35%{border-color:#8B4AF1;box-shadow:0 0 0 6px rgba(124,60,255,.15),0 18px 42px rgba(70,34,139,.16)}100%{box-shadow:none}}
@media(max-width:600px){.public-approval-confirm{align-items:end;padding:8px}.public-approval-confirm>section{width:100%;padding:25px 18px calc(18px + env(safe-area-inset-bottom));border-radius:23px}.public-approval-confirm-icon{width:58px;height:58px;border-radius:18px}.public-approval-confirm h2{font-size:1.3rem}.public-approval-confirm-actions{grid-template-columns:1fr}.public-approval-publish{grid-row:1}.public-approval-confirm-actions .btn{min-height:46px}}

/* Link publicado: tarjeta destacada y comercial. */
.invitation-share-ready{position:relative;border:2px solid #8A4AF1!important;background:linear-gradient(135deg,#F7F2FF 0%,#FFF 48%,#FFF3FB 100%)!important;box-shadow:0 0 0 4px rgba(124,60,255,.08),0 16px 36px rgba(78,38,152,.14)!important;overflow:hidden}
.invitation-share-ready:before{content:"";position:absolute;top:0;right:0;left:0;height:4px;background:linear-gradient(90deg,#7135E7,#B73DDB,#F044A0)}
.invitation-share-ready>small{color:#7135E7!important;font-weight:950!important}
@media(max-width:600px){.invitation-share-ready{border-width:2px!important;border-radius:15px!important;box-shadow:0 0 0 3px rgba(124,60,255,.07),0 12px 26px rgba(78,38,152,.12)!important}}

/* La tienda nunca debe ampliar la pagina fuera del viewport. */
.event-stage-card,.form-card.wide,.store-stage{width:100%;min-width:0;max-width:1120px}
.store-stage,.store-stage>*,.store-stage .delivery-location-card,.store-stage .delivery-methods,.store-stage .delivery-address-fields,.store-stage .store-entry-panel,.store-stage .store-entry-copy,.store-stage .store-entry-side{min-width:0;max-width:100%}
.store-stage .delivery-method-choice,.store-stage .delivery-method-choice>span,.store-stage .delivery-address-fields>label{min-width:0}
.store-stage .delivery-method-choice b,.store-stage .delivery-method-choice small,.store-stage .delivery-location-head,.store-stage .delivery-location-foot{overflow-wrap:anywhere}
.store-modal-panel{max-width:calc(100vw - 36px)}
.store-modal-header,.store-modal-tools,.store-modal-body,.store-modal-footer{min-width:0;max-width:100%}
@media(min-width:901px){.store-modal-body.has-open-cart{grid-template-columns:minmax(0,1fr) minmax(360px,600px)}}

/* Filtro de color configurable para la imagen de invitacion. */
.invitation-image-color-filter{position:absolute!important;z-index:1!important;inset:0!important;display:block;pointer-events:none}
.public-cover-color-filter{position:absolute;z-index:1;inset:0;display:block;pointer-events:none}
.invitation-image-filter-pill{position:relative}
.invitation-image-filter-pill[hidden]{display:none!important}
.invitation-image-filter-pill>summary{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:7px 11px;list-style:none;border:1px solid #CDBAFF;border-radius:999px;background:#F7F3FF;color:#6831D3;font-size:.68rem;font-weight:950;cursor:pointer}
.invitation-image-filter-pill>summary::-webkit-details-marker{display:none}
.invitation-image-filter-pill>summary:hover,.invitation-image-filter-pill[open]>summary{border-color:#7135E7;background:#EEE7FF;color:#5723BD}
.invitation-image-filter-chevron{font-size:.56rem;transition:transform .18s ease}.invitation-image-filter-pill[open] .invitation-image-filter-chevron{transform:rotate(180deg)}
.invitation-image-filter-panel{position:absolute;z-index:90;top:calc(100% + 8px);right:0;display:grid;gap:11px;width:310px;padding:14px;border:1px solid #CBB9F7;border-radius:16px;background:linear-gradient(180deg,#FFF,#FAF7FF);box-shadow:0 22px 55px rgba(33,20,70,.24)}
.invitation-image-filter-panel header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:9px;border-bottom:1px solid #E9E1F8}.invitation-image-filter-panel header>span{display:flex;align-items:center;gap:7px;color:#28213B;font-size:.78rem}.invitation-image-filter-panel header>span i{color:#7135E7}.invitation-image-filter-panel header>button{display:grid;place-items:center;width:27px;height:27px;padding:0;border:1px solid #D8C9F5;border-radius:50%;background:#FFF;color:#6530CF;cursor:pointer}
.invitation-image-filter-panel label{display:grid;gap:6px;margin:0;color:#4F4860;font-size:.68rem;font-weight:900}.invitation-filter-color{grid-template-columns:minmax(0,1fr) 48px;align-items:center}.invitation-filter-color input[type=color]{width:48px;height:36px;min-height:36px;padding:3px;border:1px solid #D8CDF0;border-radius:10px;background:#FFF;cursor:pointer}
.invitation-filter-presets{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.invitation-filter-presets button{width:100%;aspect-ratio:1;padding:0;border:3px solid #FFF;border-radius:50%;background:var(--filter-color);box-shadow:0 0 0 1px #D8CDF0,0 4px 9px rgba(30,20,60,.12);cursor:pointer}
.invitation-filter-opacity>span{display:flex;align-items:center;justify-content:space-between}.invitation-filter-opacity output{padding:3px 7px;border-radius:999px;background:#EEE7FF;color:#7135E7;font-size:.61rem}.invitation-filter-opacity input[type=range]{width:100%;height:26px;accent-color:#7135E7;cursor:pointer}
.invitation-image-filter-panel>small{color:#776F86;font-size:.62rem;line-height:1.4}
@media(max-width:700px){
 .invitation-image-filter-pill>summary>span,.invitation-image-filter-chevron{display:none!important}
 .invitation-image-filter-pill>summary{display:grid;place-items:center;width:34px;min-width:34px;height:34px;min-height:34px;padding:0;border-radius:50%}
 .invitation-image-filter-pill{position:static}
 .invitation-image-filter-pill[open]>.invitation-image-filter-panel{position:fixed;z-index:2300;top:auto;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));left:8px;width:auto;padding:12px;border-radius:18px}
 .invitation-image-filter-panel header{padding-bottom:7px}.invitation-filter-presets{gap:9px}.invitation-filter-presets button{max-width:34px;justify-self:center}.invitation-filter-opacity input[type=range]{height:32px}
}

/* Los editores moviles quedan por encima del dock inferior de etapas. */
@media(max-width:700px){
 body:has(.event-stage-card) .invitation-image-adjust-pill[open]>.invitation-image-editor{z-index:3200!important;bottom:calc(72px + env(safe-area-inset-bottom))!important;max-height:calc(100dvh - 88px)!important}
 body:has(.event-stage-card) .invitation-image-filter-pill[open]>.invitation-image-filter-panel{z-index:3200!important;bottom:calc(72px + env(safe-area-inset-bottom))!important;max-height:calc(100dvh - 88px)!important;overflow:auto}
 body:has(.event-stage-card).image-adjust-open>.image-adjust-panel{z-index:3200!important;bottom:calc(72px + env(safe-area-inset-bottom))!important;max-height:calc(100dvh - 88px)!important}
 .invitation-image-editor-head-actions,.invitation-image-filter-panel header{position:relative;z-index:100}
 .invitation-image-editor-close,.invitation-image-filter-panel header>button{position:relative;z-index:101;flex:0 0 auto;box-shadow:0 5px 13px rgba(49,25,102,.16)}
}

/* Recaudacion premium */
.revenue-premium-page{position:relative;isolation:isolate}.revenue-premium-page:before,.revenue-premium-page:after{content:"";position:fixed;z-index:-1;width:400px;height:400px;border-radius:50%;filter:blur(95px);pointer-events:none;opacity:.15}.revenue-premium-page:before{top:90px;right:-160px;background:#934dff}.revenue-premium-page:after{bottom:-160px;left:10%;background:#19cfad}.revenue-premium-page>.revenue-hero{position:relative;overflow:hidden;border:1px solid rgba(186,158,244,.38);border-radius:22px;background:linear-gradient(125deg,rgba(255,255,255,.99),rgba(247,241,255,.98) 58%,rgba(237,255,249,.97));box-shadow:0 25px 65px rgba(48,29,99,.13),inset 0 1px 0 #fff;animation:revenuePremiumEnter .58s cubic-bezier(.2,.75,.25,1) both}.revenue-premium-page>.revenue-hero:before{content:"";position:absolute;top:-120px;right:-70px;width:280px;height:280px;border:1px solid rgba(125,61,255,.13);border-radius:50%;box-shadow:0 0 0 38px rgba(125,61,255,.035),0 0 0 78px rgba(22,197,160,.025)}.revenue-premium-page>.revenue-hero:after{content:"";position:absolute;right:0;bottom:0;left:0;height:4px;background:linear-gradient(90deg,#7c3dff,#e83ba4,#14caa3)}.revenue-premium-page .revenue-hero>div{position:relative;z-index:1}.revenue-premium-page .revenue-hero h2{background:linear-gradient(100deg,#17132d,#6831d5 62%,#d72e90);background-clip:text;-webkit-background-clip:text;color:transparent;letter-spacing:-.025em}.revenue-premium-page .revenue-hero-total{border:1px solid rgba(205,188,244,.85);border-radius:17px;background:rgba(255,255,255,.78);box-shadow:0 14px 32px rgba(56,33,110,.1);backdrop-filter:blur(12px)}.revenue-premium-page .revenue-hero-total>strong{color:#6f34df;text-shadow:0 5px 20px rgba(111,52,223,.15)}.revenue-premium-page>.revenue-section,.revenue-premium-page>.event-summary-grid{animation:revenuePremiumEnter .56s cubic-bezier(.2,.75,.25,1) both}.revenue-premium-page>.revenue-section:nth-of-type(2){animation-delay:.06s}.revenue-premium-page>.revenue-section:nth-of-type(3){animation-delay:.12s}.revenue-premium-page>.revenue-section:nth-of-type(4){animation-delay:.18s}.revenue-premium-page>.revenue-section:nth-of-type(5){animation-delay:.24s}.revenue-premium-page>.event-summary-grid{animation-delay:.30s}.revenue-premium-page .revenue-section{position:relative;border:1px solid rgba(222,213,241,.96);border-radius:20px;background:linear-gradient(145deg,#fff,#fcfbff);box-shadow:0 17px 42px rgba(38,23,80,.085),inset 0 1px 0 #fff}.revenue-premium-page .revenue-section>.section-head{position:relative}.revenue-premium-page .revenue-section>.section-head:before{content:"";position:absolute;top:1px;bottom:1px;left:-17px;width:4px;border-radius:999px;background:linear-gradient(180deg,#7c3dff,#e83ba4);box-shadow:0 5px 14px rgba(124,61,255,.25)}.revenue-premium-page .revenue-stats-card{overflow:visible;background:linear-gradient(145deg,#fff,#faf7ff)}.revenue-premium-page .revenue-grid{gap:12px}.revenue-premium-page .revenue-stat{position:relative;overflow:hidden;border-width:1px;border-radius:16px;background:rgba(255,255,255,.9);box-shadow:0 12px 28px rgba(35,22,72,.075),inset 0 1px 0 #fff;opacity:0;animation:revenueStatReveal .5s cubic-bezier(.18,.8,.25,1) forwards;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.revenue-premium-page .revenue-stat:nth-child(1){animation-delay:.14s}.revenue-premium-page .revenue-stat:nth-child(2){animation-delay:.20s}.revenue-premium-page .revenue-stat:nth-child(3){animation-delay:.26s}.revenue-premium-page .revenue-stat:nth-child(4){animation-delay:.32s}.revenue-premium-page .revenue-stat:before{content:"";position:absolute;top:0;right:0;left:0;height:3px;background:currentColor;opacity:.78}.revenue-premium-page .revenue-stat:hover{transform:translateY(-5px);border-color:#cdbaf8;box-shadow:0 22px 45px rgba(46,27,99,.14)}.revenue-premium-page .revenue-stat>i{box-shadow:0 8px 20px rgba(40,25,83,.09)}.revenue-premium-page .revenue-stat>strong{letter-spacing:-.02em}.revenue-premium-page .attendance-summary-card .summary-metric{border-radius:15px;box-shadow:0 10px 25px rgba(38,24,77,.06);transition:transform .2s ease,box-shadow .2s ease}.revenue-premium-page .attendance-summary-card .summary-metric:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(45,27,96,.11)}.revenue-premium-page .revenue-types-toggle,.revenue-premium-page .revenue-movements-toggle,.revenue-premium-page .attendance-detail-button{border:1px solid rgba(255,255,255,.34)!important;background:linear-gradient(135deg,#7c3dff,#c83fd8 58%,#ee3b9f)!important;box-shadow:0 12px 27px rgba(124,60,255,.25)!important;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.revenue-premium-page .revenue-types-toggle:hover,.revenue-premium-page .revenue-movements-toggle:hover,.revenue-premium-page .attendance-detail-button:hover{transform:translateY(-2px);filter:saturate(1.08);box-shadow:0 17px 34px rgba(124,60,255,.33)!important}.revenue-premium-page .revenue-types-content,.revenue-premium-page .revenue-movements-content{border-top-color:#e6ddf7}.revenue-premium-page .revenue-type-card{border-radius:16px;box-shadow:0 12px 30px rgba(37,22,79,.075);transition:transform .22s ease,box-shadow .22s ease}.revenue-premium-page .revenue-type-card:hover{transform:translateY(-4px);box-shadow:0 20px 42px rgba(45,26,98,.13)}.revenue-premium-page .revenue-order{border-radius:15px;background:linear-gradient(145deg,#fff,#fbf9ff);box-shadow:0 9px 22px rgba(39,24,78,.055);transition:transform .2s ease,box-shadow .2s ease}.revenue-premium-page .revenue-order:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(42,25,91,.1)}.revenue-premium-page .revenue-summary-footer{gap:16px}.revenue-premium-page .revenue-summary-footer>.event-summary-card{overflow:hidden;border:1px solid #dfd5f3;border-radius:19px;background:linear-gradient(145deg,#fff,#faf7ff);box-shadow:0 17px 38px rgba(38,23,79,.085);transition:transform .22s ease,box-shadow .22s ease}.revenue-premium-page .revenue-summary-footer>.event-summary-card:first-child{border-top:4px solid #7c3dff}.revenue-premium-page .revenue-summary-footer>.event-summary-card:last-child{border-top:4px solid #16bc8a}.revenue-premium-page .revenue-summary-footer>.event-summary-card:hover{transform:translateY(-4px);box-shadow:0 23px 48px rgba(45,27,96,.13)}.revenue-premium-page .field-inline-help>summary{box-shadow:0 5px 13px rgba(75,43,145,.08);transition:transform .18s ease,background .18s ease,color .18s ease}.revenue-premium-page .field-inline-help>summary:hover{transform:scale(1.08)}.revenue-premium-page .event-detail-panel,.revenue-premium-page .revenue-detail-panel{border:1px solid rgba(255,255,255,.35);box-shadow:0 38px 110px rgba(8,5,27,.42)}
@keyframes revenuePremiumEnter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}@keyframes revenueStatReveal{from{opacity:0;transform:translateY(17px) scale(.975)}to{opacity:1;transform:none}}
@media(max-width:620px){.revenue-premium-page:before,.revenue-premium-page:after{width:240px;height:240px;filter:blur(70px)}.revenue-premium-page>.revenue-hero{border-radius:18px}.revenue-premium-page .revenue-hero-total{border-radius:14px}.revenue-premium-page .revenue-section{border-radius:17px;box-shadow:0 12px 30px rgba(38,23,80,.08)}.revenue-premium-page .revenue-section>.section-head:before{left:-16px}.revenue-premium-page .revenue-stat:hover,.revenue-premium-page .summary-metric:hover,.revenue-premium-page .revenue-type-card:hover,.revenue-premium-page .revenue-order:hover,.revenue-premium-page .revenue-summary-footer>.event-summary-card:hover{transform:none}.revenue-premium-page .revenue-stat:active,.revenue-premium-page .revenue-type-card:active{transform:scale(.985)}.revenue-premium-page .revenue-types-toggle:hover,.revenue-premium-page .revenue-movements-toggle:hover,.revenue-premium-page .attendance-detail-button:hover{transform:none}}
@media(max-width:620px){.calendar-page-topbar{display:flex!important;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:8px;width:100%;margin-bottom:14px}.calendar-page-topbar>.menu-toggle{flex:0 0 44px}.calendar-page-topbar>div:not(.top-actions){display:none}.calendar-page-topbar>.top-actions{display:flex!important;flex:0 0 auto;justify-content:flex-end;width:auto!important;margin-left:auto}.calendar-page-topbar .btn-back-top{min-height:40px;padding:9px 14px}.calendar-head{gap:0;padding:14px}.calendar-head>div:first-child,.calendar-head>.top-actions{display:none}.calendar-jump{grid-column:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%}.calendar-jump select{width:100%;min-width:0}.calendar-jump .btn{display:none}}
.public-participating-host-note{display:flex;align-items:center;gap:9px;margin:0 0 12px;padding:10px 13px;border:1px solid #bdebd9;border-radius:13px;background:linear-gradient(135deg,#effff8,#f7f2ff);color:#23745b;font-size:.74rem;font-weight:800;box-shadow:0 9px 22px rgba(23,150,110,.08)}.public-participating-host-note i{display:grid;place-items:center;flex:0 0 29px;width:29px;height:29px;border-radius:9px;background:#19b984;color:#fff;font-size:.9rem}@media(max-width:620px){.public-participating-host-note{margin-bottom:8px;padding:8px 10px;font-size:.66rem;line-height:1.35}.public-participating-host-note i{flex-basis:26px;width:26px;height:26px}}
@media(prefers-reduced-motion:reduce){.revenue-premium-page *{animation:none!important;transition-duration:.01ms!important}.revenue-premium-page .revenue-stat{opacity:1}}

/* Navegacion de la tienda: ambos botones comparten una fila solo en celular. */
@media(max-width:640px){
  .store-stage>.store-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    width:100%;
  }
  .store-stage>.store-actions .btn{
    width:100%;
    min-width:0;
    margin:0;
    justify-content:center;
  }
}

/* Datos principales del evento en el encabezado de recaudacion. */
.revenue-premium-page>.revenue-event-hero{display:block}
.revenue-event-hero-copy{max-width:900px}
.revenue-event-facts{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:20px}
.revenue-event-facts article{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;min-width:0;min-height:72px;padding:11px 12px;border:1px solid rgba(132,88,220,.22);border-radius:12px;background:linear-gradient(145deg,rgba(255,255,255,.62),rgba(247,242,255,.4));color:var(--dark2);box-shadow:0 12px 28px rgba(52,31,102,.09),inset 0 1px 0 rgba(255,255,255,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.revenue-event-facts article.is-address{grid-column:auto}
.revenue-event-facts article>i{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:rgba(139,69,243,.1);color:#d93699;font-size:1rem}
.revenue-event-facts article>span{display:grid;gap:4px;min-width:0}
.revenue-event-facts small{color:#746d84;font-size:.58rem;font-weight:900;letter-spacing:.035em;text-transform:uppercase}
.revenue-event-facts strong{overflow-wrap:anywhere;color:#201a31;font-size:.74rem;line-height:1.25}
@media(max-width:640px){
  .revenue-event-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:16px}
  .revenue-event-facts article{min-height:66px;padding:10px}
  .revenue-event-facts article.is-address{grid-column:1/-1}
  .revenue-event-facts article>i{width:27px;height:27px;font-size:.9rem}
}

/* Participacion opcional del anfitrion en su propio evento. */
.host-participation-card{display:grid;gap:14px;border:1px solid #ddd2f5!important;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(248,243,255,.9))!important;box-shadow:0 14px 34px rgba(57,32,111,.08)!important}
.host-participation-card.is-enabled{border-color:#9d69f5!important;box-shadow:0 0 0 3px rgba(124,60,255,.08),0 18px 38px rgba(69,36,137,.13)!important}
.host-participation-toggle{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;margin:0;cursor:pointer}
.host-participation-toggle>input{position:absolute;opacity:0;pointer-events:none}
.host-participation-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:14px;background:linear-gradient(135deg,#eee5ff,#ffe9f6);color:#7b3ee8;font-size:1.2rem;box-shadow:0 9px 22px rgba(111,51,213,.13)}
.host-participation-copy{display:grid;gap:3px;min-width:0}
.host-participation-copy small{color:#e43b94;font-size:.62rem;font-weight:950;letter-spacing:.035em;text-transform:uppercase}
.host-participation-copy strong{color:#211a33;font-size:.9rem}
.host-participation-copy em{color:#766e84;font-size:.68rem;font-style:normal;line-height:1.4}
.host-participation-switch{position:relative;width:46px;height:26px;border:1px solid #d7cceb;border-radius:999px;background:#eeeaf5;transition:.2s ease}
.host-participation-switch i{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 3px 8px rgba(36,25,63,.2);transition:.2s ease}
.host-participation-toggle>input:checked~.host-participation-switch{border-color:#7c3cff;background:linear-gradient(135deg,#7c3cff,#de3da9)}
.host-participation-toggle>input:checked~.host-participation-switch i{transform:translateX(20px)}
.host-attendance-options{display:none;padding-top:13px;border-top:1px solid #e8dff7}
.host-participation-card.is-enabled .host-attendance-options{display:grid;gap:9px}
.host-attendance-options>span{color:#615873;font-size:.68rem;font-weight:900}
.host-attendance-options>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.host-attendance-options label{margin:0}.host-attendance-options input{position:absolute;opacity:0}
.host-attendance-options label>span{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:9px;border:1px solid #ddd5ea;border-radius:12px;background:rgba(255,255,255,.78);color:#625a70;font-size:.72rem;font-weight:900;cursor:pointer;transition:.18s ease}
.host-attendance-options .confirmed i{color:#0ca56f}.host-attendance-options .maybe i{color:#c38200}.host-attendance-options .declined i{color:#dd3156}
.host-attendance-options input:checked+span{border-color:#8e52ed;background:#f4edff;color:#6631c8;box-shadow:0 0 0 3px rgba(124,60,255,.08)}
@media(max-width:640px){.host-participation-card{gap:11px;padding:14px!important}.host-participation-toggle{gap:9px}.host-participation-icon{width:38px;height:38px;border-radius:11px}.host-participation-copy em{display:none}.host-attendance-options>div{grid-template-columns:1fr}.host-attendance-options label>span{justify-content:flex-start;min-height:39px}}

/* Contencion horizontal de las etapas Tienda e Invitacion. */
.shell{width:100%;max-width:100%;overflow-x:clip}
.main{min-width:0;overflow-x:clip}
.event-stage-card,
.event-stage-card + .form-card,
.event-stage-card + .store-stage{
  width:min(1120px,100%);
  min-width:0;
  max-width:100%;
  margin-right:auto;
  margin-left:auto;
}
.event-stage-card *,
.event-stage-card + .form-card *,
.event-stage-card + .store-stage *{min-width:0}
.event-stage-card .stage-progress{width:100%;max-width:100%}
.event-stage-card .stage-progress-item strong,
.event-stage-card .event-stage-main h2,
.event-stage-card .event-stage-main p,
.event-stage-card + .form-card p,
.event-stage-card + .store-stage p{overflow-wrap:anywhere}
.event-stage-card + .form-card img,
.event-stage-card + .store-stage img{max-width:100%}
.event-stage-card + .form-card .form-grid,
.event-stage-card + .form-card .repeat-list,
.event-stage-card + .store-stage .delivery-methods,
.event-stage-card + .store-stage .delivery-address-fields{width:100%;max-width:100%}
.store-modal{max-width:100vw;overflow:hidden}
.store-modal-panel{width:min(1320px,calc(100vw - 36px));max-width:calc(100vw - 36px)}
.store-modal-panel *{min-width:0}
.store-modal-tools select,
.store-modal-tools input,
.store-modal-footer .btn{max-width:100%}

@media(min-width:981px){
  .shell:has(.event-stage-card){grid-template-columns:280px minmax(0,1fr)}
  .shell:has(.event-stage-card)>.sidebar{
    position:sticky;
    top:0;
    align-self:start;
    width:280px;
    height:100vh;
    min-height:100vh;
    max-height:100vh;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
  }
  .shell:has(.event-stage-card)>.main{
    width:100%;
    min-width:0;
    max-width:100%;
  }
}

@supports(height:100dvh){
  @media(min-width:981px){
    .shell:has(.event-stage-card)>.sidebar{
      height:100dvh;
      min-height:100dvh;
      max-height:100dvh;
    }
  }
}

@media(max-width:980px){
  .shell{grid-template-columns:minmax(0,1fr)}
  .main{width:100%;max-width:100vw}
}

@media(max-width:700px){
  .main{padding-right:12px;padding-left:12px}
  .event-stage-card,
  .event-stage-card + .form-card,
  .event-stage-card + .store-stage{width:100%;max-width:100%;overflow-x:clip}
  .event-stage-main{display:grid;width:100%;padding:16px;gap:10px}
  .event-stage-main>div{width:100%;max-width:100%}
  .event-stage-main h2{font-size:1.25rem}
  .event-stage-card + .form-card,
  .event-stage-card + .store-stage{padding-right:14px;padding-left:14px}
  .event-stage-card + .form-card .form-grid,
  .event-stage-card + .store-stage .delivery-methods,
  .event-stage-card + .store-stage .delivery-address-fields{grid-template-columns:minmax(0,1fr)}
  .invitation-image-upload,
  .invitation-image-actions,
  .host-participation-card,
  .host-attendance-options{width:100%;max-width:100%}
  .invitation-image-actions{flex-wrap:wrap}
  .store-modal{padding:0}
  .store-modal-panel{width:100%;max-width:100vw;height:100dvh;border-radius:0}
  .store-modal-header,
  .store-modal-tools,
  .store-modal-body,
  .store-modal-footer{width:100%;max-width:100vw}
  .store-modal-tools{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}

@supports not (overflow:clip){
  .shell,.main,.event-stage-card,.event-stage-card + .form-card,.event-stage-card + .store-stage{overflow-x:hidden}
}

/* Los popovers pueden sobresalir visualmente, pero no deben ampliar la pagina. */
html:has(.event-stage-card),
body:has(.event-stage-card){width:100%;max-width:100%;overflow-x:hidden}

/* Consentimiento legal claro y legible durante el registro. */
.legal-acceptance-check>span{color:var(--dark2);font-size:.8rem;font-weight:750;line-height:1.55}
.legal-acceptance-check>span a{color:#3478f6;font-weight:900;text-decoration:none}
.legal-acceptance-check>span a:hover{text-decoration:underline}
.legal-acceptance-check>span a:focus-visible{border-radius:4px;outline:3px solid rgba(52,120,246,.22);outline-offset:2px}

/* Centro premium de solicitudes del evento. */
.event-request-center{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:22px 24px;border-color:#ded1fb;background:linear-gradient(135deg,#fff 0%,#faf6ff 62%,#f2fbff 100%)}
.event-request-hero-actions{position:relative;z-index:3;display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}.event-request-hero-actions .btn{min-height:42px;padding:10px 15px}.event-date-request-button{border:1px solid rgba(124,60,255,.28);background:linear-gradient(135deg,#7c3cff,#b83fe0);color:#fff;font-weight:900;box-shadow:0 10px 24px rgba(103,46,207,.22)}.event-request-hero-actions .event-cancel-request-button{border-color:#f19ab0;background:#fff;color:#ca244d}.event-request-history-card{grid-template-columns:1fr}.event-request-history-card .event-request-history{grid-column:1;padding-top:0;border-top:0}
.event-request-center h3{margin:5px 0;color:var(--dark2);font-size:1.14rem}.event-request-center p{margin:0;color:var(--muted);font-size:.78rem}.event-request-center-actions{display:flex;gap:9px}.event-cancel-request-button{border:1px solid #ffc3d0;background:#fff6f8;color:#d92e57;font-weight:900}.event-request-history{display:flex;grid-column:1/-1;flex-wrap:wrap;gap:7px;padding-top:12px;border-top:1px solid #eee6fa}.event-request-history span{padding:7px 10px;border-radius:999px;background:#f2edfc;color:#625875;font-size:.67rem}.event-request-history i{margin-right:5px;color:var(--primary)}
body.event-request-open{overflow:hidden}.event-request-dialog{position:fixed;inset:0;z-index:5100;display:grid;place-items:center;padding:18px}.event-request-dialog[hidden]{display:none}.event-request-backdrop{position:absolute;inset:0;background:rgba(17,10,38,.68);backdrop-filter:blur(7px)}.event-request-dialog>section{position:relative;width:min(520px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:28px;border:1px solid #d9cafb;border-radius:24px;background:#fff;box-shadow:0 30px 90px rgba(20,10,48,.35)}.event-request-dialog h3{margin:7px 42px 14px 0;font-size:1.45rem}.event-request-close{position:absolute;top:16px;right:16px;display:grid;width:38px;height:38px;place-items:center;border:0;border-radius:50%;background:#f1ebff;color:var(--primary);cursor:pointer}.event-request-policy{margin-bottom:18px;padding:15px;border:1px solid #f1d39b;border-radius:14px;background:#fff8e9;color:#72501b;font-size:.78rem;font-weight:750;line-height:1.55}.event-request-dialog form{display:grid;gap:12px}.event-request-dialog textarea{resize:vertical}
@media(max-width:700px){.event-request-center{grid-template-columns:1fr;padding:18px 16px}.event-request-center-actions{display:grid;grid-template-columns:1fr}.event-request-center-actions .btn{width:100%}.event-request-hero-actions{display:grid;grid-template-columns:1fr}.event-request-hero-actions .btn{width:100%}.event-request-dialog{padding:10px}.event-request-dialog>section{padding:24px 17px;border-radius:20px}}

/* Selector de pasarela visible solo en el paso final y comprobantes validados. */
.checkout-payment-provider-form{display:grid;gap:18px;margin-top:18px}.checkout-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.checkout-provider-choice{display:block;cursor:pointer}.checkout-provider-choice>input{position:absolute;opacity:0;pointer-events:none}.checkout-provider-choice>span{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:5px 12px;min-height:104px;padding:17px;border:1px solid #ddd3f5;border-radius:17px;background:linear-gradient(145deg,#fff,#faf7ff);transition:.18s ease}.checkout-provider-choice i{grid-row:1/3;display:grid;width:42px;height:42px;place-items:center;border-radius:13px;background:#eee7ff;color:var(--primary);font-size:1.1rem}.checkout-provider-choice b{font-size:.94rem}.checkout-provider-choice small{color:var(--muted);line-height:1.4}.checkout-provider-choice em{grid-row:1/3;grid-column:3;padding:6px 9px;border-radius:999px;background:#f0eaff;color:var(--primary);font-size:.64rem;font-style:normal;font-weight:900}.checkout-provider-choice>input:checked+span{border-color:#8748f3;box-shadow:0 0 0 3px rgba(126,58,238,.12),0 14px 32px rgba(75,37,142,.13)}.checkout-provider-choice>input:checked+span em{background:linear-gradient(135deg,#7c3cff,#ef3ca5);color:#fff}
.payment-receipt-list{display:grid;gap:9px}.payment-receipt-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:13px;border:1px solid #e0d8f2;border-radius:13px;background:#fff}.payment-receipt-list article>i{color:#18a86d;font-size:1.35rem}.payment-receipt-list article span{display:grid}.payment-receipt-list article small{margin-top:3px;color:var(--muted)}.payment-receipt-list article>b{color:var(--dark2);font-size:1rem}.payment-receipt-list article>em{padding:5px 8px;border-radius:999px;background:#edfff6;color:#098857;font-size:.62rem;font-style:normal;font-weight:900}
@media(max-width:650px){.checkout-provider-grid{grid-template-columns:1fr}.checkout-provider-choice>span{min-height:92px}.payment-receipt-list article{grid-template-columns:auto 1fr}.payment-receipt-list article>b,.payment-receipt-list article>em{grid-column:2;justify-self:start}}
body:has(.event-stage-card) .shell,
body:has(.event-stage-card) .main{min-width:0;max-width:100%}

/* Perfil movil: menu, titulo y volver comparten una sola linea. */
@media(max-width:640px){
  .profile-page-topbar{display:flex!important;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:8px;width:100%;margin-bottom:14px}
  .profile-page-topbar>.menu-toggle{flex:0 0 auto}
  .profile-page-topbar>div:not(.top-actions){min-width:0;margin-left:auto;text-align:right}
  .profile-page-topbar h1{margin:0;white-space:nowrap;font-size:1rem;line-height:1.1}
  .profile-page-topbar>.top-actions{display:flex!important;flex:0 0 auto;width:auto!important;margin:0!important;justify-content:flex-end}
  .profile-page-topbar .btn-back-top{min-height:38px;padding:8px 12px;white-space:nowrap}
}

/* Carrito movil como vista dedicada, sin superponerse al catalogo ni al dock. */
@media(max-width:600px){
  body.store-cart-view-open{overflow:hidden}
  body.store-cart-view-open .store-modal{z-index:4500}
  body.store-cart-view-open .store-selected-list{position:fixed!important;z-index:30;inset:0!important;display:flex;width:100%;height:100dvh;max-height:none!important;margin:0;border:0;border-radius:0;background:#f7f5fb;box-shadow:none}
  body.store-cart-view-open .store-selected-list-head{position:relative;flex:0 0 auto;padding:calc(15px + env(safe-area-inset-top)) 16px 13px;border-bottom:1px solid #e4ddef;background:linear-gradient(135deg,#fff,#f8f3ff)}
  body.store-cart-view-open .store-selected-list-head h3{font-size:1.08rem}
  body.store-cart-view-open .store-selected-list-head button{width:38px;height:38px;border-color:#d9cff0;box-shadow:0 7px 18px rgba(45,27,88,.1)}
  body.store-cart-view-open .store-selected-table-wrap{flex:1;min-height:0;padding:10px 10px 16px;overflow-y:auto;overscroll-behavior:contain;background:#f7f5fb}
  body.store-cart-view-open .store-selected-table tbody{display:grid;gap:10px}
  body.store-cart-view-open .store-selected-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;margin:0;padding:14px;border:1px solid #ded5ee;border-radius:15px;background:#fff;box-shadow:0 9px 24px rgba(42,27,80,.07)}
  body.store-cart-view-open .store-selected-table td{min-width:0;padding:0!important}
  body.store-cart-view-open .store-selected-table td:nth-child(2){grid-column:1/-1;grid-row:1;font-size:.83rem;line-height:1.35}
  body.store-cart-view-open .store-selected-table td:nth-child(1){grid-column:1;grid-row:2;justify-content:flex-start!important;align-items:center}
  body.store-cart-view-open .store-selected-table td:nth-child(5){grid-column:2;grid-row:2;align-items:center;justify-content:flex-end!important}
  body.store-cart-view-open .store-selected-table td:nth-child(1)::before,
  body.store-cart-view-open .store-selected-table td:nth-child(5)::before{display:none}
  body.store-cart-view-open .store-selected-table td:nth-child(3){grid-column:1;grid-row:3;justify-content:flex-start!important}
  body.store-cart-view-open .store-selected-table td:nth-child(4){grid-column:2;grid-row:3;justify-content:flex-end!important}
  body.store-cart-view-open .store-selected-table td:nth-child(3)::before,
  body.store-cart-view-open .store-selected-table td:nth-child(4)::before{margin-right:7px}
  body.store-cart-view-open .selected-quantity-control{grid-template-columns:34px 42px 34px;border-radius:10px}
  body.store-cart-view-open .selected-quantity-control button,
  body.store-cart-view-open .selected-quantity-control input{height:34px}
  body.store-cart-view-open .store-selected-list-total{position:relative;flex:0 0 auto;justify-content:space-between;padding:14px 16px calc(14px + env(safe-area-inset-bottom));border-top:1px solid #ded5ee;background:#fff;box-shadow:0 -10px 28px rgba(33,20,68,.09)}
  body.store-cart-view-open .store-selected-list-total strong{font-size:1.25rem;color:#6f35dc}
  body.store-cart-view-open .store-selected-list-total .store-selected-list-pay{width:100%}
}

/* Cierre visible y consistente para ventanas, paneles y editores. */
button[aria-label^="Cerrar"]:not(.menu-close),
.service-slot-dialog header>button{
  border:1px solid #8A43EC!important;
  background:linear-gradient(135deg,#7A3FF0 0%,#B83DDA 58%,#EB3C9C 100%)!important;
  color:#FFF!important;
  box-shadow:0 9px 22px rgba(113,53,231,.30),0 0 0 3px rgba(139,75,239,.09)!important;
  transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
button[aria-label^="Cerrar"]:not(.menu-close):hover,
button[aria-label^="Cerrar"]:not(.menu-close):focus-visible,
.service-slot-dialog header>button:hover,
.service-slot-dialog header>button:focus-visible{
  border-color:#6324D0!important;
  background:linear-gradient(135deg,#6330D8,#A62EC8 55%,#E62488)!important;
  color:#FFF!important;
  box-shadow:0 14px 30px rgba(102,41,210,.40),0 0 0 4px rgba(139,75,239,.13)!important;
  transform:translateY(-2px) scale(1.06);
}
button[aria-label^="Cerrar"]:not(.menu-close):active,
.service-slot-dialog header>button:active{
  transform:scale(.96);
}

/* Dashboard movil compacto: el saludo extenso queda reservado para escritorio. */
@media(max-width:640px){
  .dashboard-premium-page .dashboard-overview-copy h2,
  .dashboard-premium-page .dashboard-overview-copy p{display:none}
}

/* Acceso compacto al carrito en el encabezado; el resto se guarda automaticamente. */
.store-modal-title-row{display:flex;align-items:center;gap:10px;min-width:0}
.store-modal-title-row h2{min-width:0;margin:0}
.store-header-cart-button{display:inline-grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;border:1px solid #15a86c;border-radius:13px;background:linear-gradient(135deg,#1bc681,#0fae70);color:#fff;box-shadow:0 8px 20px rgba(18,174,111,.22);font-size:1.05rem;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease}
.store-header-cart-button:hover,.store-header-cart-button:focus-visible,.store-header-cart-button.has-cart-energy{border-color:#087c4d;background:linear-gradient(135deg,#11b875,#078f58);color:#fff;box-shadow:0 11px 25px rgba(9,151,91,.3);transform:translateY(-1px)}
.store-selected-list-pay:disabled{cursor:not-allowed;opacity:.58;filter:saturate(.55);box-shadow:none!important}
.store-product-image-fallback{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:6px;overflow:hidden;background:radial-gradient(circle at 18% 20%,rgba(255,255,255,.9) 0 5%,transparent 6%),radial-gradient(circle at 82% 76%,rgba(255,255,255,.75) 0 7%,transparent 8%),linear-gradient(145deg,#f5efff 0%,#eee6ff 48%,#fff0f8 100%);color:#6f35dc;text-align:center}
.store-product-image-fallback[hidden]{display:none}
.store-product-image-fallback i{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#7b3ff0,#d83dbd);color:#fff;font-size:1.25rem;box-shadow:0 10px 24px rgba(113,53,231,.24)}
.store-product-image-fallback strong{color:#352153;font-size:.78rem;font-weight:950}
.store-product-image-fallback span{padding:3px 7px;border:1px solid rgba(113,53,231,.17);border-radius:999px;background:rgba(255,255,255,.7);color:#8b55d8;font-size:.55rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.product-detail-placeholder{place-content:center;justify-items:center;gap:8px;background:radial-gradient(circle at 18% 20%,rgba(255,255,255,.9) 0 5%,transparent 6%),radial-gradient(circle at 82% 76%,rgba(255,255,255,.75) 0 7%,transparent 8%),linear-gradient(145deg,#f5efff 0%,#eee6ff 48%,#fff0f8 100%);color:#6f35dc;text-align:center}
.product-detail-placeholder i{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,#7b3ff0,#d83dbd);color:#fff;font-size:1.65rem;box-shadow:0 13px 30px rgba(113,53,231,.27)}
.product-detail-placeholder strong{color:#352153;font-size:1rem;font-weight:950}
.product-detail-placeholder span{padding:4px 9px;border:1px solid rgba(113,53,231,.17);border-radius:999px;background:rgba(255,255,255,.72);color:#8b55d8;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.product-detail-commerce-row{display:contents}
@media(max-width:600px){
  .product-detail-content h2{max-width:100%;margin:5px 0 8px;font-size:1rem;line-height:1.12}
  .product-detail-commerce-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;margin:3px 0 2px}
  .product-detail-commerce-row .product-detail-price{flex:0 0 auto;margin:0;font-size:1.08rem;white-space:nowrap}
  .product-detail-commerce-row .detail-quantity-control{flex:0 0 142px;width:142px;min-height:34px;margin:0;grid-template-columns:32px minmax(66px,1fr) 32px;border-radius:10px}
  .product-detail-commerce-row .detail-quantity-control button,
  .product-detail-commerce-row .detail-quantity-control input{height:34px;min-height:34px}
  .product-detail-commerce-row .detail-quantity-control input{font-size:.82rem}
  .product-detail-commerce-row .detail-quantity-control [data-detail-quantity-plus]::after{font-size:1rem}
}
@media(max-width:340px){
  .product-detail-commerce-row{gap:6px}
  .product-detail-commerce-row .product-detail-price{font-size:.96rem}
  .product-detail-commerce-row .detail-quantity-control{flex-basis:124px;width:124px;grid-template-columns:28px minmax(58px,1fr) 28px}
}
.store-product-media[role="button"]{cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.store-product-media[role="button"]:hover,.store-product-media[role="button"]:focus-visible{border-color:#8b4aef;box-shadow:0 10px 25px rgba(102,52,194,.18);outline:0;transform:translateY(-1px)}
.store-product-media-actions{position:absolute;z-index:4;top:7px;right:7px;display:flex;align-items:center;gap:5px}
.store-product-media-actions .store-product-delete,.store-product-media-actions .store-selected-check{box-shadow:0 6px 16px rgba(24,15,55,.16);backdrop-filter:blur(7px)}
/* Las categorias se reservan para filtros y detalle, no para la tarjeta. */
.store-product-card .store-product-top{display:none}
/* Selector de cantidad XS para las tarjetas de productos. */
.store-product-card:not(.store-service-card) .quantity-control{flex:0 0 auto;width:94px;grid-template-columns:26px 42px 26px;border-radius:8px}
.store-product-card:not(.store-service-card) .quantity-control button{width:26px;min-width:26px;height:28px;min-height:28px;padding:0;font-size:.72rem}
.store-product-card:not(.store-service-card) .quantity-control input[type="number"]{width:42px;min-width:42px;height:28px;min-height:28px;padding:2px;font-size:.74rem}
@media(max-width:600px){
  .store-product-card:not(.store-service-card) .store-product-bottom{flex-direction:row;align-items:center}
  .store-product-card:not(.store-service-card) .quantity-control{width:88px;grid-template-columns:24px 40px 24px}
  .store-product-card:not(.store-service-card) .quantity-control button{width:24px;min-width:24px;height:27px;min-height:27px}
  .store-product-card:not(.store-service-card) .quantity-control input[type="number"]{width:40px;min-width:40px;height:27px;min-height:27px}
}

/* Presentacion premium y compacta de productos en la tienda movil. */
@media(max-width:600px){
  .store-modal-product-grid:not(.store-service-grid){gap:9px}
  .store-modal-product-grid .store-product-card:not(.store-service-card){gap:8px;padding:9px;border-color:#e1d9f0;border-radius:15px;background:linear-gradient(160deg,#fff 0%,#fdfbff 100%);box-shadow:0 7px 19px rgba(47,29,92,.07)}
  .store-modal-product-grid .store-product-card:not(.store-service-card).is-selected{border-color:#52d39b;background:linear-gradient(160deg,#fff 0%,#f1fff8 100%);box-shadow:0 9px 22px rgba(22,167,101,.14)}
  .store-product-card:not(.store-service-card) .store-product-top{min-height:28px;align-items:flex-start}
  .store-product-card:not(.store-service-card) .store-product-tags{align-content:flex-start;gap:3px}
  .store-product-card:not(.store-service-card) .store-product-tags>span{font-size:.53rem;letter-spacing:.015em}
  .store-product-card:not(.store-service-card) .store-product-tags small{font-size:.52rem;padding:2px 4px}
  .store-product-card:not(.store-service-card):not(.is-selected) .store-selected-check{visibility:hidden}
  .store-product-card:not(.store-service-card) .store-selected-check{width:21px;height:21px;border-radius:7px}
  .store-product-card:not(.store-service-card) .store-product-media{aspect-ratio:1/1;border-color:#ded5ef;border-radius:11px;background:#f5f2f9}
  .store-product-card:not(.store-service-card) .store-product-media[role="button"]:active{transform:scale(.985)}
  .store-product-card:not(.store-service-card) h3{display:-webkit-box;min-height:34px;margin:0;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:.76rem;line-height:1.18}
  .store-product-card:not(.store-service-card) h3 + p{min-height:30px;-webkit-line-clamp:2;font-size:.65rem;line-height:1.28}
  .store-product-card:not(.store-service-card) .store-product-bottom{gap:6px;padding-top:8px;border-top:1px solid #eee9f5}
  .store-product-card:not(.store-service-card) .store-product-bottom>strong{font-size:.9rem;letter-spacing:-.02em;white-space:nowrap}
  .store-product-card:not(.store-service-card) .quantity-control{margin-left:auto;background:#fff;box-shadow:0 4px 11px rgba(69,39,132,.06)}
}
@media(max-width:420px){
  .store-product-card:not(.store-service-card) .store-product-bottom{flex-direction:row;align-items:center;gap:4px}
  .store-product-card:not(.store-service-card) .store-product-bottom>strong{font-size:.82rem}
  .store-product-card:not(.store-service-card) .quantity-control{align-self:auto;width:72px;margin-left:auto;grid-template-columns:20px 32px 20px}
  .store-product-card:not(.store-service-card) .quantity-control button{width:20px;min-width:20px;height:25px;min-height:25px;font-size:.66rem}
  .store-product-card:not(.store-service-card) .quantity-control input[type="number"]{width:32px;min-width:32px;height:25px;min-height:25px;padding:1px;font-size:.68rem}
}
@media(max-width:600px){
  .store-header-cart-button{flex-basis:36px;width:36px;height:36px;border-radius:11px}
  .store-modal-panel:not(:has(.store-modal-footer)) .store-modal-body{padding-bottom:18px}
  body.store-cart-view-open .selected-quantity-control{grid-template-columns:24px 34px 24px;border-radius:8px}
  body.store-cart-view-open .selected-quantity-control button{width:24px;min-width:24px;height:27px;min-height:27px;font-size:.7rem}
  body.store-cart-view-open .selected-quantity-control input{width:34px;min-width:34px;height:27px;min-height:27px;padding:1px;font-size:.72rem}
  body.store-cart-view-open .selected-detail-button,
  body.store-cart-view-open .selected-product-delete{width:27px;min-width:27px;height:27px;min-height:27px;padding:0;border-radius:8px;font-size:.7rem}
  body.store-cart-view-open .store-selected-list-total{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}
  body.store-cart-view-open .store-selected-list-total>span{align-self:center}
  body.store-cart-view-open .store-selected-list-total>strong{align-self:center;text-align:right}
  body.store-cart-view-open .store-selected-list-total .store-selected-list-pay{grid-column:1/-1;width:100%;min-height:40px;margin:0}
}

/* Dos tarjetas de producto aprovechan todo el ancho disponible en celular. */
@media(max-width:600px){
  .store-modal-panel:not(:has(.store-modal-footer)) .store-modal-body{padding-right:6px;padding-left:6px}
  .store-modal-product-grid:not(.store-service-grid){grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .store-modal-product-grid .store-product-card:not(.store-service-card){padding:7px}
  .store-product-card:not(.store-service-card) .store-product-tags{display:none}
  .store-product-media-actions{top:5px;right:5px;gap:4px}
  .store-product-media-actions .store-product-delete,.store-product-media-actions .store-selected-check{width:22px;height:22px;min-width:22px;border-radius:7px;font-size:.65rem}
}
@media(max-width:420px){
  .store-product-card:not(.store-service-card) .store-product-bottom>strong{font-size:.72rem}
  .store-product-card:not(.store-service-card) .store-product-bottom{min-width:0;padding-right:2px}
  .store-product-card:not(.store-service-card) .quantity-control{box-sizing:border-box;flex:0 0 57px;width:57px;min-width:57px;margin-right:7px;grid-template-columns:17px 21px 17px}
  .store-product-card:not(.store-service-card) .quantity-control button{box-sizing:border-box;display:grid!important;place-items:center!important;width:17px;min-width:0;height:26px;min-height:26px;padding:0!important;overflow:visible;font-size:.66rem;line-height:1;text-align:center}
  .store-product-card:not(.store-service-card) .quantity-control input[type="number"]{box-sizing:border-box;width:21px;min-width:0;height:26px;min-height:26px;padding:0;font-size:.65rem}
  .store-product-card:not(.store-service-card) .quantity-control [data-quantity-plus]::after{display:grid;width:17px;height:26px;place-items:center;font-size:.8rem;line-height:1;transform:none}
}

/* Alinea el signo + dentro de su celda en las tarjetas de la tienda movil. */
@media(max-width:600px){
  .store-product-card:not(.store-service-card) .quantity-control [data-quantity-plus]::before{
    inset:0!important;
    justify-content:flex-start!important;
    padding-left:2px!important;
    text-align:left!important;
  }
}
.product-detail-description>[data-detail-description]{width:100%;color:var(--muted);line-height:1.65}.product-detail-description>[data-detail-description] p{margin:0 0 8px}.product-detail-description>[data-detail-description] ul,.product-detail-description>[data-detail-description] ol{margin:7px 0;padding-left:22px}.product-detail-description>[data-detail-description] li+li{margin-top:4px}

/* Selector comercial de variantes para clientes. */
.store-variation-choice{display:inline-flex;align-items:center;gap:5px;max-width:100%;margin-top:6px;padding:5px 8px;border:1px solid #d9cdf6;border-radius:999px;background:#f7f3ff;color:#6f35dc;font-size:.62rem;font-weight:900;cursor:pointer}.store-variation-choice[hidden]{display:none!important}.store-variation-choice span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.store-variation-pills{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.store-variation-pills:empty{display:none}.store-variation-pills>button{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:3px 4px 3px 7px;border:1px solid #d9cdf6;border-radius:999px;background:#fff;color:#584274;font-size:.54rem;font-weight:850;cursor:pointer;transition:transform .16s ease,border-color .16s ease}.store-variation-pills>button:hover{border-color:#8d61ec}.store-variation-pills>button:active{transform:scale(.96)}.store-variation-pills>button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.store-variation-pills b{display:grid;min-width:17px;height:17px;place-items:center;padding:0 4px;border-radius:999px;background:linear-gradient(135deg,#7c3dff,#db36bd);color:#fff;font-size:.52rem}.product-detail-variations{display:grid;gap:9px;width:100%;margin:8px 0 4px;padding:12px;border:1px solid #ded4f4;border-radius:14px;background:linear-gradient(145deg,#faf7ff,#fff)}.product-detail-variations>span{color:#33264d;font-size:.72rem;font-weight:950}.product-detail-variations>[data-detail-variation-options]{display:grid;gap:8px}.product-variation-option{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 9px;border:1px solid #ded5ef;border-radius:11px;background:#fff;color:#2a2139}.product-variation-select{display:flex;align-items:center;gap:7px;min-width:0;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.product-variation-select>i:not(.bi){width:18px;height:18px;flex:0 0 18px;border:2px solid #fff;border-radius:50%;background:var(--variation-color);box-shadow:0 0 0 1px #cfc4df}.product-variation-select>span{display:grid;gap:2px;min-width:0}.product-variation-option b{font-size:.72rem}.product-variation-option small{color:#756b83;font-size:.64rem;font-weight:850}.product-variation-option.is-selected{border-color:#7c3dff;background:#f3edff;box-shadow:0 0 0 2px rgba(124,61,255,.1)}.variation-inline-quantity{display:grid;grid-template-columns:30px 38px 30px;overflow:hidden;border:1px solid #d5c9ef;border-radius:9px;background:#fff}.variation-inline-quantity button{display:grid;width:30px;height:32px;place-items:center;padding:0;border:0;background:#f7f3ff;color:#7135e7;font-weight:950;cursor:pointer}.variation-inline-quantity input{width:38px;min-width:0;height:32px;min-height:32px;padding:0;border:0;border-right:1px solid #ece6f7;border-left:1px solid #ece6f7;border-radius:0;text-align:center;font-size:.72rem;font-weight:950}.product-detail-variations aside{display:flex;align-items:flex-start;gap:7px;padding:8px 9px;border-radius:9px;background:#eef9ff;color:#176995;font-size:.68rem}.product-detail-variations aside p{margin:0;line-height:1.4}.detail-quantity-control :disabled{cursor:not-allowed!important;opacity:.42}
@media(max-width:600px){.store-variation-choice{font-size:.58rem}.product-detail-variations{padding:10px}.product-variation-option{grid-template-columns:minmax(0,1fr) auto;padding:8px}.variation-inline-quantity{grid-template-columns:27px 34px 27px}.variation-inline-quantity button{width:27px}.variation-inline-quantity input{width:34px}}
body.event-store-detail-open .whatsapp-float{display:none!important}
.store-variation-pills>button.is-color{padding-left:4px}.store-variation-pills>button.is-color>i{display:block;width:19px;height:19px;border:2px solid #fff;border-radius:50%;background:var(--variation-color);box-shadow:0 0 0 1px #cfc4df}
/* Alineacion del signo + en el carrito para escritorio y celular. */
.selected-quantity-control [data-selected-quantity-plus]{position:relative!important;align-items:center!important;justify-items:start!important;place-items:center start!important}.selected-quantity-control [data-selected-quantity-plus]::before{position:absolute!important;inset:0!important;box-sizing:border-box!important;display:flex!important;width:100%!important;height:100%!important;align-items:center!important;justify-content:flex-start!important;padding:0 0 0 2px!important;line-height:1!important;text-align:left!important}
.product-detail-modal{z-index:5000}
.event-stage-main .event-stage-intro{display:grid;gap:9px;min-width:0}
.event-stage-main .event-stage-eyebrow{display:block;color:#7a35e8;font-size:.68rem;font-weight:950;line-height:1.2;letter-spacing:.1em;text-transform:uppercase}
.event-stage-main .event-stage-prompt{display:flex;align-items:center;gap:13px;margin:0;color:var(--dark2);font-size:clamp(1.12rem,2vw,1.42rem);font-weight:950;line-height:1.18;letter-spacing:-.025em}
.event-stage-main .event-stage-prompt-icon{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border:1px solid rgba(130,57,238,.18);border-radius:14px;background:linear-gradient(145deg,#f3ecff,#fff0f8);color:#9639ea;box-shadow:0 9px 22px rgba(117,48,220,.14)}
.event-stage-main .event-stage-prompt-icon i{font-size:1.05rem}
@media(max-width:700px){.event-stage-main{padding:18px 16px}.event-stage-main .event-stage-intro{gap:7px}.event-stage-main .event-stage-eyebrow{font-size:.62rem}.event-stage-main .event-stage-prompt{gap:10px;font-size:1.08rem}.event-stage-main .event-stage-prompt-icon{width:38px;height:38px;border-radius:12px}}
.client-faq-page{width:min(980px,100%);margin:0 auto;padding:22px;border:1px solid #ded5f1;border-radius:22px;background:linear-gradient(145deg,#fff,#faf7ff);box-shadow:0 22px 58px rgba(35,21,76,.11)}.client-faq-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}.client-faq-head h1{margin:5px 0;font-size:1.8rem}.client-faq-head p{margin:0;color:var(--muted)}.client-faq-close{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border:1px solid #d4c4fb;border-radius:50%;background:linear-gradient(135deg,#7c3dff,#e83ba4);color:#fff;box-shadow:0 10px 24px rgba(124,61,255,.28);cursor:pointer}.client-faq-list{display:grid;margin-top:10px}.client-faq-item{border-bottom:1px solid #e9e3f4}.client-faq-item>button{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;padding:18px 4px;border:0;background:transparent;color:var(--dark2);text-align:left;font-size:.95rem;font-weight:900;cursor:pointer}.client-faq-item>button i{color:var(--primary);transition:transform .2s ease}.client-faq-item>button[aria-expanded="true"] i{transform:rotate(45deg)}.client-faq-item>div{padding:0 44px 18px 4px;color:var(--muted);font-size:.84rem;line-height:1.7}
.client-faq-view{overflow:hidden;background:rgba(17,10,38,.68)}
.client-faq-view .mobile-overlay{display:none!important}
.client-faq-layout{display:grid;place-items:center;width:100%;min-height:100dvh;padding:28px;background:radial-gradient(circle at 20% 10%,rgba(124,61,255,.2),transparent 34%),rgba(17,10,38,.58);backdrop-filter:blur(9px)}
.client-faq-layout>.main{width:min(980px,100%);min-width:0;margin:0;padding:0}
.client-faq-layout .client-faq-page{max-height:calc(100dvh - 56px);overflow-y:auto}
@media(max-width:700px){body:has(.client-faq-page){overflow:hidden}body:has(.client-faq-page) .main{padding:0}.client-faq-layout{display:block;min-height:100dvh;padding:0;background:#fff;backdrop-filter:none}.client-faq-layout>.main{width:100%;height:100dvh}.client-faq-page{position:fixed;z-index:1700;inset:0;width:100%;height:100dvh;max-height:none;margin:0;padding:calc(16px + env(safe-area-inset-top)) 14px calc(16px + env(safe-area-inset-bottom));border:0;border-radius:0;overflow-y:auto;box-shadow:none}.client-faq-head{position:sticky;z-index:2;top:calc(-16px - env(safe-area-inset-top));padding-top:calc(16px + env(safe-area-inset-top));background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.client-faq-head h1{font-size:1.35rem}.client-faq-head p{font-size:.76rem}.client-faq-close{width:38px;height:38px}.client-faq-item>button{padding:16px 2px;font-size:.86rem}.client-faq-item>div{padding-right:8px;font-size:.78rem}}
@media(min-width:701px){.client-faq-layout{display:grid;grid-template-columns:minmax(0,1fr);place-items:center;min-height:100dvh;padding:24px;background:radial-gradient(circle at 20% 10%,rgba(124,61,255,.2),transparent 34%),rgba(17,10,38,.62);backdrop-filter:blur(9px)}.client-faq-layout>.main{display:grid;place-items:center;width:100%;height:100dvh}.client-faq-layout .client-faq-page{position:relative;z-index:1700;inset:auto;width:70vw;max-width:1180px;height:70dvh;max-height:70dvh;margin:0;padding:28px 34px;border:1px solid rgba(255,255,255,.42);border-radius:24px;overflow-y:auto;background:linear-gradient(145deg,#fff,#faf7ff);box-shadow:0 36px 110px rgba(7,5,25,.42)}.client-faq-layout .client-faq-head{position:sticky;z-index:2;top:-28px;padding-top:28px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.client-faq-layout .client-faq-list{max-width:none;margin:14px 0 0}}
.gift-value-label{display:flex;align-items:center;gap:6px;margin-bottom:5px}.gift-value-label>label{margin:0}.gift-value-label .field-inline-help>summary{width:20px;height:20px}.gift-value-label .field-inline-help>div{right:auto;left:0;width:min(250px,calc(100vw - 48px))}
@media(max-width:700px){body:has(.gift-partial-info-cloud:not([hidden])){overflow:hidden}body:has(.gift-partial-info-cloud:not([hidden])):after{content:"";position:fixed;z-index:2598;inset:0;background:rgba(18,12,38,.62);backdrop-filter:blur(4px)}.gift-option-card:has(.gift-partial-info-cloud:not([hidden])),.gift-partial-toggle:has(.gift-partial-info-cloud:not([hidden])),.gift-partial-toggle:hover{transform:none!important}.gift-option-card .gift-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.gift-option-card .gift-card-actions{margin-left:auto;flex-wrap:nowrap}.gift-commercial-row{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:8px}.gift-commercial-row .gift-value-label{flex-wrap:nowrap}.gift-commercial-row .gift-value-label>label{white-space:nowrap}.gift-commercial-row .gift-partial-toggle{grid-template-columns:minmax(0,1fr) 24px;gap:8px;min-height:52px;padding:9px 10px}.gift-commercial-row .gift-partial-toggle>span>strong{gap:5px;font-size:.7rem;white-space:nowrap}.gift-commercial-row .gift-partial-toggle>b{width:23px;height:23px}.gift-commercial-row .gift-partial-info{width:19px;height:19px}.gift-commercial-row .compact-fields input{min-width:0;padding-right:9px;padding-left:9px}.gift-commercial-row .gift-partial-info-cloud{position:fixed!important;z-index:2600;top:50%!important;right:auto!important;left:50%!important;width:calc(100vw - 28px)!important;max-width:360px;margin:0!important;padding:20px 44px 20px 20px;border-radius:16px;box-shadow:0 28px 75px rgba(16,9,38,.38);transform:translate(-50%,-50%)!important;font-size:.8rem;line-height:1.6;text-align:left;text-transform:none;white-space:normal}.gift-commercial-row .gift-partial-info-cloud:before{display:none}.gift-commercial-row .gift-partial-info-cloud>[data-gift-partial-info-close]{top:10px;right:10px;width:30px;height:30px;background:#ede5ff;color:#6e35da}}
.guest-event-participation{display:grid;gap:18px}.guest-event-contribution-group{display:grid;gap:12px;padding-top:14px;border-top:1px solid var(--line)}.guest-event-contribution-group>header{display:flex;align-items:flex-start;gap:11px}.guest-event-contribution-group>header>i{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#f0e9ff;color:var(--primary)}.guest-event-contribution-group h3,.guest-event-contribution-group p{margin:0}.guest-event-contribution-group header p{margin-top:3px;color:var(--muted);font-size:.82rem}.guest-event-contribution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.guest-event-contribution-option{display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;border:1px solid #ded5f1;border-radius:16px;background:#fff;box-shadow:0 12px 28px rgba(42,25,88,.07)}.guest-event-contribution-image{aspect-ratio:4/3;overflow:hidden;background:#f3eff9}.guest-event-contribution-image img{display:block;width:100%;height:100%;object-fit:cover}.guest-event-contribution-copy{display:grid;align-content:start;gap:5px;padding:13px}.guest-event-contribution-copy>span{color:var(--pink);font-size:.62rem;font-weight:950;text-transform:uppercase}.guest-event-contribution-copy h3{font-size:.95rem}.guest-event-contribution-copy p{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:.73rem;-webkit-box-orient:vertical;-webkit-line-clamp:2}.guest-event-contribution-copy>strong{margin-top:5px;font-size:1rem}.guest-event-quantity,.guest-event-amount{display:grid;gap:5px;margin:0 13px 13px}.guest-event-quantity>span,.guest-event-amount>span{color:var(--muted);font-size:.65rem;font-weight:900;text-transform:uppercase}.guest-event-quantity>div{display:grid;grid-template-columns:34px 1fr 34px;overflow:hidden;border:1px solid #ddd3f5;border-radius:10px}.guest-event-quantity button{border:0;background:#f7f4ff;color:var(--primary);font-weight:950}.guest-event-quantity input,.guest-event-amount input{min-height:38px;border:0;text-align:center;font-weight:900}.guest-event-amount input{border:1px solid #ddd3f5;border-radius:10px}.guest-event-contribution-footer{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid #ded4f4;border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 14px 35px rgba(40,23,82,.12);backdrop-filter:blur(12px)}.guest-event-contribution-footer>span{display:grid;color:var(--muted);font-size:.7rem;font-weight:850}.guest-event-contribution-footer>span strong{color:var(--dark2);font-size:1.2rem}.guest-event-contribution-footer .btn:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:760px){.guest-event-contribution-grid{grid-template-columns:1fr}.guest-event-participation{padding:14px}.guest-event-contribution-footer{bottom:8px}.guest-event-contribution-footer .btn{min-width:0;padding:11px 13px;font-size:.76rem}}
@media(max-width:760px){
  .event-store-detail-dialog{align-items:stretch;min-height:100dvh;padding:0}
  .event-store-detail-dialog .event-detail-backdrop{display:none}
  .event-store-detail-dialog .event-detail-panel{width:100%;height:100dvh;max-height:none;border:0;border-radius:0;box-shadow:none}
  .event-store-detail-dialog .event-detail-content{padding-bottom:max(18px,env(safe-area-inset-bottom))}
}
.profile-bank-heading{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.profile-bank-heading h2{margin:3px 0 0}.profile-bank-status{position:relative}.profile-bank-status>button{display:flex;align-items:center;gap:7px;min-height:36px;padding:7px 11px;border:1px solid #FFB9C6;border-radius:999px;background:#FFF1F4;color:#D9274E;font-weight:900;cursor:pointer}.profile-bank-status>button>i{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#D9274E;color:#fff;font-size:.85rem}.profile-bank-status>div{position:absolute;z-index:30;right:0;top:44px;display:grid;justify-items:center;width:min(290px,calc(100vw - 30px));padding:18px 16px;border:1px solid #FFC4CF;border-radius:14px;background:#fff;text-align:center;box-shadow:0 20px 55px rgba(64,20,42,.2)}.profile-bank-status>div[hidden]{display:none}.profile-bank-status>div>button{position:absolute;right:7px;top:7px;display:grid;place-items:center;width:27px;height:27px;border:0;border-radius:50%;background:#FFF0F3;color:#D9274E}.profile-bank-status>div>i{display:grid;place-items:center;width:42px;height:42px;margin-bottom:9px;border-radius:12px;background:#FFF0F3;color:#D9274E;font-size:1.15rem}.profile-bank-status>div strong{font-size:.9rem}.profile-bank-status>div p{margin:5px 0 0;color:var(--muted);font-size:.74rem;line-height:1.45}@media(max-width:600px){.profile-bank-heading{align-items:flex-start}.profile-bank-status>button span{display:none}.profile-bank-status>button{width:38px;padding:6px}.profile-bank-status>button>i{width:24px;height:24px}.profile-bank-status>div{position:fixed;z-index:2500;left:50%;right:auto;top:50%;width:min(320px,calc(100vw - 28px));transform:translate(-50%,-50%)}}
@keyframes profileBankPendingPulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(217,39,78,0)}50%{opacity:.62;box-shadow:0 0 0 6px rgba(217,39,78,.12)}}
.profile-bank-status>[data-bank-status-button]{animation:profileBankPendingPulse 1.45s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.profile-bank-status>[data-bank-status-button]{animation:none}}

/* Resumen de aportes: las tarjetas de escritorio privilegian jerarquía vertical y centrada. */
.public-revenue-types article{grid-template-columns:1fr;justify-items:center;align-content:center;gap:5px;min-height:96px;text-align:center}.public-revenue-types article>span{justify-items:center}

/* Fecha aplicada a los bloques reservables de un servicio. */
.service-slot-dialog header .service-date-notice{display:flex;align-items:flex-start;gap:6px;margin-top:8px;padding:7px 9px;border:1px solid #cfe7dc;border-radius:8px;background:#f1fff7;color:#087040;font-size:.72rem;line-height:1.35}.service-date-notice i{margin-top:1px;color:#0a9b5d}
.checkout-final-delivery-card .checkout-final-delivery-note{margin-top:4px;color:#087040;font-weight:800}
.checkout-choice .checkout-delivery-reassurance{display:inline-block;margin-top:4px;color:#087040;font-size:.7rem;line-height:1.35}
.product-detail-service-date{display:flex;align-items:center;gap:7px;width:100%;margin:2px 0 6px;padding:9px 10px;border:1px solid #cfe7dc;border-radius:10px;background:#f1fff7;color:#087040!important;font-size:.75rem!important;font-weight:800;line-height:1.35}.product-detail-service-date i{font-size:.9rem}
@media(min-width:701px){.product-detail-modal.is-service-detail{display:block;overflow-y:auto;padding:0;background:rgba(10,8,28,.76)}.product-detail-modal.is-service-detail .product-detail-backdrop{position:fixed}.product-detail-modal.is-service-detail .product-detail-panel{display:grid;grid-template-columns:minmax(390px,46%) minmax(0,54%);width:min(1180px,100%);min-height:100vh;max-height:none;margin:0 auto;border-radius:0;overflow:visible}.product-detail-modal.is-service-detail .product-detail-gallery{position:sticky;top:0;align-self:start;min-height:100vh;padding:34px;background:#f3f0f8}.product-detail-modal.is-service-detail .product-detail-image-wrap{width:min(500px,100%);max-height:calc(100vh - 100px);aspect-ratio:4/5}.product-detail-modal.is-service-detail .product-detail-image-wrap>img{object-fit:contain}.product-detail-modal.is-service-detail .product-detail-content{justify-content:flex-start;min-height:100vh;padding:54px 48px 72px;overflow:visible}.product-detail-modal.is-service-detail .product-detail-content h2{max-width:600px}.product-detail-modal.is-service-detail .product-detail-content [data-detail-add]{width:100%;margin:10px 0 8px}.product-detail-modal.is-service-detail .product-detail-description{margin-top:20px;padding-top:18px}.product-detail-modal.is-service-detail .product-detail-close{position:fixed;top:18px;right:max(22px,calc((100vw - 1180px)/2 + 18px))}}

/* Cabecera de tienda: filtros a la izquierda y acciones de compra juntas a la derecha. */
.store-modal-header{align-items:stretch}.store-modal-header-catalog{display:grid;flex:1 1 auto;min-width:0}.store-modal-header-catalog .store-modal-results-head{justify-content:flex-start;padding:0 0 7px;font-size:.72rem}.store-modal-header-catalog .store-modal-tools{grid-template-columns:minmax(190px,1.55fr) repeat(2,minmax(135px,1fr));gap:8px;padding:0;border:0;background:transparent}.store-modal-header-catalog .store-modal-tools label>span{margin-bottom:3px;font-size:.62rem}.store-modal-header-catalog .store-modal-tools select,.store-modal-header-catalog .store-modal-tools input{min-height:38px}.store-modal-header-side{align-self:start;gap:8px;margin-left:auto}.store-modal-total{min-width:0;max-width:clamp(74px,12vw,160px)}.store-modal-total strong{display:block;max-width:100%;overflow:hidden;font-size:clamp(.95rem,1.8vw,1.35rem);text-overflow:clip;white-space:nowrap}.store-header-cart-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;width:auto;min-width:40px;padding:0 10px;font-size:.75rem;font-weight:900}.store-header-cart-button span{white-space:nowrap}@media(max-width:700px){.store-modal-header{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:9px 12px}.store-modal-header-catalog .store-modal-results-head{padding-bottom:5px}.store-modal-header-catalog .store-modal-tools{grid-template-columns:1fr 1fr;gap:6px}.store-modal-header-catalog .store-keyword-search{grid-column:1/-1}.store-modal-header-catalog .store-modal-tools label>span{display:none}.store-modal-header-side{gap:6px}.store-header-cart-button{width:36px;min-width:36px;padding:0}.store-header-cart-button span{display:none}.store-modal-total span{font-size:.58rem}.store-modal-total strong{font-size:.9rem}}

/* Escritorio: una sola banda compacta para resultados, búsqueda y filtros. */
@media(min-width:701px){.store-modal-header{align-items:flex-end;padding:10px 14px}.store-modal-header-catalog{display:flex;align-items:flex-end;gap:7px}.store-modal-header-catalog .store-modal-results-head{display:flex;flex:0 0 auto;align-items:center;min-height:38px;padding:0;white-space:nowrap;font-size:.68rem}.store-modal-header-catalog .store-modal-tools{display:grid;flex:1 1 auto;grid-template-columns:minmax(210px,1.5fr) minmax(145px,1fr) minmax(170px,1fr);gap:7px}.store-modal-header-catalog .store-modal-tools label{min-width:0}.store-modal-header-catalog .store-modal-tools label>span{height:13px;margin:0 0 2px;line-height:13px}.store-modal-header-catalog .store-modal-tools select,.store-modal-header-catalog .store-modal-tools input{min-height:38px}.store-modal-header-side{align-items:flex-end;gap:7px}.store-modal-total{padding-bottom:1px}}
@media(min-width:701px){.store-modal-header-catalog{position:relative;display:block;padding-top:13px}.store-modal-header-catalog .store-modal-results-head{position:absolute;top:0;left:0;min-height:13px;margin:0;font-size:.66rem;line-height:13px}.store-modal-header-catalog .store-modal-tools{display:grid;width:100%}}
@media(min-width:701px){.store-modal-header{gap:10px;padding:6px 12px;background:linear-gradient(180deg,#fff,#fcfbff)}.store-modal-header-catalog{padding-top:11px}.store-modal-header-catalog .store-modal-results-head{min-height:11px;font-size:.6rem;line-height:11px;color:#756b83}.store-modal-header-catalog .store-modal-tools{grid-template-columns:minmax(190px,1.45fr) minmax(135px,1fr) minmax(155px,1fr);gap:6px}.store-modal-header-catalog .store-modal-tools label>span{height:10px;margin:0 0 1px;font-size:.55rem;line-height:10px;letter-spacing:.02em}.store-modal-header-catalog .store-modal-tools select,.store-modal-header-catalog .store-modal-tools input{min-height:34px;height:34px;padding-top:5px;padding-bottom:5px;font-size:.74rem;border-radius:10px}.store-modal-header-side{gap:6px}.store-modal-total span{font-size:.56rem;line-height:1}.store-modal-total strong{font-size:1.12rem;line-height:1.05}.store-header-cart-button{min-width:34px;height:34px;min-height:34px;padding:0 9px;border-radius:10px;font-size:.68rem}.store-modal-close{width:34px;height:34px;border-radius:11px}.store-modal-header-catalog .contact-search i{font-size:.75rem}}
@media(min-width:701px){.store-modal-header-side{align-self:flex-end}}

/* Cantidad por bloque: controles siempre visibles en la ventana de servicios. */
.service-slot-options label{grid-template-columns:auto minmax(0,1fr) 112px}.service-slot-stepper{display:grid;grid-template-columns:30px minmax(34px,1fr) 30px;align-items:center;min-height:36px;border:1px solid #e2daf6;border-radius:10px;background:#fff;overflow:hidden}.service-slot-stepper button{display:grid;place-items:center;width:30px;height:34px;padding:0;border:0;background:#f8f5ff;color:#7037dc;font-size:1rem;font-weight:900;cursor:pointer}.service-slot-stepper button:hover:not(:disabled){background:#eee6ff}.service-slot-stepper button:disabled{color:#cfc7dc;cursor:not-allowed}.service-slot-stepper input[type=number]{width:100%;min-width:0;min-height:34px!important;padding:4px!important;border:0!important;border-radius:0!important;background:#fff;text-align:center;font-weight:800;appearance:textfield}.service-slot-stepper input[type=number]::-webkit-inner-spin-button,.service-slot-stepper input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}@media(max-width:600px){.service-slot-options label{grid-template-columns:auto minmax(0,1fr) 104px}.service-slot-stepper{grid-template-columns:28px minmax(32px,1fr) 28px}.service-slot-stepper button{width:28px;font-size:.95rem}}

/* Invitación: acciones de imagen ordenadas para pantallas móviles. */
@media(max-width:700px){
  .invitation-image-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;justify-content:stretch!important;gap:7px!important;width:100%;padding:8px!important}
  .invitation-library-button{grid-column:span 2;width:100%;min-width:0!important;min-height:38px!important;padding:7px 9px!important;font-size:.64rem!important}
  .invitation-premium-file.invitation-premium-file-pill,.invitation-image-actions .invitation-image-remove,.invitation-image-adjust-pill,.invitation-image-filter-pill{width:100%;min-width:0!important}
  .invitation-premium-file-pill .invitation-premium-file-button,.invitation-image-actions .invitation-image-remove,.invitation-image-adjust-pill>summary,.invitation-image-filter-pill>summary{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;height:38px!important;min-height:38px!important;padding:0!important;border-radius:11px!important}
  .invitation-premium-file-pill .invitation-premium-file-button strong,.invitation-image-actions .invitation-image-remove>span,.invitation-image-adjust-pill>summary>span,.invitation-image-adjust-pill>summary .invitation-image-adjust-chevron,.invitation-image-filter-pill>summary>span,.invitation-image-filter-pill>summary .invitation-image-filter-chevron{display:none!important}
  .invitation-premium-file-pill .invitation-premium-file-icon{font-size:.82rem!important}
  .invitation-image-actions .invitation-image-remove i,.invitation-image-adjust-pill>summary>i:first-child,.invitation-image-filter-pill>summary>i:first-child{font-size:.82rem}
}
@media(max-width:600px){.public-revenue-types article{min-height:100px}}

/* Cuenta financiera interna: vista comercial, clara y adaptable. */
.account-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px;background:linear-gradient(135deg,#fff 0%,#f8f3ff 55%,#fff0f8 100%)}.account-hero h2{margin:5px 0;font-size:1.65rem}.account-hero p{max-width:620px;margin:0;color:var(--muted)}.account-balance{display:grid;min-width:250px;padding:19px 21px;border-radius:18px;background:linear-gradient(135deg,#6730e9,#e532aa);color:#fff;box-shadow:0 16px 34px rgba(111,46,222,.25)}.account-balance small,.account-balance span{opacity:.86}.account-balance strong{margin:5px 0;font-size:2rem}.account-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.account-stat-grid article{display:grid;grid-template-columns:38px minmax(0,1fr);gap:2px 10px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#fff}.account-stat-grid i{grid-row:1/3;display:grid;width:38px;height:38px;place-items:center;border-radius:12px;background:#f1eaff;color:var(--primary)}.account-stat-grid span{color:var(--muted);font-size:.7rem}.account-stat-grid strong{font-size:1rem}.account-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:16px}.account-layout>.card{padding:20px}.account-movements{display:grid}.account-movements>div:not(.empty-state){display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid var(--line)}.account-movements>div>i{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:#effaf5;color:#159667}.account-movements span{display:grid}.account-movements small{margin-top:3px;color:var(--muted);font-size:.68rem}.account-movements b.credit{color:#159667}.account-movements b.debit{color:#d73759}.account-withdraw-card{align-content:start}.account-withdraw-card h2{margin:5px 0}.account-withdraw-card p{color:var(--muted);font-size:.78rem;line-height:1.5}.account-withdraw-card form{display:grid;gap:8px;margin:13px 0}.account-withdraw-card>a{color:var(--primary);font-size:.74rem;font-weight:900}
.public-revenue-card{align-self:start;display:grid;align-content:start;gap:14px;padding:24px!important;background:radial-gradient(circle at 100% 0,rgba(234,55,169,.1),transparent 34%),linear-gradient(145deg,#fff,#f8f4ff)}.public-revenue-heading{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:11px!important}.public-revenue-heading-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;background:linear-gradient(135deg,#7135e7,#e736aa);color:#fff;box-shadow:0 10px 22px rgba(112,50,221,.24)}.public-revenue-heading h2,.public-revenue-heading p{margin:0}.public-revenue-heading h2{margin-top:2px;color:#241738;font-size:1rem}.public-revenue-heading p{margin-top:3px;color:var(--muted);font-size:.68rem;line-height:1.4}.public-revenue-readonly{display:flex;align-items:center;gap:5px;padding:7px 10px;border-radius:999px;background:#eee7ff;color:#7136db;font-size:.64rem;font-weight:950}.public-revenue-total{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.public-revenue-total>span{display:grid;align-content:start;gap:3px;min-height:104px;padding:14px;border:1px solid #ded3f4;border-radius:14px;background:#fff;box-shadow:0 9px 22px rgba(43,23,92,.06)}.public-revenue-total-paid{background:linear-gradient(135deg,#fff,#f6f1ff)!important}.public-revenue-total-pending{background:linear-gradient(135deg,#fffdf5,#fff8e5)!important}.public-revenue-total small,.public-revenue-types small{color:#766b87;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.02em}.public-revenue-total strong{color:#211531;font-size:1.55rem;line-height:1.1}.public-revenue-total em{display:flex;align-items:center;gap:5px;margin-top:3px;color:#697184;font-size:.59rem;font-style:normal;font-weight:800}.public-revenue-total-paid em i{color:#16a66b}.public-revenue-total-pending em i{color:#ca9100}.public-revenue-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.public-revenue-types article{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-height:78px;padding:10px;border:1px solid #e3daf4;border-radius:12px;background:#fff}.public-revenue-types article>i{display:grid;width:30px;height:30px;place-items:center;border-radius:10px;background:#f1eaff;color:var(--primary)}.public-revenue-types article>span{display:grid;min-width:0;gap:1px}.public-revenue-types em{color:#81768e;font-size:.59rem;font-style:normal;line-height:1.25}.public-revenue-types strong{color:#251735;font-size:.84rem}
@media(max-width:850px){.account-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-layout{grid-template-columns:1fr}}@media(max-width:600px){.account-hero{align-items:stretch;flex-direction:column;padding:17px}.account-hero h2{font-size:1.28rem}.account-balance{min-width:0}.account-stat-grid{grid-template-columns:1fr 1fr;gap:7px}.account-stat-grid article{grid-template-columns:30px minmax(0,1fr);padding:11px}.account-stat-grid i{width:30px;height:30px}.account-stat-grid strong{font-size:.82rem}.account-layout>.card{padding:14px}.account-movements>div:not(.empty-state){grid-template-columns:32px minmax(0,1fr);gap:8px}.account-movements>div>i{width:31px;height:31px}.account-movements b{grid-column:2;text-align:left}.public-revenue-card{padding:17px!important}.public-revenue-heading-icon{width:37px;height:37px;border-radius:11px}.public-revenue-heading h2{font-size:.92rem}.public-revenue-heading p{font-size:.62rem}.public-revenue-total>span{min-height:92px;padding:12px}.public-revenue-total strong{font-size:1.32rem}.public-revenue-types{gap:6px}.public-revenue-types article{grid-template-columns:1fr;justify-items:center;gap:5px;min-height:100px;padding:9px 5px;text-align:center}.public-revenue-types article>i{width:28px;height:28px}.public-revenue-types article>span{justify-items:center}.public-revenue-types small{font-size:.54rem;line-height:1.2}.public-revenue-types em{font-size:.54rem}.public-revenue-types strong{font-size:.75rem}.public-revenue-readonly{grid-column:2;justify-self:start}}

/* Experiencia legal premium para clientes BloP. */
.legal-page-view{min-height:100vh;background:radial-gradient(circle at 10% 0,rgba(239,52,169,.11),transparent 28%),radial-gradient(circle at 92% 8%,rgba(117,53,235,.13),transparent 32%),#f8f7fc}.legal-page-view .shell{display:block}.legal-page-view .main{width:100%;padding:0}.legal-public-page{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:22px 0 54px}.legal-site-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.legal-brand{display:flex;align-items:center;gap:10px;color:#24163c;font-size:1.18rem}.legal-brand>span{display:grid;width:42px;height:42px;place-items:center;border-radius:14px;background:linear-gradient(135deg,#7838f2,#ed36a7);color:#fff;font-weight:950;box-shadow:0 10px 24px rgba(112,48,220,.26)}.legal-return{display:flex;align-items:center;gap:7px;padding:9px 13px;border:1px solid #ddd3ef;border-radius:999px;background:rgba(255,255,255,.78);color:#5a4b70;font-size:.72rem;font-weight:850}.legal-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px;padding:7px;border:1px solid #ddd4ee;border-radius:18px;background:rgba(255,255,255,.76);box-shadow:0 12px 35px rgba(44,25,82,.06)}.legal-tabs a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px;border-radius:13px;color:#625471;font-size:.76rem;font-weight:900;transition:.18s ease}.legal-tabs a:hover{background:#f3edff;color:#6f34df;transform:translateY(-1px)}.legal-tabs a.is-active{background:linear-gradient(135deg,#7638ee,#df35b0);color:#fff;box-shadow:0 9px 20px rgba(119,51,229,.25)}.legal-hero{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;overflow:hidden;padding:30px 32px;border-radius:25px;background:linear-gradient(125deg,#211239,#47237a 48%,#7d34d7);color:#fff;box-shadow:0 24px 58px rgba(38,20,72,.2)}.legal-hero:after{content:"";position:absolute;right:-70px;top:-100px;width:260px;height:260px;border:52px solid rgba(255,255,255,.07);border-radius:50%}.legal-hero-icon{position:relative;z-index:1;display:grid;width:62px;height:62px;place-items:center;border:1px solid rgba(255,255,255,.25);border-radius:19px;background:rgba(255,255,255,.12);font-size:1.55rem}.legal-hero>div:nth-child(2){position:relative;z-index:1}.legal-hero .kicker{color:#ff8bd1}.legal-hero h1{margin:5px 0 7px;font-size:clamp(1.65rem,3.5vw,2.65rem);letter-spacing:-.04em}.legal-hero p{max-width:680px;margin:0;color:rgba(255,255,255,.76);font-size:.84rem;line-height:1.55}.legal-trust-mark{position:relative;z-index:1;display:flex;align-items:center;gap:9px;min-width:175px;padding:12px 14px;border:1px solid rgba(255,255,255,.18);border-radius:15px;background:rgba(255,255,255,.1)}.legal-trust-mark>i{color:#72e3b0;font-size:1.25rem}.legal-trust-mark>span,.legal-aside-card span,.legal-document-end span{display:grid}.legal-trust-mark small{color:rgba(255,255,255,.68);font-size:.58rem}.legal-trust-mark strong{font-size:.72rem}.legal-document-layout{display:grid;grid-template-columns:260px minmax(0,1fr);align-items:start;gap:16px;margin-top:16px}.legal-document-aside{position:sticky;top:16px;display:grid;gap:12px}.legal-aside-card,.legal-help-card{padding:18px;border:1px solid #e1d8f0;border-radius:18px;background:rgba(255,255,255,.9);box-shadow:0 13px 34px rgba(44,26,80,.07)}.legal-aside-card>.kicker{display:block;margin-bottom:13px}.legal-aside-card>div{display:flex;align-items:center;gap:9px;padding:11px 0;border-top:1px solid #eee9f6}.legal-aside-card>div>i{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;border-radius:10px;background:#f0eaff;color:#7236df}.legal-aside-card small{color:#8a8097;font-size:.58rem}.legal-aside-card strong{font-size:.68rem;line-height:1.3}.legal-help-card{background:linear-gradient(145deg,#fff3fa,#f6f0ff)}.legal-help-card>i{display:grid;width:39px;height:39px;place-items:center;margin-bottom:10px;border-radius:12px;background:linear-gradient(135deg,#7a3aef,#ea37aa);color:#fff}.legal-help-card>strong{font-size:.86rem}.legal-help-card p{margin:5px 0 11px;color:#70657c;font-size:.68rem;line-height:1.5}.legal-help-card a{color:#7135db;font-size:.68rem;font-weight:950}.legal-document-card{padding:clamp(22px,4vw,46px);border:1px solid #e2daf0;border-radius:22px;background:#fff;box-shadow:0 20px 50px rgba(43,26,77,.08)}.legal-summary{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;margin:0 0 28px;padding:18px;border:1px solid #dfd4f7;border-left:0;border-radius:15px;background:linear-gradient(135deg,#f6f1ff,#fff7fb);color:#4f4260;line-height:1.65}.legal-summary>i{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;background:#fff;color:#a23ad7}.legal-summary strong{display:block;margin-bottom:3px;color:#2c1f40;font-size:.8rem}.legal-summary p{margin:0;font-size:.78rem}.legal-content{color:#4a4254;font-size:.86rem;line-height:1.82}.legal-content h2{position:relative;margin:32px 0 12px;padding-left:15px;color:#2b1d41;font-size:1.08rem;line-height:1.35}.legal-content h2:before{content:"";position:absolute;left:0;top:.12em;width:5px;height:1.1em;border-radius:9px;background:linear-gradient(#7a37ed,#ec38a7)}.legal-content p{margin:0 0 17px}.legal-document-end{display:flex;align-items:center;gap:11px;margin-top:34px;padding:16px;border-radius:15px;background:#f3fbf7;color:#226b4e}.legal-document-end>i{font-size:1.35rem}.legal-document-end strong{font-size:.76rem}.legal-document-end small{margin-top:2px;color:#5d7b6d;font-size:.64rem}.legal-empty{display:grid;justify-items:center;padding:70px 24px;text-align:center}.legal-empty>i{color:#7738e9;font-size:2.5rem}.legal-empty h1{margin:12px 0 4px}.legal-empty p{margin:0 0 18px;color:var(--muted)}.legal-page-view .client-legal-footer{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:20px 0}
@media(max-width:820px){.legal-public-page{width:min(100% - 22px,720px);padding-top:12px}.legal-tabs{gap:5px}.legal-tabs a{min-width:0}.legal-hero{grid-template-columns:auto minmax(0,1fr);padding:23px}.legal-trust-mark{grid-column:2;justify-self:start}.legal-document-layout{grid-template-columns:1fr}.legal-document-aside{position:static;grid-template-columns:1fr 1fr}.legal-aside-card{display:none}}
@media(max-width:560px){.legal-public-page{width:100%;padding:9px 9px 34px}.legal-site-header{padding:0 4px}.legal-brand>span{width:38px;height:38px}.legal-return span{display:none}.legal-return{width:38px;height:38px;justify-content:center;padding:0}.legal-tabs{gap:4px;padding:5px;border-radius:14px}.legal-tabs a{min-height:43px;flex-direction:column;gap:2px;padding:6px 2px;border-radius:10px;font-size:.57rem}.legal-hero{grid-template-columns:45px minmax(0,1fr);gap:11px;padding:19px 15px;border-radius:19px}.legal-hero-icon{width:45px;height:45px;border-radius:14px;font-size:1.1rem}.legal-hero h1{font-size:1.35rem}.legal-hero p{font-size:.7rem}.legal-trust-mark{grid-column:1/-1;width:100%;padding:9px 11px}.legal-document-layout{margin-top:9px}.legal-document-aside{display:block}.legal-help-card{display:flex;align-items:center;flex-wrap:wrap;gap:5px 9px;padding:13px}.legal-help-card>i{width:34px;height:34px;margin:0}.legal-help-card p{display:none}.legal-help-card a{margin-left:auto}.legal-document-card{padding:20px 16px;border-radius:18px}.legal-summary{gap:9px;margin-bottom:22px;padding:13px}.legal-summary>i{width:31px;height:31px}.legal-summary p{font-size:.7rem}.legal-content{font-size:.77rem;line-height:1.74}.legal-content h2{margin:25px 0 10px;font-size:.96rem}.legal-document-end{align-items:flex-start}.legal-page-view .client-legal-footer{width:calc(100% - 22px);padding-bottom:78px}}

/* Logo legal idéntico al utilizado en la navegación del inicio. */
.legal-site-header{padding:11px 16px;border-radius:18px;background:rgba(13,13,31,.94);box-shadow:0 14px 32px rgba(20,13,45,.16);backdrop-filter:blur(18px)}.legal-brand.navbar-brand{display:flex;align-items:center;color:#fff!important;font-size:1.45rem;font-weight:900}.legal-brand.navbar-brand .brand-mark{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;margin-right:8px;border-radius:15px;background:linear-gradient(135deg,#7c3cff,#ff3ea5);color:#fff;box-shadow:0 12px 28px rgba(124,60,255,.45)}.legal-site-header .legal-return{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.1);color:#fff}.legal-site-header .legal-return:hover{background:rgba(255,255,255,.18)}
@media(max-width:560px){.legal-site-header{padding:9px 11px;border-radius:15px}.legal-brand.navbar-brand{font-size:1.28rem}.legal-brand.navbar-brand .brand-mark{width:40px;height:40px;margin-right:8px;border-radius:15px}}

/* Acceso visible a la cuenta corriente desde el dashboard. */
.dashboard-account-entry{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;overflow:hidden;margin:14px 0 22px;padding:17px 19px;border:1px solid #d9cef2;border-radius:18px;background:linear-gradient(120deg,#fff 0%,#f7f1ff 55%,#effff9 100%);color:#25193b;box-shadow:0 15px 35px rgba(46,27,91,.09);transition:transform .2s ease,box-shadow .2s ease}.dashboard-account-entry:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(#7c3dff,#e93cab,#16cba1)}.dashboard-account-entry:hover{transform:translateY(-2px);box-shadow:0 21px 45px rgba(51,28,105,.14)}.dashboard-account-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:15px;background:linear-gradient(135deg,#7135e5,#e437ad);color:#fff;font-size:1.2rem;box-shadow:0 10px 24px rgba(113,53,229,.24)}.dashboard-account-copy,.dashboard-account-balance{display:grid}.dashboard-account-copy small,.dashboard-account-balance small{color:#8b7d9c;font-size:.58rem;font-style:normal;font-weight:900;text-transform:uppercase}.dashboard-account-copy strong{font-size:1rem}.dashboard-account-copy em{margin-top:3px;color:#766a83;font-size:.68rem;font-style:normal}.dashboard-account-balance{min-width:125px;padding-left:15px;border-left:1px solid #ddd3ed}.dashboard-account-balance strong{font-size:1.18rem}.dashboard-account-balance em{color:#b07900;font-size:.62rem;font-style:normal;font-weight:800}.dashboard-account-open{display:flex;align-items:center;gap:6px;padding:9px 12px;border-radius:999px;background:#fff;color:#6f35db;font-size:.67rem;font-weight:950;box-shadow:0 7px 18px rgba(58,31,113,.08)}
@media(max-width:650px){.dashboard-account-entry{grid-template-columns:auto minmax(0,1fr) auto;gap:10px;margin:10px 0 18px;padding:14px 12px}.dashboard-account-icon{width:41px;height:41px;border-radius:13px}.dashboard-account-copy em{display:none}.dashboard-account-balance{min-width:0;padding-left:9px}.dashboard-account-balance strong{font-size:.9rem}.dashboard-account-balance em{font-size:.53rem}.dashboard-account-open{grid-column:2/-1;justify-content:center;padding:8px}.dashboard-account-entry:hover{transform:none}}

/* Saldo favorable compacto bajo Crear evento. */
.dashboard-overview-tools{align-self:start;flex-direction:column;align-items:stretch}.dashboard-favorable-balance{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:8px 9px 8px 12px;border:1px solid #d9cdf4;border-radius:13px;background:rgba(255,255,255,.86);box-shadow:0 8px 20px rgba(54,31,106,.08);backdrop-filter:blur(10px)}.dashboard-favorable-balance>span{display:grid}.dashboard-favorable-balance small{color:#887a9a;font-size:.55rem;font-weight:900;text-transform:uppercase}.dashboard-favorable-balance strong{color:#34224e;font-size:.9rem;line-height:1.15}.dashboard-favorable-balance>a{display:grid;width:31px;height:31px;place-items:center;border:1px solid #d4c5f5;border-radius:10px;background:#f3edff;color:#7035dd;transition:.18s ease}.dashboard-favorable-balance>a:hover{background:linear-gradient(135deg,#7539e9,#df36ad);color:#fff;transform:translateY(-1px)}
@media(max-width:620px){.dashboard-overview-tools{align-items:stretch}.dashboard-favorable-balance{width:100%}.dashboard-favorable-balance>a{flex:0 0 31px}}

/* Carrusel comercial de imágenes en regalos, cuotas y entradas. */
.public-contribution-gallery.public-option-carousel{position:relative;display:block!important;padding:3px;aspect-ratio:4/3;overflow:hidden}.public-option-carousel-track{width:100%;height:100%;overflow:hidden;border-radius:12px}.public-option-carousel .public-option-carousel-slide,.public-option-carousel .public-option-carousel-slide:first-child{display:block;grid-column:auto;grid-row:auto;width:100%;height:100%;aspect-ratio:auto;border:0;border-radius:12px;box-shadow:none}.public-option-carousel .public-option-carousel-slide[hidden]{display:none!important}.public-option-carousel-arrow{position:absolute;z-index:5;top:50%;display:grid;width:34px;height:40px;place-items:center;padding:0;border:1px solid rgba(255,255,255,.5);border-radius:11px;background:rgba(27,18,52,.64);color:#fff;box-shadow:0 7px 18px rgba(15,8,35,.2);transform:translateY(-50%);backdrop-filter:blur(7px);cursor:pointer}.public-option-carousel-arrow.previous{left:10px}.public-option-carousel-arrow.next{right:10px}.public-option-carousel-count{position:absolute;z-index:5;top:10px;right:10px;padding:5px 8px;border-radius:999px;background:rgba(26,17,50,.7);color:#fff;font-size:.62rem;font-weight:800;backdrop-filter:blur(7px)}.public-option-carousel-dots{position:absolute;z-index:5;right:0;bottom:10px;left:0;display:flex;justify-content:center;gap:5px;pointer-events:none}.public-option-carousel-dots i{display:block;width:6px;height:6px;border:1px solid rgba(255,255,255,.8);border-radius:999px;background:rgba(255,255,255,.55);box-shadow:0 2px 5px rgba(0,0,0,.16);transition:.18s ease}.public-option-carousel-dots i.is-active{width:20px;background:#fff}.public-option-carousel .public-contribution-image{width:100%!important;height:100%!important;object-fit:cover!important}.public-option-carousel-arrow:active{transform:translateY(-50%) scale(.9)}
@media(max-width:640px){.public-contribution-gallery.public-option-carousel{aspect-ratio:1/1}.public-option-carousel-arrow{width:32px;height:38px}.public-option-carousel-arrow.previous{left:8px}.public-option-carousel-arrow.next{right:8px}}

/* Imágenes completas en tarjeta y carrusel del detalle. */
.public-option-carousel-track{background:#f5f2f9}.public-option-carousel .public-contribution-image{object-fit:contain!important;object-position:center!important;transform:none!important}.public-contribution-preview-media{position:relative;overflow:hidden;background:#f5f2f9}.public-contribution-preview-media img{object-fit:contain!important;object-position:center!important}.public-detail-carousel-arrow{position:absolute;z-index:4;top:50%;display:grid;width:40px;height:46px;place-items:center;padding:0;border:1px solid rgba(255,255,255,.58);border-radius:12px;background:rgba(28,18,54,.68);color:#fff;box-shadow:0 8px 20px rgba(16,9,35,.22);transform:translateY(-50%);backdrop-filter:blur(8px);cursor:pointer}.public-detail-carousel-arrow.previous{left:13px}.public-detail-carousel-arrow.next{right:13px}.public-detail-carousel-count{position:absolute;z-index:4;top:13px;right:13px;padding:6px 9px;border-radius:999px;background:rgba(28,18,54,.7);color:#fff;font-size:.68rem;font-weight:850}.public-detail-carousel-dots{position:absolute;z-index:4;right:0;bottom:13px;left:0;display:flex;justify-content:center;gap:6px}.public-detail-carousel-dots i{display:block;width:7px;height:7px;border:1px solid #fff;border-radius:999px;background:rgba(255,255,255,.56);transition:.18s}.public-detail-carousel-dots i.is-active{width:23px;background:#fff}.public-detail-carousel-arrow[hidden],.public-detail-carousel-count[hidden],.public-detail-carousel-dots[hidden]{display:none!important}
@media(max-width:640px){.public-detail-carousel-arrow{width:35px;height:42px}.public-detail-carousel-arrow.previous{left:9px}.public-detail-carousel-arrow.next{right:9px}}

/* Misma proporción vertical del detalle en el carrusel de la tarjeta. */
.public-contribution-gallery.public-option-carousel{width:100%;aspect-ratio:4/5!important;background:#f5f2f9}.public-option-carousel-track,.public-option-carousel .public-option-carousel-slide{width:100%;height:100%}.public-option-carousel .public-contribution-image{display:block;width:100%!important;height:100%!important;padding:0;object-fit:contain!important;background:#f5f2f9}
@media(max-width:640px){.public-contribution-gallery.public-option-carousel{width:min(100%,340px);margin-inline:auto;aspect-ratio:4/5!important}}

/* Nube informativa interactiva para aporte libre. */
.public-partial-help{align-items:center;justify-content:center;width:22px;height:22px;border:1px solid #d7c7fa;border-radius:50%;background:#f3edff;cursor:pointer}.public-partial-help.is-open>span{display:block}.public-contribution-row:has(.public-partial-help.is-open){z-index:80;overflow:visible!important}.public-partial-help:focus-visible{outline:3px solid rgba(124,61,255,.2);outline-offset:2px}
@media(max-width:700px){body.public-partial-help-open{overflow:hidden}body.public-partial-help-open:after{content:"";position:fixed;z-index:2598;inset:0;background:rgba(18,12,38,.62);backdrop-filter:blur(4px)}.public-partial-help.is-open>span{position:fixed!important;z-index:2600;top:50%!important;right:auto!important;bottom:auto!important;left:50%!important;display:block!important;width:min(350px,calc(100vw - 28px))!important;padding:22px 20px;border-radius:17px;box-shadow:0 30px 80px rgba(14,8,35,.4);transform:translate(-50%,-50%);font-size:.8rem;line-height:1.6;text-align:left}.public-partial-help.is-open>span:before{content:"Aporte libre";display:block;margin-bottom:8px;color:#7135e7;font-size:.68rem;font-weight:950;text-transform:uppercase}}
.public-partial-help{padding:0;font:inherit}.public-partial-help-dialog{position:fixed;inset:0;z-index:5200;display:grid;place-items:center;padding:16px}.public-partial-help-dialog[hidden]{display:none}.public-partial-help-backdrop{position:absolute;inset:0;background:rgba(18,12,38,.68);backdrop-filter:blur(6px)}.public-partial-help-dialog>section{position:relative;width:min(430px,100%);padding:27px;border:1px solid #d9cafa;border-radius:22px;background:linear-gradient(145deg,#fff,#faf7ff);box-shadow:0 32px 90px rgba(15,8,38,.42)}.public-partial-help-dialog h3{margin:7px 40px 10px 0;color:var(--dark2);font-size:1.35rem}.public-partial-help-dialog p{margin:0 0 20px;color:var(--muted);font-size:.86rem;line-height:1.65}.public-partial-help-close:first-child{position:absolute;top:15px;right:15px;display:grid;width:36px;height:36px;place-items:center;border:0;border-radius:50%;background:#efe8ff;color:var(--primary);cursor:pointer}@media(max-width:520px){.public-partial-help-dialog{padding:12px}.public-partial-help-dialog>section{padding:24px 18px;border-radius:19px}.public-partial-help-dialog h3{font-size:1.2rem}}

/* Resumen de cobros plegable y cerrado por defecto. */
.public-payment-breakdown>summary{grid-template-columns:minmax(0,1fr) auto auto;min-height:58px;border:1px solid #ccebdc;border-radius:13px;background:linear-gradient(135deg,#f2fff8,#fff);box-shadow:0 9px 22px rgba(22,122,78,.08)}.public-payment-breakdown[open]>summary{border-radius:13px 13px 0 0}.public-payment-breakdown>summary>span{display:flex;align-items:center;gap:7px}.public-payment-breakdown>summary>span>i{display:grid;width:28px;height:28px;place-items:center;border-radius:9px;background:#dff7eb;color:#0a8a55}.public-payment-breakdown>summary>strong{display:grid;justify-items:end;line-height:1.1}.public-payment-breakdown>summary>strong small{color:#688174;font-size:.52rem;text-transform:uppercase}.public-payment-breakdown>summary>strong b{color:#087040;font-size:.9rem}.public-breakdown-hide{display:none!important}.public-payment-breakdown[open] .public-breakdown-show{display:none!important}.public-payment-breakdown[open] .public-breakdown-hide{display:flex!important}.public-payment-breakdown-detail{overflow:hidden;border:1px solid #dbe9e2;border-top:0;border-radius:0 0 13px 13px}.public-payment-breakdown-detail>div:last-child{background:#f6fff9}
@media(max-width:640px){.public-payment-breakdown{border:0!important;border-radius:14px!important;background:transparent!important}.public-payment-breakdown>summary{grid-template-columns:minmax(0,1fr) auto auto;gap:7px;min-height:60px;padding:10px 11px}.public-payment-breakdown>summary>span{font-size:.68rem!important;line-height:1.2}.public-payment-breakdown>summary>span>i{width:27px;height:27px;flex:0 0 27px}.public-payment-breakdown>summary>strong small{font-size:.47rem}.public-payment-breakdown>summary>strong b{font-size:.82rem}.public-payment-breakdown-detail>div{padding:10px 11px;font-size:.69rem}.public-payment-breakdown-detail>div strong{font-size:.72rem}}

/* El desglose abierto siempre baja bajo el encabezado, nunca a su costado. */
.public-payment-breakdown{grid-template-columns:minmax(0,1fr)!important;width:100%}
.public-payment-breakdown>summary,.public-payment-breakdown>.public-payment-breakdown-detail{grid-column:1/-1;width:100%;min-width:0}
.public-payment-breakdown>.public-payment-breakdown-detail{display:grid;grid-template-columns:minmax(0,1fr);clear:both}
.public-payment-breakdown>.public-payment-breakdown-detail>div{display:flex;width:100%;align-items:center;justify-content:space-between}
.public-payment-breakdown:not([open])>.public-payment-breakdown-detail{display:none}
.public-payment-breakdown[open]>summary{order:2;border-radius:0 0 13px 13px;border-top:0}
.public-payment-breakdown[open]>.public-payment-breakdown-detail{order:1;border:1px solid #dbe9e2;border-radius:13px 13px 0 0}

/* Ayuda de aporte libre como nube contextual, sin modal ni fondo de pantalla. */
.public-partial-help>span{right:auto!important;bottom:calc(100% + 11px)!important;left:50%!important;display:none;width:min(300px,calc(100vw - 32px));transform:translateX(-38%);text-align:left;white-space:normal}
.public-partial-help>span:after{content:"";position:absolute;top:100%;left:38%;border:7px solid transparent;border-top-color:#fff;filter:drop-shadow(0 1px 0 #d8c8fa)}
.public-partial-help:hover>span,.public-partial-help:focus>span,.public-partial-help:focus-within>span{display:none!important}
.public-partial-help.is-open>span{display:block!important}
@media(max-width:700px){body.public-partial-help-open{overflow:auto}.public-partial-help.is-open>span{position:absolute!important;z-index:2600;top:auto!important;right:auto!important;bottom:calc(100% + 11px)!important;left:50%!important;width:min(270px,calc(100vw - 32px))!important;padding:13px 14px;border-radius:12px;box-shadow:0 16px 38px rgba(24,13,57,.25);transform:translateX(-38%);font-size:.72rem;line-height:1.5}.public-partial-help.is-open>span:before{content:none}}

/* Evita que la tarjeta y el rotulo recorten la nube informativa. */
.public-contribution-row .public-custom-amount-field>small{display:flex!important;align-items:center;gap:5px;overflow:visible!important;white-space:normal!important;-webkit-line-clamp:unset!important}
.public-contribution-row .public-partial-help{position:relative;z-index:90;flex:0 0 22px;overflow:visible!important}
.public-contribution-row:has(.public-partial-help.is-open),.public-contribution-list:has(.public-partial-help.is-open),.public-contribution-panel:has(.public-partial-help.is-open){overflow:visible!important}
.public-partial-help.is-open>span{visibility:visible!important;opacity:1!important;pointer-events:auto}

/* Salida clara al volver de la pasarela de pago. */
.public-payment-return{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;margin:0 32px 28px;padding:15px 16px;border:1px solid #cde9dc;border-radius:15px;background:linear-gradient(135deg,#f1fff7,#fff);box-shadow:0 12px 28px rgba(16,116,70,.09)}
.public-payment-return>i{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:#dff7eb;color:#088754;font-size:1.05rem}.public-payment-return h3{margin:3px 0 4px;color:#182136;font-size:.98rem}.public-payment-return p{margin:0;color:#647167;font-size:.71rem;line-height:1.4}.public-payment-return .btn{white-space:nowrap}
@media(max-width:700px){.public-payment-return{grid-template-columns:auto minmax(0,1fr);margin:0 14px 20px;padding:13px}.public-payment-return .btn{grid-column:1/-1;width:100%;justify-content:center}.public-payment-return h3{font-size:.9rem}}

/* Acceso de edición visible en la evolución/recaudación del evento. */
.revenue-page-topbar .revenue-edit-top{min-height:42px;padding:9px 13px;border-color:#cdbaff;color:#7135e7;font-size:.76rem;font-weight:900;white-space:nowrap}
.revenue-page-topbar .revenue-edit-top:hover{border-color:#8d61f0;background:#f2ecff;color:#5d26cf}
@media(max-width:620px){.revenue-page-topbar .revenue-edit-top{min-height:40px;padding:8px 10px;font-size:.68rem}}

/* Titulares de las cuatro etapas de evolución del evento. */
.event-stage-card .event-stage-main h2{color:#FF3FA4}

/* Las imágenes de la biblioteca se muestran completas, aun si su proporción no es 9:16. */
.invitation-image-current.is-library-image>img,.public-cover-media.is-library-image img{object-fit:contain!important}

/* En celular la portada crece con sus datos para no cortar tarjetas ni organizador. */
@media(max-width:600px){
  .public-invitation-hero{aspect-ratio:auto!important;min-height:800px!important;gap:16px;padding:20px 24px 24px!important}
  .public-invitation-copy{margin-top:16px}
  .public-event-facts{margin-top:4px;gap:8px}
  .public-event-facts span{min-height:76px;padding:10px}
  .public-event-notes{margin-top:2px}
}

/* Aviso de cookies comercial y optimizado para celular. */
.cookie-consent-copy{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px}.cookie-consent-copy>div{display:grid}.cookie-consent-copy small{margin-bottom:2px;color:#8a5add;font-size:.56rem;font-weight:950;letter-spacing:.05em;text-transform:uppercase}.cookie-consent-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;background:linear-gradient(135deg,#7b3bec,#e638ab);color:#fff;font-size:1.05rem;box-shadow:0 9px 20px rgba(114,51,222,.22)}.cookie-consent-copy a{display:inline-flex;align-items:center;gap:5px;width:max-content}.cookie-consent-actions{display:flex;gap:8px}.cookie-consent-actions .btn{white-space:nowrap}
@media(max-width:650px){body:has(.cookie-consent:not([hidden])):after{content:"";position:fixed;z-index:2998;inset:0;background:rgba(17,10,38,.42);backdrop-filter:blur(3px)}.cookie-consent{z-index:3000;right:8px;bottom:max(8px,env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr;width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:18px 16px calc(14px + env(safe-area-inset-bottom));border:1px solid rgba(218,202,250,.95);border-radius:22px;background:linear-gradient(160deg,#fff 0%,#fbf8ff 62%,#f4fff9 100%);box-shadow:0 30px 85px rgba(17,9,41,.36);overflow-y:auto;animation:cookieConsentMobileIn .34s cubic-bezier(.2,.8,.25,1) both}.cookie-consent-copy{gap:11px}.cookie-consent-icon{width:44px;height:44px;border-radius:14px}.cookie-consent strong{color:#211533;font-size:1rem}.cookie-consent p{margin:6px 0 9px;color:#6e6479;font-size:.76rem;line-height:1.55}.cookie-consent a{font-size:.68rem}.cookie-consent-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:7px;margin-top:1px}.cookie-consent-actions .btn{display:flex;min-height:45px;align-items:center;justify-content:center;gap:6px;padding:9px 7px;border-radius:13px;font-size:.66rem}.cookie-consent-actions .btn-primary{box-shadow:0 11px 24px rgba(124,61,255,.2)}}
@keyframes cookieConsentMobileIn{from{opacity:0;transform:translateY(26px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:380px){.cookie-consent-actions{grid-template-columns:1fr!important}.cookie-consent{padding-inline:14px}.cookie-consent-copy{grid-template-columns:36px minmax(0,1fr)}.cookie-consent-icon{width:36px;height:36px;border-radius:11px}}
@media(prefers-reduced-motion:reduce){.cookie-consent{animation:none!important}}

/* Encuadre único 9:16 para edición y publicación de la invitación. */
.invitation-image-current{width:min(360px,100%);aspect-ratio:9/16!important}
.public-invitation-hero{align-self:start;width:100%;min-height:0!important;aspect-ratio:9/16!important}
.invitation-image-current>img,.public-cover-media img{width:100%;height:100%;object-fit:cover;transform-origin:50% 50%}
@media(max-width:900px){.public-invitation-hero{aspect-ratio:9/16!important}}
@media(max-width:520px){.invitation-image-current{width:min(340px,100%);aspect-ratio:9/16!important}}

.revenue-event-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.revenue-event-title-row h2{min-width:0}.revenue-invitation-pill{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;min-height:38px;padding:8px 13px;border:1px solid #d5c5fb;border-radius:999px;background:linear-gradient(135deg,#fff,#f4efff);color:#6932d5;font:900 .72rem Inter,Arial,sans-serif;box-shadow:0 9px 20px rgba(87,46,174,.12);cursor:pointer;transition:.2s}.revenue-invitation-pill:hover{transform:translateY(-1px);box-shadow:0 13px 25px rgba(87,46,174,.18)}.revenue-invitation-pill i{font-size:.9rem}.revenue-invitation-pill.is-copied{border-color:#8bdcb7;background:#effff6;color:#08784b}@media(max-width:620px){.revenue-event-title-row{display:grid;justify-items:center;gap:10px}.revenue-event-title-row h2{text-align:center}.revenue-event-hero-copy>p{display:none}.revenue-invitation-pill{min-height:40px;padding:9px 15px;font-size:.74rem}}

/* Confirmación de asistencia: presentación compacta. */
.public-rsvp-card:not(.public-contribution-card){gap:10px!important;padding:22px 24px!important}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-head{min-height:38px}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-icon.attendance{width:38px;height:38px;border-radius:11px}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-icon.attendance i{font-size:1rem}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-options{gap:6px!important}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-options label>span{min-height:50px;padding:8px 10px!important;border-radius:11px!important}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-options label>span i{width:25px;height:25px;border-radius:8px;font-size:.76rem!important}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-options label>span strong{font-size:.78rem}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-options label>span small{font-size:.59rem!important}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-fields{gap:8px;padding:10px 11px;border-radius:12px}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-fields:before{font-size:.58rem}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-fields label{gap:4px;font-size:.67rem!important}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-fields input{min-height:36px!important;padding:7px 9px;font-size:.74rem}.public-rsvp-card:not(.public-contribution-card) .field-note{margin-top:3px;font-size:.59rem}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-security{padding:7px 9px;font-size:.61rem}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-submit{min-height:40px!important;font-size:.76rem!important}
@media(max-width:640px){.public-rsvp-card:not(.public-contribution-card){gap:9px!important;padding:16px 13px 18px!important}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-options label>span{min-height:48px}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-fields{padding:9px}.public-rsvp-card:not(.public-contribution-card) .public-rsvp-fields input{min-height:38px!important}}

/* Acciones de galería: botones gemelos y legibles. */
.gift-image-dialog-tools>.btn{flex:0 0 205px;min-height:48px;justify-content:center;gap:7px;white-space:nowrap;font-size:.72rem}.gift-image-dialog-tools>.btn i{font-size:.82rem}@media(max-width:480px){.gift-image-dialog-tools>.btn{flex:1 1 calc(50% - 6px);min-width:0;padding-inline:8px;font-size:.65rem}}

/* Barra de acciones de la imagen de invitación. */
.invitation-image-actions{justify-content:flex-start!important;gap:7px!important;padding:9px!important;border:1px solid #e5ddf5;border-radius:15px;background:linear-gradient(135deg,#fdfbff,#f6f1ff)}.invitation-library-button,.invitation-premium-file-pill .invitation-premium-file-button,.invitation-image-actions .invitation-image-remove,.invitation-image-adjust-pill>summary,.invitation-image-filter-pill>summary{display:inline-flex!important;align-items:center;justify-content:center;gap:6px;min-height:38px!important;margin:0!important;padding:8px 11px!important;border-radius:11px!important;font-size:.68rem!important;font-weight:900;white-space:nowrap}.invitation-library-button{border-color:#d5c3fb;background:#fff;color:#6932d5;box-shadow:0 5px 12px rgba(91,47,179,.08)}.invitation-premium-file-pill .invitation-premium-file-button{border-color:#7135e7!important;background:linear-gradient(110deg,#7135e7,#b23ce6 62%,#eb479f)!important;color:#fff!important;box-shadow:0 8px 17px rgba(112,46,212,.2)!important}.invitation-image-actions .invitation-image-remove{border-color:#ffc8d5!important;background:#fff7f9!important;color:#d83261!important}.invitation-image-adjust-pill>summary,.invitation-image-filter-pill>summary{border:1px solid #d9cef5;background:#fff;color:#6432c6}.invitation-image-adjust-pill>summary span,.invitation-image-filter-pill>summary span{white-space:nowrap}.invitation-image-adjust-chevron,.invitation-image-filter-chevron{margin-left:1px;font-size:.6rem}@media(max-width:620px){.invitation-image-actions{justify-content:center!important;padding:8px!important}.invitation-library-button,.invitation-premium-file-pill .invitation-premium-file-button,.invitation-image-actions .invitation-image-remove,.invitation-image-adjust-pill>summary,.invitation-image-filter-pill>summary{min-height:35px!important;padding:7px 9px!important;font-size:.62rem!important}}
.invitation-image-actions>*{box-sizing:border-box;min-width:0;max-width:100%}.invitation-library-button>span,.invitation-premium-file-pill .invitation-premium-file-button>span:nth-child(2),.invitation-image-actions .invitation-image-remove>span,.invitation-image-adjust-pill>summary span,.invitation-image-filter-pill>summary span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invitation-premium-file-pill{max-width:100%}.invitation-premium-file-pill .invitation-premium-file-button{max-width:100%;overflow:hidden}.invitation-image-adjust-pill>summary,.invitation-image-filter-pill>summary{max-width:100%;overflow:hidden}
.invitation-library-button,.invitation-premium-file-pill .invitation-premium-file-button,.invitation-image-actions .invitation-image-remove,.invitation-image-adjust-pill>summary,.invitation-image-filter-pill>summary{height:auto!important;min-height:42px!important;white-space:normal!important;line-height:1.12}.invitation-library-button>span,.invitation-premium-file-pill .invitation-premium-file-button>span:nth-child(2),.invitation-image-actions .invitation-image-remove>span,.invitation-image-adjust-pill>summary span,.invitation-image-filter-pill>summary span{overflow:visible;text-overflow:clip;white-space:normal;text-align:center;line-height:1.12}.invitation-premium-file-pill .invitation-premium-file-button,.invitation-image-adjust-pill>summary,.invitation-image-filter-pill>summary{overflow:visible}

/* Invitación pública compacta: conserva 9:16 y reduce la escala visual. */
.invitation-library-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:7px 11px;border:1px solid #CDBAFF;border-radius:999px;background:#F7F3FF;color:#6831D3;font:900 .69rem Inter,Arial,sans-serif;white-space:nowrap;cursor:pointer}.invitation-library-button:hover{border-color:#7135E7;background:#EEE7FF;color:#5723BD}.invitation-library-modal{position:fixed;z-index:2450;inset:0;display:grid;place-items:center;padding:18px;background:rgba(15,10,32,.68)}.invitation-library-modal[hidden]{display:none}.invitation-library-modal-backdrop{position:absolute;inset:0}.invitation-library-modal>section{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr);width:min(860px,100%);max-height:min(760px,90dvh);overflow:hidden;border-radius:18px;background:#fff;box-shadow:0 30px 90px rgba(10,8,30,.4)}.invitation-library-modal header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:20px 22px 16px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#fcfaff,#f6f0ff)}.invitation-library-modal header h3{margin:3px 0 5px}.invitation-library-modal header p{margin:0;color:var(--muted);font-size:.8rem}.invitation-library-modal header>button,.invitation-library-preview>div>button:first-child{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--primary);cursor:pointer}.invitation-library-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:195px;gap:14px;align-content:start;padding:18px 22px 24px;overflow:auto}.invitation-library-grid article{position:relative;height:195px;overflow:hidden;border:1px solid #dfd6f5;border-radius:12px;background:#f4efff;box-shadow:0 8px 18px rgba(36,22,73,.08)}.invitation-library-grid img{display:block;width:100%;height:100%;object-fit:cover}.invitation-library-grid article>div{position:absolute;right:7px;bottom:7px;left:7px;display:flex;justify-content:space-between;gap:6px}.invitation-library-grid article button{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:9px;background:rgba(255,255,255,.94);color:var(--primary);font-weight:900;cursor:pointer;box-shadow:0 3px 9px rgba(22,13,46,.18)}.invitation-library-grid article button:last-child{background:linear-gradient(90deg,var(--primary),var(--accent));color:#fff}.invitation-library-preview{position:fixed;z-index:2500;inset:0;display:grid;place-items:center;padding:18px;background:rgba(15,10,32,.72)}.invitation-library-preview[hidden]{display:none}.invitation-library-preview>div{position:relative;display:grid;gap:10px;width:min(390px,100%);max-height:90dvh;padding:12px;border-radius:16px;background:#fff}.invitation-library-preview img{width:100%;max-height:70dvh;object-fit:contain;border-radius:10px;background:#f6f2ff}.invitation-library-preview>div>button:first-child{position:absolute;top:18px;right:18px}@media(max-width:600px){.invitation-library-modal{padding:10px}.invitation-library-modal>section{max-height:94dvh}.invitation-library-modal header{padding:16px}.invitation-library-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:170px;gap:9px;padding:12px}.invitation-library-grid article{height:170px}.invitation-library-button{font-size:.62rem;padding:6px 8px}.invitation-library-grid article>div{right:5px;bottom:5px;left:5px}}

.public-invitation-guest-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:18px auto 6px}.public-invitation-guest-actions .btn{min-height:40px;padding:9px 14px}@media(max-width:520px){.public-invitation-guest-actions{display:grid;grid-template-columns:1fr;margin:14px 0 4px}.public-invitation-guest-actions .btn{width:100%}}
.public-invitation-layout .main{width:min(760px,100%);padding:16px}.public-invitation-shell{border-radius:15px}.public-invitation-hero{padding:24px;gap:18px}.public-invitation-brand{font-size:.85rem}.public-invitation-brand span{width:28px;height:27px;border-radius:8px}.public-invitation-label,.public-event-type{font-size:.57rem;padding:5px 8px}.public-invitation-copy h1{margin:9px 0 7px;font-size:clamp(1.45rem,3vw,2.35rem)}.public-invitation-copy p{font-size:.78rem;line-height:1.45}.public-event-facts{gap:5px}.public-event-facts span{padding:7px}.public-event-facts small{font-size:.49rem}.public-event-facts strong{font-size:.62rem}.public-event-notes{gap:5px}.public-event-notes span{padding:7px;font-size:.62rem}.public-rsvp-card{gap:11px;padding:22px}.public-rsvp-head h2{font-size:1.25rem}.public-rsvp-icon{width:34px;height:34px;border-radius:9px;font-size:.85rem}.public-rsvp-options label>span{padding:8px 9px}.public-rsvp-fields input{min-height:36px}.public-contribution-card{margin-top:12px}@media(max-width:620px){.public-invitation-layout .main{width:min(320px,calc(100% - 16px));padding:8px 0}.public-invitation-hero{padding:16px;gap:13px}.public-invitation-copy h1{font-size:1.5rem}.public-event-facts span{padding:7px}.public-rsvp-card{padding:15px 12px}.public-contribution-card{margin-top:10px}}

/* Tarjetas de aportes: icono superior y contenido centrado en escritorio. */
.public-revenue-types article{grid-template-columns:1fr;justify-items:center;align-content:center;gap:5px;min-height:96px;text-align:center}.public-revenue-types article>span{justify-items:center}

/* Tarjetas compactas y movibles sobre la imagen de la invitación.
   Todo se mide en cqw (porcentaje del ancho de la imagen): así la vista previa del paso 4
   y la invitación pública se ven idénticas en cualquier pantalla. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.public-invitation-hero.has-invitation-cards,.invitation-image-current:has(.inv-cards){container-type:inline-size;padding:0!important}
.public-invitation-hero.has-invitation-cards:after,.invitation-image-current:has(.inv-cards):not(.is-empty):after{background:linear-gradient(180deg,rgba(13,12,30,.06),rgba(13,12,30,.1))!important}
.invitation-image-current:has(.inv-cards){max-height:none!important}
.inv-cards{position:absolute;z-index:2;inset:0;pointer-events:none}
.inv-cards .inv-card{position:absolute;display:grid;gap:1.3cqw;width:max-content;max-width:76%;padding:2.8cqw 3.6cqw;border:1px solid rgba(255,255,255,.2);border-radius:3.4cqw;background:rgba(18,13,42,.56);color:#fff;box-shadow:0 2cqw 6cqw rgba(8,6,24,.22);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;text-align:left}
.inv-cards .inv-card[hidden],.inv-cards [data-invitation-card-row][hidden]{display:none!important}
.inv-cards span,.inv-cards b,.inv-cards small,.inv-cards strong{position:static;left:auto;bottom:auto;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:inherit;font-size:inherit;line-height:inherit;text-transform:none;letter-spacing:normal;white-space:normal;overflow:visible;-webkit-line-clamp:unset;display:revert}
.inv-cards .inv-card-chip{display:inline-flex;align-items:center;gap:1cqw;justify-self:start;color:#ff84c2;font-size:2.5cqw;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.inv-cards .inv-card-title{display:block;font-size:7.4cqw;font-weight:950;line-height:1.02;overflow-wrap:anywhere}
.inv-cards .inv-card-facts{max-width:66%;gap:1.2cqw}
.inv-cards .inv-card-facts>span{display:flex;align-items:flex-start;gap:1.8cqw;font-size:3.1cqw;line-height:1.25}
.inv-cards .inv-card-facts i{flex:none;color:#ff84c2;font-size:3.2cqw;line-height:1.1}
.inv-cards .inv-card-facts b{font-weight:800;overflow-wrap:anywhere}
.inv-cards.theme-light .inv-card{border-color:rgba(255,255,255,.75);background:rgba(255,255,255,.76);color:#1b1038;box-shadow:0 2cqw 6cqw rgba(27,16,56,.16)}
.inv-cards.theme-light .inv-card-chip,.inv-cards.theme-light .inv-card-facts i{color:#7c3cff}
.inv-cards.is-editable .inv-card{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;transition:box-shadow .15s ease,outline-color .15s ease;outline:1.5px dashed transparent;outline-offset:2px}
.inv-cards.is-editable .inv-card:hover{outline-color:rgba(255,132,194,.9)}
.inv-cards.is-editable .inv-card:focus-visible{outline:2px solid #ff84c2}
.inv-cards.is-editable .inv-card.is-dragging{cursor:grabbing;outline-color:#ff84c2;box-shadow:0 3cqw 9cqw rgba(8,6,24,.4)}
.inv-cards-theme{display:inline-flex;padding:2px;border:1px solid #e3d9ff;border-radius:999px;background:#fbf9ff}
.inv-cards-theme button{min-height:28px;padding:4px 10px;border:0;border-radius:999px;background:transparent;color:var(--dark2);font-size:.66rem;font-weight:850;cursor:pointer}
.inv-cards-theme button.is-active{background:#7c3cff;color:#fff}

/* Estudio IA del paso 4. */
.invitation-ai-button{display:flex;align-items:center;gap:10px;width:min(360px,100%);margin:0 0 8px;padding:11px 14px;border:0;border-radius:14px;background:linear-gradient(135deg,#7c3cff,#e63891);color:#fff;text-align:left;cursor:pointer;box-shadow:0 10px 22px rgba(124,60,255,.25)}.invitation-ai-button>i:first-child{font-size:1.25rem}.invitation-ai-button>span{display:grid;flex:1;gap:2px;min-width:0}.invitation-ai-button strong{font-size:.82rem;font-weight:900}.invitation-ai-button small{color:rgba(255,255,255,.86);font-size:.64rem;font-weight:700;line-height:1.3}@media(max-width:520px){.invitation-ai-button{width:min(340px,100%)}}
.invitation-ai-button:hover{filter:brightness(1.06)}
.ai-studio-modal{position:fixed;z-index:4000;inset:0;display:grid;place-items:center;padding:16px}
.ai-studio-modal[hidden]{display:none}
.ai-studio-backdrop{position:absolute;inset:0;background:rgba(17,10,38,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.ai-studio-dialog{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(980px,100%);max-height:calc(100dvh - 32px);border-radius:20px;background:#fff;box-shadow:0 30px 90px rgba(17,10,38,.35);overflow:hidden}
.ai-studio-head{display:flex;justify-content:space-between;gap:16px;padding:20px 22px 14px;border-bottom:1px solid var(--line)}
.ai-studio-head .kicker{display:inline-flex;align-items:center;gap:5px;color:#e63891}
.ai-studio-head h3{margin:4px 0;font-size:1.25rem}
.ai-studio-head p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.45}
.ai-studio-close{flex:none;display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:#fff;cursor:pointer}
.ai-studio-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:20px;padding:18px 22px;overflow:auto}
.ai-studio-form{display:grid;align-content:start;gap:14px}
.ai-studio-field{display:grid;gap:6px;margin:0;padding:0;border:0;min-width:0}
.ai-studio-field>span,.ai-studio-field legend{padding:0;color:var(--dark2);font-size:.76rem;font-weight:850}
.ai-studio-field em{margin-left:4px;color:var(--muted);font-size:.64rem;font-style:normal;font-weight:700}
.ai-studio-field input[type=text],.ai-studio-field input:not([type]){width:100%;min-height:42px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:.82rem}
.ai-studio-chips{display:flex;flex-wrap:wrap;gap:6px}
.ai-studio-chips label{margin:0}
.ai-studio-chips input{position:absolute;opacity:0;pointer-events:none}
.ai-studio-chips span{display:inline-flex;min-height:32px;align-items:center;padding:5px 11px;border:1px solid #e3d9ff;border-radius:999px;background:#fbf9ff;color:var(--dark2);font-size:.72rem;font-weight:800;cursor:pointer}
.ai-studio-chips input:checked+span{border-color:#7c3cff;background:#7c3cff;color:#fff}
.ai-studio-chips input:focus-visible+span{outline:3px solid rgba(124,60,255,.25)}
.ai-studio-note{display:flex;gap:6px;margin:0;color:var(--muted);font-size:.68rem;line-height:1.4}
.ai-studio-note i{color:var(--success)}
.ai-studio-gallery-wrap{display:grid;align-content:start;gap:10px;min-width:0}
.ai-studio-gallery-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.ai-studio-gallery-head strong{font-size:.86rem}
.ai-studio-gallery-head span{color:#7c3cff;font-size:.74rem;font-weight:900}
.ai-studio-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:10px}
.ai-studio-empty{grid-column:1/-1;margin:0;padding:28px 16px;border:1px dashed #d8caf8;border-radius:14px;background:#fbf9ff;color:var(--muted);font-size:.76rem;line-height:1.5;text-align:center}
.ai-studio-item{position:relative;display:grid;place-items:center;align-content:center;gap:8px;aspect-ratio:9/16;padding:8px;border:1px solid var(--line);border-radius:12px;background:#f5f3f9;overflow:hidden;text-align:center}
.ai-studio-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ai-studio-item small{position:relative;color:var(--muted);font-size:.66rem;line-height:1.4}
.ai-studio-item.is-failed,.ai-studio-item.is-rejected{background:#fff7f9;border-color:#ffc9d3}
.ai-studio-item.is-failed small,.ai-studio-item.is-rejected small{color:#b4233f}
.ai-studio-item-label{position:absolute;z-index:1;top:6px;left:6px;padding:3px 7px;border-radius:999px;background:rgba(17,15,38,.7);color:#fff;font-size:.58rem;font-weight:900}
.ai-studio-use{position:absolute;z-index:1;right:6px;bottom:6px;left:6px;display:inline-flex;justify-content:center;align-items:center;gap:4px;min-height:32px;border:0;border-radius:999px;background:#fff;color:#7c3cff;font-size:.7rem;font-weight:900;cursor:pointer;box-shadow:0 6px 16px rgba(17,10,38,.25)}
.ai-studio-use:hover{background:#7c3cff;color:#fff}
.ai-studio-spinner{width:28px;height:28px;border:3px solid #e3d9ff;border-top-color:#7c3cff;border-radius:50%;animation:aiStudioSpin .9s linear infinite}
@keyframes aiStudioSpin{to{transform:rotate(360deg)}}
.ai-studio-foot{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;padding:14px 22px;border-top:1px solid var(--line);background:#fbfaff}
.ai-studio-message{flex:1 1 220px;min-height:1em;color:var(--muted);font-size:.74rem;line-height:1.4}
.ai-studio-message.is-warning{color:#b4233f;font-weight:750}
.ai-studio-message.is-success{color:#147a4b;font-weight:750}
.ai-studio-offer{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.ai-studio-offer[hidden],.ai-studio-generate[hidden]{display:none}
.ai-studio-offer>div{display:grid;text-align:right}
.ai-studio-offer strong{font-size:.9rem}
.ai-studio-offer small{max-width:260px;color:var(--muted);font-size:.66rem;line-height:1.35}
@media(max-width:760px){.ai-studio-modal{padding:0;place-items:end stretch}.ai-studio-dialog{max-height:100dvh;border-radius:18px 18px 0 0}.ai-studio-body{grid-template-columns:1fr;padding:14px 16px}.ai-studio-head{padding:16px 16px 12px}.ai-studio-foot{padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.ai-studio-offer{width:100%;justify-content:space-between}.ai-studio-offer>div{text-align:left}.ai-studio-generate,.ai-studio-offer .btn{width:100%}.ai-studio-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.ai-studio-spinner{animation-duration:3s}}
.ai-studio-field[hidden]{display:none!important}
@media(max-width:760px){.ai-studio-modal.has-versions .ai-studio-gallery-wrap{order:-1}}

/* Tarjetas: cambiar tamaño (en Libre). Crece la letra, no la caja completa: el relleno queda igual
   y la tarjeta se ajusta al texto, así un título grande no arrastra una caja gigante. */
.inv-cards.preset-libre .inv-card-title{font-size:calc(7.4cqw * var(--card-scale,1))}
.inv-cards.preset-libre .inv-card-chip{font-size:calc(2.5cqw * var(--card-scale,1))}
.inv-cards.preset-libre .inv-card-facts{max-width:86%}
.inv-cards.preset-libre .inv-card-facts>span{font-size:calc(3.1cqw * var(--card-scale,1))}
.inv-cards.preset-libre .inv-card-facts i{font-size:calc(3.2cqw * var(--card-scale,1))}
.inv-cards .inv-card-resize{position:absolute;z-index:2;display:grid;place-items:center;width:24px;height:24px;padding:0;border:2px solid #fff;border-radius:50%;box-shadow:0 3px 10px rgba(17,10,38,.3);font-size:11px;line-height:1}
.inv-cards .inv-card-resize{right:-10px;bottom:-10px;background:#7c3cff;color:#fff;cursor:nwse-resize;touch-action:none;transform-origin:100% 100%}
.inv-cards.is-editable .inv-card.is-resizing{outline-color:#7c3cff;cursor:nwse-resize}

/* Campos de texto más marcados en toda la cuenta del cliente. */
form :is(input:not([type]),input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],input[type=time],input[type=password],input[type=url],input[type=search],select,textarea):not(.public-quantity-control *):not(.c-step *):not(.contact-search *):not([readonly]){border:1.5px solid #c9bbec!important;background-color:#fff!important;box-shadow:inset 0 1px 2px rgba(27,16,56,.05)}
form :is(input:not([type]),input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],input[type=time],input[type=password],input[type=url],input[type=search],select,textarea):not(.public-quantity-control *):not(.c-step *):not(.contact-search *):not([readonly]):hover{border-color:#a98cf3!important}
form :is(input:not([type]),input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],input[type=time],input[type=password],input[type=url],input[type=search],select,textarea):not(.public-quantity-control *):not(.c-step *):not(.contact-search *):focus{border-color:#7c3cff!important;box-shadow:0 0 0 3px rgba(124,60,255,.16)!important;outline:none}
form :is(input,textarea)::placeholder{color:#8f88a6;opacity:1}

/* En computador la imagen de la invitación cabe completa en la pantalla, sin hacer scroll. */
.public-invitation-hero.has-invitation-cards{justify-self:center;width:min(100%,calc((100dvh - 110px) * 9 / 16))!important}
.invitation-image-upload>.invitation-image-current,.invitation-image-current{width:min(360px,100%,calc((100dvh - 150px) * 9 / 16))!important}
.inv-cards .inv-card.is-dragging,.inv-cards .inv-card.is-resizing,.inv-cards.is-editable .inv-card:focus-visible{z-index:3}

/* Diseños listos del texto sobre la imagen. En ellos las tarjetas se ordenan solas (flex);
   en "libre" cada tarjeta usa su posición y tamaño guardados. */
.inv-cards:not(.preset-libre){display:flex;flex-direction:column;gap:2cqw;padding:7cqw 6cqw}
.inv-cards:not(.preset-libre) .inv-card{position:relative;left:auto!important;top:auto!important;max-width:100%;transform:none}
.inv-cards:not(.preset-libre) .inv-card-resize{display:none}
.inv-cards:not(.preset-libre):before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}
.inv-cards:is(.preset-poster,.preset-minimo) .inv-card{padding:0;border:0;border-radius:0;background:none!important;box-shadow:none!important;-webkit-backdrop-filter:none;backdrop-filter:none;text-shadow:0 .3cqw 2.2cqw rgba(8,6,24,.65)}
.inv-cards.theme-light:is(.preset-poster,.preset-minimo) .inv-card{color:#1b1038;text-shadow:0 .2cqw 1.8cqw rgba(255,255,255,.75)}
.inv-cards:is(.preset-poster,.preset-franja) .inv-card-facts{display:flex;flex-wrap:wrap;gap:1.4cqw 4cqw}
/* Centro: para fondos de la biblioteca con un panel libre al medio (marco ilustrado alrededor).
   Todo centrado entre el 11% y el 60% del alto, sin caja ni degradado: el panel ya da el contraste. */
.inv-cards.preset-centro{justify-content:center;align-items:center;gap:3.4cqw;padding:20cqw 15cqw 72cqw;text-align:center}
.inv-cards.preset-centro .inv-card{justify-items:center;padding:0;border:0;border-radius:0;background:none!important;box-shadow:none!important;-webkit-backdrop-filter:none;backdrop-filter:none;text-align:center;text-shadow:0 .3cqw 2cqw rgba(8,6,24,.6)}
.inv-cards.theme-light.preset-centro .inv-card{color:#1b1038;text-shadow:0 .2cqw 1.6cqw rgba(255,255,255,.8)}
.inv-cards.preset-centro .inv-card-chip{justify-self:center;font-size:3.4cqw}
.inv-cards.preset-centro .inv-card-title{font-size:12.5cqw;line-height:1}
.inv-cards.preset-centro .inv-card-facts{display:grid;justify-items:center;gap:2cqw;max-width:100%}
.inv-cards.preset-centro .inv-card-facts>span{justify-content:center;font-size:4.6cqw;text-align:center}
.inv-cards.preset-centro .inv-card-facts i{font-size:4.6cqw}

/* Tarjeta transparente: sin caja, solo el texto con una sombra suave para que se lea sobre la imagen. */
.inv-cards.box-clear .inv-card{border-color:transparent!important;background:none!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;text-shadow:0 .3cqw 2cqw rgba(8,6,24,.7)}
.inv-cards.box-clear.theme-light .inv-card{text-shadow:0 .2cqw 1.6cqw rgba(255,255,255,.85)}
.inv-cards.box-clear.preset-franja .inv-card{background:none!important}

/* Estilos de letra: Formal (Inter, la de siempre), Juvenil (Fredoka, redonda y casual) y Loca (Permanent Marker, a plumón). */
.inv-cards.font-juvenil .inv-card{font-family:'Fredoka','Inter',Arial,sans-serif}
.inv-cards.font-juvenil .inv-card-title{font-weight:700;letter-spacing:-.01em}
.inv-cards.font-juvenil .inv-card-facts b{font-weight:600}
.inv-cards.font-loco .inv-card{font-family:'Fredoka','Inter',Arial,sans-serif}
.inv-cards.font-loco .inv-card-title,.inv-cards.font-loco .inv-card-chip{font-family:'Permanent Marker','Fredoka',cursive;font-weight:400;letter-spacing:.01em}
.inv-cards.font-loco .inv-card-title{line-height:1.05;transform:rotate(-3deg)}
.inv-cards.font-loco.preset-centro .inv-card-title{font-size:14cqw}
.inv-cards.font-loco .inv-card-facts b{font-weight:600}
.inv-cards-fonts button.font-juvenil{font-family:'Fredoka','Inter',sans-serif;font-weight:700}
.inv-cards-fonts button.font-loco{font-family:'Permanent Marker',cursive;font-weight:400}
/* Póster: título grande arriba y datos abajo, centrados, sobre un degradado suave. */
.inv-cards.preset-poster{justify-content:space-between;align-items:center;padding:9cqw 7cqw 8cqw;text-align:center}
.inv-cards.preset-poster .inv-card{justify-items:center;text-align:center}
.inv-cards.preset-poster .inv-card-chip{justify-self:center}
.inv-cards.preset-poster .inv-card-title{font-size:10.5cqw}
.inv-cards.preset-poster .inv-card-facts{justify-content:center}
.inv-cards.preset-poster .inv-card-facts>span{font-size:3.6cqw}
.inv-cards.preset-poster:before{background:linear-gradient(180deg,rgba(10,8,28,.62) 0%,rgba(10,8,28,0) 34%,rgba(10,8,28,0) 64%,rgba(10,8,28,.72) 100%)}
.inv-cards.preset-poster.theme-light:before{background:linear-gradient(180deg,rgba(255,255,255,.8) 0%,rgba(255,255,255,0) 34%,rgba(255,255,255,0) 64%,rgba(255,255,255,.84) 100%)}
/* Mínimo: solo título y fecha abajo; el resto de la información va debajo de la imagen. */
.inv-cards.preset-minimo{justify-content:flex-end;align-items:flex-start;gap:1.6cqw;padding:7cqw 7cqw 9cqw}
.inv-cards.preset-minimo .inv-card-chip,.inv-cards.preset-minimo .inv-card-time,.inv-cards.preset-minimo .inv-card-venue{display:none!important}
.inv-cards.preset-minimo .inv-card-title{font-size:9cqw}
.inv-cards.preset-minimo .inv-card-facts>span{font-size:3.9cqw}
.inv-cards.preset-minimo:before{background:linear-gradient(180deg,rgba(10,8,28,0) 55%,rgba(10,8,28,.72) 100%)}
.inv-cards.preset-minimo.theme-light:before{background:linear-gradient(180deg,rgba(255,255,255,0) 55%,rgba(255,255,255,.86) 100%)}
/* Franja: la imagen queda libre arriba y los datos van en un panel abajo, de lado a lado. */
.inv-cards.preset-franja{justify-content:flex-end;gap:0;padding:0}
.inv-cards.preset-franja .inv-card{width:100%;max-width:none;border:0;border-radius:0;background:rgba(18,13,42,.8);box-shadow:none}
.inv-cards.preset-franja.theme-light .inv-card{background:rgba(255,255,255,.9)}
.inv-cards.preset-franja .inv-card-copy{padding:5cqw 7cqw 1.2cqw;border-radius:5cqw 5cqw 0 0}
.inv-cards.preset-franja .inv-card-facts{padding:1.6cqw 7cqw 7cqw}
.inv-cards.preset-franja .inv-card-title{font-size:8cqw}
/* Esquina: una sola tarjeta compacta arriba a la izquierda. */
.inv-cards.preset-esquina{justify-content:flex-start;align-items:flex-start;gap:0;padding:6cqw}
.inv-cards.preset-esquina .inv-card{width:64%;max-width:none;box-shadow:none}
.inv-cards.preset-esquina .inv-card-copy{padding-bottom:1.4cqw;border-bottom:0;border-radius:4cqw 4cqw 0 0}
.inv-cards.preset-esquina .inv-card-facts{padding-top:1.4cqw;border-top:0;border-radius:0 0 4cqw 4cqw}
.inv-cards.preset-esquina .inv-card-title{font-size:6.6cqw}
.inv-cards.preset-esquina .inv-card-facts>span{font-size:3cqw}

/* Selector de diseño del paso 4. */
.inv-cards-toolbar{display:grid;gap:8px;width:min(360px,100%);margin:4px 0 10px}
.inv-cards-toolbar-title{color:var(--dark2);font-size:.74rem;font-weight:900}
.inv-presets{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
.inv-preset{display:grid;justify-items:center;gap:4px;min-width:0;padding:7px 2px 6px;border:1.5px solid #e3d9ff;border-radius:10px;background:#fff;color:var(--dark2);font-size:.6rem;font-weight:850;line-height:1.1;cursor:pointer}
.inv-preset:hover{border-color:#a98cf3}
.inv-preset.is-active{border-color:#7c3cff;background:#f4efff;color:#6831d3;box-shadow:0 0 0 2px rgba(124,60,255,.15)}
.inv-preset:focus-visible{outline:3px solid rgba(124,60,255,.3)}
.inv-preset-thumb{position:relative;display:block;width:24px;height:40px;border-radius:4px;background:linear-gradient(160deg,#c3b2f3,#7c5bd6);overflow:hidden}
.inv-preset-thumb i{position:absolute;display:block;border-radius:2px;background:rgba(255,255,255,.95)}
.thumb-minimo i:first-child{left:3px;bottom:9px;width:14px;height:3px}.thumb-minimo i:last-child{left:3px;bottom:4px;width:9px;height:2px}
.thumb-poster i:first-child{top:4px;left:4px;right:4px;height:4px}.thumb-poster i:last-child{bottom:4px;left:6px;right:6px;height:2px}
.thumb-franja i:first-child{left:0;right:0;bottom:0;height:12px;border-radius:3px 3px 0 0}.thumb-franja i:last-child{left:4px;bottom:6px;width:12px;height:2px;background:#7c3cff}
.thumb-esquina i:first-child{top:3px;left:3px;width:14px;height:11px}.thumb-esquina i:last-child{top:6px;left:5px;width:8px;height:2px;background:#7c3cff}
.thumb-centro{box-shadow:inset 0 0 0 3px #ff84c2}.thumb-centro i:first-child{top:13px;left:5px;right:5px;height:4px}.thumb-centro i:last-child{top:20px;left:8px;right:8px;height:2px}
.thumb-libre i{border:1px dashed #fff;background:rgba(255,255,255,.35)}.thumb-libre i:first-child{top:6px;left:3px;width:11px;height:6px}.thumb-libre i:last-child{right:3px;bottom:7px;width:12px;height:7px}
.inv-cards-toolbar-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.inv-cards-help{display:flex;align-items:flex-start;gap:6px;color:var(--muted);font-size:.66rem;line-height:1.35}
.inv-cards-help[hidden]{display:none}
.inv-cards-help i{margin-top:1px;color:var(--primary)}

/* Detalles del evento debajo de la imagen (al lado, en computador). */
.public-invitation-side{display:flex;flex-direction:column;min-width:0}
.public-event-details{display:grid;align-content:start;gap:14px;padding:30px 30px 4px}
.public-invitation-side:has(.is-host-heading-only) .public-event-details{padding-bottom:30px}
.public-event-details-message{margin:0;color:var(--dark2);font-size:.92rem;line-height:1.55}
.public-event-details ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.public-event-details li{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fbfaff}
.public-event-details li>i{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#f1eaff;color:#7c3cff;font-size:.95rem}
.public-event-details li>span{display:grid;gap:1px;min-width:0}
.public-event-details small{color:var(--muted);font-size:.6rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.public-event-details strong{font-size:.86rem;overflow-wrap:anywhere}
.public-event-details strong.is-long{font-size:.8rem;font-weight:650;line-height:1.45}
.public-event-details em{color:var(--muted);font-size:.76rem;font-style:normal;overflow-wrap:anywhere}
.public-event-details a{display:inline-flex;justify-self:start;align-items:center;gap:4px;margin-top:4px;color:#7c3cff;font-size:.74rem;font-weight:850;text-decoration:none}
.public-event-details a:hover{text-decoration:underline}
@media(max-width:900px){.public-event-details{padding:22px 20px 4px}.public-invitation-side:has(.is-host-heading-only) .public-event-details{padding-bottom:22px}}
/* En computador la imagen acompaña al invitado mientras baja por los detalles y el formulario. */
@media(min-width:901px){.public-invitation-shell{overflow:clip}.public-invitation-hero.has-invitation-cards{position:sticky;top:12px}}

/* Paso 1 simplificado: tipo con iconos, nombre automático, buscador de comuna, lugar con botones. */
.start-flow{display:grid;gap:18px}
.start-block{display:grid;gap:7px;min-width:0}
.start-block>label,.start-block label:not(.start-type):not(.format-choice){margin:0}
.start-question{margin:0 0 2px;font-size:1rem;font-weight:900;color:var(--dark2)}
.start-type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}
.start-type{position:relative;margin:0!important}
.start-type input{position:absolute;inset:0;opacity:0;pointer-events:none}
.start-type>span{display:grid;justify-items:center;align-content:center;gap:6px;min-height:84px;padding:10px 6px;border:1.5px solid #e3d9ff;border-radius:14px;background:#fff;color:var(--dark2);text-align:center;cursor:pointer;transition:border-color .15s,background .15s}
.start-type>span i{font-size:1.45rem;color:#7c3cff}
.start-type>span b{font-size:.72rem;font-weight:850;line-height:1.2}
.start-type:hover>span{border-color:#a98cf3}
.start-type input:checked+span{border-color:#7c3cff;background:#f4efff;box-shadow:0 0 0 3px rgba(124,60,255,.14)}
.start-type input:focus-visible+span{outline:3px solid rgba(124,60,255,.3)}
/* Tipos de colegio aparte (2026-10-12): botón para abrirlos y enlace para volver. */
.start-type-switch{display:block;width:100%;padding:0;border:0;background:none;font:inherit;text-align:inherit}
.start-type-switch[hidden],.start-group-back[hidden]{display:none}
.start-type-switch>span{border-style:dashed;border-color:#7cc0ff;background:#eef7ff}
.start-type-switch>span i{color:#1e9bff}
.start-type-switch:hover>span{border-color:#1e9bff}
.start-group-back{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:6px 12px;border:0;border-radius:999px;background:#eef7ff;color:#1569c7;font-weight:800;font-size:.82rem}
.start-group-back:hover{background:#dcefff}
.start-type-grid[data-event-group-current="colegio"] .start-type input:checked+span{border-color:#1e9bff;background:#eef7ff;box-shadow:0 0 0 3px rgba(30,155,255,.16)}
.start-type-grid[data-event-group-current="colegio"] .start-type>span i{color:#1e9bff}
.start-honoree{display:grid;gap:6px;margin-bottom:6px;padding:12px;border-radius:14px;background:#f7f3ff}
.start-honoree[hidden]{display:none}
.start-honoree label{margin:0;color:#5b2bd1;font-weight:900}
.start-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.start-place{position:relative;display:grid;gap:7px}
.start-place label{margin:0}
.start-place-search{position:relative}
.start-place-search i{position:absolute;top:50%;left:12px;transform:translateY(-50%);color:#8f88a6;pointer-events:none}
.start-place-search input{padding-left:36px!important}
.start-place-list{position:absolute;z-index:30;top:100%;right:0;left:0;margin:4px 0 0;padding:4px;border:1px solid #e3d9ff;border-radius:12px;background:#fff;list-style:none;box-shadow:0 14px 34px rgba(27,16,56,.16)}
.start-place-list[hidden]{display:none}
.start-place-list li{display:grid;gap:1px;padding:8px 10px;border-radius:8px;cursor:pointer}
.start-place-list li b{font-size:.82rem;font-weight:800}
.start-place-list li small{color:var(--muted);font-size:.66rem}
.start-place-list li:hover,.start-place-list li.is-active{background:#f4efff}
.start-place-list li.is-empty{color:var(--muted);font-size:.74rem;cursor:default}
.start-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}
.start-chip{display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:6px 13px;border:1.5px solid #e3d9ff;border-radius:999px;background:#fff;color:var(--dark2);font-size:.76rem;font-weight:800;cursor:pointer}
.start-chip:hover{border-color:#a98cf3}
.start-chip.is-active{border-color:#7c3cff;background:#7c3cff;color:#fff}
[data-venue-input][hidden]{display:none!important}
.start-when{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:12px}
.start-when>div{display:grid;gap:7px}
.start-when label{margin:0}
.start-date-hint{color:#5b2bd1;font-size:.74rem;font-weight:800}
.start-date-hint.is-warning{color:#b4233f}
.start-more-formats{margin-top:4px}
.start-more-formats summary{display:inline-flex;align-items:center;gap:5px;color:#6831d3;font-size:.74rem;font-weight:850;cursor:pointer}
.start-more-formats[open] summary{margin-bottom:8px}
.start-flow .format-choice-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.start-error{margin:0;padding:10px 12px;border-radius:10px;background:#fff1f4;color:#b4233f;font-size:.8rem;font-weight:800}
.start-error[hidden]{display:none}
@media(max-width:720px){.start-two{grid-template-columns:1fr}.start-when{grid-template-columns:1fr 1fr}.start-when>div:first-child{grid-column:1/-1}.start-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.start-type>span{min-height:76px}}
.start-block .field-note[hidden]{display:none}

/* Paso 4 reordenado: la vista previa es el último paso de la página. */
.invite-layout{grid-template-columns:minmax(0,1fr)!important}
@media(min-width:981px){
  .invite-layout>.stage-card>.form-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;column-gap:28px}
  .invite-layout>.stage-card>.form-grid>.span-2{grid-column:1}
  .invite-layout>.stage-card>.form-grid>.invitation-image-upload{grid-column:2;grid-row:1/span 6}
}
.quick-chips{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 8px}
.quick-chip{display:inline-flex;align-items:center;gap:4px;min-height:32px;padding:5px 11px;border:1.5px solid #e3d9ff;border-radius:999px;background:#fff;color:var(--dark2);font-size:.72rem;font-weight:800;line-height:1.2;text-align:left;cursor:pointer}
.quick-chip:hover{border-color:#a98cf3}
.quick-chip.is-active{border-color:#7c3cff;background:#f4efff;color:#5b2bd1}
.quick-chip i{font-size:.8rem}
.message-writer{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:2px 0 8px;padding:8px 10px;border-radius:12px;background:#f7f3ff}
.message-writer>span{display:inline-flex;align-items:center;gap:5px;margin-right:2px;color:#5b2bd1;font-size:.74rem;font-weight:900}
.host-participation-card{border:1.5px solid #e3d9ff!important;background:#fbf9ff!important}
.host-participation-card.is-enabled{border-color:#7c3cff!important;background:#f6f1ff!important}
.host-participation-copy strong{font-size:1rem!important}
.host-participation-copy em{font-style:normal;line-height:1.45}
.invitation-final-review{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;border:1.5px solid #d8caf8!important;background:linear-gradient(135deg,#faf7ff,#fff4fa)!important}
.invitation-final-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#7c3cff,#e63891);color:#fff;font-size:1.25rem}
.invitation-final-copy h3{margin:4px 0 4px;font-size:1.15rem}
.invitation-final-copy p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.5}
.invitation-final-copy .share-box{margin-top:12px}
.invitation-final-button{min-height:46px;white-space:nowrap}
.invitation-whatsapp{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:8px 14px;border-radius:999px;background:#25d366;color:#fff!important;font-size:.76rem;font-weight:900;text-decoration:none}
.invitation-whatsapp:hover{filter:brightness(.95)}
@media(max-width:760px){.invitation-final-review{grid-template-columns:auto minmax(0,1fr)}.invitation-final-button{grid-column:1/-1;width:100%}}
/* En computador la imagen va en una columna angosta: sus botones usan el mismo orden compacto que en el celular. */
@media(min-width:981px){
  .invite-layout .invitation-image-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;justify-content:stretch!important;gap:7px!important;width:100%;padding:8px!important}
  .invite-layout .invitation-library-button{grid-column:span 2;width:100%;min-width:0!important;min-height:38px!important;padding:7px 9px!important;font-size:.64rem!important}
  .invite-layout .invitation-premium-file.invitation-premium-file-pill,.invite-layout .invitation-image-actions .invitation-image-remove,.invite-layout .invitation-image-adjust-pill,.invite-layout .invitation-image-filter-pill{width:100%;min-width:0!important}
  .invite-layout .invitation-premium-file-pill .invitation-premium-file-button,.invite-layout .invitation-image-actions .invitation-image-remove,.invite-layout .invitation-image-adjust-pill>summary,.invite-layout .invitation-image-filter-pill>summary{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;height:38px!important;min-height:38px!important;padding:0!important;border-radius:11px!important}
  .invite-layout .invitation-premium-file-pill .invitation-premium-file-button strong,.invite-layout .invitation-image-actions .invitation-image-remove>span,.invite-layout .invitation-image-adjust-pill>summary>span,.invite-layout .invitation-image-adjust-pill>summary .invitation-image-adjust-chevron,.invite-layout .invitation-image-filter-pill>summary>span,.invite-layout .invitation-image-filter-pill>summary .invitation-image-filter-chevron{display:none!important}
  .invite-layout .invitation-premium-file-pill .invitation-premium-file-icon{font-size:.82rem!important}
  .invite-layout .invitation-image-actions .invitation-image-remove i,.invite-layout .invitation-image-adjust-pill>summary>i:first-child,.invite-layout .invitation-image-filter-pill>summary>i:first-child{font-size:.82rem}
}

/* Link de la invitación: en la vista previa recién publicada y en la tarjeta de Mis eventos. */
.host-share-box{display:grid;gap:8px;margin-top:14px;padding:14px;border:1.5px solid #d8caf8;border-radius:14px;background:#faf7ff}
.host-share-box.is-new{border-color:#7c3cff;box-shadow:0 0 0 4px rgba(124,60,255,.12)}
.host-share-box>strong{display:flex;align-items:center;gap:5px;font-size:.86rem}
.host-share-row{display:flex;gap:8px}
.host-share-row input{flex:1;min-width:0;min-height:40px;padding:8px 10px;border:1.5px solid #c9bbec;border-radius:10px;background:#fff;font-size:.78rem}
.host-share-box .invitation-whatsapp{justify-self:start;margin-top:0}
.host-share-box small{color:var(--muted);font-size:.68rem}
.dashboard-event-card .event-actions{flex-wrap:wrap}
.mini-action.mini-share,.mini-action.mini-whatsapp{display:inline-flex;align-items:center;gap:5px;text-decoration:none}
.mini-action.mini-share{border:1.5px solid #d8caf8;background:#fff;color:#5b2bd1}
.mini-action.mini-whatsapp{border:0;background:#25d366;color:#fff}
.mini-action.mini-whatsapp:hover{filter:brightness(.95)}
.public-host-review-card .host-share-box{grid-column:1/-1;order:2}.public-host-review-card .public-host-review-actions{order:3}

/* Paso 3: ¿Cómo se paga tu evento? y opciones avanzadas plegadas. */
.pay-plan{border:1.5px solid #d8caf8!important;background:linear-gradient(135deg,#faf7ff,#fff)!important}
.pay-plan .section-head p a{color:#6831d3;font-weight:850}
.pay-plan-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:4px}
.pay-plan-option{position:relative;margin:0!important}
.pay-plan-option input{position:absolute;opacity:0;pointer-events:none}
.pay-plan-option>span{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;row-gap:2px;height:100%;padding:13px 14px;border:1.5px solid #e3d9ff;border-radius:14px;background:#fff;cursor:pointer}
.pay-plan-option>span i{grid-row:1/3;align-self:center;font-size:1.35rem;color:#7c3cff}
.pay-plan-option>span b{font-size:.86rem;font-weight:900;color:var(--dark2)}
.pay-plan-option>span small{color:var(--muted);font-size:.7rem;line-height:1.4}
.pay-plan-option input:checked+span{border-color:#7c3cff;background:#f4efff;box-shadow:0 0 0 3px rgba(124,60,255,.14)}
.pay-plan-option input:focus-visible+span{outline:3px solid rgba(124,60,255,.3)}
.pay-plan-panel{margin-top:12px}
.pay-plan-panel[hidden]{display:none}
.pay-plan-panel>p{display:flex;gap:8px;margin:0;color:var(--dark2);font-size:.8rem;line-height:1.5}
.pay-plan-panel>p>i{color:var(--success);margin-top:2px}
.pay-plan-calc{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:12px;padding:12px 14px;border-radius:14px;background:#f1fbf6}
.pay-plan-calc label{display:grid;gap:6px;margin:0;font-size:.76rem;font-weight:850}
.pay-plan-calc input{max-width:140px}
.pay-plan-result{display:grid;gap:1px;text-align:right}
.pay-plan-result small{color:var(--muted);font-size:.66rem}
.pay-plan-result strong{color:#0f6e56;font-size:1.5rem;font-weight:950;line-height:1.1}
.pay-plan-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 0;padding:0;list-style:none;counter-reset:payplan}
.pay-plan-steps li{display:grid;gap:3px;padding:10px 12px 10px 40px;border:1px solid #e9e1fb;border-radius:12px;background:#fff;position:relative;counter-increment:payplan}
.pay-plan-steps li:before{content:counter(payplan);position:absolute;top:10px;left:11px;display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#7c3cff;color:#fff;font-size:.68rem;font-weight:900}
.pay-plan-steps b{font-size:.78rem}
.pay-plan-steps small{color:var(--muted);font-size:.68rem;line-height:1.4}
.pay-plan-alert,.pay-plan-tip{display:flex;gap:7px;margin:10px 0 0;padding:9px 12px;border-radius:10px;font-size:.74rem;line-height:1.45}
.pay-plan-alert{background:#fff8e6;color:#8a5a00}
.pay-plan-alert.is-danger{background:#fff1f4;color:#b4233f}
.pay-plan-tip{background:#f7f3ff;color:#5b2bd1}
.contribution-option-section.is-plan-hidden{display:none!important}
.contribution-advanced{margin:0 0 14px;padding:10px 14px;border:1px solid #ebe4fb;border-radius:12px;background:#fff}
.contribution-advanced>summary{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--dark2);font-size:.78rem;font-weight:900;cursor:pointer}
.contribution-advanced>summary small{color:var(--muted);font-size:.68rem;font-weight:700}
.contribution-advanced[open]>summary{margin-bottom:12px}
@media(max-width:720px){.pay-plan-options,.pay-plan-steps{grid-template-columns:1fr}.pay-plan-calc{grid-template-columns:1fr 1fr}.pay-plan-calc label{grid-column:1/-1}.pay-plan-result{text-align:left}}

/* Pago de la tienda con lo recaudado del evento. */
.checkout-funds{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;margin:14px 0;padding:16px 18px;border:1.5px solid #9fe1cb;border-radius:16px;background:#f1fbf6}
.checkout-funds>i{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#0f6e56;color:#fff;font-size:1.3rem}
.checkout-funds .kicker{color:#0f6e56}
.checkout-funds strong{display:block;margin:3px 0 4px;font-size:.98rem}
.checkout-funds p{margin:0 0 10px;color:var(--muted);font-size:.8rem;line-height:1.5}
.checkout-funds form{margin:0}
.checkout-funds .btn-primary{background:#0f6e56;border-color:#0f6e56}
.checkout-payment-summary .funds-line span,.checkout-payment-summary .funds-line strong{color:#0f6e56}
.checkout-payment-summary .funds-line i{margin-right:4px}
.host-participation-copy em{display:block!important;margin-top:3px}
/* La invitación y sus detalles forman una fila propia: la imagen fija no se monta sobre regalos y cuotas. */
.public-invitation-top{grid-column:1/-1;display:grid;grid-template-columns:inherit;min-width:0}
/* Paso 4: la columna de textos acompaña a la imagen al bajar, sin dejar un espacio vacío. */
.invite-fields{display:grid;grid-column:1/-1;gap:16px;min-width:0}
@media(min-width:981px){
  .invite-layout>.stage-card>.form-grid>.invite-fields{grid-column:1;grid-row:1;position:sticky;top:16px;align-self:start}
  .invite-layout>.stage-card>.form-grid>.invitation-image-upload{grid-row:1!important}
}
/* "clip" corta lo que se sale por el costado igual que "hidden", pero deja funcionar las columnas que acompañan al bajar. */
body:has(.event-stage-card){overflow-x:clip}
.host-participation-toggle{position:relative}.host-participation-toggle>input{top:0;left:0;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:0!important}

/* Estudio IA: primero la oferta (imagen o video, precio y reglas), después el estudio para crear. */
.ai-studio-intro{display:grid;gap:14px;padding:18px 22px 22px;overflow:auto}
.ai-studio-intro[hidden],.ai-studio-body[hidden],.ai-studio-foot[hidden]{display:none!important}
.ai-studio-intro-lead{margin:0;color:var(--dark2);font-size:.86rem;line-height:1.5}
.ai-studio-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ai-studio-product{position:relative;display:grid;align-content:start;gap:8px;padding:18px;border:1.5px solid #d8caf8;border-radius:18px;background:linear-gradient(160deg,#faf7ff,#fff)}
.ai-studio-product h4{margin:4px 0 0;font-size:1.05rem}
.ai-studio-product-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:linear-gradient(135deg,#7c3cff,#e63891);color:#fff;font-size:1.2rem}
.ai-studio-product-price{color:#6831d3;font-size:1.6rem;font-weight:950;line-height:1}
.ai-studio-product ul,.ai-studio-rules ul{display:grid;gap:5px;margin:4px 0 6px;padding:0;list-style:none}
.ai-studio-product li{display:flex;gap:6px;color:var(--dark2);font-size:.76rem;line-height:1.4}
.ai-studio-product li i{color:var(--success)}
.ai-studio-product .btn{margin-top:auto}
.ai-studio-product.is-soon{border-style:dashed;background:#fbfaff;opacity:.85}
.ai-studio-product.is-soon .ai-studio-product-icon{background:#b9a6f0}
.ai-studio-product-badge{position:absolute;top:14px;right:14px;padding:3px 9px;border-radius:999px;background:#fff1d6;color:#8a5a00;font-size:.62rem;font-weight:900}
.ai-studio-rules{padding:12px 14px;border-radius:14px;background:#f6f4fa}
.ai-studio-rules strong{display:flex;align-items:center;gap:6px;font-size:.78rem}
.ai-studio-rules strong i{color:#7c3cff}
.ai-studio-rules li{position:relative;padding-left:12px;color:var(--muted);font-size:.72rem;line-height:1.45}
.ai-studio-rules li:before{content:"";position:absolute;top:.55em;left:2px;width:4px;height:4px;border-radius:50%;background:#a98cf3}
.ai-studio-rules small{display:block;color:#8a5a00;font-size:.68rem;font-weight:800}
@media(max-width:760px){.ai-studio-intro{padding:14px 16px calc(16px + env(safe-area-inset-bottom))}.ai-studio-products{grid-template-columns:1fr}}

/* Tienda: vitrina del Estudio IA en Arriendos & Servicios (no va al carrito). */
.store-ai-heading[hidden],.store-ai-card[hidden]{display:none!important}
.store-ai-grid{margin-bottom:18px}
.store-ai-card{display:flex;flex-direction:column;gap:10px;padding:12px;border:1.5px solid #d8caf8;background:linear-gradient(170deg,#faf7ff,#fff)}
.store-ai-media{position:relative;display:grid;place-items:center;align-content:center;gap:6px;aspect-ratio:4/3;border-radius:14px;background:linear-gradient(135deg,#7c3cff,#e63891);color:#fff;text-align:center}
.store-ai-media i{font-size:2.2rem}
.store-ai-media span{font-size:.8rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.store-ai-media em{position:absolute;top:10px;right:10px;padding:3px 9px;border-radius:999px;background:#fff1d6;color:#8a5a00;font-size:.62rem;font-style:normal;font-weight:900}
.store-ai-card.is-soon .store-ai-media{background:linear-gradient(135deg,#b9a6f0,#d9a6d0)}
.store-ai-copy h3{margin:0 0 4px;font-size:.92rem}
.store-ai-copy p{margin:0;color:var(--muted);font-size:.74rem;line-height:1.45}
.store-ai-copy ul{display:grid;gap:3px;margin:6px 0 0;padding:0;list-style:none}
.store-ai-copy li{position:relative;padding-left:14px;color:var(--dark2);font-size:.7rem;line-height:1.4}
.store-ai-copy li:before{content:"✓";position:absolute;left:0;color:var(--success);font-weight:900}
.store-ai-bottom{display:grid;gap:6px;margin-top:auto}
.store-ai-bottom strong{color:#6831d3;font-size:1.25rem;font-weight:950}
.store-ai-bottom .btn{width:100%;justify-content:center}
.store-ai-bottom small{color:var(--muted);font-size:.66rem;line-height:1.35}

/* Vitrina: muestra real, tarjeta gratis y texto de la sección. */
.store-ai-heading p{margin:4px 0 0;color:var(--muted);font-size:.78rem;line-height:1.45}
.store-ai-media.has-sample{display:block;aspect-ratio:3/4;overflow:hidden;background:#f4efff}
.store-ai-media.has-sample img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.store-ai-sample-text{position:absolute;right:0;bottom:0;left:0;display:grid!important;gap:2px;padding:28px 12px 12px;background:linear-gradient(180deg,rgba(18,13,42,0),rgba(18,13,42,.72));color:#fff;text-align:center;text-transform:none!important;letter-spacing:0!important}
.store-ai-sample-text b{font-size:1.05rem;font-weight:950}
.store-ai-sample-text small{font-size:.66rem;font-weight:700;opacity:.92}
.store-ai-sample-tag{position:absolute;top:10px;left:10px;padding:3px 9px;border-radius:999px;background:rgba(255,255,255,.92);color:#6831d3;font-size:.62rem;font-style:normal;font-weight:900}
.store-ai-card.is-free{border-color:#9fe1cb;background:linear-gradient(170deg,#f1fbf6,#fff)}
.store-ai-card.is-free .store-ai-media{background:linear-gradient(135deg,#0f6e56,#1d9e75)}
.store-ai-card.is-free .store-ai-media em{background:#fff;color:#0f6e56}
.store-ai-card.is-free .store-ai-bottom strong{color:#0f6e56}

/* Estudio IA: alternativa gratis y foto de referencia. */
.ai-studio-free{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border:1.5px solid #9fe1cb;border-radius:14px;background:#f1fbf6}
.ai-studio-free>i{font-size:1.4rem;color:#0f6e56}
.ai-studio-free strong{font-size:.82rem}
.ai-studio-free p{margin:2px 0 0;color:var(--muted);font-size:.72rem;line-height:1.4}
.ai-reference-pick{display:flex;align-items:center;gap:10px}
.ai-reference-upload{position:relative;display:inline-flex;align-items:center;gap:7px;min-height:40px;margin:0;padding:8px 14px;border:1.5px dashed #a98cf3;border-radius:12px;background:#faf7ff;color:#5b2bd1;font-size:.76rem;font-weight:850;cursor:pointer}
.ai-reference-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.ai-reference-preview{position:relative;width:56px;height:56px;border-radius:12px;overflow:hidden;border:1px solid var(--line)}
.ai-reference-preview[hidden],.ai-reference-options[hidden],.ai-reference-consent[hidden]{display:none!important}
.ai-reference-preview img{width:100%;height:100%;object-fit:cover}
.ai-reference-preview button{position:absolute;top:2px;right:2px;display:grid;place-items:center;width:20px;height:20px;padding:0;border:0;border-radius:50%;background:rgba(17,10,38,.7);color:#fff;font-size:.6rem;cursor:pointer}
.ai-reference-options{display:grid;gap:7px;margin-top:8px}
.ai-reference-hint{color:var(--muted);font-size:.68rem;line-height:1.4}
.ai-reference-consent{display:flex;align-items:flex-start;gap:7px;margin:0;padding:8px 10px;border-radius:10px;background:#fff8e6;color:#6b4700;font-size:.7rem;font-weight:700;line-height:1.4}
.ai-reference-consent input{margin-top:2px;flex:none}
@media(max-width:760px){.ai-studio-free{grid-template-columns:auto minmax(0,1fr)}.ai-studio-free .btn{grid-column:1/-1}}
.ai-reference-privacy{display:flex;gap:6px;color:#0f6e56;font-size:.68rem;line-height:1.4}.ai-reference-privacy i{margin-top:1px}
/* Preguntas frecuentes por tema (2026-10-11) */
.client-faq-body{display:grid;grid-template-columns:250px minmax(0,1fr);align-items:start;gap:22px;margin-top:18px}
.client-faq-topics{position:sticky;z-index:1;top:calc(var(--faq-sticky-top,90px) + 12px);display:flex;flex-direction:column;gap:6px}
.client-faq-topics a{display:flex;align-items:center;gap:10px;padding:8px 10px 8px 8px;border:1px solid transparent;border-radius:14px;color:var(--dark2);font-size:.82rem;font-weight:800;text-decoration:none;transition:background .15s ease,border-color .15s ease,color .15s ease}
.client-faq-topics a i{display:grid;place-items:center;flex:0 0 auto;width:32px;height:32px;border-radius:10px;background:#f1eaff;color:var(--primary);font-size:.95rem}
.client-faq-topics a span{flex:1 1 auto;min-width:0}
.client-faq-topics a small{min-width:22px;padding:1px 6px;border-radius:999px;background:#f4f0fb;color:#7d7590;font-size:.68rem;text-align:center}
.client-faq-topics a:hover{border-color:#e3d9f7;background:#fff}
.client-faq-topics a.is-active{background:linear-gradient(135deg,#7c3dff,#e83ba4);color:#fff;box-shadow:0 8px 20px rgba(124,61,255,.25)}
.client-faq-topics a.is-active i{background:rgba(255,255,255,.22);color:#fff}.client-faq-topics a.is-active small{background:rgba(255,255,255,.25);color:#fff}
.client-faq-groups{display:grid;gap:16px}
.client-faq-group{padding:16px 18px 6px;border:1px solid #ece5f8;border-radius:18px;background:#fff}
.client-faq-group-head{display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid #f0ebf8}
.client-faq-group-icon{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#7c3dff,#e83ba4);color:#fff;font-size:1.15rem;box-shadow:0 8px 18px rgba(124,61,255,.22)}
.client-faq-group-head h2{margin:0;color:var(--dark2);font-size:1.02rem;font-weight:900}
.client-faq-group-head p{margin:1px 0 0;color:var(--muted);font-size:.76rem}
.client-faq-group .client-faq-list{margin-top:0}.client-faq-group .client-faq-item:last-child{border-bottom:0}
.client-faq-answer p{margin:0 0 10px}.client-faq-answer ul{margin:0 0 10px;padding-left:18px}.client-faq-answer li{margin-bottom:3px}.client-faq-answer strong{color:var(--dark2)}
.legal-content h3{margin:20px 0 8px;color:#2b1d41;font-size:.95rem}.legal-content ul{margin:0 0 17px;padding-left:20px}.legal-content li{margin-bottom:6px}.legal-content strong{color:#2b1d41}
@media(max-width:900px){.client-faq-body{display:block;margin-top:0}.client-faq-topics{top:var(--faq-sticky-top,80px);flex-direction:row;gap:8px;margin:0 -22px 14px;padding:10px 22px;overflow-x:auto;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);scrollbar-width:none}.client-faq-topics::-webkit-scrollbar{display:none}.client-faq-topics a{flex:0 0 auto;padding:6px 11px 6px 6px;border-color:#e3d9f7;border-radius:999px;background:#fff;white-space:nowrap}.client-faq-topics a i{width:26px;height:26px;border-radius:50%;font-size:.8rem}}
@media(min-width:701px) and (max-width:900px){.client-faq-layout .client-faq-topics{margin:0 -34px 14px;padding:10px 34px}}
@media(max-width:700px){.client-faq-topics{margin:0 -14px 12px;padding:8px 14px}.client-faq-topics a{font-size:.74rem}.client-faq-group{padding:12px 12px 2px;border-radius:15px}.client-faq-group-icon{width:36px;height:36px;border-radius:11px;font-size:1rem}.client-faq-group-head h2{font-size:.93rem}}
/* Paso 3: quién ve lo recaudado (2026-10-11) */
.pay-visibility[hidden]{display:none!important}
.pay-plan-next{display:flex;gap:7px;margin:10px 0 0!important;color:#5b2bd1!important;font-size:.74rem!important;font-weight:800}
.pay-plan-next i{color:#7c3cff!important}
.pay-plan-tip a{color:#6831d3;font-weight:850}
/* Paso 3: imagen por defecto de regalos, cuotas y entradas según el tipo de evento (2026-10-11) */
.gift-card-empty-image.has-default-image{position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;min-height:150px;padding:9px;border:1px solid #e3d9ff;background:linear-gradient(180deg,rgba(23,10,52,.05) 40%,rgba(23,10,52,.55)),var(--default-option-image) center/cover no-repeat;overflow:hidden}
.gift-card-empty-image.has-default-image[hidden]{display:none} /* 2026-10-21: con fotos propias no se muestra la imagen por defecto */
.gift-card-default-tag{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:999px;background:rgba(255,255,255,.92);color:#5b2bd1;font-size:.64rem;font-weight:900}
.gift-card-default-change{display:inline-flex;align-items:center;gap:6px;align-self:center;padding:6px 12px;border-radius:999px;background:linear-gradient(135deg,#7c3dff,#e83ba4);color:#fff;font-size:.72rem;font-weight:900;box-shadow:0 6px 16px rgba(23,10,52,.3)}
.gift-card-empty-image.has-default-image:hover .gift-card-default-change{filter:brightness(1.08)}
/* Invitación: cuotas y entradas en filas compactas (foto chica a la izquierda); los regalos siguen con foto grande (2026-10-11) */
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-navigation{display:none!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-list{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;overflow:visible!important;scroll-snap-type:none!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row,
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row.has-image{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;align-items:center!important;align-content:center!important;gap:6px 14px!important;width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:0!important;padding:12px 14px 12px 12px!important;flex:none!important;transform:none!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row.has-image{grid-template-columns:88px minmax(0,1fr) auto!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row.has-image .public-contribution-gallery{grid-column:1!important;grid-row:1/span 2!important;display:block!important;width:88px!important;height:88px!important;border-radius:12px;overflow:hidden}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-option-carousel-track{display:block!important;width:100%!important;height:100%!important;transform:none!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-option-carousel-slide{display:none!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-option-carousel-slide:first-child{display:block!important;width:100%!important;height:100%!important;aspect-ratio:auto!important;border:0!important;border-radius:12px!important;box-shadow:none!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-option-carousel-slide img{width:100%!important;height:100%!important;object-fit:cover!important;transform:none!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) :is(.public-option-carousel-arrow,.public-option-carousel-count,.public-option-carousel-dots){display:none!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row .public-contribution-copy{grid-column:1!important;grid-row:1!important;min-height:0!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row.has-image .public-contribution-copy{grid-column:2!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row strong{font-size:.92rem!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row .public-contribution-copy small{min-height:0!important;-webkit-line-clamp:2}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row .public-contribution-price-action{grid-column:1!important;grid-row:2!important;padding-top:0!important;border-top:0!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row.has-image .public-contribution-price-action{grid-column:2!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-price-action>span{min-height:0!important;padding:4px 9px!important;font-size:.88rem!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row>label{grid-column:2!important;grid-row:1/span 2!important;align-self:center!important;justify-self:end!important;width:auto!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row.has-image>label{grid-column:3!important}
@media(max-width:640px){
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row.has-image{grid-template-columns:72px minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;gap:6px 12px!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row.has-image .public-contribution-gallery{width:72px!important;height:72px!important;grid-row:1/span 2!important;align-self:start}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row.has-image>label{grid-column:2!important;grid-row:3!important;justify-self:start!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row:not(.has-image){grid-template-columns:minmax(0,1fr) auto!important}
}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-quantity-field{display:block!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-quantity-field>small{display:none!important}
@media(max-width:640px){
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row.has-image{grid-template-columns:72px minmax(0,1fr) auto!important;grid-template-rows:auto auto!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row.has-image .public-contribution-copy{grid-column:2/span 2!important;grid-row:1!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row.has-image .public-contribution-price-action{grid-column:2!important;grid-row:2!important}
.public-contribution-panel:is([data-contribution-panel="fees"],[data-contribution-panel="tickets"]) .public-contribution-row.has-image>label{grid-column:3!important;grid-row:2!important;justify-self:end!important}
}
/* Paso 3: tarjetas de cuota y entrada con foto chica, igual que en la invitación (2026-10-11) */
.ticket-option-card>.gift-card-empty-image{min-height:88px}
.ticket-option-card>.gift-card-empty-image.has-default-image{min-height:96px;padding:7px}
.ticket-option-card>.gift-card-image-strip{grid-template-columns:repeat(4,64px);justify-content:start}
.ticket-option-card>.gift-card-image-strip img{aspect-ratio:1/1}
.ticket-option-card>.gift-card-image-strip img:first-child{grid-column:auto;grid-row:auto}
/* Paso 3: la imagen por defecto se muestra entera (miniatura) en vez de una franja recortada (2026-10-11) */
.gift-card-default-thumb,.gift-card-default-note{display:none}
.gift-card-default-copy{display:contents}
.ticket-option-card>.gift-card-empty-image.has-default-image{flex-direction:row;justify-content:flex-start;align-items:center;gap:14px;min-height:0;padding:10px;background:#faf7ff;text-align:left}
.ticket-option-card .gift-card-default-thumb{display:block;flex:0 0 88px;width:88px;height:88px;border-radius:12px;background:var(--default-option-image) center/cover no-repeat;box-shadow:0 4px 12px rgba(23,10,52,.12)}
.ticket-option-card .gift-card-default-copy{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}
.ticket-option-card .gift-card-default-tag{padding:0;background:none;font-size:.72rem}
.ticket-option-card .gift-card-default-note{display:block;color:var(--muted);font-size:.7rem;font-weight:700}
.ticket-option-card .gift-card-default-change{align-self:flex-start;padding:6px 12px;font-size:.72rem;box-shadow:0 4px 10px rgba(124,61,255,.25)}
/* Invitación: el resumen de aportes va debajo de regalos, cuotas y entradas, a todo el ancho (2026-10-11) */
.public-invitation-shell>.public-revenue-card{grid-column:1/-1;grid-template-columns:minmax(0,1fr);justify-content:stretch}
/* Paso 3: recuadro "Quiero pagar la Tienda BloP con lo recaudado" (solo informativo) (2026-10-12) */
.pay-store-funds{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) 30px;align-items:center;gap:14px;margin:14px 0 4px;padding:16px 16px 16px 14px;border:2px dashed #c9b3ff;border-radius:18px;background:linear-gradient(135deg,#fff7fc,#f4eeff);cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}
.pay-store-funds:hover{border-color:#a57cff}
.pay-store-funds input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}
.pay-store-funds-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:15px;background:linear-gradient(135deg,#7c3dff,#e83ba4);color:#fff;font-size:1.35rem;box-shadow:0 8px 18px rgba(124,61,255,.28)}
.pay-store-funds-copy{display:grid;gap:4px;min-width:0}
.pay-store-funds-copy b{color:#241738;font-size:.95rem}
.pay-store-funds-copy small{color:#4f4560;font-size:.76rem;line-height:1.45}
.pay-store-funds-copy strong{color:#6a2fe0}
.pay-store-funds-copy em{display:flex;gap:6px;color:#7a6f8c;font-size:.68rem;font-style:normal;font-weight:700;line-height:1.4}
.pay-store-funds-copy em i{color:#a57cff}
.pay-store-funds-check{display:grid;width:28px;height:28px;place-items:center;border:2px solid #c9b3ff;border-radius:9px;background:#fff;color:transparent;font-size:1rem}
.pay-store-funds:has(input[type=checkbox]:checked){border-style:solid;border-color:#7c3dff;background:linear-gradient(135deg,#fdf1fa,#efe5ff);box-shadow:0 10px 26px rgba(124,61,255,.18)}
.pay-store-funds:has(input[type=checkbox]:checked) .pay-store-funds-check{border-color:#7c3dff;background:linear-gradient(135deg,#7c3dff,#e83ba4);color:#fff}
.pay-store-funds:has(input:focus-visible){outline:3px solid rgba(124,61,255,.35);outline-offset:2px}
@media(max-width:640px){.pay-store-funds{grid-template-columns:40px minmax(0,1fr) 26px;gap:10px;padding:13px 12px}.pay-store-funds-icon{width:40px;height:40px;border-radius:12px;font-size:1.1rem}.pay-store-funds-check{width:24px;height:24px}}
/* Mi cuenta BloP: 5 indicadores, incluido lo usado en la Tienda BloP (2026-10-12) */
.account-stat-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.account-stat-grid article.is-store i{color:#e83ba4}
@media(max-width:1100px){.account-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.account-stat-grid{grid-template-columns:1fr 1fr}}
.checkout-funds-intent{display:inline-flex;align-items:center;gap:6px;margin:4px 0 6px!important;padding:4px 10px;border-radius:999px;background:#fff;color:#0f6e56!important;font-size:.72rem!important;font-weight:800}
.pay-store-funds .pay-store-funds-copy small{font-weight:500!important;text-transform:none;letter-spacing:0}
.pay-store-funds .pay-store-funds-copy em{font-weight:600!important}
@media(max-width:640px){.pay-store-funds{align-items:start}.pay-store-funds .pay-store-funds-copy b{font-size:.9rem}.pay-store-funds .pay-store-funds-copy small{font-size:.74rem!important}.pay-store-funds .pay-store-funds-copy em{font-size:.66rem!important}}
/* 2026-10-21: el texto ocupa todo el ancho de la tarjeta; solo el título va entre el ícono y el check (pedido del usuario) */
.pay-store-funds{row-gap:10px}
.pay-store-funds-copy{display:contents}
.pay-store-funds-icon{grid-column:1;grid-row:1;align-self:center}
.pay-store-funds .pay-store-funds-copy b{grid-column:2;grid-row:1;align-self:center}
.pay-store-funds-check{grid-column:3;grid-row:1;align-self:center}
.pay-store-funds .pay-store-funds-copy small{grid-column:1/-1;grid-row:2}
.checkout-funds-rule{display:flex;align-items:flex-start;gap:6px;margin:4px 0 6px!important;color:#0f6e56!important;font-size:.72rem!important;font-weight:700;line-height:1.4}

/* 2026-10-13, pedido del usuario: el botón azul "Volver" pasa a ser solo una bola azul con la flecha, más chica. */
.top-actions .btn-back-top{flex:0 0 auto;width:36px;height:36px;min-height:36px;padding:0;gap:0;border-radius:50%;font-size:1.05rem;line-height:1;box-shadow:0 8px 18px rgba(22,119,255,.22)}
.top-actions .btn-back-top i{display:block;line-height:1}

/* Celular (2026-10-13, pedido del usuario): los botones de arriba (chats, volver) van en la misma fila que el menú,
   no debajo del título; así la página no se alarga. Solo cuando son pocos botones (hasta 3). */
@media (max-width:640px){
  .main > .topbar:not(.event-stage-topbar):has(> .menu-toggle):has(> .top-actions):not(:has(> .top-actions > :nth-child(4))){display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 10px}
  .main > .topbar:not(.event-stage-topbar):has(> .menu-toggle):has(> .top-actions):not(:has(> .top-actions > :nth-child(4))) > .menu-toggle{grid-column:1;grid-row:1}
  .main > .topbar:not(.event-stage-topbar):has(> .menu-toggle):has(> .top-actions):not(:has(> .top-actions > :nth-child(4))) > .top-actions{grid-column:3;grid-row:1;display:flex;flex-wrap:nowrap;justify-content:flex-end;width:auto;margin:0}
  .main > .topbar:not(.event-stage-topbar):has(> .menu-toggle):has(> .top-actions):not(:has(> .top-actions > :nth-child(4))) > div:not(.top-actions){grid-column:1 / -1;grid-row:2;min-width:0}
}

/* Tienda con compra pagada (2026-10-14): aviso de entrega fija debajo de "Entrega seleccionada", en la columna del texto. */
.store-entry-delivery .store-entry-delivery-fixed{grid-column:2;display:block;color:#3b2470;font-size:.72rem;font-weight:700;line-height:1.35}
.store-entry-delivery .store-entry-delivery-fixed i{color:#7C3CFF}

/* Carrito a pantalla completa también en escritorio (2026-10-18): cada vez que se abre ocupa toda la pantalla, contenido centrado. */
@media(min-width:601px){
  body.store-cart-view-open{overflow:hidden}
  body.store-cart-view-open .store-selected-list{--cart-gutter:max(28px,calc((100vw - 1080px) / 2));position:fixed!important;z-index:30;inset:0!important;width:100%;height:100dvh;max-height:none!important;margin:0;border:0;border-radius:0;background:#f7f5fb;box-shadow:none}
  body.store-cart-view-open .store-selected-list-head{flex:0 0 auto;padding:22px var(--cart-gutter) 16px;border-bottom:1px solid #e4ddef;background:linear-gradient(135deg,#fff,#f8f3ff)}
  body.store-cart-view-open .store-selected-list-head h3{font-size:1.3rem}
  body.store-cart-view-open .store-cart-delivery-summary{flex:0 0 auto;padding:12px var(--cart-gutter)}
  body.store-cart-view-open .store-selected-table-wrap{flex:1;min-height:0;padding:8px var(--cart-gutter) 20px;overflow-y:auto;overscroll-behavior:contain}
  body.store-cart-view-open .store-selected-table{background:#fff;border-radius:14px}
  body.store-cart-view-open .store-selected-list-total{flex:0 0 auto;padding:16px var(--cart-gutter);border-top:1px solid #ded5ee;background:#fff;box-shadow:0 -10px 28px rgba(33,20,68,.09)}
  body.store-cart-view-open .store-selected-list-total strong{margin-left:auto;font-size:1.3rem;color:#6f35dc}
}

/* Entrega seleccionada en el carrito (2026-10-18): dato en morado fuerte y "Editar" como botón, pegado al texto (no al otro extremo). */
.store-cart-delivery-summary strong{color:#5B21D6;font-weight:800}
.store-cart-delivery-summary button{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:999px;background:var(--primary);color:#fff;box-shadow:0 6px 14px rgba(124,60,255,.25)}
.store-cart-delivery-summary button:hover{background:#6A2BEB}
@media(min-width:601px){
  body.store-cart-view-open .store-cart-delivery-summary{grid-template-columns:auto auto auto;justify-content:start;gap:12px}
  body.store-cart-view-open .store-cart-delivery-summary strong{font-size:.9rem;white-space:normal}
  body.store-cart-view-open .store-cart-delivery-summary button{margin-left:6px;font-size:.78rem}
}

/* 2026-10-21: aviso de retiro/envío más grande y notorio (pedido del usuario). */
.delivery-copy-feedback{align-items:center;gap:14px;margin:14px 0 0;padding:12px 16px;border:2px solid #E0223D;border-left-width:6px;border-radius:12px;background:#FFE8EB;color:#A3122A;font-size:.88rem;font-weight:800;line-height:1.4;box-shadow:0 10px 26px rgba(224,34,61,.18);animation:deliveryFeedbackPulse .9s ease-out 1}
.delivery-copy-feedback i{margin-top:0;font-size:1.35rem}
@keyframes deliveryFeedbackPulse{0%{transform:scale(.97);box-shadow:0 0 0 0 rgba(224,34,61,.45)}60%{transform:scale(1.01);box-shadow:0 0 0 12px rgba(224,34,61,0)}100%{transform:none;box-shadow:0 10px 26px rgba(224,34,61,.18)}}
@media (max-width:640px){.delivery-copy-feedback{padding:11px 14px;font-size:.84rem}}
/* 2026-10-21: ojo de vista previa (paso 3): se desplaza si no cabe; la imagen se ve completa como en la invitación y la tarjeta se angosta según el alto de la pantalla (pedido del usuario). */
.contribution-preview-panel{max-height:calc(100dvh - 36px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.contribution-preview-guest-card{width:clamp(220px,calc((100dvh - 420px) / 1.14),320px)!important;max-width:320px!important;justify-self:center!important}
@media(max-width:600px){.contribution-preview-panel{padding:16px 16px calc(40px + env(safe-area-inset-bottom))!important;max-height:calc(100dvh - 24px)!important}.contribution-preview-shell{gap:10px}}

/* Avisos en pop-up (2026-10-23, pedido del usuario): reemplazan los mensajes de arriba de la página (layout.php, data-notice-pop).
   Van sobre la tienda (1500), el panel de entrega (2400) y el aviso de compra (2600); debajo de las cookies (3000). */
.notice-pop{position:fixed;inset:0;z-index:2700;display:grid;place-items:center;padding:18px;background:rgba(20,12,45,.55);backdrop-filter:blur(3px);animation:noticePopFade .2s ease}
.notice-pop[hidden]{display:none}
.notice-pop-panel{position:relative;display:grid;justify-items:center;gap:10px;width:min(420px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:28px 24px 22px;border-radius:24px;background:#fff;box-shadow:0 30px 80px rgba(19,11,45,.35);text-align:center;animation:noticePopIn .25s cubic-bezier(.2,.9,.3,1.2)}
.notice-pop-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,#7C3CFF,#FF3FA4);color:#fff;font-size:1.6rem}
.notice-pop.is-success .notice-pop-icon{background:linear-gradient(135deg,#0CA678,#2ED8C3)}
.notice-pop.is-warning .notice-pop-icon{background:linear-gradient(135deg,#FF8C00,#FFC21A)}
.notice-pop.is-error .notice-pop-icon{background:linear-gradient(135deg,#E03131,#FF6F7D)}
.notice-pop-panel h2{margin:4px 0 0;color:#1f1838;font-size:1.25rem;font-weight:900}
.notice-pop-panel p{margin:0;color:#5d5670;font-size:.92rem;line-height:1.5}
.notice-pop-ok{width:100%;margin-top:8px}
.notice-pop-later{padding:4px 10px;border:0;background:none;color:#7a7290;font-size:.82rem;font-weight:800;cursor:pointer}
.notice-pop-x{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:#f3eefc;color:#5d5670;cursor:pointer}
.notice-pop-form{display:flex;gap:8px;width:100%;margin-top:6px}
.notice-pop-form input{flex:1;min-width:0;padding:11px 13px;border:1px solid #ddd2f5;border-radius:12px;font:inherit}
.notice-pop .legal-update-links{justify-content:center}
body.notice-pop-open{overflow:hidden}
@keyframes noticePopFade{from{opacity:0}to{opacity:1}}
@keyframes noticePopIn{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}
@media(max-width:480px){.notice-pop{align-items:end;padding:0}.notice-pop-panel{width:100%;border-radius:24px 24px 0 0;padding-bottom:calc(22px + env(safe-area-inset-bottom))}.notice-pop-form{flex-direction:column}}
/* 2026-10-29: nota del cargo todo incluido bajo el detalle de cobros. */
.public-payment-breakdown-detail>.public-breakdown-note{margin:0;padding:6px 14px 10px;color:#6B6B80;font-size:.72rem;font-weight:600;line-height:1.35}
/* Tienda más liviana (2026-10-29): con 1.109 tarjetas el celular se demoraba en dibujar la tienda. El navegador ahora solo arma las
   tarjetas que están en pantalla o cerca; las demás ocupan su lugar (recuerda su alto real una vez vistas) hasta que se llega a ellas. */
[data-store-products]>.store-product-card{content-visibility:auto;contain-intrinsic-size:auto 320px}
/* 2026-10-29: las filas ocultas del detalle de cobros (rifa sin monto) no se muestran; el display:flex de arriba le ganaba a [hidden]. */
.public-payment-breakdown-detail>div[hidden]{display:none!important}
