@font-face{font-family:'DM Sans';font-style:normal;font-weight:100 1000;font-display:swap;src:url('/static/fonts/remined-20260909/dm-sans.ttf') format('truetype')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url('/static/fonts/remined-20260909/manrope.ttf') format('truetype')}
/* REmined forest theme, September 2026. Versioned to preserve historical reports. */
:root{
  --bg:      #ffffff;   /* warm paper background */
  --sand:    #eef2fa;   /* secondary surface */
  --card:    #ffffff;   /* cards, tables, panels */
  --border:  #dce3ee;   /* hairline borders */
  --line2:   #e9edf5;   /* row dividers */
  --text:    #192d4b;   /* body text */
  --ink:     #192d4b;
  --muted:   #59677c;   /* secondary text - 5.9:1 on paper */
  --accent:  #2854c5;   /* gold as TEXT - clears 4.5:1 */
  --rule:    #2854c5;   /* gold as LINES / active chips */
  --dark:    #192d4b;   /* headline + header rule */
  --panel:   #ffffff;
  --line:    #dce3ee;
}

/* ---- base ------------------------------------------------ */
html,body{ background:var(--bg) !important; color:var(--text) !important; }
body{
  font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

/* ---- headings: serif, this is the Warm Paper signature ---- */
h1,h2,h3{
  font-family:'Manrope','DM Sans',sans-serif !important;
  color:var(--text) !important;
  font-weight:600;
  letter-spacing:-.2px;
}
h1{font-size:2rem;}
h1 span,h2 span{color:var(--accent) !important;font-style:italic;}
.eyebrow{
  font-size:.68rem;letter-spacing:3px;text-transform:uppercase;
  font-weight:600;color:var(--accent) !important;
}

/* ---- links ----------------------------------------------- */
a{color:var(--accent);}
a:hover{color:var(--text);}

/* ---- cards / panels -------------------------------------- */
.card,.panel,.box,.board,.tile,.sec-box{
  background:var(--card) !important;
  border:1px solid var(--border) !important;
  color:var(--text) !important;
}
/* stat tiles get the gold rule across the top */
.tile,.stat,.kpi{ border-top:3px solid var(--rule) !important; }

/* ============================================================
   DATA TABLES - roomy rows, big type, numbers that line up.
   ============================================================ */
table{
  border-collapse:collapse; width:100%;
  background:var(--card); color:var(--text); font-size:15.5px;
}
thead th{
  position:sticky; top:0; z-index:5;
  background:#ffffff !important;
  color:var(--text) !important;
  font-size:.68rem; letter-spacing:1px; text-transform:uppercase;
  font-weight:700; text-align:left; padding:12px;
  white-space:nowrap;
  border-bottom:2px solid var(--dark) !important;
}
tbody td{
  padding:14px 12px;
  border-bottom:1px solid var(--line2);
  color:var(--text);
  vertical-align:middle;
}
tbody tr:nth-child(even) td{background:#f8faff;}
tbody tr:hover td{background:#eaf0ff;}

td,th,.num,.metric,.v,.amt,.price,.psf{
  font-variant-numeric:tabular-nums; font-feature-settings:"tnum";
}
td.num,th.num,.num,.amt,.price{text-align:right;}

/* ---- form controls --------------------------------------- */
input,select,textarea,
input[type=text],input[type=search],input[type=number],input[type=date]{
  background:#ffffff !important;
  color:var(--text) !important;
  border:1px solid #aebdd1 !important;
  font-family:inherit; font-size:15px; padding:9px 12px;
}
option{background:#fff !important;color:var(--text) !important;}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--rule) !important;}
::placeholder{color:#6d675e !important;opacity:1;}

/* ---- buttons --------------------------------------------- */
button,.btn,a.btn,input[type=submit],input[type=button]{
  background:#ffffff !important;
  color:#2b2620 !important;
  border:1px solid #aebdd1 !important;
  font-family:inherit; font-size:15px; padding:9px 14px; cursor:pointer;
}
button:hover,.btn:hover{background:#eef2fa !important;border-color:var(--rule) !important;}
button.primary,.btn-primary,.go,button.on,.btn.on,button.active,.btn.active,
.primary,.exp,.clr{
  background:#2854c5 !important; color:#ffffff !important; border-color:#2854c5 !important;
}

/* ---- chips / filters / tabs ------------------------------ */
.chip,.pill,.tab{
  background:#fff; color:#3a3a3a; border:1px solid #dce3ee;
  font-size:.68rem; letter-spacing:1.3px; text-transform:uppercase;
  font-weight:600; padding:10px 15px;
}
.chip.on,.chip.active,.pill.on,.tab.on,.tab.active,.on{
  background:#2854c5 !important; color:#ffffff !important; border-color:#2854c5 !important;
}

/* ---- badges ---------------------------------------------- */
.badge,.tag{
  background:#eef2fa !important; border:1px solid #aebdd1 !important;
  color:#394b65 !important;
  font-size:.6rem; letter-spacing:1.2px; text-transform:uppercase;
  font-weight:700; padding:3px 8px;
}
.badge *,.tag *{color:inherit !important;}

/* ---- muted / secondary text ------------------------------ */
.muted,.sub,.note,.hint,small,.dim,.meta,.foot,.rules{color:var(--muted) !important;}

/* ============================================================
   SHARED NAV + FOOTER stay dark on purpose - force WHITE text.
   (Measured at 1.0:1 before this rule existed.)
   ============================================================ */
nav.dm-shared-nav,.dm-shared-nav,.dm-shared-footer,footer.dm-shared-footer{
  background:#192d4b !important; border-color:#3a3a3a !important;
}
.dm-shared-nav,.dm-shared-nav *,.dm-shared-footer,.dm-shared-footer *{color:#ffffff !important;}
.dm-shared-nav a,.dm-shared-footer a{color:#ffffff !important;opacity:.93;}
.dm-shared-nav a:hover,.dm-shared-footer a:hover{color:#e8cf9a !important;opacity:1;}
.dm-shared-nav .on,.dm-shared-nav .active,.dm-shared-nav a.active{
  color:#e8cf9a !important;background:transparent !important;border-bottom-color:var(--rule) !important;
}

/* ============================================================
   STATE COLORS - colorblind-safe. No red/green pairs. Meaning
   comes from the LABEL and from dark-vs-light, never hue alone.
   ============================================================ */
.good,.up,.pos {color:#245782 !important;}
.bad,.down,.neg{color:#795114 !important;}
.warn          {color:#795114 !important;}
.goodbg,.upbg  {background:#edf3fa !important;}
.badbg,.downbg {background:#fff3dc !important;}
.warnbg        {background:#fff3dc !important;}

/* ---- misc ------------------------------------------------- */
hr{border:none;border-top:1px solid var(--border);}
code,pre{background:#eef2fa;color:#192d4b;border:1px solid var(--border);}
.tablewrap,.scrollx{overflow-x:auto;}

/* FORCE LIGHT - some pages ship a prefers-color-scheme:dark block that
   repainted them navy on a dark-mode machine. Dan wants light, always. */


@media (max-width:640px){
  body{font-size:15px;}
  table{font-size:14px;}
  thead th,tbody td{padding:10px 8px;}
  h1{font-size:1.5rem;}
}


/* ============================================================
   TARGETED FIXES - each selector below was caught by the contrast
   audit in a real browser. Ratio measured BEFORE the fix is noted.
   ============================================================ */
/* data_lineage legend + fact chips (1.0-1.2:1) */
.legend,.legend *,.b,.b *{background:#eef2fa !important;color:#192d4b !important;}
/* commercial VACANT tag (1.7:1) */
.vac{background:#eef2fa !important;color:#394b65 !important;border:1px solid #aebdd1 !important;}
/* dashboard wordmark (1.1:1) */
.brand-name,.brand-name *{color:#192d4b !important;}
.dm-shared-nav .brand-name,.dm-shared-nav .brand-name *{color:#ffffff !important;}
/* old_vs_new split bars (1.8-2.2:1) */
.keep{background:#edf3fa !important;color:#245782 !important;}
.maint{background:#fff3dc !important;color:#795114 !important;}
/* export / map buttons (1.0:1) */
.exp,.exp *,a.exp,button.exp{background:#2854c5 !important;color:#ffffff !important;
  border:1px solid #2854c5 !important;}
/* hub link + knobs note + leaderboard sub-label */
.site-url,.site-url *{color:#5b4a22 !important;}
.tool,.tool *{color:#4a463f !important;}
.chip small,.chip.on small{color:#f2e6c8 !important;}

/* ============================================================
   SPECIFICITY BLOCK - several pages set their own !important
   colours on action buttons and wordmarks, so these match with
   html body + tag to outrank them. Every ratio noted was measured
   in Chrome before the fix.
   ============================================================ */
html body button.exp, html body a.exp, html body .exp,
html body button.primary, html body .primary, html body .clr,
html body button.on, html body .tab.on, html body .chip.on, html body .toggle button.on{
  background:#2854c5 !important; color:#ffffff !important; border-color:#2854c5 !important;
}
html body button.exp *, html body .primary *, html body .chip.on *, html body .exp *{
  color:#ffffff !important;
}
html body .legend, html body .legend *, html body .b, html body .b *{
  background:#eef2fa !important; color:#192d4b !important;
}
html body .site, html body .site *{ color:#192d4b !important; background:transparent !important; }
html body .tool, html body .tool *{ background:#edf3fa !important; color:#245782 !important; }
html body .brand-name, html body .brand-name *{ color:#192d4b !important; }
html body .dm-shared-nav .brand-name, html body .dm-shared-nav .brand-name *{ color:#ffffff !important; }
html body .vac{ background:#eef2fa !important; color:#394b65 !important; border:1px solid #aebdd1 !important; }
html body .site-url, html body .site-url *{ color:#5b4a22 !important; }
html body .chip small, html body .chip.on small{ color:#f7eed8 !important; }

/* ============================================================
   FINAL PASS - last two measured failures.
   ============================================================ */
/* datamined_dashboard ships a <header> with an rgba() dark fill (10,11,14,.94)
   that survived the hex sweep. Wordmark measured 1.1:1 on it. */
header:not(.dm-shared-nav):not(.dm-shared-footer){
  background:#ffffff !important;
  color:#192d4b !important;
  border-bottom:1px solid #dce3ee !important;
}
header:not(.dm-shared-nav) .brand,
header:not(.dm-shared-nav) .brand-name,
header:not(.dm-shared-nav) .brand *,
header:not(.dm-shared-nav) .brand-name *{ color:#192d4b !important; }

/* body links inside cards/tables/prose measured 2.8:1 - darken. Nav links stay white. */
p a, td a, li a, .card a, .panel a, .box a, .note a, .sub a{ color:#5b4a1c !important; }
p a:hover, td a:hover, .card a:hover{ color:#192d4b !important; }

/* ============================================================
   CORRECTION - my own earlier rule set the pale cream sub-label
   on EVERY .chip, including unselected white ones (1.2:1).
   Split it: dark label on white chips, cream only on the filled one.
   ============================================================ */
html body .chip small,
html body .pill small,
html body .tab small{ color:#5a4a20 !important; }
html body .chip.on small,
html body .chip.active small,
html body .pill.on small,
html body .tab.on small{ color:#f7eed8 !important; }

/* unselected chips themselves: dark text on white */
html body .chip:not(.on):not(.active),
html body .pill:not(.on):not(.active),
html body .tab:not(.on):not(.active){
  background:#ffffff !important; color:#2b2620 !important; border-color:#dce3ee !important;
}

/* status pills measured 3.2-3.9:1 */
html body .status-pill,html body .status-pill *{
  background:#eef2fa !important; color:#4a3a12 !important; border:1px solid #aebdd1 !important;
}

/* every link that is NOT in the dark nav/footer/table-header.
   :not(.dm-shared-nav a) keeps this rule out of the nav's dropdown/jump/burger
   menus — its 5-class specificity was beating the white rule below and painting
   dark-brown links on the dark-brown dropdowns. */
html body a:not(.btn):not(.chip):not(.pill):not(.nav-tab):not(.brand):not(.dm-shared-nav a):not(.dm-shared-footer a){ color:#5b4a1c !important; }
html body .dm-shared-nav a,html body .dm-shared-footer a,
html body thead a,html body th a{ color:#ffffff !important; }

/* ============================================================
   REGRESSION FIX - my blanket link rule above turned the nav tabs
   dark (#5b4a1c) while they sit on the dark nav bar: 2.0:1.
   The nav is dark on purpose, so everything in it is white.
   ============================================================ */
html body .nav-tab,
html body .nav-tab *,
html body a.nav-tab,
html body .dm-shared-nav .nav-tab,
html body .dm-shared-nav .nav-tab *{ color:#ffffff !important; }
html body .nav-tab:hover,
html body .dm-shared-nav .nav-tab:hover{ color:#e8cf9a !important; }
html body .nav-tab.on,
html body .nav-tab.active,
html body .dm-shared-nav .nav-tab.active{ color:#e8cf9a !important; }

/* dashboard section labels / summaries measured 3.3-3.9:1 on white */
html body summary,html body .status-pill,html body .pill-label{ color:#3a352c !important; }

/* ============================================================
   SCOPE FIX - my nav-tab rule above whitens tabs so they read on
   the DARK shared nav. datamined_dashboard has its own LIGHT nav,
   where white-on-cream is invisible. Scope white to the dark bar
   only; every other .nav-tab gets dark ink.
   ============================================================ */
html body nav:not(.dm-shared-nav) .nav-tab,
html body nav:not(.dm-shared-nav) .nav-tab *,
html body .topnav:not(.dm-shared-nav) .nav-tab{
  color:#2b2620 !important;
}
html body nav:not(.dm-shared-nav) .nav-tab.active,
html body nav:not(.dm-shared-nav) .nav-tab.on{
  color:#394b65 !important; border-bottom-color:#2854c5 !important;
}
html body nav:not(.dm-shared-nav) .nav-tab:hover{ color:#192d4b !important; }

/* Shared application surfaces. Dense table and form layouts remain compact. */
html:root,html[data-theme]{
 color-scheme:light!important;
 --bg:#fff;--paper:#fff;--surface:#fff;--surface1:#fff;--surface2:#eef2fa;
 --surface-1:#fff;--surface-2:#fff;--surface-3:#eef2fa;--panel:#fff;--card:#fff;
 --sand:#eef2fa;--border:#dce3ee;--border2:#dce3ee;--line:#dce3ee;--line2:#e9edf5;
 --text:#192d4b;--ink:#192d4b;--text-soft:#394b65;--text-muted:#59677c;--muted:#59677c;--muted2:#59677c;
 --accent:#2854c5;--gold:#2854c5;--link:#2854c5;--rule:#2854c5;--dark:#192d4b;--darker:#2854c5;
 --accent-dim:#eaf0ff;--accent-mid:#b9ceff;--good:#245782;--bad:#795114;--red:#795114;--green:#245782;
 --mono:ui-monospace,SFMono-Regular,Consolas,monospace;
}
html body{background:#fff!important;color:#192d4b!important;font-family:'DM Sans',system-ui,sans-serif!important;line-height:1.55}
html body h1,html body h2,html body h3,html body h4,html body .big,html body .kpi b,html body .brand-name{font-family:'Manrope','DM Sans',sans-serif!important;letter-spacing:-.025em;font-weight:650}
html body h1{font-size:clamp(1.6rem,2.5vw,2.2rem);line-height:1.2}
html body h1 span,html body h2 span{font-style:normal}
html body .card,html body .panel,html body .box,html body .board,html body .tile,html body .sec-box,html body .stat,html body .kpi{border-radius:14px;border-color:#dce3ee!important;box-shadow:0 3px 14px #192d4b06}
html body button,html body .btn,html body input,html body select,html body textarea{font-family:inherit;border-radius:8px}
html body button,html body .btn{font-size:14px;letter-spacing:0}
html body input,html body select,html body textarea{max-width:100%;border-color:#aebdd1!important}
html body :is(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #245782!important;outline-offset:3px}
html body button:disabled,html body .btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}
html body .chip,html body .pill,html body .tab{border-radius:999px;letter-spacing:.025em;font-size:12px;padding:7px 12px}
html body .badge,html body .tag{border-radius:5px;letter-spacing:.025em;font-size:11px}
html body table{font-size:14px}
html body thead th{font-size:11px;letter-spacing:.045em;background:#eef2fa!important;border-bottom:1px solid #aebdd1!important;padding:10px}
html body tbody td{padding:10px;border-bottom-color:#e9edf5}
html body th a,html body thead a{color:#2854c5!important;text-decoration:underline}
html body tbody tr:nth-child(even) td{background:#f8faff}
html body tbody tr:hover td{background:#eaf0ff}
html body :is(.tablewrap,.table-wrap,.table-container,.scrollx,.scroll){overflow-x:auto;max-width:100%;overscroll-behavior-inline:contain}
html body .muted,html body .sub,html body .note,html body small{color:#59677c!important}
html body .good,html body .up,html body .pos,html body .success,html body .complete{color:#245782!important}
html body .bad,html body .down,html body .neg,html body .warn,html body .error,html body .fielderr{color:#795114!important}
html body .goodbg,html body .upbg{background:#edf3fa!important}
html body .badbg,html body .downbg,html body .warnbg{background:#fff3dc!important}
/* Direction is visible even when hue is unavailable. Do not infer a grade from a number. */
html body .up:not(input)::before,html body .pos:not(input)::before{content:'↑ ';font-weight:700}
html body .down:not(input)::before,html body .neg:not(input)::before{content:'↓ ';font-weight:700}
html body .warn:not(input):not(select):not(textarea){border-inline-start:3px solid #795114;padding-inline-start:8px}
/* Navigation remains the shared implementation, including auth, jump search and Ava. */
html body nav.dm-shared-nav,html body .dm-shared-footer{background:#2854c5!important;border-color:#496698!important}
html body .dm-shared-nav *,html body .dm-shared-footer *{font-family:'DM Sans',system-ui,sans-serif!important}
html body .dm-shared-nav .dm-brand b{font-family:'Manrope',sans-serif!important;font-size:19px;letter-spacing:-.04em}
html body .dm-shared-nav .nav-tab{background:transparent!important;color:#fff!important;border-radius:0;font-size:11px;padding:14px 10px}
html body .dm-shared-nav .nav-tab.active{border-bottom:3px solid #b9ceff!important;color:#b9ceff!important}
html body .dm-shared-nav :is(.dm-drop,.dm-menu,.dm-jlist){background:#fff!important;border-color:#dce3ee!important;box-shadow:0 12px 28px #192d4b24}
html body .dm-shared-nav :is(.dm-drop,.dm-menu,.dm-jlist) *,html body .dm-shared-nav .dm-jump input{color:#192d4b!important}
html body .dm-shared-nav :is(.dm-drop,.dm-menu,.dm-jlist) a:hover,html body .dm-shared-nav .dm-item:hover{background:#eaf0ff!important;color:#192d4b!important}
html body .dm-shared-nav :is(.dm-drop,.dm-menu,.dm-jlist) .on{background:#eaf0ff!important;color:#192d4b!important}
html body .dm-shared-nav .dm-burger{background:transparent!important;border-color:#aebdd1!important}
html body .dm-shared-nav .dm-burger span{background:#fff!important}
html body .dm-shared-nav .dm-jump input{background:#fff!important}
html body .dm-shared-nav .dm-jico{color:#394b65!important}
html body .dm-shared-nav .dm-newdot{background:#b9ceff;animation:none}
html body .dm-shared-nav .dm-sep{background:#dce3ee!important}
html body .dm-shared-nav .dm-drop a.dm-new::after{background:#b9ceff!important;color:#192d4b!important;animation:none}
/* Dashboard uses the entrance's card proportions without hiding the tool directory. */
html body .hero a{background:#eef2fa!important;border-color:#dce3ee!important;border-radius:16px;padding:24px}
html body .hero .ht{font-family:'Manrope',sans-serif;font-size:20px;color:#192d4b}
html body .hero .hd{color:#59677c;line-height:1.6}
html body .panel h2{background:#eef2fa}
html body .tool,html body .tool *{background:#eef2fa!important;color:#2854c5!important;border-color:#dce3ee!important}
html body .header{background:#fff!important;border-color:#dce3ee!important;color:#192d4b!important}
html body .header h1{color:#192d4b!important}
html body header.cover:not(.dm-shared-nav):not(.dm-shared-footer){background:#2854c5!important;color:#fff!important;border-bottom:4px solid #b9ceff!important}
html body .forest-table-scroll{overflow-x:auto;margin:18px 28px;max-width:calc(100% - 56px)}
html body .forest-table-scroll table{margin:0}
html body header.cover h1,html body header.cover h1 *,html body header.cover .coverbar b{color:#fff!important}
html body header.cover .eyebrow,html body header.cover .coverbar span{color:#b9ceff!important}
html body header.cover .sub,html body header.cover p{color:#eaf0ff!important}
html body .dm-shared-nav a:focus-visible{outline-color:#b9ceff!important}
@media(max-width:640px){
 html body{font-size:14px}
 html body .wrap{padding-left:16px;padding-right:16px;max-width:100%}
 html body .hero a{min-width:0;flex-basis:100%}
 html body nav.dm-shared-nav{padding:0 10px;gap:0}
 html body .dm-shared-nav .dm-brand{margin-right:8px}
 html body .dm-shared-nav .nav-tab{padding:10px 7px;font-size:10px}
 html body .dm-shared-nav .dm-drop{max-width:calc(100vw - 24px);min-width:190px}
 html body .dm-shared-nav .dm-drop a{white-space:normal}
 html body thead th,html body tbody td{padding:8px;font-size:12px}
 html body .grid2{min-width:0}
}
@media print{
 html body{background:#fff!important;font-size:11pt}
 html body .dm-shared-nav,html body .dm-shared-footer{display:none!important}
 html body .card,html body .panel{box-shadow:none}
 html body th{position:static!important}
 html body header.cover{print-color-adjust:exact;-webkit-print-color-adjust:exact}
 html body .scroll,html body .tablewrap,html body .table-wrap{overflow:visible}
 html body tr{break-inside:avoid}
}

/* REmined / September 2026. Blue + amber, with textual status information. */
html body.rm-app header.rm-hero{height:auto!important;min-height:0!important;max-height:none!important;position:relative!important;top:auto!important;background:transparent!important;border:0!important;overflow:visible!important}
html body.rm-app header.rm-hero h1{color:#192d4b!important}
html body.rm-app header.rm-hero a,html body.rm-app .rm-analysis-guide>a{color:#2854c5!important}
html body nav.dm-shared-nav button.dm-catalog-toggle{background:#eef2fa!important;color:#233b63!important;border-color:#dce3ee!important}
html body.rm-appraisal .rm-build-actions button#go,html body.rm-dealfinder button:is(#go,#a_go,#m_go){background:#2854c5!important;color:#fff!important;border:1px solid #2854c5!important}
html body.rm-dealfinder .filters label.toggle{flex-direction:row!important}
html body.rm-app :is(table,th,td){font-family:'DM Sans',system-ui,sans-serif!important}
html body.rm-app :is(.tally,.tally .chip){font-family:'DM Sans',system-ui,sans-serif!important}
html body.rm-app tr.g{border-left:4px solid #2854c5!important}html body.rm-app tr.y{border-left:4px dashed #a66700!important}html body.rm-app tr.r,html body.rm-app tr.rev{border-left:4px double #68758b!important}
html body.rm-app .rm-hero .rm-hero-links a{color:#2854c5!important}
html body.rm-appraisal :is(#histq,#histsort){width:100%;max-width:480px}
html:root,html:root[data-theme]{--bg:#f6f7fb;--paper:#f6f7fb;--surface2:#eef2fa;--surface-3:#eef2fa;--sand:#eef2fa;--border:#dce3ee;--border2:#dce3ee;--line:#dce3ee;--line2:#e9edf5;--text:#192d4b;--ink:#192d4b;--text-soft:#394b65;--text-muted:#59677c;--muted:#59677c;--muted2:#59677c;--accent:#2854c5;--gold:#2854c5;--link:#2854c5;--rule:#2854c5;--dark:#192d4b;--darker:#233b63;--accent-dim:#eaf0ff;--accent-mid:#b9ceff;--good:#2454bd;--green:#2454bd;--yellow:#895100;--greenbg:#eaf0ff;--yellowbg:#fff1d7;--redbg:#e9ecf2;--bad:#895100;--red:#895100;--neu:#2854c5;--rem:#8b5700;--neu-soft:#eaf0ff;--rem-soft:#fff1d7;--focus:#2854c5}
html body{background:#f6f7fb!important;color:#192d4b!important;-webkit-font-smoothing:antialiased}
html body :is(h1,h2,h3){color:#192d4b;letter-spacing:-.035em}
html body :is(.card,.panel,.box,.board,.tile,.stat,.kpi){border-color:#dce3ee!important;box-shadow:none;border-radius:18px}
html body :is(.muted,.sub,.note,small){color:#59677c!important}
html body :is(input,select,textarea){border:1px solid #aebdd1!important;background:#fff;color:#192d4b;min-height:44px;padding:11px 13px;accent-color:#2854c5}
html body :is(input[type=checkbox],input[type=radio]){min-height:0;padding:0;width:auto}
html body :is(button,.btn){min-height:42px}
html body :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #2854c5!important;outline-offset:4px}
html body thead th{background:#edf2fa!important;border-color:#dce3ee!important;color:#53657e;padding:14px 16px;letter-spacing:.06em}
html body tbody td{padding:15px 16px;border-color:#e5eaf2}
html body tbody tr:nth-child(even) td{background:#f8faff}
html body tbody tr:hover td{background:#eaf0ff}
html body :is(.good,.up,.pos,.success,.complete){color:#2454bd!important}
html body :is(.bad,.down,.neg,.warn,.error,.fielderr){color:#895100!important}
html body :is(.goodbg,.upbg){background:#eaf0ff!important}
html body :is(.badbg,.downbg,.warnbg){background:#fff1d7!important}
html body .badge.g,html body .pill.g,html body .grade.green{background:#eaf0ff!important;color:#214caa!important;border-color:#9cb5ec!important}
html body .badge.y,html body .pill.y,html body .grade.yellow{background:#fff1d7!important;color:#805000!important;border-color:#c79b50!important}
html body .badge.r,html body .pill.r,html body .grade.red{background:#e9ecf2!important;color:#3d485d!important;border-color:#8c97a9!important}
/* Shared navigation: the everyday tools first, full catalog one click away. */
html body nav.dm-shared-nav{background:#fff!important;color:#192d4b;border-color:#dce3ee!important;min-height:78px;padding:0 max(24px,calc((100vw - 1360px)/2));gap:10px;box-shadow:0 2px 14px #18315d05;position:relative;z-index:1000}
html body .dm-shared-nav .dm-brand b{font-size:24px!important;letter-spacing:-1.3px!important;color:#192d4b!important;text-transform:lowercase}
html body .dm-shared-nav .dm-brand b i{color:#2854c5!important}
html body .dm-shared-nav .dm-brand::before{content:'r';display:grid;place-items:center;background:#2854c5;color:#fff;width:31px;height:34px;border-radius:9px;font:700 25px 'Manrope',sans-serif}
html body .dm-shared-nav .nav-tab{color:#53657e!important;text-transform:none;letter-spacing:0;font-size:13px;padding:15px 12px;min-height:44px}
html body .dm-shared-nav .nav-tab.active{color:#214caa!important;border-bottom-color:#2854c5!important}
html body .dm-shared-nav .dm-burger{border-color:#dce3ee!important;border-radius:10px!important;background:#f6f7fb!important}
html body .dm-shared-nav .dm-burger span{background:#192d4b!important}
html body .dm-shared-nav .dm-jump input{background:#f6f7fb!important;border:1px solid #dce3ee!important;border-radius:10px!important;min-height:40px;padding-left:32px}
html body .dm-shared-nav .dm-primary{display:flex;align-items:center;gap:3px}
html body .dm-shared-nav .dm-catalog-toggle{background:#eef2fa;color:#233b63;border:1px solid #dce3ee;padding:10px 14px;border-radius:10px;font:600 12px 'DM Sans',sans-serif;cursor:pointer}
html body .dm-shared-nav .dm-tool-catalog{display:none;flex-basis:100%;padding:8px 0 14px;border-top:1px solid #e5eaf2;gap:4px;flex-wrap:wrap}
html body .dm-shared-nav .dm-tool-catalog.open{display:flex}
html body .dm-shared-nav :is(.dm-drop,.dm-menu,.dm-jlist){border-color:#dce3ee!important;border-radius:12px;box-shadow:0 16px 40px #172d4d1a}
html body .dm-shared-nav :is(.dm-drop,.dm-menu,.dm-jlist) *,html body .dm-shared-nav .dm-jump input{color:#192d4b!important}
html body .dm-shared-nav :is(.dm-drop,.dm-menu,.dm-jlist) a:hover,html body .dm-shared-nav .dm-item:hover,html body .dm-shared-nav :is(.dm-drop,.dm-menu,.dm-jlist) .on{background:#eaf0ff!important;color:#192d4b!important}
html body .dm-shared-nav .dm-newdot,html body .dm-shared-nav .dm-drop a.dm-new::after{background:#ffe1a5!important;color:#674600!important}
html body .dm-shared-nav a:focus-visible{outline-color:#2854c5!important}
html body .dm-shared-footer{background:#192d4b!important;border-color:#354b6b!important}
/* Reusable application layout. */
html body.rm-app>.wrap,html body.rm-app>main{max-width:1320px;margin:auto;padding:0 40px 70px}
html body.rm-app .rm-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 330px;align-items:center;gap:60px;max-width:1320px;margin:0 auto;padding:62px 40px 48px;background:transparent;border:0;box-shadow:none}
html body .rm-eyebrow{display:block;font-size:10px;font-weight:700;line-height:1.5;letter-spacing:.17em;color:#2854c5;margin:0 0 20px}
html body .rm-hero h1{font-size:clamp(32px,3.6vw,51px);font-weight:550;line-height:1.12;margin:0 0 22px;letter-spacing:-.055em;max-width:820px}
html body .rm-lead{max-width:650px;color:#59677c;font-size:16px;line-height:1.75;margin:0 0 22px}
html body .rm-hero-links{display:flex;gap:24px;flex-wrap:wrap;font-size:12px;font-weight:600}
html body .rm-hero-links a{color:#2854c5;text-decoration:none;padding:5px 0}
html body .rm-hero-links a:hover{text-decoration:underline;text-underline-offset:5px}
html body .rm-hero-art{background:#edf2ff;border:1px solid #dce5fa;border-radius:24px;min-height:265px;padding:26px 22px 20px;transform:rotate(-2deg)}
html body .rm-hero-art svg{width:100%;height:180px;display:block}
html body .rm-art-label{display:block;font-size:8px;letter-spacing:.15em;color:#536b9a;text-align:center}
html body .rm-art-foot{display:block;text-align:center;font-size:10px;color:#536b9a}
html body .rm-live-status{display:block;margin:15px 0 0;font-size:11px;color:#59677c}
html body .rm-section-heading{margin:26px 0 20px}
html body .rm-section-heading h2{font-size:23px;line-height:1.25;font-weight:600;margin:0 0 7px;padding:0;background:transparent;border:0;text-transform:none;letter-spacing:-.035em}
html body .rm-section-heading p{color:#59677c;font-size:13px;line-height:1.6;margin:0}
html body .rm-method{max-width:1240px;margin:0 auto 25px;border:1px solid #dce3ee;border-radius:12px;background:#fff;font-size:13px}
html body .rm-method summary{padding:15px 20px;font-weight:600;cursor:pointer;list-style-position:inside}
html body .rm-method :is(.meta,.intro){padding:0 20px 20px;margin:0;color:#59677c!important;font-size:13px;line-height:1.8;max-width:none}
html body .rm-shortcuts{display:flex;gap:12px;flex-wrap:wrap;margin:4px 0 28px}
html body .rm-shortcuts a{display:block;padding:14px 18px;background:#fff;border:1px solid #dce3ee;border-radius:12px;color:#2854c5;font-size:13px;font-weight:600;text-decoration:none}
/* Overview: action cards, useful metrics, then details. */
html body .rm-launch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:40px}
html body .rm-launch-card{display:block;background:#fff!important;border:1px solid #dce3ee!important;border-radius:20px;padding:28px!important;text-decoration:none;position:relative;min-height:235px;transition:transform .2s,box-shadow .2s}
html body .rm-launch-card:first-child{background:#233e79!important;border-color:#233e79!important}
html body .rm-launch-card h2{font-size:24px;line-height:1.2;margin:25px 0 13px;font-weight:600}
html body .rm-launch-card p{font-size:13px;line-height:1.7;color:#59677c;margin:0;max-width:280px}
html body .rm-launch-card:first-child :is(h2,p,.rm-eyebrow,.rm-card-arrow){color:#fff!important}
html body .rm-card-arrow{position:absolute;right:25px;top:23px;font-size:24px;color:#2854c5}
html body .rm-launch-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px #172d4d10}
html body.rm-re_overview .cards{gap:0;background:#fff;border:1px solid #dce3ee;border-radius:18px;overflow:hidden;margin-bottom:42px}
html body.rm-re_overview .stat{border:0;border-right:1px solid #e5eaf2;border-radius:0;padding:23px 22px;background:transparent}
html body.rm-re_overview .stat .num{font-size:30px;font-weight:600;color:#233e79}
html body.rm-re_overview .stat .lbl{font-size:10px;line-height:1.6;color:#59677c}
html body.rm-re_overview .grid2{gap:22px;margin:0}
html body.rm-re_overview .panel h2{background:#fff;padding:22px;font-size:17px}
html body .rm-directory{margin:35px 0;background:#fff;border:1px solid #dce3ee;border-radius:18px;padding:22px}
html body .rm-directory>summary{font-size:18px;font-weight:600;cursor:pointer}
html body .rm-directory>summary span{font-size:12px;color:#59677c;font-weight:400;margin-left:15px}
html body .tool,html body .tool *{background:#fff!important;color:#192d4b!important;border-color:#dce3ee!important}
html body .tool{padding:22px;border-radius:14px}
html body .tool .td{color:#59677c!important}
/* Deal Finder: one deliberate search workspace, results in their own surface. */
html body.rm-dealfinder .tabbar{display:flex;gap:6px;margin:20px 0;background:#e9eef8;border-radius:12px;padding:5px;width:fit-content;border:0}
html body.rm-dealfinder .tabb{background:transparent;border:0;color:#59677c;border-radius:8px;padding:11px 20px;font-size:13px}
html body.rm-dealfinder .tabb.active{background:#fff;color:#214caa;box-shadow:0 2px 6px #172d4d0d}
html body.rm-dealfinder .panel{padding:26px;margin-bottom:20px;background:#fff}
html body.rm-dealfinder .rm-section-heading{margin:0 0 22px}
html body.rm-dealfinder .rm-address-search .filters{display:flex;align-items:end;gap:14px}
html body.rm-dealfinder .rm-filter-card .filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 18px;align-items:end}
html body.rm-dealfinder .filters label{font-size:11px;letter-spacing:.015em;line-height:1.5;color:#53657e;min-width:0;text-transform:none}
html body.rm-dealfinder .filters :is(input,select){width:100%;margin-top:7px;font-size:13px;min-width:0}
html body.rm-dealfinder .filters label.toggle{display:flex;align-items:center;gap:9px;font-size:12px;min-height:35px;align-self:center}
html body.rm-dealfinder .filters label.toggle input{width:17px;height:17px;margin:0}
html body.rm-dealfinder :is(#go,#a_go,#m_go){background:#2854c5;color:white;border:0;border-radius:10px;padding:13px 22px;font-weight:600}
html body.rm-dealfinder .tablewrap{border:1px solid #dce3ee;border-radius:16px;background:#fff}
html body.rm-dealfinder .tally{padding:12px 0;gap:14px}
/* Analysis: primary inputs stay visible, advanced inputs stay available. */
html body.rm-app .rm-analysis-workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:28px;max-width:1320px;padding:0 40px;margin:0 auto 36px;align-items:start}
html body.rm-app #bar{position:static}
html body.rm-appraisal #bar{display:block;padding:0;margin:0;background:transparent;border:0;max-width:none}
html body .rm-form-section{padding:28px;background:#fff;border:1px solid #dce3ee;border-radius:18px;margin-bottom:20px}
html body .rm-form-section .rm-section-heading{margin:0 0 25px}
html body .rm-step{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#eaf0ff;color:#2854c5;font-size:11px;font-weight:700;margin:0 9px 12px 0}
html body .rm-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}
html body .rm-form-grid>*{min-width:0!important;max-width:none!important;width:auto!important}
html body .rm-form-grid :is(.f-addr,.f-purpose,#estatebox,#agentbox){grid-column:1/-1}
html body .rm-form-grid :is(input,select){width:100%;max-width:100%!important;font-size:13px}
html body .rm-form-grid label{font-size:12px;margin-bottom:8px;color:#53657e;font-weight:500}
html body .rm-options>summary{font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:0}
html body .rm-options .rm-step{margin:0}
html body .rm-optional{font-size:10px;text-transform:uppercase;letter-spacing:.08em;margin-left:auto;color:#59677c;background:#eef2fa;padding:5px 9px;border-radius:6px}
html body .rm-options-content>div{margin-top:24px}
html body .rm-options-content .opt-note{margin-bottom:15px!important}
html body .rm-build-actions{display:flex;gap:15px;flex-wrap:wrap;align-items:center;padding:6px 0}
html body .rm-build-actions #go{background:#2854c5;color:#fff;border:0;border-radius:10px;padding:15px 25px;font-weight:600}
html body .rm-build-actions .opt-note{flex-basis:100%;font-size:12px!important;line-height:1.7!important;margin-top:15px!important}
html body .rm-analysis-guide{background:#eaf0ff;border:1px solid #d7e2fc;border-radius:20px;padding:28px}
html body .rm-analysis-guide h2{font-size:25px;line-height:1.25;margin:15px 0 28px}
html body .rm-analysis-guide ol{padding:0;list-style:none;counter-reset:guide}
html body .rm-analysis-guide li{counter-increment:guide;position:relative;padding:0 0 25px 35px;font-size:13px}
html body .rm-analysis-guide li::before{content:counter(guide);position:absolute;left:0;top:0;width:23px;height:23px;display:grid;place-items:center;border:1px solid #a6bde9;border-radius:50%;font-size:10px}
html body .rm-analysis-guide strong,html body .rm-analysis-guide li span{display:block}
html body .rm-analysis-guide li span{font-size:12px;color:#53657e;margin-top:5px;line-height:1.65}
html body .rm-analysis-guide>a{display:block;border-top:1px solid #c6d6f6;padding-top:20px;font-size:12px;color:#2854c5}
html body.rm-appraisal main .card{padding:28px;background:#fff}
html body.rm-appraisal .backbar{max-width:1240px;margin:0 auto 25px;background:transparent;border:0}
/* Closing evidence: clear labels and a readable data workspace. */
html body.rm-broker_cave #tabs{background:#e9eef8!important;padding:5px!important;border-radius:12px;margin:0 0 22px;width:fit-content;max-width:100%;flex-wrap:wrap}
html body.rm-broker_cave #tabs .tab{border:0;border-radius:8px;background:transparent;color:#53657e;font-size:13px;padding:12px 18px}
html body.rm-broker_cave #tabs .tab.on{background:#fff;color:#214caa;box-shadow:0 2px 6px #172d4d0d}
html body.rm-broker_cave :is(#bar,#bar2){padding:24px;border:1px solid #dce3ee;border-radius:16px;margin:0 0 22px;background:#fff;gap:16px;align-items:end;flex-wrap:wrap}
html body .rm-control{display:flex;flex-direction:column;gap:8px;flex:1;min-width:150px;font-size:11px;color:#53657e}
html body .rm-control :is(select,input){width:100%!important;min-width:0;font-size:13px}
html body.rm-broker_cave #receipts{margin:0 0 22px;padding:20px 24px;background:#eaf0ff;border:1px solid #d3e0fa;border-radius:14px;color:#233b63}
html body.rm-broker_cave .forest-table-scroll{margin:0 0 24px;max-width:100%;background:#fff;border:1px solid #dce3ee;border-radius:16px}
html body.rm-broker_cave .note{margin:20px 0;line-height:1.8;font-size:12px}
/* Index: search is the primary action, with consistent tool cards. */
html body.rm-hub .controls{position:static;padding:24px;margin:0 0 25px;background:#fff;border:1px solid #dce3ee;border-radius:18px}
html body.rm-hub .search{border-color:#aebdd1;padding:0 14px;min-height:50px}
html body.rm-hub .search input{border:0!important;background:transparent;min-height:48px}
html body.rm-hub .group{border-radius:18px}
html body.rm-hub .tile{padding:20px!important;box-shadow:none!important}
html body.rm-hub .tab[aria-pressed=true]{background:#2854c5;color:#fff;border-color:#2854c5}
@media(max-width:1100px){html body .dm-shared-nav .dm-jump{display:none}html body.rm-app .rm-hero{grid-template-columns:minmax(0,1fr) 260px;gap:30px}html body .rm-hero-art{min-height:230px;padding:20px 12px}html body.rm-app .rm-analysis-workspace{grid-template-columns:minmax(0,1fr) 260px}html body.rm-dealfinder .rm-filter-card .filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){html body nav.dm-shared-nav{padding:12px 18px;min-height:70px;gap:8px}html body .dm-shared-nav .dm-primary{display:none}html body .dm-shared-nav .dm-brand{margin-right:auto}html body .dm-shared-nav .dm-nav-spacer{display:none}html body .dm-shared-nav .dm-tool-catalog{gap:0}html body .dm-shared-nav .nav-tab{padding:12px 10px}html body.rm-app .rm-hero{display:block;padding:38px 20px 32px}html body .rm-hero h1{font-size:36px}html body .rm-hero-art{display:none}html body .rm-lead{font-size:14px}html body .rm-hero-links{gap:20px}html body.rm-app>.wrap,html body.rm-app>main{padding:0 20px 45px}html body .rm-launch-grid{grid-template-columns:1fr;gap:14px}html body .rm-launch-card{min-height:190px;padding:25px!important}html body .rm-launch-card h2{margin-top:22px;font-size:24px}html body .rm-launch-card p{max-width:none}html body.rm-re_overview .cards{grid-template-columns:repeat(2,minmax(0,1fr))}html body.rm-re_overview .stat{padding:20px 16px;border-bottom:1px solid #e5eaf2}html body .rm-directory>summary span{display:block;margin:8px 0}html body.rm-app>.rm-method{margin:0 20px 25px}html body.rm-dealfinder .rm-filter-card .filters{grid-template-columns:repeat(2,minmax(0,1fr))}html body.rm-dealfinder .panel{padding:20px}html body.rm-dealfinder .rm-address-search .filters{flex-wrap:wrap}html body.rm-dealfinder .rm-address-search .filters label{min-width:0!important;flex-basis:100%!important}html body.rm-dealfinder .tabb{padding:10px 12px;font-size:12px}html body.rm-app .rm-analysis-workspace{grid-template-columns:1fr;padding:0 20px;gap:16px}html body .rm-analysis-guide{display:none}html body .rm-form-section{padding:22px}html body .rm-form-grid{grid-template-columns:1fr;gap:18px}html body .rm-form-grid>*{grid-column:1!important}html body.rm-broker_cave #tabs{width:100%}html body.rm-broker_cave #tabs .tab{font-size:12px;padding:10px 12px}html body.rm-broker_cave :is(#bar,#bar2){padding:18px;gap:14px}html body .rm-control{min-width:130px}html body .rm-section-heading h2{font-size:22px}html body .rm-shortcuts a{width:100%}html body.rm-hub .controls{padding:18px}html body .rm-optional{margin-left:0}}
@media(prefers-reduced-motion:reduce){html body .rm-launch-card{transition:none}html{scroll-behavior:auto}}
@media print{html body{background:white!important}.rm-hero-art,.rm-hero-links,.rm-shortcuts{display:none!important}html body.rm-app .rm-hero{padding:20px 0}html body.rm-app .rm-analysis-workspace{display:block}html body .rm-options-content{display:block}}
