/* ============================================================
   POS Khata System — Professional Dark Theme
   ============================================================ */

:root {
  --clr-bg:        #0d1117;
  --clr-surface:   #161b22;
  --clr-surface-2: #1c2330;
  --clr-surface-3: #212936;
  --clr-border:    rgba(255,255,255,0.08);
  --clr-border-hi: rgba(255,255,255,0.14);
  --clr-text:      #e6edf3;
  --clr-text-muted:#8b949e;
  --clr-text-dim:  #6e7681;
  --clr-accent:    #00e5ff;
  --clr-accent-2:  #39ff9f;
  --clr-accent-3:  #f78166;
  --clr-accent-4:  #d2a8ff;
  --clr-amber:     #e3b341;
  --clr-success:   #238636;
  --clr-success-hi:#2ea043;
  --clr-danger:    #da3633;
  --clr-danger-hi: #f85149;
  --clr-warning:   #9e6a03;
  --clr-warning-hi:#e3b341;
  --clr-info:      #0969da;
  --clr-info-hi:   #388bfd;
  --nav-h:         56px;
  --nav-bg:        rgba(3,8,18,0.96);
  --nav-border:    rgba(0,229,255,0.28);
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.4);
  --shadow-md: 0 4px 16px rgba(0,0,0,0.5);
  --shadow-lg: 0 8px 30px rgba(0,0,0,0.6);
  --font-body: 'Plus Jakarta Sans', system-ui, sans-serif;
  --font-mono: 'DM Mono', 'Consolas', monospace;
}

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

body {
  font-family: var(--font-body);
  font-size: 14px;
  line-height: 1.6;
  color: var(--clr-text);
  background-color: var(--clr-bg);
  background-image:
    radial-gradient(ellipse 80% 40% at 50% -10%, rgba(88,166,255,0.07), transparent),
    radial-gradient(ellipse 60% 30% at 90% 80%, rgba(63,185,80,0.04), transparent);
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
main{flex:1}
a{color:var(--clr-accent)}
a:hover{color:#79c0ff}

::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:var(--clr-surface)}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.18);border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.28)}

/* ── NAVBAR ── */
.pos-navbar {
  min-height: var(--nav-h);
  background:
    linear-gradient(90deg, rgba(0,229,255,0.08), transparent 24%, rgba(57,255,159,0.045)),
    linear-gradient(180deg, rgba(5,12,25,0.98), rgba(2,6,15,0.96)) !important;
  border-bottom: 1px solid var(--nav-border);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 1px 0 rgba(255,255,255,0.06) inset,0 12px 34px rgba(0,0,0,0.52),0 0 28px rgba(0,229,255,0.08);
  z-index: 1030;
}
.pos-navbar::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(0,229,255,.75),rgba(57,255,159,.55),transparent);pointer-events:none}
.navbar-brand{color:#f7fdff!important;font-weight:800;font-size:15px;text-decoration:none;letter-spacing:.01em}
.brand-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:linear-gradient(135deg,#00b8ff,#00e5ff 55%,#39ff9f);border:1px solid rgba(255,255,255,.22);border-radius:10px;font-size:16px;color:#03111d;flex-shrink:0;box-shadow:0 0 18px rgba(0,229,255,.32)}
.brand-icon i{font-weight:700}
.brand-name{color:#f7fdff;text-shadow:0 0 14px rgba(0,229,255,.26)}

.pos-navbar .nav-link{color:#a8b7c9!important;font-size:13px;font-weight:600;padding:7px 10px!important;border:1px solid transparent;border-radius:8px;display:flex;align-items:center;gap:6px;transition:color .15s,background .15s,border-color .15s,box-shadow .15s;white-space:nowrap}
.pos-navbar .nav-link i{font-size:14px;flex-shrink:0;color:#7bdff1;opacity:.9}
.pos-navbar .nav-link:hover{color:#fff!important;background:rgba(0,229,255,0.08);border-color:rgba(0,229,255,0.20);box-shadow:0 0 16px rgba(0,229,255,.10)}
.pos-navbar .nav-link:hover i{color:var(--clr-accent)}
.pos-navbar .nav-link.active{color:#03111d!important;background:linear-gradient(135deg,#00e5ff,#39ff9f)!important;border-color:rgba(255,255,255,0.45);box-shadow:0 0 18px rgba(0,229,255,.38),0 0 26px rgba(57,255,159,.14);position:relative}
.pos-navbar .nav-link.active i{color:#03111d;opacity:1}
.pos-navbar .nav-link.active::after{content:'';position:absolute;bottom:-9px;left:10px;right:10px;height:2px;background:linear-gradient(90deg,var(--clr-accent),var(--clr-accent-2));border-radius:2px 2px 0 0;box-shadow:0 0 12px rgba(0,229,255,.7)}

.nav-pos-sale{background:rgba(57,255,159,0.10)!important;color:#baffdc!important;border:1px solid rgba(57,255,159,0.30)!important;font-weight:800!important}
.nav-pos-sale i{color:var(--clr-accent-2)!important}
.nav-pos-sale:hover{background:linear-gradient(135deg,rgba(57,255,159,0.24),rgba(0,229,255,0.12))!important;color:#fff!important;border-color:rgba(57,255,159,0.55)!important}
.pos-navbar .nav-pos-sale.active{color:#03111d!important;background:linear-gradient(135deg,#00e5ff,#39ff9f)!important;border-color:rgba(255,255,255,0.45)!important;box-shadow:0 0 18px rgba(0,229,255,.38),0 0 26px rgba(57,255,159,.14)!important}
.pos-navbar .nav-pos-sale.active i{color:#03111d!important;opacity:1}
.pos-navbar .nav-pos-sale.active::after{background:linear-gradient(90deg,var(--clr-accent),var(--clr-accent-2))!important}

.pos-dropdown{background:#050c18!important;border:1px solid rgba(0,229,255,.24)!important;border-radius:var(--radius-md)!important;box-shadow:0 18px 48px rgba(0,0,0,.72),0 0 24px rgba(0,229,255,.10)!important;padding:6px!important;min-width:200px}
.pos-dropdown .dropdown-item{color:#a8b7c9!important;font-size:13px;font-weight:600;padding:8px 12px!important;border-radius:var(--radius-sm)!important;display:flex;align-items:center;transition:background .12s,color .12s}
.pos-dropdown .dropdown-item:hover,.pos-dropdown .dropdown-item:focus{background:rgba(0,229,255,0.12)!important;color:#fff!important}
.pos-dropdown .dropdown-item.active{background:linear-gradient(135deg,rgba(0,229,255,.22),rgba(57,255,159,.12))!important;color:#fff!important}

.user-avatar{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:rgba(0,229,255,0.12);border:1px solid rgba(0,229,255,0.30);border-radius:50%;color:var(--clr-accent);font-size:14px;box-shadow:0 0 14px rgba(0,229,255,.12)}
.user-name{color:#a8b7c9;font-size:13px;font-weight:600}
.nav-user{cursor:pointer}
.nav-user.dropdown-toggle::after{margin-left:2px;color:var(--clr-text-muted)}
.nav-logout{color:#a8b7c9!important}
.nav-logout:hover{color:#ff7a96!important;background:rgba(255,69,111,0.10)!important;border-color:rgba(255,69,111,.24)!important}
.dropdown-divider{border-color:var(--clr-border);opacity:1;margin:6px 4px}
.navbar-toggler{border-color:rgba(0,229,255,.34)!important;padding:4px 8px;box-shadow:0 0 12px rgba(0,229,255,.10)}
.navbar-toggler:focus{box-shadow:0 0 0 3px rgba(0,229,255,.18)!important}
.navbar-toggler-icon{filter:invert(1) drop-shadow(0 0 4px rgba(0,229,255,.6))}

.shortcut-bar{background:rgba(21,27,35,0.8);border-bottom:1px solid var(--nav-border);font-size:11px;color:var(--clr-text-dim)}
.shortcut-bar .sep{margin:0 6px;opacity:.4}

/* ── CARDS ── */
.card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--clr-text);transition:border-color .2s}
.card:hover{border-color:var(--clr-border-hi)}
.card-header{background:var(--clr-surface-2)!important;border-bottom:1px solid var(--clr-border)!important;border-radius:calc(var(--radius-md) - 1px) calc(var(--radius-md) - 1px) 0 0!important;font-weight:600;font-size:14px;color:var(--clr-text)!important;padding:12px 16px}
.card-body{padding:16px}
.card-header.bg-primary{background:#1f6feb!important;color:#fff!important}
.card-header.bg-success{background:var(--clr-success)!important;color:#fff!important}
.card-header.bg-danger{background:var(--clr-danger)!important;color:#fff!important}
.card-header.bg-warning{background:var(--clr-warning-hi)!important;color:#0d1117!important}
.card-header.bg-info{background:var(--clr-info)!important;color:#fff!important}
.card-header.bg-secondary{background:#30363d!important;color:var(--clr-text)!important}
.card-header.bg-dark{background:#21262d!important;color:var(--clr-text)!important}

/* ── STAT CARDS ── */
.stat-card{border-radius:var(--radius-md);padding:20px;color:#fff;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,0.08);box-shadow:var(--shadow-md)}
.stat-card::before{content:'';position:absolute;top:-20px;right:-20px;width:100px;height:100px;background:rgba(255,255,255,0.06);border-radius:50%}
.stat-card::after{content:'';position:absolute;bottom:-30px;right:-10px;width:80px;height:80px;background:rgba(255,255,255,0.04);border-radius:50%}
.stat-card .stat-value{font-size:26px;font-weight:700;line-height:1.2}
.stat-card .stat-label{font-size:12px;opacity:.8;font-weight:500;margin-top:2px}
.stat-card .stat-icon{font-size:32px;opacity:.3;position:relative;z-index:1}
.stat-card.bg-primary{background:linear-gradient(135deg,#1158cc,#1f6feb)!important;border-color:rgba(31,111,235,.4)!important}
.stat-card.bg-success{background:linear-gradient(135deg,#1a7f37,#2ea043)!important;border-color:rgba(46,160,67,.4)!important}
.stat-card.bg-danger{background:linear-gradient(135deg,#b91c1c,#da3633)!important;border-color:rgba(218,54,51,.4)!important}
.stat-card.bg-info{background:linear-gradient(135deg,#0766ad,#1d8bdf)!important;border-color:rgba(29,139,223,.4)!important}
.stat-card.bg-warning{background:linear-gradient(135deg,#9e6a03,#d4a017)!important;border-color:rgba(212,160,23,.4)!important}

/* ── TABLES ── */
.table{--bs-table-bg:transparent;--bs-table-color:var(--clr-text);--bs-table-border-color:var(--clr-border);--bs-table-striped-bg:rgba(255,255,255,0.025);--bs-table-hover-bg:rgba(88,166,255,0.07);font-size:13px}
.table th{background:var(--clr-surface-2)!important;color:var(--clr-text-muted)!important;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.04em;border-color:var(--clr-border)!important;padding:10px 12px}
.table td{vertical-align:middle;border-color:var(--clr-border)!important;padding:10px 12px;color:var(--clr-text)}
.table-responsive{border-radius:var(--radius-md);border:1px solid var(--clr-border)}
.table-light{--bs-table-bg:var(--clr-surface-2)!important;--bs-table-color:var(--clr-text)!important}
.table-success{--bs-table-bg:rgba(35,134,54,0.15)!important}
.table-danger{--bs-table-bg:rgba(218,54,51,0.15)!important}
.table-warning{--bs-table-bg:rgba(158,106,3,0.15)!important;--bs-table-color:var(--clr-text)!important}

div.dataTables_wrapper{color:var(--clr-text)}
div.dataTables_wrapper .dataTables_length select,
div.dataTables_wrapper .dataTables_filter input{background:var(--clr-surface-2)!important;border:1px solid var(--clr-border)!important;color:var(--clr-text)!important;border-radius:var(--radius-sm);padding:4px 8px}
div.dataTables_wrapper .dataTables_paginate .paginate_button{color:var(--clr-text-muted)!important}
div.dataTables_wrapper .dataTables_paginate .paginate_button.current,
div.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover{background:var(--clr-accent)!important;border-color:var(--clr-accent)!important;color:#fff!important;border-radius:var(--radius-sm)}
div.dataTables_wrapper .dataTables_paginate .paginate_button:hover{background:rgba(88,166,255,0.15)!important;border-color:var(--clr-border)!important;color:var(--clr-text)!important;border-radius:var(--radius-sm)}
div.dataTables_wrapper .dataTables_info{color:var(--clr-text-muted);font-size:12px}

/* ── FORMS ── */
.form-control,.form-select{background:var(--clr-surface-2)!important;border:1px solid rgba(255,255,255,0.12)!important;color:var(--clr-text)!important;border-radius:var(--radius-sm);font-size:13px;transition:border-color .15s,box-shadow .15s}
.form-control::placeholder{color:var(--clr-text-dim)}
.form-control:focus,.form-select:focus{border-color:var(--clr-accent)!important;box-shadow:0 0 0 3px rgba(88,166,255,0.15)!important;outline:none}
.input-group-text{background:var(--clr-surface-3)!important;border:1px solid rgba(255,255,255,0.12)!important;color:var(--clr-text-muted)!important;font-size:13px}
.form-label{color:var(--clr-text-muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}
.form-text{color:var(--clr-text-dim);font-size:12px}
.form-check-input{background-color:var(--clr-surface-2);border-color:var(--clr-border-hi)}
.form-check-input:checked{background-color:var(--clr-accent);border-color:var(--clr-accent)}

.select2-container--bootstrap-5 .select2-selection{background:var(--clr-surface-2)!important;border:1px solid rgba(255,255,255,0.12)!important;color:var(--clr-text)!important}
.select2-container--bootstrap-5 .select2-dropdown{background:var(--clr-surface)!important;border:1px solid var(--clr-border)!important;border-radius:var(--radius-md)!important}
.select2-container--bootstrap-5 .select2-selection--single .select2-selection__rendered{color:var(--clr-text)!important}
.select2-container--bootstrap-5 .select2-selection__placeholder{color:var(--clr-text-muted)!important}
.select2-container--bootstrap-5 .select2-selection--single .select2-selection__arrow b{border-color:var(--clr-text-muted) transparent transparent transparent!important}
.select2-container--bootstrap-5 .select2-results__option{color:var(--clr-text)!important;font-size:13px}
.select2-container--bootstrap-5 .select2-results__option--highlighted{background:rgba(88,166,255,0.15)!important;color:#fff!important}
.select2-container--bootstrap-5 .select2-search__field{background:var(--clr-surface-2)!important;border:1px solid var(--clr-border)!important;color:var(--clr-text)!important}

/* ── BUTTONS ── */
.btn{font-size:13px;font-weight:600;border-radius:var(--radius-sm);padding:7px 16px;transition:transform .1s,box-shadow .15s,background .15s;border-width:1px}
.btn:active{transform:translateY(1px)}
.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,0.3)}
.btn-primary{background:#1f6feb!important;border-color:#388bfd!important;color:#fff!important}
.btn-primary:hover{background:#388bfd!important}
.btn-success{background:var(--clr-success)!important;border-color:var(--clr-success-hi)!important;color:#fff!important}
.btn-success:hover{background:var(--clr-success-hi)!important}
.btn-danger{background:var(--clr-danger)!important;border-color:var(--clr-danger-hi)!important;color:#fff!important}
.btn-danger:hover{background:var(--clr-danger-hi)!important}
.btn-warning{background:var(--clr-warning-hi)!important;border-color:var(--clr-warning-hi)!important;color:#0d1117!important}
.btn-info{background:var(--clr-info)!important;border-color:var(--clr-info-hi)!important;color:#fff!important}
.btn-secondary{background:#21262d!important;border-color:#30363d!important;color:var(--clr-text)!important}
.btn-secondary:hover{background:#30363d!important}
.btn-dark{background:#0d1117!important;border-color:#30363d!important;color:var(--clr-text)!important}
.btn-outline-primary{border-color:var(--clr-accent)!important;color:var(--clr-accent)!important;background:transparent!important}
.btn-outline-primary:hover{background:rgba(88,166,255,0.15)!important;color:#79c0ff!important}
.btn-outline-success{border-color:var(--clr-accent-2)!important;color:var(--clr-accent-2)!important;background:transparent!important}
.btn-outline-success:hover{background:rgba(63,185,80,0.15)!important}
.btn-outline-danger{border-color:var(--clr-danger-hi)!important;color:var(--clr-danger-hi)!important;background:transparent!important}
.btn-outline-danger:hover{background:rgba(248,81,73,0.15)!important}
.btn-outline-secondary{border-color:var(--clr-border-hi)!important;color:var(--clr-text-muted)!important;background:transparent!important}
.btn-outline-secondary:hover{background:rgba(255,255,255,0.07)!important;color:var(--clr-text)!important}
.btn-outline-warning{border-color:var(--clr-amber)!important;color:var(--clr-amber)!important;background:transparent!important}
.btn-outline-warning:hover{background:rgba(227,179,65,0.12)!important}
.btn-outline-dark{border-color:var(--clr-border-hi)!important;color:var(--clr-text-muted)!important;background:transparent!important}
.btn-outline-dark:hover{background:rgba(255,255,255,0.07)!important;color:var(--clr-text)!important}
.btn-sm{padding:4px 10px;font-size:12px}
.btn-lg{padding:10px 22px;font-size:15px}
.btn-xs{padding:2px 7px;font-size:11px;line-height:1.35;border-radius:5px}

/* ── BADGES ── */
.badge{font-size:11px;font-weight:600;border-radius:20px;padding:3px 8px}
.badge.bg-primary{background:#1f6feb!important}
.badge.bg-success{background:var(--clr-success)!important}
.badge.bg-danger{background:var(--clr-danger)!important}
.badge.bg-warning{background:var(--clr-warning-hi)!important;color:#0d1117!important}
.badge.bg-info{background:var(--clr-info)!important}
.badge.bg-secondary{background:#21262d!important;color:var(--clr-text)!important;border:1px solid var(--clr-border)}
.badge.bg-dark{background:#161b22!important;color:var(--clr-text)!important;border:1px solid var(--clr-border)}

/* ── MODALS ── */
.modal-content{background:var(--clr-surface)!important;border:1px solid var(--clr-border-hi)!important;border-radius:var(--radius-lg)!important;box-shadow:0 20px 60px rgba(0,0,0,0.7)!important;color:var(--clr-text)!important}
.modal-header{background:var(--clr-surface-2)!important;border-bottom:1px solid var(--clr-border)!important;border-radius:var(--radius-lg) var(--radius-lg) 0 0!important;padding:16px 20px}
.modal-header.bg-primary{background:linear-gradient(135deg,#1158cc,#1f6feb)!important}
.modal-header.bg-success{background:linear-gradient(135deg,#1a7f37,#2ea043)!important}
.modal-header.bg-danger{background:linear-gradient(135deg,#b91c1c,#da3633)!important}
.modal-title{font-weight:700;font-size:15px}
.modal-body{padding:20px}
.modal-footer{border-top:1px solid var(--clr-border);background:var(--clr-surface-2);border-radius:0 0 var(--radius-lg) var(--radius-lg)}
.btn-close{filter:invert(0.8)}

.swal2-popup{background:var(--clr-surface)!important;border:1px solid var(--clr-border-hi)!important;border-radius:var(--radius-lg)!important;color:var(--clr-text)!important}
.swal2-title{color:var(--clr-text)!important}
.swal2-html-container{color:var(--clr-text-muted)!important}
.swal2-input,.swal2-textarea{background:var(--clr-surface-2)!important;border:1px solid var(--clr-border)!important;color:var(--clr-text)!important}

/* ── ALERTS ── */
.alert{border-radius:var(--radius-md);border-width:1px;font-size:13px}
.alert-success{background:rgba(35,134,54,0.15)!important;border-color:rgba(46,160,67,0.3)!important;color:#3fb950!important}
.alert-danger{background:rgba(218,54,51,0.15)!important;border-color:rgba(248,81,73,0.3)!important;color:#f85149!important}
.alert-warning{background:rgba(158,106,3,0.15)!important;border-color:rgba(227,179,65,0.3)!important;color:var(--clr-amber)!important}
.alert-info{background:rgba(9,105,218,0.15)!important;border-color:rgba(56,139,253,0.3)!important;color:#79c0ff!important}
.alert-primary{background:rgba(31,111,235,0.15)!important;border-color:rgba(56,139,253,0.3)!important;color:#79c0ff!important}

/* ── POS SALE ── */
#posItems{max-height:380px;overflow-y:auto}
.pos-product-row{cursor:pointer;transition:background .12s}
.pos-product-row:hover{background:rgba(88,166,255,0.08)!important}
#productSearchResults,#saleSearchResults,#purchaseSearchResults{position:absolute;z-index:9999;background:var(--clr-surface)!important;border:1px solid rgba(88,166,255,0.3)!important;border-radius:var(--radius-md);max-height:250px;overflow-y:auto;width:100%;box-shadow:var(--shadow-lg)!important}
#productSearchResults .search-item,#saleSearchResults .search-item,#purchaseSearchResults .search-item{color:var(--clr-text);padding:9px 14px;cursor:pointer;border-bottom:1px solid var(--clr-border);font-size:13px;transition:background .1s}
#productSearchResults .search-item:hover,#saleSearchResults .search-item:hover,#purchaseSearchResults .search-item:hover{background:rgba(88,166,255,0.12)}
#productSearchResults .search-item:last-child,#saleSearchResults .search-item:last-child,#purchaseSearchResults .search-item:last-child{border-bottom:none}
#barcodeInput{border-color:rgba(63,185,80,0.4)!important}
#barcodeInput:focus{border-color:var(--clr-accent-2)!important;box-shadow:0 0 0 3px rgba(63,185,80,0.15)!important}
.sale-total-box,.p-2.bg-light,#balanceInfo{background:var(--clr-surface-2)!important;border:1px solid var(--clr-border)!important;border-radius:var(--radius-md)}
.low-stock{color:var(--clr-danger-hi);font-weight:600}

/* Products */
.products-toolbar h5{font-weight:800;color:var(--clr-text)}
#productsTable code{color:var(--clr-accent);background:rgba(0,229,255,0.08);border:1px solid rgba(0,229,255,0.14);border-radius:5px;padding:2px 6px;font-size:12px}
#productsTable td:last-child{white-space:nowrap}

/* Purchase billing */
.purchase-billing-card{position:sticky;top:78px}
.billing-line{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--clr-border);margin-bottom:14px}
.billing-line span,.purchase-net-total small,.purchase-balance-box small{color:var(--clr-text-muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em;font-weight:700}
.billing-line strong{font-size:20px;color:var(--clr-text)}
.purchase-net-total,.purchase-balance-box{border:1px solid rgba(0,229,255,.18);border-radius:var(--radius-md);padding:14px 16px;background:linear-gradient(135deg,rgba(0,229,255,.10),rgba(57,255,159,.06));display:flex;align-items:center;justify-content:space-between}
.purchase-net-total strong{font-size:26px;color:var(--clr-accent-2)}
.purchase-balance-box{background:linear-gradient(135deg,rgba(227,179,65,.13),rgba(255,255,255,.03));border-color:rgba(227,179,65,.22)}
.purchase-balance-box strong{font-size:22px;color:var(--clr-amber)}
#purchaseItemsTable tbody td{vertical-align:middle}

.customer-select-wrap,.supplier-select-wrap{display:flex;align-items:stretch;width:100%;gap:0}
.customer-select-wrap > .btn,.supplier-select-wrap > .btn{border-radius:var(--radius-sm) 0 0 var(--radius-sm);width:42px;flex:0 0 42px;padding-left:0;padding-right:0}
.customer-select-wrap .select2-container,.supplier-select-wrap .select2-container{flex:1 1 auto;width:auto!important}
.customer-select-wrap .select2-container--bootstrap-5 .select2-selection,.supplier-select-wrap .select2-container--bootstrap-5 .select2-selection{border-radius:0 var(--radius-sm) var(--radius-sm) 0!important;min-height:31px}

/* Sliding list details */
.detail-row > td{background:rgba(0,229,255,.035)!important;border-top:0!important}
.detail-slide{display:none;padding:16px;background:linear-gradient(180deg,rgba(14,26,45,.96),rgba(5,12,24,.96));border-top:1px solid rgba(0,229,255,.18);border-bottom:1px solid rgba(0,229,255,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.detail-toolbar{padding-bottom:10px;border-bottom:1px solid var(--clr-border);margin-bottom:8px}
.detail-slide h6{font-weight:800;color:var(--clr-text);font-size:13px;text-transform:uppercase;letter-spacing:.04em}

/* Account Center */
.account-drawer-toggle{position:fixed;left:18px;bottom:18px;z-index:1045;border:1px solid rgba(0,229,255,.35);background:linear-gradient(135deg,#00e5ff,#39ff9f);color:#03111d;box-shadow:0 0 24px rgba(0,229,255,.28);font-size:13px;font-weight:800;border-radius:10px;padding:10px 16px}
.account-drawer{position:fixed;left:18px;bottom:0;width:min(420px,calc(100vw - 36px));max-height:430px;z-index:1050;background:linear-gradient(180deg,rgba(14,26,45,.98),rgba(5,12,24,.98));border:1px solid rgba(0,229,255,.25);border-radius:14px 14px 0 0;box-shadow:0 -18px 48px rgba(0,0,0,.45);transform:translateY(calc(100% + 18px));transition:transform .24s ease;overflow:visible}
.account-drawer.open{transform:translateY(0)}
.account-drawer-head{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--clr-border)}
.account-drawer form{max-height:360px;overflow:visible}
.account-center .nav-tabs .nav-link{white-space:nowrap}

/* ── UTILITIES ── */
.text-muted{color:var(--clr-text-muted)!important}
.text-primary{color:var(--clr-accent)!important}
.text-success{color:var(--clr-accent-2)!important}
.text-danger{color:var(--clr-danger-hi)!important}
.text-warning{color:var(--clr-amber)!important}
.text-info{color:#79c0ff!important}
.text-dark{color:var(--clr-text)!important}
.text-white{color:#fff!important}
.bg-light{background:var(--clr-surface-2)!important}
.bg-white{background:var(--clr-surface)!important}
.border{border-color:var(--clr-border)!important}
.border-top{border-top-color:var(--clr-border)!important}
.border-bottom{border-bottom-color:var(--clr-border)!important}

.list-group-item{background:var(--clr-surface)!important;border-color:var(--clr-border)!important;color:var(--clr-text)!important}
.list-group-item:hover{background:var(--clr-surface-2)!important}

.nav-tabs{border-bottom:1px solid var(--clr-border)}
.nav-tabs .nav-link{color:var(--clr-text-muted);border:none;border-bottom:2px solid transparent;border-radius:0;padding:8px 16px;font-size:13px;font-weight:500}
.nav-tabs .nav-link:hover{color:var(--clr-text);border-bottom-color:var(--clr-border-hi)}
.nav-tabs .nav-link.active{background:transparent;color:var(--clr-accent);border-bottom:2px solid var(--clr-accent)}
.tab-content{padding-top:16px}

.page-link{background:var(--clr-surface)!important;border-color:var(--clr-border)!important;color:var(--clr-text-muted)!important}
.page-link:hover{background:var(--clr-surface-2)!important;color:var(--clr-text)!important}
.page-item.active .page-link{background:var(--clr-accent)!important;border-color:var(--clr-accent)!important;color:#fff!important}

/* ── FOOTER ── */
footer{background:var(--clr-surface)!important;border-top:1px solid var(--clr-border)!important;color:var(--clr-text-dim)!important;font-size:12px;padding:10px 0}

/* ── AUTH PAGES ── */
.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--clr-bg);background-image:radial-gradient(ellipse 70% 50% at 50% 0%,rgba(88,166,255,.1),transparent),radial-gradient(ellipse 60% 40% at 0% 100%,rgba(63,185,80,.06),transparent)}
.auth-page .card{max-width:440px;width:100%;border-color:var(--clr-border-hi)!important;box-shadow:var(--shadow-lg)!important}
.auth-page .card-header{background:linear-gradient(135deg,#1158cc,#1f6feb)!important;color:#fff!important;text-align:center;padding:28px 20px;border-radius:calc(var(--radius-md) - 1px) calc(var(--radius-md) - 1px) 0 0!important}
.auth-page .card-header h4{font-weight:700;margin:0}

/* ── RECEIPT ── */
.receipt-box{max-width:400px;margin:0 auto;font-family:var(--font-mono);font-size:13px;border:1px dashed var(--clr-border-hi);padding:16px;border-radius:var(--radius-sm);background:var(--clr-surface)}
.receipt-box hr{border-style:dashed;border-color:var(--clr-border)}
.print-only{display:none}

@media print{
  body{background:#fff!important;color:#000!important}
  .no-print,.navbar,footer,.btn,nav,.pos-navbar{display:none!important}
  .print-only{display:block!important}
  .card{box-shadow:none;border:1px solid #ddd;background:#fff!important}
  main{padding:0!important}
}

@media(max-width:991.98px){
  .pos-navbar{height:auto}
  #mainNav{background:var(--clr-surface);border-top:1px solid var(--clr-border);padding:8px 0 12px;margin-top:4px;border-radius:0 0 var(--radius-md) var(--radius-md)}
  .pos-navbar .nav-link{padding:8px 14px!important}
  .pos-navbar .nav-link.active::after{display:none}
  .pos-dropdown{border:none!important;background:var(--clr-surface-2)!important}
  .nav-user{padding:8px 14px}
}
@media(max-width:575.98px){
  .stat-card .stat-value{font-size:20px}
  .card-body{padding:12px}
}
