@media print {
    body {
        background-color: #fff;
    }
    
    .no-print {
        display: none !important;
    }
    
    .print-only {
        display: block !important;
    }
    
    .main-content {
        margin-left: 0 !important;
        padding: 0 !important;
    }
    
    .card {
        box-shadow: none !important;
        border: 1px solid #ddd !important;
    }
    
    .card-body {
        padding: 15px !important;
    }
    
    .container-fluid {
        width: 100% !important;
        padding: 0 !important;
    }
}


@media (max-height: 480px) and (orientation: landscape) {
    /* Adjust modal heights */
    .modal-dialog {
        max-height: 90vh;
    }
    
    .modal-body {
        max-height: 60vh;
        overflow-y: auto;
    }
    
    /* Adjust sidebar */
    .vertical-menu {
        height: 100%;
        overflow-y: auto;
    }
    
    /* Adjust main content */
    .main-content {
        padding-bottom: 10px;
    }
    
    /* Adjust footer */
    .footer {
        padding: 10px;
    }
}


@media (max-width: 374.98px) {
    /* Adjust font sizes */
    body {
        font-size: 12px;
    }
    
    h1, .h1 {
        font-size: 1.5rem;
    }
    
    h2, .h2 {
        font-size: 1.25rem;
    }
    
    h3, .h3 {
        font-size: 1.125rem;
    }
    
    h4, .h4 {
        font-size: 1rem;
    }
    
    h5, .h5 {
        font-size: 0.875rem;
    }
    
    h6, .h6 {
        font-size: 0.75rem;
    }
    
    /* Adjust buttons */
    .btn {
        padding: 0.25rem 0.5rem;
        font-size: 0.75rem;
    }
    
    /* Adjust card padding */
    .card-body {
        padding: 0.75rem;
    }
    
    /* Adjust form controls */
    .form-control {
        font-size: 12px;
        height: calc(1.5em + 0.5rem + 2px);
        padding: 0.25rem 0.5rem;
    }
    
    /* Adjust table font size */
    .table th, 
    .table td {
        padding: 0.4rem;
        font-size: 11px;
    }
    
    /* Adjust modal padding */
    .modal-body {
        padding: 0.5rem;
    }
    
    /* Adjust dropdown menu */
    .dropdown-menu {
        min-width: 8rem;
    }
    
    /* Adjust page title */
    .page-title {
        font-size: 14px;
    }
}


@media (max-width: 991.98px) {
    .container-fluid {
        padding-left: 10px;
        padding-right: 10px;
    }
    
    .card {
        margin-bottom: 15px;
    }
    
    .table-responsive {
        border: 0;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    
    /* Improve table display on mobile */
    .table-responsive table {
        width: 100%;
        min-width: 650px;
    }
    
    /* Adjust card headers and footers */
    .card-header, .card-footer {
        padding: 12px 15px;
    }
    
    /* Adjust button groups */
    .btn-group {
        display: flex;
        flex-wrap: wrap;
    }
    
    /* Adjust search box */
    .search-box {
        width: 100%;
        max-width: 250px;
    }
    
    /* Improve sidebar behavior on mobile */
    body[data-sidebar-size="sm"] .vertical-menu #sidebar-menu > ul > li > a i {
        font-size: 1.25rem;
    }
    
    body[data-sidebar-size="sm"] .vertical-menu {
        width: 70px;
    }
    
    body[data-sidebar-size="sm"] .main-content {
        margin-left: 70px;
    }
    
    /* Improve header on mobile */
    .header-item {
        padding: 0 0.75rem;
    }
    
    .navbar-header .dropdown .dropdown-menu {
        left: auto !important;
        right: 0 !important;
    }
    
    /* Improve footer on mobile */
    .footer {
        padding: 15px 10px;
        text-align: center;
    }
    
    /* Improve right sidebar */
    .right-bar {
        width: 280px;
    }
}


@media (max-width: 767.98px) {
    /* Layout adjustments */
    #layout-wrapper {
        margin-top: 0;
    }
    
    .main-content {
        padding: 70px 0 0;
    }
    
    .page-content {
        padding: 20px 10px;
    }
    
    /* Tables */
    .table {
        min-width: 650px;
    }
    
    /* Forms */
    .form-group {
        margin-bottom: 15px;
    }
    
    /* Buttons */
    .btn {
        padding: 0.375rem 0.75rem;
        font-size: 0.875rem;
    }
    
    /* Cards */
    .card-body {
        padding: 15px;
    }
    
    /* Modals */
    .modal-dialog {
        margin: 0.5rem;
    }
    
    /* Improve form layouts */
    .row > [class*="col-"] {
        margin-bottom: 15px;
    }
    
    /* Adjust form controls */
    .form-control, .form-select {
        height: calc(1.5em + 0.75rem + 2px);
        padding: 0.375rem 0.75rem;
        font-size: 0.875rem;
    }
    
    /* Adjust form labels */
    .form-label {
        margin-bottom: 0.25rem;
        font-size: 0.875rem;
    }
    
    /* Adjust button groups in forms */
    .form-group .btn-group {
        width: 100%;
        margin-bottom: 10px;
    }
    
    /* Adjust card titles */
    .card-title {
        font-size: 1.1rem;
        margin-bottom: 0.75rem;
    }
    
    /* Adjust breadcrumb */
    .breadcrumb {
        margin-bottom: 0.75rem;
        padding: 0.5rem 1rem;
    }
    
    /* Adjust page headers */
    .page-title-box {
        padding-bottom: 1rem;
    }
    
    /* Adjust dropdown menus */
    .dropdown-menu {
        min-width: 10rem;
        padding: 0.5rem 0;
    }
}


@media (max-width: 575.98px) {
    /* Header & Navigation */
    .navbar-brand-box {
        padding-left: 0;
    }
    
    .page-title-box {
        padding-bottom: 15px;
    }
    
    .page-title-box .page-title {
        font-size: 16px;
    }
    
    /* Dashboard cards */
    .card-title {
        font-size: 14px;
    }
    
    /* Forms */
    .form-control {
        font-size: 13px;
        height: calc(1.5em + 0.75rem + 2px);
    }
    
    /* Tables */
    .table th, 
    .table td {
        padding: 0.5rem;
        font-size: 12px;
    }
    
    /* Buttons in tables and forms */
    .btn-sm {
        padding: 0.25rem 0.5rem;
        font-size: 0.75rem;
    }
    
    /* Spacing */
    .mt-3, .my-3 {
        margin-top: 0.75rem !important;
    }
    
    .mb-3, .my-3 {
        margin-bottom: 0.75rem !important;
    }
    
    .mt-4, .my-4 {
        margin-top: 1rem !important;
    }
    
    .mb-4, .my-4 {
        margin-bottom: 1rem !important;
    }
    
    /* Improve button display */
    .d-flex {
        flex-wrap: wrap;
    }
    
    .d-flex .btn {
        margin-bottom: 5px;
        margin-right: 5px;
    }
    
    /* Adjust action buttons in tables */
    .action-buttons .btn {
        padding: 0.2rem 0.4rem;
        margin-right: 2px;
    }
    
    /* Adjust modal content */
    .modal-content {
        padding: 0.5rem;
    }
    
    .modal-header {
        padding: 0.5rem 0.75rem;
    }
    
    .modal-body {
        padding: 0.75rem;
    }
    
    .modal-footer {
        padding: 0.5rem;
    }
    
    /* Adjust alerts */
    .alert {
        padding: 0.5rem 0.75rem;
        margin-bottom: 0.75rem;
    }
    
    /* Adjust badges */
    .badge {
        font-size: 70%;
    }
    
    /* Adjust dropdown items */
    .dropdown-item {
        padding: 0.25rem 1rem;
        font-size: 0.875rem;
    }
}


@media (max-width: 767.98px) {
    /* Form layouts for create and edit pages */
    .form-container {
        padding: 10px;
    }
    
    /* Adjust form groups and labels */
    .form-group label {
        margin-bottom: 0.25rem;
        font-size: 0.875rem;
    }
    
    /* Adjust form buttons */
    .form-buttons {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }
    
    .form-buttons .btn {
        margin-bottom: 0.5rem;
        width: 100%;
    }
    
    /* Adjust table action columns */
    .table-action-col {
        min-width: 100px;
    }
    
    /* Adjust filter sections */
    .filter-section {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .filter-section .form-group {
        width: 100%;
        margin-bottom: 0.5rem;
    }
    
    /* Adjust pagination */
    .pagination-container {
        overflow-x: auto;
    }
    
    .pagination {
        flex-wrap: nowrap;
    }
    
    /* Adjust show entries dropdown */
    .dataTables_length {
        text-align: left;
        margin-bottom: 1rem;
    }
    
    /* Adjust search box in datatables */
    .dataTables_filter {
        text-align: left;
        margin-bottom: 1rem;
    }
}

@media (max-width: 767.98px) {
    /* Sidebar adjustments */
    #sidebar-menu ul li a {
        padding: 0.625rem 1rem;
        font-size: 0.875rem;
    }
    
    #sidebar-menu ul li ul.sub-menu li a {
        padding: 0.5rem 1.5rem 0.5rem 2.5rem;
        font-size: 0.8125rem;
    }
    
    .vertical-menu {
        width: 240px;
        z-index: 1001;
    }
    
    /* Topbar adjustments */
    .navbar-header {
        padding: 0 1rem;
    }
    
    .app-search {
        max-width: 180px;
    }
    
    .dropdown-menu-lg {
        width: 300px;
    }
    
    /* Invoice pages */
    .invoice-title {
        font-size: 18px;
    }
    
    .invoice-details {
        flex-direction: column;
    }
    
    .invoice-details .text-end {
        text-align: left !important;
        margin-top: 10px;
    }
    
    /* Transaction pages */
    .transaction-details {
        flex-direction: column;
    }
    
    .transaction-item {
        padding: 10px;
    }
    
    .transaction-item .d-flex {
        flex-direction: column;
    }
    
    .transaction-item .d-flex .flex-grow-1 {
        margin-top: 10px;
    }
    
    /* Product pages */
    .product-img {
        height: 120px;
        width: 120px;
    }
    
    .product-detail {
        padding: 10px;
    }
    
    .product-detail h5 {
        font-size: 16px;
    }
    
    /* User management */
    .user-card {
        margin-bottom: 15px;
    }
    
    .user-detail {
        flex-direction: column;
    }
    
    .user-detail .user-avatar {
        margin-bottom: 10px;
    }
    
    /* Expenses */
    .expense-summary {
        flex-direction: column;
    }
    
    .expense-item {
        padding: 10px;
    }
    
    .expense-category {
        margin-bottom: 10px;
    }
    
    /* Additional components */
    .additional-item {
        margin-bottom: 10px;
    }
    
    /* Packets */
    .packet-details {
        padding: 10px;
    }
    
    .packet-item {
        margin-bottom: 15px;
    }
    
    /* Improve table actions */
    .table-action-buttons {
        display: flex;
        flex-wrap: wrap;
    }
    
    .table-action-buttons .btn {
        margin-bottom: 5px;
        margin-right: 5px;
    }
    
    /* Improve form layouts */
    .form-row {
        margin-right: -5px;
        margin-left: -5px;
    }
    
    .form-row > .col,
    .form-row > [class*="col-"] {
        padding-right: 5px;
        padding-left: 5px;
    }
    
    /* Improve date pickers */
    .datepicker-dropdown {
        width: 280px;
    }
    

    .select2-container {
        width: 100% !important;
    }
}