:root {
  --ic-bg: #fff7f2;
  --ic-paper: #ffffff;
  --ic-ink: #261c1f;
  --ic-muted: #7b6b68;
  --ic-brand: #c13f68;
  --ic-brand-2: #f06f92;
  --ic-gold: #d9a64f;
  --ic-soft: #fde7ec;
  --ic-line: rgba(38, 28, 31, 0.12);
  --ic-shadow: 0 28px 80px rgba(80, 42, 38, 0.16);
  --ic-radius: 34px;
  --ic-max: 1180px;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body[data-page="events"] {
  margin: 0 !important;
  min-height: 100vh;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  color: var(--ic-ink) !important;
  background:
    radial-gradient(circle at top left, rgba(193, 63, 104, 0.16), transparent 32%),
    radial-gradient(circle at top right, rgba(217, 166, 79, 0.2), transparent 28%),
    linear-gradient(180deg, #fff7f2 0%, #ffffff 48%, #fff1ea 100%) !important;
}

.events-auth-loader { display: none; }
body.events-loading { overflow: hidden; }
body.events-loading > .topbar,
body.events-loading > .studio-workspace { visibility: hidden; }
body.events-loading > .events-auth-loader {
  align-items: center;
  background: #fffaf8;
  color: var(--ic-ink);
  display: flex;
  flex-direction: column;
  gap: 12px;
  inset: 0;
  justify-content: center;
  position: fixed;
  z-index: 9999;
}
.events-loader-envelope {
  animation: events-envelope-float 1.8s ease-in-out infinite;
  background: linear-gradient(145deg,#fff,#f8e8ed);
  border: 1px solid rgba(126,42,91,.22);
  border-radius: 8px;
  box-shadow: 0 18px 42px rgba(80,42,67,.16);
  height: 64px;
  overflow: hidden;
  position: relative;
  width: 94px;
}
.events-loader-envelope::after {
  background: linear-gradient(145deg,#fff8fa,#f2d9e2);
  clip-path: polygon(0 100%,50% 30%,100% 100%);
  content: "";
  inset: 0;
  position: absolute;
}
.events-loader-envelope span {
  animation: events-envelope-flap 1.8s ease-in-out infinite;
  background: linear-gradient(145deg,#f8e4eb,#fff);
  clip-path: polygon(0 0,100% 0,50% 100%);
  height: 40px;
  left: 0;
  position: absolute;
  top: 0;
  transform-origin: top;
  width: 100%;
  z-index: 2;
}
.events-loader-envelope i {
  animation: events-seal-pulse 1.8s ease-in-out infinite;
  background: linear-gradient(135deg,#8f3158,#c13f68);
  border-radius: 50%;
  box-shadow: 0 0 0 5px rgba(193,63,104,.12);
  height: 17px;
  left: calc(50% - 8.5px);
  position: absolute;
  top: 30px;
  width: 17px;
  z-index: 3;
}
.events-loader-status { height: 1px; margin: -1px; overflow: hidden; position: absolute; width: 1px; clip-path: inset(50%); }
@keyframes events-envelope-float { 50% { transform: translateY(-7px); } }
@keyframes events-envelope-flap { 0%,100% { transform: rotateX(0); } 45%,65% { transform: rotateX(32deg); } }
@keyframes events-seal-pulse { 50% { box-shadow: 0 0 0 9px rgba(193,63,104,.07); transform: scale(.88); } }
@media (prefers-reduced-motion: reduce) {
  .events-loader-envelope, .events-loader-envelope span, .events-loader-envelope i { animation: none; }
}

body[data-page="events"] a {
  color: inherit;
  text-decoration: none;
}

.topbar {
  width: min(var(--ic-max), calc(100% - 32px));
  margin: 18px auto 0;
  padding: 14px 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-radius: 999px;
  background: linear-gradient(115deg, rgba(27, 49, 98, 0.97), rgba(126, 42, 91, 0.96) 58%, rgba(193, 63, 104, 0.95)) !important;
  border: 1px solid rgba(255, 255, 255, 0.16);
  box-shadow: 0 18px 50px rgba(54, 31, 89, 0.22);
  position: sticky;
  top: 14px;
  z-index: 50;
  backdrop-filter: blur(18px);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  font-size: 1.18rem;
  font-weight: 900;
  letter-spacing: -0.04em;
}

.brand span {
  color: var(--ic-brand);
}

.brand strong {
  color: #fff8f3;
}

.brand i {
  width: 12px;
  height: 12px;
  margin-left: 7px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--ic-brand-2), var(--ic-gold));
  box-shadow: 0 0 0 7px rgba(193, 63, 104, 0.12);
}

.nav {
  display: flex;
  gap: 8px;
}

.nav a {
  padding: 10px 15px;
  border-radius: 999px;
  color: rgba(255, 248, 243, 0.76);
  font-weight: 800;
  font-size: 0.94rem;
}

.nav a:hover {
  background: rgba(240, 111, 146, 0.18);
  color: #ffffff;
}

.nav .nav-action { background: transparent; border: 0; border-radius: 999px; color: rgba(255,248,243,.76); cursor: pointer; font: inherit; font-size: .94rem; font-weight: 800; padding: 10px 15px; }
.nav .nav-action:hover { background: rgba(240,111,146,.18); color: #fff; }

.workspace {
  width: min(var(--ic-max), calc(100% - 32px));
  margin: 12px auto 80px;
}

.studio-workspace {
  display: grid;
  gap: 18px;
}

.studio-heading {
  align-items: end;
  display: flex;
  gap: 24px;
  justify-content: space-between;
  padding: 2px 4px;
}

.studio-heading h1 {
  color: var(--ic-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.8rem, 3vw, 2.65rem);
  font-weight: 500;
  line-height: 1;
  margin: 0 0 8px;
}

.studio-heading > div:first-child > p:last-child {
  color: var(--ic-muted);
  font-size: 0.94rem;
  margin: 0;
}

.studio-heading-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  justify-content: flex-end;
}

.studio-profile {
  align-items: center;
  background: #fff;
  border: 1px solid var(--ic-line);
  border-radius: 8px;
  display: flex;
  gap: 11px;
  margin-left: auto;
  max-width: 310px;
  padding: 10px 12px;
}

.studio-profile[hidden] { display: none; }
.studio-profile img { border-radius: 8px; height: 42px; object-fit: contain; width: 42px; }
.studio-profile strong, .studio-profile span, .studio-profile a { display: block; }
.studio-profile strong { font-size: 0.9rem; }
.studio-profile span { color: var(--ic-muted); font-size: 0.72rem; margin-top: 2px; }
.studio-profile a { color: var(--ic-brand); font-size: 0.72rem; font-weight: 750; margin-top: 3px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.studio-heading-actions .button {
  font-size: 0.84rem;
  min-height: 38px;
  padding: 0 11px;
}

.premium-catalog-dialog { background: transparent; border: 0; max-height: calc(100vh - 30px); max-width: 1040px; overflow: auto; padding: 0; width: calc(100% - 28px); }
.premium-catalog-dialog::backdrop { background: rgba(15,18,28,.72); backdrop-filter: blur(7px); }
.premium-catalog { background: #f5f7fa; border-radius: 8px; min-height: 520px; padding: 38px; position: relative; }
.premium-catalog-heading { max-width: 660px; }
.premium-catalog-heading h2 { font-size: clamp(2rem,4vw,3rem); margin-bottom: 8px; }
.premium-catalog-heading > p:last-child { color: var(--muted); }
.premium-design-grid { display: grid; gap: 18px; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 28px; }
.premium-design-card { background: #fff; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.premium-design-image { aspect-ratio: 4 / 3; background: #e8e2d9; overflow: hidden; position: relative; }
.premium-design-image img { height: 100%; object-fit: cover; width: 100%; }
.premium-design-image span { background: rgba(15,23,42,.82); border-radius: 5px; color: #fff; font-size: .65rem; font-weight: 850; left: 12px; padding: 6px 8px; position: absolute; top: 12px; text-transform: uppercase; }
.premium-design-copy { padding: 18px; }
.premium-design-copy h3 { font-family: Georgia,serif; font-size: 1.35rem; margin: 0 0 5px; }
.premium-design-copy p { color: var(--muted); font-size: .8rem; margin: 0 0 16px; }
.premium-design-actions { display: grid; gap: 8px; grid-template-columns: 1fr 1fr; }
.premium-design-actions .button { font-size: .76rem; justify-content: center; min-height: 40px; padding: 0 10px; }
.premium-import-status { color: var(--ic-brand); font-size: .8rem; font-weight: 750; margin: 18px 0 0; min-height: 1.2em; }
@media (max-width: 800px) { .premium-design-grid { grid-template-columns: 1fr; } .premium-catalog { padding: 30px 18px; } }
.premium-content-fields { border: 1px solid var(--ic-line); border-radius: 8px; display: grid; gap: 14px; grid-column: 1 / -1; grid-template-columns: repeat(2,minmax(0,1fr)); margin: 4px 0; padding: 20px; }
.premium-content-fields[hidden] { display: none; }
.premium-content-fields legend { color: var(--ic-ink); font-family: Georgia,serif; font-size: 1.15rem; font-weight: 700; padding: 0 8px; }
.premium-content-fields > p { color: var(--ic-muted); font-size: .78rem; grid-column: 1 / -1; margin: 0; }
.premium-dynamic-fields { display: contents; }
.premium-content-fields label { margin: 0; }
.premium-content-fields .wide-field { grid-column: 1 / -1; }
.premium-audio-field { align-items: center; background: var(--ic-bg); border: 1px solid var(--ic-line); border-radius: 8px; display: grid; gap: 10px; margin-top: 7px; padding: 12px; }
.premium-audio-field input[type="file"] { background: #fff; border: 1px solid var(--ic-line); border-radius: 7px; min-height: 42px; padding: 8px; width: 100%; }
.premium-audio-field input[type="file"]::file-selector-button { background: var(--ic-ink); border: 0; border-radius: 6px; color: #fff; cursor: pointer; font: inherit; margin-right: 12px; padding: 9px 13px; }
.premium-audio-field audio { height: 38px; width: 100%; }
.premium-audio-field small { color: var(--ic-muted); font-size: .72rem; }
@media (max-width: 680px) { .premium-content-fields { grid-template-columns: 1fr; padding: 16px; } .premium-content-fields .wide-field { grid-column: auto; } }

.heading-secondary,
.heading-exit {
  background: #fff;
  border: 1px solid var(--ic-line);
  box-shadow: none;
  color: var(--ic-ink) !important;
}

.settings-dialog { background: transparent; border: 0; max-width: 680px; padding: 0; width: calc(100% - 28px); }
.settings-dialog::backdrop { background: rgba(21,18,31,.68); backdrop-filter: blur(6px); }
.settings-form { background: #fff; border-radius: 8px; padding: 30px; position: relative; }
.settings-form h2 { font-family: Georgia, serif; font-size: 2rem; }
.settings-fields { display: grid; gap: 15px; grid-template-columns: 1fr 1fr; margin: 22px 0; }
.settings-fields input { background: var(--ic-bg); border: 1px solid var(--ic-line); border-radius: 8px; color: var(--ic-ink); min-height: 46px; padding: 0 12px; }
.analytics-setting { background: #f7f4fb; border: 1px solid #ded5eb; border-radius: 8px; grid-column: 1 / -1; padding: 16px; }
.analytics-setting[hidden] { display: none; }
.analytics-setting small { color: var(--ic-muted); display: block; font-size: .72rem; line-height: 1.45; margin-top: 7px; }

.access-dialog { background: transparent; border: 0; max-width: 620px; padding: 0; width: calc(100% - 28px); }
.access-dialog::backdrop { background: rgba(21,18,31,.68); backdrop-filter: blur(6px); }
.access-panel { background: #fff; border-radius: 8px; padding: 30px; position: relative; }
.access-panel h2 { font-family: Georgia, serif; font-size: 2rem; margin-bottom: 6px; }
.access-credentials { display: grid; gap: 14px; grid-template-columns: 1fr 1fr; margin: 22px 0; }
.access-credentials input { background: var(--ic-bg); border: 1px solid var(--ic-line); border-radius: 8px; min-height: 46px; padding: 0 11px; }
.access-credentials input:read-only { color: var(--ic-muted); cursor: default; }
#hostCredentialsForm > .button { margin-bottom: 4px; }
#hostCredentialsMessage { min-height: 20px; }
.access-state { color: var(--ic-muted); font-weight: 750; }
.access-actions { display: flex; flex-wrap: wrap; gap: 8px; }

.heading-exit {
  color: var(--ic-brand) !important;
}

.studio-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.studio-summary article {
  align-items: center;
  display: grid;
  column-gap: 14px;
  grid-template-columns: 40px minmax(0, 1fr);
  grid-template-rows: auto auto;
  padding: 15px 16px;
  row-gap: 6px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid var(--ic-line);
  box-shadow: 0 16px 45px rgba(80, 42, 38, 0.08);
}

.studio-summary i {
  width: 40px;
  height: 40px;
  display: grid;
  grid-row: 1 / 3;
  place-items: center;
  margin-bottom: 0;
  border-radius: 8px;
  background: var(--ic-soft);
  font-style: normal;
}

.studio-summary span {
  align-self: end;
  display: block;
  grid-column: 2;
  grid-row: 1;
  color: var(--ic-ink);
  font-size: 1.45rem;
  line-height: 1;
  letter-spacing: 0;
  font-weight: 950;
}

.studio-summary p {
  align-self: start;
  font-size: 0.8rem;
  grid-column: 2;
  grid-row: 2;
  line-height: 1.25;
  margin: 0;
  color: var(--ic-muted);
  font-weight: 800;
}

body.is-superadmin-panel .studio-workspace {
  align-items: start;
  grid-template-columns: 224px minmax(0, 1fr);
}

body.is-superadmin-panel .studio-heading {
  grid-column: 1 / -1;
}

body.is-superadmin-panel [data-admin-view-panel] {
  grid-column: 2;
}

.superadmin-sidebar {
  background: linear-gradient(165deg, #241d3e, #48254a 58%, #7f2e59);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 18px;
  box-shadow: 0 20px 55px rgba(48,29,63,.2);
  color: #fff;
  display: grid;
  gap: 16px;
  grid-column: 1;
  grid-row: 2 / span 30;
  padding: 16px;
  position: sticky;
  top: 104px;
}

.superadmin-sidebar-heading { align-items: center; display: flex; gap: 10px; padding: 4px 5px 12px; border-bottom: 1px solid rgba(255,255,255,.12); }
.superadmin-sidebar-heading > span { display: grid; height: 36px; place-items: center; width: 36px; border-radius: 11px; background: rgba(255,255,255,.12); color: #f2bf7b; }
.superadmin-sidebar-heading div { display: grid; gap: 2px; }
.superadmin-sidebar-heading strong { font-size: .86rem; }
.superadmin-sidebar-heading small { color: rgba(255,255,255,.58); font-size: .68rem; }
.superadmin-section-nav { display: grid; gap: 7px; }
.superadmin-section-nav button { align-items: center; background: transparent; border: 1px solid transparent; border-radius: 12px; color: rgba(255,255,255,.72); cursor: pointer; display: grid; gap: 10px; grid-template-columns: 28px minmax(0,1fr); padding: 10px; text-align: left; transition: .18s ease; }
.superadmin-section-nav button > span:first-child { display: grid; font-size: 1rem; place-items: center; }
.superadmin-section-nav button > span:last-child { display: grid; gap: 2px; }
.superadmin-section-nav button strong { color: inherit; font-size: .79rem; }
.superadmin-section-nav button small { color: rgba(255,255,255,.48); font-size: .65rem; }
.superadmin-section-nav button:hover { background: rgba(255,255,255,.08); color: #fff; }
.superadmin-section-nav button.is-active { background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.16); box-shadow: inset 3px 0 #f2bf7b; color: #fff; }
.superadmin-section-nav button.is-active small { color: rgba(255,255,255,.7); }

.dashboard-overview { display: grid; gap: 14px; grid-template-columns: repeat(2,minmax(0,1fr)); }
.dashboard-overview-card, .internal-activity { background: #fff; border: 1px solid var(--ic-line); border-radius: 14px; box-shadow: 0 16px 45px rgba(80,42,38,.08); }
.dashboard-overview-card { display: flex; flex-direction: column; min-height: 310px; padding: 20px; }
.dashboard-overview-card > header, .active-users-panel > header { align-items: flex-start; display: flex; gap: 14px; justify-content: space-between; }
.dashboard-overview-card h2, .dashboard-overview-card p { margin: 0; }
.dashboard-overview-card h2 { font-family: Georgia,serif; font-size: 1.3rem; }
.dashboard-overview-card > header > strong { background: #edf8f1; border-radius: 999px; color: #287141; font-size: .7rem; padding: 7px 10px; }
.dashboard-overview-card > .button { align-self: flex-start; margin-top: auto; }
.dashboard-presence-list, .activity-timeline { display: grid; gap: 9px; margin: 16px 0; }
.presence-row { align-items: center; display: grid; gap: 10px; grid-template-columns: 36px minmax(0,1fr) auto; padding: 9px 0; border-bottom: 1px solid rgba(38,28,31,.08); }
.presence-row:last-child { border-bottom: 0; }
.presence-avatar { align-items: center; background: var(--ic-soft); border-radius: 11px; color: var(--ic-brand); display: flex; font-size: .73rem; font-weight: 900; height: 36px; justify-content: center; text-transform: uppercase; width: 36px; }
.presence-row > span:nth-child(2) { display: grid; gap: 2px; min-width: 0; }
.presence-row strong { font-size: .78rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.presence-row small { color: var(--ic-muted); font-size: .68rem; }
.presence-row > em { color: #287141; font-size: .64rem; font-style: normal; font-weight: 800; }
.activity-entry { display: grid; gap: 11px; grid-template-columns: 34px minmax(0,1fr) auto; padding: 12px 0; border-bottom: 1px solid rgba(38,28,31,.08); }
.activity-entry:last-child { border-bottom: 0; }
.activity-entry-icon { align-items: center; background: #f6edf1; border-radius: 10px; color: var(--ic-brand); display: flex; font-size: .8rem; height: 34px; justify-content: center; width: 34px; }
.activity-entry-copy { display: grid; gap: 3px; }
.activity-entry-copy strong { font-size: .79rem; line-height: 1.35; }
.activity-entry-copy span { color: var(--ic-muted); font-size: .68rem; }
.activity-entry time { color: var(--ic-muted); font-size: .65rem; white-space: nowrap; }
.activity-timeline--compact .activity-entry:nth-child(n+6) { display: none; }
.activity-empty { color: var(--ic-muted); font-size: .78rem; margin: 8px 0; }

.internal-activity { padding: 24px; }
.internal-activity-heading > div > p:last-child { color: var(--ic-muted); margin: 6px 0 0; max-width: 720px; }
.active-users-panel { background: linear-gradient(135deg,#fbf7f8,#fff); border: 1px solid var(--ic-line); border-radius: 12px; margin-top: 20px; padding: 18px; }
.active-users-panel > header > div { align-items: center; display: flex; gap: 8px; }
.active-users-panel h3 { font-size: .95rem; margin: 0; }
.active-users-panel header span { color: #35a463; font-size: .7rem; }
.active-users-panel header > strong { color: #287141; font-size: .75rem; }
.public-visitors-panel { background: linear-gradient(135deg,#f2f8ff,#fff); border-color: #d9e7f5; }
.public-visitors-panel header span { color: #2f78bd; }
.public-visitors-panel header > strong { color: #2f6fa9; }
.public-visitor-card .presence-avatar, .public-presence-row .presence-avatar { background: #eaf4ff; color: #2f6fa9; }
.public-visitor-card small { color: #2f6fa9; }
.public-presence-row > em { color: #2f6fa9; }
.active-users-grid { display: grid; gap: 10px; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 14px; }
.active-user-card { background: #fff; border: 1px solid var(--ic-line); border-radius: 11px; display: grid; gap: 5px; padding: 13px; }
.active-user-card > div { align-items: center; display: flex; gap: 9px; }
.active-user-card strong { font-size: .78rem; }
.active-user-card p { color: var(--ic-muted); font-size: .7rem; margin: 0; }
.active-user-card small { color: var(--ic-brand); font-size: .66rem; font-weight: 750; }
.activity-toolbar { display: grid; gap: 10px; grid-template-columns: 1fr 1fr 1.2fr; margin-top: 18px; }
.activity-toolbar label { color: var(--ic-muted); display: grid; font-size: .69rem; font-weight: 800; gap: 6px; }
.activity-toolbar input, .activity-toolbar select { background: #fff; border: 1px solid var(--ic-line); border-radius: 9px; min-height: 42px; padding: 0 11px; }
.internal-activity > .activity-timeline { margin-top: 18px; }

@media (max-width: 980px) {
  body.is-superadmin-panel .studio-workspace { grid-template-columns: 1fr; }
  body.is-superadmin-panel .studio-heading, body.is-superadmin-panel [data-admin-view-panel] { grid-column: 1; }
  .superadmin-sidebar { grid-column: 1; grid-row: auto; overflow-x: auto; padding: 12px; position: sticky; top: 96px; z-index: 35; }
  .superadmin-sidebar-heading { display: none; }
  .superadmin-section-nav { display: flex; min-width: max-content; }
  .superadmin-section-nav button { grid-template-columns: 24px auto; min-width: 150px; }
  .active-users-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 720px) {
  .dashboard-overview { grid-template-columns: 1fr; }
  .activity-toolbar { grid-template-columns: 1fr; }
  .active-users-grid { grid-template-columns: 1fr; }
  .internal-activity { padding: 18px; }
}

.studio-events,
.registration-requests,
.premium-workspace,
.event-creator {
  border-radius: var(--ic-radius);
  background: #fff;
  border: 1px solid var(--ic-line);
  box-shadow: 0 18px 60px rgba(80, 42, 38, 0.08);
  overflow: hidden;
}

.host-registry { background: #fff; border: 1px solid var(--ic-line); border-radius: 8px; box-shadow: 0 18px 60px rgba(80,42,38,.08); overflow: hidden; }
.host-registry-heading { align-items: center; }
.host-registry-heading > div:first-child > p:last-child { color: var(--ic-muted); font-size: .78rem; margin: 8px 0 0; max-width: 620px; }
.host-registry-tools { align-items: flex-end; display: flex; gap: 12px; }
.host-registry-tools > strong { background: #eef8f6; border: 1px solid #b7e2db; border-radius: 7px; color: #087f72; font-size: .76rem; padding: 10px 12px; white-space: nowrap; }
.host-registry-tools label { color: var(--ic-muted); display: grid; font-size: .68rem; font-weight: 850; gap: 5px; }
.host-registry-tools select { background: #fff; border: 1px solid var(--ic-line); border-radius: 7px; color: var(--ic-ink); min-height: 38px; padding: 0 28px 0 10px; }
.host-registry-grid { display: grid; gap: 9px; grid-template-columns: repeat(4,minmax(0,1fr)); padding: 16px 20px 20px; }
.host-account-card { border: 1px solid var(--ic-line); border-radius: 8px; display: grid; gap: 7px; min-width: 0; padding: 12px; }
.host-account-card.deleted { background: #f8f6f5; }
.host-account-top { align-items: center; display: flex; gap: 10px; justify-content: space-between; }
.host-account-symbol { align-items: center; background: #eaf8f6; border: 1px solid #b7e2db; border-radius: 6px; color: #087f72; display: inline-flex; font-size: .82rem; height: 27px; justify-content: center; width: 27px; }
.host-account-status { border-radius: 5px; font-size: .61rem; font-weight: 900; padding: 5px 7px; text-transform: uppercase; }
.host-account-status.active { background: #e5f7f1; color: #087f72; }
.host-account-status.disabled { background: #fff3d9; color: #8a5b00; }
.host-account-status.deleted { background: #f7e7ea; color: #a32940; }
.host-account-card h3 { font-family: Georgia,serif; font-size: .92rem; line-height: 1.15; margin: 0; overflow-wrap: anywhere; }
.host-account-identifier { color: var(--ic-brand); font-size: .68rem; font-weight: 800; margin: -2px 0 0; overflow-wrap: anywhere; }
.host-account-events { display: grid; gap: 3px; }
.host-account-events span { color: var(--ic-muted); font-size: .7rem; line-height: 1.35; }
.host-account-events strong { color: var(--ic-ink); display: block; font-size: .74rem; overflow-wrap: anywhere; }
.host-account-meta { color: var(--ic-muted); font-size: .66rem; margin: 0; }
.host-account-actions { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 3px; }
.host-account-actions .button { flex: 1 1 auto; font-size: .61rem; justify-content: center; min-height: 29px; padding: 5px 7px; }
.host-account-actions .danger { color: #b4233d; }
.host-level-control{display:grid;flex:1 0 100%;gap:3px}.host-level-control span{color:var(--ic-muted);font-size:.58rem;font-weight:900;text-transform:uppercase}.host-level-control select{background:#fff;border:1px solid var(--ic-line);border-radius:6px;color:var(--ic-ink);font-size:.66rem;min-height:29px;padding:4px 7px;width:100%}
.host-account-reusable { color: #087f72; font-size: .7rem; font-weight: 800; margin: 0; }
.host-registry-empty { color: var(--ic-muted); grid-column: 1 / -1; padding: 24px; text-align: center; }
.host-registry-message { color: var(--ic-brand); font-size: .76rem; min-height: 18px; padding: 0 28px 18px; }
.host-registry.is-collapsed .host-registry-grid,.host-registry.is-collapsed .host-registry-message{display:none}.host-registry.is-collapsed .host-registry-heading{border-bottom:0}.host-registry.is-collapsed .host-registry-tools label{display:none}
@media (max-width: 1120px) { .host-registry-grid { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (max-width: 820px) { .host-registry-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 650px) { .host-registry-heading,.host-registry-tools { align-items: stretch; flex-direction: column; } .host-registry-grid { grid-template-columns: 1fr; padding: 18px; } }

.requests-heading-tools { align-items: flex-end; display: flex; gap: 12px; }
.requests-heading-tools > strong { background: #fff; border: 1px solid var(--ic-line); border-radius: 7px; color: var(--ic-brand); font-size: .76rem; padding: 10px 12px; white-space: nowrap; }
.requests-heading-tools label { color: var(--ic-muted); display: grid; font-size: .68rem; font-weight: 850; gap: 5px; }
.requests-heading-tools select { background: #fff; border: 1px solid var(--ic-line); border-radius: 7px; color: var(--ic-ink); min-height: 38px; padding: 0 28px 0 10px; }
.request-list { display: grid; }
.request-item { align-items: center; border-bottom: 1px solid var(--ic-line); display: grid; gap: 18px; grid-template-columns: minmax(190px,1.1fr) minmax(170px,.9fr) minmax(180px,1fr) auto; padding: 18px 28px; }
.request-item:last-child { border-bottom: 0; }
.request-person, .request-event, .request-contact { min-width: 0; }
.request-person strong, .request-event strong { color: var(--ic-ink); display: block; overflow-wrap: anywhere; }
.request-person span, .request-event span, .request-contact a, .request-notes { color: var(--ic-muted); display: block; font-size: .75rem; margin-top: 4px; overflow-wrap: anywhere; }
.request-plan { border-radius: 5px; display: inline-flex !important; font-size: .63rem !important; font-weight: 900; margin: 0 0 7px !important; padding: 5px 7px; text-transform: uppercase; }
.request-plan.esencial { background: #e8f4ff; color: #1768a8; }
.request-plan.celebracion { background: #fff0f3; color: #a92d55; }
.request-plan.premium { background: #f4edff; color: #6b3baa; }
.request-contact a { color: var(--ic-brand); text-decoration: none; }
.request-actions { align-items: stretch; display: grid; gap: 7px; min-width: 145px; }
.request-actions .button { font-size: .7rem; justify-content: center; min-height: 36px; padding: 7px 10px; }
.request-actions .danger { color: #b4233d; }
.request-status { color: #31846d; font-size: .68rem; font-weight: 850; text-align: center; }
.request-empty { color: var(--ic-muted); padding: 34px; text-align: center; }
@media (max-width: 880px) { .request-item { grid-template-columns: 1fr 1fr; } .request-actions { grid-template-columns: 1fr 1fr; } }
@media (max-width: 620px) { .requests-heading { align-items: stretch; flex-direction: column; } .requests-heading-tools { align-items: stretch; flex-direction: column; } .request-item { grid-template-columns: 1fr; padding: 18px; } }

.premium-workspace-tools { align-items: flex-end; display: flex; gap: 12px; }
.premium-workspace-tools > strong { background: #fff; border: 1px solid var(--ic-line); border-radius: 7px; color: #6b3baa; font-size: .76rem; padding: 10px 12px; white-space: nowrap; }
.premium-workspace-tools label { color: var(--ic-muted); display: grid; font-size: .68rem; font-weight: 850; gap: 5px; }
.premium-workspace-tools select { background: #fff; border: 1px solid var(--ic-line); border-radius: 7px; color: var(--ic-ink); min-height: 38px; padding: 0 28px 0 10px; }
.premium-audio-quick-status { color: var(--ic-muted); font-size: .76rem; font-weight: 750; margin: 0; min-height: 0; padding: 0 28px; }
.premium-audio-quick-status:not(:empty) { min-height: 42px; padding-bottom: 12px; }
.premium-audio-quick-status[data-state="working"] { color: #6b3baa; }
.premium-audio-quick-status[data-state="success"] { color: #087f72; }
.premium-audio-quick-status[data-state="error"] { color: #b4233d; }
.premium-event-grid { display: grid; gap: 14px; grid-template-columns: repeat(2,minmax(0,1fr)); padding: 24px 28px 28px; }
.premium-event-card { border: 1px solid var(--ic-line); border-radius: 8px; display: grid; grid-template-columns: 132px minmax(0,1fr); min-width: 0; overflow: hidden; }
.premium-event-card > img { height: 100%; min-height: 190px; object-fit: cover; width: 100%; }
.premium-event-body { align-content: center; display: grid; gap: 10px; padding: 17px; }
.premium-event-topline { align-items: center; display: flex; gap: 8px; justify-content: space-between; }
.premium-event-topline span { background: #f4edff; border-radius: 5px; color: #6b3baa; font-size: .62rem; font-weight: 900; padding: 5px 7px; text-transform: uppercase; }
.premium-event-topline small { color: var(--ic-muted); font-size: .68rem; }
.premium-event-body h3 { color: var(--ic-ink); font-family: Georgia,serif; font-size: 1.25rem; margin: 0; overflow-wrap: anywhere; }
.premium-event-body p { color: var(--ic-muted); font-size: .75rem; margin: 0; }
.premium-event-actions { display: flex; flex-wrap: wrap; gap: 7px; }
.premium-event-actions .button { font-size: .68rem; min-height: 35px; padding: 7px 9px; }
.premium-event-actions .danger { color: #b4233d; }
.premium-event-primary-actions { display: grid; gap: 8px; grid-template-columns: repeat(2,minmax(0,1fr)); margin: 15px 0 10px; }
.premium-workflow-button { align-items: center; background: #f7f3ff; border: 1px solid #d8c9ef; border-radius: 7px; color: #322545; cursor: pointer; display: flex; font: inherit; gap: 9px; min-height: 54px; padding: 9px 11px; text-align: left; text-decoration: none; transition: border-color .2s ease, background .2s ease, transform .2s ease; }
.premium-workflow-button > span:first-child { color: #6b3baa; font-size: 1.05rem; }
.premium-workflow-button > span:last-child { display: grid; gap: 2px; min-width: 0; }
.premium-workflow-button strong { color: #322545; font-size: .72rem; line-height: 1.2; }
.premium-workflow-button small { color: var(--ic-muted); font-size: .6rem; line-height: 1.25; }
.premium-workflow-button:hover { background: #efe7fb; border-color: #aa8bd1; transform: translateY(-1px); }
.premium-host-access { background: #eaf8f6; border-color: #b7e2db; }
.premium-host-access > span:first-child { color: #087f72; }
.premium-host-access:hover { background: #ddf3ef; border-color: #77c8bb; }
.premium-workspace-empty { color: var(--ic-muted); grid-column: 1 / -1; padding: 30px; text-align: center; }
@media (max-width: 900px) { .premium-event-grid { grid-template-columns: 1fr; } }
@media (max-width: 620px) { .premium-workspace-heading { align-items: stretch; flex-direction: column; } .premium-workspace-tools { align-items: stretch; flex-direction: column; } .premium-event-grid { padding: 18px; } .premium-event-card { grid-template-columns: 100px minmax(0,1fr); } .premium-event-primary-actions { grid-template-columns: 1fr; } }

.event-dialog {
  background: transparent;
  border: 0;
  max-height: calc(100vh - 40px);
  max-width: 860px;
  overflow: auto;
  padding: 0;
  width: calc(100% - 32px);
}

.event-dialog::backdrop {
  background: rgba(21, 18, 31, 0.68);
  backdrop-filter: blur(6px);
}

.event-dialog .event-creator {
  border-radius: 8px;
  margin: 0;
  position: relative;
}

.dialog-close {
  align-items: center;
  background: rgba(255, 255, 255, 0.94);
  border: 0;
  border-radius: 50%;
  color: var(--ic-ink);
  cursor: pointer;
  display: flex;
  font-size: 1.6rem;
  height: 38px;
  justify-content: center;
  line-height: 1;
  position: absolute;
  right: 14px;
  top: 14px;
  width: 38px;
  z-index: 3;
}

.studio-section-head {
  padding: 30px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  border-bottom: 1px solid var(--ic-line);
  background: linear-gradient(135deg, #fff3f6, #ffffff);
}

.studio-section-head h2,
.creator-intro h2 {
  margin: 0;
  color: var(--ic-ink);
  font-size: clamp(1.8rem, 3vw, 2.85rem);
  line-height: 1;
  letter-spacing: -0.06em;
}

#eventsCountLabel {
  margin: 0;
  padding: 10px 15px;
  border-radius: 999px;
  background: #fff;
  color: var(--ic-muted);
  font-weight: 900;
  white-space: nowrap;
}

.events-toolbar {
  background: #fff;
  border-bottom: 1px solid var(--ic-line);
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(240px, 1fr) repeat(4,minmax(135px,160px));
  padding: 20px 28px;
}

.events-toolbar label {
  color: var(--ic-muted);
  display: grid;
  font-size: 0.76rem;
  font-weight: 850;
  gap: 7px;
}

.events-toolbar input,
.events-toolbar select {
  background: var(--ic-bg);
  border: 1px solid var(--ic-line);
  border-radius: 8px;
  color: var(--ic-ink);
  font: inherit;
  min-height: 46px;
  padding: 0 12px;
  width: 100%;
}

.event-gallery {
  min-height: 230px;
  padding: 28px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
}

.event-gallery:empty::before {
  content: "Cuando crees eventos, aquí aparecerán tus invitaciones recientes.";
  min-height: 230px;
  grid-column: 1 / -1;
  display: grid;
  place-items: center;
  padding: 30px;
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(38,28,31,0.22), rgba(38,28,31,0.66)),
    url("https://images.unsplash.com/photo-1527529482837-4698179dc6ce?auto=format&fit=crop&w=1400&q=80");
  background-size: cover;
  background-position: center;
  color: #fff;
  text-align: center;
  font-size: 1.25rem;
  font-weight: 950;
}

.event-cover {
  display: grid;
  grid-template-columns: minmax(260px, 34%) minmax(0, 1fr);
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--ic-line);
  border-radius: 8px;
  background: var(--ic-paper);
}

.event-cover-image {
  min-height: 245px;
  padding: 15px;
  position: relative;
  display: flex;
  align-items: flex-end;
  background-color: var(--ic-ink);
  background-position: center;
  background-size: cover;
  color: #fff;
}

.event-cover-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(38, 28, 31, 0.05), rgba(38, 28, 31, 0.82));
}

.event-state,
.event-cover-title {
  position: relative;
  z-index: 1;
}

.event-state {
  position: absolute;
  top: 18px;
  left: 18px;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--ic-brand);
  font-size: 0.75rem;
  font-weight: 900;
  text-transform: capitalize;
}

.event-cover-title p,
.event-cover-title h3 {
  color: #fff;
}

.event-cover-title p {
  margin: 0 0 4px;
  font-weight: 800;
}

.event-cover-title h3 {
  margin: 0 0 8px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.35rem, 2.4vw, 1.9rem);
  line-height: 1;
}

.event-cover-body {
  align-content: center;
  padding: 16px;
  display: grid;
  gap: 10px;
}

.event-host span {
  color: var(--ic-muted);
  font-size: 0.72rem;
  font-weight: 850;
  text-transform: uppercase;
}

.event-host strong {
  color: var(--ic-ink);
  display: block;
  font-size: 1.05rem;
  font-weight: 850;
  margin-top: 4px;
  overflow-wrap: anywhere;
}

.event-card-stats {
  border-bottom: 1px solid var(--ic-line);
  border-top: 1px solid var(--ic-line);
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.event-card-stats div {
  padding: 8px 0;
}

.event-card-stats div + div {
  border-left: 1px solid var(--ic-line);
  padding-left: 18px;
}

.event-card-stats strong,
.event-card-stats span {
  display: block;
}

.event-card-stats strong {
  color: var(--ic-ink);
  font-size: 1.15rem;
}

.event-card-stats strong small {
  color: var(--ic-muted);
  font-size: 0.85rem;
}

.event-card-stats span {
  color: var(--ic-muted);
  font-size: 0.76rem;
  margin-top: 3px;
}

.event-primary-actions {
  display: grid;
  gap: 5px;
  grid-template-columns: minmax(170px, 1.1fr) minmax(130px, 0.8fr) minmax(155px, 0.9fr);
}

.event-main-button {
  align-items: center;
  background: var(--ic-brand);
  border-radius: 8px;
  color: #fff !important;
  display: flex;
  font-size: 0.82rem;
  font-weight: 850;
  gap: 7px;
  justify-content: center;
  min-height: 35px;
  padding: 6px 8px;
  text-align: center;
}

.event-main-button.secondary-main {
  background: var(--ic-soft);
  color: var(--ic-brand) !important;
}

.event-primary-actions button.event-main-button {
  appearance: none;
  border: 0;
  cursor: pointer;
  font-family: inherit;
}

.event-primary-actions .publish-event {
  background: #6f587d;
}

.event-cover-body small {
  display: block;
  margin-top: 5px;
  color: var(--ic-muted);
  line-height: 1.45;
}

.event-cover-actions {
  display: grid;
  gap: 4px;
  grid-template-columns: repeat(4, minmax(80px, 1fr));
}

.event-action {
  background: var(--ic-bg);
  border: 1px solid transparent;
  border-radius: 8px;
  color: var(--ic-muted);
  cursor: pointer;
  font: inherit;
  font-size: 0.7rem;
  font-weight: 800;
  padding: 6px 4px;
  text-align: center;
}

.event-action:hover {
  color: var(--ic-brand);
}

.event-action.delete-event {
  color: #b9384f;
}

.event-creator {
  display: grid;
  grid-template-columns: 1fr;
}

.creator-intro {
  background: #fff;
  border-bottom: 1px solid var(--ic-line);
  min-height: auto;
  padding: 28px 34px 22px;
}

.creator-intro .eyebrow {
  color: var(--ic-brand) !important;
}

.creator-intro h2 {
  color: var(--ic-ink) !important;
  font-size: 2rem;
  max-width: 520px;
}

.creator-intro p {
  color: var(--ic-muted);
  line-height: 1.55;
  margin: 10px 0 0;
  max-width: 650px;
}

.creator-form {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: clamp(24px, 4vw, 42px);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  background: #fff;
}

.creator-form label {
  display: grid;
  gap: 8px;
  color: var(--ic-ink);
  font-size: 0.88rem;
  font-weight: 900;
}

.creator-form input,
.creator-form select {
  width: 100%;
  min-height: 54px;
  padding: 0 15px;
  border: 1px solid var(--ic-line);
  border-radius: 8px;
  background: #fff;
  color: var(--ic-ink);
  font: inherit;
  outline: none;
}

.creator-form input:focus,
.creator-form select:focus {
  background: #fff;
  border-color: rgba(193, 63, 104, 0.75);
  box-shadow: 0 0 0 4px rgba(193, 63, 104, 0.12);
}

.creator-form input[readonly] {
  background: #f1eeeb;
  color: var(--ic-muted);
  cursor: not-allowed;
}

.external-url-field[hidden],
#premiumDesignGroup[hidden],
#premiumModeToggleGroup[hidden],
.premium-content-fields[hidden] {
  display: none;
}

#templateGroup[hidden] {
  display: none;
}

.mode-help {
  color: var(--ic-muted);
  font-size: 0.74rem;
  font-weight: 650;
  line-height: 1.4;
}

.creator-form .premium-mode-toggle {
  align-items: center;
  background: #fbfafc;
  border: 1px solid #ded8e1;
  border-left: 3px solid #8b718d;
  border-radius: 8px;
  cursor: pointer;
  display: flex;
  flex-direction: row;
  gap: 0.9rem;
  grid-column: 1 / -1;
  min-height: 76px;
  padding: 0.9rem 1rem;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.creator-form .premium-mode-toggle input {
  appearance: none;
  border: 0;
  height: 1px;
  margin: 0;
  min-height: 0;
  opacity: 0;
  padding: 0;
  position: absolute;
  width: 1px;
}

.premium-mode-mark {
  align-items: center;
  background: #eee9f0;
  border-radius: 7px;
  color: #755a78;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 0.72rem;
  height: 2.35rem;
  justify-content: center;
  width: 2.35rem;
}

.premium-mode-toggle-control {
  background: #d2cdd5;
  border-radius: 999px;
  flex: 0 0 auto;
  height: 1.4rem;
  margin-left: auto;
  position: relative;
  transition: background 0.2s ease;
  width: 2.6rem;
}

.premium-mode-toggle-control::after {
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 1px 4px rgba(35, 25, 39, 0.22);
  content: "";
  height: 1rem;
  left: 0.2rem;
  position: absolute;
  top: 0.2rem;
  transition: transform 0.2s ease;
  width: 1rem;
}

.premium-mode-toggle input:checked ~ .premium-mode-toggle-control {
  background: #6f4e73;
}

.premium-mode-toggle input:checked ~ .premium-mode-toggle-control::after {
  transform: translateX(1.2rem);
}

.premium-mode-toggle input:focus-visible ~ .premium-mode-toggle-control {
  outline: 3px solid rgba(111, 78, 115, 0.2);
  outline-offset: 2px;
}

.premium-mode-toggle:has(input:checked) {
  background: #fff;
  border-color: #c9b9cc;
  border-left-color: #6f4e73;
  box-shadow: 0 8px 24px rgba(63, 43, 67, 0.08);
}

.premium-mode-toggle:has(input:checked) .premium-mode-mark {
  background: #6f4e73;
  color: #fff;
}

.premium-mode-toggle-copy {
  display: grid;
  gap: 0.15rem;
}

.premium-mode-toggle-copy strong {
  color: var(--ic-ink);
  font-size: 0.9rem;
  letter-spacing: 0;
}

.premium-mode-toggle-copy small {
  color: var(--ic-muted);
  font-size: 0.76rem;
  line-height: 1.4;
}

@media (max-width: 520px) {
  .creator-form .premium-mode-toggle {
    gap: 0.7rem;
    padding: 0.8rem;
  }

  .premium-mode-mark {
    height: 2rem;
    width: 2rem;
  }

  .premium-mode-toggle-copy small {
    font-size: 0.71rem;
  }
}

.creator-form button,
.creator-form .form-message {
  grid-column: 1 / -1;
}

.form-message {
  min-height: 22px;
  margin: 0;
  color: var(--ic-brand);
  font-weight: 850;
}

.host-account-form .account-creator-summary { background: linear-gradient(135deg,#fff8ed,#fff); border: 1px solid #ead6b5; border-radius: 8px; grid-column: 1 / -1; padding: 16px 18px; }
.account-creator-summary strong,.account-creator-summary p { display: block; margin: 0; }
.account-creator-summary strong { color: #68421e; font-size: .88rem; }
.account-creator-summary p { color: var(--ic-muted); font-size: .76rem; line-height: 1.45; margin-top: 5px; }
.host-account-form .premium-mode-toggle.is-disabled { cursor: not-allowed; opacity: .58; }
.account-creator-result { align-items: center; background: #eef9f6; border-top: 1px solid #b7e2db; display: grid; gap: 12px; grid-template-columns: auto minmax(0,1fr) auto auto; padding: 20px clamp(24px,4vw,42px); }
.account-creator-result[hidden] { display: none; }
.account-creator-result > span { align-items: center; background: #087f72; border-radius: 50%; color: #fff; display: inline-flex; font-weight: 900; height: 38px; justify-content: center; width: 38px; }
.account-creator-result strong,.account-creator-result p { display: block; margin: 0; }
.account-creator-result p { color: var(--ic-muted); font-size: .75rem; margin-top: 4px; }
.account-creator-result .button { white-space: nowrap; }

@media (max-width: 720px) {
  .account-creator-result { grid-template-columns: auto 1fr; }
  .account-creator-result .button { grid-column: 1 / -1; }
}

@media (max-width: 980px) {
  .studio-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .studio-profile { margin-left: 0; }

  .studio-heading-actions {
    justify-content: flex-start;
  }

  .event-creator {
    grid-template-columns: 1fr;
  }

  .studio-summary {
    grid-template-columns: repeat(2, 1fr);
  }

  .event-cover {
    grid-template-columns: minmax(230px, 38%) minmax(0, 1fr);
  }

  .event-cover-actions {
    grid-template-columns: repeat(3, 1fr);
  }

  .events-toolbar {
    grid-template-columns: 1fr 1fr;
  }

  .events-toolbar label:first-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 660px) {
  .topbar {
    border-radius: 26px;
    flex-direction: column;
    align-items: flex-start;
  }

  .nav {
    width: 100%;
  }

  .nav a,
  .nav .nav-action {
    flex: 1;
    text-align: center;
    background: rgba(193, 63, 104, 0.08);
  }

  .workspace {
    width: min(100% - 22px, var(--ic-max));
    margin-top: 10px;
  }

  .events-toolbar {
    grid-template-columns: 1fr;
  }

  .events-toolbar label:first-child {
    grid-column: auto;
  }

  .event-cover {
    grid-template-columns: 1fr;
  }

  .settings-fields, .access-credentials { grid-template-columns: 1fr; }

  .event-cover-image {
    min-height: 280px;
  }

  .event-primary-actions,
  .event-cover-actions {
    grid-template-columns: 1fr 1fr;
  }

  .studio-summary,
  .event-gallery,
  .creator-form {
    grid-template-columns: 1fr;
  }

  .studio-section-head {
    align-items: flex-start;
    flex-direction: column;
  }
}

.ai-premium-dialog{width:min(1180px,calc(100% - 28px));max-height:92vh;padding:0;border:0;border-radius:28px;background:transparent;overflow:auto}.ai-premium-dialog::backdrop{background:rgba(30,20,24,.68);backdrop-filter:blur(5px)}
.ai-premium{position:relative;padding:28px;border-radius:28px;background:linear-gradient(135deg,#fff,#f8f2f4);border:1px solid rgba(143,49,88,.14)}
.ai-step-title{display:flex;align-items:center;gap:12px;margin-top:10px;padding-top:14px;border-top:1px solid rgba(143,49,88,.14)}.ai-step-title:first-child{margin-top:0;padding-top:0;border:0}.ai-step-title>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#8f3158;color:#fff;font-weight:800}.ai-step-title div{display:grid;gap:2px}.ai-step-title strong{font-size:17px}.ai-step-title small{font-weight:400;color:#765f68}.ai-import{padding:12px;border:1px dashed rgba(143,49,88,.3);border-radius:14px}.ai-import summary{cursor:pointer;font-weight:700}.ai-import[open]{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px}.ai-import[open] summary{grid-column:1/-1}
.ai-premium-grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(360px,1.2fr);gap:22px}.ai-premium-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ai-premium-form label,.ai-output label{display:grid;gap:7px;font-weight:700}.ai-premium-form .wide-field{grid-column:1/-1}.ai-actions{display:flex;gap:10px}.ai-output{display:flex;flex-direction:column;gap:14px}.ai-preview-heading{display:grid;gap:3px}.ai-preview-heading strong{font-size:18px}.ai-preview-heading small{color:#765f68}#aiPreview{width:100%;min-height:620px;flex:1;border:1px solid rgba(0,0,0,.12);border-radius:18px;background:#fff}.ai-advanced{padding:13px 15px;border:1px solid rgba(143,49,88,.18);border-radius:14px;background:rgba(255,255,255,.7)}.ai-advanced summary{cursor:pointer;font-weight:700}.ai-advanced p{color:#765f68;font-size:13px}.ai-advanced label{margin-top:10px}#aiJson{min-height:280px;font:12px/1.5 ui-monospace,monospace}@media(max-width:900px){.ai-premium-grid{grid-template-columns:1fr}}
.ai-premium-form{display:flex;flex-direction:column;min-height:650px;padding:0;overflow:hidden;background:#fff}.ai-conversation-head{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;padding:18px 20px;border-bottom:1px solid #eee3e7}.ai-conversation-head div{display:grid}.ai-conversation-head small{color:#806873}.ai-conversation-head progress{grid-column:1/-1;width:100%;height:5px;accent-color:#8f3158}.ai-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:14px;background:linear-gradient(135deg,#8f3158,#c06a84);color:#fff;box-shadow:0 6px 16px rgba(143,49,88,.2)}.ai-chat-step{padding:22px 20px;flex:1}.ai-message{display:flex;gap:11px;align-items:flex-start;margin-bottom:22px}.ai-message>div{max-width:85%;padding:14px 16px;border-radius:6px 18px 18px 18px;background:#f7eef1}.ai-message strong{font-family:var(--font-display,serif);font-size:18px}.ai-message p{margin:5px 0 0;color:#69545d;line-height:1.45}.ai-response-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ai-response-grid .wide-field{grid-column:1/-1}.ai-response-grid label{font-size:13px;color:#5e4b53}.ai-response-grid input,.ai-response-grid select,.ai-response-grid textarea{background:#fff;border-color:#dfd1d6}.ai-conversation-actions{display:flex;gap:10px;align-items:center;padding:16px 20px;border-top:1px solid #eee3e7;background:#fff}.ai-conversation-actions .primary{margin-left:auto}.ai-premium-form>.form-message{padding:0 20px 14px;margin:0}.ai-live-summary{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-radius:18px;background:linear-gradient(135deg,#3c2931,#6e3c4e);color:#fff}.ai-live-summary div{display:grid;gap:2px}.ai-live-summary span,.ai-live-summary small{color:#e6d6dc}.ai-live-summary strong{font-size:20px}.ai-summary-progress{display:grid;place-items:center;width:54px;height:54px;border:1px solid rgba(255,255,255,.35);border-radius:50%;font-weight:800;color:#fff!important}@media(max-width:650px){.ai-response-grid{grid-template-columns:1fr}.ai-response-grid .wide-field{grid-column:auto}.ai-conversation-actions{flex-wrap:wrap}}
.ai-preview-idle,.ai-generation-wait{display:grid;min-height:540px;place-items:center;align-content:center;padding:42px;text-align:center;border:1px solid #eadfe3;border-radius:22px;background:radial-gradient(circle at 50% 30%,#fff,#f8f1f4)}.ai-preview-idle>span{display:grid;place-items:center;width:58px;height:58px;margin-bottom:14px;border:1px solid #d8c3ca;border-radius:20px;background:#fff;color:#8f3158;font-size:24px;box-shadow:0 15px 35px rgba(83,42,57,.09)}.ai-preview-idle strong,.ai-generation-wait strong{font-family:var(--font-display,serif);font-size:25px;color:#3f2d34}.ai-preview-idle p,.ai-generation-wait p{max-width:430px;margin:9px auto 0;color:#766169;line-height:1.55}.ai-generation-wait{background:radial-gradient(circle at 50% 32%,#fff 0,#f9f1f4 55%,#f3e8ec 100%)}.ai-generation-wait small{margin-top:18px;color:#9a506b;font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.ai-generation-wait em{margin-top:12px;color:#907b83;font-size:11px;font-style:normal}.ai-generation-orbit{position:relative;display:grid;width:78px;height:78px;place-items:center}.ai-generation-orbit i{position:absolute;inset:0;border:1px solid #dbc5cd;border-top-color:#8f3158;border-radius:50%;animation:aiOrbit 1.15s linear infinite}.ai-generation-orbit span{display:grid;width:52px;height:52px;place-items:center;border-radius:18px;background:linear-gradient(135deg,#8f3158,#bd6982);color:#fff;font-size:21px;box-shadow:0 12px 30px rgba(143,49,88,.25)}.ai-generation-line{position:relative;width:min(330px,80%);height:3px;margin-top:24px;overflow:hidden;border-radius:99px;background:#e8dce0}.ai-generation-line i{position:absolute;inset:0 auto 0 0;width:38%;border-radius:inherit;background:linear-gradient(90deg,transparent,#8f3158,#d59aae,transparent);animation:aiProgress 1.6s ease-in-out infinite}.ai-preview-stage{display:flex;flex:1;flex-direction:column;gap:14px}.ai-preview-stage[hidden],.ai-preview-idle[hidden],.ai-generation-wait[hidden]{display:none!important}@keyframes aiOrbit{to{transform:rotate(360deg)}}@keyframes aiProgress{from{transform:translateX(-110%)}to{transform:translateX(360%)}}@media(prefers-reduced-motion:reduce){.ai-generation-orbit i,.ai-generation-line i{animation:none}}@media(max-width:650px){.ai-preview-idle,.ai-generation-wait{min-height:360px;padding:28px 20px}.ai-preview-idle strong,.ai-generation-wait strong{font-size:21px}}
.ai-response-grid .ai-upload-card{position:relative;display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;min-height:82px;padding:12px 14px;gap:2px 10px;align-items:center;text-align:left;border:1.5px dashed #cdb7bf;border-radius:14px;background:linear-gradient(145deg,#fff,#fbf6f8);cursor:pointer;transition:.2s ease;overflow:hidden}.ai-upload-card:hover,.ai-upload-card.is-dragging{border-color:#8f3158;background:#f8edf1;transform:translateY(-1px);box-shadow:0 7px 18px rgba(83,42,57,.08)}.ai-upload-card.has-files{min-height:128px}.ai-upload-card input{position:absolute!important;width:1px!important;height:1px!important;opacity:0;pointer-events:none}.ai-upload-card .ai-upload-icon{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#f2e4e9;color:#8f3158;font-size:18px}.ai-upload-card strong{font-size:13px;color:#3c2931;align-self:end}.ai-upload-card small{font-size:11px;color:#725f66;line-height:1.25;align-self:start}.ai-upload-card em{display:none}.ai-upload-preview{display:none;grid-column:1/-1;width:100%;gap:5px;margin-top:7px}.ai-upload-card.has-files .ai-upload-preview{display:flex}.ai-upload-preview img{width:100%;height:64px;object-fit:cover;border-radius:8px}.ai-upload-preview--grid{display:none;grid-template-columns:repeat(6,1fr)}.ai-upload-card.has-files .ai-upload-preview--grid{display:grid}.ai-upload-preview--grid img{height:46px}.ai-upload-preview audio{width:100%;height:32px}.ai-upload-file{display:flex;width:100%;align-items:center;padding:7px;border-radius:8px;background:#f3e8ec;color:#563b46;font-size:12px;font-weight:700;word-break:break-word}
.ai-choice-group{margin:2px 0;padding:0;border:0}.ai-choice-group legend{margin-bottom:9px;font-size:13px;font-weight:700;color:#5e4b53}.ai-choice-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.ai-choice-grid button{display:grid;min-height:88px;padding:10px 7px;place-items:center;align-content:center;gap:2px;border:1px solid #e2d6da;border-radius:13px;background:#fff;color:#49363e;cursor:pointer;transition:.18s ease}.ai-choice-grid button:hover{border-color:#b47a8f;background:#fcf7f9}.ai-choice-grid button.is-selected{border-color:#8f3158;background:#f7e9ee;box-shadow:inset 0 0 0 1px #8f3158}.ai-choice-grid button>span{font-size:19px;color:#9a506b}.ai-choice-grid button strong{font-size:12px}.ai-choice-grid button small{font-size:10px;color:#806c74}.ai-choice-grid--tone{grid-template-columns:repeat(4,1fr)}.ai-choice-grid--tone button{min-height:66px}@media(max-width:650px){.ai-choice-grid,.ai-choice-grid--tone{grid-template-columns:repeat(2,1fr)}}
.ai-conversation-actions button:disabled{cursor:not-allowed;opacity:.46;filter:grayscale(.25);box-shadow:none}
.ai-names-field textarea{min-height:94px;resize:vertical;line-height:1.55}.ai-names-field>small{color:#806c74;font-size:11px;font-weight:500;line-height:1.4}.ai-dress-code{margin:2px 0;padding:16px;border:1px solid #e2d6da;border-radius:16px;background:linear-gradient(145deg,#fff,#fcf7f9)}.ai-dress-code>legend{padding:0 7px;font-size:14px;font-weight:800;color:#49363e}.ai-dress-code>p{margin:0 0 13px;color:#806c74;font-size:12px;line-height:1.45}.ai-dress-code>label{margin-top:13px}.ai-dress-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.ai-dress-options button{display:grid;min-height:88px;padding:10px 8px;place-items:center;align-content:center;gap:2px;border:1px solid #e2d6da;border-radius:13px;background:#fff;color:#49363e;cursor:pointer;transition:.18s ease}.ai-dress-options button:hover{border-color:#b47a8f;background:#fcf7f9;transform:translateY(-1px)}.ai-dress-options button.is-selected{border-color:#8f3158;background:#f7e9ee;box-shadow:inset 0 0 0 1px #8f3158}.ai-dress-options button>span{font-size:19px;color:#9a506b}.ai-dress-options button strong{font-size:12px}.ai-dress-options button small{font-size:10px;color:#806c74;line-height:1.25}@media(max-width:650px){.ai-dress-options{grid-template-columns:repeat(2,1fr)}}
.ai-suggestion-title{margin-top:3px;font-size:11px;font-weight:700;color:#907984}.ai-phrase-suggestions{display:flex;flex-wrap:wrap;gap:6px}.ai-phrase-suggestions button{padding:7px 10px;border:1px solid #e0d2d7;border-radius:999px;background:#fff;color:#664e58;font-size:11px;line-height:1.25;text-align:left;cursor:pointer;transition:.18s ease}.ai-phrase-suggestions button:hover,.ai-phrase-suggestions button.is-selected{border-color:#8f3158;background:#f7e9ee;color:#71354b}
.ai-location-stack{display:grid;gap:13px}.ai-location-card{margin:0;padding:14px;border:1px solid #e4d8dc;border-radius:17px;background:linear-gradient(145deg,#fff,#fcf8f9)}.ai-location-card legend{display:flex;align-items:center;gap:8px;padding:0 7px;color:#46323a}.ai-location-card legend span{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:#8f3158;color:#fff;font-size:11px}.ai-location-card legend strong{font-family:var(--font-display,serif);font-size:16px}.ai-map-field{position:relative}.ai-map-field input{padding-right:145px}.ai-map-field a{position:absolute;right:9px;bottom:9px;padding:6px 8px;border-radius:8px;background:#f0e8eb;color:#856d77;font-size:10px;font-weight:700;text-decoration:none;pointer-events:none}.ai-map-field a.is-ready{background:#e5f2e9;color:#287141;pointer-events:auto}.ai-location-card:focus-within{border-color:#bb899b;box-shadow:0 8px 22px rgba(83,42,57,.07)}@media(max-width:650px){.ai-map-field input{padding-right:12px}.ai-map-field a{position:static;margin-top:4px;text-align:center}}
.ai-event-type-picker{margin:0;padding:0;border:0}.ai-event-type-picker legend{margin-bottom:10px;font-size:13px;font-weight:700;color:#5e4b53}.ai-event-type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.ai-event-type-grid button{display:grid;min-height:112px;padding:12px 8px;place-items:center;align-content:center;gap:4px;border:1px solid #e2d5da;border-radius:16px;background:linear-gradient(145deg,#fff,#fcf8f9);color:#49363e;cursor:pointer;transition:.2s ease}.ai-event-type-grid button:hover{border-color:#b77f93;transform:translateY(-2px);box-shadow:0 8px 18px rgba(83,42,57,.08)}.ai-event-type-grid button.is-selected{border-color:#8f3158;background:#f7e9ee;box-shadow:inset 0 0 0 1px #8f3158}.ai-event-type-grid button>span{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:#f1e3e8;color:#8f3158;font-family:var(--font-display,serif);font-size:18px}.ai-event-type-grid button strong{font-size:13px}.ai-event-type-grid button small{font-size:10px;line-height:1.25;color:#806c74}@media(max-width:650px){.ai-event-type-grid{grid-template-columns:repeat(2,1fr)}.ai-event-type-grid button{min-height:100px}}
.ai-sheet-import{display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;padding:13px;border:1px dashed #cdb7bf;border-radius:14px;background:#fcf8fa}.ai-sheet-import>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#eee1e6;color:#8f3158;font-size:19px}.ai-sheet-import>div{display:grid;gap:2px}.ai-sheet-import small{color:#79666e;font-weight:400}.ai-sheet-import .button{margin:0;cursor:pointer;font-size:11px}@media(max-width:650px){.ai-sheet-import{grid-template-columns:38px 1fr}.ai-sheet-import .button{grid-column:1/-1;text-align:center}}
.ai-sheet-template{width:max-content;margin-top:5px;color:#8f3158;font-size:11px;font-weight:700;text-decoration:none;border-bottom:1px solid rgba(143,49,88,.3)}.ai-sheet-template:hover{border-color:#8f3158}
.request-decision{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border-radius:999px;background:#f3eee9;color:#78685f;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.request-decision.aceptada{background:#e6f5eb;color:#267143}.request-decision.bloqueada{background:#fae8e8;color:#a03535}
.ai-publish-panel{margin:0 20px 18px;padding:15px;border:1px solid #cfe3d5;border-radius:16px;background:#f4faf6}.ai-publish-panel>div:first-child{display:flex;align-items:center;gap:10px}.ai-publish-check{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#31734a;color:#fff;font-weight:800}.ai-publish-panel p{display:grid;margin:0}.ai-publish-panel small{color:#617166}.ai-publish-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.ai-publish-actions .button{min-height:auto;padding:9px 11px;font-size:11px}.ai-publish-actions .primary{margin-left:auto}.ai-publish-panel.is-published{border-color:#d7c28e;background:#fffaf0}.ai-publish-panel.is-published .ai-publish-check{background:#a67c2e}
.ai-config-panel{grid-column:1/-1;margin-top:8px;padding:18px;border:1px solid #ded1d6;border-radius:18px;background:linear-gradient(145deg,#fff,#faf5f7)}.ai-config-heading{display:flex;align-items:center;gap:11px}.ai-config-heading>span{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:#8f3158;color:#fff}.ai-config-heading h3,.ai-config-heading p{margin:0}.ai-config-heading>div{flex:1}.ai-config-badge{padding:6px 9px;border-radius:999px;background:#eee7ea;color:#715c65;font-size:10px}.ai-config-badge.is-connected{background:#e3f2e8;color:#287141}.ai-config-badge.has-error{background:#fae8e8;color:#a33}.ai-config-status{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.ai-config-status>div{padding:10px;border-radius:11px;background:#fff;border:1px solid #eee4e7}.ai-config-status dt{font-size:10px;color:#8a747d}.ai-config-status dd{margin:3px 0 0;font-size:12px;font-weight:700}.ai-config-message{font-size:12px;color:#705b64}.ai-config-instructions{margin-top:13px}.ai-config-instructions summary{cursor:pointer;font-weight:700}.ai-config-instructions pre{overflow:auto;padding:12px;border-radius:11px;background:#30262a;color:#f9edf1;font-size:11px;line-height:1.55}@media(max-width:650px){.ai-config-status{grid-template-columns:1fr}}
