/* Main CSS for ERP4HC */
        body {
            font-family: 'Kanit', sans-serif;
        }

        .left-navbar {
            width: 220px;
            height: 100vh;
            position: fixed;
            top: 50px;
            left: 0;
            background-color: #cfdffc;
            padding-top: 10px;
            transition: all 0.3s ease;
            border-right: 1px solid #b6effb;
            display: flex;
            flex-direction: column;
            justify-content: flex-start;
        }

        .left-navbar .nav-link {
            color: #212529;
            padding: 10px;
        }

        .left-navbar .nav-link:hover {
            background-color: #e9ecef;
        }

        .left-navbar {
            display: flex;
            flex-direction: column;
            justify-content: flex-start;
            /* nav items at top */
        }

        /* Top Navbar (optional) */
        .top-navbar {
            margin-top: 50px;
            padding-top: 5px;
            background-color: #cfdffc;
            transition: all 0.3s ease;
            border-right: 1px solid #b6effb;
            display: flex;
            flex-direction: column;
            justify-content: flex-start;
        }

        .top-navbar .nav-link {
            color: #212529;
            padding: 10px;
        }

        .top-navbar .nav-link:hover {
            background-color: #e9ecef;
        }

        .logo-img {
            padding-left: 5px;
            max-height: 40px;
            opacity: 0.85;
            background-color: transparent;
            border: none;
            box-shadow: none;
            transition: opacity 0.3s ease;
        }

        .logo-img:hover {
            opacity: 1;
        }

        .content-container {
            margin-left: 220px;
            margin-top: 110px;
            padding: 1px;
            flex-grow: 1;
            transition: margin-left 0.3s ease, margin-top 0.3s ease;
        }

        .menu-bar {
            position: fixed;
            top: 55px;
            left: 220px;
            right: 0;
            height: 50px;
            background-color: #ffffff;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
            display: flex;
            align-items: center;
            padding: 0 15px;
            z-index: 10;
            transition: left 0.3s ease, opacity 0.3s ease;
        }

        .menu-bar .nav-link {
            margin-right: 15px;
            color: #333;
            font-size: 16px;
        }

        /* Cards */
        .card {
            margin: 7px !important;
            background-color: #ffffff !important;
            border-radius: 0 !important;
        }
        .card-header {
            margin: 0px !important;
            padding: 3px;
            background-color: #ffffff !important;
        }
        .card-body {
            margin: 0px !important;
            padding: 4px !important;
        }

        /* Layout Utility */
        .fixed-width-btn {margin: 1px; width: 80px; }
        .fixed-width-btn2 { width: 40px; }
        .strong { font-weight: bold; margin-left: 6px !important; }
        .column-left, .column-right { padding: 15px !important; }
        .column-right { background-color: #cfdffc; }
        .container-fluid, .col, .col-12 { padding: 0px !important; }
        .col-md-8, .col-md-7, .col-md-5 { padding: 0px !important; }
        .row-leftright { margin: 0px !important; }
        .table-responsive {padding: 0px !important; }
        .text-end {
            display: flex !important;
            align-items: center !important;
            justify-content: flex-end !important;
            padding: 0 !important;
        }

        .align-items-center {
            display: flex !important;
            align-items: center !important;
            padding: 0 !important;
        }
        
        /* ------------------------------------------ */
        /* ✅ Collapse left-navbar only */
        body.nav-collapsed .left-navbar {
            width: 0;
            padding: 0;
            overflow: hidden;
        }

        body.nav-collapsed .content-container {
            margin-left: 0;
        }

        body.nav-collapsed .menu-bar {
            left: 0;
        }

        /* ------------------------------------------ */
        /* ✅ Collapse menu-bar only */
        body.menu-collapsed .menu-bar {
            opacity: 0;
            pointer-events: none;
        }

        body.menu-collapsed .content-container {
            margin-top: 55px;
        }

        .modal {
            position: fixed; /* or absolute if fixed causes issues */
            z-index: 2147483646 !important;
        }

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

        /* ------------------------------------------ */
        /*  Mobile adjustments */
        @media (max-width: 767px) {
            .left-navbar {
                display: none !important;
            }

            .menu-bar {
                left: 0 !important;
            }

            .content-container {
                margin-left: 0 !important;
                margin-top: 55px !important;
            }
        }

        /* ------------------------------------------ */
        /* Print */
        @media print {
            /* 1. Reset everything */
            body * {
                visibility: hidden;
                margin: 0 !important;
                padding: 0 !important;
            }

            /* 2. Show only the printable area */
            .print-area,
            .print-area * {
                visibility: visible;
            }

            /* 3. Wrapper stays full-width, no extra spacing */
            .print-area {
                position: static;
                width: 100%;
                background: #fff;
                box-sizing: border-box;
            }

            /* 4. Each logical “page” inside the print-area */
            .print-page {
                page-break-after: always;
                width: 100%;
                min-height: 100vh;
                /* full page height */
                padding: 0;
                /* ⬅ remove padding – margin now lives in @page */
                box-sizing: border-box;
            }

            /* 5. Physical sheet setup */
            @page {
                size: A4 portrait;
                /* or 'auto', 'Letter', etc. */
                margin: 12mm 12mm 12mm 12mm;
                /* top/bottom  left/right  */
            }
        }        
