:root {
    --backend-navy: #17324d;
    --backend-navy-deep: #0e2236;
    --backend-blue: #2f6ea3;
    --backend-saffron: #d4832b;
    --backend-mint: #eaf4f6;
    --backend-surface: #ffffff;
    --backend-surface-soft: #f4f7fa;
    --backend-border: #d7e1ea;
    --backend-text: #1c2d3d;
    --backend-muted: #667b8f;
    --backend-shadow: 0 18px 40px rgba(16, 41, 62, 0.08);
    --backend-radius: 1rem;
}

body.backend-dashboard {
    background:
        radial-gradient(circle at top right, rgba(47, 110, 163, 0.06), transparent 24%),
        linear-gradient(180deg, #f8fbfd 0%, #f2f6f9 100%);
    color: var(--backend-text);
    font-family: 'Roboto', sans-serif;
    font-size: 15.5px;
    line-height: 1.6;
}

body.backend-dashboard #layout-wrapper {
    min-height: 100vh;
}

body.backend-dashboard #page-topbar {
    background: linear-gradient(135deg, var(--backend-navy-deep), var(--backend-navy));
}

body.backend-dashboard .main-content {
    background: transparent;
}

body.backend-dashboard .page-content {
    padding: 1.35rem 0 calc(70px + 1.5rem);
}

body.backend-dashboard .container-fluid {
    width: 100%;
    padding-inline: clamp(0.9rem, 1.8vw, 1.5rem);
}

body.backend-dashboard .navbar-header {
    background: transparent;
    box-shadow: 0 12px 30px rgba(8, 26, 42, 0.15);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    padding-inline: clamp(0.2rem, 1vw, 0.75rem);
}

body.backend-dashboard .navbar-brand-box {
    background: transparent;
    box-shadow: none;
}

body.backend-dashboard .logo-dark,
body.backend-dashboard .logo-light {
    display: flex;
    align-items: center;
    min-height: 70px;
}

body.backend-dashboard .logo-sm,
body.backend-dashboard .logo-lg {
    display: inline-flex;
    align-items: center;
}

body.backend-dashboard .navbar-header .header-item {
    color: rgba(255, 255, 255, 0.92);
}

body.backend-dashboard .navbar-header .header-item:hover,
body.backend-dashboard .navbar-header .header-item:focus {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.08);
}

body.backend-dashboard .header-profile-user {
    border: 2px solid rgba(255, 255, 255, 0.18);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.18);
}

body.backend-dashboard .topnav {
    background:
        linear-gradient(90deg, rgba(23, 50, 77, 0.98), rgba(32, 73, 109, 0.96));
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: 0 16px 28px rgba(10, 28, 45, 0.12);
}

body.backend-dashboard .topnav .container-fluid,
body.backend-dashboard .topnav-menu {
    padding-inline: clamp(0.6rem, 1.6vw, 1.2rem);
    max-width: none;
}

body.backend-dashboard .topnav .navbar-nav .nav-link {
    color: rgba(255, 255, 255, 0.9);
    font-weight: 500;
    font-size: 0.98rem;
    border-radius: 0.85rem;
    margin: 0.2rem 0.15rem;
    padding: 0.85rem 1rem;
}

body.backend-dashboard .topnav .navbar-nav .nav-link:hover,
body.backend-dashboard .topnav .navbar-nav .nav-link:focus,
body.backend-dashboard .topnav .navbar-nav .nav-link.active {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.1);
}

body.backend-dashboard .topnav .dropdown-menu {
    border: 1px solid var(--backend-border);
    border-radius: 1rem;
    box-shadow: var(--backend-shadow);
    padding: 0.55rem;
}

body.backend-dashboard .topnav .dropdown-item {
    border-radius: 0.75rem;
    padding: 0.72rem 0.9rem;
    color: var(--backend-text);
}

body.backend-dashboard .topnav .dropdown-item:hover,
body.backend-dashboard .topnav .dropdown-item:focus {
    background: var(--backend-mint);
    color: var(--backend-navy-deep);
}

body.backend-dashboard .page-title-box,
body.backend-dashboard .breadcrumb,
body.backend-dashboard .breadcrumb-item + .breadcrumb-item::before {
    color: var(--backend-muted);
}

body.backend-dashboard .page-title-box h4,
body.backend-dashboard .card-title,
body.backend-dashboard h4,
body.backend-dashboard h5 {
    color: var(--backend-navy-deep);
    font-weight: 700;
}

body.backend-dashboard .card {
    border: 1px solid rgba(215, 225, 234, 0.95);
    border-radius: var(--backend-radius);
    box-shadow: var(--backend-shadow);
    overflow: hidden;
}

body.backend-dashboard .card-header {
    background:
        linear-gradient(180deg, rgba(244, 247, 250, 0.98), rgba(239, 244, 248, 0.98));
    border-bottom: 1px solid var(--backend-border);
    padding: 0.95rem 1.15rem;
}

body.backend-dashboard .card-body {
    padding: 1.15rem;
}

body.backend-dashboard p,
body.backend-dashboard .text-muted,
body.backend-dashboard small,
body.backend-dashboard .small {
    font-size: 0.97rem;
}

body.backend-dashboard .table {
    --bs-table-bg: transparent;
    --bs-table-color: var(--backend-text);
    margin-bottom: 0;
    font-size: 0.98rem;
}

body.backend-dashboard .table > :not(caption) > * > * {
    padding: 0.9rem 0.8rem;
    border-bottom-color: #e4ebf2;
    vertical-align: middle;
}

body.backend-dashboard .table thead th {
    background: #f6f9fc;
    color: var(--backend-navy-deep);
    font-size: 0.83rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    white-space: nowrap;
}

body.backend-dashboard .table tbody tr:hover {
    background: rgba(47, 110, 163, 0.04);
}

body.backend-dashboard .form-control,
body.backend-dashboard .form-select,
body.backend-dashboard .select2-container .select2-selection--single,
body.backend-dashboard .select2-container .select2-selection--multiple {
    min-height: 3.15rem;
    border-radius: 0.85rem;
    border-color: #cad8e4;
    box-shadow: none;
    font-size: 1rem;
    padding-inline: 0.95rem;
}

body.backend-dashboard .form-control:focus,
body.backend-dashboard .form-select:focus {
    border-color: var(--backend-blue);
    box-shadow: 0 0 0 0.22rem rgba(47, 110, 163, 0.14);
}

body.backend-dashboard .form-label,
body.backend-dashboard label {
    color: var(--backend-navy-deep);
    font-weight: 600;
    margin-bottom: 0.45rem;
    font-size: 0.97rem;
}

body.backend-dashboard input[type="date"],
body.backend-dashboard input[type="datetime-local"],
body.backend-dashboard input[type="month"] {
    position: relative;
    font-weight: 500;
    letter-spacing: 0.01em;
}

body.backend-dashboard input[type="date"]::-webkit-calendar-picker-indicator,
body.backend-dashboard input[type="datetime-local"]::-webkit-calendar-picker-indicator,
body.backend-dashboard input[type="month"]::-webkit-calendar-picker-indicator {
    background-color: rgba(47, 110, 163, 0.12);
    border-radius: 0.45rem;
    padding: 0.35rem;
    cursor: pointer;
}

body.backend-dashboard .btn {
    border-radius: 0.8rem;
    font-weight: 600;
    box-shadow: none;
    font-size: 0.98rem;
    padding: 0.68rem 1rem;
}

body.backend-dashboard .btn-primary {
    background: linear-gradient(135deg, var(--backend-blue), var(--backend-navy));
    border-color: var(--backend-blue);
}

body.backend-dashboard .btn-primary:hover,
body.backend-dashboard .btn-primary:focus {
    background: linear-gradient(135deg, #285d89, var(--backend-navy-deep));
    border-color: #285d89;
}

body.backend-dashboard .btn-secondary {
    background: linear-gradient(135deg, var(--backend-saffron), #b86a1b);
    border-color: var(--backend-saffron);
    color: #fff;
}

body.backend-dashboard .btn-secondary:hover,
body.backend-dashboard .btn-secondary:focus {
    background: linear-gradient(135deg, #c67620, #9f5711);
    border-color: #c67620;
    color: #fff;
}

body.backend-dashboard .btn-info,
body.backend-dashboard .btn-success,
body.backend-dashboard .btn-warning,
body.backend-dashboard .btn-danger {
    box-shadow: none;
}

body.backend-dashboard .badge {
    border-radius: 999px;
    padding: 0.45rem 0.7rem;
    font-weight: 700;
}

body.backend-dashboard .dropdown-menu {
    border: 1px solid var(--backend-border);
    border-radius: 1rem;
    box-shadow: var(--backend-shadow);
}

body.backend-dashboard .modal-content {
    border: 1px solid var(--backend-border);
    border-radius: 1rem;
    overflow: hidden;
}

body.backend-dashboard .modal-header,
body.backend-dashboard .modal-footer {
    border-color: var(--backend-border);
}

body.backend-dashboard .footer {
    background: rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(8px);
    border-top: 1px solid var(--backend-border);
}

body.backend-dashboard .footer .text-sm-end {
    color: var(--backend-muted);
}

body.backend-dashboard .dataTables_wrapper .dataTables_filter input,
body.backend-dashboard .dataTables_wrapper .dataTables_length select {
    border-radius: 0.75rem;
    border: 1px solid #cad8e4;
    padding: 0.45rem 0.75rem;
}

body.backend-dashboard .table-responsive,
body.backend-dashboard .dataTables_wrapper {
    width: 100%;
}

body.backend-dashboard .backend-page-shell > .row:last-child {
    margin-bottom: 0;
}

@media (max-width: 1199.98px) {
    body.backend-dashboard .topnav .navbar-nav .nav-link {
        padding: 0.8rem 0.9rem;
    }
}

@media (max-width: 991.98px) {
    body.backend-dashboard .logo .logo-lg {
        display: none;
    }

    body.backend-dashboard .navbar-header {
        min-height: 68px;
    }

    body.backend-dashboard .page-content {
        padding-top: 1rem;
    }

    body.backend-dashboard .topnav .navbar-nav {
        padding: 0.5rem 0 0.8rem;
    }

    body.backend-dashboard .topnav .navbar-nav .nav-link {
        margin-inline: 0;
        white-space: normal;
        font-size: 1rem;
    }

    body.backend-dashboard .topnav .dropdown-menu {
        box-shadow: none;
        border-radius: 0.85rem;
    }
}

@media (max-width: 767.98px) {
    body.backend-dashboard {
        font-size: 16px;
    }

    body.backend-dashboard .container-fluid {
        padding-inline: 0.75rem;
    }

    body.backend-dashboard .card {
        border-radius: 0.9rem;
    }

    body.backend-dashboard .card-header,
    body.backend-dashboard .card-body {
        padding: 0.95rem;
    }

    body.backend-dashboard .page-content {
        padding-bottom: calc(70px + 1rem);
    }

    body.backend-dashboard .table > :not(caption) > * > * {
        padding: 0.72rem 0.6rem;
        font-size: 0.96rem;
    }

    body.backend-dashboard .btn {
        min-height: 2.9rem;
    }

    body.backend-dashboard .navbar-header .d-flex:last-child .header-item span,
    body.backend-dashboard .navbar-header .d-flex:last-child .header-item .mdi-chevron-down {
        display: none !important;
    }

    body.backend-dashboard .breadcrumb {
        font-size: 0.85rem;
        flex-wrap: wrap;
    }
}

@media (max-width: 575.98px) {
    body.backend-dashboard .page-content {
        padding-top: 0.85rem;
    }

    body.backend-dashboard .navbar-brand-box {
        width: auto;
        padding-inline: 0.35rem;
    }

    body.backend-dashboard .navbar-header .header-item {
        padding-inline: 0.5rem;
    }

    body.backend-dashboard .card-title,
    body.backend-dashboard h4,
    body.backend-dashboard h5 {
        word-break: break-word;
    }

    body.backend-dashboard .topnav .container-fluid {
        padding-inline: 0;
    }

    body.backend-dashboard .navbar-header {
        padding-inline: 0.25rem;
    }
}
