/*
 * Shared component theme tokens
 * RSVP overlay, registry modals use these. Each template sets vars on [data-template-id].
 * Default = luxury-night (inherits from :root).
 */
:root {
  --shared-surface: rgba(var(--c-bg-rgb), 1);
  --shared-surface-alt: rgba(var(--c-surface-rgb), 1);
  --shared-text: #f1f5f9;
  --shared-text-muted: rgba(148, 163, 184, 0.9);
  --shared-text-inverse: rgba(var(--c-bg-rgb), 1);
  --shared-accent: var(--c-primary);
  --shared-accent-rgb: var(--c-primary-rgb);
  --shared-border: rgba(255, 255, 255, 0.1);
  --shared-border-muted: rgba(255, 255, 255, 0.05);
  --shared-radius: 1rem;
  --shared-radius-lg: 1.5rem;
  --shared-radius-full: 9999px;
  --shared-step-bg-visible: 1;
}

/* minimalist-01: light theme, square corners */
[data-template-id^="minimalist-01"] {
  --shared-surface: #FFFFFF;
  --shared-surface-alt: #F9F9F9;
  --shared-text: #1A1A1A;
  --shared-text-muted: #707070;
  --shared-text-inverse: #FFFFFF;
  --shared-accent: #707070;
  --shared-accent-rgb: 112, 112, 112;
  --shared-border: #E5E5E5;
  --shared-border-muted: #E5E5E5;
  --shared-radius: 0;
  --shared-radius-lg: 0;
  --shared-radius-full: 0;
  --shared-step-bg-visible: 0;
}

/* Apply tokens to RSVP overlay when template overrides exist */
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step],
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step] .bg-background-dark,
[data-template-id^="minimalist-01"] #rsvp-overlay .rsvp-sheet {
  background: var(--shared-surface) !important;
  border-radius: var(--shared-radius) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay .rsvp-sheet {
  border-color: var(--shared-border) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step] .rsvp-bg,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step] .absolute.inset-0.bg-black\/60,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="1"] .absolute.inset-0.z-0 {
  display: none !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay .rsvp-sheet .w-12,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="1"] [class*="rounded-full"]:not(.radio-indicator):not(.radio-indicator *) {
  background: var(--shared-border) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="1"] [class*="bg-primary"]:not(button):not(.selection-card):not(.selection-card *) {
  background: var(--shared-accent) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay .text-primary,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-i18n="rsvpForm.step1"],
[data-template-id^="minimalist-01"] #rsvp-overlay .text-xs.font-semibold.tracking-widest,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-i18n="rsvpForm.step2"],
[data-template-id^="minimalist-01"] #rsvp-overlay [data-i18n="rsvpForm.step3"],
[data-template-id^="minimalist-01"] #rsvp-overlay [data-i18n="rsvpForm.selectAll"] {
  color: var(--shared-accent) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-couple,
[data-template-id^="minimalist-01"] #rsvp-overlay .text-white,
[data-template-id^="minimalist-01"] #rsvp-overlay .text-slate-100,
[data-template-id^="minimalist-01"] #rsvp-overlay .text-slate-200,
[data-template-id^="minimalist-01"] #rsvp-overlay .text-slate-300,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="3"] .text-white,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] .text-slate-200,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] [data-i18n="rsvpForm.dietaryPrefs"] {
  color: var(--shared-text) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay .text-white\/60,
[data-template-id^="minimalist-01"] #rsvp-overlay .text-white\/40,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] .text-slate-400,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="3"] .text-slate-400 {
  color: var(--shared-text-muted) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay .selection-card {
  background: var(--shared-surface-alt) !important;
  border-color: var(--shared-border) !important;
  border-radius: var(--shared-radius) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay .selection-radio:checked + .selection-card {
  border-color: var(--shared-accent) !important;
  background: var(--shared-surface-alt) !important;
  box-shadow: none !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay .selection-radio:checked + .selection-card .radio-indicator,
[data-template-id^="minimalist-01"] #rsvp-overlay .selection-radio:checked + .selection-card .w-10.h-10 {
  background: var(--shared-accent) !important;
  border-color: var(--shared-accent) !important;
  color: var(--shared-text-inverse) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay .selection-radio:checked + .selection-card .radio-indicator span {
  background: var(--shared-text-inverse) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay .selection-card .w-10.h-10 {
  background: var(--shared-border) !important;
  color: var(--shared-accent) !important;
  border-radius: var(--shared-radius) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay .selection-card .radio-indicator {
  border-color: var(--shared-border) !important;
  border-radius: var(--shared-radius) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-step1-next,
[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-step2-next,
[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-step3-submit {
  background: var(--shared-text) !important;
  color: var(--shared-text-inverse) !important;
  border-radius: var(--shared-radius) !important;
  box-shadow: none !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-step1-next:hover,
[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-step2-next:hover,
[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-step3-submit:hover {
  background: #333 !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-step1-cancel {
  color: var(--shared-text-muted) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-step1-cancel:hover {
  color: var(--shared-text) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay header button,
[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-step1-close,
[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-step2-back,
[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-step3-back {
  color: var(--shared-text) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay header button:hover,
[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-step1-close:hover {
  background: var(--shared-border) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] h1,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] h1.text-primary,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="3"] h1,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="3"] h1.text-primary {
  color: var(--shared-text) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] label.bg-background-dark {
  background: var(--shared-surface) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] input {
  border-color: var(--shared-border) !important;
  background: var(--shared-surface) !important;
  border-radius: var(--shared-radius) !important;
  color: var(--shared-text) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] input::placeholder {
  color: var(--shared-text-muted) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] input:focus {
  border-color: var(--shared-accent) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] label.text-primary {
  color: var(--shared-accent) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] .bg-surface-dark,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] .rounded-3xl,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] .rounded-3xl.bg-surface-dark,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] div.bg-background-dark.rounded-full {
  background: var(--shared-surface-alt) !important;
  border-color: var(--shared-border) !important;
  border-radius: var(--shared-radius) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] [class*="bg-slate-700"] {
  background: var(--shared-border) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] [class*="rounded-full"][class*="bg-primary"]:not(button) {
  background: var(--shared-accent) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-pax-dec {
  background: var(--shared-border) !important;
  color: var(--shared-text) !important;
  border-radius: var(--shared-radius) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-pax-dec:hover {
  background: var(--shared-accent) !important;
  color: var(--shared-text-inverse) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-pax-inc {
  background: var(--shared-text) !important;
  color: var(--shared-text-inverse) !important;
  border-radius: var(--shared-radius) !important;
  box-shadow: none !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-pax-inc:hover {
  background: #333 !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-pax-count {
  color: var(--shared-text) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-dietary label:not(:has(.dietary-chip:checked)) > div {
  border-color: var(--shared-border) !important;
  background: var(--shared-surface-alt) !important;
  color: var(--shared-text) !important;
  border-radius: var(--shared-radius) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-dietary label:has(.dietary-chip:checked) > div {
  border-color: var(--shared-text) !important;
  background: var(--shared-text) !important;
  color: var(--shared-text-inverse) !important;
  border-radius: var(--shared-radius) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #rsvp-dietary label > div:hover {
  border-color: var(--shared-accent) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="2"] .material-symbols-outlined.text-primary,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="3"] .material-symbols-outlined.text-primary {
  color: var(--shared-accent) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="3"] [class*="bg-slate-700"] {
  background: var(--shared-border) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="3"] [class*="rounded-full"][class*="bg-primary"]:not(button) {
  background: var(--shared-accent) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="3"] .bg-surface-dark,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="3"] [class*="bg-surface-dark"],
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="3"] .rounded-2xl {
  background: var(--shared-surface-alt) !important;
  border-color: var(--shared-border) !important;
  border-radius: var(--shared-radius) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="3"] .border-primary\/10,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="3"] [class*="border-primary"] {
  border-color: var(--shared-border) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"],
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] .bg-background-dark,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] [class*="from-background-dark"],
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] [class*="via-background-dark"] {
  background: var(--shared-surface) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] .absolute.inset-0.pointer-events-none [class*="from-primary"],
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] .absolute.inset-0.pointer-events-none [class*="bg-primary"] {
  display: none !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-icon-wrap {
  border-color: var(--shared-border) !important;
  background: var(--shared-surface-alt) !important;
  box-shadow: none !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-icon-wrap .absolute.inset-0 {
  display: none !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] .text-slate-100,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] .text-slate-300,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] .text-primary {
  color: var(--shared-text) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-status-row [class*="text-primary"] {
  color: var(--shared-accent) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] #confirm-name {
  color: var(--shared-accent) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] .bg-surface-dark,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] [class*="bg-surface-dark"],
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] .border-primary,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] [class*="border-primary"],
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] .rounded-2xl,
[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-status-row,
[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] [class*="bg-primary"] {
  background: var(--shared-surface-alt) !important;
  border-color: var(--shared-border) !important;
  border-radius: var(--shared-radius) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay [data-rsvp-step="confirmation"] .material-symbols-outlined.text-primary,
[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-icon {
  color: var(--shared-accent) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-status-badge {
  border-radius: var(--shared-radius) !important;
  background: var(--shared-surface-alt) !important;
  color: var(--shared-text) !important;
  border: 1px solid var(--shared-border) !important;
  box-shadow: none !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-status-badge[class*="amber"],
[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-status-badge[class*="green"] {
  background: var(--shared-surface-alt) !important;
  color: var(--shared-text) !important;
  border-color: var(--shared-border) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-status-dot {
  background: var(--shared-accent) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-icon-wrap[class*="amber"] {
  border-color: var(--shared-border) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-icon[class*="amber"] {
  color: var(--shared-accent) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-change-rsvp {
  border-radius: var(--shared-radius) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-add-cal {
  background: var(--shared-text) !important;
  color: var(--shared-text-inverse) !important;
  border-radius: var(--shared-radius) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-back {
  background: transparent !important;
  border-color: var(--shared-border) !important;
  color: var(--shared-text) !important;
  border-radius: var(--shared-radius) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-back:hover {
  background: var(--shared-surface-alt) !important;
}

[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-change-rsvp .material-symbols-outlined,
[data-template-id^="minimalist-01"] #rsvp-overlay #confirm-change-rsvp span {
  color: var(--shared-text-muted) !important;
}

