/* Modal form fixes: prevent fields and save action from being clipped. */
.modal-backdrop { padding: 18px; overflow-y: auto; z-index: 60; }
.modal { margin: auto; max-height: calc(100vh - 36px); overflow-y: auto; }
.modal .form-grid { padding-bottom: 2px; }
.modal .form-grid input, .modal .form-grid select { width: 100%; background: #fff; }
.modal .form-submit { min-height: 42px; }
.row-actions { display: flex; align-items: center; gap: 8px; }
.danger { color: #e1645c; }
@media (max-width: 520px) {
  .modal-backdrop { padding: 10px; align-items: flex-start; }
  .modal { width: 100%; max-height: calc(100vh - 20px); padding: 22px 18px; border-radius: 10px; }
  .form-grid { grid-template-columns: 1fr; gap: 13px; margin-top: 18px; }
  .form-grid .full { grid-column: auto; }
}

.brand-symbol{display:grid;width:31px;height:31px;place-items:center;flex:0 0 auto;border-radius:8px;background:linear-gradient(145deg,#0c2b60,#326ff1);color:#fff;font-size:15px;font-weight:800;box-shadow:0 6px 14px rgba(50,111,241,.22)}
.login-brand .brand-symbol{width:42px;height:42px;border-radius:10px;font-size:19px}

/* WCAG AA readability: secondary labels remain quiet without becoming faint. */
:root { --muted: #5f6b7d !important; }
.eyebrow,
.stat-card p,
.stat-card small,
.panel-head p,
.alert small,
th,
.icp-footer,
.icp-link,
.legend { color: #5f6b7d !important; }
.onboarding-step small { color: #596678 !important; }
.onboarding-step em,
.dashboard-replenishment-banner .text-btn { color: #255fcf !important; }
.alert .count b { color: #b94728 !important; }
.live-status-dot { color: #08735c !important; }
#dashboardReplenishmentDetail { color: #675344 !important; }
