/* Relaxing Beach Investing — Brand Tokens
   Coastal Modern — Pure White Base
   Load LAST in <head> so :root overrides inline page vars.
   Approved palette: 2026-05-14
*/

/* ─────────────────────────────────────────────────────────────────────────
   CDN SNIPPET — paste into every HTML <head> (after existing font link):

   <!-- Update existing fonts URL to include Montserrat -->
   Add &family=Montserrat:wght@400;600 to the Google Fonts href

   <!-- Flowbite / Tailwind CDN -->
   <script>tailwind={config:{corePlugins:{preflight:false}}}</script>
   <script src="https://cdn.tailwindcss.com"></script>
   <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/flowbite/2.3.0/flowbite.min.css"/>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/flowbite/2.3.0/flowbite.min.js" defer></script>

   LOGO SVG — Beach Scene Mark (Concept D, approved 2026-05-14):
   Full copy-paste SVG in REFERENCE.md → Brand → "SVG mark (copy-paste ready)".
   Sidebar: inline SVG rendered by js/utils/sidebar.js — no img file required.
───────────────────────────────────────────────────────────────────────── */

/* ── PALETTE TOKENS ── */
:root {
  /* Brand colors */
  --rbi-teal:        #2EC4B6;
  --rbi-gold:        #2EC4B6;  /* mapped to teal — gold removed from palette */
  --rbi-orange:      #2EC4B6;  /* mapped to teal — orange removed from palette */
  --rbi-dark:        #1a2e3a;
  --rbi-slate:       #264653;
  --rbi-muted:       #4a6572;

  /* Surface tints */
  --rbi-teal-tint:   #F0FDFB;
  --rbi-gold-tint:   #F0FDFB;  /* mapped to teal tint */
  --rbi-orange-tint: #F0FDFB;  /* mapped to teal tint */
  --rbi-card-hover:  #F8FFFE;
  --rbi-border:      #d1f0ee;

  /* Fonts */
  --font-sans:    'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-serif:   'Cormorant Garamond', Georgia, serif;
  --font-display: 'Montserrat', 'DM Sans', sans-serif;
  --font-mono:    ui-monospace, SFMono-Regular, Menlo, monospace;

  /* ── Override legacy dark-theme vars → Coastal Modern ──
     These override the matching :root declarations inside each
     page's inline <style> block (brand-tokens.css loads last). */
  --navy:       #FFFFFF;
  --navy-mid:   #F8FFFE;
  --navy-light: #F0FDFB;
  --teal:       #2EC4B6;
  --teal-light: #45CFC3;
  --sand:       #264653;
  --sand-light: #1a2e3a;
  --sand-dark:  #4a6572;
  --white:      #FFFFFF;
  --success:    #059669;
  --warn:       #d97706;
  --danger:     #dc2626;
  --info:       #0891b2;
}

/* ── BASE ── */
body {
  background: #FFFFFF;
  color: #1a2e3a;
  font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

#authLoading, #loader {
  background: #FFFFFF;
}

.spinner, .spin {
  border-color: rgba(46,196,182,0.2);
  border-top-color: #2EC4B6;
}

/* ── SIDEBAR (js/utils/sidebar.js) ── */
#rb-sidebar {
  background: #F8FFFE;
  border-right-color: #d1f0ee;
}
.rb-section { color: #4a6572; letter-spacing: 0.08em; }
.rb-nav a { color: #4a6572; }
.rb-nav a:hover { background: #F0FDFB; color: #264653; }
.rb-nav a.active { background: #F0FDFB; color: #2EC4B6; border-left-color: #2EC4B6; }
.rb-logo strong { color: #2EC4B6; }
.rb-logo span { color: #4a6572; }
.rb-footer { border-top-color: #d1f0ee; }
.rb-footer a { color: #4a6572; }
.rb-footer a:hover { color: #264653; }
#rb-theme-toggle { border-color: #d1f0ee; color: #4a6572; }
#rb-theme-toggle:hover { background: #F0FDFB; color: #264653; }

/* ── PAGE LAYOUT ── */
.page-title { color: #1a2e3a; }
.page-subtitle { color: #4a6572; }
.page-header { border-bottom-color: #d1f0ee; }
.table-header { color: #1a2e3a; border-bottom-color: #d1f0ee; }
.section-title { color: #1a2e3a; border-bottom-color: #d1f0ee; }

/* ── STAT CARDS ── */
.stat, .stat-card {
  background: #FFFFFF;
  border-color: #d1f0ee;
}
.stat:hover, .stat.active {
  border-color: #2EC4B6;
  background: #F0FDFB;
}
.stat-value { color: #1a2e3a; }
.stat-label { color: #4a6572; }

/* ── PIPELINE & INCOME CARDS ── */
.pipeline-card, .income-card {
  background: #FFFFFF;
  border-color: #d1f0ee;
}
.pipeline-card:hover {
  border-color: #2EC4B6;
  background: #F8FFFE;
}
.pipeline-card .card-value { color: #1a2e3a; }
.pipeline-card .card-label { color: #4a6572; }
.income-card h3 { color: #1a2e3a; }

/* ── PROPERTY CARDS ── */
.property-card {
  background: #FFFFFF;
  border-color: #d1f0ee;
}
.property-card:hover {
  border-color: #2EC4B6;
  box-shadow: 0 4px 20px rgba(46,196,182,0.12);
}
.card-address { color: #1a2e3a; }
.card-location { color: #4a6572; }
.card-header { border-bottom-color: #e0f7f5; }
.card-body { background: transparent; }

/* stat mini-cells inside property cards */
.card-body .stat, .stats-row .stat {
  background: #F8FFFE;
  border-color: #e0f7f5;
}
.card-body .stat-label { color: #4a6572; }
.card-body .stat-value { color: #1a2e3a; }

/* ── TABLE CARD WRAPPER ── */
.table-card {
  background: #FFFFFF;
  border-color: #d1f0ee;
}

/* ── TABLES ── */
thead { background: #F0FDFB; }
th {
  color: #4a6572;
  border-bottom-color: #d1f0ee;
}
td {
  color: #264653;
  border-bottom-color: #e0f7f5;
}
tr:hover { background: #F8FFFE; }
tr:last-child td { border-bottom: none; }

.address-primary { color: #1a2e3a; }
.address-secondary { color: #4a6572; }

/* ── FILTER BAR ── */
.filter-input { background: #FFFFFF; border-color: #d1f0ee; color: #1a2e3a; }
.filter-input::placeholder { color: #9db5bc; }
.filter-input:focus { border-color: #2EC4B6; box-shadow: 0 0 0 3px rgba(46,196,182,0.1); }
select.filter-input option { background: #FFFFFF; color: #1a2e3a; }

.filter-tab {
  color: #4a6572;
  background: #F8FFFE;
  border-color: #d1f0ee;
}
.filter-tab:hover { color: #1a2e3a; background: #F0FDFB; }
.filter-tab.active {
  color: #2EC4B6;
  border-color: rgba(46,196,182,0.4);
  background: rgba(46,196,182,0.08);
}

.filter-label { color: #4a6572; }

/* ── FORMS ── */
label { color: #4a6572; }

input[type="text"], input[type="email"], input[type="password"],
input[type="number"], input[type="search"], input[type="url"],
input[type="tel"], input, textarea, select {
  background: #FFFFFF;
  border-color: #d1f0ee;
  color: #1a2e3a;
}
input::placeholder, textarea::placeholder { color: #9db5bc; }
input:focus, textarea:focus, select:focus {
  border-color: #2EC4B6;
  background: #FFFFFF;
  box-shadow: 0 0 0 3px rgba(46,196,182,0.1);
}
input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 100px #FFFFFF inset;
  -webkit-text-fill-color: #1a2e3a;
}

/* form input used in modals / inline sections */
.form-input { background: #FFFFFF; border-color: #d1f0ee; color: #1a2e3a; }
.form-input:focus { border-color: #2EC4B6; }
.form-label { color: #4a6572; }

/* ── BADGES ── */
.stage-new_property       { background: rgba(46,196,182,0.1);  color: #2EC4B6; border-color: rgba(46,196,182,0.25); }
.stage-enriched           { background: rgba(46,196,182,0.06);  color: #4a6572; border-color: rgba(46,196,182,0.18); }
.stage-researched         { background: rgba(5,150,105,0.1);   color: #059669; border-color: rgba(5,150,105,0.25); }
.stage-waiting_for_contracts { background: rgba(217,119,6,0.12); color: #d97706; border-color: rgba(217,119,6,0.25); }
.stage-complete           { background: rgba(100,116,139,0.08); color: #64748b; border-color: rgba(100,116,139,0.2); }

.grade-A { background: rgba(5,150,105,0.1);   color: #059669; border-color: rgba(5,150,105,0.3); }
.grade-B { background: rgba(46,196,182,0.1);  color: #2EC4B6; border-color: rgba(46,196,182,0.3); }
.grade-C { background: rgba(217,119,6,0.1);   color: #d97706; border-color: rgba(217,119,6,0.3); }
.grade-D { background: rgba(244,162,97,0.12); color: #c05c00; border-color: rgba(244,162,97,0.3); }
.grade-F { background: rgba(220,38,38,0.08);  color: #dc2626; border-color: rgba(220,38,38,0.2); }

/* ── HEALTH DOTS ── */
.health-healthy { background: #059669; box-shadow: 0 0 6px rgba(5,150,105,0.5); }
.health-stale   { background: #d97706; box-shadow: 0 0 6px rgba(217,119,6,0.5); }
.health-blocked { background: #dc2626; box-shadow: 0 0 6px rgba(220,38,38,0.5); }

/* ── TEXT UTILITIES ── */
.text-green  { color: #059669; }
.text-orange { color: #d97706; }
.text-red    { color: #dc2626; }
.text-teal   { color: #2EC4B6; }

/* ── EMPTY STATES ── */
.empty-state { color: #4a6572; }
.empty-title { color: #1a2e3a; }
.empty-text  { color: #4a6572; }
.empty-icon  { opacity: 0.4; }

/* ── MODAL OVERLAYS ── */
.modal-overlay, .modal-backdrop { background: rgba(26,46,83,0.4); }

/* ── DIVIDERS ── */
.divider { background: #d1f0ee; height: 1px; }

/* ── LOGO WORDMARK HELPERS (shared across all pages) ── */
.rbi-logo-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
}
.rbi-wordmark { display: flex; flex-direction: column; line-height: 1; }
.rbi-wordmark-name {
  font-family: 'Cormorant Garamond', serif;
  font-size: 16px;
  font-weight: 300;
  letter-spacing: 0.06em;
  color: #1a2e3a;
  line-height: 1.1;
}
.rbi-wordmark-sub {
  font-family: 'Montserrat', sans-serif;
  font-size: 8px;
  font-weight: 600;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: #2EC4B6;
  margin-top: 2px;
}
.rbi-wordmark-metro {
  font-size: 7px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #4a6572;
  margin-top: 3px;
}

/* Dark background variant (used in login left panel, public page headers) */
.rbi-wordmark-name--light  { color: #FDFAF3; }
.rbi-wordmark-sub--light   { color: #2EC4B6; }
.rbi-wordmark-metro--light { color: rgba(255,255,255,0.5); }

/* ── PUBLIC PAGE HEADERS ── */
.site-header, .deal-header, .pub-header {
  background: rgba(255,255,255,0.97);
  border-bottom: 1px solid #d1f0ee;
}
.brand { font-family: 'Cormorant Garamond', serif; color: #1a2e3a; }
.brand span { color: #2EC4B6; }
.hdr-btn { background: rgba(46,196,182,0.1); border-color: rgba(46,196,182,0.3); color: #2EC4B6; }
.hdr-btn:hover { background: rgba(46,196,182,0.18); }

/* ── PUBLIC HERO SECTIONS ── */
.hero {
  background: #FFFFFF;
  border-bottom-color: #d1f0ee;
}
.hero-eyebrow  { color: #2EC4B6; }
.hero-h1       { color: #1a2e3a; }
.hero-h1 span  { color: #2EC4B6; }
.hero-sub      { color: #4a6572; }
.hero-cta      { background: #2EC4B6; color: #FFFFFF; border: none; }
.hero-cta:hover { background: #20a89c; }

/* ── BENEFITS / RETURNS / PERKS BARS ── */
.benefits-bar, .returns-bar, .perks-bar {
  border-top-color: #d1f0ee;
  border-bottom-color: #d1f0ee;
}
.benefit, .return-item, .perk {
  border-right-color: #d1f0ee;
}
.benefit-val, .perk-val { color: #1a2e3a; }
.benefit-label, .return-label, .perk-label { color: #4a6572; }
.benefit-icon, .perk-icon { opacity: 0.8; }
.return-num { color: #2EC4B6; font-family: 'Cormorant Garamond', serif; }

/* ── PUBLIC PAGE SECTION HEADINGS ── */
.section-title { color: #1a2e3a; }
.section-sub   { color: #4a6572; }

/* ── HOW IT WORKS STEPS ── */
.step {
  background: #FFFFFF;
  border-color: #d1f0ee;
}
.step-num   { background: rgba(46,196,182,0.1); border-color: rgba(46,196,182,0.3); color: #2EC4B6; }
.step-title { color: #1a2e3a; }
.step-body  { color: #4a6572; }

/* ── WHY REASONS ── */
.reason, .situation {
  background: #FFFFFF;
  border-color: #d1f0ee;
}
.reason-icon { background: rgba(46,196,182,0.1); border-color: rgba(46,196,182,0.25); }
.reason-title  { color: #1a2e3a; }
.reason-body   { color: #4a6572; }
.situation-text { color: #264653; }

/* ── LEAD FORMS (sell/lend/agent public pages) ── */
.form-wrap {
  background: #FFFFFF;
  border-color: #d1f0ee;
}
.form-title    { color: #1a2e3a; }
.form-subtitle { color: #4a6572; }
.form-label    { color: #4a6572; }
.form-group, .form-field { }
.form-input {
  background: #FFFFFF;
  border-color: #d1f0ee;
  color: #1a2e3a;
}
.form-input:focus { border-color: #2EC4B6; }
.form-input::placeholder { color: #9db5bc; }
select.form-input option { background: #FFFFFF; color: #1a2e3a; }

/* ── DEAL / PUBLIC PAGE STATS ── */
.stat-value.green  { color: #059669; }
.stat-value.teal   { color: #2EC4B6; }
.stat-value.orange { color: #d97706; }

/* ── ROOM / CHECKLIST CARDS (deal.html) ── */
.room-card, .checklist-section {
  background: #F8FFFE;
  border-color: #e0f7f5;
}
.room-title    { color: #1a2e3a; }
.spec-label    { color: #4a6572; }
.spec-value    { color: #264653; }
.spec          { background: #F0FDFB; }
.checklist-label { color: #4a6572; }
.checklist-item  { color: #264653; }

/* ── INTEREST / LEAD FORMS (public pages) ── */
.interest-form {
  background: #FFFFFF;
  border-color: #d1f0ee;
}
.btn-submit {
  background: #2EC4B6;
  border: none;
  color: #FFFFFF;
}
.btn-submit:hover { background: #20a89c; }

/* ── INVESTOR STATUS TABS ── */
.status-tab { border-color: #d1f0ee; color: #4a6572; background: #F8FFFE; }

/* ── DETAILS ROW (card footers) ── */
.details-row { border-top-color: #e0f7f5; }
.detail { color: #4a6572; }
.detail strong { color: #1a2e3a; }

/* ── ACCORDION SECTIONS (property page) ── */
.acc-section, .accordion-section, .property-section {
  background: #FFFFFF;
  border-color: #d1f0ee;
}
.acc-header, .accordion-header {
  color: #1a2e3a;
  background: #F8FFFE;
  border-color: #d1f0ee;
}
.acc-header:hover, .accordion-header:hover {
  background: #F0FDFB;
  border-color: #2EC4B6;
}
.acc-body, .accordion-content {
  background: #FFFFFF;
  border-color: #d1f0ee;
  color: #1a2e3a;
}
.acc-title, .accordion-title { color: #1a2e3a; }
.acc-icon  { color: #4a6572; }

/* ── PROPERTY PAGE HEADER ELEMENTS ── */
.back-link { color: #4a6572; }
.back-link:hover { color: #264653; }
.prop-address { color: #1a2e3a; }
.prop-subaddress { color: #4a6572; }

/* ── CALC / TOOL INPUTS (property calculator + tools) ── */
.calc-input, .tool-input {
  background: #FFFFFF;
  border-color: #d1f0ee;
  color: #1a2e3a;
}
.calc-input:focus, .tool-input:focus {
  border-color: #2EC4B6;
  box-shadow: 0 0 0 3px rgba(46,196,182,0.1);
}
.calc-label { color: #4a6572; }
.btn-save-calc {
  background: transparent;
  border-color: rgba(46,196,182,0.35);
  color: #2EC4B6;
}
.btn-save-calc:hover { background: rgba(46,196,182,0.08); }

/* ── PULL / RentCast BUTTON ── */
.btn-pull {
  background: rgba(46,196,182,0.1);
  border-color: rgba(46,196,182,0.3);
  color: #2EC4B6;
}
.btn-pull:hover { background: rgba(46,196,182,0.18); }

/* select option rows rendered inside dark pages */
select option { background: #FFFFFF; color: #1a2e3a; }

/* ── ANALYSIS / SCOPE CARDS ── */
.analysis-card, .scope-card, .bid-card {
  background: #FFFFFF;
  border-color: #d1f0ee;
}

/* ── MODAL DIALOGS ── */
.modal-content, .modal-box, .modal {
  background: #FFFFFF;
  border-color: #d1f0ee;
  color: #1a2e3a;
}
.modal-header {
  border-bottom-color: #d1f0ee;
  color: #1a2e3a;
  background: #F8FFFE;
}
.modal-footer { border-top-color: #d1f0ee; }

/* ── BUTTONS ── */
.btn-primary, .btn-teal {
  background: #2EC4B6;
  color: #FFFFFF;
  border: none;
}
.btn-primary:hover, .btn-teal:hover { background: #20a89c; }
.btn-secondary {
  background: #F8FFFE;
  color: #264653;
  border-color: #d1f0ee;
}
.btn-orange, .btn-cta {
  background: #2EC4B6;
  color: #FFFFFF;
  border: none;
}
.btn-orange:hover, .btn-cta:hover { background: #20a89c; }
.btn-danger {
  background: #dc2626;
  color: #FFFFFF;
  border: none;
}
.btn-danger:hover { background: #b91c1c; }
.btn-outline {
  background: #FFFFFF;
  border-color: #d1f0ee;
  color: #264653;
}
.btn-outline:hover { border-color: #2EC4B6; color: #2EC4B6; }

.action-btn, .btn-sm {
  background: #F8FFFE;
  border-color: #d1f0ee;
  color: #264653;
}
.action-btn:hover, .btn-sm:hover {
  background: #F0FDFB;
  border-color: #2EC4B6;
  color: #2EC4B6;
}

/* ── PROPERTY HERO OVERLAY (deal/investor pages) ── */
.hero-overlay {
  background: linear-gradient(transparent 40%, rgba(248,255,254,0.92));
}
.hero-badge {
  background: rgba(5,150,105,0.9);
  color: #FFFFFF;
}

/* ── DEAL PAGE THUMB / PHOTO STRIP ── */
.thumb { border-color: #d1f0ee; }
.thumb:hover, .thumb.active { border-color: #2EC4B6; }

/* ── PUBLIC PAGE FOOTER ── */
.footer { border-top-color: #d1f0ee; }
.footer-brand { color: #4a6572; }
.footer-email { color: #9db5bc; }

/* ── FORM SUCCESS ── */
.form-success {
  background: rgba(5,150,105,0.06);
  border-color: rgba(5,150,105,0.2);
  color: #059669;
}

/* ── JS-GENERATED INLINE STYLE OVERRIDES ──
   JS modules render HTML with hardcoded dark rgba() inline styles.
   [style*="..."] attribute selectors match regardless of class,
   and !important overrides inline style specificity.
   All patterns confirmed no-space format: background:rgba(13,27,42,...) */

/* Dark navy/charcoal backgrounds → light */
*[style*="background:rgba(26,46,66"]  { background: #F8FFFE !important; border-color: #d1f0ee !important; }
*[style*="background:rgba(13,27,42"]  { background: #FFFFFF !important; border-color: #d1f0ee !important; }
*[style*="background:rgba(0,13,26"]   { background: #FFFFFF !important; border-color: #d1f0ee !important; }

/* Near-transparent white backgrounds (invisible on white → solid white) */
*[style*="background:rgba(255,255,255,0.0"] { background: #FFFFFF !important; border-color: #d1f0ee !important; }

/* Sand tint backgrounds (too subtle on white → very light teal tint) */
*[style*="background:rgba(232,213,176"] { background: #F8FFFE !important; border-color: #d1f0ee !important; }

/* Sand text → readable dark slate (52–184 occurrences in JS modules) */
*[style*="color:rgba(232,213,176"] { color: #264653 !important; }

/* Semi-transparent white text (invisible on white → muted gray) */
*[style*="color:rgba(255,255,255,0."] { color: #264653 !important; }

/* ── CATCH-ALL OVERRIDES for page-specific card/table classes ──
   Targets any element whose class contains "-card" (matches income-card,
   api-costs-card, calendar-card, lender-card, bid-card, etc.)
   Does NOT match card-header, card-body (they lack the "-card" suffix pattern).
   Brand-tokens.css loads last so wins over inline :root vars & page styles. */

*[class*="-card"] {
  background: #FFFFFF;
  border-color: #d1f0ee;
}
*[class*="-card"]:hover {
  border-color: #2EC4B6;
}

/* Any *-table th / td not already overridden */
*[class*="-table"] th { color: #4a6572; border-bottom-color: #d1f0ee; }
*[class*="-table"] td { color: #264653; border-bottom-color: #e0f7f5; }
*[class*="-table"] .total-row { background: #F0FDFB; color: #1a2e3a; }
*[class*="-table"] .alert-row { background: rgba(220,38,38,0.06); }

/* ── CALENDAR (dashboard) ── */
.calendar-card { background: #FFFFFF; border-color: #d1f0ee; }
.calendar-card h3 { color: #1a2e3a; }
.calendar-nav { }
.calendar-title { color: #1a2e3a; }
.calendar-btn { background: rgba(46,196,182,0.1); border-color: rgba(46,196,182,0.3); color: #2EC4B6; }
.calendar-btn:hover { background: rgba(46,196,182,0.18); }
.calendar-dow { color: #4a6572; }
.calendar-day { border-color: #d1f0ee; color: #264653; }
.calendar-day:hover { border-color: #2EC4B6; background: rgba(46,196,182,0.05); }
.calendar-day.today { background: rgba(46,196,182,0.1); border-color: rgba(46,196,182,0.4); }
.calendar-day.other-month { color: #9db5bc; }
.calendar-events { border-top-color: #d1f0ee; }
.calendar-events .event { color: #264653; border-bottom-color: #e0f7f5; }

/* ── MATCHING ENGINE / DISTRIBUTION (admin pages) ── */
.match-card, .distribution-card, .source-card, .agent-card,
.lender-card, .contractor-card, .investor-card, .lead-card,
.deal-card, .offer-card, .inbox-card, .msg-card, .comm-card {
  background: #FFFFFF;
  border-color: #d1f0ee;
}

/* ── ACCORDION ON PROPERTY PAGE ── */
.acc-body { background: #FFFFFF; }

/* ── COMPS / ARV SECTION ── */
.comps-section, .arv-card { background: #FFFFFF; border-color: #d1f0ee; }
.arv-value { color: #1a2e3a; }
.arv-label { color: #4a6572; }

/* ── ANALYSIS / COST BREAKDOWN ── */
.cost-row td { color: #264653; }
.cost-total { color: #1a2e3a; font-weight: 600; }
.cost-label { color: #4a6572; }

/* ── MESSAGING / COMMUNICATIONS ── */
.msg-bubble { background: #F8FFFE; border-color: #e0f7f5; color: #264653; }
.msg-bubble.outbound { background: rgba(46,196,182,0.1); border-color: rgba(46,196,182,0.2); }
.thread-item { border-bottom-color: #e0f7f5; }
.thread-item:hover { background: #F8FFFE; }
.thread-name { color: #1a2e3a; }
.thread-preview { color: #4a6572; }

/* ── ZONING / LAND ANALYSIS ── */
.zoning-card, .zone-info { background: #FFFFFF; border-color: #d1f0ee; }

/* ── DOCUMENTS ── */
.doc-card, .doc-row { background: #FFFFFF; border-color: #d1f0ee; color: #264653; }
.doc-name { color: #1a2e3a; }
.doc-meta { color: #4a6572; }

/* ── SCROLLBAR (tables / thumb row) ── */
::-webkit-scrollbar { height: 4px; width: 6px; }
::-webkit-scrollbar-track { background: #F0FDFB; }
::-webkit-scrollbar-thumb { background: rgba(46,196,182,0.3); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #2EC4B6; }
