/* Shared dossier-level readability across the application and its portals.
   Keep organisation branding, status colours, registration plates and PDF artwork. */
:root{--ui-text:#243841;--ui-muted:#4b606b;--ui-line:#bcc9d1;--ui-heading-surface:#eaf0f4;--line:var(--ui-line)}
body{color:var(--ui-text)}
body :is(.muted,.unit-type,.unit-icon,.eyebrow,.intro-note){color:var(--ui-muted)}
body :is(.card,dialog,.settings-section-panel){border-color:var(--ui-line)}
body :is(input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea){color:var(--ui-text);border-color:#95a8b4}
body :is(input,textarea)::placeholder{color:#586d78;opacity:1}
body :is(input,select,textarea):disabled{color:#596b75;background:#edf1f4;opacity:1;-webkit-text-fill-color:#596b75}
body :is(button.secondary,a.secondary):not(.active):not(.selected):not([aria-selected=true]):not([aria-current=page]){color:#2d4654;border-color:#a9bac5;background:#edf2f5}
body :is(button.secondary,a.secondary):not(.active):not(.selected):not([aria-selected=true]):not([aria-current=page]):hover:not(:disabled){color:#1d3543;background:#dfe8ee;border-color:#8098a7}
body :is(button,input,select,textarea,a):focus-visible{outline:2px solid #244e68;outline-offset:2px}
body :is(table,.dossier-table,.purchase-table,.invoice-mapping-table,.progress-table) th:not(.fleet-weekend):not(.fleet-today){color:#344f5d;background:var(--ui-heading-surface);border-bottom:1px solid #aebfc9}
body :is(.dossier-table,.purchase-table,.invoice-mapping-table,.progress-table) td{border-bottom-color:#cbd6dd}
body :is(.upcoming-columns,.orders-dossier-table thead,.tag-settings-row small){color:#344f5d}
body .upcoming-columns{background:var(--ui-heading-surface);border-bottom-color:#aebfc9}
body :is(.upcoming-day,.upcoming-row,.home-row,.unit-row){border-color:#c5d1d9}
body :is(.upcoming-model,.upcoming-customer,.home-meta,.di-analysis-card span,.di-analysis-breakdown){color:var(--ui-muted)}
body :is(.di-analysis-card,.di-analysis-source,.di-analysis-status,.purchase-line){border-color:#b8c8d2}
body :is(.settings-subnav,.chapter-menu,.accounting-tabs) button:not([aria-selected=true]):not(.active):not(.selected){color:#38505e}
/* Keep selected and semantic button treatments defined by each module. */
body #page-upcoming .upcoming-action-arrival{background:#e1eef9;color:#245b83;border-color:#8eb8d4}
body #page-upcoming .upcoming-action-delivery{background:#e0f1e7;color:#286347;border-color:#86b99b}
body #page-upcoming .upcoming-action-intake{background:#eef0fc;color:#4b4e7d;border-color:#a6acd4}
body .di-analysis-card.positive{border-color:#88bd98}body .di-analysis-card.negative{border-color:#ce9188}body .di-analysis-card.incomplete{border-color:#c5a976}
@media print{body{--ui-text:#243841;--ui-muted:#4b606b}}

/* Dossier overview typography is the shared application baseline. */
:root{--ui-font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--ui-font-size:13px;--ui-small-size:11px;--ui-line-height:1.35}
body{font-family:var(--ui-font);font-size:var(--ui-font-size);line-height:var(--ui-line-height)}
body :is(main,dialog,section,article,nav,table,form){font-family:var(--ui-font)}
body :is(button,input,select,textarea){font-family:var(--ui-font)}
body :is(main,dialog) :is(p,label,legend,td,li,dt,dd){font-size:var(--ui-font-size);line-height:var(--ui-line-height)}
body :is(main,dialog) :is(input,select,textarea){font-size:var(--ui-font-size);line-height:var(--ui-line-height)}
body :is(main,dialog) :is(small,.muted,.field-help,.form-help){font-size:var(--ui-small-size);line-height:1.4;color:var(--ui-muted)}
body :is(main,dialog) th{font-size:var(--ui-small-size);line-height:var(--ui-line-height);font-weight:600}
body :is(main,dialog) :is(h1,h2,h3,h4){font-family:var(--ui-font);color:var(--ui-text);line-height:1.3;letter-spacing:normal}
body :is(main,dialog) h2{font-size:20px;font-weight:650}
body :is(main,dialog) h3{font-size:15px;font-weight:650}
body :is(main,dialog) h4{font-size:13px;font-weight:650}
body :is(.upcoming-model,.upcoming-customer,.upcoming-damage-location,.upcoming-status,.upcoming-substatus,.repair-item,.home-moment,.home-meta,.unit-row,.filter-page,.ops-table){font-size:var(--ui-font-size);line-height:var(--ui-line-height)}
body :is(.upcoming-model,.upcoming-customer,.upcoming-damage-location,.home-moment,.unit-row){color:var(--ui-text)}
/* Leave plate lettering, icon controls, brand colours and semantic status colours intact. */
