/* Driver Portal - base structural styles.
   Colors, fonts, spacing tokens are injected inline by DP_Styles::build_css()
   based on the site admin's settings (Driver Portal > Styling). This file
   only covers structural/layout rules that don't depend on those settings. */

.dp-portal-wrap { line-height: 1.5; }
.dp-portal-wrap h2 { margin-top: 0; }
.dp-dashboard-header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; }
.dp-inline-option { font-weight: normal; display: inline-block; margin-right: 16px; }
.dp-submitted-details summary { cursor: pointer; font-weight: 600; margin: 12px 0; }
.dp-step-indicator { cursor: default; }
#dp-register-messages .dp-notice,
#dp-login-messages .dp-notice { margin-bottom: 16px; }
.dp-field-error { color: #dc2626; font-size: 0.85em; margin-top: 4px; min-height: 0; }
.dp-input.dp-input-error { border-color: #dc2626 !important; }
.dp-loading { opacity: 0.6; pointer-events: none; }
