/* lynbro-oksana — Amelia v3 dark luxury overrides
 * Author: lynbro aps · lynbro.dk
 *
 * Real selectors verified live on /booking/:
 *   .amelia-v2-booking      = root container
 *   .am-fs__wrapper         = whole frontend wrapper
 *   .am-fs-sb               = left sidebar (Service Selection / Date & Time stepper)
 *   .am-fs__main            = right main panel
 *   .am-fs__main-heading    = step title
 *   .am-fs__main-content    = main step body
 *   .am-fs__main-footer     = footer with CTA buttons
 *   .am-fs__init-form       = form rows in initial step
 *   .am-button.am-button--primary = primary CTA
 *   .el-input__wrapper / .el-input__inner = Element-UI inputs
 *   .el-form-item__label    = form labels
 *   .am-select / .am-adv-select = dropdowns
 */

/* Root container — transparent, sit on theme bg */
.amelia-v2-booking,
.amelia-v2-booking .am-fs__wrapper {
  background: transparent !important;
  color: #F5EDE0 !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  border-radius: 6px;
  overflow: hidden;
}

/* Hide Amelia's google-fonts CDN preconnect link tags (GDPR / brand) */
.amelia-v2-booking link[href*="fonts.googleapis"],
.amelia-v2-booking link[href*="fonts.gstatic"] { display: none !important; }

/* ============ SIDEBAR (was bright blue) ============ */
.amelia-v2-booking .am-fs-sb {
  border-right: 1px solid rgba(226,191,136, 0.4) !important;
  color: #F5EDE0 !important;
}
.amelia-v2-booking .am-fs-sb__menu,
.amelia-v2-booking .am-fs-sb__menu-text,
.amelia-v2-booking .am-fs-sb__footer {
  background: transparent !important;
  color: #F5EDE0 !important;
}
.amelia-v2-booking .am-fs-sb__step {
  background: transparent !important;
  border-bottom: 1px solid rgba(226,191,136, 0.18) !important;
  padding: 0.85rem 1rem !important;
}
.amelia-v2-booking .am-fs-sb__step-heading {
  color: #F5EDE0 !important;
  font-family: 'Cinzel', Georgia, serif !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
}
.amelia-v2-booking .am-fs-sb__step-icon {
  color: #E2BF88 !important;
}
.amelia-v2-booking .am-fs-sb__step-checker,
.amelia-v2-booking .am-fs-sb__step-checker-selected {
  background: transparent !important;
  border: 1px solid #E2BF88 !important;
  color: #E2BF88 !important;
}
.amelia-v2-booking .am-fs-sb__step-checker-selected {
  color: #1A0710 !important;
}

/* ============ MAIN PANEL (was white) ============ */
.amelia-v2-booking .am-fs__main,
.amelia-v2-booking .am-fs__main-inner,
.amelia-v2-booking .am-fs__main-content,
.amelia-v2-booking .am-fs__main-heading,
.amelia-v2-booking .am-fs__main-footer {
  color: #F5EDE0 !important;
}
.amelia-v2-booking .am-fs__main-heading-inner-title {
  color: #E2BF88 !important;
  font-family: 'Cinzel', Georgia, serif !important;
  letter-spacing: 0.06em !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
}

/* ============ FORM FIELDS + LABELS ============ */
.amelia-v2-booking .am-fs__init-form__label,
.amelia-v2-booking .el-form-item__label,
.amelia-v2-booking label {
  color: #E2BF88 !important;
  font-family: 'Cinzel', Georgia, serif !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
}

/* Element-UI inputs (Amelia bundles them) */
.amelia-v2-booking .el-input__wrapper {
  border: 1px solid #722F37 !important;
  border-radius: 2px !important;
  box-shadow: none !important;
}
.amelia-v2-booking .el-input__wrapper:hover { border-color: #E2BF88 !important; }
.amelia-v2-booking .el-input__wrapper.is-focus,
.amelia-v2-booking .el-input__wrapper:focus-within {
  border-color: #E2BF88 !important;
  box-shadow: 0 0 0 1px #E2BF88 !important;
}
.amelia-v2-booking .el-input__inner {
  background: transparent !important;
  color: #F5EDE0 !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
}
.amelia-v2-booking .el-input__inner::placeholder {
  color: rgba(245, 237, 224, 0.45) !important;
}
.amelia-v2-booking .el-input__icon,
.amelia-v2-booking .el-icon {
  color: #E2BF88 !important;
}

/* Amelia custom selects */
.amelia-v2-booking .am-select,
.amelia-v2-booking .am-adv-select,
.amelia-v2-booking .am-select-wrapper,
.amelia-v2-booking .am-adv-select__wrapper {
  border: 1px solid #722F37 !important;
  color: #F5EDE0 !important;
  border-radius: 2px !important;
}
.amelia-v2-booking .am-select:hover,
.amelia-v2-booking .am-adv-select:hover {
  border-color: #E2BF88 !important;
}

/* Select dropdown menu */
.el-popper.is-light,
.el-select-dropdown {
  border: 1px solid #E2BF88 !important;
  color: #F5EDE0 !important;
}
.el-select-dropdown__item {
  color: #F5EDE0 !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
}
.el-select-dropdown__item:hover,
.el-select-dropdown__item.hover,
.el-select-dropdown__item.is-selected {
  color: #E2BF88 !important;
}

/* ============ BUTTONS ============ */
.amelia-v2-booking .am-button.am-button--primary,
.amelia-v2-booking .am-button.am-button--filled,
.amelia-v2-booking .am-button-continue,
.amelia-v2-booking .am-package-popup-continue {
  border: 1px solid #E2BF88 !important;
  color: #1A0710 !important;
  font-family: 'Cinzel', Georgia, serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
  padding: 0.85rem 2rem !important;
  box-shadow: none !important;
  transition: background-color .2s ease, color .2s ease !important;
}
.amelia-v2-booking .am-button.am-button--primary:hover,
.amelia-v2-booking .am-button-continue:hover {
  color: #1A0710 !important;
}
.amelia-v2-booking .am-button.am-button--default {
  background: transparent !important;
  border: 1px solid #E2BF88 !important;
  color: #E2BF88 !important;
}
.amelia-v2-booking .am-button__inner {
  color: inherit !important;
  font-family: inherit !important;
}

/* Sidebar collapse menu link */
.amelia-v2-booking .am-fs-sb__menu-text {
  font-family: 'Cinzel', Georgia, serif !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  font-size: 0.7rem !important;
  color: #E2BF88 !important;
}

/* ============ EMPTY STATE (no services) ============ */
.amelia-v2-booking .am-no-services {
  background: rgba(26, 7, 16, 0.7) !important;
  border: 1px solid rgba(226,191,136, 0.4) !important;
  border-radius: 6px !important;
  padding: 3rem 2rem !important;
  color: #F5EDE0 !important;
}
.amelia-v2-booking .am-no-services-text,
.amelia-v2-booking .am-no-services-text-2 {
  color: #F5EDE0 !important;
}
.amelia-v2-booking .am-no-services-oops {
  color: #E2BF88 !important;
  font-family: 'Cinzel', Georgia, serif !important;
  letter-spacing: 0.06em;
}

/* ============ CALENDAR / DATE PICKER ============ */
.el-picker__popper.el-popper,
.el-date-picker {
  border: 1px solid #E2BF88 !important;
  color: #F5EDE0 !important;
}
.el-date-table th,
.el-date-table td span {
  color: #F5EDE0 !important;
}
.el-date-table td.today span { color: #E2BF88 !important; font-weight: 700 !important; }
.el-date-table td.current:not(.disabled) span,
.el-date-table td.selected span {
  background-color: #E2BF88 !important;
  color: #1A0710 !important;
  border-radius: 2px;
}

/* ============ STEPPER POPUP / SHEET ============ */
.am-slide-popup__block,
.am-slide-popup__block-inner,
.am-slide-popup__block-footer {
  background: #1A0710 !important;
  color: #F5EDE0 !important;
  border-color: #E2BF88 !important;
}

/* ============ ICONS ============ */
.amelia-v2-booking [class*="am-icon"] {
  color: #E2BF88 !important;
}

/* ============ LINKS inside widget ============ */
.amelia-v2-booking a {
  color: #E2BF88 !important;
  text-decoration: none !important;
}
.amelia-v2-booking a:hover { color: #E8D4A8 !important; }

/* ============ ELEMENT-UI v2 select wrappers (newer Amelia versions) ============ */
.amelia-v2-booking .el-select__wrapper,
.amelia-v2-booking .el-select__wrapper.is-filterable,
.el-select__wrapper {
  box-shadow: 0 0 0 1px #722F37 inset !important;
  border-radius: 2px !important;
  color: #E6C79C !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
}
.amelia-v2-booking .el-select__wrapper:hover,
.el-select__wrapper:hover { box-shadow: 0 0 0 1px #E2BF88 inset !important; }
.amelia-v2-booking .el-select__wrapper.is-focused,
.amelia-v2-booking .el-select__wrapper:focus-within,
.el-select__wrapper.is-focused,
.el-select__wrapper:focus-within { box-shadow: 0 0 0 1.5px #E2BF88 inset !important; }
.amelia-v2-booking .el-select__placeholder,
.el-select__placeholder { color: rgba(230,199,156,0.5) !important; }
.amelia-v2-booking .el-select__selected-item,
.amelia-v2-booking .el-select-v2__placeholder,
.el-select__selected-item { color: #E6C79C !important; }
.amelia-v2-booking .el-select__caret,
.el-select__caret,
.amelia-v2-booking .el-select__suffix svg { color: #E2BF88 !important; fill: #E2BF88 !important; }
.amelia-v2-booking .el-input,
.amelia-v2-booking .el-input__inner,
.amelia-v2-booking .el-textarea__inner,
.amelia-v2-booking .el-select__input {
  background: transparent !important;
  color: #E6C79C !important;
  border: 0 !important;
}
.amelia-v2-booking .el-input__inner::placeholder,
.amelia-v2-booking .el-textarea__inner::placeholder,
.amelia-v2-booking .el-select__input::placeholder { color: rgba(230,199,156,0.45) !important; }

/* Tooltip / popover panels (dropdown, datepicker, time-picker) */
.el-popper,
.el-popper.is-light,
.el-popper.is-dark,
.el-tooltip__popper,
.el-select-dropdown,
.el-picker-panel,
.el-date-picker,
.el-time-panel,
.el-cascader__dropdown {
  border: 1px solid #B08A4C !important;
  color: #E6C79C !important;
}
.el-popper.is-light > .el-popper__arrow::before,
.el-popper > .el-popper__arrow::before {
  background: #1A0710 !important;
  border-color: #B08A4C !important;
}
/* `background: transparent !important` used to sit here too, which killed the
 * highlight Amelia paints on the hovered, active and selected rows — there was
 * no way to tell which category you were in or which service you were on. */
.el-select-dropdown__item,
.el-cascader-node {
  color: #E6C79C !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
}

/* Date picker cells */
.el-date-table td,
.el-date-table th,
.el-month-table td,
.el-year-table td,
.el-time-spinner__item {
  color: #E6C79C !important;
  background: transparent !important;
}
.el-date-table td.current span,
.el-date-table td.today span,
.el-time-spinner__item.is-active {
  background: rgba(226,191,136,0.20) !important;
  color: #E2BF88 !important;
  border-radius: 2px;
}
.el-date-table td.disabled,
.el-date-table td.disabled span { color: rgba(230,199,156,0.25) !important; cursor: not-allowed; }
.el-picker-panel__icon-btn { color: #E2BF88 !important; }

/* Amelia "ps-pill" service-selection chips */
.amelia-v2-booking .am-fs__ps-pill,
.am-fs__ps-pill {
  background: rgba(26,7,16,0.65) !important;
  background-color: rgba(26,7,16,0.65) !important;
  border: 1px solid #722F37 !important;
  color: #E6C79C !important;
  border-radius: 2px !important;
}
.amelia-v2-booking .am-fs__ps-pill:hover,
.am-fs__ps-pill:hover {
  border-color: #E2BF88 !important;
  background: rgba(43,12,21,0.85) !important;
}
.amelia-v2-booking .am-fs__ps-pill.is-active,
.am-fs__ps-pill.is-active,
.amelia-v2-booking .am-fs__ps-pill.am-fs__ps-pill--active {
  background: rgba(226,191,136,0.18) !important;
  border-color: #E2BF88 !important;
  color: #E2BF88 !important;
}

/* Any remaining input/textarea/select with white bg — defensive blanket */
.amelia-v2-booking input:not([type=submit]):not([type=button]),
.amelia-v2-booking textarea,
.amelia-v2-booking select {
  background: rgba(26,7,16,0.65) !important;
  color: #E6C79C !important;
  border: 1px solid #722F37 !important;
  border-radius: 2px !important;
}
.amelia-v2-booking input::placeholder,
.amelia-v2-booking textarea::placeholder { color: rgba(230,199,156,0.45) !important; }

/* ============ AGGRESSIVE BLANKET WHITE/BLUE KILLER ============ */
/* Hide all white backgrounds anywhere inside Amelia + popups */
.amelia-v2-booking [style*="background: white"],
.amelia-v2-booking [style*="background:#fff"],
.amelia-v2-booking [style*="background-color:#fff"],
.amelia-v2-booking [style*="background-color: rgb(255"],
.amelia-v2-booking .am-bg-white,
.amelia-v2-booking .am-white-bg,
.el-overlay,
body > .el-popper {
  background: #1A0508 !important;
  background-color: #1A0508 !important;
  color: #E6C79C !important;
}

/* Element-UI v2 + Amelia phone widget (vue-tel-input style) */
.amelia-v2-booking .vue-tel-input,
.amelia-v2-booking .am-tel-input,
.amelia-v2-booking .am-phone-input,
.amelia-v2-booking [class*="phone-input"],
.amelia-v2-booking [class*="tel-input"] {
  background: rgba(26,7,16,0.65) !important;
  border: 1px solid #722F37 !important;
  border-radius: 2px !important;
  color: #E6C79C !important;
}
.amelia-v2-booking .vue-tel-input input,
.amelia-v2-booking .vue-tel-input .vti__input,
.amelia-v2-booking .vti__dropdown {
  background: transparent !important;
  color: #E6C79C !important;
  border: 0 !important;
}
.amelia-v2-booking .vti__dropdown,
.amelia-v2-booking .vti__selection,
.amelia-v2-booking [class*="vti__"] {
  background: rgba(26,7,16,0.65) !important;
  color: #E6C79C !important;
}
.amelia-v2-booking .vti__dropdown-list,
.vti__dropdown-list {
  background: #1A0508 !important;
  border: 1px solid #B08A4C !important;
  color: #E6C79C !important;
}
.amelia-v2-booking .vti__dropdown-item,
.vti__dropdown-item {
  color: #E6C79C !important;
}
.amelia-v2-booking .vti__dropdown-item.highlighted,
.amelia-v2-booking .vti__dropdown-item:hover,
.vti__dropdown-item:hover {
  background: rgba(226,191,136,0.18) !important;
  color: #E2BF88 !important;
}

/* Calendar date cells — kill blue + white, use burgundy + gold */
.amelia-v2-booking .el-date-table,
.amelia-v2-booking .el-date-table th,
.amelia-v2-booking .el-date-table td,
.amelia-v2-booking .el-month-table td {
  background: transparent !important;
  color: #E6C79C !important;
}
.amelia-v2-booking .el-date-table td.available,
.amelia-v2-booking .el-date-table td.next-month,
.amelia-v2-booking .el-date-table td.prev-month {
  background: rgba(26,7,16,0.55) !important;
  color: rgba(230,199,156,0.85) !important;
}
.amelia-v2-booking .el-date-table td.available:hover,
.amelia-v2-booking .el-date-table td.today,
.amelia-v2-booking .el-date-table td.current {
  background: rgba(226,191,136,0.20) !important;
  color: #E2BF88 !important;
}
.amelia-v2-booking .el-date-table td.disabled,
.amelia-v2-booking .el-date-table td.disabled:hover {
  background: rgba(26,7,16,0.20) !important;
  color: rgba(230,199,156,0.25) !important;
  cursor: not-allowed !important;
}
.amelia-v2-booking .el-date-table td .cell,
.amelia-v2-booking .el-date-table td span,
.amelia-v2-booking .el-date-table td div {
  background: transparent !important;
  color: inherit !important;
}

/* Summary / confirmation table — kill the WHITE rows on the success page */
.amelia-v2-booking .am-success,
.amelia-v2-booking .am-success-page,
.amelia-v2-booking .am-confirmation,
.amelia-v2-booking [class*="success-page"],
.amelia-v2-booking [class*="success-info"],
.amelia-v2-booking [class*="confirmation-info"],
.amelia-v2-booking [class*="summary-row"],
.amelia-v2-booking [class*="appointment-info"],
.amelia-v2-booking .am-fs__main table,
.amelia-v2-booking .am-fs__main table tr,
.amelia-v2-booking .am-fs__main table td,
.amelia-v2-booking .am-fs__main table th {
  background: transparent !important;
  background-color: transparent !important;
  color: #E6C79C !important;
}
.amelia-v2-booking .am-success table,
.amelia-v2-booking .am-success-page table,
.amelia-v2-booking [class*="appointment-info"] table {
  border-collapse: collapse !important;
  width: 100% !important;
}
.amelia-v2-booking .am-success table tr,
.amelia-v2-booking [class*="appointment-info"] tr {
  border-bottom: 1px solid rgba(176,138,76,0.18) !important;
}
.amelia-v2-booking .am-success table td,
.amelia-v2-booking [class*="appointment-info"] td {
  padding: 0.75rem 0.5rem !important;
  color: #E6C79C !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 1rem !important;
}

/* Kill Element-UI default blue for prices/totals/amounts */
.amelia-v2-booking *[class*="primary"],
.amelia-v2-booking *[class*="total"],
.amelia-v2-booking .am-total,
.amelia-v2-booking .am-price,
.amelia-v2-booking .el-color--primary,
.amelia-v2-booking [style*="color: rgb(64, 158, 255)"],
.amelia-v2-booking [style*="color:#409eff"] {
  color: #E2BF88 !important;
}
.amelia-v2-booking .el-button--primary {
  background: transparent !important;
  border: 1px solid #B08A4C !important;
  color: #E2BF88 !important;
}

/* "Add to Calendar" buttons (Google/Outlook/Yahoo/Apple) — match brand */
.amelia-v2-booking .am-cal-buttons,
.amelia-v2-booking [class*="calendar-buttons"],
.amelia-v2-booking .am-add-to-cal,
.amelia-v2-booking [class*="add-to-calendar"] {
  background: transparent !important;
}
.amelia-v2-booking .am-cal-buttons > *,
.amelia-v2-booking [class*="calendar-buttons"] > *,
.amelia-v2-booking [class*="add-to-calendar"] > * {
  background: rgba(26,7,16,0.65) !important;
  border: 1px solid #B08A4C !important;
  color: #E6C79C !important;
  border-radius: 2px !important;
}

/* "Congratulations" / success heading */
.amelia-v2-booking [class*="success"] h1,
.amelia-v2-booking [class*="success"] h2,
.amelia-v2-booking [class*="success"] h3,
.amelia-v2-booking [class*="success-title"] {
  color: #E2BF88 !important;
  font-family: 'Cinzel', Georgia, serif !important;
  letter-spacing: 0.04em;
}

/* Cursive/italic readability fix — Amelia uses italics in places that are hard to read */
.amelia-v2-booking .am-fs-sb .am-fs-sb-step__desc,
.amelia-v2-booking [class*="step__desc"],
.amelia-v2-booking [class*="step-desc"] {
  font-style: normal !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-weight: 400 !important;
  color: rgba(230,199,156,0.80) !important;
}

/* Calendar grid — force full width usage */
.amelia-v2-booking .am-fs__main,
.amelia-v2-booking [class*="fs__main"] {
  width: 100% !important;
  max-width: none !important;
}
.amelia-v2-booking .el-date-picker__header,
.amelia-v2-booking .am-fs__date-time {
  width: 100% !important;
}

/* CONTINUE / FINISH buttons gold-outlined */
.amelia-v2-booking .am-button-continue,
.amelia-v2-booking .am-button-finish,
.amelia-v2-booking [class*="button-continue"],
.amelia-v2-booking [class*="button-finish"] {
  background: transparent !important;
  color: #E2BF88 !important;
  border: 1px solid #B08A4C !important;
  font-family: 'Cinzel', Georgia, serif !important;
  letter-spacing: 0.22em !important;
}
.amelia-v2-booking .am-button-continue:hover,
.amelia-v2-booking .am-button-finish:hover {
  color: #1A0508 !important;
}

/* ============ POPPER PANELS rendered on body — must NOT be .amelia-v2-booking scoped ============ */
.el-cascader-panel,
.el-cascader-menu,
.el-cascader-menu__wrap,
.el-cascader-node,
.el-select-dropdown,
.el-select-dropdown.am-select-popper,
.am-select-popper,
.el-popper,
body > .el-popper,
body > .el-overlay {
  border: 1px solid #B08A4C !important;
  color: #E6C79C !important;
}
.el-cascader-panel *,
.el-select-dropdown *,
.am-select-popper * {
  background: transparent !important;
}
.el-cascader-node,
.el-cascader-node__label,
.el-select-dropdown__item,
.am-select-popper .am-emp-item,
.am-select-popper .am-svc-item {
  color: #E6C79C !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
}
.el-cascader-node:hover,
.el-cascader-node.in-active-path,
.el-select-dropdown__item:hover,
.el-select-dropdown__item.is-hovering,
.el-select-dropdown__item.is-selected {
  color: #E2BF88 !important;
}
.am-select-popper [class*="name"],
.am-select-popper [class*="-title"] {
  color: #E6C79C !important;
}
.am-select-popper [class*="description"],
.am-select-popper [class*="-desc"],
.am-select-popper [class*="-sub"] {
  color: rgba(230,199,156,0.65) !important;
  font-style: italic;
}

/* ============ DROPDOWN ITEMS — HIGH CONTRAST (was too dim) ============ */
.el-select-dropdown__item,
.am-select-popper .am-emp-item,
.am-select-popper .am-svc-item,
.el-cascader-node,
.el-cascader-node__label,
.am-select-popper *,
.el-popper * {
  color: #F3E6D2 !important; /* brighter ivory, was #E6C79C */
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 1rem !important;
}
.el-select-dropdown__item:hover,
.el-select-dropdown__item.is-hovering,
.el-select-dropdown__item.is-selected,
.el-cascader-node:hover,
.el-cascader-node.in-active-path {
  color: #FFF8E8 !important; /* almost-white on hover for max contrast */
}
/* Service category label (the "Permanent Makeup (15)" rows) */
.am-select-popper .am-category,
.am-select-popper [class*="category"],
.am-select-popper [class*="title"],
.el-select-dropdown__item span,
.el-cascader-node__label {
  color: #F3E6D2 !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em;
}
.am-select-popper [class*="count"],
.am-select-popper [class*="-num"],
.am-select-popper [class*="badge"] {
  color: rgba(243,230,210,0.65) !important;
  font-size: 0.88em !important;
}
/* Category section header inside dropdown */
.el-select-dropdown__list > div:not(.el-select-dropdown__item) {
  color: #B08A4C !important;
  font-family: 'Cinzel', Georgia, serif !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  font-size: 0.72rem !important;
}

/* ============ AMELIA LOGIN / AUTH WIDGET (Customer + Employee Panels) ============ */
.amelia-v2-booking .am-cabinet-auth,
.amelia-v2-booking .am-login,
.amelia-v2-booking [class*="auth"],
.amelia-v2-booking [class*="login"],
.amelia-v2-booking .am-cust-auth,
.amelia-v2-booking .am-emp-auth,
[class*="am-cabinet"],
[class*="am-login"],
[class*="am-auth"] {
  background: rgba(26,7,16,0.6) !important;
  background-color: rgba(26,7,16,0.6) !important;
  border: 1px solid rgba(176,138,76,0.45) !important;
  border-radius: 6px !important;
  color: #E6C79C !important;
}
.amelia-v2-booking [class*="auth"] h1,
.amelia-v2-booking [class*="auth"] h2,
.amelia-v2-booking [class*="auth"] h3,
.amelia-v2-booking [class*="login"] h1,
.amelia-v2-booking [class*="login"] h2,
.amelia-v2-booking [class*="login"] h3,
[class*="am-cabinet"] h1,
[class*="am-cabinet"] h2,
[class*="am-cabinet"] h3 {
  color: #E2BF88 !important;
  font-family: 'Cinzel', Georgia, serif !important;
}
.amelia-v2-booking [class*="auth"] label,
.amelia-v2-booking [class*="login"] label,
[class*="am-cabinet"] label {
  color: #B08A4C !important;
  font-family: 'Cinzel', Georgia, serif !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  font-size: 0.72rem !important;
}
.amelia-v2-booking [class*="auth"] p,
.amelia-v2-booking [class*="login"] p,
[class*="am-cabinet"] p {
  color: rgba(230,199,156,0.75) !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: italic;
}
/* Sign In / reset / submit buttons inside auth */
.amelia-v2-booking [class*="auth"] button,
.amelia-v2-booking [class*="login"] button,
[class*="am-cabinet"] button:not(.el-button--text) {
  background: #B08A4C !important;
  background-image: none !important;
  border: 1px solid #B08A4C !important;
  color: #1A0508 !important;
  font-family: 'Cinzel', Georgia, serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  padding: 0.85rem 2rem !important;
  border-radius: 2px !important;
}
.amelia-v2-booking [class*="auth"] button:hover,
[class*="am-cabinet"] button:hover {
  background: #E2BF88 !important;
  color: #1A0508 !important;
}
/* Reset password link */
.amelia-v2-booking [class*="auth"] a,
.amelia-v2-booking [class*="login"] a,
[class*="am-cabinet"] a {
  color: #E2BF88 !important;
}

/* ============ AMELIA AUTH PANEL (.am-asi inside .am-cap__wrapper.am-auth) ============ */
.am-asi,
.am-cap__wrapper.am-auth,
.am-cap__wrapper {
  background: rgba(26,7,16,0.7) !important;
  background-color: rgba(26,7,16,0.7) !important;
  border: 1px solid rgba(176,138,76,0.45) !important;
  border-radius: 6px !important;
  color: #E6C79C !important;
}
.am-asi *,
.am-cap__wrapper.am-auth * {
  color: #E6C79C !important;
}
/* 2026-11-07: inner am-asi__* blocks carry no border/fill of their own — the card is one box. */
.am-asi h1, .am-asi h2, .am-asi h3,
.am-cap__wrapper h1, .am-cap__wrapper h2, .am-cap__wrapper h3 {
  color: #E2BF88 !important;
  font-family: 'Cinzel', Georgia, serif !important;
  font-weight: 600 !important;
}
.am-asi label,
.am-cap__wrapper label {
  color: #B08A4C !important;
  font-family: 'Cinzel', Georgia, serif !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
}
.am-asi p,
.am-cap__wrapper p {
  color: rgba(230,199,156,0.75) !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: italic !important;
}
.am-asi input,
.am-cap__wrapper input {
  background: rgba(26,7,16,0.5) !important;
  color: #E6C79C !important;
  border: 1px solid #722F37 !important;
}
.am-asi button:not(.el-button--text),
.am-cap__wrapper button:not(.el-button--text) {
  background: #B08A4C !important;
  background-image: none !important;
  border: 1px solid #B08A4C !important;
  color: #1A0508 !important;
  font-family: 'Cinzel', Georgia, serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
}
.am-asi button:hover,
.am-cap__wrapper button:hover {
  background: #E2BF88 !important;
  color: #1A0508 !important;
}
.am-asi a,
.am-cap__wrapper a {
  color: #E2BF88 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px;
}

/* --------------------------------------------------------------------------
 * 2026-09-11 — surface colours moved OUT of this file and into Amelia's own
 * customiser (wp-admin → Amelia → Customize → Forms → Step-by-step →
 * Advanced). The client can change them there and the widget follows.
 * What remains here is typography, spacing and layout, which the customiser
 * cannot express.
 *
 * One exception the customiser also cannot express: the site's global form
 * styling must not reach inside the widget — it was drawing a second,
 * pill-shaped frame inside every Amelia input.
 * ----------------------------------------------------------------------- */
.amelia-v2-booking input:not([type="checkbox"]):not([type="radio"]),
.amelia-v2-booking textarea,
.amelia-v2-booking .el-input__inner,
.amelia-v2-booking .el-textarea__inner {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
          backdrop-filter: none !important;
  padding: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 1.02rem !important;
}
.amelia-v2-booking .el-input__wrapper { padding: 0.5rem 0.85rem !important; }

/* --------------------------------------------------------------------------
 * 2026-09-11 — the booking form grew a fixed 560px body, so the month grid was
 * clipped after the third week: days 21-31 were unreachable and the step could
 * not be completed. Let the widget size to its content and scroll where it
 * genuinely needs to.
 * ----------------------------------------------------------------------- */
.amelia-v2-booking,
.amelia-v2-booking .am-fs__wrapper,
.amelia-v2-booking .am-fs__main,
.amelia-v2-booking .am-fs__main-inner {
  height: auto !important;
  min-height: 560px !important;
  max-height: none !important;
}
.amelia-v2-booking .am-fs__main-content {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}
/* FullCalendar sizes itself from its container; with the container free it
 * needs its own floor so every week of the month renders. */
.amelia-v2-booking .fc,
.amelia-v2-booking .fc-view-harness {
  height: auto !important;
  min-height: 420px !important;
}
.amelia-v2-booking .fc-daygrid-body,
.amelia-v2-booking .fc-scroller {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}
/* The sidebar is a column of three or four steps; it must not force the whole
 * widget to the calendar's height on small screens. */
.amelia-v2-booking .am-fs-sb { height: auto !important; }
/* Rounding the outer box was clipping the last calendar row and, with it, the
 * footer that holds CONTINUE. Round the panels instead of the wrapper. */
.amelia-v2-booking,
.amelia-v2-booking .am-fs__wrapper { overflow: visible !important; }
.amelia-v2-booking .am-fs-sb { border-radius: 8px 0 0 8px; }
.amelia-v2-booking .am-fs__main { border-radius: 0 8px 8px 0; overflow: hidden !important; }
@media (max-width: 780px) {
  .amelia-v2-booking .am-fs-sb,
  .amelia-v2-booking .am-fs__main { border-radius: 8px; }
}
/* Amelia pins the step footer with position:absolute inside the main panel, so
 * once the content is free to grow the last time slots ended up underneath the
 * CONTINUE button. Reserve the footer's height at the end of the content. */
.amelia-v2-booking .am-fs__main-content { padding-bottom: 76px !important; }

/* --------------------------------------------------------------------------
 * 2026-09-11 (2) — service picker: say where you are.
 *
 * Every row was boxed in its own rectangle (Amelia draws the per-item border
 * from --am-c-advs-item-border, now set to match the dropdown background) and
 * nothing marked the category you had opened or the service under the cursor.
 * ----------------------------------------------------------------------- */
.el-cascader__dropdown .el-cascader-menu,
.el-cascader__dropdown .el-cascader-menu__list,
.el-cascader__dropdown .el-cascader-node,
.el-cascader__dropdown .am-adv-select__item {
  border: 0 !important;
  border-radius: 0 !important;
}
/* One hairline between the two columns is all the structure this needs. */
.el-cascader__dropdown .el-cascader-menu + .el-cascader-menu {
  border-left: 1px solid rgba(224,198,139,0.16) !important;
}
.el-cascader__dropdown {
  border: 1px solid rgba(224,198,139,0.35) !important;
  border-radius: 6px !important;
  overflow: hidden;
  box-shadow: 0 22px 48px rgba(0,0,0,0.5) !important;
}
.el-cascader__dropdown .el-cascader-node {
  padding: 0 0.3rem !important;
  min-height: 0 !important;
  height: auto !important;
  line-height: 1.25 !important;
  transition: background-color .16s ease;
}
.el-cascader__dropdown .am-adv-select__item {
  padding: 0.42rem 0.7rem !important;
  border-radius: 4px !important;
  line-height: 1.25 !important;
}

/* Hover — the row under the cursor. */
.el-cascader__dropdown .el-cascader-node:hover > .el-cascader-node__label > .am-adv-select__item,
.el-cascader__dropdown .el-cascader-node:focus > .el-cascader-node__label > .am-adv-select__item {
  background: rgba(244,228,221,0.07) !important;
}
/* Open category — stays marked while you read its services. */
.el-cascader__dropdown .el-cascader-node.in-active-path > .el-cascader-node__label > .am-adv-select__item,
.el-cascader__dropdown .el-cascader-node[aria-expanded="true"] > .el-cascader-node__label > .am-adv-select__item {
  background: rgba(199,168,105,0.16) !important;
  box-shadow: inset 2px 0 0 #C7A869 !important;
}
.el-cascader__dropdown .el-cascader-node.in-active-path .am-adv-select__item-label,
.el-cascader__dropdown .el-cascader-node[aria-expanded="true"] .am-adv-select__item-label {
  color: #F4E4DD !important;
}
/* Chosen service. */
.el-cascader__dropdown .el-cascader-node.is-active > .el-cascader-node__label > .am-adv-select__item,
.el-cascader__dropdown .el-cascader-node[aria-checked="true"] > .el-cascader-node__label > .am-adv-select__item {
  background: rgba(199,168,105,0.26) !important;
  box-shadow: inset 2px 0 0 #C7A869 !important;
}
.el-cascader__dropdown .el-cascader-node .el-cascader-node__postfix { color: rgba(224,198,139,0.55) !important; }
.el-cascader__dropdown .el-cascader-node.in-active-path .el-cascader-node__postfix { color: #C7A869 !important; }

/* Column header ("Category") — a quiet label, not a table cell. */
.el-cascader__dropdown .am-adv-select__header,
.el-cascader__dropdown [class*="adv-select__header"] {
  border: 0 !important;
  background: transparent !important;
  color: rgba(244,228,221,0.5) !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  padding: 0.7rem 0.95rem 0.4rem !important;
}
.el-cascader__dropdown .am-adv-select__item-quantity { color: rgba(244,228,221,0.45) !important; }
.el-cascader__dropdown .am-adv-select__item-price { color: #C7A869 !important; }
/* Column headings inside the service picker — a label, not a table cell, and
 * the category column wide enough that the names are not truncated. */
.el-cascader__dropdown .am-adv-select__popper-heading {
  display: block !important;
  border: 0 !important;
  background: transparent !important;
  color: rgba(244,228,221,0.45) !important;
  font-family: 'Cinzel', Georgia, serif !important;
  font-size: 0.68rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  padding: 0.75rem 0.95rem 0.5rem !important;
}
/* Row text stays on one line with an ellipsis, as the stock widget does —
 * wrapping it doubled every row's height and cut the visible list to three. */
.el-cascader__dropdown .am-adv-select__item-label {
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  overflow: hidden !important;
  line-height: 1.25 !important;
}

/* --------------------------------------------------------------------------
 * Service picker, pass 2 — show a useful number of rows and a scrollbar.
 *
 * Measured before: row height 62px, visible area 204px — three and a bit rows
 * out of ten, with the scroll container's bar hidden by Element-UI's default.
 * ----------------------------------------------------------------------- */
.el-cascader__dropdown .el-cascader-menu__wrap,
.el-cascader__dropdown .el-scrollbar__wrap {
  max-height: min(46vh, 360px) !important;
  overflow-y: auto !important;
  /* Element-UI hides the native bar and draws its own, which never appeared
   * here; show a slim styled one so the list reads as scrollable. */
  scrollbar-width: thin;
  scrollbar-color: rgba(224,198,139,0.45) transparent;
}
.el-cascader__dropdown .el-scrollbar__wrap::-webkit-scrollbar { width: 6px; }
.el-cascader__dropdown .el-scrollbar__wrap::-webkit-scrollbar-track {
  background: rgba(244,228,221,0.05);
}
.el-cascader__dropdown .el-scrollbar__wrap::-webkit-scrollbar-thumb {
  background: rgba(224,198,139,0.45);
  border-radius: 3px;
}
.el-cascader__dropdown .el-scrollbar__wrap::-webkit-scrollbar-thumb:hover {
  background: rgba(224,198,139,0.7);
}
/* Element-UI's own bar, in case it is the one that renders. */
.el-cascader__dropdown .el-scrollbar__bar.is-vertical { width: 6px !important; opacity: 1 !important; }
.el-cascader__dropdown .el-scrollbar__thumb { background: rgba(224,198,139,0.45) !important; }

/* The category column needs room for the longest name; the service column
 * takes the rest of the field's width. */
.el-cascader__dropdown .el-cascader-panel { display: flex !important; }
.el-cascader__dropdown .el-cascader-menu { flex: 1 1 0 !important; min-width: 0 !important; }
.el-cascader__dropdown .el-cascader-menu:first-child { flex: 0 0 47% !important; }

/* Pass 3 — Element-UI's scrollbar sets an explicit height (measured 204px), so
 * max-height alone never grew the list. Set the height itself. */
.el-cascader__dropdown .el-cascader-menu__wrap,
.el-cascader__dropdown .el-scrollbar__wrap {
  height: min(46vh, 340px) !important;
}
.el-cascader__dropdown .el-cascader-menu { padding-top: 26px !important; }
/* Row: one line of text plus a little air, nothing more (was 49px). */
.el-cascader__dropdown .am-adv-select__item {
  padding: 0.3rem 0.7rem !important;
  min-height: 0 !important;
  height: auto !important;
  gap: 0.5rem !important;
}
.el-cascader__dropdown .am-adv-select__item-label,
.el-cascader__dropdown .am-adv-select__item-quantity,
.el-cascader__dropdown .am-adv-select__item-price {
  font-size: 0.92rem !important;
  line-height: 1.35 !important;
}
.el-cascader__dropdown .el-cascader-node__postfix { right: 0.35rem !important; }

/* Pass 4 — on a phone the two columns stack, so a fixed 340px list height left
 * the five categories floating in a half-empty box and squeezed the services
 * into 160px. Let each list take the room it needs, capped. */
@media (max-width: 780px) {
  .el-cascader__dropdown .el-cascader-panel { flex-direction: column !important; }
  .el-cascader__dropdown .el-cascader-menu,
  .el-cascader__dropdown .el-cascader-menu:first-child {
    flex: 0 1 auto !important;
    width: 100% !important;
  }
  .el-cascader__dropdown .el-cascader-menu__wrap,
  .el-cascader__dropdown .el-scrollbar__wrap {
    height: auto !important;
    max-height: 32vh !important;
  }
  /* The category list is short; the service list is the one worth scrolling. */
  .el-cascader__dropdown .el-cascader-menu:first-child .el-cascader-menu__wrap {
    max-height: 26vh !important;
  }
  .el-cascader__dropdown .el-cascader-menu + .el-cascader-menu {
    border-left: 0 !important;
    border-top: 1px solid rgba(224,198,139,0.16) !important;
  }
}

/* Pass 4b — make the scrollbar visible. Element-UI hides the native bar with
 * `scrollbar-width: none` on its wrap and draws its own, which never showed. */
.el-cascader__dropdown .el-cascader-menu__wrap,
.el-cascader__dropdown .el-scrollbar__wrap {
  scrollbar-width: thin !important;
  scrollbar-color: rgba(224,198,139,0.5) rgba(244,228,221,0.06) !important;
  -ms-overflow-style: auto !important;
}
.el-cascader__dropdown .el-cascader-menu__wrap::-webkit-scrollbar,
.el-cascader__dropdown .el-scrollbar__wrap::-webkit-scrollbar {
  width: 7px !important;
  display: block !important;
}
.el-cascader__dropdown .el-cascader-menu__wrap::-webkit-scrollbar-track,
.el-cascader__dropdown .el-scrollbar__wrap::-webkit-scrollbar-track {
  background: rgba(244,228,221,0.06) !important;
}
.el-cascader__dropdown .el-cascader-menu__wrap::-webkit-scrollbar-thumb,
.el-cascader__dropdown .el-scrollbar__wrap::-webkit-scrollbar-thumb {
  background: rgba(224,198,139,0.5) !important;
  border-radius: 4px !important;
}
/* Element-UI adds this class to suppress the native bar; undo it here only. */
.el-cascader__dropdown .el-scrollbar__wrap--hidden-default {
  scrollbar-width: thin !important;
}

/* Pass 5 — the bar. Chromium honours `scrollbar-width: thin` over the
 * ::-webkit-scrollbar width, so the native bar came out 2px and invisible.
 * Hide the native one and style Element-UI's own overlay bar instead, which
 * is what the stock widget shows. */
.el-cascader__dropdown .el-cascader-menu__wrap,
.el-cascader__dropdown .el-scrollbar__wrap {
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}
.el-cascader__dropdown .el-cascader-menu__wrap::-webkit-scrollbar,
.el-cascader__dropdown .el-scrollbar__wrap::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
}
.el-cascader__dropdown .el-scrollbar__bar {
  opacity: 1 !important;
  z-index: 3;
}
.el-cascader__dropdown .el-scrollbar__bar.is-vertical {
  width: 8px !important;
  right: 2px !important;
  top: 2px;
  bottom: 2px;
  border-radius: 4px;
  background: rgba(244,228,221,0.07) !important;
}
.el-cascader__dropdown .el-scrollbar__bar.is-vertical > .el-scrollbar__thumb {
  width: 8px !important;
  background: rgba(224,198,139,0.55) !important;
  border-radius: 4px !important;
  transition: background .2s ease;
}
.el-cascader__dropdown .el-scrollbar__bar.is-vertical:hover > .el-scrollbar__thumb {
  background: rgba(224,198,139,0.85) !important;
}
/* Leave room so the bar never sits on top of a price. */
.el-cascader__dropdown .el-cascader-menu__list { padding-right: 10px !important; }

/* Pass 6 — the bar renders (thumb measured 292px) but at 55% gold on a dark
 * column it read as a hairline. Make it plainly visible, and give the category
 * column back the width the bar's gutter had taken ("Permanent Make…"). */
.el-cascader__dropdown .el-scrollbar__bar.is-vertical {
  background: rgba(244,228,221,0.12) !important;
}
.el-cascader__dropdown .el-scrollbar__bar.is-vertical > .el-scrollbar__thumb {
  background: rgba(224,198,139,0.78) !important;
}
.el-cascader__dropdown .el-cascader-menu:first-child { flex: 0 0 50% !important; }
/* Only the list that actually scrolls needs to clear the bar. */
.el-cascader__dropdown .el-cascader-menu__list { padding-right: 0 !important; }
.el-cascader__dropdown .el-cascader-menu:last-child .el-cascader-menu__list {
  padding-right: 12px !important;
}

/* Pass 7 — the panel is only as wide as the field, so both columns cannot show
 * their longest label in full. Measured: categories need ~184px, the longest
 * service plus its price needs ~277px. Give the categories exactly what they
 * need and let the service side ellipsise, which is what the stock widget does
 * too ("Lash Enhancement Eyeli…"). */
.el-cascader__dropdown .el-cascader-menu:first-child { flex: 0 0 47% !important; }

/* 2026-11-07 — "Your Information" step: field labels were Amelia's system sans; use the site type (click-test P2 #12). */
.amelia-v2-booking #amelia-container .am-fs__info label.el-form-item__label,
.amelia-v2-booking #amelia-container .am-fs__info .el-form-item__label span {
  font-family: 'Cinzel', Georgia, serif !important;
}
