/* =========================================================
   RAIZE DESIGN SYSTEM — FRONTOFFICE MUDBLAZOR OVERRIDES
   Loaded after the shared raize-mudblazor.css. Only shape,
   depth and interaction changes — colours come from the
   remapped variables in raize-ds-tokens.css.
   ========================================================= */

/* ---------- PAPERS / TABLES: DS card ---------- */
.mud-paper.mud-elevation-0,
.mud-table {
    border-color: var(--border-card);
    border-radius: var(--radius-card) !important;
    box-shadow: none !important;
}
.mud-paper.mud-elevation-1,
.mud-paper.mud-elevation-2,
.mud-paper.mud-elevation-3 {
    border: 1px solid var(--border-card);
    border-radius: var(--radius-card) !important;
    box-shadow: var(--shadow-card) !important;
}
.mud-table .mud-table-head .mud-table-cell {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .6px;
    color: var(--text-muted);
}
.mud-table .mud-table-body .mud-table-cell {
    font-size: 14.5px;
    color: var(--text-strong);
    border-bottom-color: var(--border-divider);
}

/* ---------- BUTTONS ---------- */
.mud-button-root {
    font-weight: 700;
    border-radius: var(--radius-btn) !important;
    transition: transform var(--d-fast) var(--ease), box-shadow var(--d-fast) var(--ease),
                filter var(--d-fast) var(--ease), background var(--d-fast) var(--ease);
}
.mud-button-root:hover:not(:disabled) { transform: translateY(-2px); }
.mud-button-root:active { transform: none; }

.mud-button-filled.mud-button-filled-primary {
    color: var(--raize-ink) !important;
    box-shadow: var(--shadow-cta) !important;
}
/* DS: no colour-darkening on yellow — brighten instead. */
.mud-button-filled.mud-button-filled-primary:hover {
    background-color: var(--brand) !important;
    filter: brightness(1.04);
}
.mud-button-outlined.mud-button-outlined-primary,
.mud-button-outlined.mud-button-outlined-default {
    border: 1.5px solid var(--border-strong) !important;
}

/* ---------- INPUTS: filled grey boxes ---------- */
.mud-input-outlined .mud-input-outlined-border {
    border-radius: var(--radius-input) !important;
    border-color: var(--border-input) !important;
}
.mud-input-outlined .mud-input-slot { background: var(--grey-40); border-radius: var(--radius-input); }
.mud-input-outlined.mud-focused .mud-input-outlined-border { border-color: var(--blue-600) !important; }
.mud-input-label { font-weight: 600; }

/* ---------- CHIPS → pills ---------- */
.mud-chip {
    height: 26px;
    font-size: 12.5px;
    font-weight: 700;
    border-radius: var(--radius-pill) !important;
}

/* ---------- ALERTS ---------- */
.mud-alert { border-radius: var(--radius-tile) !important; }
.mud-alert.mud-alert-filled-success,
.mud-alert.mud-alert-text-success { border-color: var(--green-250); }
.mud-alert.mud-alert-filled-warning,
.mud-alert.mud-alert-text-warning { border-color: var(--raize-yellow-300); }
.mud-alert.mud-alert-filled-info,
.mud-alert.mud-alert-text-info    { border-color: var(--blue-300); }

/* ---------- TABS ---------- */
.mud-tabs .mud-tab { font-weight: 600; font-size: 15px; }
.mud-tabs .mud-tab.mud-tab-active { font-weight: 700; }

/* ---------- MENUS / DIALOGS ---------- */
.mud-popover {
    border-color: var(--border-card);
    border-radius: 12px !important;
    box-shadow: var(--shadow-menu) !important;
}
.mud-list-item { font-size: 14.5px; border-radius: 9px; }
.mud-dialog { border-radius: var(--radius-card) !important; }
.mud-dialog-title { font-weight: 800; }
.mud-overlay-scrim { background: rgba(24, 26, 31, .45) !important; }

/* ---------- TYPOGRAPHY ---------- */
.mud-typography-h1,
.mud-typography-h2 { font-weight: 900; letter-spacing: -.8px; color: var(--text-heading); }
.mud-typography-h3,
.mud-typography-h4,
.mud-typography-h5,
.mud-typography-h6 { font-family: var(--font-display); font-weight: 800; color: var(--text-heading); }

/* ---------- FOCUS RING ---------- */
.mud-button-root:focus-visible,
.mud-icon-button:focus-visible {
    outline: 2px solid var(--blue-600);
}
.mud-input-root:focus-within { outline: none; }
