/* One notification surface for the website, Booking and dashboard. */
body :is(.site-notice,.stay-error,.services-error,.gallery-notice,.gallery-upload-error,.studio-engine-error,.studio-status,.engine-site form div[class~="bg-destructive/5"]:has(>svg),.engine-site form div[class~="bg-tone-emerald-soft"]:has(>svg)),
body [data-sonner-toaster] [data-sonner-toast][data-styled='true'] {
  --notice-accent: var(--gold-text, var(--public-gold-light, #806725));
  box-sizing: border-box;
  min-width: 0;
  padding: 18px 20px 18px 54px;
  border: 1px solid var(--border, var(--line, #dedbd3));
  border-inline-start: 3px solid var(--notice-accent);
  border-radius: var(--radius, 2px);
  background: var(--card, var(--paper, #f7f6f3));
  color: var(--foreground, var(--ink, #0b172a));
  box-shadow: 0 8px 28px #0613270d;
  font-family: var(--font, var(--ui-font-body, 'Manrope', Arial, sans-serif));
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: normal;
  text-align: start;
  overflow-wrap: anywhere;
}
body :is(.site-notice,.stay-error,.services-error,.gallery-notice,.gallery-upload-error,.studio-engine-error,.studio-status,.engine-site form div[class~="bg-destructive/5"]:has(>svg),.engine-site form div[class~="bg-tone-emerald-soft"]:has(>svg)) {
  position: relative;
}
body :is(.site-notice--error,.stay-error,.services-error,.gallery-notice.is-error,.gallery-upload-error,.studio-engine-error,.studio-status[role="alert"],.engine-site form div[class~="bg-destructive/5"]:has(>svg)),
body [data-sonner-toaster] [data-sonner-toast][data-type='error'] {
  --notice-accent: var(--destructive, var(--error, #8b2424));
}
body .site-notice--success,
body [data-sonner-toaster] [data-sonner-toast][data-type='success'] {
  --notice-accent: color-mix(in srgb, var(--foreground, var(--ink, #0b172a)) 35%, #498a61);
}
body .site-notice--warning,
body [data-sonner-toaster] [data-sonner-toast][data-type='warning'] {
  --notice-accent: var(--gold-text, #806725);
}
body :is(.site-notice,.stay-error,.services-error,.gallery-notice,.gallery-upload-error,.studio-engine-error,.studio-status,.engine-site form div[class~="bg-destructive/5"]:has(>svg),.engine-site form div[class~="bg-tone-emerald-soft"]:has(>svg))::before {
  content: 'i' / '';
  position: absolute;
  inset-inline-start: 18px;
  top: 22px;
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border: 1px solid currentColor;
  border-radius: 50%;
  color: var(--notice-accent);
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
}
body :is(.site-notice--error,.stay-error,.services-error,.gallery-notice.is-error,.gallery-upload-error,.studio-engine-error,.studio-status[role="alert"],.engine-site form div[class~="bg-destructive/5"]:has(>svg))::before,
body .site-notice--warning::before {
  content: '!' / '';
}
body .site-notice--success::before {
  content: '✓' / '';
}
body :is(.site-notice,.stay-error,.services-error,.gallery-notice,.gallery-upload-error,.studio-engine-error,.studio-status,.engine-site form div[class~="bg-destructive/5"]:has(>svg),.engine-site form div[class~="bg-tone-emerald-soft"]:has(>svg)):has(> svg)::before {
  display: none;
}
body :is(.site-notice,.stay-error,.services-error,.gallery-notice,.gallery-upload-error,.studio-engine-error,.studio-status,.engine-site form div[class~="bg-destructive/5"]:has(>svg),.engine-site form div[class~="bg-tone-emerald-soft"]:has(>svg)) > svg,
body [data-sonner-toaster] [data-sonner-toast] [data-icon] {
  position: absolute;
  inset-inline-start: 18px;
  top: 23px;
  width: 20px;
  height: 20px;
  margin: 0;
  color: var(--notice-accent);
  flex-shrink: 0;
}
body :is(.site-notice,.stay-error,.services-error,.gallery-notice,.gallery-upload-error,.studio-engine-error,.studio-status,.engine-site form div[class~="bg-destructive/5"]:has(>svg),.engine-site form div[class~="bg-tone-emerald-soft"]:has(>svg)) p {
  margin: 0;
  color: inherit;
}
body :is(.site-notice,.stay-error,.services-error,.gallery-notice,.gallery-upload-error,.studio-engine-error,.studio-status,.engine-site form div[class~="bg-destructive/5"]:has(>svg),.engine-site form div[class~="bg-tone-emerald-soft"]:has(>svg)) a {
  color: inherit;
  text-underline-offset: 3px;
}
body :is(.site-notice,.stay-error,.services-error,.gallery-notice,.gallery-upload-error,.studio-engine-error,.studio-status,.engine-site form div[class~="bg-destructive/5"]:has(>svg),.engine-site form div[class~="bg-tone-emerald-soft"]:has(>svg)):focus-visible {
  outline: 2px solid var(--notice-accent);
  outline-offset: 3px;
}
body [data-sonner-toaster] {
  max-width: calc(100% - 32px);
  --normal-bg: var(--card, #f7f6f3);
  --normal-text: var(--foreground, #0b172a);
  --normal-border: var(--border, #dedbd3);
}
body [data-sonner-toaster] [data-sonner-toast][data-styled='true'] {
  padding-inline-end: 56px;
}
body [data-sonner-toaster] [data-sonner-toast][data-styled='true'] [data-title] {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5;
}
body [data-sonner-toaster] [data-sonner-toast][data-styled='true'] [data-description] {
  color: inherit;
  opacity: 0.85;
  font-size: 0.875rem;
  line-height: 1.6;
}
body [data-sonner-toaster] [data-sonner-toast][data-styled='true'] [data-close-button] {
  inset: 8px 8px auto auto;
  transform: none;
  width: 44px;
  height: 44px;
  border: 1px solid var(--border, #dedbd3);
  border-radius: 2px;
  background: transparent;
  color: inherit;
}
body [data-sonner-toaster] [data-sonner-toast][data-styled='true'] [data-button] {
  min-height: 44px;
  height: auto;
  padding: 8px 14px;
  border-radius: 2px;
  background: var(--public-navy, var(--navy, #061327));
  color: var(--public-gold-light, var(--gold-light, #d7b96d));
  font: inherit;
}
body .ui-field-error {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 8px;
  padding-inline-start: 10px;
  border-inline-start: 2px solid var(--destructive, #8b2424);
  color: var(--destructive, #8b2424);
  font: inherit;
  font-size: 0.875rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
@media (max-width: 480px) {
  body :is(.site-notice,.stay-error,.services-error,.gallery-notice,.gallery-upload-error,.studio-engine-error,.studio-status,.engine-site form div[class~="bg-destructive/5"]:has(>svg),.engine-site form div[class~="bg-tone-emerald-soft"]:has(>svg)) {
    padding: 16px 16px 16px 48px;
  }
  body :is(.site-notice,.stay-error,.services-error,.gallery-notice,.gallery-upload-error,.studio-engine-error,.studio-status,.engine-site form div[class~="bg-destructive/5"]:has(>svg),.engine-site form div[class~="bg-tone-emerald-soft"]:has(>svg))::before,
  body :is(.site-notice,.stay-error,.services-error,.gallery-notice,.gallery-upload-error,.studio-engine-error,.studio-status,.engine-site form div[class~="bg-destructive/5"]:has(>svg),.engine-site form div[class~="bg-tone-emerald-soft"]:has(>svg)) > svg {
    inset-inline-start: 14px;
    top: 19px;
  }
}

/* Compatibility with the unchanged production field and checkout markup. */
body .ui-field-error {border:0;border-inline-start:2px solid var(--destructive,#8b2424);border-radius:0;background:transparent;padding:0;padding-inline-start:10px;}
body .engine-site form div[class~="bg-destructive/5"]:has(>svg) {border-color:var(--border,#dedbd3)!important;border-inline-start-color:var(--notice-accent)!important;}
