/**
 * Compact dashboard density.
 * Loaded last so it beats Hope UI / styles.css padding.
 * Scoped to .page-container so login stays untouched.
 */

.page-container {
    padding-left: 280px;
}

.page-container.sbar_collapsed {
    padding-left: 0;
}

.page-container .main-content-inner {
    padding: 0 12px 12px;
}

.page-container .header-area {
    padding: 2px 12px;
    margin: 0 0 4px;
}

.page-container .nav-btn {
    margin: 6px 12px 0 0;
}

.page-container .notification-area li {
    margin-left: 12px;
}

.page-container .notification-area li > i {
    font-size: 18px;
}

.page-container .user-details .fs-6 {
    font-size: 0.8125rem !important;
}

.page-container .avatar.avatar-40 {
    width: 32px;
    height: 32px;
}

/* Sidebar */

.page-container .sidebar-header {
    padding: 8px 0 !important;
}

.page-container .sidebar-header #logo {
    width: 36px !important;
    height: 36px !important;
    margin-left: 16px !important;
    margin-right: 8px !important;
}

.page-container .sidebar-header h5 {
    font-size: 0.95rem;
    font-weight: 700;
}

.page-container .metismenu li a {
    padding: 6px 10px !important;
    margin: 2px 10px;
    font-size: 13px;
}

.page-container .metismenu li a svg {
    font-size: 14px;
    padding: 5px;
}

.page-container .font-weight-bold.px-3.mt-3.mb-0 {
    padding: 8px 16px !important;
    margin-top: 8px !important;
    margin-bottom: 2px !important;
    font-size: 11px !important;
    letter-spacing: 0.04em;
}

/* Cards / page titles */

.page-container .card {
    margin-bottom: 0.75rem;
    border-radius: 8px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
}

.page-container .card:hover {
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

.page-container .card-body {
    padding: 0.75rem 1rem;
}

.page-container .card-header,
.page-container .card .card-header {
    padding: 0.75rem 1rem !important;
    border-radius: 8px 8px 0 0 !important;
}

.page-container .card-footer {
    padding: 0.6rem 1rem;
}

.page-container .container-fluid > .d-flex.justify-content-between {
    margin-bottom: 0.5rem;
    padding-top: 2px;
}

.page-container h4,
.page-container .h4,
.page-container .card-title {
    font-size: 1.125rem;
    line-height: 1.3;
    font-weight: 700;
}

.page-container .main-content-inner h1,
.page-container .container-fluid > .d-flex h1,
.page-container h1 {
    font-size: 1.35rem;
    line-height: 1.25;
    font-weight: 700;
}

.page-container .main-content-inner h2,
.page-container h2 {
    font-size: 1.2rem;
    line-height: 1.3;
}

.page-container .main-content-inner h3:not(.counter),
.page-container h3:not(.counter) {
    font-size: 1.1rem;
    line-height: 1.3;
}

.page-container .subtitle,
.page-container .card-header p,
.page-container .card-header .subtitle {
    font-size: 13px;
    line-height: 1.35;
    margin: 2px 0 0;
}

.page-container .card-header h4.mb-0 + p,
.page-container .card-header h4 + .subtitle {
    margin-bottom: 0;
}

/* Tables — Hope UI uses .table > :not(caption) > * > * (1rem 1.5rem) */

.page-container .table {
    margin-bottom: 0;
}

.page-container .table > :not(caption) > * > *,
.page-container .table td,
.page-container .table th,
.page-container .table thead tr th,
.page-container .table tbody tr td,
.page-container table.dataTable thead > tr > th,
.page-container table.dataTable thead > tr > td,
.page-container table.dataTable tbody > tr > td,
.page-container table.dataTable.table.table-striped > tbody > tr > * {
    padding: 0.4rem 0.7rem !important;
    font-size: 13px !important;
    vertical-align: middle;
}

.page-container .table thead tr th,
.page-container table.dataTable thead > tr > th {
    font-size: 11px !important;
    font-weight: 600;
    letter-spacing: 0.04em;
    color: #6b7280;
}

.page-container table.dataTable thead > tr > th.dt-orderable-asc,
.page-container table.dataTable thead > tr > th.dt-orderable-desc,
.page-container table.dataTable thead > tr > th.dt-ordering-asc,
.page-container table.dataTable thead > tr > th.dt-ordering-desc {
    padding-right: 1.35rem !important;
}

.page-container .table.table-sm > :not(caption) > * > * {
    padding: 0.3rem 0.5rem !important;
}

.page-container .dt-container .row,
.page-container .dataTables_wrapper .row {
    --bs-gutter-x: 0.5rem;
    margin-left: 0;
    margin-right: 0;
}

.page-container .dt-length label,
.page-container .dt-search label,
.page-container .dataTables_length label,
.page-container .dataTables_filter label {
    font-size: 12px;
    margin: 0;
    color: #6b7280;
}

.page-container .badge {
    font-size: 11px;
    padding: 0.2em 0.5em;
    font-weight: 600;
}

/* Controls */

.page-container .btn {
    padding: 0.3rem 0.75rem;
    font-size: 13px;
    line-height: 1.4;
    border-radius: 6px;
}

.page-container .btn-sm,
.page-container .btn-group-sm > .btn {
    padding: 0.2rem 0.5rem;
    font-size: 12px;
}

.page-container .btn-lg,
.page-container .btn-group-lg > .btn {
    padding: 0.4rem 0.9rem;
    font-size: 0.95rem;
}

.page-container .form-control,
.page-container .form-select {
    padding: 0.3rem 0.65rem;
    font-size: 13px;
    line-height: 1.4;
    border-radius: 6px;
}

.page-container input.form-control:not([type="file"]):not([type="hidden"]),
.page-container select.form-control,
.page-container .form-select {
    min-height: 32px;
}

.page-container .form-label {
    font-size: 13px;
    margin-bottom: 0.25rem;
}

.page-container .mb-3 {
    margin-bottom: 0.75rem !important;
}

.page-container .form-group {
    margin-bottom: 0.75rem;
}

/* DataTables 1.x + 2.x */

.page-container div.dt-container,
.page-container .dataTables_wrapper {
    font-size: 13px;
}

.page-container div.dt-layout-row,
.page-container .dataTables_wrapper > .row {
    margin-left: 0;
    margin-right: 0;
    padding: 0;
    align-items: center;
}

.page-container div.dt-layout-row + div.dt-layout-row,
.page-container .dataTables_wrapper .row {
    margin-top: 0.35rem;
}

.page-container .dataTables_length,
.page-container .dataTables_filter,
.page-container .dataTables_info,
.page-container .dataTables_paginate,
.page-container div.dt-length,
.page-container div.dt-search,
.page-container div.dt-info,
.page-container div.dt-paging {
    padding: 0;
    margin: 0;
}

.page-container .dataTables_filter input,
.page-container div.dt-search input,
.page-container #users-table_filter input {
    padding: 4px 8px;
    height: 32px;
    width: auto;
    max-width: 220px;
    font-size: 13px;
    margin-left: 6px;
}

.page-container .dataTables_length select,
.page-container div.dt-length select {
    padding: 2px 8px;
    height: 32px;
    font-size: 13px;
}

.page-container .dataTables_info,
.page-container div.dt-info {
    padding-top: 4px;
    font-size: 12px;
}

.page-container .pagination {
    margin: 4px 0;
}

.page-container .page-link {
    padding: 0.25rem 0.5rem;
    font-size: 13px;
}

.page-container .empty-state {
    padding: 16px 8px;
}

.page-container .empty-state p {
    font-size: 14px;
    line-height: 1.4;
}

.page-container #lottieEmpty {
    width: 140px !important;
    max-width: 140px;
    margin: 0 auto;
}

/* Modals / alerts / menus */

.page-container .modal-header,
.page-container .modal-body,
.page-container .modal-footer {
    padding: 0.75rem 1rem;
}

.page-container .alert {
    padding: 0.5rem 0.75rem;
    font-size: 13px;
    margin-bottom: 0.75rem;
}

.page-container .dropdown-item {
    padding: 0.35rem 0.75rem;
    font-size: 13px;
}

.page-container .dropdown-header {
    padding: 0.5rem 0.75rem;
}

.page-container .footer-area {
    padding: 10px 0;
}

/* Home KPI row */

.page-container .home-dashboard .card-body {
    padding: 0.75rem 1rem;
}

.page-container .home-dashboard .counter {
    font-size: 1.35rem;
    line-height: 1.2;
}

.page-container .tab-content {
    padding: 12px;
}

.page-container .chip {
    height: 28px;
}

@media (max-width: 1364px) {
    .page-container {
        padding-left: 0;
    }
}
