/* Native photo follow-up summaries use the selected palette in every theme. */
html body #app .pf,html body #app .pf-bar,html body #app .pf-toggle{
  background:var(--mt-panel)!important;color:var(--mt-ink)!important;
  border-color:var(--mt-border)!important;
}
html body #app .pf .tiny,html body #app .pf small{color:var(--mt-muted)!important}
/* =====================================================================================
   MECH TECH — OFFICIAL DARK. Shared platform foundation, loaded LAST in <head> on every page.
   One palette, one type system, shared components. Built in the shop, not in the boardroom.
   Rules: tokens map legacy families (pm / ng / owner / mt / employee / nt / dh) onto the exact palette;
   saved CUSTOM palettes (data-mt-appearance="custom") and company logos keep authority;
   header colours stay owned by header-appearance (--mh-*); print stays white; semantic statuses preserved.
   ===================================================================================== */
@font-face{font-family:"MT Inter";src:url("/fonts/InterVariable.woff2") format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"MT Mono";src:url("/fonts/IBMPlexMono-Regular.ttf") format("truetype");font-weight:400;font-display:swap}

/* ---------- 1. core tokens (exact palette) ---------- */
:root{
 --od-bg:#090A0D;--od-bg-2:#101116;--od-card:#15161B;--od-card-2:#1B1C22;--od-line:#30323B;--od-line-soft:#1E2027;
 --od-red:#E0334B;--od-red-hover:#C92B42;
 /* AA: #F4F5F7 on #E0334B = 4.06:1 (fails small text). Filled controls use the deeper action red;
    red text on dark uses --od-red-text. Ratios computed (WCAG 2.x): ink on #B8243A 5.74, on #C92B42 4.93;
    #F0607A on #090A0D 6.28, on #15161B 5.73, on #1B1C22 5.39. Brand #E0334B stays for borders/accents/indicators. */
 --od-red-action:#B8243A;--od-red-action-hover:#C92B42;--od-red-text:#F0607A;--od-red-soft:rgba(224,51,75,.13);--od-red-line:rgba(224,51,75,.45);
 --od-ink:#F4F5F7;--od-ink-2:#A3A5AF;--od-ink-3:#858995;
 --od-ok:#3FA672;--od-ok-soft:rgba(63,166,114,.13);--od-warn:#D99A33;--od-warn-soft:rgba(217,154,51,.13);
 --od-crit:#FF4D4F;--od-crit-soft:rgba(255,77,79,.12);--od-info:#6A8FC4;--od-info-soft:rgba(106,143,196,.13);
 --od-input:#0D0E12;--od-sidebar:#000000;--od-nav-hl:#24262D;--od-scrim:rgba(5,6,8,.62);
 --od-font:"MT Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
 --od-mono:"MT Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
 --od-r-sm:7px;--od-r:10px;--od-r-lg:14px;--od-pill:999px;
 --od-s1:4px;--od-s2:8px;--od-s3:12px;--od-s4:16px;--od-s5:20px;--od-s6:24px;
 --od-touch:44px;--od-ease:cubic-bezier(.2,.7,.2,1);--od-fast:.14s;--od-med:.22s;
 --od-shadow:0 1px 0 rgba(255,255,255,.025) inset,0 10px 30px -18px rgba(0,0,0,.7);
 --od-pop:0 24px 60px -20px rgba(0,0,0,.78),0 0 0 1px #30323B;
 --od-grid:repeating-linear-gradient(90deg,rgba(255,255,255,.012) 0 1px,transparent 1px 64px),repeating-linear-gradient(0deg,rgba(255,255,255,.012) 0 1px,transparent 1px 64px);
 /* type scale */
 --od-t-label:800 10.5px/1.2 var(--od-font);--od-t-body:400 14px/1.5 var(--od-font);--od-t-h3:700 15px/1.3 var(--od-font);
 --od-t-h2:750 18px/1.25 var(--od-font);--od-t-h1:800 clamp(22px,2.6vw,30px)/1.15 var(--od-font);
 color-scheme:dark;
}

/* ---------- 2. legacy token bridges (everything except saved custom palettes) ---------- */
html{
 --pm-bg:var(--od-bg);--pm-surface:var(--od-card);--pm-surface-2:var(--od-bg-2);--pm-raised:var(--od-card);--pm-line:var(--od-line);--pm-line-soft:var(--od-line-soft);
 --pm-ink:var(--od-ink);--pm-mut:var(--od-ink-2);--pm-faint:var(--od-ink-3);--pm-red:var(--od-red-action);--pm-red-ink:var(--od-ink);--pm-red-hover:var(--od-red-hover);
 --pm-red-soft:var(--od-red-soft);--pm-red-line:var(--od-red-line);--pm-input:var(--od-input);--pm-input-ink:var(--od-ink);--pm-scrim:var(--od-scrim);
 --pm-ok:var(--od-ok);--pm-warn:var(--od-warn);--pm-info:var(--od-info);--pm-danger:var(--od-crit);
 --ng-bg:var(--od-bg);--ng-surface:var(--od-bg-2);--ng-card:var(--od-card);--ng-sec:var(--od-card-2);--ng-line:var(--od-line);--ng-ink:var(--od-ink);--ng-mut:var(--od-ink-2);
 --ng-red:var(--od-red-action);--ng-red-ink:var(--od-ink);--ng-green:var(--od-ok);--ng-amber:var(--od-warn);--ng-blue:var(--od-info);
 --employee-bg:var(--od-bg);--employee-panel:var(--od-card);--employee-line:var(--od-line);--employee-ink:var(--od-ink);--employee-muted:var(--od-ink-2);--employee-accent:var(--od-red-action);
 --nt-bg:var(--od-bg);--nt-panel:var(--od-card);--nt-ink:var(--od-ink);--nt-ink2:var(--od-ink-2);--nt-line:var(--od-line);--nt-input:var(--od-input);--nt-nav:var(--od-bg);--nt-navsel:var(--od-card);--nt-red:var(--od-red-action);--nt-red-d:var(--od-red-hover);--nt-redbg:var(--od-red-soft);--nt-accent:var(--od-red-action);
 --dh-paper:var(--od-card);--dh-ink:var(--od-ink);--dh-ink2:var(--od-ink-2);--dh-nardo:var(--od-ink-3);--dh-line:var(--od-line);--dh-soft:var(--od-card-2);
}
/* Founder / company support console (owner.css): same identity, exact palette. Scoped to pages that load it. */
html:has(link[href*="owner.css"]){
 --bg:var(--od-bg);--bg2:var(--od-bg-2);--panel:var(--od-card);--panel2:var(--od-card-2);--line:var(--od-line);--line2:#3A3C46;
 --ink:var(--od-ink);--ink2:var(--od-ink-2);--ink3:var(--od-ink-3);--red:var(--od-red-action);--red2:#F0607A;--redbg:var(--od-red-soft);
 --ok:var(--od-ok);--okbg:var(--od-ok-soft);--warn:var(--od-warn);--warnbg:var(--od-warn-soft);--mono:var(--od-mono);--sans:var(--od-font);
}
/* Official default values apply only to Night or the initial unresolved page. */
html[data-mt-appearance="night"],html:not([data-mt-appearance]){
 --mt-background:var(--od-bg)!important;--mt-panel:var(--od-card)!important;--mt-text:var(--od-ink)!important;--mt-ink:var(--od-ink)!important;--mt-panel-ink:var(--od-ink)!important;
 --mt-muted:var(--od-ink-2)!important;--mt-panel-muted:var(--od-ink-2)!important;--mt-secondary:var(--od-ink-2)!important;--mt-heading:var(--od-ink)!important;--mt-standard:var(--od-ink)!important;
 --mt-border:var(--od-line)!important;--mt-page-border:var(--od-line)!important;--mt-input-border:var(--od-line)!important;--mt-input:var(--od-input)!important;--mt-input-ink:var(--od-ink)!important;
 --mt-accent:var(--od-red-action)!important;--mt-accent-ink:var(--od-ink)!important;--mt-accent-hover:var(--od-red-hover)!important;--mt-accent-hover-ink:var(--od-ink)!important;
 --mt-hover:var(--od-card-2)!important;--mt-hover-ink:var(--od-ink)!important;--mt-nav-highlight:var(--od-red-soft)!important;--mt-selected:var(--od-red-soft)!important;--mt-selected-ink:var(--od-ink)!important;--mt-nav-ink:var(--od-ink)!important;
}

/* ---------- 2b. remaining real token families (employee, public, legal, vendor) ---------- */
html,html .app-shell{
 /* styles.css (root + .app-shell) */
 --nav:var(--od-bg);--nav2:var(--od-card-2);--surface:var(--od-card);--bg:var(--od-bg);--ink:var(--od-ink);--muted:var(--od-ink-2);--stroke:var(--od-line);
 --teal:var(--od-red-action);--tealbg:var(--od-red-soft);--blue:var(--od-red-action);--bluebg:var(--od-red-soft);--orange:var(--od-warn);--orangebg:var(--od-warn-soft);--red:var(--od-red-action);--redbg:var(--od-red-soft);--shadow:var(--od-shadow);
 /* dashboard.css */
 --dash-black:var(--od-bg);--dash-line:var(--od-line);--dash-line2:var(--od-line);--dash-nardo:var(--od-ink-3);--dash-ink:var(--od-ink);--dash-ink2:var(--od-ink-2);--dash-red:var(--od-red);
 /* public-homepage.css */
 --ph-bg:var(--od-bg);--ph-bg2:var(--od-bg-2);--ph-card:var(--od-card);--ph-card2:var(--od-card-2);--ph-line:var(--od-line-soft);--ph-line2:var(--od-line);--ph-text:var(--od-ink);--ph-dim:var(--od-ink-2);--ph-red:var(--od-red);--ph-red2:var(--od-red-action);--ph-body:var(--od-font);--ph-mono:var(--od-mono);
 /* waiting-me.css */
 --wm-ink:var(--od-ink);--wm-dim:var(--od-ink-2);--wm-nardo:var(--od-ink-3);--wm-char:var(--od-card);--wm-char2:var(--od-card-2);--wm-line:var(--od-line);--wm-red:var(--od-red);--wm-red2:var(--od-red-text);--wm-ok:var(--od-ok);--wm-warn:var(--od-warn);
 /* employee-profiles.css (avatars keep photos; only chrome tokens) */
 --mp-ink:var(--od-ink);--mp-coal:var(--od-card);--mp-coal2:var(--od-card-2);--mp-line:var(--od-line);--mp-nardo:var(--od-ink-3);--mp-red:var(--od-red);--mp-red2:var(--od-red-action);
 /* business-solutions.css */
 --bs-ink:var(--od-bg);--bs-ink2:var(--od-bg-2);--bs-panel:var(--od-card);--bs-nardo:var(--od-ink-3);--bs-nardo2:var(--od-line);--bs-line:var(--od-line-soft);--bs-text:var(--od-ink);--bs-dim:var(--od-ink-2);--bs-red:var(--od-red);--bs-red2:var(--od-red-action);--bs-body:var(--od-font);--bs-mono:var(--od-mono);
 /* tool-network.css (generic vendor tokens) */
 --panel:var(--od-card);--accent:var(--od-red-action);--accent-ink:var(--od-ink);--border:var(--od-line);--side:var(--od-bg-2);--side-ink:var(--od-ink);--bad:var(--od-crit);--ok:var(--od-ok);--warn:var(--od-warn);--body:var(--od-font);
}
/* legal.css declares on html[data-mt-appearance] body.mtl-page: match it */
html:not([data-mt-appearance="custom"]) body.mtl-page{
 --mtl-bg:var(--od-bg);--mtl-panel:var(--od-card);--mtl-raise:var(--od-card-2);--mtl-ink:var(--od-ink);--mtl-muted:var(--od-ink-2);--mtl-line:var(--od-line-soft);--mtl-line-strong:var(--od-line);
 --mtl-red:var(--od-red-action);--mtl-red-ink:var(--od-ink);--mtl-ok:var(--od-ok);--mtl-warn:var(--od-warn);--mtl-sans:var(--od-font);--mtl-mono:var(--od-mono);
}

/* ---------- 3. base (screen only; no white flash) ---------- */
@media screen{
 html{background:var(--od-bg);color-scheme:dark}
 body{background-color:var(--od-bg);color:var(--od-ink);-webkit-font-smoothing:antialiased}
 html:not([data-mt-appearance="custom"]) body{background-color:var(--od-bg)!important}
 body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background:var(--od-grid)}
 #app,#root,main{position:relative;z-index:1}
 ::selection{background:rgba(224,51,75,.35);color:var(--od-ink)}
 :focus-visible{outline:2px solid var(--od-red);outline-offset:2px}
 ::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#262830;border-radius:10px;border:2px solid var(--od-bg)}::-webkit-scrollbar-track{background:transparent}
 html{scrollbar-color:#262830 transparent}
 .mono,code,kbd,.ro-number,.od-mono,.vin,[data-mono]{font-family:var(--od-mono);font-variant-numeric:tabular-nums}
 img{max-width:100%}
 body{overflow-x:hidden}
}

/* ---------- 4. shared components (od-*), opt-in classes for any module ---------- */
.od-label,.od-eyebrow{font:var(--od-t-label);letter-spacing:.16em;text-transform:uppercase;color:var(--od-ink-3)}
.od-eyebrow{color:var(--od-red-text)}
.od-title{margin:0;font:var(--od-t-h1);letter-spacing:-.02em;color:var(--od-ink)}
.od-sub{margin:4px 0 0;color:var(--od-ink-2);font-size:14px;max-width:68ch}
.od-pagehead{display:flex;justify-content:space-between;align-items:flex-end;gap:12px 16px;flex-wrap:wrap;padding-bottom:var(--od-s4);border-bottom:1px solid var(--od-line);margin-bottom:var(--od-s5)}
.od-card{background:var(--od-card);border:1px solid var(--od-line);border-radius:var(--od-r-lg);padding:var(--od-s4) var(--od-s5);box-shadow:var(--od-shadow);min-width:0;transition:border-color var(--od-fast)}
.od-card:hover{border-color:#3A3C46}
.od-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--od-line);border:1px solid var(--od-line);border-radius:var(--od-r-lg);overflow:hidden}
.od-stat{background:var(--od-card);padding:var(--od-s4);display:flex;flex-direction:column;gap:4px}
.od-stat .k{font:var(--od-t-label);letter-spacing:.14em;text-transform:uppercase;color:var(--od-ink-3)}
.od-stat .v{font:600 28px/1.1 var(--od-mono);letter-spacing:-.02em;color:var(--od-ink)}
.od-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 16px;border-radius:var(--od-r-sm);border:1px solid var(--od-line);background:var(--od-card-2);color:var(--od-ink);font:650 13.5px/1 var(--od-font);letter-spacing:.01em;cursor:pointer;transition:background var(--od-fast),border-color var(--od-fast),transform var(--od-fast)}
.od-btn:hover{border-color:var(--od-ink-3)}.od-btn:active{transform:translateY(1px)}
.od-btn.is-primary{background:var(--od-red-action);border-color:var(--od-red);color:var(--od-ink)}.od-btn.is-primary:hover{background:var(--od-red-action-hover)}
.od-btn.is-danger{background:transparent;border-color:rgba(255,77,79,.5);color:#FF6B6D}
.od-btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}
.od-iconbtn{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:var(--od-r-sm);border:1px solid transparent;background:transparent;color:var(--od-ink-2);cursor:pointer}
.od-iconbtn:hover{background:var(--od-card-2);color:var(--od-ink)}.od-iconbtn svg{width:20px;height:20px}
.od-field{display:flex;flex-direction:column;gap:6px;min-width:0}.od-field>span{font:var(--od-t-label);letter-spacing:.12em;text-transform:uppercase;color:var(--od-ink-2)}
.od-input{width:100%;min-height:44px;padding:9px 12px;background:var(--od-input);border:1px solid var(--od-line);border-radius:var(--od-r-sm);color:var(--od-ink);font:var(--od-t-body)}
.od-input:focus{outline:0;border-color:var(--od-red);box-shadow:0 0 0 3px var(--od-red-soft)}
.od-tabs{display:flex;gap:2px;border-bottom:1px solid var(--od-line);overflow-x:auto;scrollbar-width:none}
.od-tab{padding:10px 14px;border:0;background:none;color:var(--od-ink-2);font:600 13.5px var(--od-font);cursor:pointer;box-shadow:inset 0 -2px 0 transparent;transition:color var(--od-fast),box-shadow var(--od-fast)}
.od-tab[aria-selected="true"]{color:var(--od-ink);box-shadow:inset 0 -2px 0 var(--od-red)}
.od-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:var(--od-pill);border:1px solid var(--od-line);font:700 10.5px/1.3 var(--od-font);letter-spacing:.08em;text-transform:uppercase;color:var(--od-ink-2);white-space:nowrap}
.od-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.od-pill.ok{color:var(--od-ok);background:var(--od-ok-soft);border-color:rgba(63,166,114,.4)}
.od-pill.warn{color:var(--od-warn);background:var(--od-warn-soft);border-color:rgba(217,154,51,.4)}
.od-pill.crit{color:#FF6B6D;background:var(--od-crit-soft);border-color:rgba(255,77,79,.45)}
.od-pill.info{color:var(--od-info);background:var(--od-info-soft);border-color:rgba(106,143,196,.4)}
.od-alert{padding:10px 14px;border-radius:var(--od-r);border:1px solid var(--od-line);background:var(--od-bg-2);color:var(--od-ink-2);font-size:14px;border-left:3px solid var(--od-info)}
.od-alert.warn{border-left-color:var(--od-warn)}.od-alert.crit{border-left-color:var(--od-crit);color:#FFC2C3}.od-alert.ok{border-left-color:var(--od-ok)}
.od-empty{padding:32px 20px;text-align:center;border:1px dashed var(--od-line);border-radius:var(--od-r-lg);color:var(--od-ink-2);display:flex;flex-direction:column;align-items:center;gap:8px}
.od-empty::before{content:"";width:32px;height:3px;border-radius:2px;background:var(--od-red);margin-bottom:4px}
.od-skel{display:block;height:12px;border-radius:6px;background:linear-gradient(90deg,var(--od-card),var(--od-card-2),var(--od-card));background-size:200% 100%;animation:od-sh 1.2s linear infinite}
@keyframes od-sh{to{background-position:-200% 0}}
.od-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.od-table th{font:var(--od-t-label);letter-spacing:.12em;text-transform:uppercase;color:var(--od-ink-3);text-align:left;padding:10px 12px;border-bottom:1px solid var(--od-line);background:var(--od-bg-2)}
.od-table td{padding:10px 12px;border-bottom:1px solid var(--od-line-soft)}
.od-modal{background:var(--od-card);border:1px solid var(--od-line);border-radius:var(--od-r-lg);box-shadow:var(--od-pop);color:var(--od-ink)}
.od-drawer{position:fixed;top:0;bottom:0;width:min(340px,88vw);background:var(--od-bg-2);border:1px solid var(--od-line);transition:transform var(--od-med) var(--od-ease)}
.od-sr,.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- 5. broad screen-only coverage of existing native class names ---------- */
@media screen{
 html:not([data-mt-appearance="custom"]) :is(.panel,.card,.kpi,.modal,.ob-modal,.dh-menu,.dh-search-panel,.dh-modal,.dropdown,.popover,.menu-panel){border-color:var(--od-line)}
 html:not([data-mt-appearance="custom"]) :is(.modal,.ob-modal,.dh-modal){background:var(--od-card);color:var(--od-ink)}
 html:not([data-mt-appearance="custom"]) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]),select,textarea){color-scheme:dark}
 :is(input[type=checkbox],input[type=radio],input[type=range]){accent-color:var(--od-red)}
 :is(input,textarea)::placeholder{color:var(--od-ink-3)}
 :is(.eyebrow,.kicker,.section-label){letter-spacing:.14em}
 th{font-variant-numeric:tabular-nums}
 .tbl-wrap,.table-wrap,.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
 #toast,.toast{border-radius:var(--od-r);font-family:var(--od-font)}
 /* critical errors vs brand red */
 :is(.alert.error,.alert.danger,.err,.error-box){border-color:rgba(255,77,79,.45);color:#FFC2C3}
 :is(.alert.warn,.alert.warning){border-color:rgba(217,154,51,.45)}
 :is(.alert.success,.alert.ok){border-color:rgba(63,166,114,.45)}
 /* founder console refinements: keep identity, tighten */
 html:has(link[href*="owner.css"]) .side{background:var(--od-sidebar)}
 html:has(link[href*="owner.css"]) .nav-i{padding:8px 12px;font-size:13.5px}
 html:has(link[href*="owner.css"]) .metric .v{font-family:var(--od-mono)}
 html:has(link[href*="owner.css"]) body:before{background:var(--od-grid)}
 html:has(link[href*="owner.css"]) body::after{display:none}
 /* touch + safe areas */
 @media (max-width:767px){
  :is(button,.btn,[role=button]){min-height:40px}
  input,select,textarea{font-size:16px}
  .od-pagehead{margin-bottom:var(--od-s4)}
 }
}
/* ---------- 5b. native component surfaces + typeface (screen only, non-custom) ---------- */
@media screen{
 html:not([data-mt-appearance="custom"]) body{font-family:var(--od-font)}
 html:not([data-mt-appearance="custom"]) :is(button,input,select,textarea,optgroup){font-family:inherit}
 html:not([data-mt-appearance="custom"]) :is(h1,h2,h3,h4){color:var(--od-ink)}
 html:not([data-mt-appearance="custom"]) :is(#app,#overlay,#root,body.mtl-page) :is(.panel,.card,.kpi,.modal,.ob-modal,.dh-modal,.ro-card,.mj-card,.ft-card,.item,.co-card,.list-card){background-color:var(--od-card);color:var(--od-ink);border-color:var(--od-line)}
 html:not([data-mt-appearance="custom"]) :is(#app,#overlay,#root,body.mtl-page) :is(.hint,.muted,.tiny,.desc,small){color:var(--od-ink-2)}
 html:not([data-mt-appearance="custom"]) :is(#app,#overlay,#root,body.mtl-page) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]):not([type=image]),select,textarea){background-color:var(--od-input);color:var(--od-ink);border-color:var(--od-line)}
 html:not([data-mt-appearance="custom"]) :is(#app,#overlay,#root,body.mtl-page) :is(.btn,button.primary,.btn.primary,.btn.teal){background-color:var(--od-red-action);border-color:var(--od-red);color:var(--od-ink)}
 html:not([data-mt-appearance="custom"]) :is(#app,#overlay,#root,body.mtl-page) :is(.btn,.btn.primary,.btn.teal):hover{background-color:var(--od-red-action-hover)}
 html:not([data-mt-appearance="custom"]) :is(#app,#overlay,#root,body.mtl-page) :is(.btn.secondary,.btn.mutedbtn,.btn.ghost,.btn.sm:not(.primary)){background-color:var(--od-card-2);border-color:var(--od-line);color:var(--od-ink)}
 html:not([data-mt-appearance="custom"]) :is(#app,#overlay,#root,body.mtl-page) .btn.danger{background-color:transparent;border-color:rgba(255,77,79,.55);color:#FF6B6D}
 html:not([data-mt-appearance="custom"]) :is(#app,#overlay,#root) .tag:is(.declined,.unavailable,.overdue){color:var(--od-red-text)}
 /* founder console primary buttons: same accessible action red */
 html:has(link[href*="owner.css"]) .btn.primary{background:var(--od-red-action);border-color:var(--od-red);color:var(--od-ink)}
 html:has(link[href*="owner.css"]) :is(.eyebrow,.role-tag){color:var(--od-red-text)}
 /* imagery never re-coloured: photos, logos, avatars, QR codes, scanner/video feeds */
 :is(img,video,canvas,picture,.qr,.qr-code,[class*="qr"],[class*="scanner"] video,.mp-av img){background-color:transparent;filter:none}
 :is(.qr,.qr-code,[class*="qr-"]) :is(img,canvas,svg){background:#fff}
}
/* company logos keep their own colours: never filter or tint brand imagery */
:is(.dh-logo,.co-logo,.company-logo,.brand-logo) img{filter:none!important}

/* Public and consent typography also use the shared local font. */
@media screen{
 body,body.mtl-page{--ph-body:var(--od-font);--ph-mono:var(--od-mono);--mtl-sans:var(--od-font);--mtl-mono:var(--od-mono)}
 body,button,input,select,textarea,h1,h2,h3,h4,h5,h6,[role="heading"]{font-family:var(--od-font)!important}
 body .ph-btn.red{background:var(--od-red-hover);border-color:var(--od-red);color:var(--od-ink)}
 body .ph-btn.red:hover{background:#B8243A;border-color:var(--od-red)}
 .mt-ap [data-ap-colors][hidden]{display:none!important}
}

/* Day and Custom resolve the existing foundation without forcing Night. */
html[data-mt-appearance="day"]{
 --mt-background:#F5F7FA;--mt-panel:#FFFFFF;--mt-sidebar:#FFFFFF;--mt-accent:#B8243A;--mt-text:#27313D;--mt-nav-highlight:#FFF0F2;
 --mt-ink:#27313D;--mt-muted:#657181;--mt-panel-ink:#27313D;--mt-panel-muted:#657181;--mt-sidebar-ink:#27313D;--mt-sidebar-muted:#657181;--mt-sidebar-border:#E5E9EF;
 --mt-accent-ink:#FFFFFF;--mt-accent-hover:#A71930;--mt-accent-hover-ink:#FFFFFF;--mt-nav-ink:#C91F37;--mt-nav-hover:#EEF1F5;--mt-nav-hover-ink:#15191F;
 --mt-border:#E5E9EF;--mt-page-border:#E5E9EF;--mt-hover:#FFF0F2;--mt-hover-ink:#C91F37;--mt-input:#FFFFFF;--mt-input-ink:#27313D;--mt-input-border:#8D97A5;
 --mt-heading:#15191F;--mt-standard:#27313D;--mt-secondary:#657181;--mt-selected:#FFF0F2;--mt-selected-ink:#C91F37;
 --mt-header:#FFFFFF;--mt-card-text:#27313D;--mt-secondary-text:#657181;--mt-button-text:#FFFFFF;--mt-button-hover:#A71930;--mt-icon:#4D5866;
 --mt-input-text:#27313D;--mt-menu:#FFFFFF;--mt-menu-text:#27313D;--mt-chat:#FFFFFF;--mt-chat-text:#27313D;--mt-chat-incoming:#EEF1F5;--mt-chat-outgoing:#B8243A;--mt-chat-outgoing-text:#FFFFFF;--mt-overlay:#15191F;
 color-scheme:light;
}
html:is([data-mt-appearance="day"],[data-mt-appearance="custom"]){
 --od-bg:var(--mt-background);--od-bg-2:var(--mt-background);--od-card:var(--mt-panel);--od-card-2:var(--mt-hover);
 --od-line:var(--mt-border);--od-line-soft:var(--mt-border);--od-ink:var(--mt-ink);--od-ink-2:var(--mt-muted);--od-ink-3:var(--mt-muted);
 --od-input:var(--mt-input);--od-sidebar:var(--mt-sidebar);--od-nav-hl:var(--mt-nav-highlight);
 --od-red:var(--mt-accent);--od-red-action:var(--mt-accent);--od-red-action-hover:var(--mt-button-hover,var(--mt-accent-hover));--od-red-hover:var(--mt-button-hover,var(--mt-accent-hover));--od-red-text:var(--mt-accent);
 --od-scrim:color-mix(in srgb,var(--mt-overlay,#15191F) 62%,transparent);
 --od-shadow:0 1px 2px rgba(21,25,31,.06),0 8px 24px -16px rgba(21,25,31,.22);--od-pop:0 24px 60px -24px rgba(21,25,31,.35),0 0 0 1px var(--mt-border);--od-grid:none;
}
html[data-mt-appearance="day"],html[data-mt-appearance="day"] :is(input,select,textarea){color-scheme:light}
html[data-mt-design="dark"][data-mt-appearance="custom"]{color-scheme:dark}
html[data-mt-design="light"][data-mt-appearance="custom"]{color-scheme:light}
/* The navigation shell formerly declared an explicit Day-as-Night palette. */
html:is([data-mt-appearance="day"],[data-mt-appearance="custom"]){
 --ng-bg:var(--mt-background);--ng-surface:var(--mt-panel);--ng-card:var(--mt-panel);--ng-sec:var(--mt-hover);--ng-line:var(--mt-border);--ng-ink:var(--mt-ink);--ng-mut:var(--mt-muted);--ng-red:var(--mt-accent);--ng-red-ink:var(--mt-accent-ink);
}
html:is([data-mt-appearance="day"],[data-mt-appearance="custom"]) body.ng-on .ng-left{background:var(--mt-sidebar)!important}
html:is([data-mt-appearance="day"],[data-mt-appearance="custom"]) body #app .app-shell,
html:is([data-mt-appearance="day"],[data-mt-appearance="custom"]) body #app .app-shell .main,
html:is([data-mt-appearance="day"],[data-mt-appearance="custom"]) body #app .app-shell .page{background:var(--mt-background)!important;color:var(--mt-ink)!important}
html:is([data-mt-appearance="day"],[data-mt-appearance="custom"]) body.tw-on{--tw-bg:var(--mt-background);--tw-bg2:var(--mt-hover);--tw-surf:var(--mt-panel);--tw-ink:var(--mt-panel-ink);--tw-mute:var(--mt-panel-muted);--tw-line:var(--mt-border);--tw-red:var(--mt-accent)}
.mt-td{--td-bg:var(--od-card);--td-ink:var(--od-ink);--td-mut:var(--od-ink-2);--td-line:var(--od-line);--td-acc:var(--od-red-action);--td-bottom:calc(12px + env(safe-area-inset-bottom,0px));position:fixed;z-index:1350;bottom:var(--td-bottom);font:500 13px/1.3 var(--od-font);color:var(--td-ink);display:flex;flex-direction:column;gap:8px;pointer-events:none}
.mt-td[data-side="left"]{left:calc(12px + env(safe-area-inset-left,0px));align-items:flex-start}
.mt-td>*{pointer-events:auto}
.mt-td-handle{order:2;min-height:44px;max-width:calc(100vw - 32px);display:flex;align-items:center;gap:8px;padding:0 14px;border-radius:999px;border:1px solid var(--td-line);background:var(--td-bg);color:var(--td-ink);font:600 12px/1.3 var(--od-font);white-space:nowrap;cursor:pointer;touch-action:manipulation;box-shadow:0 4px 12px -8px rgba(0,0,0,.45);transition:background .15s,border-color .15s}
.mt-td-handle:hover,.mt-td-handle:focus-visible,.mt-td[data-collapsed="false"] .mt-td-handle{opacity:1;color:var(--td-ink)}
.mt-td-handle svg,.mt-td-mode svg,.mt-td-icon svg{width:18px;height:18px}
.mt-td-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mt-td-panel{order:1;width:min(272px,calc(100vw - 24px));max-height:calc(100dvh - 88px - env(safe-area-inset-bottom,0px));overflow-y:auto;padding:10px;border-radius:14px;border:1px solid var(--td-line);background:var(--td-bg);color:var(--td-ink);box-shadow:var(--od-pop)}
.mt-td-panel[hidden]{display:none}
.mt-td-head{display:flex;align-items:center;gap:6px;margin-bottom:8px}
.mt-td-head b{flex:1;font:var(--od-t-label);letter-spacing:.16em;text-transform:uppercase;color:var(--td-mut)}
.mt-td-icon{width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--td-mut);cursor:pointer}
.mt-td-icon:hover{background:var(--od-card-2);color:var(--td-ink)}
.mt-td-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:3px;border-radius:10px;background:var(--od-bg);border:1px solid var(--td-line)}
.mt-td-mode{display:flex;flex-direction:column;align-items:center;gap:4px;min-height:52px;padding:7px 4px;border:0;border-radius:8px;background:transparent;color:var(--td-mut);font:600 12px/1 var(--od-font);cursor:pointer}
.mt-td-mode:hover:not([disabled]){color:var(--td-ink);background:var(--od-card-2)}
.mt-td-mode[aria-checked="true"]{background:var(--td-acc);color:var(--mt-accent-ink,#F4F5F7)}
.mt-td-mode[disabled]{opacity:.45;cursor:not-allowed}
.mt-td-scope{margin:8px 2px 0;font-size:11.5px;color:var(--td-mut)}
.mt-td-msg{margin:4px 2px 0;font-size:12px;color:var(--td-ink)}
.mt-td-msg:empty{display:none}
.mt-td-msg.bad{color:var(--od-red-text)}
.mt-td-more{margin-top:8px;width:100%;min-height:36px;border-radius:8px;border:1px solid var(--td-line);background:transparent;color:var(--td-ink);font:600 12.5px var(--od-font);cursor:pointer}
.mt-td :focus-visible{outline:2px solid var(--od-red);outline-offset:2px}
/* Reserve a control row; account/logout remain above the pill in either drawer. */
body:has(.mt-td) :is(.ng-acct,.side-foot){padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}
body:has(.mt-td) #app .app-shell .page{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))!important}
body:has(.mt-td){padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}
@media print{.mt-td{display:none!important}}

/* ---------- 6. motion + print ---------- */
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
@media print{
 :root{color-scheme:light}
 html,body{background:#fff!important;color:#000!important}
 body::after,body::before{display:none!important}
 .ng-panel,.ng-tabbar,.ng-back,.ng-toggle,.tech-bnav{display:none!important}
}
