/* In your main stylesheet (e.g., styles.css) */
:root {
    --brand-primary: #153e9a; /* A primary brand blue */
    --brand-secondary: #2196f3; /* A secondary gray */
    --brand-accent: #28a745;  /* An accent/success green */
    --text-color: #212529;   /* Main body text color */
    --background-color: rgb(21 62 154 / 20%); /* Main background color */
}

/* Sidebar tooltip style for white background with rounded corners */
.sidebar-collapse .nav-sidebar .nav-link:hover::after {
    background: #ffffff !important;
    color: #343a40 !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15) !important;
}
.sidebar-collapse .nav-sidebar .nav-link:hover::before {
    border-right-color: #ffffff !important;
}
/* --- Admin Sidebar/Closebar Styles (moved from Blade) --- */
.user-panel.d-flex.justify-content-between.align-items-center {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}
.sidebar-toggle-btn {
    background: transparent !important;
    border: none;
    cursor: pointer;
    padding: 8px;
    border-radius: 4px;
    transition: transform 0.3s;
    position: relative;
    z-index: 1001;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 20px;
}
.sidebar-toggle-btn:hover {
    transform: scale(1.1);
    background: transparent !important;
}
.sidebar-toggle-btn:focus {
    outline: none;
}

/* Circular progress indicator for Enquiries Form Completion */
.circle-progress {
    --p: 0%;
  --size: 36px;
  --thickness: 5px;
  --track: #e9ecef;
  --color: #22c55e; /* default green */
  width: var(--size);
  height: var(--size);
  border-radius: 50%;
    /* Use --p as percentage directly, e.g., --p: 72% */
    background: conic-gradient(var(--color) var(--p), var(--track) 0);
  display: grid;
  place-items: center;
  position: relative;
  font-weight: 600;
  font-size: 11px;
  color: #2b2b2b;
    margin: 2px auto; /* center inside table cell */
}

.circle-progress::before {
  content: "";
  position: absolute;
  inset: calc(var(--thickness));
  background: #fff;
  border-radius: 50%;
}

.circle-progress::after {
  content: attr(data-label);
  z-index: 1;
}

.circle--danger { --color: #ef4444; }
.circle--warning { --color: #f59e0b; }
.circle--success { --color: #22c55e; }
.expand-button-area {
    width: 100%;
    border-bottom: 1px solid #e9ecef;
    padding: 15px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    margin-bottom: 10px;
}
.expand-button-area .sidebar-toggle-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    width: 40px;
    height: 40px;
    margin: 0 auto;
}
.sidebar-collapse .expand-button-area {
    display: none !important;
}
.sidebar-collapse .logo-full {
    display: none !important;
}
.sidebar-collapse .logo-icon {
    display: flex !important;
    height: 50px !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid #e9ecef !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    overflow: visible !important;
}
.logo-icon img {
    max-width: 100%;
    max-height: 100%;
}
.expand-btn {
    display: none !important;
}
.sidebar-collapse .nav-sidebar > .nav-item > a p,
.sidebar-collapse .nav-sidebar > .nav-item > a .right,
.sidebar-collapse .nav-sidebar > .has-treeview > a p,
.sidebar-collapse .nav-sidebar > .has-treeview > a .right {
    display: none !important;
}
.navbar-light .navbar-nav .nav-link>i {
    color: rgb(94, 53, 177);
}
/* Sidebar custom styles (restored) */
.main-sidebar {
    width: 250px;
    transition: width 0.3s;
}

.main-sidebar.sidebar-collapse, .main-sidebar.sidebar-closed {
    width: 80px !important;
    transition: width 0.3s;
}

.content-wrapper, .main-footer, .main-header {
    transition: margin-left 0.3s;
}

/* Sidebar expand/collapse button area (restored) */
.expand-button-area {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    margin-bottom: 10px;
}

/* Sidebar toggle button (restored) */
.sidebar-toggle-btn {
    background: none;
    border: none;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
    outline: none;
}

/* Tooltip for expand button (restored) */
.sidebar-toggle-btn[title] {
    display: inline-block !important;
}
@font-face {
    font-family: Source Sans Pro;
    src: url('../fonts/web/SourceSansPro-Regular.ttf');
    font-weight: 400;
}
@font-face {
    font-family: Source Sans Pro;
    src: url('../fonts/web/SourceSansPro-SemiBold.ttf');
    font-weight: 600;
}
@font-face {
    font-family: Source Sans Pro;
    src: url('../fonts/web/SourceSansPro-Bold.ttf');
    font-weight: 700;
}


.swal2-popup.swal2-toast{
    box-shadow: -2px 2px 10px 0px rgb(0 1 31 / 21%)!important;
}
.swal2-toast {
    max-width: 370px !important;
    border-radius: 0px !important;
}
.swal2-popup.swal2-toast .swal2-title {
    font-size: 16px!important;
}
.swal2-popup {
    border: 0px;
    border-left: 4px solid #007bff !important;
}
.swal2-popup.swal2-modal{
    border-left: 0px!important;
}
.vmidle{
    vertical-align: middle!important;
}
.img-demo{
    background-color: #fff;
    border: 3px solid #fff;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
    max-width: 100%;
    height: auto;
}
.w-80{
    max-width: 80px;
}
.w-100{
    max-width: 100px;
}
.w-40{
    max-width: 40px;
    max-height: 40px;
}
.ws-70{
    max-width: 70px;
    box-shadow: 0 0 1px rgba(0,0,0,.125), 0 1px 3px rgba(0,0,0,.2);
}
.mw-400{
    max-width: 400px;
}
.ws-100{
    max-width: 100px;
}
.ws-150{
    max-width: 150px;
    background: #ddd;
    box-shadow: 0 0 1px rgba(0,0,0,.125), 0 1px 3px rgba(0,0,0,.2);
}
.w-50{
    max-width: 50px;
}
.ws-200{
    max-width: 200px;
    box-shadow: 0 0 1px rgba(0,0,0,.125), 0 1px 3px rgba(0,0,0,.2);
}
.btn i{
    font-size: 14px!important;
    place-items: center;
    padding: 4px;
}

.page-link:focus{box-shadow: none;}
.page-link:hover { z-index: 2; color: rgb(94, 53, 177);}
.btn-info:hover { color: #fff; background-color: #2196f3; border-color: #2196f3; }
.icheck-primary>input:first-child:checked+input[type=hidden]+label::before, .icheck-primary>input:first-child:checked+label::before { background-color: rgb(94, 53, 177); border-color: rgb(94, 53, 177); }
label:not(.form-check-label):not(.custom-file-label) {font-size: 14px;font-weight: 600;}
.table td, .table th{padding: 0.45rem;}
table.dataTable>thead>tr>th:not(.sorting_disabled), table.dataTable>thead>tr>td:not(.sorting_disabled){font-weight: 600;font-size: 14px;}

.input-group-append button {
    border-color: #cccc;
    border-radius: 0;
}
select.form-control { border-radius: 0; }

.elevation-4 {
    border-right: 1px solid #dee2e6;
    box-shadow: none!important;
}
.content-header .breadcrumb a{
    color: #212529;
    -webkit-transition: all linear .3s;
    -moz-transition: all linear .3s;
    -ms-transition: all linear .3s;
    transition: all linear .3s;
}
.content-header .breadcrumb a:hover{
    color: #007bff;
}
.content-header .breadcrumb a i{
    margin-right: 5px;
}
.shadow-none{
    -webkit-box-shadow: unset!important;
    box-shadow: unset!important;
}
.border-none{
    border: 0px!important;
}
.widget-user-2 .widget-user-username{
    font-weight: 600;
    font-size: 18px;
}
.widget-user-2 .widget-user-desc{
    font-size: 14px;
}
/* [class*=sidebar-light-] .nav-treeview>.nav-item>.nav-link.active, [class*=sidebar-light-] .nav-treeview>.nav-item>.nav-link.active:hover
{
    background-color: rgba(0, 123, 255, 0.1)!important;
}
[class*=sidebar-light-] .nav-sidebar>.nav-item.menu-open>.nav-link, [class*=sidebar-light-] .nav-sidebar>.nav-item:hover>.nav-link,
[class*=sidebar-light-] .nav-treeview>.nav-item>.nav-link:hover 
{
    background-color: rgba(0, 123, 255, 0.1)!important;
}
.nav-pills .nav-link:not(.active):hover,
[class*=sidebar-light-] .nav-treeview>.nav-item>.nav-link.active
 {
    color: #212529!important;
} */

/* [class*=sidebar-light-] .nav-sidebar>.nav-item:hover>.nav-link{
    background-color: rgba(0, 123, 255, 0.1);
}
.sidebar-light-primary .nav-sidebar>.nav-item>.nav-link.active:hover {
    background-color: #007bff!important;
}
.sidebar-light-primary .nav-sidebar>.nav-item>.nav-link.active {
    background-color: #007bff!important;
} */

.content-header h1{
    font-size: 16px;
    font-weight: 600;
}
.pagination{
    margin-bottom: 0px;
}

.nicEdit-main:focus{
    outline: 0px;
}
.sidebar .user-panel{
    height: 57px;
    text-align: left;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 15px;
}
.user-panel .name{
    font-size: 20px;
    line-height: 20px;
    font-weight: 600;
    margin-bottom: 0px;
    width: auto;
}
.user-panel .name img{
    /* max-height: 50px; */
    width: auto;
    /* height: auto; */
    max-height: 50px;
    display: inline-block;
    padding-top: 7px;
}
.bootstrap-switch .bootstrap-switch-handle-off, 
.bootstrap-switch .bootstrap-switch-handle-on, 
.bootstrap-switch .bootstrap-switch-label {
    text-align: center;
}
.user-panel .info a{
    font-size: 15px;
    line-height: 15px;
    margin-bottom: 0px;
}
.user-panel .info span{
    font-size: 12px;
    line-height: 15px;
    position: relative;
    top: -2px;
}

.form-group.note-form-group.note-group-select-from-files {
    display: none!important;
}

.form-control.lang{
    height: 31px;
    padding: 0px 20px 0px 10px;
}
.table tr td {
    vertical-align: middle;
}


/* .nav-sidebar .nav-link p{
    font-weight: 600;
} */

.content-header h1,
.card-title,
.breadcrumb-item+.breadcrumb-item,
.btn,
table>thead>tr>th
{
    text-transform: capitalize;
}

.os-theme-light>.os-scrollbar>.os-scrollbar-track>.os-scrollbar-handle {
    background: rgba(0, 0, 0, 0.1)!important;
}

.dropdown button#delete{
    background: none;
    border: none;
    margin: 0px;
    padding: 0px;
}
.main-footer p{
    display: inline-block;
    margin-bottom: 0px;
}

.h80 {
    height: 150px!important;
}
.drop-img .custom-file-label::after{
    display: none;
 }
 
 .drop-img .custom-file-label{
     padding-top: 60px;
     border: 2px dashed #ddd!important;
 }
 .drop-img .custom-file-label h5{
     font-weight: 600;
     font-size: 24px;
     color: #b4b1bd;
 }

 .edit-slider{
    display: inline-block;
    margin: 5px;
}
.edit-slider img{
    max-width: 200px;
    display: block;
}


.login-right{BACKGROUND: rgb(93 42 174);width: 50%;z-index: 9999;position: relative;display: flex;justify-content: center;flex-direction: column;background-position: center top;box-shadow: 2px 2px 5px rgb(94, 53, 177);border-radius: 0px 10px 10px 0px;height: 100%;padding-left: 8rem;}
.login-boxes {display: flex;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);width: 100%;align-items: center;justify-content: center;height: 100%;}
.login-left {background-color: #e8ecf5!important;width: 50%;}
.login-left {background-color: #fff!important;padding: 3rem 6rem;box-shadow: 0px 0px 0px 0px #ffffff;border-radius: 10px 0px 0px 10px;} 
.login-card-body, .register-card-body {background: transparent;padding: 0;}
 .login-boxes .card { background: transparent; box-shadow: none; margin-bottom: 0; } 
.login-page, .register-page {
    /* background-image: linear-gradient(120deg, rgb(94, 53, 177)42 0%, #cbb07e 100%); */
    height: 100%;
    display: flex;
}
.card{background: transparent!important;box-shadow: none; margin-bottom: 10px;}
.login-logo {
    /* width: 15rem; */
    /* margin: 0 auto; */
    /* max-width: 100%; */
    margin-top: 2rem;
    margin-left: 6rem;
    width: 100px;
}
.login-logo img { width: 100%; max-width: 100%; min-width: 100%; }
 .login-box {width: 100%;display: flex;flex-direction: column;justify-content: center;height: 100%;} 
.btn-block {background: rgb(94, 53, 177);border-color: rgb(94, 53, 177);margin-top: 1rem;}
.loginheading { color: #fff; font-size: 3rem; font-weight: 600; line-height: 1; margin-bottom: 1rem; }
p.loginpara { color: #fff; margin: 0; } 
p.login-box-msg {/* font-weight: 600; */margin-top: 4px;margin-bottom: 1.5rem;font-family: sans-serif;position: relative;font-size: 14px;text-align: left;margin-bottom: 1.5rem;}
/* .input-group-append { background: #fff; }  */
.input-group-text { border-radius: 0!important; }
 input.form-control { border-radius: 0;}
 .btn-block:hover{background-color: #cbb07e; border-color: #cbb07e;}
 .form-control:focus{border-color: rgb(94, 53, 177);}
 .login-card-body .input-group .form-control:focus~.input-group-append .input-group-text, .register-card-body .input-group .form-control:focus~.input-group-append .input-group-text {
    border-color: rgb(94, 53, 177);}
    .login-card-body .input-group .form-control, .register-card-body .input-group .form-control, .login-card-body .input-group .input-group-text, .register-card-body .input-group .input-group-text{border: 0;border: 1px solid #ddd;border-radius: 5px;padding: 22px 10px;}
input.form-control::placeholder { color: #777777; font-size: 16px;}
.nav-pills .nav-link:not(.active):hover { color: rgb(94, 53, 177); }
primary .nav-sidebar>.nav-item>.nav-link.active, .sidebar-light-primary .nav-sidebar>.nav-item>.nav-link.active {
    background-color: var(--background-color)!important;
    color: var(--brand-primary)!important;
    border-radius: 10px;
    box-shadow: none;
}

.import {padding-top: 30px;}
.main-dashboard .info-box.bg-gradient-primary {background: rgb(21, 101, 192)!important;}
 .main-dashboard .info-box.bg-gradient-danger {background: rgb(69, 39, 160)!important;}
  .main-dashboard .info-box.bg-gradient-info {background: rgb(21, 101, 192)!important;} 
.main-dashboard .info-box.bg-gradient-last {background: #C1B4AE!important;}
.main-dashboard .info-box {padding:1rem 2rem;MARGIN: 5PX 0px;BORDER-RADIUS: 10px;position: relative;z-index: 5;overflow: hidden;    background: #17a2b8;}
 .main-dashboard { margin: 1rem; } 
.main-dashboard .info-box-text { font-size: 15px; font-family: sans-serif; color: #fff;}
.main-dashboard .info-box-number { font-size: 28px; font-weight: 600; color: #fff; font-family: sans-serif; }
.main-dashboard  .info-box-icon {color: #fff;}
.main-dashboard  .card-header {margin: 0;}
.card-primary.card-outline { border-top: 3px solid rgb(94, 53, 177); }
.btn-primary { color: #fff; background-color: #153e9a; border-color: #153e9a; box-shadow: none; }
.btn-primary:hover { color: #fff; background-color: #2196f3; border-color: #2196f3; box-shadow: none; }
.btn-danger { color: #fff; background-color: #2196f3; border-color: #2196f3; box-shadow: none; }
.btn-danger:hover{color: #fff; background-color: var(--brand-primary); border-color: var(--brand-primary); box-shadow: none; }
.page-item.active .page-link {
    z-index: 1;
    color: #000000 !important;
    background-color: #f4f6f9 !important;
    border-color: #d8dadc !important;
}
.page-link{color: #343a40;}
.table-striped tbody tr:nth-of-type(odd) { background-color: rgba(0,0,0,.02); }
.btn-info { color: #fff; background-color: #153e9a; border-color: #153e9a; box-shadow: none; }
.btn-group-lg>.btn, .btn-lg{padding: 0.375rem 0.75rem; font-size: 1rem;}
.main-footer a{font-weight: 600; color: #869099;}
.btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show>.btn-primary.dropdown-toggle { color: #fff; background-color: rgb(94, 53, 177); border-color: rgb(94, 53, 177); } 
.content input.form-control::placeholder { font-size: 14px; }
input.form-control { box-shadow: inset 0 0 0px 20px #fff; }

.dropdown-menu.dropdown-menu-lg.dropdown-menu-right.border-none.show { box-shadow: 0px 3px 21px 0px rgb(0 0 0 / 20%); border-radius: 5px; }
.widget-user-header.bg-primary { background: #fff!important; display: flex; flex-direction: column; justify-content: center; align-items: center; /* display: none; */ border-bottom: 1px solid #f2f2f2; } h6.widget-user-username.mt-2, widget-user-desc { font-family: sans-serif; color: #212529; margin: 7px 0; font-weight: 100; font-size: 17px; }
 h6.widget-user-desc { color: #00000080; } 
 h6.widget-user-desc { margin-left: 0!important; } 
 img.img-circle.elevation-2.bg-white { margin-bottom: 16px; } 
 .dropdown-menu.dropdown-menu-lg.dropdown-menu-right.border-none.show { max-width: 100%; min-width: 250px; }
  .navbar-light .navbar-nav .nav-link { border-bottom: none; } 
  .card .nav.flex-column>li { border-bottom: none; padding-bottom: 5px; }
   .navbar-light .navbar-nav .nav-link { 
    color: #000; 
} 
.navbar-light .navbar-nav .nav-link>i { 
    color: var(--brand-primary);
} 
   .layout-fixed .main-sidebar {background: #fff;} 
   .layout-fixed .main-sidebar a.nav-link {color: #000;font-size: 14px;font-family: sans-serif;border-bottom: 1px solid rgba(255, 255, 255, 0.11);font-weight: 100;border-radius: 0;padding: .8rem 1rem;} 
   .card-footer.p-0.bg-white { margin-top: .5rem; } img.img-circle.elevation-2.bg-white { box-shadow: none!important; } 
   .widget-user-2 .widget-user-desc { margin-bottom: 0; } [class*=sidebar-light] .user-panel { border-bottom: 1px solid rgba(255, 255, 255, 0.11); } 
   .layout-fixed .main-sidebar a.nav-link:hover { background: #214162; color: #fff; }
 .nav-sidebar>.nav-item:hover .nav-link {color: rgb(94, 53, 177)!important;}
primary .nav-sidebar>.nav-item>.nav-link.active, .sidebar-light-primary .nav-sidebar>.nav-item>.nav-link.active p, primary .nav-sidebar>.nav-item>.nav-link.active, .sidebar-light-primary .nav-sidebar>.nav-item>.nav-link.active i {
    color: var(--brand-primary);
}
a.nav-link p, a.nav-link i {color: #000;}
.import h2 { font-size: 22px; }
.btn-success { 
    color: #fff; background-color: var(--brand-primary); border-color: var(--brand-primary); box-shadow: none; }
.btn-success:hover{background-color: var(--brand-primary);border-color: var(--brand-primary);}
.layout-fixed .main-sidebar a.nav-link:hover p, .layout-fixed .main-sidebar a.nav-link:hover i { color: var(--brand-primary); }
[class*=sidebar-light-] .nav-treeview>.nav-item>.nav-link:hover { color: var(--brand-primary)!important; }
 .login-page .text-danger {
    position: absolute;
    left: -73%;
    top: 44%;
    color: #fff!important;
    padding: 10px 10px;
    z-index: 1;
    width: 200px;
    border-radius: 10px;
    background-image: linear-gradient(120deg, rgb(94, 53, 177) 0%, rgb(94, 53, 177)c7 100%);
}
[class*=sidebar-light-] .nav-treeview>.nav-item>.nav-link{color: #000;}
 .login-page .text-danger:before {
    content: "";
    width: 10px;
    height: 10px;
    border-bottom-color: rgb(94, 53, 177);
    position: absolute;
    right: -20px;
    top: 23px;
    border: 10px solid transparent;
    border-left-color: rgb(94, 53, 177);
}


 @media(max-width: 767px){

    .login-right{display: none;}
    .login-left{width: 100%;}
    .login-page, .register-page {background: rgb(94, 53, 177)87;}
    .btn-block {margin-top: 1rem;}
    .login-left{padding: 0;border-radius: 10px;}
    .login-box{padding: 2rem;margin-top: 0;}

 }

 .login-box .text-danger {
    position: absolute;
    left: -73%;
    top: 44%;
    color: #fff!important;
    padding: 10px 10px;
    z-index: 1;
    width: 200px;
    border-radius: 10px;
    background-image: linear-gradient(120deg, rgb(94, 53, 177) 0%, rgb(94, 53, 177)c7 100%);
}

/* Standard section heading used across admin forms */
.section-heading {
    display: block;
    font-size: 1.25rem; /* balances between h3 and h4 */
    font-weight: 600;
    color: #212529; /* text-dark */
    margin-top: .25rem;
    margin-bottom: .75rem;
}

/* Keep backward-compatible selectors for templates that still use h5 */
.bgwhite h5,
.bgwhite h4 {
    margin: 0 0 .75rem 0;
}

@media (max-width: 767px) {
    .section-heading {
        font-size: 1.05rem;
    }
}

.login-box .text-danger:before {
    content: "";
    width: 10px;
    height: 10px;
    border-bottom-color: rgb(94, 53, 177);
    position: absolute;
    right: -20px;
    top: 23px;
    border: 10px solid transparent;
    border-left-color: rgb(94, 53, 177);
}

.form-control { font-size: 14px; }
table.table-bordered.dataTable tbody th, table.table-bordered.dataTable tbody td{font-size: 14px;}
.nav-sidebar>.nav-item .nav-icon{font-size: 10px;}


.form-section-heading {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 15px;
  padding-bottom: 5px;
  border-bottom: 2px solid #eee;
  color: #333;
}
.bgwhite {
    background: #fff!important;
    padding: 10px;
    margin-bottom: 1rem;
}

.card-header{margin: 0 20px;background-color: #fff!important;}
.login-box h3 {
    text-align: left;
    font-weight: 600;
}

.login-box .forget{text-decoration: underline;color: #000;width: 100%;display: block;text-align: right;color: rgb(94, 53, 177);}
.login-box label:not(.form-check-label):not(.custom-file-label){    width: 100%;
    text-align: left;}

    .account {margin-top:1rem}
    .account a{color: rgb(94, 53, 177)!important;text-decoration: underline!important;}
    

    .card-header.card-outline {
    border-top: 2px solid rgb(94, 53, 177)!important;}

    .main-dashboard .info-box.bg-gradient-danger:after{
    content: "";
    position: absolute;
    width: 123px;
    height: 123px;
    background: rgb(89 49 165);
    border-radius: 50%;
    z-index: 1;
    top: -23px;
    right: -14px;
    z-index: 22222;
    }

    .nav-sidebar .nav-link>p>.right{    top: .9rem;}
    .form-control{border-radius: 8px!important;}
    .btn-secondary {
    color: #fff;
    background-color: #2196f3;
    border-color: #2196f3;
    box-shadow: none
}
.card-title {
    margin-bottom: 1rem;
    font-size: 16px;
    font-weight: 600;
}

.table tr td {font-size: 14px;}
.table thead th , .table tr td{
    vertical-align: middle;
    border-bottom: 1px solid #dee2e6;
}
.table td, .table th{border-top:0}

/* ------------------------------------------------------------------- */
    /* DISPLAY STYLES */
    /* ------------------------------------------------------------------- */

    .plot-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
        gap: 8px;
        padding: 10px;
        width: fit-content;
        display: flex;
    }
    .plot-box {
        height: 70px;
        border: 2px solid #333;
        border-radius: 6px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        font-family: sans-serif;
        cursor: pointer;
        user-select: none;
        -moz-user-select: none;
        -webkit-user-select: none;
        -ms-user-select: none;
        transition: all 0.2s;
        text-shadow: 1px 1px 2px rgba(0,0,0,0.7);
        box-sizing: border-box;
        padding: 5px 5px;
        text-align: center;
        color: #fff;
        width: 100px;
    }
    .plot-box:hover {
        transform: translateY(-2px) scale(1.02);
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
    }
    .plot-code {
        font-weight: 700;
        font-size: 14px;
        line-height: 1.2;
        margin-bottom: 2px;
    }
    .plot-dim, .plot-area, .plot-face {
        font-size: 11px;
        line-height: 1.2;
        opacity: 0.9;
    }

    /* ------------------------------------------------------------------- */
    /* CUSTOM POPUP STYLES */
    /* ------------------------------------------------------------------- */
    #custom-popup-box {
        position: absolute; 
        z-index: 1000;      
        max-width: 300px;
        min-width: 250px;
        box-shadow: 0 4px 8px rgba(0,0,0,0.2);
        border: 1px solid #ddd;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.2s, visibility 0.2s;
    }
    .custom-popup-active {
        opacity: 1 !important;
        visibility: visible !important;
    }

    /* ------------------------------------------------------------------- */
    /* PRINT STYLES FIX: Ensures background colors are printed */
    /* ------------------------------------------------------------------- */
    @media print {
        /* FIX: Add this to force backgrounds to print */
        .plot-box {
            -webkit-print-color-adjust: exact !important;
            color-adjust: exact !important;
        }

        body * { visibility: hidden; }
        .print-container, .print-container * { visibility: visible !important; }
        .print-container {
            position: absolute; left: 0; top: 0; width: 100%; padding: 20px;
        }
        .plot-grid {
            grid-template-columns: repeat(5, minmax(100px, 1fr)) !important; 
            gap: 10px !important;
        }
        .plot-box {
            border: 1px solid #000 !important;
            box-shadow: none !important;
            /* Ensure text is visible over the background color */
            text-shadow: 1px 1px 2px rgba(0,0,0,0.7) !important;
            color: #fff !important; 
        }
        #print-map-btn, #custom-popup-box { display: none !important; }
    }
    

    /* ------------------------------------------------------------------- */
    /* Country Code Field Flag (property_users and enquiry) */
    /* ------------------------------------------------------------------- */

    .toggle-password{
            position: absolute;
    right: 13px;
    background: #fff;
    height: unset;
    border: none!important;
    padding: 0!important;
    top: 14px;
    }

    .login-card-body .input-group .form-control{padding: 10px;}


    .select2-flag + .select2-container {
    width: 150px !important;
    }
    .select2-container--default .select2-selection--single {
        height: 38px !important;
        border-radius: 6px 0 0 6px !important;
        border-right: none;
    }
    .select2-container--default .select2-selection--single .select2-selection__rendered {
        line-height: 36px !important;
        padding-left: 10px;
    }
    .select2-container--default .select2-selection--single .select2-selection__arrow {
        height: 36px;
        right: 8px;
    }
    .input-group .form-control {
        border-radius: 0 6px 6px 0;
    }
    .flag-icon {
        font-size: 1.4em;
        margin-right: 8px;
    }





.sidebar-collapse aside.main-sidebar.elevation-4.sidebar-light-primary {
    width: 4.6rem !important;
}


#enquiryStatusChart {
    text-align: center;
    display: flex;
    justify-content: center;
    margin: 0 auto;
    width: 350px !important;
    height: 350px !important;
}

/* Remove forced 100% width for Chart.js charts to prevent stretching and hover issues */
#salesVolumeChart, #staffBudgetChart {
    width: auto;
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}

.sidebar-toggle-btn i {color:rgb(94, 53, 177)}
.userfropdown .widget-user-header ,.userfropdown  .card-footer{border-radius: 15px;}
    /* ------------------------------------------------------------------- */
    /* END OF FILE */
    /* ------------------------------------------------------------------- */