html, body { font-family: 'Roboto', 'Segoe UI', Helvetica, Arial, sans-serif; }
.dha-brand { font-weight: 700; letter-spacing: .3px; }
.dha-brand small { font-weight: 400; opacity: .8; }
.kpi-value { font-size: 1.9rem; font-weight: 600; line-height: 1.1; }
.kpi-label { font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; opacity: .75; }
.kpi-sub { font-size: .8rem; opacity: .8; }
.flow-step { border-radius: 8px; padding: 12px 14px; text-align: center; min-width: 150px; }
.flow-arrow { font-size: 1.6rem; opacity: .5; align-self: center; }
.mono { font-family: Consolas, 'Courier New', monospace; font-size: .85em; }
.ticker-row { border-left: 3px solid var(--mud-palette-lines-default); padding-left: 10px; margin-bottom: 8px; }
.ticker-row.sev-SUCCESS { border-left-color: var(--mud-palette-success); }
.ticker-row.sev-WARNING { border-left-color: var(--mud-palette-warning); }
.ticker-row.sev-ERROR { border-left-color: var(--mud-palette-error); }
.ticker-row.sev-INFO { border-left-color: var(--mud-palette-info); }
.status-chip { font-size: .7rem !important; height: 22px !important; }
.page-title { margin-bottom: 4px; }
.page-subtitle { opacity: .75; margin-bottom: 16px; }
.dense-table td, .dense-table th { padding: 6px 10px !important; font-size: .85rem; }
.verify-box { max-width: 560px; margin: 48px auto; }
.demo-banner { background: #fff7e6; border: 1px dashed #e0a800; border-radius: 6px; padding: 8px 12px; font-size: .85rem; }
