@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root {
    --liwar-primary: #4F46E5;
    --liwar-primary-2: #7C3AED;
    --liwar-blue: #3B82F6;
    --liwar-purple: #8B5CF6;
    --liwar-bg: #F8FAFC;
    --liwar-card: #FFFFFF;
    --liwar-text: #1E293B;
    --liwar-muted: #64748B;
    --liwar-border: #E2E8F0;
    --liwar-success: #22C55E;
    --liwar-warning: #F59E0B;
    --liwar-danger: #EF4444;
    --liwar-gradient: linear-gradient(135deg, #4F46E5, #7C3AED);
    --liwar-gradient-alt: linear-gradient(135deg, #3B82F6, #8B5CF6);
    --liwar-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
    --liwar-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);
}

html,
body {
    background: var(--liwar-bg) !important;
    color: var(--liwar-text);
    font-family: "Inter", "Quicksand", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    letter-spacing: 0;
}

body.sidebar-noneoverflow {
    overflow-x: hidden;
}

a,
button,
.btn,
.dropdown-item,
.form-control,
.custom-select,
.card,
.widget,
.table,
#sidebar .menu a,
.modal-content {
    transition: all .3s ease;
}

.header-container,
.header.navbar,
.liwar-navbar {
    min-height: 72px;
    background: rgba(255, 255, 255, 0.92) !important;
    border-bottom: 1px solid rgba(226, 232, 240, 0.9);
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
    backdrop-filter: blur(16px);
}

.header.navbar .theme-brand {
    min-height: 72px;
    background: var(--liwar-gradient) !important;
    border-radius: 0 0 20px 0;
    box-shadow: 0 16px 32px rgba(79, 70, 229, 0.22);
}

.header.navbar .theme-logo a {
    display: flex;
    align-items: center;
    height: 72px;
    padding: 0 20px;
}

.header.navbar .navbar-logo {
    max-height: 46px;
    object-fit: contain;
}

.liwar-icon-btn,
.liwar-profile-toggle,
.header.navbar .nav-link.user {
    width: 44px;
    height: 44px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    color: var(--liwar-text) !important;
    background: #fff;
    border: 1px solid var(--liwar-border);
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);
}

.liwar-icon-btn:hover,
.liwar-profile-toggle:hover,
.header.navbar .nav-link.user:hover {
    color: #fff !important;
    background: var(--liwar-gradient);
    border-color: transparent;
    transform: translateY(-1px);
}

.header.navbar .dropdown-menu {
    border: 1px solid var(--liwar-border);
    border-radius: 20px;
    box-shadow: var(--liwar-shadow);
    padding: 12px;
    overflow: hidden;
}

.header.navbar .user-profile-section {
    background: linear-gradient(135deg, rgba(79, 70, 229, .10), rgba(124, 58, 237, .08));
    border-radius: 16px;
    padding: 16px;
    margin-bottom: 8px;
}

.header.navbar .user-profile-section h5 {
    color: var(--liwar-text);
    font-weight: 800;
    margin-bottom: 4px;
}

.header.navbar .user-profile-section p {
    color: var(--liwar-muted);
    font-size: 12px;
}

.header.navbar .dropdown-item {
    padding: 0;
}

.header.navbar .dropdown-item a {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    padding: 10px 12px;
    border-radius: 14px;
    color: var(--liwar-text);
    font-weight: 600;
}

.header.navbar .dropdown-item a:hover {
    background: #F1F5F9;
    color: var(--liwar-primary);
}

.main-container {
    background: var(--liwar-bg) !important;
}

#content.main-content {
    background: radial-gradient(circle at top left, rgba(79, 70, 229, 0.08), transparent 32rem), var(--liwar-bg) !important;
}

.layout-px-spacing {
    padding: 28px 28px 0 !important;
}

.layout-top-spacing {
    margin-top: 24px;
}

.sidebar-wrapper {
    background: #fff !important;
    border-right: 1px solid var(--liwar-border);
    box-shadow: 18px 0 42px rgba(15, 23, 42, 0.05);
}

#sidebar {
    background: #fff !important;
}

#sidebar .profile-info {
    background: var(--liwar-gradient) !important;
    border-radius: 0 0 28px 0;
    padding-bottom: 22px;
    overflow: hidden;
}

#sidebar .profile-info .user-cover-image {
    background: transparent !important;
}

#sidebar .user-info {
    padding-top: 16px;
}

#sidebar .user-info img {
    width: 58px;
    height: 58px;
    object-fit: contain;
    border-radius: 18px;
    background: rgba(255, 255, 255, .14);
    padding: 8px;
    box-shadow: none;
}

#sidebar .user-info h6 {
    color: #fff;
    font-size: 12px;
    line-height: 1.45;
    font-weight: 800;
    letter-spacing: .02em;
}

#sidebar .menu-categories {
    padding: 14px 14px 28px;
}

#sidebar .menu > a {
    border-radius: 16px;
    margin: 3px 0;
    color: var(--liwar-muted) !important;
    font-weight: 700;
}

#sidebar .menu > a > div {
    display: flex;
    align-items: center;
    gap: 12px;
}

#sidebar .menu svg {
    width: 19px;
    height: 19px;
    color: currentColor;
    flex: 0 0 auto;
}

#sidebar .menu span {
    font-size: 13px;
    letter-spacing: 0;
}

#sidebar .menu > a:hover {
    background: #F1F5F9 !important;
    color: var(--liwar-primary) !important;
    transform: translateX(2px);
}

#sidebar .menu.active > a,
#sidebar .menu > a[aria-expanded="true"] {
    background: var(--liwar-gradient) !important;
    color: #fff !important;
    box-shadow: 0 12px 24px rgba(79, 70, 229, .24);
}

#sidebar .submenu {
    background: transparent !important;
    padding: 5px 0 8px 18px;
}

#sidebar .submenu li a {
    border-radius: 12px;
    color: var(--liwar-muted) !important;
    font-weight: 600;
}

#sidebar .submenu li a:hover,
#sidebar .submenu li.active a {
    background: #EEF2FF !important;
    color: var(--liwar-primary) !important;
}

#sidebar .menu-heading {
    margin: 22px 0 8px;
}

#sidebar .menu-heading .heading {
    color: #94A3B8 !important;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
}

.card,
.widget,
.widget-chart-one,
.widget-four,
.widget-five,
.widget-table-one,
.widget-table-two,
.widget-table-three,
.statbox,
.box,
.modal-content {
    background: var(--liwar-card) !important;
    border: 1px solid rgba(226, 232, 240, .85) !important;
    border-radius: 24px !important;
    box-shadow: var(--liwar-shadow-sm) !important;
}

.card:hover,
.widget:hover,
.statbox:hover {
    box-shadow: var(--liwar-shadow) !important;
}

.card-header,
.modal-header,
.widget-heading {
    background: transparent !important;
    border-bottom: 1px solid var(--liwar-border) !important;
    padding: 20px 24px !important;
}

.card-body,
.widget-content,
.modal-body {
    padding: 24px !important;
}

.card-title,
.widget-heading h5,
h1, h2, h3, h4, h5, h6 {
    color: var(--liwar-text);
    font-weight: 800;
    letter-spacing: 0;
}

p,
.text-muted,
label,
.table td {
    color: var(--liwar-muted);
}

.btn {
    border-radius: 999px !important;
    font-weight: 700;
    letter-spacing: 0;
    padding: .58rem 1rem;
    border-width: 1px;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.06);
}

.btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.1);
}

.btn-primary,
.btn-info,
.btn-danger,
.btn-secondary {
    border-color: transparent !important;
}

.btn-primary,
.btn-info {
    background: var(--liwar-gradient) !important;
}

.btn-success {
    background: var(--liwar-success) !important;
    border-color: var(--liwar-success) !important;
}

.btn-warning {
    background: var(--liwar-warning) !important;
    border-color: var(--liwar-warning) !important;
    color: #fff !important;
}

.btn-danger {
    background: var(--liwar-danger) !important;
}

.btn-outline-primary {
    color: var(--liwar-primary) !important;
    border-color: rgba(79, 70, 229, .35) !important;
}

.btn-outline-primary:hover {
    color: #fff !important;
    background: var(--liwar-gradient) !important;
}

.form-control,
.custom-select,
select.form-control,
textarea.form-control,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
    min-height: 44px;
    border: 1px solid var(--liwar-border) !important;
    border-radius: 14px !important;
    background: #fff !important;
    color: var(--liwar-text) !important;
    box-shadow: none !important;
}

.form-control:focus,
.custom-select:focus,
.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container--default .select2-selection--single:focus {
    border-color: rgba(79, 70, 229, .7) !important;
    box-shadow: 0 0 0 4px rgba(79, 70, 229, .12) !important;
}

label {
    font-weight: 700;
    margin-bottom: 8px;
}

.table-responsive,
.dataTables_wrapper,
.table-container {
    border-radius: 20px;
}

.table {
    color: var(--liwar-text);
    border-collapse: separate !important;
    border-spacing: 0;
}

.table thead th {
    background: #F1F5F9 !important;
    color: var(--liwar-text) !important;
    border-bottom: 1px solid var(--liwar-border) !important;
    font-weight: 800;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.table td,
.table th {
    border-color: var(--liwar-border) !important;
    vertical-align: middle !important;
}

.table-hover tbody tr:hover,
.table tbody tr:hover {
    background: #F8FAFC !important;
}

.badge {
    border-radius: 999px;
    padding: .42rem .68rem;
    font-weight: 800;
}

.badge-success,
.bg-success {
    background: rgba(34, 197, 94, .12) !important;
    color: #15803D !important;
}

.badge-warning,
.bg-warning {
    background: rgba(245, 158, 11, .14) !important;
    color: #B45309 !important;
}

.badge-danger,
.bg-danger {
    background: rgba(239, 68, 68, .12) !important;
    color: #B91C1C !important;
}

.badge-primary,
.bg-primary {
    background: rgba(79, 70, 229, .12) !important;
    color: var(--liwar-primary) !important;
}

.alert {
    border: 1px solid transparent !important;
    border-radius: 22px !important;
    box-shadow: var(--liwar-shadow-sm);
}

.alert-danger {
    background: linear-gradient(135deg, rgba(239, 68, 68, .10), rgba(124, 58, 237, .08)) !important;
    border-color: rgba(239, 68, 68, .16) !important;
    color: var(--liwar-text) !important;
}

.dropdown-menu {
    border: 1px solid var(--liwar-border);
    border-radius: 18px;
    box-shadow: var(--liwar-shadow);
}

.dropdown-item {
    border-radius: 12px;
    color: var(--liwar-text);
    font-weight: 600;
}

.dropdown-item:hover {
    background: #EEF2FF;
    color: var(--liwar-primary);
}

.modal-content {
    overflow: hidden;
}

.modal-footer {
    border-top: 1px solid var(--liwar-border);
    padding: 18px 24px;
}

.pagination .page-link {
    border-radius: 12px !important;
    margin: 0 3px;
    color: var(--liwar-primary);
    border-color: var(--liwar-border);
}

.pagination .active .page-link,
.page-item.active .page-link {
    background: var(--liwar-gradient) !important;
    border-color: transparent !important;
}

#load_screen {
    background: rgba(248, 250, 252, .94) !important;
}

#load_screen .spinner-grow {
    background: var(--liwar-gradient) !important;
}

.fadeInUp,
.layout-px-spacing > *,
.main-content .row {
    animation-duration: .35s !important;
}

@media (max-width: 991.98px) {
    .layout-px-spacing {
        padding: 20px 16px 0 !important;
    }

    .header.navbar .theme-brand {
        border-radius: 0 0 18px 0;
    }

    .card-body,
    .widget-content,
    .modal-body {
        padding: 18px !important;
    }
}

@media (max-width: 767.98px) {
    .header-container,
    .header.navbar,
    .liwar-navbar {
        min-height: 64px;
    }

    .header.navbar .theme-logo a {
        height: 64px;
        padding: 0 14px;
    }

    .liwar-icon-btn,
    .liwar-profile-toggle,
    .header.navbar .nav-link.user {
        width: 40px;
        height: 40px;
        border-radius: 14px;
    }

    .table-responsive {
        border: 1px solid var(--liwar-border);
        box-shadow: var(--liwar-shadow-sm);
    }
}

html {
    color-scheme: light;
}

.card,
.card-header,
.card-body,
.card-footer,
.widget,
.widget-header,
.widget-heading,
.widget-content,
.widget-content-area,
.statbox,
.box,
.table-responsive,
.dataTables_wrapper,
.modal-content,
.modal-header,
.modal-body,
.modal-footer,
[class*="component-card_"] {
    background: #fff !important;
    background-color: #fff !important;
}

.card::before,
.card::after,
.widget::before,
.widget::after,
.statbox::before,
.statbox::after,
[class*="component-card_"]::before,
[class*="component-card_"]::after {
    background: transparent !important;
}
