/* =============================================================================
   PREMIUM UI — بازطراحی کامل ظاهر ParentSystem
   ============================================================================= */

:root {
    --ps-bg: #eef2f8;
    --ps-surface: #ffffff;
    --ps-surface-2: #f8fafc;
    --ps-border: rgba(15, 23, 42, 0.08);
    --ps-shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.06), 0 1px 2px rgba(15, 23, 42, 0.04);
    --ps-shadow-md: 0 4px 16px rgba(15, 23, 42, 0.08), 0 2px 6px rgba(15, 23, 42, 0.04);
    --ps-shadow-lg: 0 12px 32px rgba(15, 23, 42, 0.12), 0 4px 12px rgba(15, 23, 42, 0.06);
    --ps-radius: 12px;
    --ps-radius-lg: 16px;
    --ps-accent-glow: 0 0 0 3px rgba(var(--theme-primary-rgb, 37, 99, 235), 0.2);
    --ps-table-stripe: rgba(var(--theme-primary-rgb, 37, 99, 235), 0.03);
    --ps-nav-active: rgba(255, 255, 255, 0.18);
    --ps-nav-hover: rgba(255, 255, 255, 0.1);
}

[data-theme="dark"] {
    --ps-bg: #0f1419;
    --ps-surface: #1a2332;
    --ps-surface-2: #243044;
    --ps-border: rgba(255, 255, 255, 0.1);
    --ps-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3);
    --ps-shadow-md: 0 4px 20px rgba(0, 0, 0, 0.4);
    --ps-shadow-lg: 0 12px 40px rgba(0, 0, 0, 0.5);
    --ps-table-stripe: rgba(255, 255, 255, 0.03);
    --ps-nav-active: rgba(255, 255, 255, 0.14);
    --ps-nav-hover: rgba(255, 255, 255, 0.08);
}

/* ─── پس‌زمینه کل اپ ─────────────────────────────────────────────────────── */
html, body {
    background: var(--ps-bg) !important;
}

.ps-app .mud-main-content {
    background: var(--ps-bg) !important;
    min-height: calc(100vh - 64px);
}

.ps-page {
    animation: psFadeIn 0.35s ease;
}

@keyframes psFadeIn {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ─── AppBar ─────────────────────────────────────────────────────────────── */
.ps-app .mud-appbar {
    background: var(--theme-gradient-primary) !important;
    box-shadow: var(--ps-shadow-md) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15) !important;
    backdrop-filter: blur(8px);
}

.ps-app .mud-appbar .mud-typography {
    font-weight: 700 !important;
    letter-spacing: -0.01em;
}

@media (max-width: 959px) {
    .ps-app .mud-appbar .app-bar-title {
        display: none !important;
    }
}

/* ─── Drawer / منو ───────────────────────────────────────────────────────── */
.ps-app .mud-drawer {
    background: linear-gradient(180deg, var(--theme-drawer-bg) 0%, color-mix(in srgb, var(--theme-drawer-bg) 85%, #000) 100%) !important;
    border-left: 1px solid rgba(255, 255, 255, 0.08) !important;
}

/* جزئیات منو در nav-menu.css — جستجو داخل .ps-nav-search-wrap استایل می‌شود */

/* ─── Paper / Card ─────────────────────────────────────────────────────────── */
.ps-app .mud-paper:not(.page-header-card):not(.reg-page-header):not(.filter-paper):not(.no-shadow):not(.swr-header):not(.rpt-header) {
    border-radius: var(--ps-radius) !important;
    border: 1px solid var(--ps-border) !important;
    box-shadow: var(--ps-shadow-sm) !important;
    background: var(--ps-surface) !important;
    transition: box-shadow 0.25s ease, transform 0.2s ease;
}

.ps-app .mud-paper:hover:not(.page-header-card):not(.reg-page-header):not(.swr-header):not(.rpt-header) {
    box-shadow: var(--ps-shadow-md) !important;
}

.ps-app .mud-card {
    border-radius: var(--ps-radius) !important;
    border: 1px solid var(--ps-border) !important;
    box-shadow: var(--ps-shadow-sm) !important;
    overflow: hidden;
    transition: box-shadow 0.25s ease;
}

.ps-app .mud-card:hover {
    box-shadow: var(--ps-shadow-md) !important;
}

/* ─── جداول — طراحی مدرن ─────────────────────────────────────────────────── */
.ps-app .mud-table {
    border-radius: var(--ps-radius) !important;
    overflow: hidden;
    border: 1px solid var(--ps-border) !important;
    box-shadow: var(--ps-shadow-sm) !important;
}

.ps-app .mud-table .mud-table-head .mud-table-cell,
.ps-app .mud-table thead .mud-th,
.ps-app .mud-table thead th {
    background: var(--theme-gradient-primary) !important;
    color: var(--theme-appbar-text, #fff) !important;
    font-weight: 700 !important;
    font-size: 0.9375rem !important;
    padding: 12px 10px !important;
    border-bottom: 2px solid rgba(0, 0, 0, 0.08) !important;
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
}

.ps-app .mud-table .mud-table-head .mud-table-cell *,
.ps-app .mud-table thead .mud-th * {
    color: var(--theme-appbar-text, #fff) !important;
}

.ps-app .mud-table .mud-table-body .mud-table-cell,
.ps-app .mud-table tbody .mud-td,
.ps-app .mud-table tbody td {
    padding: 8px 6px !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    font-variant-numeric: tabular-nums !important;
    border-bottom: 1px solid var(--ps-border) !important;
    color: var(--theme-text-primary) !important;
}

.ps-app .mud-table .mud-table-body .mud-table-row:nth-child(even) {
    background: var(--ps-table-stripe) !important;
}

.ps-app .mud-table .mud-table-body .mud-table-row:hover {
    background: rgba(var(--theme-primary-rgb, 37, 99, 235), 0.1) !important;
}

.ps-app .mud-table tfoot .mud-table-cell {
    background: linear-gradient(180deg, rgba(var(--theme-primary-rgb, 37, 99, 235), 0.12), rgba(var(--theme-primary-rgb, 37, 99, 235), 0.06)) !important;
    font-weight: 800 !important;
    font-size: 1.0625rem !important;
    border-top: 2px solid rgba(var(--theme-primary-rgb, 37, 99, 235), 0.25) !important;
}

/* DataGrid */
.ps-app .mud-table-grid .mud-table-head .mud-table-cell {
    background: var(--theme-gradient-primary) !important;
    color: #fff !important;
}

/* ─── دکمه‌ها ─────────────────────────────────────────────────────────────── */
.ps-app .mud-button-root.mud-button-filled-primary {
    background: var(--theme-gradient-primary) !important;
    box-shadow: 0 2px 8px rgba(var(--theme-primary-rgb, 37, 99, 235), 0.35) !important;
    font-weight: 700 !important;
    border-radius: 10px !important;
    transition: transform 0.15s ease, box-shadow 0.2s ease !important;
}

.ps-app .mud-button-root.mud-button-filled-primary:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(var(--theme-primary-rgb, 37, 99, 235), 0.45) !important;
}

.ps-app .mud-button-root.mud-button-outlined-primary {
    border-width: 2px !important;
    font-weight: 600 !important;
    border-radius: 10px !important;
}

/* ─── Chip ───────────────────────────────────────────────────────────────── */
.ps-app .mud-chip {
    border-radius: 20px !important;
    font-weight: 600 !important;
    box-shadow: var(--ps-shadow-sm);
}

.ps-app .mud-chip.mud-chip-color-primary {
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-primary-dark)) !important;
}

/* ─── فرم و ورودی ────────────────────────────────────────────────────────── */
.ps-app .mud-input-outlined .mud-input-outlined-border {
    border-radius: 10px !important;
    border-color: var(--ps-border) !important;
}

.ps-app .mud-input-outlined:hover .mud-input-outlined-border {
    border-color: rgba(var(--theme-primary-rgb, 37, 99, 235), 0.4) !important;
}

.ps-app .mud-input-outlined.mud-input-outlined-focus .mud-input-outlined-border {
    border-width: 2px !important;
    border-color: var(--theme-primary) !important;
    box-shadow: var(--ps-accent-glow) !important;
}

.ps-form-section,
.ps-app .filter-paper {
    background: var(--ps-surface) !important;
    border-radius: var(--ps-radius) !important;
    border: 1px solid var(--ps-border) !important;
    box-shadow: var(--ps-shadow-sm) !important;
    padding: 1.25rem !important;
}

/* ─── هدر صفحات ─────────────────────────────────────────────────────────── */
.page-header-card,
.reg-page-header,
.report-header-card,
.ps-page-header {
    background: var(--theme-gradient-primary) !important;
    color: #fff !important;
    border-radius: var(--ps-radius-lg) !important;
    box-shadow: var(--ps-shadow-lg) !important;
    border: none !important;
    padding: 1rem 1.25rem !important;
    margin-bottom: 1rem !important;
    position: relative;
    overflow: hidden;
}

.page-header-card::before,
.reg-page-header::before,
.ps-page-header::before {
    content: "";
    position: absolute;
    top: -50%;
    left: -20%;
    width: 60%;
    height: 200%;
    background: rgba(255, 255, 255, 0.08);
    transform: rotate(25deg);
    pointer-events: none;
}

.page-header-card .mud-typography,
.page-header-card .mud-icon,
.reg-page-header .mud-typography,
.reg-page-header .mud-icon,
.ps-page-header .mud-typography,
.ps-page-header .mud-icon {
    color: #fff !important;
    position: relative;
    z-index: 1;
}

/* ─── Alert ──────────────────────────────────────────────────────────────── */
.ps-app .mud-alert {
    border-radius: var(--ps-radius) !important;
    border: 1px solid transparent;
    font-weight: 500;
}

/* ─── دیالوگ ─────────────────────────────────────────────────────────────── */
.mud-dialog .mud-dialog-title {
    background: var(--theme-gradient-primary) !important;
    color: #fff !important;
    padding: 1rem 1.25rem !important;
    font-weight: 700 !important;
}

.mud-dialog .mud-dialog-content {
    padding: 1.25rem !important;
}

.mud-dialog .mud-dialog-actions {
    padding: 0.75rem 1.25rem !important;
    gap: 0.5rem;
}

/* ─── داشبورد ────────────────────────────────────────────────────────────── */
.home-page-wrapper .theme-card-header:not([class*="home-card-header--"]),
.home-page-wrapper .mud-paper.theme-card-header:not([class*="home-card-header--"]) {
    background: var(--theme-gradient-primary) !important;
    border-radius: var(--ps-radius) var(--ps-radius) 0 0 !important;
}

.home-page-wrapper .home-card-content {
    background: var(--ps-surface) !important;
    border: 1px solid var(--ps-border);
    border-top: none;
    border-radius: 0 0 var(--ps-radius) var(--ps-radius);
}

.home-selection-grid .mud-paper {
    border-radius: var(--ps-radius) !important;
}

/* ─── گزارش ──────────────────────────────────────────────────────────────── */
.report-page .mud-table {
    box-shadow: var(--ps-shadow-md) !important;
}

.report-page .rpt-header .page-title,
.report-page .rpt-header .report-title,
.report-page .swr-header.rpt-header .page-title {
    color: #fff !important;
    font-weight: 800 !important;
}

.report-page .page-title:not(.rpt-header-title):not(.swr-header-title),
.report-page .report-title {
    color: var(--theme-primary) !important;
    font-weight: 800 !important;
}

/* ─── Snackbar ───────────────────────────────────────────────────────────── */
.mud-snackbar-content-message {
    font-family: 'IRANSans', sans-serif !important;
    font-weight: 600;
}

/* ─── Tabs ───────────────────────────────────────────────────────────────── */
.ps-app .mud-tabs .mud-tab.mud-tab-active {
    color: var(--theme-primary) !important;
    font-weight: 700 !important;
}

.ps-app .mud-tabs .mud-tabs-slider {
    background: var(--theme-primary) !important;
    height: 3px !important;
}

/* ─── Pagination ─────────────────────────────────────────────────────────── */
.ps-app .mud-table-pagination {
    border-top: 1px solid var(--ps-border);
    background: var(--ps-surface-2) !important;
    border-radius: 0 0 var(--ps-radius) var(--ps-radius);
}

/* ─── اسکرول‌بار زیبا ────────────────────────────────────────────────────── */
.ps-app ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.ps-app ::-webkit-scrollbar-track {
    background: var(--ps-surface-2);
    border-radius: 4px;
}

.ps-app ::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, var(--theme-primary-light), var(--theme-primary));
    border-radius: 4px;
}

/* ─── لودینگ ─────────────────────────────────────────────────────────────── */
#custom-loading {
    background: var(--theme-gradient-primary, linear-gradient(135deg, #1e40af, #3b82f6)) !important;
}

.loader {
    border-top-color: #fff !important;
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.3);
}

/* ─── صفحه ورود ──────────────────────────────────────────────────────────── */
.login-page {
    min-height: 100vh;
    background: linear-gradient(135deg, #0a0f1a 0%, #0f2347 45%, #1e3a8a 100%);
}

.login-page .login-card {
    border-radius: var(--ps-radius-lg) !important;
    box-shadow: var(--ps-shadow-lg) !important;
    border: none !important;
    overflow: hidden;
    backdrop-filter: blur(12px);
}

.login-page .login-submit-btn,
.login-page .login-submit-btn .mud-button-label {
    color: #fff !important;
    font-weight: 700 !important;
}

.login-page .mud-button-filled-primary,
.login-page .login-submit-btn {
    background: var(--theme-gradient-primary) !important;
    border-radius: 12px !important;
    min-height: 48px;
    box-shadow: 0 4px 16px rgba(37, 99, 235, 0.4) !important;
}

.login-page .mud-input-outlined .mud-input-outlined-border {
    border-radius: 10px !important;
}

.login-page .welcome-section {
    background: linear-gradient(165deg, #0f2347 0%, #1e3a8a 50%, #1e40af 100%) !important;
}

/* ─── پیام‌رسانی ─────────────────────────────────────────────────────────── */
.messaging-page .mud-paper,
.messaging-page .mud-card {
    border-radius: var(--ps-radius) !important;
    box-shadow: var(--ps-shadow-sm) !important;
}
