/* Peak Brew professional safe theme - CSS only, no PHP logic changes */
:root{
  --pb-dark:#082f36;
  --pb-dark-2:#0b4b4c;
  --pb-teal:#0f8f7b;
  --pb-teal-2:#14b89e;
  --pb-soft:#eaf6f3;
  --pb-card:#ffffff;
  --pb-text:#07253d;
  --pb-muted:#6c7b8a;
  --pb-line:#dbe8ef;
  --pb-danger:#d94b5f;
  --pb-shadow:0 20px 50px rgba(9,47,54,.12);
}
html,body{min-height:100%;}
body.body,
body{font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--pb-text);background:linear-gradient(135deg,#e5f3ef 0%,#f7fbfa 55%,#dff4ef 100%) fixed;}
a{color:#087d71;} a:hover{color:#045d55;text-decoration:none;}
#wrap{background:transparent!important;min-height:100vh;}
.wrapper{background:transparent!important;}
.bg-container,.inner.bg-light,.inner.lter{background:transparent!important;}
#content{background:transparent!important;padding:24px 24px 42px 24px;min-height:calc(100vh - 70px);}
#content .outer{max-width:100%;margin:0 auto;}
#content .row{margin-left:-10px;margin-right:-10px;}
#content [class*="col-"]{padding-left:10px;padding-right:10px;}
/* Top bar */
#top .navbar{min-height:70px;background:linear-gradient(90deg,var(--pb-dark) 0%,#075f5c 52%,var(--pb-teal) 100%)!important;border:0;box-shadow:0 12px 32px rgba(8,47,54,.18);}
#top .container-fluid{display:flex;align-items:center;min-height:70px;width:100%;}
#top .navbar-brand{height:auto!important;display:flex!important;align-items:center;gap:12px;padding:0!important;margin:0 18px 0 0!important;color:#fff!important;}
#top .navbar-brand img{max-height:44px!important;width:auto;border-radius:12px;object-fit:contain;background:#fff;padding:4px;box-shadow:0 8px 18px rgba(0,0,0,.18);}
#top .menu{display:flex;align-items:center;}
#top #menu-toggle,.toggle-left{display:inline-flex!important;align-items:center;justify-content:center;width:42px;height:42px;border-radius:14px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.22);color:#fff;cursor:pointer;}
#top #menu-toggle i,.toggle-left i{font-size:18px;color:#fff!important;}
#top .topnav{margin-left:auto!important;display:flex;align-items:center;gap:8px;float:none!important;}
#top .topnav .btn,#top .topnav a.btn{border-radius:999px!important;border:1px solid rgba(255,255,255,.25)!important;background:rgba(255,255,255,.12)!important;color:#fff!important;padding:10px 16px!important;font-weight:800!important;box-shadow:none!important;margin:0 3px!important;text-transform:none!important;}
#top .topnav .btn:hover{background:rgba(255,255,255,.22)!important;transform:none!important;}
/* Sidebar */
#left{background:linear-gradient(180deg,#08343d 0%,#0b5358 50%,#08313b 100%)!important;box-shadow:12px 0 35px rgba(8,47,54,.16);border-right:1px solid rgba(255,255,255,.1);}
#left:before{content:"Peak Brew";display:block;margin:18px 14px 8px 14px;padding:15px 16px;border-radius:18px;background:rgba(255,255,255,.08);color:#fff;font-size:18px;font-weight:900;letter-spacing:.2px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
#left:after{content:"Professional control menu";display:block;margin:-4px 14px 12px 14px;color:#b8dad5;font-size:12px;font-weight:700;}
#left ul,#left li{list-style:none;margin:0;padding:0;}
#left #menu{background:transparent!important;padding:8px 10px 22px 10px;}
#left #menu>li{margin:6px 0;border-radius:14px;overflow:hidden;}
#left #menu>li>a{display:flex;align-items:center;gap:8px;color:#e7fffb!important;padding:13px 15px;border-radius:14px;font-size:14px;font-weight:800;transition:.18s ease;background:transparent;}
#left #menu>li>a i{width:22px;height:22px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);color:#dbfffa!important;font-size:13px;}
#left #menu>li:hover>a,#left #menu>li.active>a{background:linear-gradient(135deg,rgba(20,184,158,.95),rgba(15,143,123,.95))!important;color:#fff!important;box-shadow:0 12px 24px rgba(20,184,158,.22);}
#left #menu>li>ul{background:rgba(0,0,0,.13);border-radius:13px;margin:0 0 8px 0;padding:8px;}
#left #menu>li>ul>li>a{display:flex;align-items:center;color:#d6f4ef!important;padding:10px 12px 10px 20px;border-radius:10px;font-size:13px;font-weight:700;}
#left #menu>li>ul>li>a:hover{background:rgba(255,255,255,.11)!important;color:#fff!important;}
#left .arrow{margin-left:auto;}
/* Page header */
.head{background:transparent!important;border:0!important;margin:0 0 18px 0!important;padding:0!important;}
.head .main-bar{background:linear-gradient(120deg,var(--pb-dark) 0%,#0b5f5c 52%,var(--pb-teal) 100%);border-radius:22px;padding:24px 28px!important;margin:0!important;box-shadow:var(--pb-shadow);align-items:center;position:relative;overflow:hidden;}
.head .main-bar:before,.head .main-bar:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.12);pointer-events:none;}
.head .main-bar:before{width:190px;height:190px;right:-55px;top:-70px;}.head .main-bar:after{width:140px;height:140px;right:140px;bottom:-85px;}
.head h4.nav_top_align{color:#fff!important;font-size:25px;font-weight:900;margin:0!important;padding:0!important;line-height:1.25;position:relative;z-index:1;}
.head .text-danger,.head .text-success{display:inline-block;background:#fff;border-radius:999px;padding:7px 12px;margin-left:8px;font-size:12px;font-weight:800;}
.head form{position:relative;z-index:1;}
.head .form-control{height:42px;border-radius:14px;border:1px solid rgba(255,255,255,.35);box-shadow:none;background:rgba(255,255,255,.95);font-weight:800;color:var(--pb-text);}
.head .btn{border-radius:999px!important;padding:10px 18px!important;font-weight:900!important;border:0!important;}
/* Cards */
.card{border:0!important;border-radius:22px!important;background:var(--pb-card)!important;box-shadow:var(--pb-shadow)!important;overflow:hidden;margin-bottom:22px;}
.card:hover{box-shadow:var(--pb-shadow)!important;}
.card-header,.card-header.bg-white{background:linear-gradient(180deg,#fff,#f8fffd)!important;border-bottom:1px solid var(--pb-line)!important;color:#08343d!important;font-weight:900!important;font-size:16px;padding:17px 20px!important;}
.card-block{padding:20px!important;}
.modal-content{border:0;border-radius:22px;overflow:hidden;box-shadow:0 28px 70px rgba(8,47,54,.25);}
.modal-header{background:linear-gradient(120deg,var(--pb-dark),var(--pb-teal))!important;color:#fff!important;border:0;}
.modal-title,.modal-header h4{color:#fff!important;font-weight:900;}
.modal-body{padding:20px!important;}.modal-footer{border-top:1px solid var(--pb-line);padding:16px 20px;}
/* Forms */
.input_field_sections{margin-top:12px!important;}
h5,label,.form-control-label{font-weight:900!important;color:#073044!important;font-size:12px!important;text-transform:uppercase;letter-spacing:.35px;margin-bottom:8px!important;}
.label_desc{font-size:11px!important;color:#7d91a1!important;text-transform:none;letter-spacing:0;}
.form-control,input[type="text"],input[type="number"],input[type="date"],input[type="email"],input[type="password"],select,textarea{border:1px solid #cddde7!important;border-radius:14px!important;background:#fff!important;color:var(--pb-text)!important;box-shadow:0 4px 12px rgba(7,37,61,.04)!important;min-height:42px;font-weight:700;}
.form-control:focus,input:focus,select:focus,textarea:focus{border-color:var(--pb-teal)!important;box-shadow:0 0 0 4px rgba(20,184,158,.15)!important;outline:0!important;}
textarea.form-control{min-height:110px;}
.chosen-container{width:100%!important;}.chosen-container-single .chosen-single{height:42px!important;line-height:40px!important;border:1px solid #cddde7!important;border-radius:14px!important;background:#fff!important;box-shadow:0 4px 12px rgba(7,37,61,.04)!important;font-weight:800;color:var(--pb-text)!important;}.chosen-container-single .chosen-single div{top:8px!important;}
/* Buttons */
.btn,.button,input[type="submit"],button{border-radius:999px!important;font-weight:900!important;letter-spacing:.1px;border:0!important;box-shadow:0 12px 26px rgba(15,143,123,.18)!important;transition:.15s ease!important;text-transform:none!important;}
.btn:hover,.button:hover,input[type="submit"]:hover,button:hover{transform:translateY(-1px);box-shadow:0 16px 32px rgba(15,143,123,.22)!important;}
.btn-success,.btn-primary,.login_button,input[type="submit"].btn-primary{background:linear-gradient(135deg,var(--pb-teal),#087d71)!important;color:#fff!important;}
.btn-warning{background:linear-gradient(135deg,#f7b84b,#f39c12)!important;color:#fff!important;}
.btn-danger,.button-delete{background:linear-gradient(135deg,#e4586d,#c9344c)!important;color:#fff!important;}
.btn-default{background:#f4faf8!important;color:#0b5552!important;border:1px solid var(--pb-line)!important;}
/* Tables */
.data_tables{width:100%;}.table-responsive,.pb-table-scroll{width:100%;overflow:auto!important;border-radius:18px;border:1px solid var(--pb-line);background:#fff;}
table.table{width:100%!important;margin-bottom:0!important;background:#fff;border-collapse:separate!important;border-spacing:0!important;}
.table thead th{background:linear-gradient(135deg,#0b5d58,#0f8478)!important;color:#fff!important;border:0!important;padding:14px 13px!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase;letter-spacing:.35px;white-space:nowrap;position:sticky;top:0;z-index:2;}
.table tbody td{border-color:#e4edf2!important;padding:13px!important;vertical-align:middle!important;font-weight:700;color:#0b2b44;background:#fff;}
.table tbody tr:nth-child(even) td{background:#f8fbfb;}.table tbody tr:hover td{background:#eefaf7!important;}
.table tfoot th,.table tfoot td{background:#0f776e!important;color:#fff!important;font-weight:900!important;border:0!important;}
.dataTables_wrapper{padding:0!important;}.dataTables_length,.dataTables_filter{margin:0 0 14px 0;font-weight:900;color:#073044;}.dataTables_filter input{margin-left:8px;min-width:220px;}.dataTables_info{font-weight:800;color:#657889;margin-top:12px;}.dataTables_paginate{margin-top:12px;}.dataTables_paginate .paginate_button,.pagination .page-link{border-radius:10px!important;border:1px solid var(--pb-line)!important;margin:0 3px!important;background:#fff!important;color:#0b6d64!important;font-weight:900!important;}.dataTables_paginate .paginate_button.current,.pagination .active .page-link{background:var(--pb-teal)!important;color:#fff!important;}
/* Login page */
body:not(.body){background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.16),transparent 26%),linear-gradient(135deg,#062e35 0%,#087c73 55%,#14b89e 100%) fixed!important;min-height:100vh;}
.login_top_bottom{margin-top:0!important;padding-top:8vh!important;}
.login_logo{max-width:460px;margin:0 auto!important;border-radius:24px 24px 0 0!important;background:linear-gradient(135deg,var(--pb-dark),var(--pb-teal))!important;padding:20px 24px!important;box-shadow:0 22px 50px rgba(8,47,54,.25);}
.login_logo h3{padding:0!important;margin:0!important;font-size:28px!important;line-height:1.1;font-weight:900!important;}
.login_content{max-width:460px;margin:0 auto!important;border-radius:0 0 24px 24px!important;padding:28px!important;box-shadow:0 24px 60px rgba(8,47,54,.25);}
.login_content .form-group{margin-bottom:18px;}.login_content label{display:block;color:#073044!important;}
.login_content .input-group{display:flex!important;width:100%!important;align-items:stretch;}
.login_content .input-group-addon{width:48px!important;min-width:48px!important;display:flex!important;align-items:center;justify-content:center;border:1px solid #cddde7!important;border-right:0!important;border-radius:14px 0 0 14px!important;background:#effaf7!important;}
.login_content .input-group .form-control{border-radius:0 14px 14px 0!important;width:100%!important;height:46px!important;}
.login_button{height:48px!important;border-radius:14px!important;font-size:15px!important;margin-top:8px;}
.login_content p{margin:16px 0 0 0;}.login_content p a{font-weight:800;color:#0b7e73!important;}
/* Utility */
.alert,.pnotify{border-radius:16px!important;}.text-right{text-align:right!important;}.small,small{color:#667f8c;font-weight:800;}
@media (min-width:1200px){#content{padding-left:30px;padding-right:30px}.card-block{padding:22px!important}}
@media (max-width:991px){#content{padding:18px 14px 32px}.head .main-bar{padding:20px!important}.head h4.nav_top_align{font-size:22px}.topnav .btn-group{display:none!important}.card-block{padding:16px!important}.dataTables_filter input{min-width:0;width:100%!important;margin:8px 0 0 0!important}.dataTables_length,.dataTables_filter{float:none!important;text-align:left!important;width:100%;}.table-responsive,.pb-table-scroll{max-height:72vh;}}
@media (max-width:575px){#content{padding:14px 10px 24px}.head .main-bar{border-radius:18px}.card{border-radius:18px!important}.login_top_bottom{padding-top:4vh!important}.login_logo,.login_content{max-width:calc(100vw - 24px)!important}.login_logo h3{font-size:24px!important}.table thead th,.table tbody td{padding:11px 10px!important;font-size:12px!important}}

/* Sidebar single-color fix: remove old red/blue submenu colors */
#left,
#left.pb-sidebar{
    background: linear-gradient(180deg,#073b3f 0%,#075057 55%,#07363f 100%) !important;
}
#left #menu,
#left #menu.bg-blue,
#left #menu.pb-menu,
#menu.bg-blue.pb-menu{
    background: transparent !important;
}
#left #menu li,
#left #menu li:hover,
#left #menu li:focus,
#left #menu > li,
#left #menu > li:hover,
#left #menu > li:focus,
#left #menu > li.active,
#left #menu > li.active:hover,
#left #menu > li.active:focus,
#menu.pb-menu li,
#menu.pb-menu li:hover,
#menu.pb-menu > li.active,
#menu.pb-menu > li:hover{
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
#left #menu > li > a,
#menu.pb-menu > li > a{
    background: transparent !important;
    color: #eafffb !important;
    border: 0 !important;
}
#left #menu > li:hover > a,
#left #menu > li.active > a,
#menu.pb-menu > li:hover > a,
#menu.pb-menu > li.active > a{
    background: rgba(32,178,154,.72) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    box-shadow: 0 10px 22px rgba(0,0,0,.12) !important;
}
#left #menu li.active > ul,
#left #menu > li.active > ul,
#left #menu > li > ul,
#left #menu ul,
#menu.pb-menu li.active > ul,
#menu.pb-menu > li.active > ul,
#menu.pb-menu > li > ul,
#menu.pb-menu ul{
    background: rgba(7,67,72,.88) !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 14px !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04) !important;
    margin: 7px 0 8px 0 !important;
    padding: 8px !important;
}
#left #menu ul li,
#left #menu ul li:hover,
#left #menu ul li.active,
#left #menu li.active ul li.active,
#menu.pb-menu ul li,
#menu.pb-menu ul li:hover,
#menu.pb-menu ul li.active,
#menu.pb-menu li.active ul li.active{
    background: transparent !important;
    border: 0 !important;
}
#left #menu ul li a,
#left #menu li.active ul li a,
#left #menu li.active ul li.active > a,
#left #menu li.active ul li:hover > a,
#menu.pb-menu ul li a,
#menu.pb-menu li.active ul li a,
#menu.pb-menu li.active ul li.active > a,
#menu.pb-menu li.active ul li:hover > a{
    background: transparent !important;
    color: #dffdf8 !important;
    border: 0 !important;
    box-shadow: none !important;
}
#left #menu ul li a:hover,
#left #menu ul li.active > a,
#menu.pb-menu ul li a:hover,
#menu.pb-menu ul li.active > a{
    background: rgba(255,255,255,.10) !important;
    color: #ffffff !important;
}

/* =========================================================
   PRINT PAGE PROTECTION - CSS ONLY
   This keeps professional screen style away from receipt/KOT/report print pages.
   Applies only when a page contains a table/div with class="print".
   ========================================================= */
body:has(.print){
    background:#ffffff !important;
    color:#000000 !important;
    font-family:Arial, Helvetica, sans-serif !important;
    font-size:12px !important;
    min-height:auto !important;
    overflow:auto !important;
}
body:has(.print) #wrap,
body:has(.print) #top,
body:has(.print) #left,
body:has(.print) .head,
body:has(.print) .navbar,
body:has(.print) .topnav,
body:has(.print) .sidebar,
body:has(.print) .preloader{
    display:none !important;
    visibility:hidden !important;
    height:0 !important;
    min-height:0 !important;
    overflow:hidden !important;
}
body:has(.print) .bg-container,
body:has(.print) .wrapper,
body:has(.print) #content,
body:has(.print) .outer,
body:has(.print) .inner,
body:has(.print) .card,
body:has(.print) .card-block,
body:has(.print) .row,
body:has(.print) [class*="col-"]{
    background:#ffffff !important;
    box-shadow:none !important;
    border:0 !important;
    margin:0 !important;
    padding:0 !important;
    width:auto !important;
    max-width:none !important;
    min-height:0 !important;
}
body:has(.print) .pb-table-scroll,
body:has(.print) .table-responsive,
body:has(.print) .data_tables,
body:has(.print) .dataTables_wrapper{
    display:block !important;
    overflow:visible !important;
    background:#ffffff !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    padding:0 !important;
    margin:0 !important;
    width:auto !important;
    max-width:none !important;
    max-height:none !important;
}
body:has(.print) .dataTables_length,
body:has(.print) .dataTables_filter,
body:has(.print) .dataTables_info,
body:has(.print) .dataTables_paginate,
body:has(.print) .dt-buttons,
body:has(.print) .buttons-print,
body:has(.print) .btn,
body:has(.print) button,
body:has(.print) input[type="submit"]{
    display:none !important;
}
body:has(.print) div[style*="max-width:300px"]{
    max-width:300px !important;
    width:300px !important;
    margin:10px !important;
    padding:0 !important;
    background:#ffffff !important;
    box-shadow:none !important;
}
body:has(.print) table.print,
body:has(.print) table.table.print,
body:has(.print) table.table-bordered.print,
body:has(.print) .print{
    width:100% !important;
    max-width:300px !important;
    margin:0 !important;
    background:#ffffff !important;
    color:#000000 !important;
    border-collapse:collapse !important;
    border-spacing:0 !important;
    box-shadow:none !important;
    border-radius:0 !important;
    overflow:visible !important;
    page-break-after:always;
}
body:has(.print) .print:last-child{
    page-break-after:auto;
}
body:has(.print) .print thead,
body:has(.print) .print tbody,
body:has(.print) .print tfoot,
body:has(.print) .print tr,
body:has(.print) .print th,
body:has(.print) .print td{
    background:#ffffff !important;
    color:#000000 !important;
    border-color:#000000 !important;
    box-shadow:none !important;
    text-shadow:none !important;
    position:static !important;
    top:auto !important;
    z-index:auto !important;
}
body:has(.print) .print th,
body:has(.print) .print td,
body:has(.print) .table.print th,
body:has(.print) .table.print td,
body:has(.print) .table-bordered.print th,
body:has(.print) .table-bordered.print td{
    border:1px solid #000000 !important;
    padding:3px 5px !important;
    font-size:12px !important;
    line-height:1.25 !important;
    font-weight:normal !important;
    text-transform:none !important;
    letter-spacing:0 !important;
    white-space:normal !important;
    vertical-align:top !important;
}
body:has(.print) .print th,
body:has(.print) .print tfoot td,
body:has(.print) .print tfoot th{
    font-weight:bold !important;
}
body:has(.print) .print img{
    max-width:100% !important;
    height:auto !important;
    box-shadow:none !important;
    border-radius:0 !important;
    background:transparent !important;
}

@media print{
    @page{ margin:0; }
    html, body{
        background:#ffffff !important;
        color:#000000 !important;
        -webkit-print-color-adjust:exact;
        print-color-adjust:exact;
    }
    body:has(.print){
        margin:0 !important;
        padding:0 !important;
        width:auto !important;
    }
    body:has(.print) *{
        box-shadow:none !important;
        text-shadow:none !important;
        animation:none !important;
        transition:none !important;
    }
    body:has(.print) #wrap,
    body:has(.print) #top,
    body:has(.print) #left,
    body:has(.print) .head,
    body:has(.print) .navbar,
    body:has(.print) .topnav,
    body:has(.print) .sidebar{
        display:none !important;
    }
    body:has(.print) .pb-table-scroll,
    body:has(.print) .table-responsive{
        overflow:visible !important;
        border:0 !important;
    }
    body:has(.print) div[style*="max-width:300px"]{
        margin:0 !important;
        width:300px !important;
        max-width:300px !important;
    }
    body:has(.print) table.print,
    body:has(.print) .print{
        max-width:300px !important;
        width:300px !important;
    }
}

/* =========================================================
   PRINT EMPTY PAGE FIX
   Do NOT hide #wrap on print pages because printSale/printForKitchen/
   printDashboard place the receipt tables inside #wrap from MasterTop.php.
   This override keeps the receipt content visible while still keeping the
   receipt/KOT/report clean for printing.
   ========================================================= */
body:has(.print) #wrap,
body:has(.print) .Wrap,
body:has(.print) .wrapper,
body:has(.print) #content,
body:has(.print) .outer,
body:has(.print) .inner{
    display:block !important;
    visibility:visible !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
    background:#ffffff !important;
    box-shadow:none !important;
    border:0 !important;
    margin:0 !important;
    padding:0 !important;
}

/* Hide only real screen navigation/header on print pages, not the page wrapper. */
body:has(.print) #top,
body:has(.print) #left,
body:has(.print) .head,
body:has(.print) .navbar,
body:has(.print) .topnav,
body:has(.print) .sidebar,
body:has(.print) .preloader{
    display:none !important;
    visibility:hidden !important;
    height:0 !important;
    min-height:0 !important;
    max-height:0 !important;
    overflow:hidden !important;
}

body:has(.print) div[style*="max-width:300px"]{
    display:block !important;
    visibility:visible !important;
    max-width:300px !important;
    width:300px !important;
    margin:10px !important;
    padding:0 !important;
    background:#ffffff !important;
    color:#000000 !important;
}

body:has(.print) table.print,
body:has(.print) .print{
    display:table !important;
    visibility:visible !important;
    opacity:1 !important;
    background:#ffffff !important;
    color:#000000 !important;
}

@media print{
    body:has(.print) #wrap,
    body:has(.print) .Wrap,
    body:has(.print) .wrapper,
    body:has(.print) #content,
    body:has(.print) .outer,
    body:has(.print) .inner{
        display:block !important;
        visibility:visible !important;
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        overflow:visible !important;
        background:#ffffff !important;
        box-shadow:none !important;
        border:0 !important;
        margin:0 !important;
        padding:0 !important;
    }
    body:has(.print) #top,
    body:has(.print) #left,
    body:has(.print) .head,
    body:has(.print) .navbar,
    body:has(.print) .topnav,
    body:has(.print) .sidebar,
    body:has(.print) .preloader{
        display:none !important;
        visibility:hidden !important;
        height:0 !important;
        min-height:0 !important;
        max-height:0 !important;
        overflow:hidden !important;
    }
    body:has(.print) div[style*="max-width:300px"]{
        display:block !important;
        visibility:visible !important;
        margin:0 !important;
        width:300px !important;
        max-width:300px !important;
    }
    body:has(.print) table.print,
    body:has(.print) .print{
        display:table !important;
        visibility:visible !important;
        opacity:1 !important;
        width:300px !important;
        max-width:300px !important;
        background:#ffffff !important;
        color:#000000 !important;
    }
}

/* =========================================================
   PRINT TWO SHEETS / BLANK SECOND PAGE FIX - CSS ONLY
   The print pages already have inline .print { page-break-after: always; }
   This override removes that forced extra sheet and keeps only receipt content.
   ========================================================= */
body:has(.print) .print,
body:has(.print) table.print,
body:has(.print) table.table.print,
body:has(.print) table.table-bordered.print,
body:has(.print) div[style*="max-width:300px"]{
    page-break-before:auto !important;
    break-before:auto !important;
    page-break-after:auto !important;
    break-after:auto !important;
    page-break-inside:avoid !important;
    break-inside:avoid !important;
}

@media print{
    html,
    body{
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        overflow:visible !important;
        margin:0 !important;
        padding:0 !important;
    }
    body:has(.print){
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        overflow:visible !important;
        margin:0 !important;
        padding:0 !important;
    }
    body:has(.print) #wrap,
    body:has(.print) .Wrap,
    body:has(.print) .wrapper,
    body:has(.print) #content,
    body:has(.print) .outer,
    body:has(.print) .inner,
    body:has(.print) .bg-container,
    body:has(.print) .container,
    body:has(.print) .container-fluid{
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        overflow:visible !important;
        margin:0 !important;
        padding:0 !important;
        width:auto !important;
        max-width:none !important;
    }
    body:has(.print) div[style*="max-width:300px"]{
        display:block !important;
        width:300px !important;
        max-width:300px !important;
        margin:0 !important;
        padding:0 !important;
        height:auto !important;
        min-height:0 !important;
        page-break-before:auto !important;
        break-before:auto !important;
        page-break-after:auto !important;
        break-after:auto !important;
        page-break-inside:avoid !important;
        break-inside:avoid !important;
    }
    body:has(.print) .print,
    body:has(.print) table.print,
    body:has(.print) table.table.print,
    body:has(.print) table.table-bordered.print{
        display:table !important;
        width:300px !important;
        max-width:300px !important;
        margin:0 !important;
        height:auto !important;
        min-height:0 !important;
        page-break-before:auto !important;
        break-before:auto !important;
        page-break-after:auto !important;
        break-after:auto !important;
        page-break-inside:avoid !important;
        break-inside:avoid !important;
    }
    body:has(.print) #footer,
    body:has(.print) footer,
    body:has(.print) .footer,
    body:has(.print) .copyright,
    body:has(.print) .fixed-bottom,
    body:has(.print) .page-footer{
        display:none !important;
        height:0 !important;
        min-height:0 !important;
        max-height:0 !important;
        overflow:hidden !important;
    }
}

/* Final POS compact box + 4-column sale info fix */
.pb-bill-sale-info .card{border-radius:4px!important;}
.pb-bill-sale-info .card-header{border-radius:4px 4px 0 0!important;}
.pb-bill-sale-info .card-block{padding:8px!important;}
.pb-bill-sale-info .row{display:flex!important;flex-wrap:wrap!important;margin-left:-4px!important;margin-right:-4px!important;}
.pb-bill-sale-info .col-lg-3{width:25%!important;max-width:25%!important;flex:0 0 25%!important;float:none!important;clear:none!important;padding-left:4px!important;padding-right:4px!important;}
.pb-bill-sale-info .col-lg-6{width:50%!important;max-width:50%!important;flex:0 0 50%!important;float:none!important;clear:none!important;padding-left:4px!important;padding-right:4px!important;}
.pb-bill-sale-info .col-lg-12{width:100%!important;max-width:100%!important;flex:0 0 100%!important;float:none!important;clear:both!important;padding-left:4px!important;padding-right:4px!important;}
.pb-bill-sale-info #cus_details{display:contents!important;}
.pb-bill-sale-info .input_field_sections{margin-top:6px!important;}
.pb-bill-sale-info h5{font-size:9.5px!important;line-height:1.15!important;text-align:left!important;margin:0 0 3px!important;white-space:normal!important;}
.pb-bill-sale-info .label_desc{font-size:8px!important;}
.pb-bill-sale-info .form-control{height:30px!important;min-height:30px!important;font-size:11px!important;border-radius:3px!important;padding:4px 7px!important;}
.pb-bill-sale-info .btn{border-radius:3px!important;padding:5px 10px!important;margin-top:4px!important;}
.pb-pos-panel,.pb-bill-panel,.pb-bill-panel .card,.pb-bill-panel .table,.pb-bill-panel .form-control,.pb-bill-panel .btn{border-radius:4px!important;}
.pb-cat-btn{border-radius:3px!important;padding:6px 10px!important;min-width:auto!important;width:auto!important;text-align:center!important;line-height:1.1!important;}
.pb-product-grid{gap:6px!important;}
.pb-product-card{width:auto!important;margin:0!important;display:inline-flex!important;}
.pb-product-btn{width:auto!important;min-width:72px!important;max-width:180px!important;min-height:48px!important;border-radius:3px!important;padding:6px 8px!important;text-align:center!important;align-items:center!important;justify-content:center!important;}
.pb-product-title,.pb-product-meta,.pb-product-price{text-align:center!important;width:100%!important;}
.pb-product-title{font-size:11px!important;line-height:1.15!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;}
.pb-product-meta{font-size:8.5px!important;line-height:1.1!important;margin-top:2px!important;white-space:normal!important;}
.pb-product-price{font-size:11px!important;line-height:1.1!important;margin-top:4px!important;white-space:nowrap!important;}
@media(max-width:1200px){.pb-bill-sale-info .col-lg-3{width:50%!important;max-width:50%!important;flex:0 0 50%!important}.pb-bill-sale-info .col-lg-6{width:50%!important;max-width:50%!important;flex:0 0 50%!important}}
@media(max-width:767px){.pb-bill-sale-info .col-lg-3,.pb-bill-sale-info .col-lg-6{width:100%!important;max-width:100%!important;flex:0 0 100%!important}.pb-product-btn{min-width:68px!important;max-width:150px!important}}


/* POS right-side Extra Charges + Payment 3-input row fix */
#pb-extra-payment-wrap,
#pb-extra-payment-wrap .container{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
}
#pb-extra-payment-wrap .col-md-12{
    width:100%!important;
    max-width:100%!important;
    float:none!important;
    clear:both!important;
    margin:8px 0 10px!important;
    padding:8px 10px 12px!important;
    border-radius:4px!important;
    overflow:visible!important;
}
#pb-extra-payment-wrap .card-header{
    border-radius:3px!important;
    padding:8px 10px!important;
    margin:0 0 8px!important;
}
#pb-extra-payment-wrap form .row,
#pb-extra-payment-wrap > .container > .col-md-12 > .col-lg-12 > .row,
#pb-extra-payment-wrap .input-payment-row{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:flex-end!important;
    margin-left:-5px!important;
    margin-right:-5px!important;
}
#pb-extra-payment-wrap .col-lg-4{
    width:33.333333%!important;
    max-width:33.333333%!important;
    flex:0 0 33.333333%!important;
    float:none!important;
    clear:none!important;
    padding-left:5px!important;
    padding-right:5px!important;
    box-sizing:border-box!important;
}
#pb-extra-payment-wrap .input_field_sections{
    margin-top:6px!important;
    margin-bottom:6px!important;
}
#pb-extra-payment-wrap label{
    display:block!important;
    font-size:10px!important;
    line-height:1.15!important;
    margin:0 0 4px!important;
    white-space:normal!important;
}
#pb-extra-payment-wrap .form-control{
    width:100%!important;
    height:34px!important;
    min-height:34px!important;
    padding:5px 8px!important;
    border-radius:3px!important;
    font-size:12px!important;
}
#pb-extra-payment-wrap .btn{
    border-radius:3px!important;
}
#pb-extra-payment-wrap button[type="submit"],
#pb-extra-payment-wrap #complete_sale_btn,
#pb-extra-payment-wrap .btn-danger.pull-right{
    position:relative!important;
    z-index:10!important;
}
#pb-extra-payment-wrap .col-lg-12.input_field_sections{
    width:100%!important;
    max-width:100%!important;
    flex:0 0 100%!important;
    clear:both!important;
    display:block!important;
    padding-left:5px!important;
    padding-right:5px!important;
    overflow:visible!important;
    min-height:38px!important;
}
@media(max-width:767px){
    #pb-extra-payment-wrap .col-lg-4{
        width:100%!important;
        max-width:100%!important;
        flex:0 0 100%!important;
    }
}

/* FINAL SALE PAGE ROW FIX: 4 sale fields, CNIC/guests with service row, notes full line, 3+3 inputs one line */
.pb-bill-sale-info .pb-sale-service-row{display:flex!important;flex-wrap:nowrap!important;align-items:flex-end!important;gap:0!important;}
.pb-bill-sale-info .pb-sale-service-row .col-lg-3{width:25%!important;max-width:25%!important;flex:0 0 25%!important;float:none!important;clear:none!important;}
.pb-bill-sale-info .pb-sale-notes-row{display:flex!important;flex-wrap:wrap!important;}
.pb-bill-sale-info .pb-sale-notes-full{width:100%!important;max-width:100%!important;flex:0 0 100%!important;float:none!important;clear:both!important;}
.pb-bill-sale-info .pb-sale-notes-full .form-control{width:100%!important;}
.pb-bill-sale-info .room-service-fields[style*="display: none"],.pb-bill-sale-info .room-service-fields[style*="display:none"]{display:none!important;}
.pb-product-btn{border-radius:2px!important;min-width:max-content!important;max-width:190px!important;min-height:44px!important;padding:5px 9px!important;}
.pb-product-card{width:auto!important;max-width:max-content!important;}
.pb-product-title,.pb-product-meta,.pb-product-price{text-align:center!important;}
.pb-cat-btn{border-radius:2px!important;}
.pb-bill-panel #pb-extra-payment-wrap form > .row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;margin-left:0!important;margin-right:0!important;align-items:end!important;}
.pb-bill-panel #pb-extra-payment-wrap form > .row > .col-lg-4{width:100%!important;max-width:100%!important;flex:none!important;float:none!important;clear:none!important;padding-left:0!important;padding-right:0!important;}
.pb-bill-panel #pb-extra-payment-wrap form > .row > .col-lg-12{grid-column:1 / -1!important;width:100%!important;max-width:100%!important;flex:none!important;float:none!important;clear:both!important;padding-left:0!important;padding-right:0!important;}
.pb-bill-panel #pb-extra-payment-wrap .input_field_sections{margin-top:4px!important;margin-bottom:4px!important;}
.pb-bill-panel #pb-extra-payment-wrap .form-control{width:100%!important;height:32px!important;min-height:32px!important;border-radius:3px!important;}
@media(max-width:767px){
 .pb-bill-sale-info .pb-sale-service-row{flex-wrap:wrap!important;}
 .pb-bill-sale-info .pb-sale-service-row .col-lg-3{width:100%!important;max-width:100%!important;flex:0 0 100%!important;}
 .pb-bill-panel #pb-extra-payment-wrap form > .row{grid-template-columns:1fr!important;}
}


/* USER FINAL SALE INFO LAYOUT: Type hidden, Service in type place, second row 4 equal fields */

/* USER FINAL SALE INFO LAYOUT: Type hidden, Service in type place, second row 4 equal fields */
.pb-bill-sale-info .pb-sale-main-row,
.pb-bill-sale-info .pb-sale-detail-row{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
  margin-left:0!important;
  margin-right:0!important;
  align-items:end!important;
}
.pb-bill-sale-info .pb-sale-main-row>.input_field_sections,
.pb-bill-sale-info .pb-sale-detail-row>.input_field_sections{
  width:100%!important;
  max-width:100%!important;
  flex:none!important;
  float:none!important;
  clear:none!important;
  padding-left:0!important;
  padding-right:0!important;
  margin-top:6px!important;
}
.pb-bill-sale-info .pb-sale-main-row:before,.pb-bill-sale-info .pb-sale-main-row:after,
.pb-bill-sale-info .pb-sale-detail-row:before,.pb-bill-sale-info .pb-sale-detail-row:after{display:none!important;content:none!important;}
.pb-bill-sale-info input[name="customer_title"]{background:#fff!important;cursor:text!important;}
.pb-product-btn{border-radius:3px!important;min-width:70px!important;width:auto!important;max-width:170px!important;min-height:40px!important;padding:5px 8px!important;}
.pb-product-card{width:auto!important;max-width:fit-content!important;}
.pb-product-title,.pb-product-meta,.pb-product-price{text-align:center!important;}
.pb-cat-btn{border-radius:3px!important;}
@media(max-width:1200px){.pb-bill-sale-info .pb-sale-main-row,.pb-bill-sale-info .pb-sale-detail-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:767px){.pb-bill-sale-info .pb-sale-main-row,.pb-bill-sale-info .pb-sale-detail-row{grid-template-columns:1fr!important;}}


/* PB full form/layout safety pass 2026-07-02: keeps old logic, fixes rows/forms/hidden overflow on add-update pages */
#content .card-block > .row > form{width:100%!important;max-width:100%!important;display:block!important;margin-left:0!important;margin-right:0!important;}
#content .card-block > .row > form:before,#content .card-block > .row > form:after{display:table!important;content:" "!important;}
#content .card-block > .row > form:after{clear:both!important;}
#content form .input_field_sections{box-sizing:border-box!important;}
#content form .input_field_sections .form-control,#content form .input_field_sections select,#content form .input_field_sections textarea{width:100%!important;max-width:100%!important;}
#content .modal-body form .row,#content .card-block form .row{clear:both;}
#content .modal-footer .btn,#content form .btn{white-space:nowrap;}
#content .chosen-container{width:100%!important;max-width:100%!important;}
#content .chosen-container-single .chosen-single{height:42px!important;line-height:40px!important;border-radius:14px!important;border-color:#cddde7!important;background:#fff!important;}
#content .chosen-container-single .chosen-single div{top:8px!important;}
#content .table-responsive,#content .pb-table-scroll{overflow-x:auto!important;-webkit-overflow-scrolling:touch;}
@media(max-width:767px){#content form .input_field_sections{width:100%!important;max-width:100%!important;float:none!important;clear:both!important;}}
