/* =====================================================================
   GBE Theme — Dark Gold (luxury / fine dining)
   Applicabile sia alla modalità Standard che alla Chef Pro.
   Sovrascrive le variabili CSS del tema Editorial Culinary.
   ===================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&family=Inter:wght@300..700&family=Dancing+Script:wght@400..700&display=swap');

/* Scope to the booking widget only (shortcode frontend) */
.gbe-booking-widget,
.gbe-theme-dark-gold {
	/* Palette override */
	--gbe-clay-900: #FFFFFF;
	--gbe-clay-700: #E8DED0;
	--gbe-clay-500: #A0968A;
	--gbe-clay-400: #8A8074;
	--gbe-clay-300: #5C5249;
	--gbe-clay-200: #3D332A;
	--gbe-clay-100: #1A1612;
	--gbe-clay-50:  #0F0C0A;

	--gbe-terracotta:    #C9A96E;
	--gbe-terracotta-d:  #A8884D;
	--gbe-saffron:       #E8C786;
	--gbe-saffron-soft:  rgba(201, 169, 110, 0.25);
	--gbe-olive:         #7A8F5A;
	--gbe-olive-soft:    rgba(122, 143, 90, 0.2);
	--gbe-rust:          #D4864E;
	--gbe-bordeaux:      #B84D60;
	--gbe-ink:           #000000;

	--gbe-font-display: 'Cormorant Garamond', 'Playfair Display', Georgia, serif;
	--gbe-font-body:    'Inter', 'DM Sans', -apple-system, sans-serif;

	/* Widget surface colors */
	background: #0A0807 !important;
	color: #FFFFFF !important;
}

/* Widget container — full dark with gold border accent */
.gbe-theme-dark-gold.gbe-booking-widget,
.gbe-booking-widget.gbe-theme-dark-gold {
	background: #0A0807;
	border: 1px solid rgba(201, 169, 110, 0.15);
	box-shadow: 0 24px 60px -20px rgba(0, 0, 0, 0.6);
}

/* Titles: elegant serif italic */
.gbe-theme-dark-gold h1,
.gbe-theme-dark-gold h2,
.gbe-theme-dark-gold h3,
.gbe-theme-dark-gold .gbe-booking-widget__title,
.gbe-theme-dark-gold .gbe-form__title {
	font-family: 'Cormorant Garamond', serif !important;
	font-weight: 500 !important;
	font-style: italic;
	color: #C9A96E !important;
	letter-spacing: 0 !important;
}

.gbe-theme-dark-gold .gbe-booking-widget__eyebrow {
	color: #A0968A !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 0.72rem;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

.gbe-theme-dark-gold .gbe-booking-widget__title em,
.gbe-theme-dark-gold .gbe-form__title em {
	color: #C9A96E !important;
	font-style: italic;
}

.gbe-theme-dark-gold p,
.gbe-theme-dark-gold label,
.gbe-theme-dark-gold .gbe-booking-widget__lead {
	color: #E8DED0 !important;
}

/* Form inputs: dark with gold focus */
.gbe-theme-dark-gold input[type="text"],
.gbe-theme-dark-gold input[type="email"],
.gbe-theme-dark-gold input[type="tel"],
.gbe-theme-dark-gold input[type="number"],
.gbe-theme-dark-gold input[type="date"],
.gbe-theme-dark-gold input[type="datetime-local"],
.gbe-theme-dark-gold textarea,
.gbe-theme-dark-gold select,
.gbe-theme-dark-gold .gbe-form__input {
	background: #1A1612 !important;
	border: 1.5px solid #3D332A !important;
	color: #FFFFFF !important;
	border-radius: 10px !important;
}
.gbe-theme-dark-gold input:focus,
.gbe-theme-dark-gold textarea:focus,
.gbe-theme-dark-gold select:focus,
.gbe-theme-dark-gold .gbe-form__input:focus {
	border-color: #C9A96E !important;
	box-shadow: 0 0 0 3px rgba(201, 169, 110, 0.15) !important;
	outline: none !important;
}
.gbe-theme-dark-gold input::placeholder,
.gbe-theme-dark-gold textarea::placeholder {
	color: #6B6055 !important;
}

/* Cards (form card, payment cards) */
.gbe-theme-dark-gold .gbe-form__card,
.gbe-theme-dark-gold .gbe-pm-card {
	background: #1A1612 !important;
	border-color: #3D332A !important;
	color: #FFFFFF !important;
}
.gbe-theme-dark-gold .gbe-form__card--active,
.gbe-theme-dark-gold .gbe-pm-card:hover {
	border-color: #C9A96E !important;
	background: #241E18 !important;
	box-shadow: 0 12px 28px -12px rgba(201, 169, 110, 0.3) !important;
}
.gbe-theme-dark-gold .gbe-form__card-title,
.gbe-theme-dark-gold .gbe-pm-card__title {
	color: #FFFFFF !important;
}
.gbe-theme-dark-gold .gbe-pm-card__desc {
	color: #A0968A !important;
}
.gbe-theme-dark-gold .gbe-pm-card__icon {
	background: #0F0C0A !important;
	border-color: rgba(201, 169, 110, 0.2) !important;
}
.gbe-theme-dark-gold .gbe-pm-card__arrow {
	color: #C9A96E !important;
}
.gbe-theme-dark-gold .gbe-pm-card__badge {
	background: rgba(122, 143, 90, 0.2) !important;
	color: #B8C39C !important;
}

/* Primary button (gold pill) */
.gbe-theme-dark-gold .gbe-btn--primary,
.gbe-theme-dark-gold button[type="submit"] {
	background: linear-gradient(180deg, #D4B87A 0%, #C9A96E 100%) !important;
	color: #0A0807 !important;
	border: none !important;
	border-radius: 999px !important;
	padding: 14px 32px !important;
	font-family: 'Inter', sans-serif !important;
	font-weight: 600 !important;
	letter-spacing: 0.02em !important;
	box-shadow: 0 8px 24px -8px rgba(201, 169, 110, 0.4) !important;
	transition: all 220ms cubic-bezier(.19,1,.22,1) !important;
}
.gbe-theme-dark-gold .gbe-btn--primary:hover,
.gbe-theme-dark-gold button[type="submit"]:hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 14px 32px -10px rgba(201, 169, 110, 0.6) !important;
	background: linear-gradient(180deg, #E0C687 0%, #D4B87A 100%) !important;
}

/* Ghost / secondary button (transparent with gold border) */
.gbe-theme-dark-gold .gbe-btn--ghost,
.gbe-theme-dark-gold .gbe-step-back {
	background: transparent !important;
	color: #C9A96E !important;
	border: 1.5px solid #C9A96E !important;
	border-radius: 999px !important;
	padding: 10px 24px !important;
}
.gbe-theme-dark-gold .gbe-btn--ghost:hover,
.gbe-theme-dark-gold .gbe-step-back:hover {
	background: rgba(201, 169, 110, 0.1) !important;
	color: #E0C687 !important;
}

/* Step indicator (wizard dots) */
.gbe-theme-dark-gold .gbe-step-dot__circle {
	background: #1A1612 !important;
	border-color: #3D332A !important;
	color: #A0968A !important;
}
.gbe-theme-dark-gold .gbe-step-dot--active .gbe-step-dot__circle {
	background: #C9A96E !important;
	border-color: #C9A96E !important;
	color: #0A0807 !important;
	box-shadow: 0 4px 16px -4px rgba(201, 169, 110, 0.5) !important;
}
.gbe-theme-dark-gold .gbe-step-dot--done .gbe-step-dot__circle {
	background: #A8884D !important;
	border-color: #A8884D !important;
	color: #0A0807 !important;
}
.gbe-theme-dark-gold .gbe-step-dot__label {
	color: #8A8074 !important;
}
.gbe-theme-dark-gold .gbe-step-dot--active .gbe-step-dot__label {
	color: #E0C687 !important;
}
.gbe-theme-dark-gold .gbe-steps-nav::before {
	background: #3D332A !important;
}

/* Price recap bar */
.gbe-theme-dark-gold .gbe-price-recap {
	background: #1A1612 !important;
	border: 1px solid rgba(201, 169, 110, 0.25) !important;
}
.gbe-theme-dark-gold .gbe-price-recap__left {
	color: #A0968A !important;
}
.gbe-theme-dark-gold .gbe-price-recap__left strong {
	color: #FFFFFF !important;
}
.gbe-theme-dark-gold .gbe-price-recap__total {
	color: #C9A96E !important;
}

/* Price preview */
.gbe-theme-dark-gold .gbe-price-preview {
	background: #1A1612 !important;
	border-color: #3D332A !important;
}
.gbe-theme-dark-gold .gbe-price-preview__list li {
	color: #E8DED0 !important;
	border-bottom-color: #3D332A !important;
}

/* Contact form (step 2) */
.gbe-theme-dark-gold .gbe-contact-form label {
	color: #E8DED0 !important;
}
.gbe-theme-dark-gold .gbe-contact-terms {
	background: rgba(201, 169, 110, 0.06) !important;
	border-color: #3D332A !important;
	color: #A0968A !important;
}

/* Messages */
.gbe-theme-dark-gold .gbe-message {
	background: #1A1612 !important;
	border-color: #3D332A !important;
}
.gbe-theme-dark-gold .gbe-message__title {
	color: #FFFFFF !important;
}
.gbe-theme-dark-gold .gbe-message__body {
	color: #A0968A !important;
}
.gbe-theme-dark-gold .gbe-message--error {
	border-color: #B84D60 !important;
}
.gbe-theme-dark-gold .gbe-message--error .gbe-message__title {
	color: #E8A4B0 !important;
}

/* Policy disclaimer box */
.gbe-theme-dark-gold .gbe-policy-box {
	background: rgba(201, 169, 110, 0.08) !important;
	border-left-color: #C9A96E !important;
	color: #A0968A !important;
}

/* Secure payments strip */
.gbe-theme-dark-gold .gbe-secure-payments {
	border-top-color: rgba(201, 169, 110, 0.15) !important;
}
.gbe-theme-dark-gold .gbe-secure-payments__label {
	color: #8A8074 !important;
}
.gbe-theme-dark-gold .gbe-pay-badge {
	background: #FFFFFF !important;
	border-color: rgba(201, 169, 110, 0.3) !important;
}

/* Coming soon payment cards — adapt saffron to gold */
.gbe-theme-dark-gold .gbe-pm-card--coming-soon {
	border-color: #C9A96E !important;
	background: rgba(201, 169, 110, 0.06) !important;
}
.gbe-theme-dark-gold .gbe-pm-card--coming-soon .gbe-pm-card__desc,
.gbe-theme-dark-gold .gbe-pm-card--coming-soon .gbe-pm-card__arrow {
	color: #C9A96E !important;
}
.gbe-theme-dark-gold .gbe-pm-card__badge--soon {
	background: rgba(201, 169, 110, 0.2) !important;
	color: #E0C687 !important;
}

/* Calendar (if rendered in dark-gold context, e.g. admin viewing) */
.gbe-theme-dark-gold .gbe-cal__cell {
	background: #1A1612 !important;
	color: #E8DED0 !important;
}
.gbe-theme-dark-gold .gbe-cal__day {
	color: #E8DED0 !important;
}
.gbe-theme-dark-gold .gbe-cal__cell--today {
	border-color: #C9A96E !important;
	background: rgba(201, 169, 110, 0.1) !important;
}

/* Radio / checkbox accents */
.gbe-theme-dark-gold input[type="radio"],
.gbe-theme-dark-gold input[type="checkbox"] {
	accent-color: #C9A96E !important;
}

/* === Chef Pro radio cards (service_type) — dark-gold === */
.gbe-theme-dark-gold .gbe-cp-radio-card {
	background: #15100B !important;
	border-color: rgba(201, 169, 110, 0.25) !important;
}
.gbe-theme-dark-gold .gbe-cp-radio-card:hover {
	border-color: #C9A96E !important;
	box-shadow: 0 14px 32px -12px rgba(201, 169, 110, 0.35) !important;
}
.gbe-theme-dark-gold .gbe-cp-radio-card:has(input:checked),
.gbe-theme-dark-gold .gbe-cp-radio-card.gbe-cp-selected {
	border-color: #C9A96E !important;
	background: rgba(201, 169, 110, 0.08) !important;
	box-shadow: 0 8px 24px -12px rgba(201, 169, 110, 0.35),
	            inset 0 0 0 1px rgba(201, 169, 110, 0.3) !important;
}
.gbe-theme-dark-gold .gbe-cp-radio-card::before {
	background: #C9A96E !important;
}
.gbe-theme-dark-gold .gbe-cp-radio-card__icon {
	background: #0A0807 !important;
	border-color: rgba(201, 169, 110, 0.25) !important;
}
.gbe-theme-dark-gold .gbe-cp-radio-card:hover .gbe-cp-radio-card__icon,
.gbe-theme-dark-gold .gbe-cp-radio-card:has(input:checked) .gbe-cp-radio-card__icon {
	background: #15100B !important;
	border-color: #C9A96E !important;
}
.gbe-theme-dark-gold .gbe-cp-radio-card__title {
	color: #FFFFFF !important;
}
.gbe-theme-dark-gold .gbe-cp-radio-card:has(input:checked) .gbe-cp-radio-card__title {
	color: #E0C687 !important;
}
.gbe-theme-dark-gold .gbe-cp-radio-card__desc {
	color: #A0968A !important;
}

/* === Chef Pro recap — dark-gold receipt === */
.gbe-theme-dark-gold .gbe-cp-recap {
	background:
		radial-gradient(1000px 500px at 10% 0%, rgba(201,169,110,0.06), transparent 60%),
		radial-gradient(800px 400px at 95% 100%, rgba(201,169,110,0.04), transparent 60%),
		linear-gradient(180deg, #15100B 0%, #1A1612 100%) !important;
	border-color: rgba(201, 169, 110, 0.2) !important;
	box-shadow: 0 40px 80px -50px rgba(0, 0, 0, 0.8) !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__edge {
	background:
		linear-gradient(-45deg, transparent 33.333%, #0A0807 33.333%, #0A0807 66.667%, transparent 66.667%),
		linear-gradient( 45deg, transparent 33.333%, #0A0807 33.333%, #0A0807 66.667%, transparent 66.667%) !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__eyebrow {
	color: #A0968A !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__title {
	color: #C9A96E !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__lead {
	color: #A0968A !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__header::after {
	color: #C9A96E !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__section {
	border-top-color: rgba(201, 169, 110, 0.2) !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__group {
	color: #C9A96E !important;
	filter: none !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__group::before {
	background: #C9A96E !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__item::before {
	background-image: radial-gradient(circle, rgba(201,169,110,0.35) 1px, transparent 1px) !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__key {
	color: #A0968A !important;
	background: linear-gradient(90deg, #15100B 0%, #15100B calc(100% - 8px), transparent 100%) !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__val {
	color: #FFFFFF !important;
	background: linear-gradient(90deg, transparent 0%, #15100B 8px, #15100B 100%) !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__hint {
	color: #A0968A !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__total-row {
	border-top-color: #C9A96E !important;
	border-bottom-color: rgba(201, 169, 110, 0.2) !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__total-eyebrow {
	color: #FFFFFF !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__total-note {
	color: #A0968A !important;
}
.gbe-theme-dark-gold .gbe-cp-recap__total-amount {
	color: #C9A96E !important;
}
@media (max-width: 560px) {
	.gbe-theme-dark-gold .gbe-cp-recap__key,
	.gbe-theme-dark-gold .gbe-cp-recap__val {
		background: none !important;
	}
}

/* === Progress bar — dark-gold overrides ============================== */
.gbe-theme-dark-gold .gbe-cp-progress {
	background: linear-gradient(180deg, #0A0807 70%, rgba(10,8,7,0));
}
.gbe-theme-dark-gold .gbe-cp-progress__step-label { color: #A0968A; }
.gbe-theme-dark-gold .gbe-cp-progress__current    { color: #C9A96E; }
.gbe-theme-dark-gold .gbe-cp-progress__total      { color: #FFFFFF; }
.gbe-theme-dark-gold .gbe-cp-progress__pct        { color: #C9A96E; }
.gbe-theme-dark-gold .gbe-cp-progress__track {
	background: #241E18;
	box-shadow: inset 0 1px 2px rgba(0,0,0,0.5);
}
.gbe-theme-dark-gold .gbe-cp-progress__fill {
	background: linear-gradient(90deg, #A8884D 0%, #C9A96E 60%, #E5C682 100%) !important;
	box-shadow: 0 0 12px rgba(201, 169, 110, 0.55), 0 0 24px -4px rgba(229, 198, 130, 0.35);
}
.gbe-theme-dark-gold .gbe-cp-progress__knob {
	background: #0A0807;
	border-color: #C9A96E;
	box-shadow: 0 2px 6px rgba(201, 169, 110, 0.55), 0 0 0 4px rgba(201, 169, 110, 0.15);
}
.gbe-theme-dark-gold .gbe-cp-progress.is-complete .gbe-cp-progress__fill {
	background: linear-gradient(90deg, #C9A96E 0%, #E5C682 100%) !important;
}
.gbe-theme-dark-gold .gbe-cp-progress.is-complete .gbe-cp-progress__knob {
	border-color: #E5C682;
	box-shadow: 0 2px 6px rgba(229, 198, 130, 0.6), 0 0 0 4px rgba(229, 198, 130, 0.18);
}

/* ================================================================
   PROGRESS BAR — match new rounded container in dark-gold
   ================================================================ */
.gbe-theme-dark-gold .gbe-cp-progress {
	border: 1px solid rgba(201, 169, 110, 0.22);
	box-shadow: 0 4px 14px -8px rgba(0, 0, 0, 0.5);
}

/* ================================================================
   PILL OPTIONS (Sì/No, Pranzo/Cena, ecc.) — gold borders + bg
   ================================================================ */
.gbe-theme-dark-gold .gbe-cp-pill-option {
	background: #1A1612;
	border-color: rgba(201, 169, 110, 0.25);
	color: #FFFFFF;
}
.gbe-theme-dark-gold .gbe-cp-pill-option:hover {
	border-color: #C9A96E;
	background: #241E18;
	color: #C9A96E;
}
.gbe-theme-dark-gold .gbe-cp-pill-option input[type="radio"]:checked ~ span,
.gbe-theme-dark-gold .gbe-cp-pill-option input[type="checkbox"]:checked ~ span {
	color: #0A0807;
}
.gbe-theme-dark-gold .gbe-cp-pill-option:has(input:checked) {
	background: linear-gradient(180deg, #C9A96E 0%, #A8884D 100%);
	border-color: #E5C682;
	color: #0A0807;
	box-shadow: 0 6px 16px -6px rgba(201, 169, 110, 0.45);
}

/* ================================================================
   LEVEL PILLS (Gourmet / Luxury) — premium dark variant
   ================================================================ */
.gbe-theme-dark-gold .gbe-cp-level-pill {
	background: #1A1612;
	border-color: rgba(201, 169, 110, 0.25);
}
.gbe-theme-dark-gold .gbe-cp-level-pill:hover {
	border-color: #C9A96E;
	background: #241E18;
}
.gbe-theme-dark-gold .gbe-cp-level-pill__name { color: #FFFFFF; }
.gbe-theme-dark-gold .gbe-cp-level-pill__price { color: #C9A96E; }
.gbe-theme-dark-gold .gbe-cp-level-pill__price--kid { color: #A0968A; }
.gbe-theme-dark-gold .gbe-cp-level-pill:has(input:checked) {
	background: linear-gradient(180deg, #241E18 0%, #1A1612 100%);
	border-color: #C9A96E;
	box-shadow: 0 0 0 2px rgba(201, 169, 110, 0.35),
	            0 10px 24px -6px rgba(201, 169, 110, 0.4);
}
.gbe-theme-dark-gold .gbe-cp-level-pill:has(input:checked) .gbe-cp-level-pill__name { color: #E5C682; }
.gbe-theme-dark-gold .gbe-cp-level-pill:has(input:checked) .gbe-cp-level-pill__price { color: #FFFFFF; }

/* ================================================================
   VENUE CARDS (location partner) — luxury dark variant
   ================================================================ */
.gbe-theme-dark-gold .gbe-cp-venue-card {
	background: #1A1612;
	border-color: rgba(201, 169, 110, 0.25);
	color: #FFFFFF;
}
.gbe-theme-dark-gold .gbe-cp-venue-card:hover {
	border-color: #C9A96E;
	background: #241E18;
	box-shadow: 0 8px 22px -8px rgba(201, 169, 110, 0.35);
}
.gbe-theme-dark-gold .gbe-cp-venue-card__img--ph {
	background: #241E18;
	color: #C9A96E;
}
.gbe-theme-dark-gold .gbe-cp-venue-card__name {
	color: #E5C682;
	font-family: 'Cormorant Garamond', 'Fraunces', serif;
	font-style: italic;
}
.gbe-theme-dark-gold .gbe-cp-venue-card__addr,
.gbe-theme-dark-gold .gbe-cp-venue-card__meta { color: #A0968A; }
.gbe-theme-dark-gold .gbe-cp-venue-card:has(input:checked) {
	border-color: #E5C682;
	background: linear-gradient(180deg, #241E18 0%, #1A1612 100%);
	box-shadow: 0 0 0 2px rgba(229, 198, 130, 0.4),
	            0 10px 24px -6px rgba(201, 169, 110, 0.45);
}

/* ================================================================
   DATETIME PICKER FOOTER (Oggi / Cancella / Conferma)
   The picker modal lives in document.body so we scope via :has().
   ================================================================ */
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__today,
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__clear {
	background: transparent;
	border: 1px solid rgba(201, 169, 110, 0.45);
	color: #C9A96E;
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__today:hover,
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__clear:hover {
	background: #C9A96E;
	color: #0A0807;
	border-color: #E5C682;
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__footer {
	border-top: 1px solid rgba(201, 169, 110, 0.18);
}

/* Day cells: weekend & holiday tints recolored for dark surface */
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--saturday {
	background: rgba(201, 169, 110, 0.08);
	border-color: rgba(201, 169, 110, 0.25);
	color: #E5C682;
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--sunday {
	background: rgba(229, 198, 130, 0.14);
	border-color: rgba(229, 198, 130, 0.4);
	color: #FFE9B2;
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--holiday {
	background: linear-gradient(180deg, rgba(229, 198, 130, 0.22) 0%, rgba(168, 136, 77, 0.28) 100%);
	border-color: #C9A96E;
	color: #FFE9B2;
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--holiday::before {
	background: #E5C682;
	box-shadow: 0 0 0 1px #1A1612;
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--semi-holiday {
	background: rgba(168, 136, 77, 0.16);
	border-color: rgba(168, 136, 77, 0.4);
	color: #C9A96E;
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--semi-holiday::before {
	background: #A8884D;
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--today {
	box-shadow: 0 0 0 2px rgba(201, 169, 110, 0.3);
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__weekdays { color: #A0968A; }
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--other { color: #5C5247; }

/* Selected day always wins (gold gradient) */
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--selected,
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--selected.gbe-dtp__day--saturday,
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--selected.gbe-dtp__day--sunday,
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--selected.gbe-dtp__day--holiday,
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--selected.gbe-dtp__day--semi-holiday {
	background: linear-gradient(180deg, #E5C682 0%, #C9A96E 100%) !important;
	color: #0A0807 !important;
	border-color: #E5C682 !important;
}

/* ================================================================
   FORM FIELDS / INPUTS / TEXTAREA (Chef Pro)
   ================================================================ */
.gbe-theme-dark-gold .gbe-cp-input {
	background: #1A1612;
	border-color: rgba(201, 169, 110, 0.28);
	color: #FFFFFF;
}
.gbe-theme-dark-gold .gbe-cp-input::placeholder { color: #6B6055; }
.gbe-theme-dark-gold .gbe-cp-input:focus {
	border-color: #C9A96E;
	background: #241E18;
	box-shadow: 0 0 0 3px rgba(201, 169, 110, 0.18);
}
.gbe-theme-dark-gold .gbe-cp-field__label,
.gbe-theme-dark-gold .gbe-cp-field__hint { color: #A0968A; }

/* Phone prefix block */
.gbe-theme-dark-gold .gbe-cp-phone-prefix {
	background: #241E18;
	border-color: rgba(201, 169, 110, 0.28);
	color: #C9A96E;
}

/* Counters (+/- buttons) */
.gbe-theme-dark-gold .gbe-cp-counter__btn {
	background: #241E18;
	border-color: rgba(201, 169, 110, 0.3);
	color: #C9A96E;
}
.gbe-theme-dark-gold .gbe-cp-counter__btn:hover:not(:disabled) {
	background: #C9A96E;
	color: #0A0807;
	border-color: #E5C682;
}
.gbe-theme-dark-gold .gbe-cp-counter__value { color: #FFFFFF; }
.gbe-theme-dark-gold .gbe-cp-counter__label { color: #FFFFFF; }
.gbe-theme-dark-gold .gbe-cp-counter__hint { color: #A0968A; }

/* Wine row labels — Cormorant Garamond has a smaller x-height than Fraunces
   (the default editorial font), so the SAME font-size:1rem renders visually
   smaller. Bump by ~12% to maintain readability parity between themes. */
.gbe-theme-dark-gold .gbe-cp-wine-row__label {
	color: #FFFFFF;
	font-size: 1.12rem;
	letter-spacing: 0;          /* Cormorant prefers natural spacing */
	font-style: italic;
	font-weight: 500;
}
/* Same compensation applied to the other key wine/level labels so the entire
   step has uniform visual weight across themes. */
.gbe-theme-dark-gold .gbe-cp-level-pill__name {
	font-size: 1.18rem;
	letter-spacing: 0;
}
.gbe-theme-dark-gold .gbe-cp-level-pill__price {
	font-size: 1rem;
}
.gbe-theme-dark-gold .gbe-cp-counter__label,
.gbe-theme-dark-gold .gbe-cp-counter__value {
	font-size: 1.08rem;
}
.gbe-theme-dark-gold .gbe-cp-radio-card__title,
.gbe-theme-dark-gold .gbe-cp-pill-option {
	font-size: 1.08rem;
}
.gbe-theme-dark-gold .gbe-cp-radio-card__desc {
	font-size: 0.95rem;
}
.gbe-theme-dark-gold .gbe-cp-recap__key,
.gbe-theme-dark-gold .gbe-cp-recap__val {
	font-size: 1.05rem;
}
.gbe-theme-dark-gold .gbe-cp-sub {
	font-size: 1.05rem;
}

/* ================================================================
   DATETIME PICKER — full dark surface (header / nav / body / weekdays)
   The picker modal sits in document.body so we scope via :has().
   ================================================================ */
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__header {
	border-bottom-color: rgba(201, 169, 110, 0.28); /* was light cream dashed */
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__footer {
	border-top: 1px solid rgba(201, 169, 110, 0.18);
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__body {
	background: transparent; /* let the dark panel show through */
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__nav .gbe-dtp__month-year { color: #FFFFFF; }
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__weekdays span { color: #A0968A; }
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__times-grid { background: transparent; }
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day:hover:not(:disabled) {
	border-color: #C9A96E;
	color: #E5C682;
	box-shadow: 0 6px 14px -6px rgba(201, 169, 110, 0.4);
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--today {
	background: rgba(201, 169, 110, 0.08);
	border-color: rgba(201, 169, 110, 0.45);
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__day--today::after { background: #C9A96E; }
body:has(.gbe-theme-dark-gold) .gbe-dtp::-webkit-scrollbar-thumb,
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__body::-webkit-scrollbar-thumb {
	background: rgba(201, 169, 110, 0.3);
}

/* ================================================================
   WINE ROW (Chef Pro wine tier counter rows)
   ================================================================ */
.gbe-theme-dark-gold .gbe-cp-wine-row {
	background: #1A1612;
	border: 1px solid rgba(201, 169, 110, 0.18);
	border-radius: 12px;
}
.gbe-theme-dark-gold .gbe-cp-wine-tiers > * + * { border-top-color: rgba(201, 169, 110, 0.18); }

/* ================================================================
   RECAP CARD (riepilogo prima del pagamento)
   ================================================================ */
.gbe-theme-dark-gold .gbe-cp-recap {
	background: #1A1612;
	border: 1px solid rgba(201, 169, 110, 0.22);
}
.gbe-theme-dark-gold .gbe-cp-recap__eyebrow { color: #A0968A; }
.gbe-theme-dark-gold .gbe-cp-recap__title { color: #E5C682; }
.gbe-theme-dark-gold .gbe-cp-recap__lead { color: #A0968A; }
.gbe-theme-dark-gold .gbe-cp-recap__group { color: #C9A96E; border-bottom-color: rgba(201, 169, 110, 0.2); }
.gbe-theme-dark-gold .gbe-cp-recap__key { color: #A0968A; }
.gbe-theme-dark-gold .gbe-cp-recap__val { color: #FFFFFF; }
.gbe-theme-dark-gold .gbe-cp-recap__hint { color: #8A8074; }
.gbe-theme-dark-gold .gbe-cp-recap__total-row {
	background: linear-gradient(180deg, #241E18 0%, #1A1612 100%);
	border-top: 1px solid rgba(201, 169, 110, 0.3);
}
.gbe-theme-dark-gold .gbe-cp-recap__total-eyebrow { color: #A0968A; }
.gbe-theme-dark-gold .gbe-cp-recap__total-note { color: #8A8074; }
.gbe-theme-dark-gold .gbe-cp-recap__total-amount { color: #E5C682; }
.gbe-theme-dark-gold .gbe-cp-recap__edge { filter: invert(1) hue-rotate(180deg); }

/* ================================================================
   PRICE PREVIEW + PRICE RECAP (payment step header)
   ================================================================ */
.gbe-theme-dark-gold .gbe-price-recap,
.gbe-theme-dark-gold .gbe-price-preview {
	background: #1A1612;
	border: 1px solid rgba(201, 169, 110, 0.22);
	color: #FFFFFF;
}

/* ================================================================
   POLICY BOX + privacy note
   ================================================================ */
.gbe-theme-dark-gold .gbe-policy-box {
	background: rgba(201, 169, 110, 0.08);
	border-color: rgba(201, 169, 110, 0.3);
	color: #C9A96E;
}
.gbe-theme-dark-gold .gbe-cp-privacy { color: #A0968A; }
.gbe-theme-dark-gold .gbe-cp-privacy a { color: #E5C682; }

/* ================================================================
   PAYMENT METHOD CARDS (gbe-pm-card) — checkout grid
   ================================================================ */
.gbe-theme-dark-gold .gbe-pm-card {
	background: #1A1612;
	border-color: rgba(201, 169, 110, 0.25);
	color: #FFFFFF;
}
.gbe-theme-dark-gold .gbe-pm-card:hover {
	border-color: #C9A96E;
	background: #241E18;
	box-shadow: 0 8px 22px -8px rgba(201, 169, 110, 0.35);
}
.gbe-theme-dark-gold .gbe-pm-card__title { color: #E5C682; }
.gbe-theme-dark-gold .gbe-pm-card__desc { color: #A0968A; }
.gbe-theme-dark-gold .gbe-pm-card__arrow { color: #C9A96E; }
.gbe-theme-dark-gold .gbe-pm-card__icon { background: #241E18; border-radius: 8px; }

/* ================================================================
   LANGUAGE BACK BUTTON — dark-gold variant of the inline-styled pill
   The button has inline styles for cache-stability; the inline style
   is theme-aware server-side, but if for some reason a cached page
   serves the editorial style on a dark-gold theme, this rule corrects.
   ================================================================ */
.gbe-theme-dark-gold .gbe-lang-back-inline,
.gbe-theme-dark-gold .gbe-cp-lang-back {
	border-color: rgba(201, 169, 110, 0.45) !important;
	color: #C9A96E !important;
	background: transparent !important;
}
.gbe-theme-dark-gold .gbe-lang-back-inline:hover,
.gbe-theme-dark-gold .gbe-cp-lang-back:hover {
	background: #C9A96E !important;
	color: #0A0807 !important;
	border-color: #E5C682 !important;
}

/* ================================================================
   THANK-YOU HERO — overlay tint for dark theme
   ================================================================ */
.gbe-theme-dark-gold .gbe-cp-hero__overlay {
	background: linear-gradient(180deg, rgba(10,8,7,0.4) 0%, rgba(10,8,7,0.92) 100%);
}
.gbe-theme-dark-gold .gbe-cp-hero__title { color: #E5C682; }
.gbe-theme-dark-gold .gbe-cp-hero__text  { color: #FFFFFF; }
.gbe-theme-dark-gold .gbe-cp-hero__code  { color: #C9A96E; border-color: rgba(201, 169, 110, 0.4); }

/* ================================================================
   DATETIME PICKER — additional fixes for footer bg + panel shadow
   These selectors override the cream-colored backgrounds and the
   light box-shadow inset baked into the default picker theme.
   ================================================================ */
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__panel {
	box-shadow:
		0 1px 0 rgba(201, 169, 110, 0.12) inset,
		0 40px 80px -20px rgba(0, 0, 0, 0.85);
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__footer {
	background: linear-gradient(180deg, transparent 0%, rgba(21, 16, 11, 0.92) 20%, #15100B 100%);
}

/* ================================================================
   DATETIME PICKER — close button (×) hover in dark-gold
   The default editorial hover is terracotta; in dark-gold we use
   champagne so the button stays visible on the dark panel.
   ================================================================ */
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__close {
	background: #1A1612;
	color: #C9A96E;
	border-color: rgba(201, 169, 110, 0.35);
}
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__close:hover,
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__close:focus-visible {
	background: #C9A96E;
	color: #0A0807;
	border-color: #E5C682;
	box-shadow: 0 6px 16px -4px rgba(201, 169, 110, 0.55);
}

/* Title color in dark-gold (was already covered but explicit for new margin rule) */
body:has(.gbe-theme-dark-gold) .gbe-dtp .gbe-dtp__title { color: #FFFFFF; }

/* ================================================================
   WINE ROW HOVER — fix white-on-white in dark-gold
   The base .gbe-cp-wine-row:hover sets a CREAM gradient background
   which clobbered our dark override and made the white label
   illegible. Override hover too with a dark variant.
   ================================================================ */
.gbe-theme-dark-gold .gbe-cp-wine-row:hover {
	background: linear-gradient(90deg, #1A1612 0%, #241E18 100%);
	border-color: #C9A96E;
	box-shadow: 0 6px 16px -8px rgba(201, 169, 110, 0.3);
}
.gbe-theme-dark-gold .gbe-cp-wine-row__label::before {
	color: #E5C682; /* saffron dot becomes champagne */
}

/* Multi-day range (Chef Pro) — dark-gold tint */
.gbe-theme-dark-gold .gbe-cp-daterange__arrow,
.gbe-theme-dark-gold .gbe-cp-daterange__nights {
	color: #C9A96E;
}

/* Date step CTA inputs + check-in/out chips — dark-gold variants */
.gbe-theme-dark-gold .gbe-cp-input--cta {
	background: #1A1612;
	border-color: rgba(201, 169, 110, 0.35);
	color: #E5C682;
}
.gbe-theme-dark-gold .gbe-cp-input--cta::placeholder { color: #C9A96E; }
.gbe-theme-dark-gold .gbe-cp-input--cta:hover {
	background: linear-gradient(180deg, #1A1612 0%, #241E18 100%);
	border-color: #C9A96E;
	box-shadow: 0 8px 18px -10px rgba(201, 169, 110, 0.4);
}
.gbe-theme-dark-gold .gbe-cp-input--cta:focus,
.gbe-theme-dark-gold .gbe-cp-input--cta:focus-visible {
	border-color: #E5C682;
	box-shadow: 0 0 0 3px rgba(201, 169, 110, 0.22);
}
.gbe-theme-dark-gold .gbe-cp-daterange__chip {
	color: #E5C682;
	background: rgba(201, 169, 110, 0.12);
}

/* Locked end-date picker (dark-gold) */
.gbe-theme-dark-gold .gbe-cp-daterange__field.is-locked .gbe-cp-input--cta {
	background: #15100B;
	border-color: rgba(201, 169, 110, 0.18);
	color: #A0968A;
	opacity: .8;
}
.gbe-theme-dark-gold .gbe-cp-daterange__field.is-locked .gbe-cp-input--cta:hover {
	background: #15100B;
	border-color: rgba(201, 169, 110, 0.18);
}
.gbe-theme-dark-gold .gbe-cp-daterange__locked-hint { color: #A0968A; }

/* ================================================================
   STANDARD MODE — location mode cards (A domicilio / Locale partner)
   Default white bg overridden to dark surface with gold accents.
   ================================================================ */
.gbe-theme-dark-gold .gbe-loc-mode__card {
	background: #1A1612;
	border-color: rgba(201, 169, 110, 0.25);
	color: #FFFFFF;
}
.gbe-theme-dark-gold .gbe-loc-mode__card:hover {
	background: #241E18;
	border-color: #C9A96E;
	box-shadow: 0 10px 24px -12px rgba(201, 169, 110, 0.4);
}
.gbe-theme-dark-gold .gbe-loc-mode__card:has(input:checked) {
	background: linear-gradient(180deg, #241E18 0%, #1A1612 100%);
	border-color: #E5C682;
	box-shadow: 0 8px 20px -10px rgba(201, 169, 110, 0.45),
	            inset 0 0 0 1px rgba(229, 198, 130, 0.35);
}
.gbe-theme-dark-gold .gbe-loc-mode__title { color: #E5C682; }
.gbe-theme-dark-gold .gbe-loc-mode__desc  { color: #A0968A; }

/* Standard form inputs — dark-gold variant */
.gbe-theme-dark-gold .gbe-form__input,
.gbe-theme-dark-gold .gbe-form__select,
.gbe-theme-dark-gold .gbe-form__textarea {
	background: #1A1612 !important;
	color: #E5C682 !important;
	border-color: rgba(201, 169, 110, 0.28) !important;
}
.gbe-theme-dark-gold .gbe-form__input::placeholder { color: #6B6055; }
.gbe-theme-dark-gold .gbe-form__group::after { background: #C9A96E !important; }
.gbe-theme-dark-gold .gbe-form__label { color: #C9A96E; }

.gbe-theme-dark-gold .gbe-cp-daterange__time-hint { color: #C9A96E; }

/* Calendar icon in date inputs — champagne stroke for dark-gold theme.
   Re-asserts background-position/repeat/size to defend against cascade
   resets that would tile the icon across the input. */
.gbe-theme-dark-gold .gbe-form__date,
.gbe-theme-dark-gold .gbe-form__time {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23C9A96E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E") !important;
	background-position: right 14px center !important;
	background-repeat: no-repeat !important;
	background-size: 18px 18px !important;
}
.gbe-theme-dark-gold .gbe-form__date:hover,
.gbe-theme-dark-gold .gbe-form__time:hover {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23E5C682' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E") !important;
	background-position: right 14px center !important;
	background-repeat: no-repeat !important;
	background-size: 18px 18px !important;
}

/* ========================================================================
   READABILITY PASS — bump font sizes & contrast for secondary text in
   dark-gold mode. The original muted color #A0968A passes WCAG AA but felt
   washed out vs the warm cream of editorial mode. Switch to #C5BBAA (warm
   bright grey, ~AAA contrast on the dark surfaces) and bump small text by
   ~10-15% to match Cormorant's smaller x-height.
   ======================================================================== */
.gbe-theme-dark-gold .gbe-cp-sub,
.gbe-theme-dark-gold .gbe-cp-recap__lead,
.gbe-theme-dark-gold .gbe-cp-recap__eyebrow,
.gbe-theme-dark-gold .gbe-cp-recap__total-eyebrow,
.gbe-theme-dark-gold .gbe-cp-recap__key,
.gbe-theme-dark-gold .gbe-cp-recap__hint,
.gbe-theme-dark-gold .gbe-cp-field__hint,
.gbe-theme-dark-gold .gbe-cp-counter__hint,
.gbe-theme-dark-gold .gbe-cp-radio-card__desc,
.gbe-theme-dark-gold .gbe-cp-privacy,
.gbe-theme-dark-gold .gbe-cp-progress__step-label,
.gbe-theme-dark-gold .gbe-cp-level-pill__price--kid,
.gbe-theme-dark-gold .gbe-cp-venue-card__meta,
.gbe-theme-dark-gold .gbe-cp-daterange__locked-hint,
.gbe-theme-dark-gold .gbe-loc-mode__desc,
.gbe-theme-dark-gold .gbe-pm-card__desc,
.gbe-theme-dark-gold .gbe-policy-box,
.gbe-theme-dark-gold .gbe-message__body,
.gbe-theme-dark-gold .gbe-contact-terms,
.gbe-theme-dark-gold .gbe-price-recap__left,
.gbe-theme-dark-gold .gbe-step-dot__label,
.gbe-theme-dark-gold .gbe-pm-card__badge--soon,
.gbe-theme-dark-gold .gbe-secure-payments__label {
	color: #C5BBAA !important;
}

/* Field hints / sub-titles need a meaningful minimum size in dark mode where
   the warm-grey-on-dark is harder to skim than near-black on cream. */
.gbe-theme-dark-gold .gbe-cp-sub             { font-size: 1.08rem !important; line-height: 1.55; }
.gbe-theme-dark-gold .gbe-cp-field__hint     { font-size: 0.92rem !important; line-height: 1.5; }
.gbe-theme-dark-gold .gbe-cp-counter__hint   { font-size: 0.92rem !important; }
.gbe-theme-dark-gold .gbe-cp-radio-card__desc{ font-size: 1rem    !important; line-height: 1.45; }
.gbe-theme-dark-gold .gbe-cp-privacy         { font-size: 0.92rem !important; line-height: 1.55; }
.gbe-theme-dark-gold .gbe-cp-recap__lead     { font-size: 1rem    !important; }
.gbe-theme-dark-gold .gbe-cp-daterange__locked-hint { font-size: 0.95rem !important; line-height: 1.5; }
.gbe-theme-dark-gold .gbe-cp-daterange__nights      { font-size: 1.05rem !important; }
.gbe-theme-dark-gold .gbe-cp-daterange__time-hint   { font-size: 1rem    !important; color: #E5C682 !important; }
.gbe-theme-dark-gold .gbe-cp-daterange__chip        { font-size: 0.85rem; letter-spacing: 0.06em; }

/* Field labels (Indirizzo, Nome, etc.) deserve a bit more presence too. */
.gbe-theme-dark-gold .gbe-cp-field__label,
.gbe-theme-dark-gold .gbe-form__label {
	font-size: 0.95rem !important;
	color: #E0C687 !important;
	letter-spacing: 0.02em;
}

/* Inputs themselves — slightly larger so dark backgrounds stay legible. */
.gbe-theme-dark-gold .gbe-cp-input,
.gbe-theme-dark-gold .gbe-form__input,
.gbe-theme-dark-gold .gbe-form__textarea,
.gbe-theme-dark-gold .gbe-form__select {
	font-size: 1.02rem !important;
	color: #FFFFFF !important;
}
.gbe-theme-dark-gold .gbe-cp-input::placeholder,
.gbe-theme-dark-gold .gbe-form__input::placeholder {
	color: #8C7F6E !important;       /* brighter than the previous #6B6055 */
	font-style: italic;
}
