:root {
    --sidebar-width: 280px;
    --topbar-height: 72px;
    --page-gap: clamp(12px, 1.5vw, 24px);
    --card-radius: 18px;
    --content-max-width: 100%;
    --desktop-min-width: 1366px;
    --font-base: 16px;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    font-size: var(--font-base);
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

body {
    min-width: 320px;
    overflow-x: hidden !important;
}

html,
body,
.app-content,
.content-area-wrapper,
.content-wrapper,
.content-body,
.content-header,
.card,
.card-body,
.modal-content,
.offcanvas,
.table-responsive,
.dataTables_wrapper,
.tab-content,
.tab-pane {
    max-width: 100%;
}

img,
svg,
canvas,
video {
    max-width: 100%;
    height: auto;
}

button,
input,
select,
textarea {
    max-width: 100%;
}

body.vertical-layout .app-content.content,
body.horizontal-layout .app-content.content,
body.horizontal-layout .content-wrapper,
body.horizontal-layout .content-body,
body.vertical-layout .content-wrapper,
body.vertical-layout .content-body,
.bitzone-dashboard-page,
.bz-page-shell,
.bz-page-inner,
.bz-exact-dashboard,
.bz-rt-page {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

body.vertical-layout .app-content.content {
    overflow-x: hidden !important;
}

body.horizontal-layout .app-content.content {
    overflow-x: hidden !important;
}

.bz-page-shell {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.bz-page-inner {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.bz-page-shell {
    display: grid;
    gap: 1rem;
}

.bz-toolbar-card .card-body,
.bz-filter-card .card-body,
.bz-stats-card .card-body {
    padding: 1.25rem;
}

.bz-toolbar-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.bz-filter-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.bz-filter-field {
    min-width: 0;
}

.bz-filter-field .form-control,
.bz-filter-field .form-select,
.bz-filter-field .select2-container {
    width: 100% !important;
    max-width: 100%;
}

.bz-filter-field .form-control,
.bz-filter-field .form-select,
.bz-filter-field .select2-selection {
    min-height: 44px;
}

.bz-range-field {
    display: none;
}

.bz-range-field.is-visible {
    display: block;
}

.bz-table-card,
.bz-table-card .card-body,
.bz-table-card .table-responsive,
.bz-table-card .dataTables_wrapper {
    min-width: 0;
}

.bz-table-card .dataTables_wrapper .row {
    row-gap: 0.75rem;
}

.bz-export-grid {
    display: grid;
    gap: 0.85rem;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.bz-export-grid .full-span {
    grid-column: 1 / -1;
}

.bz-summary-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.container,
.container-sm,
.container-md,
.container-lg,
.container-xl,
.container-xxl {
    width: 100%;
    max-width: 100%;
}

.content-area-wrapper,
.content-wrapper,
.content-body,
.content-header,
.row,
[class*="col-"] {
    min-width: 0;
}

.row,
[class*="col-"],
.card,
.card-body,
.card-header,
.card-footer,
.table-responsive,
.dataTables_wrapper,
.main-menu,
.main-menu-content,
.navigation,
.navigation li,
.navigation li a,
.bz-exact-service-row,
.bz-dashboard-grid,
.bz-overview-row,
.bz-admin-analytics-row,
.bz-admin-stats-row,
.bz-kpi-grid,
.bz-panel,
.bz-service-card,
.bz-heartbeat-card,
.bz-rt-grid,
.bz-rt-toolbar,
.bz-rt-log-wrap {
    min-width: 0;
}

.table-responsive,
.bz-rt-table-scroll,
.bz-table-scroll,
.report-table-shell,
.realtime-log-shell {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
}

.table,
table.dataTable {
    width: 100% !important;
    max-width: 100%;
}

.table th,
.table td,
table.dataTable th,
table.dataTable td {
    word-break: break-word;
    overflow-wrap: anywhere;
    vertical-align: middle;
}

.dataTables_wrapper .row {
    row-gap: 0.75rem;
}

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_paginate {
    max-width: 100%;
}

.dataTables_wrapper .dataTables_filter input,
.dataTables_wrapper .dataTables_length select {
    max-width: 100%;
}

.form-control,
.form-select,
.input-group,
.select2,
.select2-container,
.choices,
.choices__inner,
.btn,
.btn-group,
.dropdown,
.dropdown-menu {
    max-width: 100%;
}

.row.g-0,
.row.g-1,
.row.g-2,
.row.g-3,
.row.g-4,
.row.g-5,
.d-flex,
.btn-toolbar,
.card-header,
.card-footer,
.nav,
.navbar-nav,
.breadcrumb,
.pagination,
.input-group,
.form-inline,
.filters-row,
.toolbar-row {
    min-width: 0;
}

.card-header,
.card-footer,
.nav,
.navbar-nav,
.breadcrumb,
.pagination,
.btn-toolbar,
.filters-row,
.toolbar-row {
    flex-wrap: wrap;
    row-gap: 0.75rem;
}

.nav-tabs,
.nav-pills {
    display: flex;
    flex-wrap: wrap;
    row-gap: 0.65rem;
}

.nav-fill,
.nav-justified {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

.nav-fill .nav-item,
.nav-justified .nav-item {
    flex: 1 1 220px;
    min-width: 0;
}

.nav-fill .nav-link,
.nav-justified .nav-link {
    width: 100%;
}

.nav-tabs .nav-link,
.nav-pills .nav-link,
.breadcrumb-item,
.page-link,
.btn,
.dropdown-item {
    white-space: normal;
    word-break: break-word;
}

.card-header > *,
.card-footer > *,
.nav-item,
.breadcrumb-item,
.page-item {
    min-width: 0;
}

.dashboard-activity-scroll,
.sidebar-content,
.chat-application,
.chat-app-window,
.chat-area,
.kanban-wrapper {
    max-width: 100%;
    min-width: 0;
}

.row > [class*="col-"] > .card,
.row > [class*="col-"] > .table-responsive,
.row > [class*="col-"] > .dataTables_wrapper {
    height: auto;
}

.bz-page-shell .input-group > div.position-relative,
.bz-page-shell .input-group > div[style*="width: 17rem"],
.bz-page-shell .input-group > div[style*="width:17rem"] {
    flex: 1 1 14rem;
    width: auto !important;
    max-width: 100% !important;
    min-width: min(100%, 14rem) !important;
}

.bz-page-shell .input-group .select2-container,
.bz-page-shell .input-group .select2,
.bz-page-shell .input-group .form-select,
.bz-page-shell .input-group .form-control {
    width: 100% !important;
    max-width: 100%;
}

.w-100,
.mw-100 {
    max-width: 100% !important;
}

.modal-backdrop.show {
    z-index: 20000 !important;
}

.modal.show {
    z-index: 20010 !important;
}

.modal.show .modal-dialog {
    position: relative;
    z-index: 20011;
    pointer-events: auto;
}

.modal.show .modal-content,
.modal.show .modal-header,
.modal.show .modal-body,
.modal.show .modal-footer,
.modal.show .btn,
.modal.show .form-control,
.modal.show .form-select {
    pointer-events: auto;
}

.position-relative.bz-select2-open {
    z-index: 2500 !important;
}

.position-relative.bz-select2-open .select2-container,
.position-relative.bz-select2-open .select2-dropdown {
    z-index: 2501 !important;
}

.navigation a,
.menu-title,
.bz-service-title,
.bz-service-subtitle,
.bz-panel-title,
.header-user-copy strong,
.header-user-copy small {
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (max-width: 1366px) {
    html {
        font-size: 15px;
    }

    .card-header,
    .card-footer,
    .btn-toolbar,
    .breadcrumb,
    .pagination {
        align-items: flex-start;
    }
}

@media (max-width: 1199px) {
    .content-area-wrapper {
        display: block;
    }

    .content-area-wrapper .sidebar,
    .content-area-wrapper [class*="sidebarPositionClass"] {
        width: 100%;
        max-width: 100%;
    }
}

@media (max-width: 767px) {
    html {
        font-size: 14px;
    }

    .nav-fill .nav-item,
    .nav-justified .nav-item {
        flex-basis: 100%;
    }

    .bz-toolbar-actions,
    .bz-toolbar-actions .btn,
    .bz-toolbar-actions .btn-group {
        width: 100%;
    }
}
