.mau-page-header {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:15px;
    margin-bottom:22px;
}
.mau-page-header h1 { font-size:24px; font-weight:800; margin:0; letter-spacing:-.4px; }
.mau-page-header p { color:var(--mau-muted); margin:6px 0 0; font-size:13px; }
.mau-page-actions { display:flex; align-items:center; gap:8px; }

.mau-btn { border-radius:9px; font-weight:600; }
.mau-btn:focus, .mau-input:focus, .mau-search:focus-within {
    box-shadow:0 0 0 .2rem rgba(37,99,235,.12);
}

.panel-body { padding:18px 19px; }

.mau-form-group { margin-bottom:16px; }
.mau-form-group .form-label { font-size:12px; font-weight:650; margin-bottom:6px; color:#374151; }
.mau-input { border-radius:9px; border-color:#dfe3e8; font-size:13px; min-height:40px; }
textarea.mau-input { min-height:auto; }
.form-text { font-size:11px; color:#9ca3af; }
.invalid-feedback { font-size:11px; }

.mau-search {
    width:100%;
    min-height:40px;
    display:flex;
    align-items:center;
    gap:8px;
    border:1px solid #dfe3e8;
    background:#fff;
    border-radius:9px;
    padding:0 11px;
}
.mau-search i { color:#9ca3af; }
.mau-search input {
    border:0;
    outline:0;
    width:100%;
    font-size:13px;
    background:transparent;
}
.mau-search-clear { color:#9ca3af; }
.mau-search-clear:hover { color:#374151; }

.mau-badge {
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:4px 8px;
    font-size:10px;
    font-weight:700;
}
.mau-badge-primary { background:#eff6ff; color:#1d4ed8; }
.mau-badge-success { background:#ecfdf5; color:#047857; }
.mau-badge-danger { background:#fef2f2; color:#b91c1c; }
.mau-badge-warning { background:#fffbeb; color:#b45309; }
.mau-badge-info { background:#ecfeff; color:#0e7490; }
.mau-badge-secondary { background:#f3f4f6; color:#4b5563; }

.mau-alert { border-radius:10px; border:1px solid transparent; font-size:12px; }
.mau-alert.alert-success { background:#ecfdf5; color:#047857; border-color:#bbf7d0; }
.mau-alert.alert-danger { background:#fef2f2; color:#b91c1c; border-color:#fecaca; }
.mau-alert.alert-warning { background:#fffbeb; color:#92400e; border-color:#fde68a; }
.mau-alert.alert-info { background:#eff6ff; color:#1d4ed8; border-color:#bfdbfe; }

.mau-table { margin:0; font-size:12px; }
.mau-table thead th {
    background:#f8fafc;
    color:#6b7280;
    font-size:10px;
    text-transform:uppercase;
    letter-spacing:.4px;
    font-weight:750;
    padding:11px 13px;
    border-bottom:1px solid #e5e7eb;
}
.mau-table tbody td { padding:12px 13px; border-color:#f0f1f3; }
.mau-table tbody tr:hover { background:#fafcff; }

.mau-empty-state {
    min-height:250px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    padding:25px;
    text-align:center;
}
.mau-empty-icon {
    width:58px;
    height:58px;
    border-radius:16px;
    display:grid;
    place-items:center;
    background:#f3f4f6;
    color:#9ca3af;
    font-size:24px;
}
.mau-empty-state h6 { font-weight:700; margin:13px 0 4px; }
.mau-empty-state p { color:#9ca3af; font-size:11px; max-width:330px; margin:0; }

.mau-modal { border:0; border-radius:14px; overflow:hidden; }
.mau-modal .modal-header { padding:16px 18px; border-bottom:1px solid #eef0f2; }
.mau-modal .modal-title { font-size:15px; font-weight:750; }
.mau-modal .modal-body { padding:18px; font-size:13px; }
.mau-modal .modal-footer { padding:12px 18px; border-top:1px solid #eef0f2; }

.mau-loading { min-height:100px; color:var(--mau-primary); }

.mau-toast {
    border:1px solid #e5e7eb;
    border-radius:11px;
    background:#fff;
    box-shadow:0 12px 30px rgba(15,23,42,.12);
    font-size:12px;
}

.pagination { --bs-pagination-font-size: 12px; }
.page-link { color:#374151; border-color:#e5e7eb; }
.page-item.active .page-link { background:var(--mau-primary); border-color:var(--mau-primary); }

@media (max-width:575.98px) {
    .mau-page-header { flex-direction:column; }
    .mau-page-header h1 { font-size:20px; }
    .mau-page-actions { width:100%; }
    .mau-page-actions > * { width:100%; }
    .panel-body { padding:15px; }
}
