/*
 * Luxenest 2026 Brand Refresh
 * ---------------------------------------------------------------
 * Final visual layer for the Laravel application. It mirrors the
 * approved Luxenest React design language and uses the supplied
 * embossed gold/navy Luxenest master logo assets.
 */

:root {
    --lx-font-body: 'Manrope', system-ui, sans-serif;
    --lx-font-display: 'Playfair Display', Georgia, serif;
    --lx-font-alt: 'Outfit', system-ui, sans-serif;
    --lx-navy: #0b1b34;
    --lx-navy-deep: #061225;
    --lx-navy-soft: #17304f;
    --lx-gold: #c7a15b;
    --lx-gold-strong: #ad7f2e;
    --lx-gold-light: #f0d99a;
    --lx-ivory: #f7f2e8;
    --lx-cream: #efe4d1;
    --lx-surface: #fffdf8;
    --lx-white: #ffffff;
    --lx-muted: #667085;
    --lx-guide: #6f756f;
    --lx-line: #ded2bf;
    --lx-success: #167a5a;
    --lx-danger: #b42318;
    --lx-warning: #9a6700;
    --lx-portal-bg: #f4eee3;
    --lx-shadow-sm: 0 10px 28px rgba(11, 27, 52, .07);
    --lx-shadow-md: 0 18px 48px rgba(11, 27, 52, .085);
    --lx-shadow-lg: 0 26px 72px rgba(11, 27, 52, .13);

    /* Compatibility aliases retained for existing modules. */
    --forest: var(--lx-navy);
    --forest-dark: var(--lx-navy-deep);
    --forest-soft: var(--lx-navy-soft);
    --gold: var(--lx-gold);
    --cream: var(--lx-ivory);
    --white: var(--lx-white);
    --text: var(--lx-navy);
    --muted: var(--lx-muted);
    --border: var(--lx-line);
    --danger: var(--lx-danger);
    --success: var(--lx-success);
    --warning: var(--lx-warning);
    --shadow: var(--lx-shadow-lg);
    --lux-forest: var(--lx-navy);
    --lux-forest-dark: var(--lx-navy-deep);
}

html { color-scheme: light; }
body {
    min-width: 320px;
    background:
        radial-gradient(circle at 12% 0%, rgba(240, 217, 154, .24), transparent 25rem),
        var(--lx-ivory);
    color: var(--lx-navy);
}
::selection { background: rgba(199, 161, 91, .30); color: var(--lx-navy); }

/* Prevent the decorative grain from sitting above interactive overlays. */
.grain::before { z-index: 1; opacity: .022; }
/* Do not force positioning/z-index onto every direct body child.
   That rule previously converted the fixed skip-link / WhatsApp control and the
   sticky public header into normal-flow elements, creating the empty strip at
   the top of the page and breaking sticky behaviour. */

/* --------------------------------------------------------------------------
   Brand asset system
   -------------------------------------------------------------------------- */
.luxenest-logo-link {
    border-radius: 14px;
    line-height: 0;
}
.luxenest-logo-link--dark {
    padding: 7px;
    border: 1px solid rgba(240, 217, 154, .32);
    background: rgba(255, 253, 248, .97);
    box-shadow: 0 10px 28px rgba(0, 0, 0, .12);
}
.luxenest-logo {
    display: block;
    max-width: 100%;
    object-fit: contain;
    filter: saturate(1.035) contrast(1.025);
    user-select: none;
}
.luxenest-logo--mark.luxenest-logo--sm { width: 46px; height: 46px; }
.luxenest-logo--mark.luxenest-logo--md { width: 58px; height: 58px; }
.luxenest-logo--mark.luxenest-logo--lg { width: 76px; height: 76px; }
.luxenest-logo--mark.luxenest-logo--xl { width: 104px; height: 104px; }
.luxenest-logo--full { width: auto; height: auto; }
.luxenest-logo--full.luxenest-logo--sm { width: 92px; max-height: none; }
.luxenest-logo--full.luxenest-logo--md { width: 118px; max-height: none; }
.luxenest-logo--full.luxenest-logo--lg { width: 148px; max-height: none; }
.luxenest-logo--full.luxenest-logo--xl { width: 190px; max-height: none; }

/* --------------------------------------------------------------------------
   Shared typography, labels, controls and surfaces
   -------------------------------------------------------------------------- */
/* React typography parity: display headings are Playfair Display at the browser/Tailwind default 400 weight. */
.admin-shell :is(h1,h2,h3,h4,h5,h6),
.owner-shell :is(h1,h2,h3,h4,h5,h6),
.guest-shell :is(h1,h2,h3,h4,h5,h6),
.auth-body :is(h1,h2,h3,h4,h5,h6) {
    font-family: var(--lx-font-display) !important;
    font-weight: 400 !important;
}
.admin-shell,
.owner-shell,
.guest-shell,
.auth-body {
    font-family: var(--lx-font-body);
}

h1, h2, h3, h4, h5, h6, .font-display {
    color: var(--lx-navy);
    font-family: var(--lx-font-display);
    font-weight: 400;
}

.section-label,
.page-eyebrow,
.hero-eyebrow,
.property-eyebrow,
.admin-shell .page-heading > div > span,
.admin-shell .p9-heading > div > span,
.admin-shell .p10-heading > div > span,
.admin-shell .p11-heading > div > span,
.admin-shell .p12-heading > div > span,
.admin-shell .p13-heading > div > span,
.admin-shell .p14-heading > div > span,
.owner-overview-heading > span,
.guest-stay-eyebrow,
.guest-empty-card > span,
.auth-kicker,
.auth-eyebrow {
    display: inline-flex !important;
    width: fit-content;
    max-width: 100%;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 8px 13px;
    border: 1px solid rgba(199, 161, 91, .44) !important;
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(199, 161, 91, .18), rgba(240, 217, 154, .31)) !important;
    color: var(--lx-navy) !important;
    box-shadow: 0 7px 22px rgba(11, 27, 52, .055);
    font-family: 'Manrope', system-ui, sans-serif !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 1.15;
    letter-spacing: .16em !important;
    text-transform: uppercase;
}
.section-label::before,
.page-eyebrow::before,
.hero-eyebrow::before,
.property-eyebrow::before,
.admin-shell .page-heading > div > span::before,
.admin-shell .p9-heading > div > span::before,
.admin-shell .p10-heading > div > span::before,
.admin-shell .p11-heading > div > span::before,
.admin-shell .p12-heading > div > span::before,
.admin-shell .p13-heading > div > span::before,
.admin-shell .p14-heading > div > span::before,
.owner-overview-heading > span::before,
.guest-stay-eyebrow::before,
.guest-empty-card > span::before,
.auth-kicker::before,
.auth-eyebrow::before {
    width: 6px;
    height: 6px;
    flex: 0 0 6px;
    content: '';
    border-radius: 50%;
    background: var(--lx-gold-strong);
    box-shadow: 0 0 0 3px rgba(199, 161, 91, .13);
}
.heading-flourish,
.heading-flourish--light { display: none !important; }

.button,
.button-primary,
.button-secondary,
.button-forest,
.button-light,
.auth-submit,
.guest-primary-action,
.owner-request-form button,
.admin-shell :is(.p9-primary,.p10-primary,.p11-primary,.p12-primary,.p13-primary,.p14-primary),
.admin-shell :is(.p9-secondary,.p10-secondary,.p11-secondary,.p12-secondary,.p13-secondary,.p14-secondary) {
    min-height: 46px;
    border-radius: 999px !important;
    font-weight: 700;
    letter-spacing: .01em;
    transition: transform 180ms ease, background-color 180ms ease, color 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}
.button-gold,
.button-primary,
.button-forest,
.auth-submit,
.guest-primary-action,
.owner-request-form button,
.admin-shell :is(.p9-primary,.p10-primary,.p11-primary,.p12-primary,.p13-primary,.p14-primary) {
    border-color: var(--lx-gold) !important;
    background: linear-gradient(135deg, var(--lx-gold), #dcc486) !important;
    color: var(--lx-navy) !important;
    box-shadow: 0 12px 28px rgba(173, 127, 46, .21) !important;
}
.button-gold:hover,
.button-primary:hover,
.button-forest:hover,
.auth-submit:hover,
.guest-primary-action:hover,
.owner-request-form button:hover,
.admin-shell :is(.p9-primary,.p10-primary,.p11-primary,.p12-primary,.p13-primary,.p14-primary):hover {
    transform: translateY(-1px);
    background: linear-gradient(135deg, #d4b56f, var(--lx-gold-light)) !important;
    box-shadow: 0 16px 34px rgba(173, 127, 46, .27) !important;
}
.button-secondary,
.button-light,
.admin-shell :is(.p9-secondary,.p10-secondary,.p11-secondary,.p12-secondary,.p13-secondary,.p14-secondary) {
    border-color: rgba(11, 27, 52, .32) !important;
    background: rgba(255, 253, 248, .82) !important;
    color: var(--lx-navy) !important;
}
.button-secondary:hover,
.button-light:hover,
.admin-shell :is(.p9-secondary,.p10-secondary,.p11-secondary,.p12-secondary,.p13-secondary,.p14-secondary):hover {
    transform: translateY(-1px);
    border-color: var(--lx-navy) !important;
    background: var(--lx-navy) !important;
    color: var(--lx-ivory) !important;
}

input:not([type='checkbox']):not([type='radio']),
select,
textarea {
    border-color: rgba(199, 161, 91, .34);
}
input:not([type='checkbox']):not([type='radio']):focus,
select:focus,
textarea:focus {
    border-color: var(--lx-gold-strong) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(199, 161, 91, .14) !important;
}
input[type='checkbox'], input[type='radio'] { accent-color: var(--lx-gold-strong); }

/* --------------------------------------------------------------------------
   Public shell
   -------------------------------------------------------------------------- */
.public-body {
    background:
        radial-gradient(circle at 12% 0%, rgba(240, 217, 154, .20), transparent 25rem),
        var(--lx-ivory) !important;
    color: var(--lx-navy);
}
.site-header {
    border-bottom: 1px solid rgba(222, 210, 191, .56) !important;
    background: rgba(247, 242, 232, .955) !important;
    box-shadow: 0 10px 32px rgba(11, 27, 52, .065) !important;
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}
.site-header.is-scrolled {
    border-bottom-color: rgba(199, 161, 91, .36) !important;
    background: rgba(247, 242, 232, .985) !important;
    box-shadow: 0 14px 38px rgba(11, 27, 52, .095) !important;
}
.site-header-inner { min-height: 96px !important; gap: 28px; }
.site-brand-lockup {
    display: inline-flex !important;
    min-width: 0;
    align-items: center;
    gap: 12px !important;
    padding: 0 !important;
    text-decoration: none;
}
.site-brand-mark {
    width: 58px !important;
    height: 58px !important;
    flex: 0 0 58px;
    object-fit: contain;
    filter: saturate(1.035) contrast(1.025);
}
.site-brand-wordmark {
    width: 164px;
    height: auto;
    max-height: 38px;
    object-fit: contain;
    object-position: left center;
    filter: saturate(1.025) contrast(1.04);
}
.site-brand-copy { display: none !important; }
.site-nav { gap: 9px !important; }
.site-nav-links, .site-nav-actions { gap: 7px !important; }
.site-nav a {
    min-height: 42px !important;
    padding-inline: 14px !important;
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    color: rgba(11, 27, 52, .78) !important;
    background: transparent !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    letter-spacing: .01em !important;
    transition: transform 170ms ease, background-color 170ms ease, color 170ms ease, border-color 170ms ease, box-shadow 170ms ease;
}
.site-nav-links > a::after { display: none !important; }
.site-nav a:hover {
    transform: translateY(-1px);
    border-color: rgba(199, 161, 91, .28) !important;
    background: rgba(199, 161, 91, .10) !important;
    color: var(--lx-navy) !important;
}
.site-nav a.is-active {
    border-color: rgba(199, 161, 91, .42) !important;
    background: rgba(199, 161, 91, .13) !important;
    color: var(--lx-navy) !important;
    box-shadow: 0 7px 20px rgba(11, 27, 52, .045) !important;
}
.site-nav a.site-nav-book {
    min-height: 44px !important;
    padding-inline: 20px !important;
    border-color: var(--lx-gold) !important;
    background: linear-gradient(135deg, var(--lx-gold), #dcc486) !important;
    color: var(--lx-navy) !important;
    box-shadow: 0 11px 25px rgba(173, 127, 46, .20) !important;
}
.site-nav a.site-nav-book:hover {
    background: linear-gradient(135deg, #d4b56f, var(--lx-gold-light)) !important;
    box-shadow: 0 15px 32px rgba(173, 127, 46, .27) !important;
}
.site-menu-button {
    border-color: rgba(199, 161, 91, .35) !important;
    background: rgba(255, 253, 248, .88) !important;
    color: var(--lx-navy) !important;
}

.public-body :is(.property-card,.booking-card,.booking-form-card,.booking-summary,.pending-booking-card,.amenity-group,.property-section-card,.lx-home-why-card,.lx-home-experience-card) {
    border-color: rgba(222, 210, 191, .75) !important;
    background: rgba(255, 253, 248, .98) !important;
    color: var(--lx-navy) !important;
    box-shadow: var(--lx-shadow-md) !important;
}
.public-body :is(.property-card,.booking-card,.booking-form-card,.booking-summary,.pending-booking-card,.amenity-group,.property-section-card) {
    border-radius: 18px !important;
}

.site-footer {
    border-top: 1px solid rgba(240, 217, 154, .12);
    background: var(--lx-navy-deep) !important;
    color: var(--lx-ivory) !important;
}
.site-footer .luxenest-logo-link--full { padding: 10px 12px; }
.site-footer .luxenest-logo--full.luxenest-logo--lg { width: 142px !important; height: auto !important; max-width: none !important; }
.site-footer-label {
    border: 1px solid rgba(240, 217, 154, .20) !important;
    background: rgba(199, 161, 91, .09) !important;
    color: var(--lx-gold-light) !important;
}
.site-footer-credit {
    border: 1px solid rgba(255, 255, 255, .065);
    background: rgba(255, 255, 255, .045) !important;
}

/* --------------------------------------------------------------------------
   Admin portal: dark structural navigation + light working canvas
   -------------------------------------------------------------------------- */
.admin-shell {
    background:
        radial-gradient(circle at 92% 0%, rgba(240, 217, 154, .26), transparent 27rem),
        var(--lx-portal-bg) !important;
    color: var(--lx-navy) !important;
}
.admin-shell .portal-sidebar {
    border-right: 1px solid rgba(240, 217, 154, .10) !important;
    background: var(--lx-navy-deep) !important;
    color: var(--lx-ivory) !important;
    box-shadow: 10px 0 34px rgba(6, 18, 37, .10);
}
.portal-brand-wrap {
    min-height: 118px !important;
    gap: 8px !important;
    border-bottom-color: rgba(240, 217, 154, .12) !important;
    background: rgba(255, 255, 255, .012);
}
.portal-brand-wrap .luxenest-logo-link--dark {
    padding: 5px !important;
    border-color: rgba(240, 217, 154, .28) !important;
    background: rgba(255, 253, 248, .96) !important;
}
.portal-brand-wrap .luxenest-logo--mark.luxenest-logo--sm {
    width: 58px !important;
    height: 58px !important;
}
.portal-brand-role { color: var(--lx-gold-light) !important; }
.admin-shell .portal-nav-label {
    color: rgba(247, 242, 232, .48) !important;
    letter-spacing: .16em !important;
}
.admin-shell .portal-nav-link {
    min-height: 43px !important;
    border: 1px solid transparent;
    border-radius: 12px !important;
    color: rgba(247, 242, 232, .77) !important;
    transition: transform 170ms ease, background-color 170ms ease, color 170ms ease, border-color 170ms ease;
}
.admin-shell a.portal-nav-link:hover {
    transform: translateX(2px);
    border-color: rgba(199, 161, 91, .15);
    background: rgba(199, 161, 91, .08) !important;
    color: var(--lx-gold-light) !important;
}
.admin-shell .portal-nav-link.is-active {
    border-color: rgba(240, 217, 154, .24) !important;
    background: rgba(199, 161, 91, .15) !important;
    color: var(--lx-gold-light) !important;
    box-shadow: inset 3px 0 0 var(--lx-gold), 0 9px 22px rgba(0, 0, 0, .08) !important;
}
.admin-shell .portal-nav-link.is-active svg { color: var(--lx-gold-light); }
.admin-shell .portal-sidebar-footer {
    border-top-color: rgba(240, 217, 154, .11) !important;
    background: rgba(0, 0, 0, .08) !important;
}
.portal-public-link,
.admin-shell .portal-logout {
    border-color: rgba(240, 217, 154, .14) !important;
    background: rgba(255, 255, 255, .025) !important;
    color: rgba(247, 242, 232, .68) !important;
}

.admin-shell .portal-topbar {
    min-height: 82px !important;
    border-bottom: 1px solid rgba(222, 210, 191, .72) !important;
    background: rgba(255, 253, 248, .955) !important;
    color: var(--lx-navy) !important;
    box-shadow: 0 8px 28px rgba(11, 27, 52, .055);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}
.admin-shell .portal-topbar-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0 0 4px !important;
    padding: 5px 9px;
    border: 1px solid rgba(199, 161, 91, .34);
    border-radius: 999px;
    background: rgba(199, 161, 91, .10);
    color: var(--lx-gold-strong) !important;
    letter-spacing: .14em !important;
}
.admin-shell .portal-topbar-eyebrow::before {
    width: 5px; height: 5px; content: ''; border-radius: 50%; background: var(--lx-gold-strong);
}
.admin-shell .portal-topbar-title {
    color: var(--lx-navy) !important;
    font-size: 21px !important;
}
.admin-shell .portal-topbar-site,
.admin-shell .portal-notification-button,
.admin-shell .portal-profile {
    border-color: rgba(222, 210, 191, .82) !important;
    background: rgba(255, 255, 255, .60) !important;
    color: var(--lx-navy) !important;
}
.admin-shell .portal-avatar {
    background: rgba(199, 161, 91, .15) !important;
    color: var(--lx-navy) !important;
    box-shadow: inset 0 0 0 1px rgba(173, 127, 46, .28) !important;
}
.admin-shell .portal-profile-copy strong { color: var(--lx-navy) !important; }
.admin-shell .portal-profile-copy span { color: var(--lx-guide) !important; }
.admin-shell .portal-menu-button {
    border-color: rgba(199, 161, 91, .33) !important;
    background: rgba(199, 161, 91, .08) !important;
    color: var(--lx-navy) !important;
}
.admin-shell .portal-content {
    min-width: 0;
    padding: clamp(26px, 3vw, 42px) !important;
    color: var(--lx-navy) !important;
}
.admin-shell .page-heading,
.admin-shell :is(.p9-heading,.p10-heading,.p11-heading,.p12-heading,.p13-heading,.p14-heading) { margin-bottom: 28px !important; }
.admin-shell .page-heading h1,
.admin-shell :is(.p9-heading,.p10-heading,.p11-heading,.p12-heading,.p13-heading,.p14-heading) h1 {
    margin-top: 10px !important;
    color: var(--lx-navy) !important;
    font-size: clamp(32px, 4vw, 48px) !important;
    line-height: 1.04 !important;
}
.admin-shell .page-heading p,
.admin-shell :is(.p9-heading,.p10-heading,.p11-heading,.p12-heading,.p13-heading,.p14-heading) p {
    color: var(--lx-guide) !important;
    font-size: 13px !important;
}

/* Common admin cards and panel systems across all completed phases. */
.admin-shell :is(
    .overview-stat,.overview-panel,
    .panel-card,.property-card,.reservation-card,.reservation-panel,
    .schedule-calendar-card,.schedule-form-card,.schedule-list-card,
    .amenity-editor-card,.amenity-group-card,.gallery-card,.gallery-upload-card,
    .form-card,.details-card,
    .ops-review-card,.ops-empty,.ops-stats article,.stay-content-grid>article,.stay-editor>section,
    .p9-panel,.p9-metrics article,.p9-filter,.p9-summary div,
    .p10-panel,.p10-metrics article,.p10-filter,.p10-summary div,
    .p11-panel,.p11-metrics article,.p11-enquiry-card,.p11-review-card,.p11-testimonial-card,.p11-savebar,
    .p12-panel,.p12-metrics article,.p12-mini-card,.p12-import-item,.p12-savebar,
    .p13-panel,.p13-metrics article,.p13-filter-bar,.p13-proposals article,.p13-answer,.p13-alert,.p13-definition,
    .p14-panel,.p14-summary-card,.p14-filter-bar,.p14-notification,.p14-preference-row,.p14-readiness-hero,.p14-check-result
) {
    border-color: rgba(222, 210, 191, .76) !important;
    background: rgba(255, 253, 248, .975) !important;
    color: var(--lx-navy) !important;
    box-shadow: var(--lx-shadow-md) !important;
}
.admin-shell :is(
    .overview-stat,.overview-panel,
    .panel-card,.property-card,.reservation-card,.reservation-panel,
    .schedule-calendar-card,.schedule-form-card,.schedule-list-card,
    .amenity-editor-card,.amenity-group-card,.gallery-card,.gallery-upload-card,
    .form-card,.details-card,.ops-review-card,.ops-empty,.stay-content-grid>article,.stay-editor>section,
    .p9-panel,.p10-panel,.p11-panel,.p12-panel,.p13-panel,.p14-panel
) { border-radius: 16px !important; }

.admin-shell :is(
    .overview-stat strong,.overview-panel h2,.overview-panel h3,
    .panel-card h2,.panel-card h3,.property-card h2,.reservation-card h2,.reservation-panel h2,
    .schedule-calendar-card h2,.schedule-form-card h2,.schedule-list-card h2,.schedule-record h3,
    .ops-review-card h2,.ops-review-card h3,.stay-content-grid h2,.stay-editor h2,.stay-editor h3,
    .p9-panel h2,.p9-panel h3,.p9-subheading,
    .p10-panel h2,.p10-panel h3,.p10-subheading,
    .p11-panel h2,.p11-panel h3,
    .p12-panel h2,.p12-panel h3,
    .p13-panel h2,.p13-panel h3,.p13-prompt strong,.p13-proposals h3,.p13-answer p,
    .p14-panel h2,.p14-panel h3
) { color: var(--lx-navy) !important; }

.admin-shell :is(
    .overview-stat span,.overview-stat small,.overview-panel p,.overview-empty,.system-list,.property-meta,
    .schedule-meta,.schedule-record p,.form-help,
    .ops-review-card p,.ops-empty p,.stay-content-grid p,.stay-editor p,
    .p9-help,.p9-muted,.p9-record small,.p9-compact>span,
    .p10-muted,.p10-timeline small,
    .p11-empty,.p11-enquiry-card p,.p11-review-card p,.p11-testimonial-card p,
    .p12-empty,.p12-guidance,.p12-details,
    .p13-empty,.p13-run-meta,.p13-proposals p,.p13-result-list span,.p13-result-list small,.p13-alert p,
    .p14-empty,.p14-muted,.p14-guidance,.p14-notification-meta
) { color: var(--lx-guide) !important; }

.admin-shell :is(.overview-stat strong,.p9-metrics strong,.p10-metrics strong,.p11-metrics strong,.p12-metrics strong,.p13-metrics strong,.p14-summary-card strong) {
    color: var(--lx-navy) !important;
}
.admin-shell :is(.overview-stat span,.p9-metrics span,.p10-metrics span,.p11-metrics span,.p12-metrics span,.p13-metrics span,.p14-summary-card span) {
    color: var(--lx-gold-strong) !important;
}

.admin-shell input:not([type='checkbox']):not([type='radio']),
.admin-shell select,
.admin-shell textarea,
.admin-shell :is(.p9-panel,.p9-filter,.p10-panel,.p10-filter,.p11-panel,.p11-filter,.p12-panel,.p12-form,.p13-panel,.p13-filter-bar,.p14-panel,.p14-filter-bar) :is(input,select,textarea) {
    border-color: rgba(199, 161, 91, .34) !important;
    background: rgba(255, 255, 255, .96) !important;
    color: var(--lx-navy) !important;
}
.admin-shell input::placeholder,
.admin-shell textarea::placeholder { color: rgba(11, 27, 52, .38) !important; }
.admin-shell select option { background: #fff !important; color: var(--lx-navy) !important; }
.admin-shell label,
.admin-shell .form-label,
.admin-shell :is(.p9-form-grid,.p10-form-grid,.p11-form-grid,.p12-form,.p13-form,.p14-form) label > span {
    color: var(--lx-gold-strong) !important;
}

.admin-shell :is(.p9-table-wrap,.p10-table-wrap,.p12-table-wrap,.p13-table-wrap,.p14-table-wrap,.reservation-table-wrap) {
    overflow: auto;
    border-color: rgba(222, 210, 191, .82) !important;
    background: var(--lx-surface) !important;
    box-shadow: var(--lx-shadow-sm);
}
.admin-shell table,
.admin-shell :is(.p9-table,.p10-table,.p12-table,.p13-table,.p14-table,.reservation-table) {
    color: var(--lx-navy) !important;
    background: transparent !important;
}
.admin-shell th,
.admin-shell :is(.p9-table,.p10-table,.p12-table,.p13-table,.p14-table,.reservation-table) th {
    border-color: rgba(222, 210, 191, .72) !important;
    background: rgba(239, 228, 209, .48) !important;
    color: #7a613f !important;
}
.admin-shell td,
.admin-shell :is(.p9-table,.p10-table,.p12-table,.p13-table,.p14-table,.reservation-table) td {
    border-color: rgba(222, 210, 191, .58) !important;
    color: var(--lx-navy) !important;
}
.admin-shell tbody tr:hover { background: rgba(199, 161, 91, .045); }

/* Dashboard-specific light conversion. */
.admin-shell .overview-layout { color: var(--lx-navy) !important; }
.admin-shell .overview-panel-header { border-bottom-color: rgba(222, 210, 191, .70) !important; }
.admin-shell .overview-panel-header span { color: var(--lx-gold-strong) !important; }
.admin-shell .overview-panel-header h2 { color: var(--lx-navy) !important; }
.admin-shell .overview-panel-header a { color: var(--lx-gold-strong) !important; }
.admin-shell .reservation-row,
.admin-shell .mini-property {
    border-color: rgba(222, 210, 191, .55) !important;
    color: var(--lx-navy) !important;
}
.admin-shell .reservation-row:hover,
.admin-shell .mini-property:hover { background: rgba(199, 161, 91, .055) !important; }
.admin-shell :is(.reservation-row-primary strong,.mini-property strong,.reservation-row-value strong) { color: var(--lx-navy) !important; }
.admin-shell :is(.reservation-row-primary span,.reservation-row-primary small,.mini-property span,.mini-property small,.reservation-row-value span) { color: var(--lx-guide) !important; }

/* --------------------------------------------------------------------------
   Guest portal
   -------------------------------------------------------------------------- */
.guest-shell {
    background:
        radial-gradient(circle at 12% 0%, rgba(240, 217, 154, .20), transparent 25rem),
        var(--lx-portal-bg) !important;
    color: var(--lx-navy) !important;
}
.guest-shell .portal-topbar {
    border-bottom-color: rgba(222, 210, 191, .72) !important;
    background: rgba(255, 253, 248, .955) !important;
    box-shadow: 0 8px 28px rgba(11, 27, 52, .055);
}
.guest-shell .portal-topbar-left .luxenest-logo--mark.luxenest-logo--sm {
    width: 48px !important;
    height: 48px !important;
}
.portal-topbar-rule { background: var(--lx-gold) !important; }
.guest-shell .portal-topbar-eyebrow { color: var(--lx-gold-strong) !important; }
.guest-shell .portal-topbar-title { color: var(--lx-guide) !important; }
.guest-shell .portal-sidebar,
.guest-progress-card,
.guest-stay-card,
.guest-empty-card,
.guest-module-card,
.guest-summary-grid article {
    border-color: rgba(222, 210, 191, .76) !important;
    background: rgba(255, 253, 248, .975) !important;
    color: var(--lx-navy) !important;
    box-shadow: var(--lx-shadow-md) !important;
}
.guest-shell .portal-nav-link {
    border: 1px solid transparent;
    border-radius: 11px !important;
    color: #4d5752 !important;
}
.guest-shell .portal-nav-link:hover {
    border-color: rgba(199, 161, 91, .24);
    background: rgba(199, 161, 91, .07);
    color: var(--lx-navy) !important;
}
.guest-shell .portal-nav-link.is-active {
    border-color: rgba(199, 161, 91, .42) !important;
    background: rgba(199, 161, 91, .14) !important;
    color: var(--lx-navy) !important;
    box-shadow: inset 3px 0 0 var(--lx-gold);
}
.guest-stay-title-row h1,
.guest-empty-card h1,
.guest-summary-grid strong,
.guest-module-card h1,
.guest-module-card h2,
.guest-module-card h3 { color: var(--lx-navy) !important; }
.guest-stay-next {
    border: 1px solid rgba(222, 210, 191, .70);
    background: rgba(239, 228, 209, .46) !important;
}
.guest-shell .portal-avatar { background: var(--lx-navy) !important; color: var(--lx-gold-light) !important; }
.guest-shell .portal-topbar-logout {
    border-color: rgba(199, 161, 91, .32) !important;
    background: #fff !important;
    color: var(--lx-navy) !important;
}

/* --------------------------------------------------------------------------
   Owner portal: same high-contrast light working canvas as the admin portal
   -------------------------------------------------------------------------- */
.owner-shell {
    background:
        radial-gradient(circle at 90% 0%, rgba(240, 217, 154, .24), transparent 27rem),
        var(--lx-portal-bg) !important;
    color: var(--lx-navy) !important;
}
.owner-shell .portal-topbar {
    border-bottom: 1px solid rgba(240, 217, 154, .11) !important;
    background: var(--lx-navy-deep) !important;
    color: var(--lx-ivory) !important;
    box-shadow: 0 9px 30px rgba(6, 18, 37, .14);
}
.owner-shell .portal-topbar-left .luxenest-logo-link--dark {
    padding: 4px !important;
    background: rgba(255, 253, 248, .96) !important;
}
.owner-shell .portal-topbar-left .luxenest-logo--mark.luxenest-logo--sm {
    width: 48px !important;
    height: 48px !important;
}
.owner-brand-copy { border-left-color: rgba(199, 161, 91, .42) !important; }
.owner-shell .portal-topbar-eyebrow { color: var(--lx-gold-light) !important; }
.owner-shell .portal-topbar-title { color: var(--lx-ivory) !important; }
.owner-action {
    border-color: rgba(240, 217, 154, .16) !important;
    background: rgba(255, 255, 255, .035) !important;
    color: rgba(247, 242, 232, .72) !important;
}
.owner-action:hover { border-color: rgba(240, 217, 154, .34) !important; background: rgba(199, 161, 91, .08) !important; color: var(--lx-gold-light) !important; }
.owner-nav {
    border-bottom-color: rgba(222, 210, 191, .72) !important;
    background: rgba(255, 253, 248, .96) !important;
    box-shadow: 0 8px 26px rgba(11, 27, 52, .05);
}
.owner-nav a {
    border: 1px solid transparent;
    color: var(--lx-guide) !important;
}
.owner-nav a:hover {
    border-color: rgba(199, 161, 91, .24);
    background: rgba(199, 161, 91, .07) !important;
    color: var(--lx-navy) !important;
}
.owner-nav a.is-active {
    border-color: rgba(199, 161, 91, .42) !important;
    background: rgba(199, 161, 91, .14) !important;
    color: var(--lx-navy) !important;
    box-shadow: 0 7px 18px rgba(11, 27, 52, .04);
}
.owner-shell .portal-content {
    width: min(1160px, calc(100% - 40px)) !important;
    padding: 42px 0 76px !important;
    color: var(--lx-navy) !important;
}
.owner-overview-heading h1 { margin-top: 10px !important; color: var(--lx-navy) !important; }
.owner-overview-heading p { color: var(--lx-guide) !important; font-size: 13px !important; }
.owner-kpis article,
.owner-metric-card,
.owner-property-card,
.owner-table > a,
.owner-table > article,
.owner-statement > div {
    border-color: rgba(222, 210, 191, .76) !important;
    background: rgba(255, 253, 248, .975) !important;
    color: var(--lx-navy) !important;
    box-shadow: var(--lx-shadow-md) !important;
}
.owner-kpis article,
.owner-metric-card,
.owner-property-card,
.owner-table > a,
.owner-table > article,
.owner-statement > div { border-radius: 15px !important; }
.owner-kpis span,
.owner-metric-card header > span,
.owner-statement span,
.owner-task span,
.owner-property-card span { color: var(--lx-gold-strong) !important; }
.owner-kpis strong,
.owner-metric-card header > strong,
.owner-metric-card h2,
.owner-property-card h2,
.owner-statement strong,
.owner-arrival > div strong,
.owner-property-row > div:nth-child(2) strong,
.owner-task strong { color: var(--lx-navy) !important; }
.owner-kpis small,
.owner-metric-card p,
.owner-metric-card > small,
.owner-arrival > div span,
.owner-property-row > div:nth-child(2) span,
.owner-arrival > small,
.owner-property-row > small,
.owner-property-card p,
.owner-property-card footer small,
.owner-table span,
.owner-task p { color: var(--lx-guide) !important; }
.owner-arrival,
.owner-property-row,
.owner-task { border-bottom-color: rgba(222, 210, 191, .62) !important; }
.owner-metric-card header > a { color: var(--lx-gold-strong) !important; }
.owner-property-card footer { border-top-color: rgba(222, 210, 191, .62) !important; }
.owner-statement .total {
    border-color: rgba(199, 161, 91, .40) !important;
    background: linear-gradient(135deg, rgba(199, 161, 91, .12), rgba(255, 253, 248, .98)) !important;
}
.owner-detail-grid span {
    border-color: rgba(222, 210, 191, .72) !important;
    background: rgba(239, 228, 209, .34);
    color: var(--lx-gold-strong) !important;
}
.owner-detail-grid strong { color: var(--lx-navy) !important; }
.owner-request-form input,
.owner-request-form select,
.owner-request-form textarea {
    border-color: rgba(199, 161, 91, .34) !important;
    background: #fff !important;
    color: var(--lx-navy) !important;
}
.owner-progress { background: rgba(11, 27, 52, .08) !important; }
.owner-progress span { background: linear-gradient(90deg, var(--lx-gold), var(--lx-gold-light)) !important; }

/* --------------------------------------------------------------------------
   Authentication surfaces
   -------------------------------------------------------------------------- */
.auth-body {
    background: var(--lx-navy-deep) !important;
    color: var(--lx-ivory) !important;
}
.auth-visual {
    background:
        linear-gradient(180deg, rgba(6, 18, 37, .20), rgba(6, 18, 37, .78)),
        linear-gradient(90deg, rgba(6, 18, 37, .48), rgba(6, 18, 37, .12)),
        url('../../img/auth/luxenest-login-villa.png') center center / cover no-repeat !important;
    color: var(--lx-ivory) !important;
}
.auth-visual::before {
    background:
        radial-gradient(circle at 20% 12%, rgba(199, 161, 91, .20), transparent 25rem),
        linear-gradient(180deg, rgba(6, 18, 37, .20), rgba(6, 18, 37, .46)) !important;
}
.auth-panel {
    border-left-color: rgba(222, 210, 191, .72) !important;
    background:
        radial-gradient(circle at 90% 0%, rgba(240, 217, 154, .22), transparent 20rem),
        var(--lx-ivory) !important;
    color: var(--lx-navy) !important;
}
.auth-brand-lockup,
.auth-mobile-brand-lockup { align-items: center !important; }
.auth-brand-badge {
    width: auto !important;
    min-width: 146px;
    height: auto !important;
    padding: 10px 12px !important;
    border: 1px solid rgba(240, 217, 154, .33) !important;
    border-radius: 18px !important;
    background: rgba(255, 253, 248, .97) !important;
    box-shadow: 0 18px 44px rgba(0, 0, 0, .13) !important;
}
.auth-brand-badge .luxenest-logo-link { width: 100%; }
.auth-brand-badge .luxenest-logo--full.luxenest-logo--xl { width: 158px !important; }
.auth-brand-badge .luxenest-logo--full.luxenest-logo--lg { width: 124px !important; }
.auth-brand-copy { display: none !important; }
.auth-visual h1 { color: var(--lx-ivory) !important; }
.auth-visual-copy,
.auth-feature-item p { color: rgba(247, 242, 232, .64) !important; }
.auth-feature-item h3 { color: var(--lx-ivory) !important; }
.auth-feature-item {
    border-color: rgba(240, 217, 154, .13) !important;
    background: rgba(255, 255, 255, .035) !important;
}
.auth-feature-icon { border-color: rgba(199, 161, 91, .28) !important; background: rgba(199, 161, 91, .10) !important; color: var(--lx-gold-light) !important; }
.auth-role-switch {
    border: 1px solid rgba(222, 210, 191, .82) !important;
    background: rgba(255, 253, 248, .76) !important;
    box-shadow: var(--lx-shadow-sm);
}
.auth-role-switch a { color: var(--lx-guide) !important; }
.auth-role-switch a.is-active {
    background: rgba(199, 161, 91, .15) !important;
    color: var(--lx-navy) !important;
    box-shadow: inset 0 0 0 1px rgba(199, 161, 91, .40) !important;
}
.auth-role-switch a:not(.is-active):hover { color: var(--lx-navy) !important; background: rgba(199, 161, 91, .07) !important; }
.auth-card {
    border: 1px solid rgba(222, 210, 191, .78) !important;
    border-radius: 22px !important;
    background: rgba(255, 253, 248, .98) !important;
    color: var(--lx-navy) !important;
    box-shadow: 0 24px 68px rgba(11, 27, 52, .12) !important;
}
.auth-card h2 { color: var(--lx-navy) !important; }
.auth-copy { color: var(--lx-guide) !important; }
.auth-card .form-group label { color: var(--lx-gold-strong) !important; }
.auth-card .form-group input {
    border-color: rgba(199, 161, 91, .34) !important;
    background: #fff !important;
    color: var(--lx-navy) !important;
}
.auth-card .form-group input::placeholder { color: rgba(11, 27, 52, .36) !important; }
.auth-meta-row,
.auth-inline-note,
.remember-row { color: var(--lx-guide) !important; }
.auth-switch-note { color: var(--lx-guide) !important; }
.auth-switch-note a { color: var(--lx-gold-strong) !important; }
.auth-security-note {
    border-color: rgba(222, 210, 191, .72) !important;
    background: rgba(255, 253, 248, .68) !important;
    color: var(--lx-navy) !important;
}
.auth-security-note span { color: var(--lx-guide) !important; }
.auth-security-icon { color: var(--lx-gold-strong) !important; }

/* --------------------------------------------------------------------------
   Focus, motion and responsive refinements
   -------------------------------------------------------------------------- */
:where(.public-body,.portal-body,.auth-body) :where(a,button,input,select,textarea,[tabindex]):focus-visible {
    outline: 3px solid rgba(199, 161, 91, .58) !important;
    outline-offset: 3px;
}

@media (max-width: 1100px) {
    .site-brand-mark { width: 52px !important; height: 52px !important; flex-basis: 52px; }
    .site-brand-wordmark { width: 144px; }
    .site-header-inner { gap: 18px; }
    .site-nav a { padding-inline: 10px !important; font-size: 11px !important; }
}

@media (max-width: 960px) {
    .site-header-inner { min-height: 82px !important; }
    .site-brand-mark { width: 48px !important; height: 48px !important; flex-basis: 48px; }
    .site-brand-wordmark { width: 137px; }
    .site-nav {
        border-top: 1px solid rgba(222, 210, 191, .72) !important;
        background: rgba(255, 253, 248, .99) !important;
        box-shadow: 0 20px 44px rgba(11, 27, 52, .12) !important;
    }
    .site-nav a { min-height: 50px !important; justify-content: flex-start; padding-inline: 17px !important; font-size: 14px !important; }
    .site-nav a.site-nav-book { justify-content: center; }

    .admin-shell .portal-topbar { padding-inline: 20px !important; }
    .admin-shell .portal-content { padding: 24px 20px 42px !important; }
}

@media (max-width: 700px) {
    .owner-shell .portal-content { width: min(100% - 28px, 1160px) !important; padding-top: 28px !important; }
    .owner-nav { justify-content: flex-start !important; overflow-x: auto; }
    .owner-nav a { white-space: nowrap; }
}

@media (max-width: 620px) {
    .site-header-inner { min-height: 76px !important; }
    .site-brand-lockup { gap: 8px !important; }
    .site-brand-mark { width: 43px !important; height: 43px !important; flex-basis: 43px; }
    .site-brand-wordmark { width: 124px; max-height: 31px; }
    .site-footer .luxenest-logo--full.luxenest-logo--lg { width: 126px !important; }

    .auth-card { border-radius: 18px !important; }
    .auth-brand-badge .luxenest-logo--full.luxenest-logo--xl { width: 132px !important; }
    .auth-brand-badge .luxenest-logo--full.luxenest-logo--lg { width: 112px !important; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}

/* --------------------------------------------------------------------------
   Legacy admin module normalization
   Some earlier property/reservation workflow styles intentionally used a dark
   work surface and !important declarations.  Keep the new 2026 direction
   consistent by converting those high-specificity components to the light
   ivory/surface system while retaining navy only for structural navigation.
   -------------------------------------------------------------------------- */
.admin-shell .properties-stats .stat-card,
.admin-shell .property-overview-grid .stat-card {
    border-color: rgba(222, 210, 191, .76) !important;
    background: rgba(255, 253, 248, .98) !important;
    color: var(--lx-navy) !important;
    box-shadow: var(--lx-shadow-md) !important;
}
.admin-shell .properties-stats .stat-card span,
.admin-shell .property-overview-grid .stat-card span {
    color: var(--lx-gold-strong) !important;
}
.admin-shell .properties-stats .stat-card strong,
.admin-shell .property-overview-grid .stat-card strong {
    color: var(--lx-navy) !important;
}
.admin-shell .properties-stats .stat-card small,
.admin-shell .property-overview-grid .stat-card small {
    color: var(--lx-guide) !important;
}

/* Property create/edit. */
.admin-shell .property-form .form-card {
    border-color: rgba(222, 210, 191, .80) !important;
    background: rgba(255, 253, 248, .985) !important;
    color: var(--lx-navy) !important;
    box-shadow: var(--lx-shadow-md) !important;
}
.admin-shell .property-form .form-card > header {
    border-bottom-color: rgba(222, 210, 191, .72) !important;
    background: rgba(239, 228, 209, .34) !important;
}
.admin-shell .property-form .form-card > header h2 {
    color: var(--lx-navy) !important;
}
.admin-shell .property-form .form-card > header p,
.admin-shell .property-form .field > small:not(.field-error) {
    color: var(--lx-guide) !important;
}
.admin-shell .property-form .field label {
    color: var(--lx-gold-strong) !important;
}
.admin-shell .property-form .field label b,
.admin-shell .property-form .field-error {
    color: #a9473a !important;
}
.admin-shell .property-form .field input,
.admin-shell .property-form .field select,
.admin-shell .property-form .field textarea {
    border-color: rgba(199, 161, 91, .34) !important;
    background: #fff !important;
    color: var(--lx-navy) !important;
    -webkit-text-fill-color: var(--lx-navy) !important;
    box-shadow: none !important;
}
.admin-shell .property-form .field input::placeholder,
.admin-shell .property-form .field textarea::placeholder {
    color: rgba(11, 27, 52, .38) !important;
    -webkit-text-fill-color: rgba(11, 27, 52, .38) !important;
}
.admin-shell .property-form .field select option {
    background: #fff !important;
    color: var(--lx-navy) !important;
}
.admin-shell .property-form .toggle-card {
    border-color: rgba(222, 210, 191, .78) !important;
    background: rgba(239, 228, 209, .30) !important;
    color: var(--lx-navy) !important;
}
.admin-shell .property-form .toggle-card:hover,
.admin-shell .property-form .toggle-card:has(input:checked) {
    border-color: rgba(199, 161, 91, .58) !important;
    background: rgba(199, 161, 91, .10) !important;
}
.admin-shell .property-form .toggle-card strong,
.admin-shell .property-form .summary-row strong {
    color: var(--lx-navy) !important;
}
.admin-shell .property-form .toggle-card small,
.admin-shell .property-form .summary-row span {
    color: var(--lx-guide) !important;
}
.admin-shell .property-form .summary-row {
    border-bottom-color: rgba(222, 210, 191, .66) !important;
}
.admin-shell .property-form .form-actions {
    border-color: rgba(222, 210, 191, .82) !important;
    background: rgba(255, 253, 248, .98) !important;
    box-shadow: 0 -10px 28px rgba(11, 27, 52, .08) !important;
}
.admin-shell .property-form .form-actions .button-secondary {
    border-color: rgba(199, 161, 91, .36) !important;
    background: #fff !important;
    color: var(--lx-navy) !important;
}
.admin-shell .property-form .form-actions .button-secondary:hover {
    border-color: var(--lx-gold) !important;
    background: rgba(199, 161, 91, .10) !important;
}

/* Property gallery. */
.admin-shell .gallery-card-meta {
    border-color: rgba(222, 210, 191, .66) !important;
    color: var(--lx-guide) !important;
}
.admin-shell .gallery-active-toggle {
    border-color: rgba(222, 210, 191, .76) !important;
    background: rgba(239, 228, 209, .34) !important;
    color: var(--lx-navy) !important;
}
.admin-shell .gallery-active-toggle span {
    color: var(--lx-navy) !important;
}
.admin-shell .gallery-card-actions {
    border-color: rgba(222, 210, 191, .68) !important;
    background: rgba(247, 242, 232, .72) !important;
}
.admin-shell .gallery-action-placeholder {
    color: var(--lx-guide) !important;
}
.admin-shell .gallery-text-button:not(.gallery-delete-button) {
    color: var(--lx-gold-strong) !important;
}
.admin-shell .gallery-text-button:not(.gallery-delete-button):hover {
    color: var(--lx-navy) !important;
}

/* Amenities editor. */
.admin-shell .amenity-toolbar,
.admin-shell .amenity-group-card,
.admin-shell .amenity-save-bar {
    border-color: rgba(222, 210, 191, .78) !important;
    background: rgba(255, 253, 248, .985) !important;
    color: var(--lx-navy) !important;
    box-shadow: var(--lx-shadow-md) !important;
}
.admin-shell .amenity-search-field > span,
.admin-shell .amenity-field-row label > span,
.admin-shell .amenity-full-field > span,
.admin-shell .amenity-order-field > span {
    color: var(--lx-gold-strong) !important;
}
.admin-shell .amenity-search-field input,
.admin-shell .amenity-item input[type='text'],
.admin-shell .amenity-item input[type='number'] {
    border-color: rgba(199, 161, 91, .34) !important;
    background: #fff !important;
    color: var(--lx-navy) !important;
    -webkit-text-fill-color: var(--lx-navy) !important;
}
.admin-shell .amenity-search-field input::placeholder,
.admin-shell .amenity-item input::placeholder {
    color: rgba(11, 27, 52, .38) !important;
}
.admin-shell .amenity-toolbar-summary,
.admin-shell .amenity-group-header p,
.admin-shell .amenity-select-row small,
.admin-shell .amenity-save-bar {
    color: var(--lx-guide) !important;
}
.admin-shell .amenity-toolbar-summary strong,
.admin-shell .amenity-group-header > div > span {
    color: var(--lx-gold-strong) !important;
}
.admin-shell .amenity-group-header {
    border-color: rgba(222, 210, 191, .68) !important;
    background: rgba(239, 228, 209, .36) !important;
}
.admin-shell .amenity-group-header h2,
.admin-shell .amenity-select-row strong,
.admin-shell .amenity-highlight-option {
    color: var(--lx-navy) !important;
}
.admin-shell .amenity-item {
    border-color: rgba(222, 210, 191, .72) !important;
    background: #fff !important;
}
.admin-shell .amenity-item.is-selected {
    border-color: rgba(199, 161, 91, .70) !important;
    background: rgba(240, 217, 154, .13) !important;
    box-shadow: 0 0 0 2px rgba(199, 161, 91, .08) !important;
}
.admin-shell .amenity-details {
    border-color: rgba(222, 210, 191, .66) !important;
    background: rgba(247, 242, 232, .70) !important;
}

/* Availability and seasonal pricing. */
.admin-shell .schedule-calendar-card,
.admin-shell .schedule-form-card,
.admin-shell .schedule-list-card {
    border-color: rgba(222, 210, 191, .78) !important;
    background: rgba(255, 253, 248, .985) !important;
    color: var(--lx-navy) !important;
}
.admin-shell .schedule-calendar-card > header,
.admin-shell .schedule-form-card > header,
.admin-shell .schedule-list-card > header,
.admin-shell .calendar-legend,
.admin-shell .schedule-record,
.admin-shell .schedule-record details {
    border-color: rgba(222, 210, 191, .66) !important;
}
.admin-shell .calendar-controls strong,
.admin-shell .schedule-meta dd,
.admin-shell .rate-amount strong,
.admin-shell .toggle-field strong {
    color: var(--lx-navy) !important;
}
.admin-shell .calendar-legend,
.admin-shell .calendar-weekdays,
.admin-shell .schedule-record p,
.admin-shell .rate-amount small,
.admin-shell .schedule-list-card > header span,
.admin-shell .schedule-meta dt,
.admin-shell .toggle-field small {
    color: var(--lx-guide) !important;
}
.admin-shell .availability-calendar {
    background: rgba(247, 242, 232, .62) !important;
}
.admin-shell .schedule-form label,
.admin-shell .schedule-form .form-label {
    color: var(--lx-gold-strong) !important;
}
.admin-shell .schedule-form input,
.admin-shell .schedule-form select,
.admin-shell .schedule-form textarea {
    border-color: rgba(199, 161, 91, .34) !important;
    background: #fff !important;
    color: var(--lx-navy) !important;
    -webkit-text-fill-color: var(--lx-navy) !important;
}
.admin-shell .schedule-form input::placeholder,
.admin-shell .schedule-form textarea::placeholder {
    color: rgba(11, 27, 52, .38) !important;
}
.admin-shell .toggle-field {
    border-color: rgba(222, 210, 191, .74) !important;
    background: rgba(239, 228, 209, .32) !important;
    color: var(--lx-navy) !important;
}
.admin-shell .weekday-options span {
    border-color: rgba(222, 210, 191, .74) !important;
    background: #fff !important;
    color: var(--lx-guide) !important;
}
.admin-shell .schedule-record-note,
.admin-shell .schedule-meta div {
    background: rgba(239, 228, 209, .30) !important;
}

/* Reservation details and guest journey. */
.admin-shell .reservation-detail-heading .admin-secondary-button {
    border-color: rgba(199, 161, 91, .48) !important;
    background: #fff !important;
    color: var(--lx-navy) !important;
    -webkit-text-fill-color: var(--lx-navy) !important;
}
.admin-shell .reservation-detail-grid .reservation-card {
    border-color: rgba(222, 210, 191, .80) !important;
    background: rgba(255, 253, 248, .985) !important;
    color: var(--lx-navy) !important;
    box-shadow: var(--lx-shadow-md) !important;
}
.admin-shell .reservation-detail-grid .reservation-card > header {
    border-bottom-color: rgba(222, 210, 191, .68) !important;
    background: rgba(239, 228, 209, .34) !important;
}
.admin-shell .reservation-detail-grid .reservation-card > header h2,
.admin-shell .reservation-detail-grid .detail-pairs strong,
.admin-shell .reservation-detail-grid aside .reservation-card-body > p strong,
.admin-shell .reservation-detail-grid .guest-journey-admin-note > strong,
.admin-shell .reservation-detail-grid .timeline strong {
    color: var(--lx-navy) !important;
}
.admin-shell .reservation-detail-grid .reservation-card-body,
.admin-shell .reservation-detail-grid aside .reservation-card-body > p,
.admin-shell .reservation-detail-grid .status-form label,
.admin-shell .reservation-detail-grid .detail-pairs span,
.admin-shell .reservation-detail-grid .timeline span,
.admin-shell .reservation-detail-grid .timeline p,
.admin-shell .reservation-detail-grid .admin-payment-controls > p {
    color: var(--lx-guide) !important;
}
.admin-shell .reservation-detail-grid .detail-pairs > div {
    border-bottom-color: rgba(222, 210, 191, .66) !important;
}
.admin-shell .reservation-detail-grid .detail-pairs .total strong {
    color: var(--lx-gold-strong) !important;
}
.admin-shell .reservation-detail-grid .status-form select,
.admin-shell .reservation-detail-grid .status-form textarea {
    border-color: rgba(199, 161, 91, .34) !important;
    background: #fff !important;
    color: var(--lx-navy) !important;
    -webkit-text-fill-color: var(--lx-navy) !important;
}
.admin-shell .reservation-detail-grid .status-form select option {
    background: #fff !important;
    color: var(--lx-navy) !important;
}
.admin-shell .reservation-detail-grid .guest-journey-admin-grid > div,
.admin-shell .reservation-detail-grid .guest-journey-admin-note {
    border-color: rgba(222, 210, 191, .68) !important;
    background: rgba(247, 242, 232, .68) !important;
}
.admin-shell .reservation-detail-grid .guest-journey-admin-grid span,
.admin-shell .reservation-detail-grid .guest-journey-admin-note p,
.admin-shell .reservation-detail-grid .guest-journey-admin-note small,
.admin-shell .reservation-detail-grid .guest-journey-admin-note ul {
    color: var(--lx-guide) !important;
}
.admin-shell .reservation-detail-grid .guest-journey-admin-grid strong,
.admin-shell .reservation-detail-grid .guest-journey-admin-links a {
    color: var(--lx-gold-strong) !important;
}
.admin-shell .reservation-detail-grid .guest-journey-admin-links a {
    border-color: rgba(199, 161, 91, .46) !important;
    background: #fff !important;
}
