/* Vestra Gemini theme system: dark (default), light, and system-resolved appearance.
   Loaded only by Gemini layouts. Green theme assets and markup are not affected. */
html[data-gemini-theme="dark"] {
  color-scheme: dark;
  --gm-bg: #061522;
  --gm-surface: #0A1D2B;
  --gm-card: #102738;
  --gm-field: #0D2232;
  --gm-border: #244153;
  --gm-title: #F5F7F9;
  --gm-text: #A8B7C4;
  --gm-muted: #718493;
  --gm-accent: #D6B56A;
  --gm-accent-strong: #F0D99A;
  --gm-accent-contrast: #061522;
  --gm-focus: #35D0C3;
  --gm-shadow: 0 24px 70px rgba(0,0,0,.28);
  --gm-font: "Ysabeau Infant", "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --gm-public-bg: #061522;
  --gm-public-bg-2: #081B29;
  --gm-public-card: #0C2230;
  --gm-public-card-2: #102B39;
  --gm-public-line: rgba(180,204,220,.15);
  --gm-public-line-strong: rgba(229,198,118,.36);
  --gm-public-text: #F4F7F8;
  --gm-public-copy: #B1C2CD;
  --gm-public-muted: #8095A3;
  --gm-public-gold: #E7C676;
  --gm-public-gold-light: #F5DFA0;
  --gm-public-teal: #39C7BD;
}
html[data-gemini-theme="light"] {
  color-scheme: light;
  --gm-bg: #F3F5F4;
  --gm-surface: #FFFFFF;
  --gm-card: #FFFFFF;
  --gm-field: #F7F8F7;
  --gm-border: #D9E0E1;
  --gm-title: #142A38;
  --gm-text: #536774;
  --gm-muted: #71818B;
  --gm-accent: #B48A3A;
  --gm-accent-strong: #967027;
  --gm-accent-contrast: #172532;
  --gm-focus: #147F79;
  --gm-shadow: 0 18px 48px rgba(22,42,53,.09);
  --gm-public-bg: #F3F5F4;
  --gm-public-bg-2: #E9EEED;
  --gm-public-card: #FFFFFF;
  --gm-public-card-2: #F7F8F6;
  --gm-public-line: rgba(25,50,65,.14);
  --gm-public-line-strong: rgba(159,120,45,.42);
  --gm-public-text: #142A38;
  --gm-public-copy: #506471;
  --gm-public-muted: #687B86;
  --gm-public-gold: #906821;
  --gm-public-gold-light: #B48A3A;
  --gm-public-teal: #167D77;
  --gm-title: #142A38;
  --gm-text: #536774;
  --gm-muted: #71818B;
  --gm-accent: #B48A3A;
  --gm-accent-strong: #967027;
  --gm-accent-contrast: #172532;
  --gm-focus: #147F79;
  --gm-shadow: 0 18px 48px rgba(22,42,53,.09);
}

/* Reusable appearance menu. It is native HTML and remains usable without icons/fonts. */
.gm-theme-switcher { position: relative; z-index: 1200; display: inline-flex; flex: 0 0 auto; align-items: center; color: var(--gm-title); font-family: var(--gm-font, inherit); }
.gm-theme-switcher__trigger { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 40px; max-width: 100%; padding: 8px 11px; border: 1px solid var(--gm-border); border-radius: 11px; color: var(--gm-title); background: var(--gm-surface); font: 700 12px/1.2 var(--gm-font, inherit); cursor: pointer; transition: background .18s ease, border-color .18s ease, color .18s ease; }
.gm-theme-switcher__trigger:hover { border-color: var(--gm-accent, #D6B56A); background: var(--gm-card); }
.gm-theme-switcher__trigger:focus-visible, .gm-theme-switcher__choice:focus-visible { outline: 3px solid var(--gm-focus); outline-offset: 3px; }
.gm-theme-switcher__icon { display: none; width: 16px; height: 16px; flex: 0 0 16px; }
html[data-gemini-theme="dark"] .gm-theme-switcher__icon--moon,
html[data-gemini-theme="light"] .gm-theme-switcher__icon--sun { display: inline-block; }
.gm-theme-switcher__text { color: var(--gm-text); font-weight: 600; }
.gm-theme-switcher__current { color: var(--gm-title); }
.gm-theme-switcher__chevron { width: 14px; height: 14px; opacity: .65; }
.gm-theme-switcher__menu { position: absolute; z-index: 2500; top: calc(100% + 8px); right: 0; width: 244px; padding: 9px; border: 1px solid var(--gm-border); border-radius: 15px; color: var(--gm-title); background: var(--gm-surface); box-shadow: var(--gm-shadow, 0 18px 50px rgba(0,0,0,.22)); }
.gm-theme-switcher__menu[hidden] { display: none !important; }
.gm-theme-switcher__menu-title { margin: 3px 9px 7px; color: var(--gm-muted); font-size: 10px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.gm-theme-switcher__choice { display: grid; grid-template-columns: 22px minmax(0,1fr) 17px; align-items: center; gap: 9px; width: 100%; padding: 10px 9px; border: 1px solid transparent; border-radius: 10px; color: var(--gm-text); background: transparent; text-align: left; cursor: pointer; }
.gm-theme-switcher__choice > svg { width: 18px; height: 18px; }
.gm-theme-switcher__choice strong, .gm-theme-switcher__choice small { display: block; }
.gm-theme-switcher__choice strong { color: var(--gm-title); font-size: 12px; font-weight: 800; }
.gm-theme-switcher__choice small { margin-top: 3px; color: var(--gm-muted); font-size: 10px; line-height: 1.35; }
.gm-theme-switcher__check { opacity: 0; color: var(--gm-accent, #D6B56A); font-weight: 900; }
.gm-theme-switcher__choice[aria-checked="true"] { border-color: var(--gm-public-line-strong, rgba(214,181,106,.36)); background: color-mix(in srgb, var(--gm-accent, #D6B56A) 10%, var(--gm-surface)); }
.gm-theme-switcher__choice[aria-checked="true"] .gm-theme-switcher__check { opacity: 1; }
.gm-theme-switcher__choice:hover { background: color-mix(in srgb, var(--gm-text) 7%, var(--gm-surface)); }
.gm-theme-switcher-item { display: flex; align-items: center; flex: 0 0 auto; margin-inline: 2px 8px; }

/* Public marketing pages and Gemini's shared chrome. */
html[data-gemini-theme="light"] body.vestra-public-shell,
html[data-gemini-theme="light"] body.gm-landing-page { color-scheme: light; color: var(--gm-public-text); background: var(--gm-public-bg); }
html[data-gemini-theme="light"] .gm-landing { background: radial-gradient(ellipse at 78% 6%, rgba(22,125,119,.08), transparent 32%), radial-gradient(ellipse at 14% 85%, rgba(180,138,58,.10), transparent 34%), linear-gradient(135deg, #F7F8F6 0%, #EEF2F0 58%, #F6F7F4 100%); }
html[data-gemini-theme="light"] .gm-landing::before { opacity: .2; background-image: linear-gradient(rgba(20,42,56,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(20,42,56,.055) 1px, transparent 1px); }
html[data-gemini-theme="light"] .gm-landing :is(.gm-brand, .gm-headline, .gm-greeting, .gm-hero-copy h1, .gm-architecture-bottom strong, .gm-section-heading, .gm-card-title) { color: var(--gm-title); }
html[data-gemini-theme="light"] .gm-landing :is(.gm-description, .gm-form-note, .gm-trust-note, .gm-type-line, .gm-architecture-bottom span) { color: var(--gm-text); }
html[data-gemini-theme="light"] .gm-landing :is(.gm-architecture, .gm-signin-card, .gm-visual-pill, .gm-feature-card, .gm-card, .gm-stat-card) { border-color: var(--gm-border); background-color: rgba(255,255,255,.86); color: var(--gm-text); box-shadow: 0 18px 45px rgba(22,42,53,.07); }
html[data-gemini-theme="light"] .gm-landing .gm-scene { background: linear-gradient(160deg, #DBE8E6, #F6EAD0 70%, #D5E4E2); }
html[data-gemini-theme="light"] .gm-landing .gm-building { background: linear-gradient(180deg, #FFFFFF, #CCDAD9); border-color: rgba(20,42,56,.2); }
html[data-gemini-theme="light"] .gm-site-header { border-bottom-color: var(--gm-public-line); background: rgba(255,255,255,.94); color: var(--gm-title); }
html[data-gemini-theme="light"] .gm-site-nav-links .nav-link { color: var(--gm-public-copy) !important; }
html[data-gemini-theme="light"] .gm-site-nav-links .nav-link:hover,
html[data-gemini-theme="light"] .gm-site-nav-links .nav-link.active { color: var(--gm-title) !important; background: rgba(22,125,119,.08) !important; }
html[data-gemini-theme="light"] .gm-site-signin { color: var(--gm-public-copy); }
html[data-gemini-theme="light"] .gm-site-menu-toggle { border-color: var(--gm-border); color: var(--gm-title); background: #fff; }
html[data-gemini-theme="light"] .gm-site-menu-toggle .gm-menu-lines,
html[data-gemini-theme="light"] .gm-site-menu-toggle .gm-menu-lines::before,
html[data-gemini-theme="light"] .gm-site-menu-toggle .gm-menu-lines::after { background: currentColor; }
html[data-gemini-theme="light"] .gm-site-nav-links .dropdown-list { border-color: var(--gm-border); background: #fff; }
html[data-gemini-theme="light"] .gm-site-footer { border-top-color: var(--gm-public-line); background: #E9EEEC; color: var(--gm-public-copy); }
html[data-gemini-theme="light"] .gm-site-footer-grid h2 { color: var(--gm-title); }
html[data-gemini-theme="light"] .gm-site-footer-brand p,
html[data-gemini-theme="light"] .gm-site-footer-grid > div > p,
html[data-gemini-theme="light"] .gm-site-footer-links a,
html[data-gemini-theme="light"] .gm-site-support-email { color: var(--gm-public-copy); }
html[data-gemini-theme="light"] .gm-site-footer-links a:hover,
html[data-gemini-theme="light"] .gm-site-support-email:hover { color: var(--gm-public-gold); }
html[data-gemini-theme="light"] .gm-site-footer-bottom { border-top-color: var(--gm-public-line); color: var(--gm-public-muted); }
html[data-gemini-theme="light"] .gm-footer-cookie-settings,
html[data-gemini-theme="light"] .gm-cookie-settings-trigger { border-color: var(--gm-border); color: var(--gm-public-copy); }
html[data-gemini-theme="light"] .gm-cookie-banner { border-color: var(--gm-border); color: var(--gm-title); background: rgba(255,255,255,.97); box-shadow: 0 24px 80px rgba(22,42,53,.18); }
html[data-gemini-theme="light"] .gm-cookie-banner-copy h2,
html[data-gemini-theme="light"] .gm-cookie-preferences-card h2 { color: var(--gm-title); }
html[data-gemini-theme="light"] .gm-cookie-banner-copy p,
html[data-gemini-theme="light"] .gm-cookie-preferences-card > p { color: var(--gm-text); }
html[data-gemini-theme="light"] .gm-cookie-banner-copy > a { color: var(--gm-public-teal); }
html[data-gemini-theme="light"] .gm-cookie-preferences-card { border-color: var(--gm-border); background: #fff; }
html[data-gemini-theme="light"] .gm-cookie-close { color: var(--gm-title); border-color: var(--gm-border); }
html[data-gemini-theme="light"] .gm-cookie-category { border-color: var(--gm-border); background: #F5F7F6; }
html[data-gemini-theme="light"] .gm-cookie-category strong { color: var(--gm-title); }
html[data-gemini-theme="light"] .gm-cookie-category p { color: var(--gm-text); }
html[data-gemini-theme="light"] .gm-cookie-always-on { color: var(--gm-public-teal); }
html[data-gemini-theme="light"] .gm-legal-review-note { border-left-color: var(--gm-public-gold); background: rgba(180,138,58,.08); color: var(--gm-public-copy); }

/* Property marketplace / details and other Gemini public components. */
html[data-gemini-theme="light"] body.vestra-public-shell .vp-market-page { background: radial-gradient(circle at 86% 2%, rgba(22,125,119,.055), transparent 28%), linear-gradient(180deg, #F3F5F4, #EBF0EE 72%, #F3F5F4); color: var(--gm-public-text); }
html[data-gemini-theme="light"] .vp-market-page .vp-market-hero__signal,
html[data-gemini-theme="light"] .vp-market-page .vp-market-toolbar,
html[data-gemini-theme="light"] .vp-market-page .vp-market-strip,
html[data-gemini-theme="light"] .vp-market-page .vp-filter-drawer,
html[data-gemini-theme="light"] .vp-market-page .vp-card-v7,
html[data-gemini-theme="light"] .vp-fit-score-card,
html[data-gemini-theme="light"] .vp-fit-detail-panel { border-color: var(--gm-public-line); background: #fff; color: var(--gm-public-text); box-shadow: 0 15px 38px rgba(22,42,53,.065); }
html[data-gemini-theme="light"] .vp-market-page .vp-search-field,
html[data-gemini-theme="light"] .vp-market-page .vp-select-field,
html[data-gemini-theme="light"] .vp-market-page .vp-search-field input,
html[data-gemini-theme="light"] .vestra-public-shell :is(.form-control, .form-select, select, input:not([type="checkbox"]):not([type="radio"]), textarea) { border-color: var(--gm-border); background-color: #fff; color: var(--gm-title); }
html[data-gemini-theme="light"] .vp-market-page .vp-select-field option { background: #fff; color: var(--gm-title); }
html[data-gemini-theme="light"] .vp-market-page .vp-filter-check,
html[data-gemini-theme="light"] .vp-market-page .vp-filter-block > span,
html[data-gemini-theme="light"] .vp-market-page .vp-card-v7__summary,
html[data-gemini-theme="light"] .vp-market-page .vp-card-v7__location { color: var(--gm-public-copy); }
html[data-gemini-theme="light"] .vp-market-page .vp-card-v7__headline,
html[data-gemini-theme="light"] .vp-market-page .vp-results-heading h2,
html[data-gemini-theme="light"] .vp-market-page .vp-card-v7__body { color: var(--gm-public-text); }
html[data-gemini-theme="light"] .vp-market-page .vp-market-strip strong { color: var(--gm-public-text); }
html[data-gemini-theme="light"] body.vestra-public-shell :is(.gm-policy-page, .gm-contact-page, .gm-blog-page, .gm-article-page, .gm-about-page, .vp-property-page, .vp-property-detail-page) { background-color: var(--gm-public-bg); color: var(--gm-public-text); }
html[data-gemini-theme="light"] body.vestra-public-shell :is(.gm-policy-content, .gm-policy-toc-card, .gm-contact-form-card, .gm-contact-aside, .gm-blog-card, .gm-article-card, .gm-about-card, .vp-property-panel, .vp-investment-panel, .vp-property-detail-card) { border-color: var(--gm-public-line); background: #fff; color: var(--gm-public-text); }
html[data-gemini-theme="light"] body.vestra-public-shell :is(.gm-policy-content, .gm-contact-page, .gm-about-page, .gm-blog-page, .gm-article-page) :is(h1,h2,h3,h4,h5,strong) { color: var(--gm-public-text); }
html[data-gemini-theme="light"] body.vestra-public-shell :is(.gm-policy-content, .gm-contact-page, .gm-about-page, .gm-blog-page, .gm-article-page) :is(p,li,small,.text-muted) { color: var(--gm-public-copy); }
html[data-gemini-theme="light"] body.vestra-public-shell :is(.modal-content, .dropdown-menu, .select2-dropdown, .flatpickr-calendar, .ui-datepicker, .fancybox__content) { border-color: var(--gm-border); background: #fff; color: var(--gm-title); }
html[data-gemini-theme="light"] body.vestra-public-shell :is(.select2-container--default .select2-selection--single, .select2-container--default .select2-selection--multiple, .form-control, .form-select, .input-group-text) { border-color: var(--gm-border); background: #fff; color: var(--gm-title); }

/* Authenticated workspace: rebind its local legacy variables instead of rebuilding its components. */
html[data-gemini-theme="light"] .gemini-dashboard-body { color-scheme: light; background: #F3F5F4 !important; color: #142A38 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell {
  --primary-color: 180, 138, 58; --body-color: 83, 103, 116; --heading-color: 20, 42, 56; --black: 20, 42, 56;
  --bg-color1: #FFFFFF; --bg-color2: #F3F5F4; --bg-color3: #E9EEEC; --bg-color4: #F7F8F7;
  --border-color1: rgba(25,50,65,.11); --border-color2: rgba(25,50,65,.16); --shadow: 0 18px 48px rgba(22,42,53,.07); --shadow1: 0 8px 24px rgba(22,42,53,.05);
  --gemini-ink: #142A38; --gemini-muted: #687B86; --gemini-teal: #167D77; --gemini-teal-deep: #116660; --gemini-teal-soft: #E4F1EE;
  --gemini-gold: #B48A3A; --gemini-gold-soft: #FBF2DF; --gemini-border: rgba(25,50,65,.13); --gemini-card-shadow: 0 12px 34px rgba(22,42,53,.055);
  color-scheme: light; color: #142A38 !important; background: #F3F5F4 !important;
}
html[data-gemini-theme="light"] .gemini-dashboard-shell .header { background: rgba(255,255,255,.96) !important; border-bottom-color: #D9E0E1 !important; box-shadow: 0 5px 24px rgba(22,42,53,.05) !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .header .toggle-sidebar-btn { color: #142A38 !important; background: #F7F8F7 !important; border-color: #D9E0E1 !important; }
html[data-gemini-theme="light"] .gemini-topbar-context__brand,
html[data-gemini-theme="light"] .gemini-topbar-context__page,
html[data-gemini-theme="light"] .gemini-topbar-context__brand span { color: #142A38 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .header-nav .nav-profile { color: #142A38 !important; background: #fff !important; border-color: #D9E0E1 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .vestra-profile-name small { color: #687B86 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .vestra-profile-name strong { color: #142A38 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .sidebar { background: #fff !important; border-right-color: #D9E0E1 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .sidebar .logo-container { border-bottom-color: #E0E5E5 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .sidebar-nav .nav-heading { color: #7B8992 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .sidebar-nav .nav-link { color: #536774 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .sidebar-nav .nav-link i { color: #81939D !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .sidebar-nav .nav-link.active,
html[data-gemini-theme="light"] .gemini-dashboard-shell .sidebar-nav .nav-link:hover { color: #116660 !important; background: #E4F1EE !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .sidebar-nav .nav-link.active i,
html[data-gemini-theme="light"] .gemini-dashboard-shell .sidebar-nav .nav-link:hover i { color: #167D77 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .sidebar-nav .nav-content { border-left-color: #D9E6E4 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .sidebar-nav .nav-content a { color: #687B86 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .sidebar-nav .nav-content a:hover,
html[data-gemini-theme="light"] .gemini-dashboard-shell .sidebar-nav .nav-content a.active { color: #116660 !important; background: #F2F8F6 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell #main,
html[data-gemini-theme="light"] .gemini-dashboard-shell .main-wrapper { background: #F3F5F4 !important; color: #142A38 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .main-wrapper { background: transparent !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .card,
html[data-gemini-theme="light"] .gemini-dashboard-page .card,
html[data-gemini-theme="light"] .gemini-dashboard-hero__welcome,
html[data-gemini-theme="light"] .gemini-metric-card,
html[data-gemini-theme="light"] .gemini-panel,
html[data-gemini-theme="light"] .gemini-dashboard-content .panel,
html[data-gemini-theme="light"] .gemini-dashboard-content .stat-card { border-color: #D9E0E1 !important; background: #FFFFFF !important; color: #142A38 !important; box-shadow: 0 12px 34px rgba(22,42,53,.055) !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .gemini-dashboard-page :is(h1,h2,h3,h4,h5,h6,label,.form-label,strong,.card-title,.card-header) { color: #142A38; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .gemini-dashboard-page :is(p,li,small,.text-muted,.form-text,.breadcrumb-item) { color: #536774; }
html[data-gemini-theme="light"] .gemini-dashboard-shell :is(.table,table) { --bs-table-color: #142A38; --bs-table-bg: #fff; --bs-table-border-color: #D9E0E1; color: #142A38; border-color: #D9E0E1; }
html[data-gemini-theme="light"] .gemini-dashboard-shell :is(.table thead th, table thead th) { color: #344B59; background: #F0F3F2; }
html[data-gemini-theme="light"] .gemini-dashboard-shell :is(.form-control,.form-select,select,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),textarea,.select2-container--default .select2-selection--single,.select2-container--default .select2-selection--multiple,.input-group-text) { border-color: #CDD8DC !important; background-color: #fff !important; color: #142A38 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell :is(.form-control,.form-select,select,textarea)::placeholder { color: #758690 !important; opacity: 1; }
html[data-gemini-theme="light"] .gemini-dashboard-shell :is(.dropdown-menu,.select2-dropdown,.modal-content,.offcanvas,.flatpickr-calendar,.ui-datepicker,.swal2-popup,.notiflix-report, .gm-theme-switcher__menu) { border-color: #D9E0E1 !important; background: #fff !important; color: #142A38 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell :is(.dropdown-item,.select2-results__option,.flatpickr-day,.ui-menu-item-wrapper) { color: #344B59 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell :is(.dropdown-item:hover,.dropdown-item:focus,.select2-results__option--highlighted[aria-selected],.ui-menu-item-wrapper:hover) { color: #142A38 !important; background: #F1F5F4 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .alert { border-color: #D9E0E1; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .gemini-balance-card { color: #fff !important; background: linear-gradient(145deg, #173944 0%, #18504F 75%, #1E6B63 100%) !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .gemini-balance-card :is(h1,h2,h3,p,span,strong,small,b,i) { color: inherit; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .gemini-status-badge.tone-neutral { color: #536774 !important; background: #F0F3F2 !important; border-color: #D9E0E1 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .gemini-status-badge.tone-success { color: #176349 !important; background: #E5F7EF !important; border-color: #C0E9D6 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .gemini-status-badge.tone-warning { color: #815A15 !important; background: #FFF4D9 !important; border-color: #F2DCA5 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .gemini-status-badge.tone-danger { color: #9F3434 !important; background: #FFF0F0 !important; border-color: #F0CECE !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .gemini-status-badge.tone-info { color: #235F7A !important; background: #EAF6FB !important; border-color: #CAE7F2 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .gemini-status-badge.tone-gold { color: #805D22 !important; background: #FBF2DF !important; border-color: #EBD8B1 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .gm-theme-switcher__trigger { background: #fff !important; color: #142A38 !important; border-color: #D9E0E1 !important; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .gm-theme-switcher__menu { color: #142A38 !important; background: #fff !important; }

/* Ensure controls remain visible on narrow screens and with reduced motion. */
@media (max-width: 1050px) {
  .gm-theme-switcher__text { display: none; }
  .gm-theme-switcher__trigger { gap: 6px; padding-inline: 9px; }
}
@media (max-width: 680px) {
  .gm-theme-switcher__trigger { min-height: 38px; }
  .gm-theme-switcher__menu { width: min(244px, calc(100vw - 28px)); }
  .gm-theme-switcher-item { padding: 2px 0; }
  .gemini-dashboard-shell .gemini-topbar-context__page { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .gm-theme-switcher__trigger, .gm-theme-switcher__choice { transition: none !important; }
}

/* Editorial and legal content should adapt without carrying editor inline colours into dark mode. */
html[data-gemini-theme="light"] .gm-journal-page { color: var(--gm-public-text); background: var(--gm-public-bg); }
html[data-gemini-theme="light"] .gm-journal-article-hero,
html[data-gemini-theme="light"] .gm-journal-prose,
html[data-gemini-theme="light"] .gm-journal-sidebar-panel,
html[data-gemini-theme="light"] .gm-journal-sidebar-cta,
html[data-gemini-theme="light"] .gm-journal-sidebar-search { border-color: var(--gm-public-line); background: #fff; color: var(--gm-public-text); }
html[data-gemini-theme="light"] .gm-journal-prose :is(h1,h2,h3,h4,h5,h6,strong) { color: #142A38; }
html[data-gemini-theme="light"] .gm-journal-prose :is(p,li,blockquote,figcaption) { color: #506471; }
html[data-gemini-theme="light"] .gm-journal-prose a { color: #116C67; }
html[data-gemini-theme="dark"] .gm-journal-prose [style*="color:"] { color: var(--gm-public-copy) !important; }
html[data-gemini-theme="light"] .gm-journal-prose [style*="color:"] { color: var(--gm-public-copy) !important; }
.gm-journal-prose { overflow-wrap: anywhere; }
.gm-journal-prose h1 { max-width: 100%; margin: 1.4em 0 .65em; font-size: clamp(1.65rem, 3vw, 2.4rem); line-height: 1.2; letter-spacing: -.035em; }
.gm-journal-prose h2 { margin: 1.5em 0 .6em; font-size: clamp(1.35rem, 2.5vw, 1.85rem); line-height: 1.28; }
.gm-journal-prose h3 { margin: 1.35em 0 .55em; font-size: clamp(1.12rem, 2vw, 1.42rem); line-height: 1.35; }
.gm-journal-prose p, .gm-journal-prose li { font-size: clamp(15px, 1.2vw, 17px); line-height: 1.85; }
.gm-journal-prose p { margin: 0 0 1.15em; }

/* Make the whole light public palette read as intentional rather than simply inverted. */
html[data-gemini-theme="light"] body.vestra-public-shell .gm-policy-hero,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-contact-heading,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-hero,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-article-hero__copy { color: var(--gm-public-text); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-policy-hero h1,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-contact-heading h1,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-hero h1,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-article-hero h1 { color: var(--gm-public-text); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-policy-toc-card a,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-recent a { color: var(--gm-public-copy); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-policy-toc-card a:hover,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-recent a:hover { color: var(--gm-public-gold); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-fit-detail-panel,
html[data-gemini-theme="light"] body.vestra-public-shell .vp-fit-detail-panel,
html[data-gemini-theme="light"] body.vestra-public-shell .vp-fit-score-card { color: var(--gm-public-text); }

/* Native controls, plugin popups and dialog backdrops follow the active scheme. */
html[data-gemini-theme="light"] body.vestra-public-shell .vp-gallery-lightbox__dialog,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-investment-modal,
html[data-gemini-theme="light"] body.vestra-public-shell .investment-modal .modal-content,
html[data-gemini-theme="light"] body.vestra-public-shell .property-investment-modal .modal-content { color: #142A38; background: #fff; border-color: #D9E0E1; }
html[data-gemini-theme="light"] body.vestra-public-shell .vp-gallery-lightbox__topbar { color: #142A38; background: rgba(255,255,255,.96); border-color: #D9E0E1; }
html[data-gemini-theme="light"] body.vestra-public-shell .vp-gallery-lightbox__nav,
html[data-gemini-theme="light"] body.vestra-public-shell .vp-gallery-lightbox__close { color: #142A38; background: #fff; border-color: #D9E0E1; }
html[data-gemini-theme="light"] .gemini-dashboard-shell .gm-theme-switcher__text { color: #536774; }
.gm-theme-switcher__text { display: none !important; }

/* Property detail and investment action surface. */
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page { color: #142A38; background: #F3F5F4; }
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page .product-details-section { color: #142A38; background: #F3F5F4; }
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page :is(.investment-panel,.property-details-copy,.property-box-sidebar,.sidebar-widget-area,.card,.product-info,.product-details-card) { border-color: #D9E0E1; background: #fff; color: #142A38; box-shadow: 0 12px 34px rgba(22,42,53,.055); }
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page :is(.investment-panel,.property-details-copy,.property-box-sidebar,.sidebar-widget-area) :is(h1,h2,h3,h4,h5,h6,strong,label,.title,.price) { color: #142A38; }
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page :is(.investment-panel,.property-details-copy,.property-box-sidebar,.sidebar-widget-area) :is(p,span,small,li,.text-muted) { color: #536774; }
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page :is(.modal-select,.investment-panel select,.investment-panel input,.investment-panel textarea) { border-color: #CDD8DC; color: #142A38; background: #fff; }
html[data-gemini-theme="light"] body.vestra-public-shell .vp-property-gallery__tile { border-color: #D9E0E1; }

/* Full-screen chart and plugin surfaces must follow the root theme even when plugins append to body. */
html[data-gemini-theme="light"] :is(.select2-dropdown,.select2-container--default .select2-selection--single,.select2-container--default .select2-selection--multiple,.select2-search--dropdown .select2-search__field,.flatpickr-calendar,.flatpickr-months,.flatpickr-time,.ui-datepicker,.ui-widget-content,.apexcharts-tooltip,.apexcharts-xaxistooltip,.apexcharts-yaxistooltip,.apexcharts-menu,.swal2-popup,.notiflix-report,.notiflix-confirm,.notiflix-notify) { border-color: #D9E0E1 !important; background: #fff !important; color: #142A38 !important; }
html[data-gemini-theme="light"] :is(.select2-results__option,.select2-results__option span,.flatpickr-day,.flatpickr-current-month,.flatpickr-weekday,.ui-datepicker td a,.ui-datepicker-title,.apexcharts-tooltip-title,.apexcharts-tooltip-text,.apexcharts-xaxistooltip-text,.apexcharts-yaxistooltip-text) { color: #344B59 !important; }
html[data-gemini-theme="light"] :is(.select2-results__option--highlighted[aria-selected],.flatpickr-day:hover,.flatpickr-day.selected,.ui-datepicker td a:hover) { background: #E4F1EE !important; color: #142A38 !important; }
html[data-gemini-theme="light"] .apexcharts-gridline { stroke: rgba(20,42,56,.12); }
html[data-gemini-theme="light"] .apexcharts-text { fill: #536774; }
html[data-gemini-theme="light"] .apexcharts-legend-text { color: #536774 !important; }

/* Shared module cards: investing, P2P, money, Growth Hub and Academy. Preserve intentional gold primary actions. */
html[data-gemini-theme="light"] .gemini-dashboard-content :is(.academy-card,.academy-progress-card,.academy-content-panel,.academy-lesson-panel,.academy-panel,.academy-side-panel,.level-card,.rank-card,.beneficiary-card,.box-card,.continuity-plan-card,.estate-summary-card,.vestra-goal-card,.vestra-vault-card,.vestra-panel,.vestra-mini-panel,.vp2p-card,.vp2p-panel,.gemini-approved-insight-card) {
  border-color: #D9E0E1;
  background-color: #fff;
  color: #142A38;
}
html[data-gemini-theme="light"] .gemini-dashboard-content :is(.academy-card,.academy-progress-card,.academy-content-panel,.academy-lesson-panel,.academy-panel,.academy-side-panel,.level-card,.rank-card,.beneficiary-card,.box-card,.continuity-plan-card,.estate-summary-card,.vestra-goal-card,.vestra-vault-card,.vestra-panel,.vestra-mini-panel,.vp2p-card,.vp2p-panel,.gemini-approved-insight-card) :is(h1,h2,h3,h4,h5,h6,label,strong) { color: #142A38; }
html[data-gemini-theme="light"] .gemini-dashboard-content :is(.academy-card,.academy-progress-card,.academy-content-panel,.academy-lesson-panel,.academy-panel,.academy-side-panel,.level-card,.rank-card,.beneficiary-card,.box-card,.continuity-plan-card,.estate-summary-card,.vestra-goal-card,.vestra-vault-card,.vestra-panel,.vestra-mini-panel,.vp2p-card,.vp2p-panel,.gemini-approved-insight-card) :is(p,li,.text-muted,.small-text) { color: #536774; }
html[data-gemini-theme="light"] .gemini-dashboard-content :is(.btn-primary,.cmn-btn,.vestra-btn-primary,.vp2p-btn-primary) { color: #172532 !important; background: linear-gradient(135deg,#F1D997,#D6B56A) !important; border-color: #D6B56A !important; }
html[data-gemini-theme="light"] .gemini-dashboard-content :is(.btn-primary,.cmn-btn,.vestra-btn-primary,.vp2p-btn-primary):hover { color: #172532 !important; background: #F1D997 !important; border-color: #C6A454 !important; }

@media (max-width: 980px) {
  .gm-site-nav-actions .gm-theme-switcher { order: -1; }
  .gm-site-nav-actions .gm-theme-switcher__menu { left: 0; right: auto; }
}

/* Hard-coded public-page gradients are explicitly rebound for light mode. */
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-page { background: radial-gradient(circle at 94% 2%, rgba(22,125,119,.055), transparent 24%), linear-gradient(180deg,#F3F5F4,#EDF1EF 50%,#F3F5F4) !important; color: #506471; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-hero { border-bottom-color: #D9E0E1; background: linear-gradient(135deg,rgba(255,255,255,.98),rgba(239,243,241,.92)); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-hero__glow--one { background: radial-gradient(circle,rgba(180,138,58,.10),transparent 70%); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-hero__glow--two { background: radial-gradient(circle,rgba(22,125,119,.07),transparent 70%); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-visual-card,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-pathway,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-principle-grid article,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-faq-grid details,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-payment-note,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-final-cta__inner { border-color: #D9E0E1; background: #FFFFFF; box-shadow: 0 14px 36px rgba(22,42,53,.055); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-visual-card__top { color: #687B86; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-live { color: #116660; border-color: #C8E3DF; background: #EEF8F6; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-building-art { background: radial-gradient(ellipse at 50% 85%,rgba(22,125,119,.10),transparent 45%),linear-gradient(180deg,#E6EFED,#F8EED9); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-building-art:before { background-image: linear-gradient(rgba(20,42,56,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(20,42,56,.055) 1px,transparent 1px); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-building { border-color: rgba(159,120,45,.50); background: linear-gradient(155deg,rgba(180,138,58,.20),rgba(22,125,119,.07)); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-floating { border-color: #D9E0E1; background: rgba(255,255,255,.97); box-shadow: 0 12px 28px rgba(22,42,53,.10); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-floating b { color: #142A38; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-people-band { border-color: #D9E0E1; background: linear-gradient(115deg,#E7EEEB,#F4F6F4); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-pathway li { border-bottom-color: rgba(25,50,65,.10); color: #506471; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-pathway > a,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-payment-note a { color: #8B651F; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-payments { border-color: #D9E0E1; background: #E9EEEC; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-about-final-cta { background: radial-gradient(circle at 82% 50%,rgba(180,138,58,.09),transparent 28%); }

html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-page { background: radial-gradient(circle at 90% 1%,rgba(22,125,119,.045),transparent 23%),linear-gradient(180deg,#F3F5F4,#EBF0EE 50%,#F3F5F4) !important; color: var(--gm-public-copy); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-hero,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-article-hero { border-color: #D9E0E1; background: linear-gradient(140deg,#FFFFFF,#EDF2F0); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-hero__aside,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-card,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-sidebar-search,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-sidebar-panel,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-sidebar-cta,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-article__cover,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-article-end,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-empty { border-color: #D9E0E1; background: #FFFFFF; box-shadow: 0 13px 34px rgba(22,42,53,.05); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-card__image { background: linear-gradient(145deg,#E6EFED,#E6EAF0); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-search,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-sidebar-search > div { border-color: #CDD8DC; background: #F7F8F7; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-search button,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-sidebar-search button { color: #805D22; background: #F5EBD4; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-categories a { border-color: #D9E0E1; color: #506471; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-categories a:hover,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-categories a.is-active { border-color: #C8AE73; background: #FBF4E5; color: #805D22; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-tag { border-color: #E8D7AF; background: #FBF4E5; color: #805D22; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-read,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-share-row a { color: #805D22; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-pagination .page-link { border-color: #D9E0E1; background: #fff; color: #506471; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-pagination .active .page-link { background: #D6B56A; border-color: #C6A454; color: #172532; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-journal-sidebar-cta { background: linear-gradient(145deg,#FFFCF5,#F1F4F2); }

html[data-gemini-theme="light"] body.vestra-public-shell .gm-policy-hero { border-bottom-color: #D9E0E1; background: radial-gradient(ellipse at 88% 8%,rgba(22,125,119,.06),transparent 34%),radial-gradient(ellipse at 10% 90%,rgba(180,138,58,.07),transparent 38%),linear-gradient(135deg,#F7F8F6,#EBF0EE); }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-policy-content a { color: #116C67; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-policy-content blockquote { background: #F6F8F7; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-policy-content th { background: #EFF3F1; }
html[data-gemini-theme="light"] body.vestra-public-shell .gm-policy-toc-card nav a:hover,
html[data-gemini-theme="light"] body.vestra-public-shell .gm-policy-toc-card nav a[aria-current="location"] { background: #E7F2EF; }

html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page { background: #F3F5F4 !important; color: #506471 !important; }
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page .banner-slider-section { background: #E9EEEC !important; }
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page .product-details-section .card,
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page .sidebar-widget-area,
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page .cmn-box2,
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page .investment-panel-intro,
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page .accordion-item { border-color: #D9E0E1 !important; background: #FFFFFF !important; color: #142A38 !important; box-shadow: 0 12px 34px rgba(22,42,53,.055) !important; }
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page .product-details-section .card-header { border-bottom-color: #D9E0E1 !important; background: #F5F7F6 !important; }
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page .investment-panel :is(.form-control,.modal-select,select,input,textarea) { border-color: #CDD8DC !important; background: #FFFFFF !important; color: #142A38 !important; }
html[data-gemini-theme="light"] body.vestra-public-shell .vestra-property-details-page .investment-panel select option { background: #fff !important; color: #142A38 !important; }
html[data-gemini-theme="light"] body.vestra-public-shell #investNowModal .invest_now_modal { border-color: #D9E0E1 !important; background: #FFFFFF !important; color: #142A38 !important; }
html[data-gemini-theme="light"] body.vestra-public-shell #investNowModal .invest_now_modal :is(h1,h2,h3,h4,h5,h6,label,strong) { color: #142A38; }
html[data-gemini-theme="light"] body.vestra-public-shell #investNowModal .invest_now_modal :is(p,span,small) { color: #536774; }
html[data-gemini-theme="light"] body.vestra-public-shell #investNowModal .invest_now_modal :is(select,input,textarea) { border-color: #CDD8DC !important; background: #FFFFFF !important; color: #142A38 !important; }
