
*{box-sizing:border-box}body{margin:0;background:#f3f5f7;color:#111827;font-family:Arial,Helvetica,sans-serif;font-size:16px}
header{background:#111827;color:white;padding:18px 28px}.brand{font-size:32px;font-weight:800}.brand span{font-weight:600}
nav{display:flex;flex-wrap:wrap;gap:0;background:white;border-bottom:1px solid #ddd;padding:0 14px}nav a{padding:16px 13px;text-decoration:none;color:#111;font-weight:600}nav a:hover{background:#eef2ff}
.safe{margin:28px 18px 18px;padding:18px;border:1px solid #86efac;background:#ecfdf5;border-radius:12px}
main{padding:0 18px 50px}h1{font-size:34px;margin:28px 0}h2{margin-top:0}.cards{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:14px;margin-bottom:22px}
.card,.panel{background:white;border:1px solid #ddd;border-radius:14px;padding:22px;box-shadow:0 1px 3px #00000010}.card label{display:block;color:#64748b;margin-bottom:8px}.card b{font-size:24px}
.panel{margin:18px 0;overflow:auto}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form label{display:block}.form input,.form select{width:100%}
input,select{padding:11px;border:1px solid #cbd5e1;border-radius:8px;font-size:15px;background:white}button,.btn{display:inline-block;background:#111827;color:white;border:0;border-radius:8px;padding:11px 15px;font-size:15px;cursor:pointer;text-decoration:none}button:hover,.btn:hover{opacity:.9}
.form button{grid-column:1/-1}.inline{display:flex;gap:10px;align-items:center}.inline input,.inline select{width:auto}
table{width:100%;border-collapse:collapse}th,td{padding:11px;border-bottom:1px solid #e5e7eb;text-align:left;white-space:nowrap}th{background:#f8fafc}
.danger{color:#dc2626;font-weight:700}.dangerbtn{background:#b91c1c;padding:7px 9px}.flash{margin:10px 18px;padding:12px;border-radius:8px}.flash.ok{background:#dcfce7;color:#166534}.flash.err{background:#fee2e2;color:#991b1b}
.filters{display:flex;gap:12px;align-items:end}.filters label{display:flex;flex-direction:column;gap:5px}.pos{display:grid;grid-template-columns:1fr 1.3fr;gap:18px}.product{display:block;width:100%;text-align:left;margin:7px 0;background:#f8fafc;color:#111;border:1px solid #ddd}.product small{display:block;color:#64748b;margin-top:4px}.line{display:grid;grid-template-columns:1fr 90px 120px 40px;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid #eee}.line span small{display:block;color:#64748b}.line input{width:80px}.total{display:flex;justify-content:space-between;font-size:24px;margin:15px 0}.big{width:100%;font-size:18px;margin-top:10px}.okbox{margin-top:12px;padding:12px;background:#dcfce7;border-radius:8px}.errbox{margin-top:12px;padding:12px;background:#fee2e2;border-radius:8px}
pre{background:#111827;color:#e5e7eb;padding:15px;overflow:auto}@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}.grid2,.pos{grid-template-columns:1fr}.form{grid-template-columns:1fr}nav a{padding:12px 8px}.brand{font-size:23px}}

/* V17: pembayaran hutang/piutang tanpa tabel horizontal scroll */
.debt-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.debt-panel{overflow:visible}
.debt-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.debt-title h2{margin:0}
.debt-count{font-size:13px;color:#64748b;background:#f1f5f9;padding:6px 9px;border-radius:999px}
.debt-card{border:1px solid #e2e8f0;border-radius:12px;padding:14px;margin:10px 0;background:#fff}
.debt-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.debt-name{font-size:17px}
.debt-balance{font-size:13px;color:#64748b;text-align:right}.debt-balance strong{display:block;color:#111827;font-size:17px;margin-top:2px}
.pay-box{display:grid;grid-template-columns:1fr 1fr auto;gap:9px;align-items:end;background:#f8fafc;border-radius:10px;padding:10px}
.pay-box label{font-size:12px;color:#475569;display:flex;flex-direction:column;gap:5px}
.pay-box input,.pay-box select{width:100%;font-size:14px;padding:10px}
.pay-btn{white-space:nowrap;padding:10px 13px}
.paid-note{background:#f0fdf4;color:#166534;border-radius:8px;padding:10px;font-size:14px}
.adjust-box{margin-top:9px;font-size:13px;color:#64748b}.adjust-box summary{cursor:pointer}
.adjust-form{display:flex;gap:8px;margin-top:8px}.adjust-form input{flex:1;min-width:0}.adjust-form button{padding:9px 12px}
.empty{color:#64748b;padding:12px 0}
@media(max-width:1000px){.debt-grid{grid-template-columns:1fr}.pay-box{grid-template-columns:1fr}.pay-btn{width:100%}.debt-head{align-items:flex-start}.adjust-form{flex-direction:column}.adjust-form button{width:100%}}

.stock-cards{grid-template-columns:2fr repeat(3,1fr)}
@media(max-width:1000px){.stock-cards{grid-template-columns:1fr 1fr}}

.customer-results{display:flex;flex-direction:column;gap:4px;margin:4px 0 8px;max-height:220px;overflow:auto}
.customer-result{display:flex;flex-direction:column;text-align:left;padding:8px;border:1px solid #ddd;background:#fff;cursor:pointer}
.customer-result small{margin-top:3px}
.customer-selected{padding:8px;margin:4px 0 8px;border:1px solid #ddd;background:#f7f7f7}
.customer-selected button{float:right;padding:3px 7px}
.customer-empty{padding:8px;border:1px solid #ddd}
/* V43 UI POS modern - terinspirasi layout kasir desktop */
.pos-head{display:flex;justify-content:space-between;align-items:center;background:#0f67b4;color:#fff;margin:0 -18px 14px;padding:14px 20px}.pos-head h1{margin:2px 0 0;font-size:27px}.crumb{font-size:14px;opacity:.9}.clock{font-size:24px;font-weight:800;letter-spacing:1px}.pos-topbar{display:grid;grid-template-columns:190px 190px minmax(300px,1fr) 170px;gap:8px;background:#f4f7fb;border:1px solid #cbd5e1;padding:10px}.pos-field{display:flex;flex-direction:column;gap:5px}.pos-field label{font-size:12px;font-weight:700;color:#475569}.pos-field input,.pos-field select{height:39px}.customer-inline{display:flex;gap:6px}.customer-inline input{flex:1}.pos-panel{background:#fff;border:1px solid #cbd5e1;margin-top:10px;padding:12px;box-shadow:0 2px 8px #0000000d}.scan-row{display:flex;gap:8px;align-items:center}.scan-icon{width:38px;height:38px;border-radius:6px;background:#0f67b4;color:#fff;display:grid;place-items:center;font-size:21px}.scan-row input{flex:1;height:42px;font-size:17px}.primary{background:#0f67b4;color:#fff;border:0;border-radius:6px;padding:11px 18px;font-weight:800;cursor:pointer}.primary:hover{background:#095895}.secondary,.btn.secondary{background:#e9eef5;color:#1e293b;border:1px solid #cbd5e1}.hint{font-size:12px;color:#64748b;padding:6px 46px}.product-results{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:6px 0}.product-result{display:grid;grid-template-columns:1fr auto auto;gap:8px;text-align:left;background:#f8fafc;color:#0f172a;border:1px solid #dbe3ec;border-radius:6px;padding:9px}.product-result small{display:block;color:#64748b;margin-top:3px}.product-result strong{align-self:center}.product-result em{align-self:center;font-style:normal;font-size:12px;color:#64748b}.table-wrap{overflow:auto;margin-top:8px}.pos-table{min-width:1250px;border-collapse:collapse;width:100%;font-size:13px}.pos-table th{background:#eaf1f8;color:#1e293b;border:1px solid #cbd5e1;padding:8px}.pos-table td{border:1px solid #dbe3ec;padding:6px;background:#fff}.pos-table tr:nth-child(even) td{background:#f8fafc}.qty{width:65px;padding:6px}.disc{width:75px;padding:6px}.danger-mini{background:#dc2626;color:#fff;padding:7px 9px;border-radius:5px}.empty-row{text-align:center;padding:25px!important;color:#64748b}.pos-bottom{display:grid;grid-template-columns:360px 1fr;gap:10px;margin-top:10px}.summary-panel,.pay-panel{background:#fff;border:1px solid #cbd5e1;padding:14px}.summary-row{display:flex;justify-content:space-between;padding:7px 0;color:#475569}.grand-total{display:flex;justify-content:space-between;align-items:center;border-top:2px solid #0f67b4;margin-top:7px;padding-top:12px;font-size:24px;color:#0f67b4}.pay-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:8px}.pay-grid label{font-size:12px;font-weight:700;color:#475569}.pay-grid input,.pay-grid select{display:block;width:100%;margin-top:4px}.action-row{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.save-btn{min-width:240px}.customer-results{position:absolute;z-index:20;background:#fff;border:1px solid #cbd5e1;box-shadow:0 5px 16px #0002;width:min(520px,40vw);max-height:240px;overflow:auto}.pos-topbar .pos-field:nth-child(3){position:relative}.customer-result{display:flex;flex-direction:column;width:100%;text-align:left;background:#fff;color:#111;border:0;border-bottom:1px solid #eee;padding:9px}.customer-result small{color:#64748b;margin-top:2px}.customer-empty{padding:10px}.okbox{background:#dcfce7;color:#166534;padding:10px;margin-top:10px;border-radius:6px}.errbox{background:#fee2e2;color:#991b1b;padding:10px;margin-top:10px;border-radius:6px}
@media(max-width:1100px){.pos-topbar{grid-template-columns:1fr 1fr}.product-results{grid-template-columns:1fr 1fr}.pos-bottom{grid-template-columns:1fr}.pay-grid{grid-template-columns:1fr 1fr}.action-row{flex-wrap:wrap}}


/* V43.1 Kasir Focus: layar penuh untuk monitor kecil + multitasking */
body.cashier-focus{background:#eef2f6;overflow:hidden}
body.cashier-focus header,body.cashier-focus>nav,body.cashier-focus>.safe,body.cashier-focus>.flash{display:none}
body.cashier-focus main{padding:0 8px 8px;height:100vh;overflow:hidden}
.cashier-focusbar{height:48px;background:#0f67b4;color:#fff;display:flex;align-items:center;gap:14px;padding:0 12px;margin:0 -8px;box-shadow:0 2px 5px #0002}
.cashier-brand{font-size:20px;font-weight:900;white-space:nowrap}.cashier-brand span{font-size:13px;font-weight:700;margin-left:7px;opacity:.9}
.cashier-shortcuts{display:flex;gap:4px;flex:1;min-width:0}.cashier-shortcuts a{color:#fff;text-decoration:none;padding:7px 9px;border-radius:5px;font-size:12px;font-weight:700;background:#ffffff18}.cashier-shortcuts a:hover{background:#ffffff30}
.cashier-focusbar .clock{font-size:18px;min-width:78px;text-align:right}
.cashier-workbar{height:44px;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #cbd5e1;border-top:0;padding:5px 8px}
.workspace-title{font-weight:900;font-size:16px;color:#0f172a}.workspace-hint{font-size:11px;color:#64748b;flex:1}.compact-btn{padding:7px 11px;font-size:12px}
.cashier-focus .pos-topbar{grid-template-columns:150px 155px minmax(250px,1fr) 145px;gap:6px;padding:6px;margin-top:6px}
.cashier-focus .pos-field label{font-size:11px}.cashier-focus .pos-field input,.cashier-focus .pos-field select{height:34px;padding:7px;font-size:13px}
.cashier-main-panel{margin-top:6px;padding:7px;display:flex;flex-direction:column;min-height:0;height:calc(100vh - 48px - 44px - 72px - 188px)}
.cashier-focus .scan-row{height:42px;flex:0 0 42px}
.cashier-focus .scan-row .scan-clear-btn{height:38px;padding:8px 14px;background:#dc2626;color:#fff;border:0;border-radius:6px;font-weight:800;cursor:pointer}
.cashier-focus .scan-row .scan-clear-btn:hover{background:#b91c1c}
.cashier-focus .scan-row input{height:38px;font-size:15px}.cashier-focus .scan-icon{height:38px;width:38px}.cashier-focus .scan-row .primary{height:38px;padding:8px 16px}
.cashier-focus .hint{padding:3px 42px;font-size:10px;flex:0 0 17px}
.cashier-focus .product-results{position:relative;left:auto;right:auto;top:auto;z-index:30;grid-template-columns:repeat(3,minmax(0,1fr));max-height:118px;overflow:auto;background:#fff;padding:4px;margin:4px 0 0;border:1px solid #cbd5e1;box-shadow:0 3px 10px #0002;border-radius:6px;flex:0 0 auto}.cashier-focus .product-result{padding:7px;min-width:0}.cashier-focus .product-result strong,.cashier-focus .product-result em{font-size:11px}.cashier-focus .product-result small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cashier-focus .product-result{cursor:pointer}.cashier-focus .product-result.keyboard-active{background:#dbeafe;border-color:#2563eb;box-shadow:inset 4px 0 0 #2563eb}.cashier-focus .product-result.keyboard-active b{color:#0f3f75}.cashier-focus .product-empty{grid-column:1/-1;padding:12px;text-align:center;color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:6px;font-size:12px}
.cashier-focus .table-wrap{margin-top:5px;flex:1;min-height:0;overflow:auto}
.cashier-focus .pos-table{min-width:1050px;font-size:12px}.cashier-focus .pos-table th{padding:6px}.cashier-focus .pos-table td{padding:5px}.cashier-focus .qty{width:58px;padding:4px}.cashier-focus .disc{width:68px;padding:4px}
.cashier-focus .pos-bottom{grid-template-columns:300px 1fr;gap:7px;margin-top:6px;height:190px}
.cashier-focus .summary-panel,.cashier-focus .pay-panel{padding:10px}.cashier-focus .summary-row{padding:4px 0;font-size:13px}.cashier-focus .grand-total{font-size:22px;padding-top:8px}
.cashier-focus .pay-grid{gap:6px}.cashier-focus .pay-grid label{font-size:11px}.cashier-focus .pay-grid input,.cashier-focus .pay-grid select{padding:7px;font-size:13px}
.cashier-focus .action-row{margin-top:7px;gap:6px}.cashier-focus .cashier-msg{display:block;min-height:34px;max-height:42px;overflow:auto;margin-top:6px}.cashier-focus .cashier-msg .okbox,.cashier-focus .cashier-msg .errbox{margin-top:0;padding:8px;font-size:12px}.cashier-focus .cashier-msg a{display:inline-block;margin-left:8px;padding:6px 10px;background:#ea580c;color:#fff!important;border-radius:5px;font-weight:800;text-decoration:none}.cashier-focus .action-row .btn,.cashier-focus .action-row button{padding:8px 10px;font-size:12px}.cashier-focus .save-btn{min-width:190px}
.cashier-focus .customer-results{top:38px;width:100%;max-height:190px}
@media(max-width:900px){.cashier-shortcuts a:nth-child(n+3){display:none}.cashier-focus .pos-topbar{grid-template-columns:1fr 1fr}.cashier-focus .pos-bottom{grid-template-columns:1fr;height:205px}.cashier-main-panel{height:calc(100vh - 48px - 44px - 125px - 220px)}.cashier-focus .pay-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-height:700px){.cashier-focusbar{height:42px}.cashier-workbar{height:38px}.cashier-focus .pos-bottom{height:165px}.cashier-main-panel{height:calc(100vh - 42px - 38px - 70px - 165px)}}

/* V43.1 SEARCH VISIBILITY FIX
   Dropdown hasil pelanggan harus muncul di bawah kolom pencarian,
   tidak boleh menutup input atau tertimpa panel kasir. */
.cashier-focus .pos-topbar{position:relative;z-index:100}
.cashier-focus .pos-field:nth-child(3){position:relative;z-index:120}
.cashier-focus .customer-inline{position:relative;z-index:121}
.cashier-focus .customer-results{top:calc(100% + 2px);left:0;right:0;width:100%;z-index:9999}
.cashier-focus .customer-result{position:relative;z-index:10000}
.cashier-focus .cashier-main-panel{position:relative;z-index:10}
.cashier-focus .scan-row{position:relative;z-index:20}
.cashier-focus .product-results{position:relative;z-index:30}

/* V43.2 KASIR TOP MENU LAYOUT
   Semua menu dan aksi kasir dipusatkan di bagian atas agar kasir fokus
   dan minim memakai mouse. */
.cashier-focusbar{gap:5px;padding:0 8px;overflow:hidden}
.cashier-focus .cashier-brand{font-size:18px;flex:0 0 auto}
.cashier-focus .cashier-shortcuts{gap:3px;flex:1 1 auto;overflow:hidden;min-width:0}
.cashier-focus .cashier-shortcuts a{padding:6px 8px;font-size:11px;white-space:nowrap}
.cashier-focus .cashier-top-actions{display:flex;gap:3px;flex:0 0 auto}
.cashier-focus .top-action{height:30px;padding:5px 9px;border:1px solid #cbd5e1;border-radius:5px;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap}
.cashier-focus .top-action.primary{background:#fff;color:#0f67b4;border-color:#fff}
.cashier-focus .top-action.secondary{background:#ffffff18;color:#fff;border-color:#ffffff30}
.cashier-focus .top-action.secondary:hover{background:#ffffff2b}
.cashier-focus .logout-action{background:#dc2626;color:#fff;border-color:#dc2626;text-decoration:none}
.cashier-focus .logout-action:hover{background:#b91c1c;border-color:#b91c1c}
.cashier-focus .clock{font-size:15px;min-width:68px;flex:0 0 auto}
.cashier-focus .cashier-workbar{height:32px;gap:8px;padding:3px 7px}
.cashier-focus .workspace-title{font-size:13px;white-space:nowrap}
.cashier-focus .workspace-hint{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cashier-focus .cashier-main-panel{margin-top:5px}
.cashier-focus .cashier-msg{margin-top:8px}
@media(max-width:1200px){.cashier-focus .cashier-brand{font-size:16px}.cashier-focus .cashier-shortcuts a{padding:5px 6px}.cashier-focus .top-action{padding:5px 7px}.cashier-focus .cashier-focusbar .clock{display:none}}
@media(max-width:900px){.cashier-focus .cashier-shortcuts a:nth-child(n+5){display:none}.cashier-focus .cashier-top-actions{gap:2px}.cashier-focus .top-action{font-size:10px;padding:5px 6px}}

/* V43.2 KASIR FOCUS - KATEGORI + PENCARIAN SATU JAJAR */
.cashier-focus .cashier-control-row{display:flex;align-items:center;gap:8px;width:100%;min-width:0}
.cashier-focus .cashier-control-row .scan-row{flex:1 1 58%;min-width:0;height:42px;flex-basis:0}
.cashier-focus .cashier-control-row .scan-row input{min-width:0}
.cashier-focus .cashier-control-row .scan-row .scan-icon{flex:0 0 38px}
.cashier-focus .cashier-control-row .scan-row .primary,.cashier-focus .cashier-control-row .scan-row .scan-clear-btn{flex:0 0 auto}
@media(max-width:900px){.cashier-focus .cashier-control-row{display:flex;gap:5px}.cashier-focus .cashier-control-row .category-bar{flex-basis:34%;min-width:175px;max-width:40%}.cashier-focus .cashier-control-row .scan-row{flex-basis:66%}.cashier-focus .cashier-control-row .scan-row .primary{padding:8px 11px}.cashier-focus .cashier-control-row .scan-row .scan-clear-btn{padding:8px 10px}}
@media(max-width:700px){.cashier-focus .cashier-control-row{display:block}.cashier-focus .cashier-control-row .category-bar{max-width:none;width:100%;min-width:0;margin-bottom:5px}.cashier-focus .cashier-control-row .scan-row{width:100%}}

/* V43.3 KASIR FOCUS - SEMUA KONTROL TRANSAKSI + KATEGORI + PENCARIAN SATU BARIS */
.cashier-focus .cashier-all-topbar{
  display:flex;align-items:flex-end;gap:6px;flex-wrap:nowrap;overflow:visible;
  padding:5px 6px;height:58px;box-sizing:border-box;
}
.cashier-focus .cashier-all-topbar .pos-field,
.cashier-focus .cashier-top-category,
.cashier-focus .cashier-top-scan{
  display:flex;flex-direction:column;gap:3px;min-width:0;flex:0 0 auto;
}
.cashier-focus .cashier-all-topbar label,
.cashier-focus .cashier-top-category>label,
.cashier-focus .cashier-top-scan>label{
  font-size:10px;font-weight:800;color:#475569;line-height:12px;
}
.cashier-focus .cashier-trx{width:125px}.cashier-focus .cashier-date{width:125px}
.cashier-focus .cashier-customer{width:285px}.cashier-focus .cashier-payment{width:120px}
.cashier-focus .cashier-top-category{flex:0 0 300px;min-width:260px}
  height:34px;display:flex;align-items:center;gap:4px;overflow-x:auto;overflow-y:hidden;white-space:nowrap;
  padding:0;border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc;scrollbar-width:thin;box-sizing:border-box;
}
.cashier-focus .cashier-top-scan{flex:1 1 auto;min-width:360px}
.cashier-focus .cashier-top-scan .scan-row{height:34px;display:flex;gap:5px;align-items:center;min-width:0}
.cashier-focus .cashier-top-scan .scan-icon{width:32px;height:32px;flex:0 0 32px;font-size:18px}
.cashier-focus .cashier-top-scan .scan-row input{height:34px;min-width:0;font-size:13px;flex:1 1 auto}
.cashier-focus .cashier-top-scan .scan-row .primary,
.cashier-focus .cashier-top-scan .scan-row .scan-clear-btn{height:32px;padding:6px 11px;font-size:11px;flex:0 0 auto}
.cashier-focus .cashier-main-panel{margin-top:5px;height:calc(100vh - 48px - 44px - 64px - 188px)}
.cashier-focus .cashier-main-panel>.hint{padding:2px 36px;font-size:10px}
@media(max-width:1450px){
  .cashier-focus .cashier-trx{width:108px}.cashier-focus .cashier-date{width:108px}
  .cashier-focus .cashier-customer{width:245px}.cashier-focus .cashier-payment{width:105px}
  .cashier-focus .cashier-top-category{flex-basis:245px;min-width:220px}
  .cashier-focus .cashier-top-scan{min-width:300px}
  .cashier-focus .cashier-top-scan .scan-row .primary{padding:6px 9px}
  .cashier-focus .cashier-top-scan .scan-row .scan-clear-btn{padding:6px 9px}
}
@media(max-width:1150px){
  .cashier-focus .cashier-all-topbar{gap:4px}
  .cashier-focus .cashier-trx{width:92px}.cashier-focus .cashier-date{width:92px}
  .cashier-focus .cashier-customer{width:205px}.cashier-focus .cashier-payment{width:92px}
  .cashier-focus .cashier-top-category{flex-basis:205px;min-width:185px}
  .cashier-focus .cashier-top-scan{min-width:250px}
  .cashier-focus .cashier-customer .customer-inline{gap:3px}
  .cashier-focus .cashier-customer .secondary{padding:6px 7px}
}
@media(max-width:900px){
  .cashier-focus .cashier-all-topbar{height:84px;align-items:flex-end;overflow-x:auto}
  .cashier-focus .cashier-top-category{flex-basis:210px}.cashier-focus .cashier-top-scan{min-width:320px}
  .cashier-focus .cashier-main-panel{height:calc(100vh - 48px - 44px - 90px - 205px)}
}


/* V43.4 KASIR FOCUS - BOTTOM RINGKAS SATU BARIS */
.cashier-focus .cashier-main-panel{
  height:calc(100vh - 48px - 32px - 58px - 82px - 10px);
}
.cashier-focus .pos-bottom.cashier-bottom{
  grid-template-columns:290px minmax(0,1fr);
  gap:6px;
  margin-top:6px;
  height:82px;
}
.cashier-focus .cashier-bottom .summary-panel,
.cashier-focus .cashier-bottom .pay-panel{
  height:82px;
  padding:7px 9px;
  overflow:hidden;
}
.cashier-focus .summary-inline{
  display:grid;
  grid-template-columns:1fr 1fr 1.35fr;
  align-items:center;
  height:100%;
  gap:8px;
}
.cashier-focus .summary-inline>div{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:3px;
  border-right:1px solid #e2e8f0;
  padding-right:8px;
}
.cashier-focus .summary-inline>div:last-child{border-right:0;padding-right:0}
.cashier-focus .summary-inline span{font-size:10px;color:#64748b;font-weight:700}
.cashier-focus .summary-inline b{font-size:14px;color:#334155;white-space:nowrap}
.cashier-focus .summary-inline .summary-total b{font-size:21px;color:#0f67b4}
.cashier-focus .summary-inline .summary-total span{font-size:11px;color:#0f67b4;font-weight:900}
.cashier-focus .pay-inline{
  display:flex;
  align-items:flex-end;
  gap:6px;
  height:100%;
  min-width:0;
}
.cashier-focus .pay-inline label{
  display:flex;
  flex-direction:column;
  gap:3px;
  font-size:10px;
  font-weight:800;
  color:#475569;
  min-width:0;
}
.cashier-focus .pay-inline label:nth-child(1){width:150px}
.cashier-focus .pay-inline label:nth-child(2){width:210px}
.cashier-focus .pay-inline label:nth-child(3){width:145px}
.cashier-focus .pay-inline label:nth-child(4){width:145px}
.cashier-focus .pay-inline input,
.cashier-focus .pay-inline select{
  height:34px;
  margin:0;
  padding:6px 8px;
  font-size:13px;
  min-width:0;
}
.cashier-focus .pay-inline .bottom-btn,
.cashier-focus .pay-inline .bottom-save{
  height:34px;
  flex:0 0 auto;
  padding:6px 11px;
  font-size:11px;
  white-space:nowrap;
}
.cashier-focus .pay-inline .bottom-save{font-weight:900}
.cashier-focus .pay-inline .cashier-msg{
  flex:1 1 auto;
  min-width:120px;
  max-width:430px;
  height:34px;
  min-height:34px;
  max-height:34px;
  margin:0;
  overflow:hidden;
}
.cashier-focus .pay-inline .cashier-msg .okbox,
.cashier-focus .pay-inline .cashier-msg .errbox{
  height:34px;
  margin:0;
  padding:7px 8px;
  font-size:11px;
  line-height:20px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.cashier-focus .pay-inline .cashier-msg a{
  padding:4px 8px;
  margin-left:6px;
  border-radius:4px;
  font-size:10px;
  vertical-align:middle;
}
@media(max-width:1450px){
  .cashier-focus .cashier-main-panel{height:calc(100vh - 48px - 32px - 58px - 82px - 10px)}
  .cashier-focus .pos-bottom.cashier-bottom{grid-template-columns:270px minmax(0,1fr)}
  .cashier-focus .pay-inline label:nth-child(1){width:135px}
  .cashier-focus .pay-inline label:nth-child(2){width:185px}
  .cashier-focus .pay-inline label:nth-child(3){width:125px}
  .cashier-focus .pay-inline label:nth-child(4){width:125px}
  .cashier-focus .pay-inline .cashier-msg{max-width:360px}
}
@media(max-width:1150px){
  .cashier-focus .pos-bottom.cashier-bottom{grid-template-columns:245px minmax(0,1fr)}
  .cashier-focus .summary-inline{gap:5px}
  .cashier-focus .summary-inline b{font-size:12px}
  .cashier-focus .summary-inline .summary-total b{font-size:18px}
  .cashier-focus .pay-inline{gap:4px}
  .cashier-focus .pay-inline label:nth-child(1){width:115px}
  .cashier-focus .pay-inline label:nth-child(2){width:160px}
  .cashier-focus .pay-inline label:nth-child(3){width:105px}
  .cashier-focus .pay-inline label:nth-child(4){width:105px}
  .cashier-focus .pay-inline .cashier-msg{max-width:260px}
  .cashier-focus .pay-inline .bottom-btn{display:none}
}
@media(max-width:900px){
  .cashier-focus .pos-bottom.cashier-bottom{grid-template-columns:1fr;height:104px}
  .cashier-focus .cashier-bottom .summary-panel,
  .cashier-focus .cashier-bottom .pay-panel{height:50px;padding:5px 7px}
  .cashier-focus .cashier-main-panel{height:calc(100vh - 48px - 32px - 84px - 110px - 8px)}
  .cashier-focus .summary-inline{grid-template-columns:1fr 1fr 1.2fr}
  .cashier-focus .pay-inline label:nth-child(-n+4){width:22%;}
  .cashier-focus .pay-inline .cashier-msg{max-width:28%}
}

/* V43.5 KASIR FOCUS - SEMUA KONTROL NAIK, SATU BARIS */
.cashier-focus main{display:flex;flex-direction:column;min-height:0}
.cashier-focus .cashier-focusbar{flex:0 0 48px}
.cashier-focus .cashier-workbar{flex:0 0 44px}
.cashier-focus .cashier-unifiedbar{
  display:flex;align-items:flex-end;gap:4px;flex:0 0 64px;min-width:0;
  padding:4px 5px;background:#f4f7fb;border:1px solid #cbd5e1;
  margin-top:5px;overflow-x:auto;overflow-y:hidden;white-space:nowrap;
}
.cashier-focus .cashier-unifiedbar .u-field{display:flex;flex-direction:column;gap:2px;flex:0 0 auto;min-width:0}
.cashier-focus .cashier-unifiedbar .u-field>label{font-size:9px;font-weight:800;color:#475569;line-height:11px}
.cashier-focus .cashier-unifiedbar input,
.cashier-focus .cashier-unifiedbar select{
  height:34px;margin:0;padding:5px 7px;font-size:12px;border-radius:6px;min-width:0;
}
.cashier-focus .u-trx{width:85px}.cashier-focus .u-date{width:80px}
.cashier-focus .u-customer{width:165px;position:relative}
.cashier-focus .u-payment{width:80px}.cashier-focus .u-category{width:155px}
.cashier-focus .u-scan{flex:1 1 290px;min-width:290px}
.cashier-focus .u-cash{width:85px}.cashier-focus .u-cashier{width:110px}
.cashier-focus .u-paid{width:85px}.cashier-focus .u-change{width:100px}
.cashier-focus .u-general{height:34px;padding:5px 6px;font-size:10px;white-space:nowrap}
.cashier-focus .u-customer .customer-inline{display:flex;gap:3px;align-items:center;min-width:0}
.cashier-focus .u-customer .customer-inline input{flex:1;min-width:0}
.cashier-focus .u-category select{height:34px;width:100%;padding:5px 9px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;font-size:12px;font-weight:700;color:#334155;cursor:pointer}
.cashier-focus .u-category select:focus{outline:2px solid #93c5fd;outline-offset:1px}
.cashier-focus .u-scan .scan-row{height:34px;display:flex;align-items:center;gap:4px;min-width:0}
.cashier-focus .u-scan .scan-icon{width:32px;height:32px;flex:0 0 32px;font-size:17px}
.cashier-focus .u-scan .scan-row input{height:34px;flex:1 1 auto;min-width:90px;font-size:12px}
.cashier-focus .u-scan .scan-row .primary,
.cashier-focus .u-scan .scan-row .scan-clear-btn{
  height:32px;padding:5px 9px;font-size:10px;flex:0 0 auto;white-space:nowrap;
}
.cashier-focus .u-summary{
  width:185px;flex:0 0 185px;height:34px;display:flex;align-items:center;gap:0;
  background:#fff;border:1px solid #cbd5e1;border-radius:6px;overflow:hidden;
}
.cashier-focus .u-summary>div{height:100%;display:flex;flex-direction:column;justify-content:center;padding:0 7px;border-right:1px solid #e2e8f0;min-width:0}
.cashier-focus .u-summary>div:last-child{border-right:0}
.cashier-focus .u-summary span{font-size:8px;color:#64748b;font-weight:800;line-height:9px}
.cashier-focus .u-summary b{font-size:10px;color:#334155;white-space:nowrap;line-height:13px}
.cashier-focus .u-summary .u-total{flex:1}.cashier-focus .u-summary .u-total span{font-size:8px;color:#0f67b4}
.cashier-focus .u-summary .u-total b{font-size:15px;color:#0f67b4}
.cashier-focus .u-f5,.cashier-focus .u-save{
  height:34px;flex:0 0 auto;padding:6px 9px;font-size:10px;white-space:nowrap;border-radius:6px;
}
.cashier-focus .u-f5{width:44px}.cashier-focus .u-save{width:80px;font-weight:900}
.cashier-focus .cashier-unifiedbar .cashier-msg{
  flex:1 1 180px;min-width:150px;max-width:190px;height:34px;min-height:34px;max-height:34px;margin:0;overflow:hidden;
}
.cashier-focus .cashier-unifiedbar .cashier-msg .okbox,
.cashier-focus .cashier-unifiedbar .cashier-msg .errbox{
  margin:0;height:34px;padding:7px 6px;font-size:10px;line-height:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.cashier-focus .cashier-unifiedbar .cashier-msg a{display:inline-block;margin-left:5px;padding:4px 7px;font-size:9px;border-radius:4px}
.cashier-focus .cashier-unifiedbar .customer-results{top:36px;left:0;right:0;width:100%;z-index:9999}
.cashier-focus .cashier-main-panel{
  flex:1 1 auto;min-height:0;height:auto !important;margin-top:5px;padding:5px;display:flex;flex-direction:column;overflow:hidden;
}
.cashier-focus .cashier-main-panel>.hint{flex:0 0 18px;padding:2px 36px;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cashier-focus .cashier-main-panel .product-results{flex:0 0 auto;max-height:96px;overflow:auto;margin:3px 0 0}
.cashier-focus .cashier-main-panel .table-wrap{flex:1 1 auto;min-height:0;overflow:auto;margin-top:4px}

@media(max-width:1500px){
  .cashier-focus .u-trx{width:75px}.cashier-focus .u-date{width:70px}.cashier-focus .u-customer{width:145px}.cashier-focus .u-payment{width:72px}
  .cashier-focus .u-category{width:125px}.cashier-focus .u-scan{min-width:250px}.cashier-focus .u-summary{width:165px;flex-basis:165px}
  .cashier-focus .u-cash{width:75px}.cashier-focus .u-cashier{width:95px}.cashier-focus .u-paid{width:75px}.cashier-focus .u-change{width:90px}
  .cashier-focus .u-save{width:72px;padding:6px 7px}.cashier-focus .cashier-unifiedbar .cashier-msg{max-width:150px;min-width:110px}
}
@media(max-width:1100px){
  .cashier-focus .cashier-unifiedbar{overflow-x:auto}
}

/* V43.7 KASIR FOCUS - MANFAATKAN RUANG KOSONG HEADER, TIDAK MENUMPUK */
.cashier-focus .cashier-workbar{
  height:56px;min-height:56px;flex:0 0 56px;display:flex;align-items:center;gap:14px;
  padding:5px 8px;background:#fff;border:1px solid #cbd5e1;box-sizing:border-box;overflow:hidden;
}
.cashier-focus .workspace-left{display:flex;align-items:center;gap:12px;min-width:430px;flex:1 1 auto;overflow:hidden}
.cashier-focus .workspace-title{font-size:15px;font-weight:900;white-space:nowrap}
.cashier-focus .workspace-hint{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#475569}
.cashier-focus .workbar-tools{display:flex;align-items:flex-end;gap:5px;flex:0 0 auto;min-width:0;overflow:hidden}
.cashier-focus .workbar-tools .w-field{display:flex;flex-direction:column;gap:2px;min-width:0;flex:0 0 auto}
.cashier-focus .workbar-tools .w-field label{font-size:8px;line-height:9px;font-weight:800;color:#475569}
.cashier-focus .workbar-tools .w-field input,
.cashier-focus .workbar-tools .w-field select{height:31px;padding:5px 7px;font-size:11px;border-radius:6px;min-width:0;box-sizing:border-box}
.cashier-focus .work-summary{height:31px;width:188px;flex:0 0 188px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;display:flex;align-items:center;overflow:hidden}
.cashier-focus .work-summary>div{height:100%;display:flex;flex-direction:column;justify-content:center;padding:0 7px;border-right:1px solid #e2e8f0;min-width:0}
.cashier-focus .work-summary>div:last-child{border-right:0}
.cashier-focus .work-summary span{font-size:7px;color:#64748b;font-weight:800;line-height:8px}
.cashier-focus .work-summary b{font-size:10px;color:#334155;white-space:nowrap;line-height:12px}
.cashier-focus .work-summary .u-total{flex:1}
.cashier-focus .work-summary .u-total span{font-size:8px;color:#0f67b4;font-weight:900}
.cashier-focus .work-summary .u-total b{font-size:14px;color:#0f67b4}
.cashier-focus .w-cash{width:92px}.cashier-focus .w-cashier{width:112px}.cashier-focus .w-paid{width:92px}.cashier-focus .w-change{width:105px}
.cashier-focus .w-payref{width:92px}.cashier-focus .w-payref input{font-size:10px}
.cashier-focus .work-f5,.cashier-focus .work-save{height:31px;padding:5px 8px;font-size:10px;white-space:nowrap;border-radius:6px;flex:0 0 auto}
.cashier-focus .work-f5{width:40px}.cashier-focus .work-save{width:82px;font-weight:900}
.cashier-focus .workbar-tools .cashier-msg{height:31px;min-height:31px;max-height:31px;min-width:150px;max-width:225px;margin:0;overflow:hidden;flex:0 1 225px}
.cashier-focus .workbar-tools .cashier-msg .okbox,
.cashier-focus .workbar-tools .cashier-msg .errbox{height:31px;margin:0;padding:6px 7px;font-size:9px;line-height:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cashier-focus .workbar-tools .cashier-msg a{display:inline-block;margin-left:5px;padding:4px 7px;font-size:9px;border-radius:4px;vertical-align:middle}

/* Bar transaksi kedua tetap rapi: data transaksi + kategori + scan */
.cashier-focus .cashier-unifiedbar{flex:0 0 60px;height:60px;gap:5px;padding:4px 6px;margin-top:4px;overflow:hidden}
.cashier-focus .u-trx{width:88px}.cashier-focus .u-date{width:92px}.cashier-focus .u-customer{width:210px}.cashier-focus .u-payment{width:92px}
.cashier-focus .u-category{width:165px}.cashier-focus .u-scan{flex:1 1 auto;min-width:420px}
.cashier-focus .u-scan .scan-row input{font-size:13px}
.cashier-focus .cashier-main-panel{margin-top:4px}

@media(max-width:1450px){
  .cashier-focus .workspace-left{min-width:330px}.cashier-focus .workspace-left .workspace-hint{display:none}
  .cashier-focus .w-cash{width:82px}.cashier-focus .w-cashier{width:102px}.cashier-focus .w-paid{width:85px}.cashier-focus .w-change{width:95px}
  .cashier-focus .w-payref{width:82px}
  .cashier-focus .workbar-tools .cashier-msg{min-width:120px;max-width:175px}
  .cashier-focus .u-customer{width:175px}.cashier-focus .u-category{width:145px}.cashier-focus .u-scan{min-width:330px}
}
@media(max-width:1100px){
  .cashier-focus .cashier-workbar{overflow-x:auto}
  .cashier-focus .cashier-unifiedbar{overflow-x:auto}
  .cashier-focus .workspace-left{min-width:260px}
  .cashier-focus .workbar-tools .cashier-msg{display:none}
}

/* V43.5 KASIR FOCUS - TOTAL LEBIH LEBAR + CETAK STRUK SELALU TERLIHAT */
.cashier-focus .work-summary{width:265px;flex:0 0 265px}
.cashier-focus .work-summary>div:nth-child(1){width:72px}
.cashier-focus .work-summary>div:nth-child(2){width:82px}
.cashier-focus .work-summary .u-total{min-width:105px}
.cashier-focus .work-summary b{font-size:11px}
.cashier-focus .work-summary .u-total b{font-size:17px;line-height:16px}
.cashier-focus .work-summary .u-total span{font-size:9px;line-height:10px}
.cashier-focus .workbar-tools .receipt-btn{display:inline-flex;align-items:center;justify-content:center;height:31px;min-width:92px;padding:0 10px;background:#ea580c;color:#fff;border-radius:6px;font-size:10px;font-weight:900;text-decoration:none;white-space:nowrap;flex:0 0 auto}
.cashier-focus .workbar-tools .receipt-btn:hover{background:#c2410c}
.cashier-focus .workbar-tools .cashier-msg{min-width:135px;max-width:245px}
.cashier-focus .workbar-tools .cashier-msg .okbox{font-size:9px;padding:6px 7px}
@media(max-width:1450px){.cashier-focus .work-summary{width:245px;flex-basis:245px}.cashier-focus .work-summary>div:nth-child(1){width:66px}.cashier-focus .work-summary>div:nth-child(2){width:75px}.cashier-focus .work-summary .u-total{min-width:96px}}
@media(max-width:1150px){.cashier-focus .work-summary{width:220px;flex-basis:220px}.cashier-focus .work-summary>div:nth-child(1){width:60px}.cashier-focus .work-summary>div:nth-child(2){width:68px}.cashier-focus .work-summary .u-total{min-width:88px}.cashier-focus .workbar-tools .receipt-btn{min-width:84px;padding:0 8px;font-size:9px}}

/* V43.8 KASIR FOCUS - NOMINAL TOTAL LEBIH LEGANG */
.cashier-focus .work-summary{
  width:390px !important;
  flex:0 0 390px !important;
  box-sizing:border-box !important;
}
.cashier-focus .work-summary>div{
  box-sizing:border-box !important;
  padding:0 8px !important;
}
.cashier-focus .work-summary>div:nth-child(1){width:96px !important;flex:0 0 96px !important}
.cashier-focus .work-summary>div:nth-child(2){width:105px !important;flex:0 0 105px !important}
.cashier-focus .work-summary .u-total{width:auto !important;min-width:0 !important;flex:1 1 auto !important}
.cashier-focus .work-summary b{font-size:11px !important;letter-spacing:0 !important;white-space:nowrap !important}
.cashier-focus .work-summary .u-total b{font-size:17px !important;line-height:18px !important;white-space:nowrap !important}
.cashier-focus .work-summary span{font-size:8px !important;line-height:9px !important}
@media(max-width:1450px){
  .cashier-focus .work-summary{width:340px !important;flex-basis:340px !important}
  .cashier-focus .work-summary>div:nth-child(1){width:88px !important;flex-basis:88px !important}
  .cashier-focus .work-summary>div:nth-child(2){width:96px !important;flex-basis:96px !important}
}
@media(max-width:1150px){
  .cashier-focus .work-summary{width:300px !important;flex-basis:300px !important}
  .cashier-focus .work-summary>div:nth-child(1){width:78px !important;flex-basis:78px !important}
  .cashier-focus .work-summary>div:nth-child(2){width:84px !important;flex-basis:84px !important}
}

/* V43.10 SHIFT KASIR - BUKA/TUTUP SHIFT & REKONSILIASI */
.cashier-focus .shift-action{
  background:#7c3aed;border-color:#7c3aed;color:#fff;font-weight:900;min-width:72px
}
.cashier-focus .shift-action:hover{filter:brightness(.96)}
.cashier-focus .shift-status-badge{
  height:31px;min-width:126px;max-width:180px;padding:5px 8px;border-radius:6px;border:1px solid;
  font-size:9px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;flex:0 1 auto
}
.cashier-focus .shift-status-badge.shift-closed{background:#fff7ed;border-color:#fdba74;color:#c2410c}
.cashier-focus .shift-status-badge.shift-open{background:#ecfdf5;border-color:#86efac;color:#15803d}
.cashier-focus .workbar-tools .work-save:disabled,
.cashier-focus .cashier-top-actions .top-action:disabled{opacity:.42;cursor:not-allowed;filter:none}
.shift-modal{
  position:fixed;inset:0;background:rgba(15,23,42,.48);display:flex;align-items:center;justify-content:center;
  z-index:20000;padding:16px;box-sizing:border-box
}
.shift-card{
  width:min(620px,96vw);background:#fff;border:1px solid #cbd5e1;border-radius:12px;box-shadow:0 20px 55px rgba(15,23,42,.28);padding:16px
}
.shift-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.shift-head h3{margin:0;font-size:18px;color:#0f172a}
.shift-head small{color:#64748b;font-size:11px}
.shift-close{border:0;background:#f1f5f9;border-radius:7px;width:32px;height:32px;font-size:21px;line-height:1;color:#334155;cursor:pointer}
.shift-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.shift-card label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:800;color:#475569}
.shift-card input,.shift-card select{height:38px;padding:8px 10px;border:1px solid #cbd5e1;border-radius:7px;box-sizing:border-box;font-size:13px;background:#fff}
.shift-note{margin-top:10px}
.shift-help{margin-top:8px;font-size:10px;color:#64748b}
.shift-actions{display:flex;justify-content:flex-end;margin-top:13px;gap:7px}
.shift-actions button{min-width:118px;height:38px;font-size:11px;font-weight:900;border-radius:7px}
.shift-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.shift-info-grid>div{border:1px solid #e2e8f0;border-radius:8px;padding:8px 9px;background:#f8fafc;min-width:0}
.shift-info-grid span{display:block;font-size:9px;color:#64748b;font-weight:800}
.shift-info-grid b{display:block;margin-top:2px;font-size:12px;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.shift-count-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end}
.shift-diff{height:38px;display:flex;align-items:center;padding:0 10px;border:1px dashed #94a3b8;border-radius:7px;font-size:13px;font-weight:900;color:#334155;background:#f8fafc}
.shift-msg{min-height:0;margin-top:10px}
.shift-msg:empty{display:none}
.shift-msg .okbox,.shift-msg .errbox{margin:0;padding:8px;font-size:11px;border-radius:6px}
@media(max-width:760px){
  .cashier-focus .shift-status-badge{min-width:90px;max-width:120px}
  .shift-grid,.shift-info-grid,.shift-count-row{grid-template-columns:1fr}
}

/* V43 SHIFT EXPENSE: pengeluaran kas terikat ke shift dan dibuat ringkas. */
.shift-expense-box{margin-top:12px;border:1px solid #e2e8f0;border-radius:9px;padding:10px;background:#fbfdff}
.shift-section-title{font-size:10px;font-weight:900;color:#334155;margin-bottom:8px}
.shift-expense-grid{display:grid;grid-template-columns:1.25fr .8fr 1.45fr auto;gap:8px;align-items:end}
.shift-expense-grid label{display:flex;flex-direction:column;gap:5px;font-size:10px;font-weight:800;color:#475569}
.shift-expense-grid button{height:38px;white-space:nowrap;font-size:10px;font-weight:900}
.expense-list{margin-top:8px;max-height:120px;overflow:auto;border-top:1px solid #e2e8f0}
.expense-item{display:flex;justify-content:space-between;gap:12px;padding:6px 2px;border-bottom:1px solid #eef2f7;font-size:11px}
.expense-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-item small{display:block;color:#94a3b8;font-size:9px;margin-top:1px}
.expense-item b{white-space:nowrap;color:#b42318}.expense-empty{padding:7px 2px;color:#94a3b8;font-size:10px}
@media(max-width:900px){.shift-expense-grid{grid-template-columns:1fr 1fr}.expense-note{grid-column:1/-1}.shift-expense-grid button{grid-column:1/-1}}

/* V43.11 KASIR - KONTROL STOK SAAT PENJUALAN */
.cashier-focus .stock-alert{
  flex:0 0 auto;margin:3px 0 0;padding:6px 9px;border-radius:6px;border:1px solid;
  font-size:10px;font-weight:800;line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.cashier-focus .stock-alert.warn{background:#fffbeb;border-color:#fbbf24;color:#92400e}
.cashier-focus .stock-alert.error{background:#fef2f2;border-color:#f87171;color:#991b1b}
.cashier-focus .product-result.stock-low{border-color:#f59e0b;background:#fffbeb}
.cashier-focus .product-result.stock-empty{border-color:#ef4444;background:#fef2f2;opacity:.82}
.cashier-focus .product-result .stock-badge{font-size:10px;font-weight:900;white-space:nowrap}
.cashier-focus .product-result.stock-low .stock-badge{color:#b45309}
.cashier-focus .product-result.stock-empty .stock-badge{color:#b91c1c}
.cashier-focus .product-result.stock-ok .stock-badge{color:#475569}
.cashier-focus .pos-table tr.stock-row-low td{background:#fffbeb}
.cashier-focus .pos-table tr.stock-row-error td{background:#fef2f2}
.cashier-focus .stock-cell{font-weight:900;white-space:nowrap}
.cashier-focus .pos-table tr.stock-row-low .stock-cell{color:#b45309}
.cashier-focus .pos-table tr.stock-row-error .stock-cell{color:#b91c1c}


/* V43.3 Pusat Hutang/Piutang */
.debt-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.debt-page-head h1{margin-bottom:4px}.muted{color:#64748b;margin-top:0}.debt-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.debt-kpi{background:#fff;border:1px solid #dbe3ec;border-radius:12px;padding:15px}.debt-kpi span{display:block;font-size:11px;font-weight:800;color:#64748b}.debt-kpi strong{display:block;font-size:22px;margin:7px 0}.debt-kpi small{font-size:10px;color:#64748b}.debt-kpi.supplier strong{color:#b45309}.debt-kpi.net strong{color:#0f67b4}.debt-toolbar{margin-bottom:14px}.debt-filter{display:grid;grid-template-columns:minmax(280px,1fr) 220px auto auto;gap:8px;align-items:end}.debt-filter label{font-size:11px;font-weight:800;color:#475569}.debt-filter input,.debt-filter select{display:block;width:100%;margin-top:4px;font-size:12px;padding:9px}.debt-filter .btn{height:36px}.debt-code{display:block;color:#94a3b8;font-size:9px;margin-top:3px}.debt-history{font-size:11px;min-width:1100px}.debt-history th,.debt-history td{padding:8px}.debt-history .num{text-align:right;font-weight:700}.party-pill{display:inline-block;padding:3px 6px;border-radius:999px;font-size:8px;font-weight:900}.party-pill.customer{background:#dbeafe;color:#1d4ed8}.party-pill.supplier{background:#fef3c7;color:#92400e}.note-cell{max-width:260px;white-space:normal}.btn-kecil{padding:5px 7px;font-size:9px}.pay-box button:disabled{opacity:.6;cursor:wait}
@media(max-width:1000px){.debt-kpis{grid-template-columns:1fr}.debt-filter{grid-template-columns:1fr 1fr}.debt-filter .btn{width:100%}}

/* V43. Opname Stok Lengkap */
.op-footer{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:10px;align-items:center;margin-top:12px}
.op-footer input{min-width:0}
.op-actual{width:100px;box-sizing:border-box}
.op-diff{font-weight:800}
@media(max-width:900px){.op-footer{grid-template-columns:1fr}.op-actual{width:100%}}
@media print{.op-footer,.form-inline,.page-head a,.page-head button{display:none!important}}

/* V43 BACKUP & PROTEKSI */
.card-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.stat-card{padding:14px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;display:flex;flex-direction:column;gap:4px}
.stat-card b{font-size:12px;color:#475569}.stat-card strong{font-size:20px}.stat-card span{font-size:11px;color:#64748b}
.compact-list{margin:10px 0 0 18px;padding:0}.compact-list li{margin:5px 0;color:#475569}
@media(max-width:1000px){.card-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V43.12 KARTU STOK DIPERLENGKAP */
.stock-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
.stock-card-head h1{margin-bottom:3px}.stock-card-actions{display:flex;gap:7px;flex-wrap:wrap}
.stock-card-summary{grid-template-columns:2.1fr repeat(5,minmax(110px,1fr))}
.stock-card-summary .card{min-width:0}.stock-product-name{font-size:18px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.net-stock{color:#0f67b4}.stock-card-filter{margin-top:12px}.stock-card-table-panel{margin-top:12px}.table-scroll{overflow:auto}.stock-card-table{min-width:1250px;font-size:11px}
.stock-card-table th,.stock-card-table td{padding:7px 8px;white-space:nowrap}.stock-card-table .num{text-align:right}.stock-card-table .note-cell{max-width:250px;white-space:normal}
.stock-count{font-size:10px;font-weight:800;color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:5px 8px}
.stock-type-pill,.stock-direction{display:inline-block;padding:3px 6px;border-radius:999px;font-size:8px;font-weight:900}
.stock-type-pill{background:#eef2ff;color:#3730a3}.stock-type-pill.pembelian{background:#ecfdf5;color:#15803d}.stock-type-pill.penjualan{background:#fff7ed;color:#c2410c}.stock-type-pill.opname{background:#eff6ff;color:#1d4ed8}.stock-type-pill.pembatalan{background:#f0fdf4;color:#166534}
.stock-direction.masuk{background:#dcfce7;color:#166534}.stock-direction.keluar{background:#fee2e2;color:#991b1b}.stock-direction.tetap{background:#f1f5f9;color:#475569}
@media(max-width:1100px){.stock-card-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.stock-card-head{flex-direction:column}}
@media print{
  body{background:#fff!important}.stock-card-head .stock-card-actions,.stock-card-filter,.safe,header,nav,.flash{display:none!important}
  main{margin:0!important;padding:0!important;max-width:none!important}.stock-card-summary{grid-template-columns:repeat(3,1fr);margin-bottom:10px}.stock-cards .card{box-shadow:none}
  .panel{box-shadow:none;border:1px solid #ddd}.stock-card-table{min-width:0;font-size:8px}.stock-card-table th,.stock-card-table td{padding:4px}
}

/* V43 RETUR - simple admin return layout */
.return-search-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.return-search-grid h2,.return-table{margin-top:0}
.return-form-grid{display:grid;grid-template-columns:220px 220px 1fr;gap:10px;align-items:end;margin:12px 0}
.return-form-grid label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:800;color:#475569}
.return-form-grid input,.return-form-grid select{height:36px;padding:7px 9px;box-sizing:border-box}
.return-table input{height:30px;width:78px;box-sizing:border-box}
@media(max-width:900px){.return-search-grid,.return-form-grid{grid-template-columns:1fr}}

/* V43 keyboard cashier quick actions */
.cashier-focus #cartBody tr.cart-selected{outline:2px solid #2563eb;outline-offset:-2px;background:#eff6ff}
.cashier-focus .work-f6,.cashier-focus .work-f7,.cashier-focus .work-f8{min-width:42px;padding:6px 8px;font-weight:800}

/* V43.7 KASIR - SIMPLE PRODUCT SEARCH LIST
   Ketik nama/kode -> hasil turun ke bawah sebagai daftar vertikal.
   Harga otomatis mengikuti pelanggan/kelas pelanggan; tanpa pilihan Harga1-Harga5. */
.cashier-focus .u-scan{position:relative;z-index:200;overflow:visible}
.cashier-focus .u-scan .product-results{
  position:fixed;left:0;top:0;width:min(760px,calc(100vw - 24px));
  max-height:min(440px,calc(100vh - 92px));display:none;background:#fff;
  border:1px solid #94a3b8;border-radius:4px;box-shadow:0 10px 26px #0003;
  padding:0;margin:0;overflow:auto;z-index:1000000;box-sizing:border-box;
}
.cashier-focus .u-scan .product-results.has-results{display:block}
.cashier-focus .product-results-head{
  position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;
  gap:12px;padding:6px 8px;background:#eef3f8;border-bottom:1px solid #cbd5e1;font-size:10px;color:#1e293b;
}
.cashier-focus .product-results-head span{font-size:9px;font-weight:800;color:#0f67b4;text-transform:uppercase}
.cashier-focus .product-results-headrow{
  display:grid;grid-template-columns:minmax(0,1fr) 120px 80px;align-items:center;
  position:sticky;top:29px;z-index:2;background:#f8fafc;border-bottom:1px solid #cbd5e1;
  padding:5px 8px;font-size:9px;font-weight:800;color:#475569;text-transform:uppercase;
}
.cashier-focus .product-results-headrow span:nth-child(2),
.cashier-focus .product-results-headrow span:nth-child(3){text-align:right}
.cashier-focus .product-result-row{
  width:100%;display:grid;grid-template-columns:minmax(0,1fr) 120px 80px;align-items:center;
  gap:8px;text-align:left;padding:7px 8px;background:#fff;color:#0f172a;border:0;border-bottom:1px solid #e5e7eb;
  border-radius:0;cursor:pointer;box-sizing:border-box;font:inherit;
}
.cashier-focus .product-result-row:hover{background:#eff6ff}
.cashier-focus .product-result-row.keyboard-active{background:#0f67b4;color:#fff;box-shadow:inset 4px 0 0 #0b4f8a}
.cashier-focus .product-result-row.keyboard-active small{color:#dbeafe}
.cashier-focus .product-result-row.keyboard-active .stock-badge{color:#fff}
.cashier-focus .product-result-row .pr-name{min-width:0;display:block;overflow:hidden}
.cashier-focus .product-result-row .pr-name b{display:block;font-size:12px;line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cashier-focus .product-result-row .pr-name small{display:block;margin-top:1px;font-size:9px;line-height:12px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cashier-focus .product-result-row>.pr-price{font-size:12px;text-align:right;white-space:nowrap}
.cashier-focus .product-result-row>em{font-style:normal;font-size:11px;text-align:right;white-space:nowrap;color:#475569}
.cashier-focus .product-result-row.stock-empty>em{color:#b91c1c;font-weight:800}
.cashier-focus .product-result-row.stock-low>em{color:#b45309;font-weight:800}
.cashier-focus .product-empty{padding:14px 10px;text-align:center;color:#64748b;background:#f8fafc;font-size:11px}
@media(max-width:900px){
  .cashier-focus .u-scan .product-results{width:min(640px,calc(100vw - 16px));max-height:300px}
  .cashier-focus .product-results-headrow{top:29px;grid-template-columns:minmax(0,1fr) 95px 60px}
  .cashier-focus .product-result-row{grid-template-columns:minmax(0,1fr) 95px 60px}
}

/* V43.3 CUSTOMER SEARCH LIST */
.cashier-focus .u-customer{position:relative;z-index:130}
.cashier-focus .u-customer .customer-results{position:absolute;top:36px;left:0;right:0;width:100%;max-height:250px;overflow:auto;margin:0;padding:0;background:#fff;border:1px solid #94a3b8;border-radius:0 0 6px 6px;box-shadow:0 8px 18px #0002;z-index:15000;display:none}
.cashier-focus .u-customer .customer-results.has-results{display:block}
.cashier-focus .customer-results-headrow,.cashier-focus .customer-result-row{display:grid;grid-template-columns:minmax(0,1fr) 78px 92px;align-items:center}
.cashier-focus .customer-results-headrow{position:sticky;top:0;background:#eaf1f8;border-bottom:1px solid #cbd5e1;padding:5px 7px;font-size:9px;font-weight:800;color:#334155;text-transform:uppercase;z-index:2}
.cashier-focus .customer-result-row{width:100%;text-align:left;border:0;border-bottom:1px solid #edf2f7;background:#fff;color:#0f172a;padding:7px 7px;cursor:pointer;font-size:11px}
.cashier-focus .customer-result-row:hover,.cashier-focus .customer-result-row.keyboard-active{background:#0f67b4;color:#fff}
.cashier-focus .customer-result-row small{display:block;margin-top:2px;font-size:8px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cashier-focus .customer-result-row.keyboard-active small{color:#dbeafe}
.cashier-focus .customer-result-row strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cashier-focus .customer-result-row em{font-style:normal;font-size:10px;font-weight:800;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cashier-focus .customer-empty{padding:9px;font-size:10px;color:#64748b;background:#fff}


/* V43.11 PELANGGAN SEARCH - PASTIKAN KOLOM PELANGGAN SELALU TERLIHAT */
.cashier-focus .cashier-unifiedbar{
  overflow:visible !important;
}
.cashier-focus .cashier-unifiedbar .u-customer{
  display:flex !important;
  flex:0 0 210px !important;
  width:210px !important;
  min-width:210px !important;
  position:relative !important;
  z-index:500 !important;
}
.cashier-focus .u-customer .customer-inline{
  display:flex !important;
  align-items:center !important;
  gap:3px !important;
  width:100% !important;
  min-width:0 !important;
}
.cashier-focus .u-customer #customerSearch{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  flex:1 1 auto !important;
  width:auto !important;
  min-width:0 !important;
  height:34px !important;
}
.cashier-focus .u-customer .u-general{
  display:block !important;
  flex:0 0 auto !important;
}
.cashier-focus .u-customer .customer-results{
  position:fixed !important;
  top:auto !important;
  left:auto !important;
  right:auto !important;
  width:360px !important;
  max-height:360px !important;
  overflow:auto !important;
  z-index:1000001 !important;
}
@media(max-width:1200px){
  .cashier-focus .u-trx{width:70px !important;flex-basis:70px !important}
  .cashier-focus .u-date{width:70px !important;flex-basis:70px !important}
  .cashier-focus .u-customer{width:175px !important;min-width:175px !important;flex-basis:175px !important}
  .cashier-focus .u-payment{width:72px !important;flex-basis:72px !important}
  .cashier-focus .u-category{width:120px !important;flex-basis:120px !important}
  .cashier-focus .u-scan{min-width:0 !important;flex:1 1 auto !important}
}

/* V43.13 KASIR FOCUS - RINGKASAN + PEMBAYARAN DIPINDAH KE BARIS KOSONG */
.cashier-focus .cashier-paybar{
  flex:0 0 46px;min-height:46px;height:46px;box-sizing:border-box;
  display:flex;align-items:flex-end;gap:6px;overflow-x:auto;overflow-y:visible;
  margin-top:4px;padding:4px 6px;background:#f8fafc;border:1px solid #cbd5e1;
  white-space:nowrap;scrollbar-width:thin;
}
.cashier-focus .pay-summary-box{
  height:38px;flex:0 0 360px;display:flex;align-items:stretch;box-sizing:border-box;
  background:#fff;border:1px solid #cbd5e1;border-radius:6px;overflow:hidden;
}
.cashier-focus .pay-summary-box>div{
  display:flex;flex-direction:column;justify-content:center;box-sizing:border-box;
  padding:0 9px;border-right:1px solid #e2e8f0;min-width:0;
}
.cashier-focus .pay-summary-box>div:nth-child(1){flex:0 0 112px}
.cashier-focus .pay-summary-box>div:nth-child(2){flex:0 0 112px}
.cashier-focus .pay-summary-box>div:last-child{border-right:0}
.cashier-focus .pay-summary-box span{font-size:8px;line-height:9px;font-weight:900;color:#64748b}
.cashier-focus .pay-summary-box b{font-size:12px;line-height:15px;font-weight:900;white-space:nowrap}
.cashier-focus .pay-summary-box .pay-grand{flex:1 1 auto;min-width:136px}
.cashier-focus .pay-summary-box .pay-grand span{font-size:9px;color:#0f67b4}
.cashier-focus .pay-summary-box .pay-grand b{font-size:19px;line-height:20px;color:#0f67b4}
.cashier-focus .paybar-field{height:38px;display:flex;flex-direction:column;justify-content:flex-end;gap:2px;flex:0 0 auto}
.cashier-focus .paybar-field label{font-size:8px;line-height:9px;font-weight:900;color:#475569}
.cashier-focus .paybar-field input{height:31px;box-sizing:border-box;padding:5px 8px;font-size:12px;border-radius:6px;min-width:0}
.cashier-focus .paybar-paid{width:160px}.cashier-focus .paybar-ref{width:150px}.cashier-focus .paybar-change{width:165px}
.cashier-focus .paybar-change input{font-weight:800}
.cashier-focus .cashier-paybar .work-f5,
.cashier-focus .cashier-paybar .work-f6,
.cashier-focus .cashier-paybar .work-f7,
.cashier-focus .cashier-paybar .work-f8,
.cashier-focus .cashier-paybar .work-save{
  height:31px;flex:0 0 auto;padding:5px 9px;font-size:10px;white-space:nowrap;border-radius:6px;box-sizing:border-box
}
.cashier-focus .cashier-paybar .work-f5{width:42px}.cashier-focus .cashier-paybar .work-f6{width:42px}
.cashier-focus .cashier-paybar .work-f7{width:42px}.cashier-focus .cashier-paybar .work-f8{width:42px}
.cashier-focus .cashier-paybar .work-save{width:88px;font-weight:900}
.cashier-focus .cashier-paybar .receipt-btn{
  display:none;align-items:center;justify-content:center;height:31px;min-width:95px;
  padding:0 10px;background:#ea580c;color:#fff;border-radius:6px;font-size:10px;
  font-weight:900;text-decoration:none;white-space:nowrap;flex:0 0 auto
}
.cashier-focus .cashier-paybar .receipt-btn[style*="display: inline-flex"]{display:inline-flex!important}
.cashier-focus .cashier-paybar .receipt-btn:hover{background:#c2410c}
.cashier-focus .cashier-paybar .cashier-msg{
  height:31px;min-height:31px;max-height:31px;min-width:180px;flex:1 1 260px;
  margin:0;overflow:hidden
}
.cashier-focus .cashier-paybar .cashier-msg .okbox,
.cashier-focus .cashier-paybar .cashier-msg .errbox{
  height:31px;margin:0;padding:6px 8px;font-size:9px;line-height:18px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box
}
.cashier-focus .cashier-paybar .cashier-msg a{margin-left:5px;padding:4px 7px;font-size:9px;border-radius:4px}
.cashier-focus .cashier-workbar .workbar-tools{gap:6px}
.cashier-focus .cashier-workbar .w-cash{width:95px}.cashier-focus .cashier-workbar .w-cashier{width:120px}
@media(max-width:1450px){
  .cashier-focus .pay-summary-box{flex-basis:335px}
  .cashier-focus .paybar-paid{width:145px}.cashier-focus .paybar-ref{width:135px}.cashier-focus .paybar-change{width:150px}
}
@media(max-width:1100px){
  .cashier-focus .cashier-paybar{overflow-x:auto}
}


/* V43.14 PELANGGAN DROPDOWN EDITABLE - KONSEP SAMA DENGAN KATEGORI */
.cashier-focus .u-customer .customer-inline{position:relative}
.cashier-focus .u-customer #customerSearch{padding-right:30px !important}
.cashier-focus .u-customer .customer-drop-btn{
  height:34px !important;width:30px !important;flex:0 0 30px !important;
  padding:0 !important;border-radius:0 6px 6px 0 !important;
  font-size:12px !important;font-weight:900 !important;
  display:grid !important;place-items:center !important;cursor:pointer;
}
.cashier-focus .u-customer .customer-drop-btn:hover{background:#dbe5f0}
.cashier-focus .u-customer .customer-results{
  position:fixed !important;width:390px !important;max-width:min(390px,calc(100vw - 16px)) !important;
  max-height:360px !important;overflow:auto !important;
  border:1px solid #94a3b8 !important;border-radius:0 0 7px 7px !important;
  background:#fff !important;box-shadow:0 10px 24px #0003 !important;
}
.cashier-focus .u-customer .customer-results.has-results{display:block !important}

/* V43.20 HUTANG/PIUTANG - compact list like old desktop POS */
.nav-debt{font-weight:900!important}
.debt-grid-list{align-items:start}
.debt-list-panel{overflow:hidden}
.debt-list-head,.debt-list-row{display:grid;align-items:center;gap:0}
.supplier-cols,.customer-cols{grid-template-columns:42px 92px minmax(180px,1fr) 112px 74px}
.debt-list-head{padding:7px 10px;background:#eaf1f8;border-bottom:1px solid #cbd5e1;font-size:10px;font-weight:900;color:#334155;text-transform:uppercase}
.debt-list-head span:nth-child(4),.debt-list-head span:nth-child(5){text-align:right}
.debt-list-row{min-height:42px;padding:4px 10px;border-bottom:1px solid #edf2f7;background:#fff;font-size:11px}
.debt-list-row:hover{background:#f8fafc}
.debt-list-row>span:first-child{font-weight:800;color:#64748b}
.debt-list-row>span:nth-child(2){font-size:9px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.debt-list-row>span:nth-child(3){min-width:0}
.debt-list-row>span:nth-child(3) b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.debt-list-row>span:nth-child(3) small{display:block;margin-top:1px;font-size:8px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.debt-list-row>strong{text-align:right;font-size:12px;white-space:nowrap}
.mini-pay-btn{justify-self:end;border:0;border-radius:5px;padding:6px 9px;font-size:9px;font-weight:900;color:#fff;cursor:pointer;background:#1d70b8}
.mini-pay-btn.supplier{background:#b45309}
.mini-pay-btn.customer{background:#157f3d}
.debt-list-body{max-height:360px;overflow:auto}
.debt-list-empty{text-align:center;padding:18px;font-size:11px}
.debt-payment-modal{position:fixed;inset:0;background:#0005;display:flex;align-items:center;justify-content:center;z-index:2000000;padding:16px}
.debt-payment-card{width:min(430px,95vw);background:#fff;border:1px solid #94a3b8;border-radius:8px;box-shadow:0 18px 50px #0004;padding:14px}
.debt-payment-head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid #e2e8f0;padding-bottom:9px;margin-bottom:11px}
.debt-payment-head h3{margin:0;font-size:16px}.debt-payment-head small{font-size:10px;color:#64748b}
.debt-payment-close{border:0;background:#eef2f7;border-radius:5px;font-size:20px;line-height:28px;width:30px;height:30px;cursor:pointer}
.debt-payment-form{display:grid;gap:10px}.debt-payment-form label{font-size:10px;font-weight:900;color:#475569}.debt-payment-form input,.debt-payment-form select{display:block;width:100%;margin-top:4px;height:38px;box-sizing:border-box;font-size:13px}
.debt-payment-form .pay-btn{height:38px;border:0;border-radius:6px;font-size:11px;font-weight:900;cursor:pointer;background:#157f3d;color:#fff}
.debt-payment-form .pay-btn.supplier{background:#b45309}
@media(max-width:900px){.supplier-cols,.customer-cols{grid-template-columns:32px 72px minmax(130px,1fr) 96px 64px}.debt-list-body{max-height:300px}}


/* V44 POS TERMINAL - redesign kasir berbasis point-of-sale desktop */
body.cashier-focus{background:#edf2f7 !important;overflow:hidden !important;color:#0f172a}
body.cashier-focus main{padding:0 !important;height:100vh !important;overflow:hidden !important;max-width:none !important}
.cashier-focus .pos-shell{height:100vh;display:flex;flex-direction:column;min-width:1080px;background:#edf2f7}
.cashier-focus .pos-header{height:58px;flex:0 0 58px;background:#0b5cab;color:#fff;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 16px;box-sizing:border-box;box-shadow:0 2px 8px #0002}
.cashier-focus .pos-brand-block{display:flex;align-items:baseline;gap:10px;min-width:0}
.cashier-focus .pos-brand{font-size:21px;font-weight:900;letter-spacing:.4px;white-space:nowrap}
.cashier-focus .pos-terminal{font-size:10px;font-weight:800;opacity:.85;white-space:nowrap}
.cashier-focus .pos-header-center{display:flex;align-items:center;gap:14px;justify-content:center}
.cashier-focus .pos-live-status{font-size:10px;font-weight:900;letter-spacing:.4px;white-space:nowrap}
.cashier-focus .live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px #22c55e33;margin-right:6px}
.cashier-focus .pos-clock{font-size:19px;font-weight:900;font-variant-numeric:tabular-nums;min-width:84px;text-align:right}
.cashier-focus .pos-user-block{text-align:right;min-width:0}
.cashier-focus .pos-user-name{font-size:12px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cashier-focus .pos-user-role{font-size:10px;opacity:.9;white-space:nowrap}
.cashier-focus .pos-shift-mini{border:1px solid #ffffff80;background:#ffffff18;color:#fff;border-radius:5px;padding:3px 8px;font-size:9px;font-weight:900;cursor:pointer}
.cashier-focus .pos-shift-mini:hover{background:#ffffff2b}
.cashier-focus .pos-main-grid{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(430px,.95fr);gap:8px;padding:8px;box-sizing:border-box;overflow:hidden}
.cashier-focus .pos-catalog-panel,.cashier-focus .pos-cart-panel{min-height:0;background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 2px 10px #0f172a0d;overflow:hidden}
.cashier-focus .pos-catalog-panel{display:flex;flex-direction:column}
.cashier-focus .pos-cart-panel{display:flex;flex-direction:column;position:relative;z-index:20}
.cashier-focus .pos-panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 13px;border-bottom:1px solid #e2e8f0;background:#f8fafc}
.cashier-focus .pos-panel-head h1{margin:0;font-size:18px;line-height:20px}
.cashier-focus .pos-panel-head p{margin:3px 0 0;font-size:10px;color:#64748b}
.cashier-focus .pos-shortcuts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:55%}
.cashier-focus .pos-shortcuts span{font-size:8px;font-weight:900;color:#475569;background:#e2e8f0;border-radius:4px;padding:4px 6px;white-space:nowrap}
.cashier-focus .pos-search-card{padding:9px;border-bottom:1px solid #e2e8f0;background:#fff;position:relative;z-index:30}
.cashier-focus .pos-search-row{display:grid;grid-template-columns:34px minmax(220px,1fr) 155px 84px 88px;gap:5px;align-items:center}
.cashier-focus .pos-search-icon{height:36px;display:grid;place-items:center;border-radius:6px;background:#0b5cab;color:#fff;font-size:21px;font-weight:900}
.cashier-focus #scanData{height:36px;width:100%;box-sizing:border-box;border:2px solid #94a3b8;border-radius:6px;padding:7px 11px;font-size:14px;font-weight:800;outline:none}
.cashier-focus #scanData:focus{border-color:#0b5cab;box-shadow:0 0 0 2px #0b5cab22}
.cashier-focus #categorySelect{height:36px;width:100%;border:1px solid #cbd5e1;border-radius:6px;background:#fff;padding:6px 8px;font-size:10px;font-weight:900;color:#334155}
.cashier-focus .pos-add-btn,.cashier-focus .pos-clear-btn{height:36px;padding:6px 8px;font-size:10px;border-radius:6px;font-weight:900;white-space:nowrap}
.cashier-focus .pos-search-note{font-size:9px;color:#64748b;padding:5px 1px 2px}.cashier-focus .pos-search-note span{font-weight:900;color:#0b5cab}
.cashier-focus .pos-product-grid{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:5px 0 0 !important;max-height:calc(100vh - 235px);overflow:auto !important;position:relative !important;left:auto !important;top:auto !important;width:auto !important;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:6px;box-sizing:border-box;box-shadow:none !important;z-index:1}
.cashier-focus .pos-product-grid.has-results{display:grid !important}
.cashier-focus .pos-product-grid .product-results-head,.cashier-focus .pos-product-grid .product-results-headrow{grid-column:1/-1}
.cashier-focus .product-results-head{display:flex;align-items:center;justify-content:space-between;color:#334155;font-size:9px;font-weight:900;padding:0 2px}
.cashier-focus .product-results-head span{color:#0b5cab}
.cashier-focus .product-results-headrow{display:grid;grid-template-columns:1fr auto auto;gap:8px;color:#94a3b8;font-size:8px;font-weight:800;padding:0 8px 3px}
.cashier-focus .product-result-row{display:grid !important;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:6px;row-gap:2px;align-items:center;width:100%;min-height:62px;padding:7px 8px;border:1px solid #dbe3ec;border-radius:7px;background:#fff;color:#0f172a;text-align:left;cursor:pointer;box-sizing:border-box;transition:border-color .08s,box-shadow .08s,background .08s}
.cashier-focus .product-result-row:hover{border-color:#60a5fa;box-shadow:0 2px 7px #0f172a18;background:#eff6ff}
.cashier-focus .product-result-row.keyboard-active{background:#dbeafe;border-color:#2563eb;box-shadow:inset 3px 0 0 #2563eb}
.cashier-focus .product-result-row .pr-name{grid-column:1/2;min-width:0}.cashier-focus .product-result-row .pr-name b{display:block;font-size:11px;line-height:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cashier-focus .product-result-row .pr-name small{display:block;font-size:8px;color:#64748b;line-height:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cashier-focus .product-result-row .pr-price{grid-column:2;grid-row:1/3;align-self:center;color:#0b5cab;font-size:10px;white-space:nowrap}
.cashier-focus .product-result-row .stock-badge{grid-column:1;grid-row:2;font-size:8px;font-style:normal;font-weight:900}
.cashier-focus .product-result-row.stock-ok .stock-badge{color:#15803d}.cashier-focus .product-result-row.stock-low .stock-badge{color:#b45309}.cashier-focus .product-result-row.stock-empty{opacity:.62;cursor:not-allowed}.cashier-focus .product-result-row.stock-empty .pr-price{text-decoration:line-through;color:#64748b}.cashier-focus .product-empty{grid-column:1/-1 !important;text-align:center;padding:24px;color:#64748b;font-size:11px;background:#fff;border:1px dashed #cbd5e1;border-radius:6px}
.cashier-focus .pos-catalog-toolbar{display:flex;justify-content:space-between;align-items:center;padding:8px 10px 5px;border-top:1px solid #e2e8f0}
.cashier-focus .catalog-title{font-size:10px;font-weight:900;color:#334155}.cashier-focus .catalog-title span{font-size:8px;color:#94a3b8;font-weight:700;margin-left:4px}
.cashier-focus .catalog-actions{display:flex;gap:5px}.cashier-focus .catalog-btn{border:1px solid #cbd5e1;background:#f8fafc;border-radius:5px;padding:5px 8px;font-size:8px;font-weight:900;color:#475569;cursor:pointer}
.cashier-focus .pos-stock-alert{margin:0 10px 6px}.cashier-focus .pos-stock-alert.stock-alert{padding:7px 9px;border-radius:6px;font-size:10px;font-weight:800}
.cashier-focus .cart-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:11px 12px;border-bottom:1px solid #e2e8f0;background:#f8fafc}
.cashier-focus .cart-head h2{margin:0;font-size:18px}.cashier-focus .cart-head small{color:#64748b;font-size:9px;font-weight:700}
.cashier-focus .shift-status-pill{padding:6px 8px;border-radius:999px;font-size:8px;font-weight:900;white-space:nowrap;cursor:pointer}.cashier-focus .shift-status-pill.shift-open{background:#dcfce7;color:#166534;border:1px solid #86efac}.cashier-focus .shift-status-pill.shift-closed{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}
.cashier-focus .cart-customer-row{padding:8px 10px;border-bottom:1px solid #e2e8f0;position:relative;z-index:50}.cashier-focus .cart-customer-row>label{display:block;font-size:8px;font-weight:900;color:#475569;margin-bottom:3px}
.cashier-focus .pos-customer-inline{display:flex;gap:4px;width:100%;position:relative}.cashier-focus .pos-customer-inline input:not([type=hidden]){height:32px;flex:1;min-width:0;border:1px solid #cbd5e1;border-radius:6px;padding:6px 9px;font-size:11px;font-weight:700}.cashier-focus .customer-drop-btn{height:32px;width:32px;padding:0;border-radius:6px;font-size:11px}.cashier-focus .cart-customer-row .customer-results{position:absolute !important;left:10px !important;right:10px !important;top:63px !important;width:auto !important;max-height:260px !important;margin:0 !important;z-index:99999 !important;border-radius:0 0 7px 7px}
.cashier-focus .cart-table-wrap{flex:1 1 auto;min-height:0;overflow:auto;padding:0 6px}
.cashier-focus .pos-cart-table{width:100%;border-collapse:separate;border-spacing:0;font-size:10px;table-layout:fixed}.cashier-focus .pos-cart-table th{position:sticky;top:0;z-index:5;background:#eef2f7;color:#475569;border-bottom:1px solid #cbd5e1;padding:7px 5px;text-align:left;font-size:8px;font-weight:900}.cashier-focus .pos-cart-table th:nth-child(1){width:38%}.cashier-focus .pos-cart-table th:nth-child(2){width:14%}.cashier-focus .pos-cart-table th:nth-child(3){width:11%}.cashier-focus .pos-cart-table th:nth-child(4){width:11%}.cashier-focus .pos-cart-table th:nth-child(5){width:19%}.cashier-focus .pos-cart-table th:nth-child(6){width:7%}
.cashier-focus .pos-cart-table td{border-bottom:1px solid #edf2f7;padding:6px 5px;vertical-align:middle;background:#fff}.cashier-focus .pos-cart-table tr:hover td{background:#f8fafc}.cashier-focus .pos-cart-table tr.cart-selected td{background:#eff6ff}.cashier-focus .pos-cart-table .cart-product-cell{min-width:0}.cashier-focus .cart-product-cell b{display:block;font-size:10px;line-height:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cashier-focus .cart-product-cell small,.cashier-focus .promo-tag{display:block;font-size:7px;color:#64748b;line-height:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cashier-focus .money-cell{font-variant-numeric:tabular-nums;white-space:nowrap}.cashier-focus .qty,.cashier-focus .disc{width:100%;height:28px;box-sizing:border-box;padding:4px 5px;border:1px solid #cbd5e1;border-radius:5px;font-size:10px;background:#fff}.cashier-focus .danger-mini{width:27px;height:27px;padding:0;border:0;background:#fee2e2;color:#b91c1c;border-radius:5px;font-size:18px;line-height:27px;cursor:pointer}.cashier-focus .danger-mini:hover{background:#fecaca}.cashier-focus .empty-row{padding:28px 8px !important;text-align:center;color:#94a3b8;font-size:10px}
.cashier-focus .stock-row-low td{background:#fffbeb}.cashier-focus .stock-row-error td{background:#fef2f2}
.cashier-focus .cart-summary{padding:8px 11px;border-top:1px solid #e2e8f0;background:#f8fafc}.cashier-focus .sum-line,.cashier-focus .sum-total{display:flex;justify-content:space-between;align-items:center}.cashier-focus .sum-line{padding:3px 0;color:#64748b;font-size:10px}.cashier-focus .sum-total{border-top:2px solid #0b5cab;margin-top:4px;padding-top:7px;color:#0b5cab}.cashier-focus .sum-total span{font-size:11px;font-weight:900}.cashier-focus .sum-total b{font-size:24px;line-height:26px;font-variant-numeric:tabular-nums}
.cashier-focus .payment-box{padding:8px 10px;border-top:1px solid #e2e8f0;background:#fff}.cashier-focus .payment-head{display:flex;align-items:center;justify-content:space-between;font-size:9px;font-weight:900;color:#334155;margin-bottom:5px}.cashier-focus .pay-key{height:27px;padding:5px 8px;font-size:8px;font-weight:900;border-radius:5px}.cashier-focus .payment-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr 1.1fr;gap:5px}.cashier-focus .payment-grid label{font-size:7px;font-weight:900;color:#64748b}.cashier-focus .payment-grid input,.cashier-focus .payment-grid select{display:block;width:100%;height:30px;box-sizing:border-box;margin-top:3px;padding:5px 6px;border:1px solid #cbd5e1;border-radius:5px;background:#fff;font-size:9px;font-weight:800}.cashier-focus .payment-grid input:disabled{background:#f1f5f9;color:#94a3b8}.cashier-focus .payment-meta{display:grid;grid-template-columns:115px 1fr;gap:5px;margin-top:5px}.cashier-focus .payment-meta select,.cashier-focus .payment-meta input{height:28px;box-sizing:border-box;width:100%;padding:5px 6px;border:1px solid #cbd5e1;border-radius:5px;font-size:8px;background:#f8fafc;color:#475569}.cashier-focus .payment-meta label{font-size:7px;font-weight:900;color:#64748b}.cashier-focus .payment-meta label select{display:block;margin-top:2px}
.cashier-focus .cart-actions{display:grid;grid-template-columns:1fr 1fr 1.55fr;gap:5px;padding:8px 10px 5px;border-top:1px solid #e2e8f0}.cashier-focus .action-small,.cashier-focus .action-save,.cashier-focus .receipt-btn{height:35px;border-radius:6px;padding:6px 7px;font-size:9px;font-weight:900;display:flex;align-items:center;justify-content:center;text-decoration:none;box-sizing:border-box}.cashier-focus .action-save{width:100%}.cashier-focus .receipt-btn{grid-column:1/-1;background:#ea580c;color:#fff}.cashier-focus .receipt-btn:hover{background:#c2410c}.cashier-focus .cart-actions button:disabled{opacity:.45;cursor:not-allowed}
.cashier-focus .cashier-msg{min-height:31px;max-height:46px;margin:0;padding:0 10px 8px;overflow:auto;font-size:9px}.cashier-focus .cashier-msg .okbox,.cashier-focus .cashier-msg .errbox{margin:0;border-radius:5px;padding:7px 8px}.cashier-focus .cashier-msg b{font-weight:900}
.cashier-focus .pos-footer{height:29px;flex:0 0 29px;border-top:1px solid #cbd5e1;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 10px;font-size:8px;color:#64748b;box-sizing:border-box}.cashier-focus .pos-footer b{color:#334155}.cashier-focus .footer-user{white-space:nowrap}
.cashier-focus .shift-modal{z-index:50000}
@media(max-width:1300px){.cashier-focus .pos-main-grid{grid-template-columns:minmax(0,1.35fr) minmax(400px,1fr)}.cashier-focus .pos-search-row{grid-template-columns:34px minmax(180px,1fr) 130px 78px 78px}.cashier-focus .pos-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cashier-focus .pos-shortcuts{display:none}}
@media(max-width:1050px){.cashier-focus .pos-shell{min-width:0}.cashier-focus .pos-main-grid{grid-template-columns:1fr 390px}.cashier-focus .pos-header{grid-template-columns:1fr auto}.cashier-focus .pos-header-center{display:none}.cashier-focus .pos-brand{font-size:18px}}

/* V43 POS - ADMIN ATUR MENU */
.main-nav{align-items:stretch}
.main-nav .nav-menu-settings{font-weight:800;background:#f8fafc}
.main-nav .nav-menu-settings:hover{background:#e0f2fe}
.menu-admin-panel{max-width:1000px}
.menu-admin-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:16px;flex-wrap:wrap}
.menu-admin-head small{display:block;color:#64748b;margin-top:4px}
.menu-admin-actions{display:flex;gap:8px;flex-wrap:wrap}
.menu-sortable{display:flex;flex-direction:column;gap:6px}
.menu-sort-item{display:grid;grid-template-columns:32px 42px minmax(220px,1fr) minmax(160px,260px) 62px;align-items:center;gap:8px;padding:11px 12px;border:1px solid #dbe4ee;border-radius:8px;background:#fff;cursor:grab;user-select:none;transition:.12s}
.menu-sort-item:hover{border-color:#93c5fd;background:#f8fbff}
.menu-sort-item.dragging{opacity:.5}
.menu-sort-item.drag-over{border-top:3px solid #2563eb}
.menu-drag{font-size:22px;color:#64748b;text-align:center}
.menu-number{font-weight:800;color:#475569;text-align:center;background:#f1f5f9;border-radius:999px;padding:4px 0}
.menu-label{font-weight:800}
.menu-url{font-size:12px;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.menu-badge{font-size:10px;font-weight:800;text-align:center;padding:4px 5px;border-radius:999px;background:#eef2ff;color:#3730a3}
.menu-save-message{margin-top:10px;min-height:24px}
@media(max-width:800px){.menu-sort-item{grid-template-columns:30px 36px minmax(0,1fr) 56px}.menu-url{display:none}}

/* V43 POS - ADMIN PENGATURAN TAMPILAN KASIR */
.pos-admin-hidden{display:none !important}
.cashier-focus .pos-product-grid{grid-template-columns:repeat(var(--pos-product-columns,3),minmax(0,1fr)) !important}
.cashier-focus .product-result-row{min-height:var(--pos-product-card-height,62px) !important}
.cashier-focus .pos-shell.pos-size-compact .pos-panel-head{padding:8px 10px}
.cashier-focus .pos-shell.pos-size-compact .pos-panel-head h1{font-size:16px}
.cashier-focus .pos-shell.pos-size-compact .pos-search-row{gap:4px}
.cashier-focus .pos-shell.pos-size-compact #scanData,
.cashier-focus .pos-shell.pos-size-compact #categorySelect,
.cashier-focus .pos-shell.pos-size-compact .pos-add-btn,
.cashier-focus .pos-shell.pos-size-compact .pos-clear-btn{height:32px;font-size:10px}
.cashier-focus .pos-shell.pos-size-compact .pos-search-icon{height:32px;font-size:18px}
.cashier-focus .pos-shell.pos-size-compact .pos-panel-head p{font-size:9px}
.cashier-focus .pos-shell.pos-size-large .pos-panel-head{padding:13px 15px}
.cashier-focus .pos-shell.pos-size-large .pos-panel-head h1{font-size:21px}
.cashier-focus .pos-shell.pos-size-large .pos-search-card{padding:11px}
.cashier-focus .pos-shell.pos-size-large .pos-search-row{gap:7px}
.cashier-focus .pos-shell.pos-size-large #scanData,
.cashier-focus .pos-shell.pos-size-large #categorySelect,
.cashier-focus .pos-shell.pos-size-large .pos-add-btn,
.cashier-focus .pos-shell.pos-size-large .pos-clear-btn{height:42px;font-size:12px}
.cashier-focus .pos-shell.pos-size-large .pos-search-icon{height:42px;font-size:24px}
.cashier-focus .pos-shell.pos-size-large .pos-panel-head p{font-size:11px}
.cashier-focus .pos-shell.pos-size-large .product-result-row{font-size:12px}

.admin-config-page{max-width:1200px;margin:20px auto;padding:0 14px 36px}
.admin-config-title{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;flex-wrap:wrap}
.admin-config-title h1{margin:0;font-size:28px;color:#0f172a}
.admin-config-title p{margin:5px 0 0}
.admin-config-actions{display:flex;gap:8px;flex-wrap:wrap}
.config-card{margin-bottom:14px;padding:16px}
.config-card-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}
.config-card-head b{font-size:15px}.config-card-head small{display:block;color:#64748b;margin-top:3px}
.config-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.config-grid-4 label{font-size:11px;font-weight:900;color:#334155}
.config-grid-4 select{display:block;width:100%;height:38px;margin-top:5px;padding:6px 9px;box-sizing:border-box}
.range-value{display:flex;align-items:center;gap:8px;margin-top:8px}.range-value input{flex:1;min-width:0}.range-value b{min-width:58px;text-align:right;font-size:11px}.help-text{display:block;color:#64748b;font-size:9px;font-weight:500;margin-top:4px}
.toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.toggle-card{display:flex;align-items:center;gap:10px;border:1px solid #dbe4ee;border-radius:8px;padding:11px;background:#f8fafc;cursor:pointer}
.toggle-card:hover{border-color:#93c5fd;background:#eff6ff}.toggle-card input{width:18px;height:18px;flex:0 0 auto}.toggle-card b{display:block;font-size:11px}.toggle-card small{display:block;color:#64748b;font-size:9px;margin-top:2px}
.config-columns{display:grid;grid-template-columns:1fr 1.15fr;gap:14px}
.cashier-sortable{display:flex;flex-direction:column;gap:6px}.cashier-sort-item{display:grid;grid-template-columns:28px 30px 1fr;align-items:center;gap:7px;border:1px solid #dbe4ee;border-radius:7px;background:#fff;padding:9px 10px;cursor:grab;user-select:none}.cashier-sort-item:hover{border-color:#93c5fd;background:#f8fbff}.cashier-sort-item.dragging{opacity:.48}.cashier-sort-item.drag-over{border-top:3px solid #2563eb}.drag-handle{font-size:20px;color:#64748b;text-align:center}.sort-no{font-size:10px;font-weight:900;color:#475569;background:#f1f5f9;border-radius:999px;padding:4px 0;text-align:center}.cashier-sort-item b{font-size:11px}
.save-config-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#f8fafc;border:1px solid #dbe4ee;border-radius:9px;padding:13px 15px;position:sticky;bottom:8px;z-index:20}.btn-large{min-height:42px;padding:9px 16px;font-size:12px;font-weight:900}
@media(max-width:900px){.config-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.config-columns{grid-template-columns:1fr}}
@media(max-width:600px){.toggle-grid,.config-grid-4{grid-template-columns:1fr}.admin-config-title h1{font-size:22px}}

/* V45 - POS TRANSAKSI NYAMAN / DESKTOP RETAIL */
body.cashier-focus{background:#eef2f7!important;overflow:hidden!important;color:#172033}
.cashier-focus main{height:100vh!important;padding:0!important;max-width:none!important;overflow:hidden!important}
.cashier-focus .pos-shell{height:100vh;min-width:960px;display:flex;flex-direction:column;background:#eef2f7}
.cashier-focus .pos-header{height:64px;flex:0 0 64px;background:#0d5db8;color:#fff;display:grid;grid-template-columns:minmax(290px,1fr) auto minmax(290px,1fr);align-items:center;padding:0 18px;box-sizing:border-box;box-shadow:0 2px 10px #0f172a26}
.cashier-focus .pos-brand-block{display:flex;align-items:baseline;gap:10px;min-width:0}.cashier-focus .pos-brand{font-size:24px;font-weight:900;letter-spacing:.3px}.cashier-focus .pos-terminal{font-size:11px;font-weight:800;opacity:.86}
.cashier-focus .pos-header-center{display:flex;align-items:center;gap:16px;justify-content:center}.cashier-focus .pos-live-status{font-size:10px;font-weight:900;letter-spacing:.5px}.cashier-focus .pos-clock{font-size:21px;font-weight:900;font-variant-numeric:tabular-nums}.cashier-focus .pos-header-trx{font-size:10px;font-weight:700;opacity:.9;white-space:nowrap}
.cashier-focus .pos-user-block{text-align:right;min-width:0}.cashier-focus .pos-user-name{font-size:13px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cashier-focus .pos-user-role{font-size:10px;opacity:.92;white-space:nowrap}.cashier-focus .pos-shift-mini{border:1px solid #ffffff66;background:#ffffff18;color:#fff;border-radius:7px;padding:5px 9px;font-size:9px;font-weight:900;cursor:pointer}.cashier-focus .pos-shift-mini:hover{background:#ffffff2b}
.cashier-focus .pos-main-grid{flex:1 1 auto;min-height:0;display:grid;gap:10px;padding:10px;box-sizing:border-box;overflow:hidden}
.cashier-focus .pos-catalog-panel,.cashier-focus .pos-cart-panel{min-height:0;background:#fff;border:1px solid #d4dce7;border-radius:10px;box-shadow:0 3px 14px #0f172a0d;overflow:hidden}.cashier-focus .pos-catalog-panel{display:flex;flex-direction:column}.cashier-focus .pos-cart-panel{display:flex;flex-direction:column;position:relative;z-index:20}
.cashier-focus .pos-catalog-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid #e6ebf1;background:#f8fafc}.cashier-focus .pos-section-kicker{font-size:9px;font-weight:900;letter-spacing:.9px;color:#6b7280}.cashier-focus .pos-catalog-top h1{margin:1px 0 2px;font-size:22px;line-height:24px}.cashier-focus .pos-section-help{font-size:10px;color:#64748b}.cashier-focus .pos-header-actions{display:flex;align-items:center;gap:7px}.cashier-focus .pos-item-counter{font-size:10px;font-weight:800;color:#475569;background:#eef2f7;border:1px solid #d9e0e8;border-radius:999px;padding:7px 9px}.cashier-focus .pos-key-badge{font-size:9px;font-weight:900;color:#0b5cab;background:#e7f0fb;border:1px solid #bcd3ef;border-radius:6px;padding:7px 9px}
.cashier-focus .pos-search-card{padding:10px 12px 8px;border-bottom:1px solid #e6ebf1;background:#fff;position:relative;z-index:30}.cashier-focus .pos-search-row{display:grid;grid-template-columns:42px minmax(240px,1fr) 98px 80px;gap:7px;align-items:center}.cashier-focus .pos-search-icon{height:46px;display:grid;place-items:center;border-radius:8px;background:#0d5db8;color:#fff;font-size:25px;font-weight:900}.cashier-focus #scanData{height:46px;width:100%;box-sizing:border-box;border:2px solid #aebdce;border-radius:8px;padding:8px 12px;font-size:15px;font-weight:700;outline:none}.cashier-focus #scanData:focus{border-color:#0d5db8;box-shadow:0 0 0 3px #0d5db81c}.cashier-focus .pos-add-btn,.cashier-focus .pos-clear-btn{height:46px;padding:7px 10px;font-size:11px;border-radius:8px;font-weight:900}.cashier-focus .pos-search-subline{display:flex;justify-content:space-between;gap:10px;padding:6px 2px 4px;font-size:9px;color:#7b8796}.cashier-focus .pos-search-subline b{color:#0d5db8}.cashier-focus #priceClassLabel{font-weight:900;color:#0d5db8}
.cashier-focus .category-bar{display:flex;gap:6px;overflow:auto;padding:5px 1px 2px;scrollbar-width:thin}.cashier-focus .category-chip{flex:0 0 auto;height:34px;border:1px solid #d5dee9;background:#f8fafc;color:#334155;border-radius:8px;padding:0 12px;font-size:10px;font-weight:900;cursor:pointer}.cashier-focus .category-chip:hover{background:#eef5fc;border-color:#9cc3ec}.cashier-focus .category-chip.active{background:#0d5db8;color:#fff;border-color:#0d5db8;box-shadow:0 1px 4px #0d5db833}
.cashier-focus .pos-product-area{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;order:3}.cashier-focus .product-area-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 13px 7px}.cashier-focus .product-area-head b{display:block;font-size:10px;letter-spacing:.3px}.cashier-focus .product-area-head small{display:block;font-size:9px;color:#8792a1;margin-top:2px}.cashier-focus .catalog-btn{height:31px;border:1px solid #cfd8e4;background:#f7f9fb;border-radius:7px;padding:0 10px;color:#334155;font-size:9px;font-weight:900;cursor:pointer}.cashier-focus .catalog-btn:hover{background:#edf3f9}
.cashier-focus .pos-product-grid{flex:1 1 auto!important;min-height:0!important;max-height:none!important;display:grid!important;grid-template-columns:repeat(var(--pos-product-columns,3),minmax(0,1fr))!important;gap:8px!important;margin:0!important;padding:4px 12px 12px!important;overflow:auto!important;position:relative!important;left:auto!important;top:auto!important;width:auto!important;background:#fff!important;border:0!important;box-shadow:none!important;z-index:1!important;box-sizing:border-box}.cashier-focus .pos-product-grid .product-results-head,.cashier-focus .pos-product-grid .product-results-headrow{grid-column:1/-1}.cashier-focus .product-results-head{display:flex;justify-content:space-between;align-items:center;padding:0 2px 2px;font-size:9px;font-weight:900;color:#475569}.cashier-focus .product-results-head span{color:#0d5db8}.cashier-focus .product-results-headrow{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;padding:0 9px 3px;font-size:8px;font-weight:900;color:#9aa5b1}.cashier-focus .product-result-row{position:relative;display:grid!important;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:8px;row-gap:4px;align-items:center;width:100%;min-width:0;min-height:var(--pos-product-card-height,86px)!important;padding:10px 11px!important;border:1px solid #d8e0ea;border-radius:9px!important;background:#fff!important;color:#182235;text-align:left;cursor:pointer;box-sizing:border-box;transition:transform .08s,border-color .08s,box-shadow .08s,background .08s}.cashier-focus .product-result-row:hover{transform:translateY(-1px);border-color:#76aee4;box-shadow:0 4px 12px #0f172a15;background:#f9fcff!important}.cashier-focus .product-result-row.keyboard-active{background:#e9f3ff!important;border-color:#2e7ed1;box-shadow:inset 4px 0 0 #0d5db8}.cashier-focus .product-result-row .pr-name{grid-column:1;min-width:0}.cashier-focus .product-result-row .pr-name b{display:block;font-size:12px;line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cashier-focus .product-result-row .pr-name small{display:block;font-size:8px;line-height:12px;color:#7a8696;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cashier-focus .product-result-row .pr-price{grid-column:2;grid-row:1/3;align-self:center;color:#0d5db8;font-size:11px;font-weight:900;white-space:nowrap}.cashier-focus .product-result-row .stock-badge{grid-column:1;grid-row:2;font-size:9px;font-style:normal;font-weight:900}.cashier-focus .product-result-row.stock-ok .stock-badge{color:#18864b}.cashier-focus .product-result-row.stock-low .stock-badge{color:#b47712}.cashier-focus .product-result-row.stock-empty{opacity:.55}.cashier-focus .product-result-row.stock-empty .pr-price{text-decoration:line-through;color:#7b8794}.cashier-focus .product-result-row .pr-add{position:absolute;right:7px;bottom:6px;width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:#e7f0fb;color:#0d5db8;font-size:17px;font-weight:900}.cashier-focus .product-result-row:hover .pr-add{background:#0d5db8;color:#fff}.cashier-focus .product-empty{grid-column:1/-1!important;text-align:center;padding:36px 12px;color:#8a95a3;font-size:11px;background:#f8fafc;border:1px dashed #cfd8e4;border-radius:9px}
.cashier-focus .pos-stock-alert{margin:0 12px 10px}.cashier-focus .pos-stock-alert.stock-alert{padding:9px 11px;border-radius:8px;font-size:10px;font-weight:800}
.cashier-focus .cart-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 13px;border-bottom:1px solid #e6ebf1;background:#f8fafc}.cashier-focus .cart-head h2{margin:1px 0 0;font-size:19px;line-height:22px}.cashier-focus .cart-count-pill{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#0d5db8;color:#fff;font-size:10px;vertical-align:2px}.cashier-focus .cart-head-actions{display:flex;align-items:center;gap:6px}.cashier-focus .btn-soft-danger{height:32px;border:1px solid #fecaca;background:#fff1f2;color:#b91c1c;border-radius:7px;padding:0 10px;font-size:9px;font-weight:900;cursor:pointer}.cashier-focus .btn-soft-danger:hover{background:#ffe4e6}.cashier-focus .shift-status-pill{font-size:8px;font-weight:900;white-space:nowrap;border-radius:999px;padding:7px 9px;cursor:pointer}.cashier-focus .shift-status-pill.shift-open{color:#166534;background:#dcfce7}.cashier-focus .shift-status-pill.shift-closed{color:#92400e;background:#fef3c7}
.cashier-focus .cart-customer-row{padding:8px 12px 9px;border-bottom:1px solid #e6ebf1;position:relative;z-index:50}.cashier-focus .cart-customer-row>label{display:block;font-size:9px;font-weight:900;color:#687485;margin-bottom:4px;text-transform:uppercase}.cashier-focus .pos-customer-inline{display:flex;align-items:center;gap:5px}.cashier-focus .customer-icon{width:32px;height:34px;display:grid;place-items:center;background:#eef4fa;border:1px solid #d5deea;border-radius:7px;font-size:14px}.cashier-focus .pos-customer-inline input:not([type=hidden]){height:34px;flex:1;min-width:0;border:1px solid #c9d5e2;border-radius:7px;padding:7px 9px;font-size:11px;font-weight:700;box-sizing:border-box}.cashier-focus .customer-drop-btn{height:34px;width:34px;padding:0;border-radius:7px}.cashier-focus .cart-customer-row .customer-results{position:absolute!important;left:12px!important;right:12px!important;top:68px!important;width:auto!important;max-height:300px!important;z-index:99999!important;border-radius:0 0 8px 8px!important}
.cashier-focus .cart-table-wrap{flex:1 1 auto;min-height:120px;overflow:auto;padding:6px 8px;background:#fff}.cashier-focus .cart-list{display:flex;flex-direction:column;gap:6px}.cashier-focus .cart-empty{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#8390a0;text-align:center}.cashier-focus .cart-empty-icon{font-size:32px;opacity:.55}.cashier-focus .cart-empty b{font-size:12px;color:#556274}.cashier-focus .cart-empty span{font-size:9px}
.cashier-focus .cart-item-card{border:1px solid #e0e7ef;border-radius:8px;background:#fff;padding:8px 9px;cursor:pointer;box-sizing:border-box}.cashier-focus .cart-item-card:hover{border-color:#bed0e2;background:#fbfdff}.cashier-focus .cart-item-card.cart-selected{border-color:#4e91d4;background:#eef6ff;box-shadow:inset 3px 0 0 #0d5db8}.cashier-focus .cart-item-card.stock-row-low{border-left:3px solid #f2a51b}.cashier-focus .cart-item-card.stock-row-error{border-left:3px solid #dc2626}.cashier-focus .cart-item-main{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:start}.cashier-focus .cart-item-name{min-width:0}.cashier-focus .cart-item-name b{display:block;font-size:11px;line-height:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cashier-focus .cart-item-name small{display:block;color:#7b8795;font-size:8px;line-height:11px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cashier-focus .promo-tag{display:inline-block;margin-top:3px;color:#9a6507;background:#fff4cd;border-radius:4px;padding:2px 4px;font-size:7px;font-weight:900}.cashier-focus .cart-item-unit{font-size:9px;color:#687485;white-space:nowrap}.cashier-focus .cart-item-subtotal{font-size:11px;font-weight:900;color:#172033;white-space:nowrap}.cashier-focus .cart-item-controls{display:flex;align-items:center;gap:4px;margin-top:7px}.cashier-focus .qty-step{width:29px;height:29px;border:1px solid #ccd7e3;border-radius:6px;background:#f7f9fb;color:#2c3949;font-size:17px;font-weight:800;line-height:27px;cursor:pointer}.cashier-focus .qty-step:hover{background:#eaf2fa}.cashier-focus .qty{width:48px;height:29px!important;box-sizing:border-box;text-align:center;border:1px solid #bbc9d8;border-radius:6px;padding:4px 5px;font-size:11px;font-weight:900;background:#fff}.cashier-focus .item-disc-label{display:flex;align-items:center;gap:4px;margin-left:auto;font-size:8px;font-weight:900;color:#7a8694}.cashier-focus .disc{width:64px;height:29px!important;box-sizing:border-box;padding:4px 5px;border:1px solid #c8d4e1;border-radius:6px;font-size:10px;background:#fff}.cashier-focus .danger-mini{width:29px!important;height:29px!important;padding:0!important;border:0!important;background:#fff0f0!important;color:#b91c1c;border-radius:6px;font-size:18px;line-height:29px;cursor:pointer}.cashier-focus .danger-mini:hover{background:#ffd9d9!important}
.cashier-focus .cart-summary{padding:9px 12px 10px;border-top:1px solid #e5ebf2;background:#f8fafc}.cashier-focus .sum-line{display:flex;justify-content:space-between;align-items:center;padding:2px 0;color:#697587;font-size:10px}.cashier-focus .sum-total{display:flex;align-items:end;justify-content:space-between;border-top:2px solid #0d5db8;margin-top:5px;padding-top:7px;color:#0d5db8}.cashier-focus .sum-total span{font-size:12px;font-weight:900;letter-spacing:.4px}.cashier-focus .sum-total b{font-size:27px;line-height:29px;font-variant-numeric:tabular-nums}
.cashier-focus .payment-box{padding:9px 12px 10px;border-top:1px solid #e5ebf2;background:#fff}.cashier-focus .payment-head{display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:900;color:#344054;margin-bottom:6px}.cashier-focus .payment-tip{font-size:8px;color:#8b95a2}.cashier-focus .payment-methods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.cashier-focus .pay-method{height:32px;border:1px solid #cbd6e2;background:#f7f9fb;color:#394657;border-radius:6px;padding:0 5px;font-size:8px;font-weight:900;cursor:pointer}.cashier-focus .pay-method:hover{background:#eef4fa}.cashier-focus .pay-method.active{background:#e7f1fc;color:#0d5db8;border-color:#6fa8dd;box-shadow:inset 0 -2px 0 #0d5db8}.cashier-focus .payment-entry-grid{display:grid;grid-template-columns:1.15fr 1fr 1.15fr;gap:6px;margin-top:7px}.cashier-focus .payment-entry-grid label{font-size:8px;font-weight:900;color:#717d8c}.cashier-focus .payment-entry-grid input{display:block;width:100%;height:38px;box-sizing:border-box;margin-top:3px;padding:7px 8px;border:1px solid #c5d1de;border-radius:7px;background:#fff;font-size:11px;font-weight:800}.cashier-focus .payment-entry-grid .paid-field input{height:40px;font-size:15px;border:2px solid #94b7dc}.cashier-focus .payment-entry-grid input:disabled{background:#f2f5f8;color:#9ba5b1}.cashier-focus .quick-pay-row{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:6px}.cashier-focus .quick-pay{height:28px;border:1px solid #d0d9e4;background:#f8fafc;color:#465366;border-radius:6px;font-size:8px;font-weight:900;cursor:pointer}.cashier-focus .quick-pay:hover{background:#edf3f9}.cashier-focus .payment-meta{display:grid;grid-template-columns:120px minmax(0,1fr);gap:6px;margin-top:6px}.cashier-focus .payment-meta label{font-size:8px;font-weight:900;color:#7a8593}.cashier-focus .payment-meta select,.cashier-focus .payment-meta input{display:block;width:100%;height:28px;box-sizing:border-box;margin-top:3px;padding:5px 6px;border:1px solid #cbd6e1;border-radius:6px;font-size:8px;background:#f8fafc;color:#4b5869}.cashier-focus .payment-meta input{margin-top:0;align-self:end}
.cashier-focus .cart-actions{display:grid;grid-template-columns:1fr 1fr 1.7fr;gap:6px;padding:8px 12px;border-top:1px solid #e5ebf2;background:#fff}.cashier-focus .action-small,.cashier-focus .action-save,.cashier-focus .receipt-btn{height:42px;border-radius:7px;padding:6px 8px;font-size:9px;font-weight:900;display:flex;align-items:center;justify-content:center;text-decoration:none;box-sizing:border-box}.cashier-focus .action-save{font-size:11px;box-shadow:0 3px 10px #0d5db826}.cashier-focus .receipt-btn{grid-column:1/-1;background:#e67e22;color:#fff}.cashier-focus .cart-actions button:disabled{opacity:.5;cursor:not-allowed}.cashier-focus .cashier-msg{min-height:35px;max-height:58px;margin:0;padding:0 12px 9px;overflow:auto;font-size:9px}.cashier-focus .cashier-msg .okbox,.cashier-focus .cashier-msg .errbox{margin:0;border-radius:6px;padding:7px 9px}.cashier-focus .pos-footer{height:31px;flex:0 0 31px;border-top:1px solid #d6dee8;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 12px;font-size:8px;color:#7b8795;box-sizing:border-box}.cashier-focus .pos-footer b{color:#364152}.cashier-focus .footer-user{white-space:nowrap}

@media(max-width:1300px){.cashier-focus .pos-header{grid-template-columns:1fr auto 1fr}.cashier-focus .pos-header-center{gap:10px}.cashier-focus .pos-header-trx{display:none}.cashier-focus .pos-main-grid{grid-template-columns:minmax(0,1.35fr) minmax(440px,1fr)!important}.cashier-focus .pos-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:1100px){.cashier-focus .pos-shell{min-width:0}.cashier-focus .pos-main-grid{grid-template-columns:minmax(0,1fr) 420px!important}.cashier-focus .pos-brand{font-size:20px}.cashier-focus .pos-terminal,.cashier-focus .pos-live-status{display:none}.cashier-focus .pos-header-center{justify-content:center}.cashier-focus .pos-search-row{grid-template-columns:40px minmax(180px,1fr) 82px 68px}.cashier-focus .pos-add-btn,.cashier-focus .pos-clear-btn{font-size:9px}.cashier-focus .payment-methods{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.cashier-focus .pos-main-grid{grid-template-columns:1fr!important;grid-template-rows:minmax(330px,1fr) minmax(420px,1fr)!important;overflow:auto}.cashier-focus .pos-shell{height:auto;min-height:100vh}.cashier-focus main{height:auto!important;overflow:visible!important}.cashier-focus .pos-header{position:sticky;top:0;z-index:100}.cashier-focus .pos-product-grid{max-height:48vh!important}.cashier-focus .cart-table-wrap{min-height:280px}.cashier-focus .pos-footer{position:sticky;bottom:0;z-index:90}.cashier-focus .pos-catalog-top{padding:10px 12px}.cashier-focus .pos-catalog-top h1{font-size:19px}.cashier-focus .pos-search-row{grid-template-columns:36px minmax(0,1fr) 72px 58px}.cashier-focus .pos-add-btn,.cashier-focus .pos-clear-btn{padding:5px 6px}.cashier-focus .payment-methods{grid-template-columns:repeat(3,1fr)}}

.cashier-focus .pos-size-compact .product-result-row{min-height:72px!important}.cashier-focus .pos-size-compact .cart-item-card{padding:6px 8px}.cashier-focus .pos-size-compact .cart-item-controls{margin-top:4px}.cashier-focus .pos-size-compact .payment-box{padding-top:7px}.cashier-focus .pos-size-compact .sum-total b{font-size:23px}
.cashier-focus .pos-size-large .product-result-row{min-height:calc(var(--pos-product-card-height,92px) + 10px)!important}.cashier-focus .pos-size-large .pos-search-row #scanData{font-size:16px}.cashier-focus .pos-size-large .sum-total b{font-size:31px}

/* V45 POS TRANSAKSI HORIZONTAL-STACKED: full width, search result turun ke bawah */
body.cashier-focus{overflow:auto !important;background:#e9eef4 !important}
body.cashier-focus main{height:auto !important;min-height:100vh !important;overflow:visible !important;max-width:none !important}
.cashier-focus .pos-shell{height:auto !important;min-height:100vh;min-width:980px !important;display:flex;flex-direction:column;background:#e9eef4}
.cashier-focus .pos-header{position:sticky;top:0;z-index:500;height:58px;flex:0 0 58px}
.cashier-focus .pos-main-grid{display:flex !important;flex-direction:column !important;gap:8px !important;padding:8px !important;overflow:visible !important;min-height:0 !important;background:#e9eef4}
.cashier-focus .pos-catalog-panel,.cashier-focus .pos-cart-panel{width:100% !important;min-width:0 !important;overflow:visible !important;border-radius:7px}
.cashier-focus .pos-catalog-panel{display:flex !important;flex-direction:column !important;position:relative;z-index:120}
.cashier-focus .pos-cart-panel{display:flex !important;flex-direction:column !important;position:relative;z-index:110;min-height:0 !important}

/* Header transaksi */
.cashier-focus .pos-catalog-top{padding:10px 14px !important;min-height:56px;box-sizing:border-box;background:#fff;border-bottom:1px solid #d7e0ea}
.cashier-focus .pos-catalog-top h1{font-size:18px !important;margin:0 !important}
.cashier-focus .pos-section-help{font-size:10px;color:#748196}

/* Kolom cari memenuhi lebar layar */
.cashier-focus .pos-search-card{position:relative !important;z-index:300 !important;padding:9px 12px 8px !important;background:#f7fafc !important;border-bottom:1px solid #cfd9e5 !important}
.cashier-focus .pos-search-row{grid-template-columns:38px minmax(360px,1fr) 170px 92px 92px !important;gap:6px !important}
.cashier-focus #scanData{height:42px !important;font-size:15px !important;border:2px solid #7f99b7 !important;border-radius:5px !important;background:#fff}
.cashier-focus #scanData:focus{border-color:#0b5cab !important;box-shadow:0 0 0 2px #0b5cab1f !important}
.cashier-focus .pos-search-icon{height:42px !important;border-radius:5px;background:#0b5cab}
.cashier-focus .pos-add-btn,.cashier-focus .pos-clear-btn,.cashier-focus #categorySelect{height:42px !important}
.cashier-focus .pos-search-subline{display:flex;justify-content:space-between;align-items:center;padding:4px 2px 0;font-size:9px;color:#718096}
.cashier-focus .category-bar{display:flex;gap:5px;overflow-x:auto;padding-top:7px;scrollbar-width:thin}
.cashier-focus .category-chip{flex:0 0 auto}

/* Hasil pencarian turun vertikal tepat di bawah pencarian */
.cashier-focus .pos-product-area{padding:0 !important;background:#fff;display:flex;flex-direction:column}
.cashier-focus .product-area-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px 5px;border-top:1px solid #e1e8ef;background:#fff}
.cashier-focus .product-area-head b{font-size:10px;color:#27364a}
.cashier-focus .product-area-head small{display:block;margin-top:2px;font-size:8px;color:#8290a1}
.cashier-focus .catalog-btn{height:28px;padding:4px 9px;border:1px solid #cbd6e2;border-radius:5px;background:#f5f8fb;color:#415165;font-size:8px;font-weight:900;cursor:pointer}
.cashier-focus .pos-product-grid{display:block !important;max-height:310px !important;overflow:auto !important;margin:0 12px 10px !important;padding:0 !important;background:#fff !important;border:1px solid #cbd6e2 !important;border-radius:4px !important;position:relative !important;box-shadow:none !important;z-index:1 !important}
.cashier-focus .pos-product-grid:not(.has-results){display:none !important}
.cashier-focus .pos-product-grid .product-results-head{display:flex;position:sticky;top:0;z-index:5;padding:7px 10px;background:#edf3f8;border-bottom:1px solid #cbd6e2;font-size:9px}
.cashier-focus .pos-product-grid .product-results-headrow{display:grid;grid-template-columns:minmax(0,1fr) 150px 70px 36px;gap:8px;position:sticky;top:31px;z-index:5;padding:5px 10px;background:#f7fafc;border-bottom:1px solid #dbe3eb;font-size:8px;color:#7a8797}
.cashier-focus .product-result-row{display:grid !important;grid-template-columns:minmax(0,1fr) 150px 70px 36px !important;grid-template-rows:1fr !important;align-items:center !important;gap:8px !important;width:100% !important;min-height:48px !important;padding:6px 10px !important;border:0 !important;border-bottom:1px solid #e8edf2 !important;border-radius:0 !important;background:#fff !important;box-shadow:none !important;color:#1a2736 !important;text-align:left !important;box-sizing:border-box !important;cursor:pointer !important}
.cashier-focus .product-result-row:hover{background:#edf5ff !important;border-color:#d9e5f2 !important;box-shadow:none !important}
.cashier-focus .product-result-row.keyboard-active{background:#dcecff !important;box-shadow:inset 3px 0 0 #0b5cab !important}
.cashier-focus .product-result-row .pr-name{grid-column:1;grid-row:1;min-width:0}
.cashier-focus .product-result-row .pr-name b{display:block;font-size:11px;line-height:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cashier-focus .product-result-row .pr-name small{display:block;font-size:8px;line-height:11px;color:#748196;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cashier-focus .product-result-row .pr-price{grid-column:2;grid-row:1;align-self:center;text-align:right;font-size:10px;color:#0b5cab;white-space:nowrap}
.cashier-focus .product-result-row .stock-badge{grid-column:3;grid-row:1;align-self:center;text-align:right;font-size:8px;font-style:normal;font-weight:900;white-space:nowrap}
.cashier-focus .product-result-row .pr-add{grid-column:4;grid-row:1;display:grid;place-items:center;width:30px;height:30px;border:1px solid #9bb7d4;border-radius:4px;background:#f4f8fc;color:#0b5cab;font-size:18px;font-weight:900;justify-self:end}
.cashier-focus .product-result-row:hover .pr-add{background:#dcecff;border-color:#6ea5db}
.cashier-focus .product-result-row.stock-empty{opacity:.58}
.cashier-focus .product-empty{padding:24px !important;text-align:center;color:#748196;background:#fff !important;border:0 !important}

/* Tabel transaksi di bawah hasil pencarian, full width */
.cashier-focus .cart-head{display:flex !important;align-items:center;justify-content:space-between;padding:9px 12px !important;background:#f1f5f9;border-bottom:1px solid #cbd6e2}
.cashier-focus .cart-head h2{margin:0;font-size:15px;color:#243449}
.cashier-focus .cart-head-actions{display:flex;align-items:center;gap:6px}
.cashier-focus .cart-customer-row{position:relative !important;padding:8px 12px !important;background:#fff;border-bottom:1px solid #e0e7ef}
.cashier-focus .cart-customer-row .pos-customer-inline{max-width:620px}
.cashier-focus .cart-table-wrap{padding:0 !important;overflow:auto !important;background:#fff;min-height:100px !important;max-height:360px}
.cashier-focus .cart-list{display:block !important;min-width:820px}
.cashier-focus .cart-empty{min-height:150px !important}
.cashier-focus .cart-item-card{display:grid !important;grid-template-columns:minmax(0,1fr) 140px 100px 245px 38px !important;align-items:center !important;gap:8px !important;min-height:48px !important;padding:6px 10px !important;border:0 !important;border-bottom:1px solid #e4e9ef !important;border-radius:0 !important;background:#fff !important}
.cashier-focus .cart-item-card:before{display:none}
.cashier-focus .cart-item-card:hover{background:#f8fbff !important}
.cashier-focus .cart-item-card.cart-selected{background:#e9f3ff !important;box-shadow:inset 3px 0 0 #0b5cab !important}
.cashier-focus .cart-item-main{display:contents !important}
.cashier-focus .cart-item-name{grid-column:1 !important;min-width:0}
.cashier-focus .cart-item-name b{font-size:10px;line-height:13px}
.cashier-focus .cart-item-name small{font-size:8px;line-height:10px}
.cashier-focus .cart-item-unit{grid-column:2;font-size:9px;text-align:right}
.cashier-focus .cart-item-subtotal{grid-column:3;font-size:10px;text-align:right}
.cashier-focus .cart-item-controls{grid-column:4;grid-row:1;display:flex !important;align-items:center;justify-content:flex-end;gap:4px;margin:0 !important}
.cashier-focus .cart-item-controls .item-disc-label{margin-left:6px}
.cashier-focus .danger-mini{grid-column:5;grid-row:1;justify-self:end}
.cashier-focus .cart-table-wrap:before{content:'Nama Produk                 | Harga              | Subtotal            | Qty / Diskon';display:block;position:sticky;top:0;z-index:10;padding:6px 10px;background:#edf3f8;border-bottom:1px solid #cbd6e2;color:#657386;font-size:8px;font-weight:900;white-space:pre;min-width:820px;box-sizing:border-box}

.cashier-focus .cart-summary{display:flex !important;align-items:center;justify-content:flex-end;gap:25px;padding:8px 12px !important;background:#f7fafc;border-top:1px solid #d8e1ea}
.cashier-focus .sum-line{display:flex;gap:12px;min-width:150px}
.cashier-focus .sum-total{display:flex;align-items:center;gap:12px;margin:0;padding:0;border:0;min-width:250px}
.cashier-focus .sum-total b{font-size:26px}
.cashier-focus .payment-box{padding:10px 12px !important;border-top:1px solid #d8e1ea}
.cashier-focus .payment-methods{grid-template-columns:repeat(7,minmax(92px,1fr)) !important}
.cashier-focus .cart-actions{grid-template-columns:150px 170px minmax(230px,1fr) !important;padding:9px 12px !important}
.cashier-focus .cashier-msg{padding:0 12px 9px !important}

.cashier-focus .pos-stock-alert{margin:0 12px 10px !important}
.cashier-focus .pos-footer{position:sticky;bottom:0;z-index:500}

@media(max-width:1100px){
  .cashier-focus .pos-shell{min-width:0 !important}
  .cashier-focus .pos-search-row{grid-template-columns:38px minmax(0,1fr) 120px 78px 78px !important}
  .cashier-focus .pos-product-grid .product-results-headrow,.cashier-focus .product-result-row{grid-template-columns:minmax(0,1fr) 120px 62px 34px !important}
  .cashier-focus .payment-methods{grid-template-columns:repeat(4,minmax(80px,1fr)) !important}
}
@media(max-width:800px){
  .cashier-focus .pos-search-row{grid-template-columns:38px minmax(0,1fr) 78px !important}
  .cashier-focus .pos-search-row .pos-clear-btn{display:none}
  .cashier-focus #categorySelect{display:none !important}
  .cashier-focus .cart-summary{justify-content:space-between;gap:8px;flex-wrap:wrap}
  .cashier-focus .payment-methods{grid-template-columns:repeat(3,minmax(90px,1fr)) !important}
  .cashier-focus .cart-actions{grid-template-columns:1fr 1fr !important}
  .cashier-focus .action-save{grid-column:1/-1}
}

/* V46 - DESAIN TRANSAKSI MENGIKUTI REFERENSI "TRANSAKSI PENJUALAN"
   Alur sengaja satu kolom penuh: info transaksi -> pelanggan -> cari -> hasil turun -> tabel transaksi -> pembayaran. */
.cashier-focus{overflow:auto!important;background:#eef2f6!important}
.cashier-focus main{height:auto!important;min-height:100vh!important;overflow:visible!important}
.cashier-focus .pos-shell{height:auto!important;min-height:100vh!important;min-width:1100px!important;background:#eef2f6!important}
.cashier-focus .pos-header{position:sticky;top:0;z-index:1000;height:54px!important;flex:0 0 54px!important;background:#0b67b7!important;box-shadow:0 1px 5px #092e521c!important;padding:0 12px!important}
.cashier-focus .pos-brand{font-size:20px!important}.cashier-focus .pos-terminal{display:none!important}.cashier-focus .pos-clock{font-size:16px!important}.cashier-focus .pos-live-status{font-size:9px!important}
.cashier-focus .pos-main-grid{display:flex!important;flex-direction:column!important;gap:0!important;padding:0!important;overflow:visible!important;background:#eef2f6!important}
.cashier-focus .pos-catalog-panel,.cashier-focus .pos-cart-panel{width:100%!important;min-width:0!important;max-width:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;background:#fff!important}
.cashier-focus .pos-catalog-panel{display:flex!important;flex-direction:column!important;position:relative!important;z-index:20!important}
.cashier-focus .pos-cart-panel{display:flex!important;flex-direction:column!important;position:relative!important;z-index:10!important;border-top:8px solid #eef2f6!important}
/* urutan persis dari atas ke bawah */
.cashier-focus .pos-catalog-panel [data-cashier-section="panel_head"]{order:1!important}
.cashier-focus .pos-catalog-panel [data-cashier-section="customer"]{order:2!important}
.cashier-focus .pos-catalog-panel [data-cashier-section="search"]{order:3!important}
.cashier-focus .pos-catalog-panel [data-cashier-section="quickbar"]{order:4!important}
.cashier-focus .pos-catalog-panel [data-cashier-section="stock"]{order:5!important}
/* baris informasi transaksi */
.cashier-focus .pos-catalog-top{min-height:58px!important;padding:7px 12px!important;display:flex!important;align-items:center!important;gap:14px!important;background:#f4f7fa!important;border-bottom:1px solid #cdd8e4!important}
.cashier-focus .trx-title-block{min-width:170px!important}.cashier-focus .trx-title-block h1{font-size:17px!important;font-weight:900!important;color:#172437!important;margin:0!important}.cashier-focus .trx-top-fields{display:flex!important;align-items:stretch!important;gap:6px!important;flex:1!important;min-width:0!important}
.cashier-focus .trx-mini-field{min-width:150px!important;padding:5px 9px!important;background:#fff!important;border:1px solid #d2dce7!important;border-radius:3px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:2px!important;box-sizing:border-box!important}
.cashier-focus .trx-mini-field span{font-size:8px!important;font-weight:900!important;color:#728096!important}.cashier-focus .trx-mini-field b{font-size:10px!important;color:#172437!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.cashier-focus .pos-shift-inline{border:1px solid #9bb9d8!important;background:#eaf3fb!important;color:#0b5cab!important;padding:4px 7px!important;font-size:9px!important;border-radius:3px!important}
/* pelanggan sejajar dengan referensi */
.cashier-focus .cart-customer-row{display:flex!important;align-items:center!important;gap:8px!important;padding:7px 12px!important;background:#fff!important;border-bottom:1px solid #dbe3eb!important;position:relative!important;z-index:200!important}
.cashier-focus .cart-customer-row>label{width:78px!important;font-size:10px!important;font-weight:900!important;color:#4d5b6d!important}.cashier-focus .pos-customer-inline{max-width:520px!important;flex:0 0 520px!important}.cashier-focus .pos-customer-inline #customerSearch{height:34px!important;font-size:11px!important}
/* pencarian produk selalu tepat sebelum hasil */
.cashier-focus .pos-search-card{padding:8px 12px 7px!important;background:#f8fafc!important;border-bottom:1px solid #cbd6e2!important;position:relative!important;z-index:500!important}
.cashier-focus .pos-search-row{grid-template-columns:34px minmax(0,1fr) 92px 70px!important;gap:5px!important}.cashier-focus .pos-search-icon{height:38px!important;font-size:21px!important;border-radius:3px!important}.cashier-focus #scanData{height:38px!important;border:1px solid #7d91aa!important;border-radius:3px!important;font-size:13px!important}.cashier-focus .pos-add-btn,.cashier-focus .pos-clear-btn{height:38px!important;border-radius:3px!important;font-size:9px!important}
.cashier-focus .pos-search-subline{padding:4px 1px 2px!important;font-size:8px!important}.cashier-focus .category-bar{padding:4px 0 0!important}.cashier-focus .category-chip{height:29px!important;border-radius:3px!important;font-size:9px!important;padding:0 10px!important}
/* saat belum mencari, hasil sama sekali tidak makan ruang */
.cashier-focus .pos-product-area{display:flex!important;flex-direction:column!important;background:#fff!important;padding:0!important;min-height:0!important}
.cashier-focus .pos-product-area .product-area-head{display:none!important}
.cashier-focus .pos-product-area:has(.pos-product-grid.has-results) .product-area-head{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:5px 12px 4px!important;border-bottom:1px solid #dbe3eb!important}
.cashier-focus .pos-product-area:has(.pos-product-grid.has-results) .product-area-head b{font-size:9px!important}.cashier-focus .pos-product-area:has(.pos-product-grid.has-results) .product-area-head small{font-size:8px!important}
.cashier-focus .catalog-btn{height:25px!important;padding:0 8px!important;border-radius:3px!important;font-size:8px!important}
/* dropdown hasil pencarian: turun tepat di bawah kolom cari, bentuk tabel */
.cashier-focus .pos-product-grid{display:none!important;max-height:280px!important;overflow:auto!important;margin:0 12px 8px!important;padding:0!important;background:#fff!important;border:1px solid #bfcddd!important;border-radius:2px!important;box-shadow:0 2px 6px #0f172a12!important;width:auto!important;position:relative!important;box-sizing:border-box!important}
.cashier-focus .pos-product-grid.has-results{display:block!important}
.cashier-focus .pos-product-grid .product-results-head{display:flex!important;justify-content:space-between!important;align-items:center!important;position:sticky!important;top:0!important;z-index:3!important;padding:6px 9px!important;background:#eaf1f7!important;border-bottom:1px solid #cbd6e2!important;font-size:8px!important}
.cashier-focus .pos-product-grid .product-results-headrow{display:grid!important;grid-template-columns:minmax(0,1fr) 140px 70px 34px!important;position:sticky!important;top:28px!important;z-index:3!important;padding:5px 9px!important;background:#f6f8fa!important;border-bottom:1px solid #d6dfe8!important;font-size:8px!important;color:#6d7b8d!important}
.cashier-focus .product-result-row{display:grid!important;grid-template-columns:minmax(0,1fr) 140px 70px 34px!important;grid-template-rows:1fr!important;align-items:center!important;gap:7px!important;width:100%!important;min-height:39px!important;padding:5px 9px!important;border:0!important;border-bottom:1px solid #edf1f4!important;border-radius:0!important;background:#fff!important;color:#1b293b!important;box-shadow:none!important;cursor:pointer!important;box-sizing:border-box!important}
.cashier-focus .product-result-row:hover{background:#edf5ff!important;transform:none!important;box-shadow:none!important}.cashier-focus .product-result-row.keyboard-active{background:#dbeafe!important;box-shadow:inset 3px 0 0 #0b5cab!important}
.cashier-focus .product-result-row .pr-name{grid-column:1!important;grid-row:1!important;min-width:0!important}.cashier-focus .product-result-row .pr-name b{font-size:10px!important;line-height:13px!important}.cashier-focus .product-result-row .pr-name small{font-size:8px!important;line-height:10px!important}
.cashier-focus .product-result-row .pr-price{grid-column:2!important;grid-row:1!important;text-align:right!important;font-size:9px!important;color:#0b5cab!important}.cashier-focus .product-result-row .stock-badge{grid-column:3!important;grid-row:1!important;text-align:right!important;font-size:8px!important}.cashier-focus .product-result-row .pr-add{grid-column:4!important;grid-row:1!important;position:static!important;width:26px!important;height:26px!important;border-radius:3px!important;font-size:16px!important;justify-self:end!important}
/* transaksi berada di bawah hasil pencarian, full width */
.cashier-focus .cart-head{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:7px 12px!important;background:#eef3f7!important;border-top:1px solid #cbd6e2!important;border-bottom:1px solid #cbd6e2!important}.cashier-focus .cart-head h2{font-size:14px!important;margin:0!important}.cashier-focus .cart-table-wrap{padding:0!important;max-height:330px!important;min-height:80px!important;overflow:auto!important;background:#fff!important}.cashier-focus .cart-list{min-width:980px!important}.cashier-focus .cart-table-wrap:before{content:'Nama Produk                              | Harga           | Subtotal       | Qty / Diskon';display:block!important;position:sticky!important;top:0!important;z-index:4!important;padding:6px 10px!important;background:#eaf1f7!important;border-bottom:1px solid #cbd6e2!important;color:#66758a!important;font-size:8px!important;font-weight:900!important;white-space:pre!important;min-width:980px!important;box-sizing:border-box!important}
.cashier-focus .cart-item-card{display:grid!important;grid-template-columns:minmax(0,1fr) 140px 110px 235px 38px!important;min-height:42px!important;padding:5px 10px!important;gap:7px!important;border:0!important;border-bottom:1px solid #edf1f4!important;border-radius:0!important;background:#fff!important}.cashier-focus .cart-item-card.cart-selected{background:#e8f2ff!important;box-shadow:inset 3px 0 0 #0b5cab!important}.cashier-focus .cart-item-main{display:contents!important}.cashier-focus .cart-item-name b{font-size:10px!important}.cashier-focus .cart-item-name small{font-size:8px!important}.cashier-focus .cart-item-unit,.cashier-focus .cart-item-subtotal{font-size:9px!important;text-align:right!important}.cashier-focus .cart-item-controls{display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:4px!important;margin:0!important}
/* total + pembayaran lebar penuh */
.cashier-focus .cart-summary{display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:24px!important;padding:8px 12px!important;background:#f6f8fa!important;border-top:1px solid #cbd6e2!important}.cashier-focus .sum-line{min-width:150px!important}.cashier-focus .sum-total{min-width:280px!important}.cashier-focus .sum-total b{font-size:26px!important}
.cashier-focus .payment-box{padding:8px 12px!important;background:#fff!important;border-top:1px solid #d8e1ea!important}.cashier-focus .payment-head{font-size:9px!important}.cashier-focus .payment-methods{grid-template-columns:repeat(7,minmax(100px,1fr))!important;gap:5px!important}.cashier-focus .pay-method{min-height:34px!important;font-size:9px!important;border-radius:3px!important}.cashier-focus .payment-entry-grid{grid-template-columns:1fr 1fr 1fr!important}.cashier-focus .quick-pay-row{grid-template-columns:repeat(4,1fr)!important}.cashier-focus .quick-pay{min-height:28px!important;font-size:8px!important;border-radius:3px!important}.cashier-focus .payment-meta{grid-template-columns:1fr 1fr!important}.cashier-focus .cart-actions{grid-template-columns:150px 170px minmax(260px,1fr)!important;padding:8px 12px!important}.cashier-focus .action-save{min-height:44px!important;font-size:12px!important;border-radius:3px!important}
.cashier-focus .pos-footer{position:static!important;height:auto!important;padding:6px 12px!important;font-size:8px!important;background:#e5ebf1!important;border-top:1px solid #c9d4df!important}
@media(max-width:1200px){.cashier-focus .trx-top-fields{overflow:auto}.cashier-focus .trx-mini-field{min-width:130px!important}.cashier-focus .payment-methods{grid-template-columns:repeat(4,minmax(90px,1fr))!important}}

/* V47 - MODE KASIR FOKUS: pembayaran di bagian atas, satu layar penuh, tanpa scroll halaman.
   Semua panel kasir diperlakukan sebagai satu alur vertikal supaya bagian pembayaran
   dapat ditempatkan di atas area pelanggan/pencarian tanpa layout kiri-kanan. */
@media(min-width:901px){
  body.cashier-focus{height:100%;overflow:hidden!important}
  .cashier-focus main{height:calc(100vh - 54px)!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important}
  .cashier-focus .pos-shell{height:100%!important;min-height:0!important;min-width:0!important;overflow:hidden!important;background:#eef2f6!important}
  .cashier-focus .pos-main-grid{display:flex!important;flex-direction:column!important;gap:0!important;padding:0!important;height:100%!important;min-height:0!important;overflow:hidden!important;background:#eef2f6!important}
  .cashier-focus .pos-catalog-panel,.cashier-focus .pos-cart-panel{display:contents!important}

  /* Urutan visual: info -> pembayaran -> aksi -> pelanggan -> pencarian -> hasil -> transaksi */
  .cashier-focus [data-cashier-section="panel_head"]{order:10!important;flex:0 0 auto!important}
  .cashier-focus [data-cashier-section="payment"]{order:20!important;flex:0 0 auto!important}
  .cashier-focus [data-cashier-section="actions"]{order:30!important;flex:0 0 auto!important}
  .cashier-focus [data-cashier-section="customer"]{order:40!important;flex:0 0 auto!important}
  .cashier-focus [data-cashier-section="search"]{order:50!important;flex:0 0 auto!important}
  .cashier-focus [data-cashier-section="quickbar"]{order:60!important;flex:0 0 auto!important;min-height:0!important}
  .cashier-focus [data-cashier-section="stock"]{order:70!important;flex:0 0 auto!important}
  .cashier-focus [data-cashier-section="cart_head"]{order:80!important;flex:0 0 auto!important}
  .cashier-focus [data-cashier-section="cart"]{order:90!important;flex:1 1 auto!important;min-height:88px!important;overflow:hidden!important}
  .cashier-focus [data-cashier-section="summary"]{order:100!important;flex:0 0 auto!important}
  .cashier-focus [data-cashier-section="message"]{order:105!important;flex:0 0 auto!important}
  .cashier-focus .pos-footer{display:none!important}

  /* Panel informasi atas dibuat padat agar fokus transaksi tetap berada dalam viewport. */
  .cashier-focus .pos-catalog-top{min-height:54px!important;height:54px!important;padding:6px 12px!important;box-sizing:border-box!important}
  .cashier-focus .trx-title-block{min-width:175px!important}
  .cashier-focus .trx-title-block .pos-section-kicker{font-size:9px!important}
  .cashier-focus .trx-title-block h1{font-size:17px!important}
  .cashier-focus .trx-top-fields{gap:5px!important}
  .cashier-focus .trx-mini-field{min-width:145px!important;padding:4px 8px!important}

  /* Pembayaran dipindahkan ke bagian atas dan dibuat kompak. */
  .cashier-focus .payment-box{padding:7px 12px 8px!important;background:#fff!important;border-top:0!important;border-bottom:1px solid #cbd6e2!important}
  .cashier-focus .payment-head{height:18px!important;margin:0 0 4px!important;font-size:10px!important}
  .cashier-focus .payment-methods{grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:5px!important}
  .cashier-focus .pay-method{height:34px!important;min-height:34px!important;padding:0 4px!important;font-size:9px!important;border-radius:3px!important}
  .cashier-focus .payment-entry-grid{grid-template-columns:1fr 1fr 1fr!important;gap:6px!important;margin-top:6px!important}
  .cashier-focus .payment-entry-grid label{font-size:8px!important}
  .cashier-focus .payment-entry-grid input{height:36px!important;margin-top:2px!important;font-size:11px!important}
  .cashier-focus .payment-entry-grid .paid-field input{height:38px!important;font-size:15px!important}
  .cashier-focus .quick-pay-row{grid-template-columns:repeat(4,1fr)!important;gap:5px!important;margin-top:5px!important}
  .cashier-focus .quick-pay{height:26px!important;min-height:26px!important;font-size:8px!important}
  .cashier-focus .payment-meta{grid-template-columns:1fr 1fr!important;gap:6px!important;margin-top:5px!important}
  .cashier-focus .payment-meta label{font-size:8px!important}
  .cashier-focus .payment-meta select,.cashier-focus .payment-meta input{height:27px!important;margin-top:2px!important;font-size:8px!important}

  /* Tombol simpan tetap mudah dijangkau tepat setelah pembayaran. */
  .cashier-focus .cart-actions{grid-template-columns:150px 170px minmax(0,1fr)!important;gap:6px!important;padding:6px 12px!important;background:#eef2f6!important;border-bottom:1px solid #cbd6e2!important}
  .cashier-focus .cart-actions .action-small{height:40px!important;min-height:40px!important;font-size:9px!important}
  .cashier-focus .cart-actions .action-save{height:40px!important;min-height:40px!important;font-size:12px!important}
  .cashier-focus .receipt-btn{height:40px!important;line-height:40px!important}

  .cashier-focus .cart-customer-row{padding:5px 12px!important;min-height:44px!important;box-sizing:border-box!important}
  .cashier-focus .cart-customer-row>label{font-size:9px!important;width:76px!important}
  .cashier-focus .pos-customer-inline{height:34px!important;max-width:none!important;flex:1 1 auto!important}
  .cashier-focus .pos-customer-inline #customerSearch{height:34px!important;font-size:11px!important}

  .cashier-focus .pos-search-card{padding:6px 12px 5px!important}
  .cashier-focus .pos-search-row{grid-template-columns:34px minmax(0,1fr) 92px 70px!important;gap:5px!important}
  .cashier-focus .pos-search-icon,.cashier-focus #scanData,.cashier-focus .pos-add-btn,.cashier-focus .pos-clear-btn{height:36px!important}
  .cashier-focus #scanData{font-size:12px!important}
  .cashier-focus .pos-search-subline{padding:3px 1px 1px!important;font-size:8px!important}
  .cashier-focus .category-bar{padding:3px 0 0!important;overflow:hidden!important}
  .cashier-focus .category-chip{height:27px!important;font-size:8px!important;padding:0 9px!important}

  /* Hasil pencarian hanya memakai ruang saat benar-benar muncul. */
  .cashier-focus .pos-product-area{padding:0!important;min-height:0!important}
  .cashier-focus .pos-product-area:has(.pos-product-grid.has-results) .product-area-head{padding:4px 12px 3px!important}
  .cashier-focus .pos-product-grid{max-height:150px!important;overflow:auto!important;margin:0 12px 5px!important}
  .cashier-focus .product-result-row{min-height:34px!important;padding:4px 8px!important}
  .cashier-focus .product-result-row .pr-name b{font-size:9px!important;line-height:11px!important}
  .cashier-focus .product-result-row .pr-name small{font-size:7px!important;line-height:9px!important}
  .cashier-focus .product-result-row .pr-price{font-size:8px!important}
  .cashier-focus .product-result-row .stock-badge{font-size:7px!important}
  .cashier-focus .product-result-row .pr-add{width:22px!important;height:22px!important;font-size:14px!important}

  /* Area transaksi mengisi seluruh sisa layar; hanya daftar barang yang bisa menggulung bila isinya sangat banyak. */
  .cashier-focus .cart-head{padding:5px 12px!important;min-height:34px!important;box-sizing:border-box!important}
  .cashier-focus .cart-head h2{font-size:12px!important}
  .cashier-focus .cart-table-wrap{max-height:none!important;min-height:88px!important;overflow:auto!important;flex:1 1 auto!important}
  .cashier-focus .cart-table-wrap:before{padding:5px 10px!important;font-size:7px!important}
  .cashier-focus .cart-item-card{min-height:34px!important;padding:4px 9px!important;grid-template-columns:minmax(0,1fr) 130px 100px 220px 34px!important}
  .cashier-focus .cart-item-name b{font-size:9px!important;line-height:11px!important}
  .cashier-focus .cart-item-name small{font-size:7px!important}
  .cashier-focus .cart-item-unit,.cashier-focus .cart-item-subtotal{font-size:8px!important}

  .cashier-focus .cart-summary{padding:5px 12px!important;gap:18px!important;min-height:38px!important;box-sizing:border-box!important}
  .cashier-focus .sum-line{min-width:120px!important;font-size:8px!important}
  .cashier-focus .sum-total{min-width:220px!important;font-size:10px!important}
  .cashier-focus .sum-total b{font-size:22px!important}
  .cashier-focus .cashier-msg{padding:0 12px 4px!important;font-size:8px!important}
}

@media(max-height:800px) and (min-width:901px){
  .cashier-focus .pos-header{height:42px!important;flex-basis:42px!important}
  .cashier-focus main{height:calc(100vh - 42px)!important}
  .cashier-focus .pos-catalog-top{height:48px!important;min-height:48px!important;padding:4px 10px!important}
  .cashier-focus .trx-title-block{min-width:150px!important}.cashier-focus .trx-title-block h1{font-size:15px!important}
  .cashier-focus .trx-mini-field{min-width:125px!important;padding:3px 6px!important}
  .cashier-focus .payment-box{padding:5px 10px 6px!important}
  .cashier-focus .payment-head{height:14px!important;font-size:8px!important;margin-bottom:2px!important}
  .cashier-focus .pay-method{height:28px!important;min-height:28px!important;font-size:8px!important}
  .cashier-focus .payment-entry-grid{margin-top:4px!important}
  .cashier-focus .payment-entry-grid input,.cashier-focus .payment-entry-grid .paid-field input{height:30px!important;font-size:10px!important}
  .cashier-focus .quick-pay-row{margin-top:3px!important}.cashier-focus .quick-pay{height:22px!important;min-height:22px!important}
  .cashier-focus .payment-meta{margin-top:3px!important}.cashier-focus .payment-meta select,.cashier-focus .payment-meta input{height:23px!important}
  .cashier-focus .cart-actions{padding:4px 10px!important}.cashier-focus .cart-actions .action-small,.cashier-focus .cart-actions .action-save{height:34px!important;min-height:34px!important}
  .cashier-focus .cart-customer-row{min-height:38px!important;padding:4px 10px!important}.cashier-focus .pos-customer-inline,.cashier-focus .pos-customer-inline #customerSearch{height:29px!important}
  .cashier-focus .pos-search-card{padding:4px 10px!important}.cashier-focus .pos-search-icon,.cashier-focus #scanData,.cashier-focus .pos-add-btn,.cashier-focus .pos-clear-btn{height:32px!important}
  .cashier-focus .category-chip{height:23px!important}.cashier-focus .pos-product-grid{max-height:112px!important}
  .cashier-focus .cart-head{min-height:30px!important;padding:4px 10px!important}.cashier-focus .cart-table-wrap{min-height:70px!important}
  .cashier-focus .cart-item-card{min-height:30px!important;padding:3px 8px!important}
  .cashier-focus .cart-summary{min-height:32px!important;padding:3px 10px!important}.cashier-focus .sum-total b{font-size:20px!important}
}

/* V44.2 SIMPLE POS - mengikuti referensi transaksi penjualan klasik: satu layar penuh, fokus, sederhana */
body.cashier-focus{height:100%;overflow:hidden!important}
body.cashier-focus main{height:100vh!important;max-width:none!important;margin:0!important;padding:0!important;overflow:hidden!important;background:#eef2f6!important}
.cashier-focus .simple-pos-shell{height:100vh;width:100vw;min-width:1100px;display:flex;flex-direction:column;overflow:hidden;background:#eef2f6;color:#10233a;font-family:Arial,Helvetica,sans-serif}
.cashier-focus .simple-titlebar{height:42px;flex:0 0 42px;background:#0f67b4;color:#fff;display:flex;align-items:center;padding:0 10px;gap:18px;box-sizing:border-box}
.cashier-focus .simple-title{font-size:17px;font-weight:400;white-space:nowrap}.cashier-focus .simple-info{flex:1;text-align:center;font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cashier-focus .simple-clock{font-size:13px;font-weight:800;min-width:66px;text-align:right}.cashier-focus .simple-close{width:25px;height:25px;border:0;border-radius:4px;background:#eaf3ff;color:#0f67b4;font-size:18px;font-weight:900;line-height:25px;padding:0;cursor:pointer}
.cashier-focus .simple-commandbar{height:35px;flex:0 0 35px;display:flex;align-items:stretch;background:#0f67b4;border-top:1px solid #2f7ec3;border-bottom:1px solid #8cb7df;overflow:hidden}.cashier-focus .simple-commandbar button,.cashier-focus .simple-commandbar select{height:35px;border:0;border-right:1px solid #4d95cd;background:#0f67b4;color:#fff;padding:0 15px;font-size:11px;font-weight:700;cursor:pointer;white-space:nowrap}.cashier-focus .simple-commandbar button:hover,.cashier-focus .simple-commandbar select:hover{background:#155f99}.cashier-focus .simple-commandbar .cmd-save{background:#0a5a9f}.cashier-focus .simple-commandbar b{font-weight:900}.cashier-focus .simple-commandbar .cmd-select{appearance:auto}
.cashier-focus .simple-form-row{height:58px;flex:0 0 58px;display:grid;grid-template-columns:140px 140px 200px 150px minmax(180px,1fr);gap:6px;align-items:center;padding:6px 10px;background:#f4f7fa;border-bottom:1px solid #cad5e1}.cashier-focus .sf-item{height:46px;display:flex;flex-direction:column;justify-content:center;gap:4px}.cashier-focus .sf-item span{font-size:9px;text-transform:uppercase;color:#53657a;font-weight:900}.cashier-focus .sf-item input,.cashier-focus .sf-shift-btn{height:31px;width:100%;box-sizing:border-box;border:1px solid #bccbda;background:#fff;padding:5px 8px;border-radius:2px;font-size:12px;color:#12233a}.cashier-focus .sf-shift-btn{background:#e7f1fb;border-color:#8fb7dd;color:#0d5fa9;font-weight:900;cursor:pointer}.cashier-focus .sf-total{align-items:flex-end}.cashier-focus .sf-total b{font-size:20px;color:#0b5cab;line-height:31px}
.cashier-focus .simple-customer-row{height:40px;flex:0 0 40px;display:flex;align-items:center;gap:7px;padding:0 10px;background:#fff;border-bottom:1px solid #d4dde7;position:relative;z-index:90}.cashier-focus .simple-label{font-size:10px;font-weight:900;color:#56677b;width:78px}.cashier-focus .simple-customer-inline{display:flex;max-width:430px;flex:0 0 430px;gap:4px}.cashier-focus .simple-customer-inline input:not([type=hidden]){height:30px;flex:1;min-width:0;border:1px solid #aebdcd;border-radius:2px;font-size:12px;padding:5px 8px}.cashier-focus .customer-drop-btn{height:30px;width:34px;border:1px solid #aebdcd;background:#edf2f7;border-radius:2px;cursor:pointer}.cashier-focus .price-class-label{margin-left:auto;font-size:9px;color:#0b5cab;font-weight:900}.cashier-focus .customer-results{position:fixed;z-index:99999;display:none;background:#fff;border:1px solid #91a5b9;box-shadow:0 4px 12px #0003;max-height:260px;overflow:auto}.cashier-focus .customer-results.has-results{display:block}
.cashier-focus .simple-search-row{height:40px;flex:0 0 40px;display:grid;grid-template-columns:36px minmax(0,1fr) 170px 90px 70px;gap:5px;align-items:center;padding:4px 10px;background:#eef3f8;border-bottom:0}.cashier-focus .sf-scan-icon{height:32px;display:grid;place-items:center;background:#0f67b4;color:#fff;font-size:19px;border-radius:2px}.cashier-focus #scanData{height:32px;width:100%;box-sizing:border-box;border:1px solid #8398ac;border-radius:2px;padding:5px 9px;font-size:13px;outline:0}.cashier-focus #scanData:focus{border-color:#0f67b4;box-shadow:0 0 0 1px #0f67b4}.cashier-focus #categorySelect{height:32px;border:1px solid #b6c4d2;background:#fff;border-radius:2px;font-size:10px;font-weight:700;padding:4px 6px}.cashier-focus .sf-add,.cashier-focus .sf-clear{height:32px;border-radius:2px;border:1px solid #0b5eaa;font-weight:900;font-size:10px;cursor:pointer}.cashier-focus .sf-add{background:#0f67b4;color:#fff}.cashier-focus .sf-clear{background:#e8edf3;color:#22354a;border-color:#b9c6d4}
.cashier-focus .simple-search-hint{height:18px;flex:0 0 18px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;color:#597087;font-size:8px;background:#eef3f8}.cashier-focus .simple-search-hint b{color:#0f67b4}.cashier-focus .simple-category-bar{height:32px;flex:0 0 32px;display:flex;gap:4px;align-items:center;overflow:hidden;padding:0 10px;background:#eef3f8;border-bottom:1px solid #ccd8e4}.cashier-focus .category-chip{height:26px;padding:0 11px;border:1px solid #b9c7d6;background:#fff;color:#22384f;border-radius:2px;font-size:9px;font-weight:900;cursor:pointer;white-space:nowrap}.cashier-focus .category-chip.active{background:#0f67b4;color:#fff;border-color:#0f67b4}
.cashier-focus .simple-results-anchor{position:relative;flex:0 0 auto;height:0;z-index:300}.cashier-focus .simple-results-anchor #productResults{display:none;position:absolute;left:10px;right:10px;top:0;max-height:205px;overflow:auto;background:#fff;border:1px solid #8ca1b6;box-shadow:0 5px 12px #0003;border-radius:0;padding:0;margin:0}.cashier-focus .simple-results-anchor #productResults.has-results{display:block}.cashier-focus .simple-results-anchor .product-results-head{display:flex;justify-content:space-between;padding:6px 8px;background:#e7eff6;border-bottom:1px solid #cad6e1;font-size:8px;font-weight:900}.cashier-focus .simple-results-anchor .product-results-headrow{display:grid;grid-template-columns:1fr 125px 65px 28px;gap:5px;padding:5px 8px;background:#f4f7fa;border-bottom:1px solid #d6e0e8;font-size:8px;color:#617389;position:sticky;top:0;z-index:2}.cashier-focus .simple-results-anchor .product-result-row{display:grid;grid-template-columns:1fr 125px 65px 28px;gap:5px;width:100%;min-height:34px;box-sizing:border-box;padding:5px 8px;border:0;border-bottom:1px solid #edf1f4;background:#fff;color:#10233a;text-align:left;cursor:pointer}.cashier-focus .simple-results-anchor .product-result-row:hover,.cashier-focus .simple-results-anchor .product-result-row.keyboard-active{background:#eaf3ff}.cashier-focus .simple-results-anchor .pr-name{min-width:0}.cashier-focus .simple-results-anchor .pr-name b{display:block;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cashier-focus .simple-results-anchor .pr-name small{display:block;font-size:7px;color:#697b8e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cashier-focus .simple-results-anchor .pr-price,.cashier-focus .simple-results-anchor .stock-badge{font-size:8px;align-self:center}.cashier-focus .simple-results-anchor .pr-price{text-align:right;color:#0f67b4}.cashier-focus .simple-results-anchor .stock-badge{text-align:right;font-style:normal}.cashier-focus .simple-results-anchor .pr-add{font-size:16px;line-height:22px;text-align:center;color:#0f67b4}
.cashier-focus .simple-table-head{height:29px;flex:0 0 29px;display:grid;grid-template-columns:minmax(240px,2.4fr) 1fr 70px 120px 65px 85px 130px 52px;gap:0;align-items:center;background:#dfe8f0;border-top:1px solid #c4d1de;border-bottom:1px solid #aab9c8;padding:0 6px;color:#4e6074;font-size:9px;font-weight:900}.cashier-focus .simple-table-head span{padding:0 5px;border-right:1px solid #c7d3de}.cashier-focus .simple-table-head .c-name{text-align:left}
.cashier-focus .simple-cart-area{flex:1 1 auto;min-height:60px;overflow:auto;background:#fff;border-bottom:1px solid #c6d2df}.cashier-focus .simple-cart-area .cart-list{width:100%;min-height:100%}.cashier-focus .simple-cart-area .cart-item-card{display:grid;grid-template-columns:minmax(240px,2.4fr) 1fr 70px 120px 65px 85px 130px 52px;align-items:center;gap:0;min-height:34px;padding:0 6px;border-bottom:1px solid #edf1f5;background:#fff;border-radius:0}.cashier-focus .simple-cart-area .cart-item-card.cart-selected{background:#e8f2fc;box-shadow:inset 3px 0 0 #0f67b4}.cashier-focus .simple-cart-area .cart-item-main{display:contents}.cashier-focus .simple-cart-area .cart-item-name{grid-column:1;padding:5px 5px;min-width:0}.cashier-focus .simple-cart-area .cart-item-name b{display:block;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cashier-focus .simple-cart-area .cart-item-name small{display:block;font-size:7px;color:#718094;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cashier-focus .simple-cart-area .cart-item-unit{grid-column:4;padding:0 5px;text-align:right;font-size:8px}.cashier-focus .simple-cart-area .cart-item-subtotal{grid-column:7;padding:0 5px;text-align:right;font-size:8px}.cashier-focus .simple-cart-area .cart-item-controls{grid-column:5/9;display:contents}.cashier-focus .simple-cart-area .qty-step{height:24px;width:24px;padding:0;border:1px solid #bbc9d6;background:#edf2f7;color:#274058;border-radius:2px;font-weight:900;cursor:pointer}.cashier-focus .simple-cart-area .qty{grid-column:5;width:56px;height:24px;padding:2px 4px;border:1px solid #b7c6d4;border-radius:2px;font-size:9px}.cashier-focus .simple-cart-area .item-disc-label{grid-column:6;display:flex;align-items:center;gap:3px;font-size:7px;color:#61748a;padding:0 5px}.cashier-focus .simple-cart-area .disc{width:62px;height:24px;padding:2px 4px;border:1px solid #b7c6d4;border-radius:2px;font-size:8px}.cashier-focus .simple-cart-area .danger-mini{grid-column:8;justify-self:center;width:24px;height:24px;padding:0;border:1px solid #e2b0b0;background:#fff1f1;color:#c22b2b;border-radius:2px;cursor:pointer}.cashier-focus .cart-empty{height:100%;min-height:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#7b8a9b}.cashier-focus .cart-empty b{font-size:12px}.cashier-focus .cart-empty span{font-size:9px}
.cashier-focus .simple-payment-head{height:24px;flex:0 0 24px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;background:#dfe8f0;border-top:1px solid #bccbd9;color:#3e5268;font-size:9px;font-weight:900}.cashier-focus .simple-payment-methods{height:38px;flex:0 0 38px;display:grid;grid-template-columns:repeat(7,1fr);gap:5px;padding:4px 10px;background:#f6f8fa;box-sizing:border-box}.cashier-focus .simple-payment-methods .pay-method{height:30px;border:1px solid #bfcbd7;background:#fff;color:#22354a;border-radius:2px;font-size:9px;font-weight:900;cursor:pointer}.cashier-focus .simple-payment-methods .pay-method.active{background:#e5f1fd;border-color:#0f67b4;color:#0f67b4;box-shadow:inset 0 -2px 0 #0f67b4}.cashier-focus .simple-pay-grid{height:51px;flex:0 0 51px;display:grid;grid-template-columns:1.35fr 1.1fr 1.1fr 1fr 1fr;gap:5px;padding:4px 10px;background:#fff;box-sizing:border-box}.cashier-focus .simple-pay-grid label{font-size:8px;font-weight:900;color:#5c6e82}.cashier-focus .simple-pay-grid input,.cashier-focus .simple-pay-grid select{display:block;width:100%;height:31px;margin-top:3px;box-sizing:border-box;padding:5px 7px;border:1px solid #aebdcc;border-radius:2px;background:#fff;font-size:11px}.cashier-focus .simple-pay-grid label:first-child input{font-size:15px;font-weight:900;border:2px solid #91b5da}.cashier-focus .simple-quick-row{height:30px;flex:0 0 30px;display:flex;align-items:center;gap:4px;padding:0 10px;background:#f6f8fa;border-top:1px solid #d8e1e9}.cashier-focus .simple-quick-row button{height:24px;padding:0 18px;border:1px solid #b9c7d4;background:#fff;border-radius:2px;font-size:8px;font-weight:900;color:#41556b;cursor:pointer}.cashier-focus .simple-subtotal{margin-left:auto;font-size:9px;color:#5c6c7e}.cashier-focus .simple-action-row{height:45px;flex:0 0 45px;display:grid;grid-template-columns:150px 170px minmax(260px,1fr) 130px;gap:6px;padding:5px 10px;background:#eef3f7;box-sizing:border-box}.cashier-focus .simple-action-row button,.cashier-focus .simple-action-row .receipt-btn{height:35px;border-radius:2px;border:1px solid #bcc9d6;font-weight:900;font-size:10px;display:flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;box-sizing:border-box}.cashier-focus .btn-f6{background:#e7edf3;color:#2f4358}.cashier-focus .btn-f7{background:#111827;color:#fff}.cashier-focus .btn-f9{background:#0f67b4;color:#fff;border-color:#0f67b4;letter-spacing:.2px}.cashier-focus .receipt-btn{background:#f59e0b;color:#fff;border-color:#f59e0b}.cashier-focus .cashier-msg{position:absolute;left:10px;bottom:50px;z-index:80;max-width:720px}.cashier-focus .cashier-msg .okbox,.cashier-focus .cashier-msg .errbox{margin:0;padding:7px 10px;font-size:10px;border-radius:2px;box-shadow:0 4px 10px #0002}.cashier-focus .pos-stock-alert{position:absolute;left:10px;right:10px;top:245px;z-index:70}
@media(max-height:700px){.cashier-focus .simple-titlebar{height:36px;flex-basis:36px}.cashier-focus .simple-commandbar{height:30px;flex-basis:30px}.cashier-focus .simple-commandbar button,.cashier-focus .simple-commandbar select{height:30px;padding:0 10px;font-size:9px}.cashier-focus .simple-form-row{height:50px;flex-basis:50px}.cashier-focus .simple-customer-row{height:34px;flex-basis:34px}.cashier-focus .simple-search-row{height:34px;flex-basis:34px}.cashier-focus .simple-search-hint{height:15px;flex-basis:15px}.cashier-focus .simple-category-bar{height:26px;flex-basis:26px}.cashier-focus .simple-table-head{height:25px;flex-basis:25px}.cashier-focus .simple-payment-head{height:20px;flex-basis:20px}.cashier-focus .simple-payment-methods{height:32px;flex-basis:32px}.cashier-focus .simple-pay-grid{height:46px;flex-basis:46px}.cashier-focus .simple-quick-row{height:24px;flex-basis:24px}.cashier-focus .simple-action-row{height:38px;flex-basis:38px}.cashier-focus .simple-action-row button,.cashier-focus .simple-action-row .receipt-btn{height:30px}}

/* V43.REFERENCE-POS: exact one-screen cashier layout based on the user's reference image. */
body.cashier-focus{overflow:hidden!important;background:#eef2f6!important;color:#10233a!important}
body.cashier-focus main{height:100vh!important;max-width:none!important;margin:0!important;padding:0!important;overflow:hidden!important}
.cashier-focus-shell{height:100vh;width:100%;min-width:0;display:flex;flex-direction:column;overflow:hidden;background:#f2f5f8;font-family:Arial,Helvetica,sans-serif;color:#10233a}
.cashier-focusbar{height:42px;flex:0 0 42px;display:flex;align-items:center;gap:5px;padding:0 8px;background:#0e66b3;color:#fff;box-sizing:border-box;overflow:hidden}
.cashier-focusbar .cashier-brand{font-size:18px;font-weight:900;white-space:nowrap;flex:0 0 auto}.cashier-focusbar .cashier-brand span{font-weight:700;margin-left:7px;font-size:14px}
.cashier-focusbar .cashier-shortcuts{display:flex;align-items:center;gap:3px;min-width:0;flex:1 1 auto;overflow:hidden}.cashier-focusbar .cashier-shortcuts a{display:block;padding:6px 8px;border-radius:6px;background:#2178bf;color:#fff;text-decoration:none;font-size:11px;font-weight:800;white-space:nowrap}
.cashier-focusbar .cashier-shortcuts a:hover{background:#2f86ca}
.cashier-focusbar .cashier-top-actions{display:flex;align-items:center;gap:3px;flex:0 0 auto}.cashier-focusbar .top-action{height:30px;display:flex;align-items:center;justify-content:center;padding:5px 9px;border-radius:6px;border:1px solid #d3e3f2;background:#fff;color:#0e66b3;font-size:11px;font-weight:900;text-decoration:none;white-space:nowrap;cursor:pointer;box-sizing:border-box}.cashier-focusbar .top-action.secondary{background:#ffffff18;border-color:#ffffff40;color:#fff}.cashier-focusbar .top-action.shift-top{background:#7c3aed;border-color:#7c3aed;color:#fff}.cashier-focusbar .top-action.logout-action{background:#dc2626;border-color:#dc2626;color:#fff}.cashier-focusbar .clock{font-size:16px;font-weight:900;min-width:68px;text-align:right;white-space:nowrap}
.cashier-workbar{height:38px;flex:0 0 38px;display:flex;align-items:center;gap:15px;padding:0 12px;background:#fff;border-bottom:1px solid #c8d4df;box-sizing:border-box}.cashier-workbar .workspace-title{font-size:15px;font-weight:900;color:#10233a;white-space:nowrap}.cashier-workbar .workspace-hint{font-size:10px;color:#66798e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cashier-info-row{height:64px;flex:0 0 64px;display:grid;grid-template-columns:125px 125px minmax(220px,1.35fr) 105px 125px minmax(170px,1.1fr) auto;gap:6px;padding:6px 8px;background:#f4f7fa;border-bottom:1px solid #c7d3df;box-sizing:border-box;align-items:center}
.info-field{min-width:0;display:flex;flex-direction:column;gap:4px}.info-field label{font-size:9px;font-weight:900;color:#596b7e;text-transform:uppercase;line-height:1}.info-field input,.info-field select{height:32px;width:100%;min-width:0;box-sizing:border-box;border:1px solid #b8c7d5;border-radius:3px;background:#fff;color:#12263b;padding:5px 8px;font-size:12px}.info-field.info-customer .customer-inline{display:flex;gap:4px;position:relative}.info-field.info-customer .customer-inline input:not([type=hidden]){flex:1;min-width:0}.mini-btn{height:32px!important;width:34px;padding:0!important;background:#edf2f7!important;color:#10233a!important;border:1px solid #b8c7d5!important;border-radius:3px!important;font-weight:900}
.shift-status-pill{align-self:center;height:32px;display:flex;align-items:center;padding:0 10px;border:1px solid #9fb2c5;border-radius:5px;background:#fff;font-size:10px;font-weight:900;white-space:nowrap}.shift-status-pill.shift-open{color:#08783c;border-color:#7bd9a3;background:#eefcf3}.shift-status-pill.shift-closed{color:#9a5a00;background:#fffaf0;border-color:#eccf95}
.cashier-control-row{height:48px;flex:0 0 48px;display:grid;grid-template-columns:minmax(220px,28%) minmax(0,1fr);gap:8px;padding:5px 8px;background:#edf3f8;box-sizing:border-box;border-bottom:0}.control-category,.control-search{min-width:0;display:flex;flex-direction:column;gap:3px}.control-category>label,.control-search>label{font-size:9px;font-weight:900;color:#596b7e}.control-category #categorySelect{display:none}.control-category .category-bar{height:32px;display:flex;align-items:center;gap:3px;min-width:0;overflow-x:hidden;overflow-y:hidden;white-space:nowrap;padding:0 1px}.category-bar .category-btn{height:30px;padding:5px 10px;border:1px solid #bac9d7;border-radius:3px;background:#fff;color:#22384f;font-size:9px;font-weight:900;white-space:nowrap;cursor:pointer}.category-bar .category-btn.active{background:#0e66b3;border-color:#0e66b3;color:#fff}
.control-search .scan-row{height:32px;display:flex;align-items:center;gap:4px;min-width:0}.control-search .scan-icon{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;background:#0e66b3;color:#fff;font-size:17px;border-radius:3px}.control-search #scanData{height:32px;min-width:0;flex:1;width:auto;border:1px solid #7e95aa;border-radius:3px;background:#fff;padding:5px 9px;font-size:13px;outline:0}.control-search #scanData:focus{border-color:#0e66b3;box-shadow:0 0 0 1px #0e66b3}.control-search .primary,.control-search .scan-clear-btn{height:32px;padding:5px 12px;border-radius:3px;font-size:10px;font-weight:900;flex:0 0 auto}.cashier-hint{height:20px;flex:0 0 20px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;background:#eef3f8;color:#5d7187;font-size:8px;box-sizing:border-box}.cashier-hint b{color:#0e66b3}
.cashier-grid-panel{position:relative;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;background:#fff;border-top:1px solid #cbd7e2;border-bottom:1px solid #cbd7e2;overflow:hidden}.cashier-table-wrap{flex:1 1 auto;min-height:0;overflow:hidden;background:#fff}.cashier-grid-panel .pos-table{width:100%;height:100%;table-layout:fixed;border-collapse:collapse;font-size:11px}.cashier-grid-panel .pos-table th{height:30px;padding:5px 6px;background:#dfe9f2;color:#24374c;border:1px solid #c3d0dc;text-align:left;font-size:10px;font-weight:900;white-space:nowrap}.cashier-grid-panel .pos-table td{height:32px;padding:4px 6px;background:#fff;color:#172a40;border:1px solid #dde5ec;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cashier-grid-panel .pos-table tbody tr:nth-child(even) td{background:#f8fafc}.cashier-grid-panel .pos-table tbody tr:hover td{background:#edf6ff}.cashier-grid-panel .qty,.cashier-grid-panel .disc{height:25px;width:100%;box-sizing:border-box;padding:3px 5px;border:1px solid #b7c6d4;border-radius:3px;font-size:10px}.cashier-grid-panel .danger-mini{height:24px;padding:2px 7px;border:1px solid #e0a4a4;border-radius:3px;background:#fff0f0;color:#c21f1f;font-weight:900;font-size:9px}.cashier-grid-panel .empty-row{height:100%!important;text-align:center!important;color:#74869a!important;font-size:11px!important}
.product-results-anchor{position:absolute;left:8px;right:8px;top:0;z-index:70;pointer-events:none}.product-results-anchor .product-results{position:absolute;left:0;right:0;top:0;display:none;max-height:210px;overflow:auto;background:#fff;border:1px solid #8095aa;box-shadow:0 5px 12px #0003;border-radius:0;padding:0;margin:0;pointer-events:auto}.product-results-anchor .product-results.has-results{display:block}.product-results-anchor .product-results-head{display:flex;justify-content:space-between;padding:6px 8px;background:#e6eef6;border-bottom:1px solid #c9d5e0;font-size:8px;font-weight:900}.product-results-anchor .product-results-headrow{display:grid;grid-template-columns:minmax(0,1fr) 115px 55px 24px;gap:5px;padding:5px 8px;background:#f4f7fa;border-bottom:1px solid #d5dee7;font-size:8px;color:#64768a;position:sticky;top:0;z-index:2}.product-results-anchor .product-result-row{display:grid;grid-template-columns:minmax(0,1fr) 115px 55px 24px;gap:5px;width:100%;min-height:34px;box-sizing:border-box;padding:5px 8px;border:0;border-bottom:1px solid #ebeff3;background:#fff;color:#10233a;text-align:left;cursor:pointer}.product-results-anchor .product-result-row:hover,.product-results-anchor .product-result-row.keyboard-active{background:#eaf3ff}.product-results-anchor .pr-name{min-width:0}.product-results-anchor .pr-name b{display:block;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-results-anchor .pr-name small{display:block;font-size:7px;color:#6a7d90;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-results-anchor .pr-price,.product-results-anchor .stock-badge{font-size:8px;align-self:center}.product-results-anchor .pr-price{text-align:right;color:#0e66b3}.product-results-anchor .stock-badge{text-align:right;font-style:normal}.product-results-anchor .pr-add{font-size:16px;line-height:20px;color:#0e66b3;text-align:center}.product-results-anchor .product-empty{padding:10px;text-align:center;color:#728398;font-size:10px;background:#fafbfd}
.cashier-summary-row{height:64px;flex:0 0 64px;display:grid;grid-template-columns:120px 110px 155px minmax(145px,1fr) minmax(145px,1fr) minmax(145px,1fr) 42px 42px 42px 42px 115px 70px;gap:5px;padding:5px 8px;background:#fff;border-top:1px solid #bccbd8;box-sizing:border-box;align-items:stretch}.sum-box{display:flex;flex-direction:column;justify-content:center;padding:0 8px;border-right:1px solid #d7e0e7;min-width:0}.sum-box span,.sum-input{font-size:8px;color:#61748a;font-weight:900;text-transform:uppercase}.sum-box b{font-size:13px;color:#22364d;white-space:nowrap}.sum-box.sum-total{position:relative}.sum-box.sum-total span{color:#0e66b3}.sum-box.sum-total b{font-size:20px;color:#0e66b3;line-height:1}.sum-box.sum-total small{position:absolute;right:6px;bottom:5px;font-size:7px;color:#6b7e92}.sum-input{display:flex;flex-direction:column;justify-content:center;min-width:0;gap:3px}.sum-input input{height:31px;width:100%;box-sizing:border-box;border:1px solid #b7c7d5;border-radius:3px;background:#fff;padding:5px 7px;font-size:11px;color:#12263b}.sum-input:first-of-type input{border:2px solid #8fb4da;font-size:14px;font-weight:900}.summary-btn{height:31px;align-self:end;border:1px solid #b9c8d6;border-radius:4px;background:#edf2f6;color:#263c53;font-size:10px;font-weight:900;cursor:pointer}.summary-btn.danger-dark{background:#101827;color:#fff;border-color:#101827}.summary-save{height:31px;align-self:end;border:1px solid #0e66b3;border-radius:4px;background:#0e66b3;color:#fff;font-size:10px;font-weight:900;cursor:pointer}.receipt-btn{height:31px;align-self:end;display:flex;align-items:center;justify-content:center;text-decoration:none;background:#f59e0b;color:#fff;border-radius:4px;font-size:9px;font-weight:900}.summary-btn:hover,.summary-save:hover,.cashier-focusbar .top-action:hover{filter:brightness(.98)}
.cashier-msg{position:fixed;left:10px;bottom:8px;z-index:300;max-width:620px}.cashier-msg .okbox,.cashier-msg .errbox{margin:0;padding:8px 10px;border-radius:4px;box-shadow:0 4px 12px #0003;font-size:10px}.pos-stock-alert{position:fixed;left:10px;right:10px;bottom:72px;z-index:290}.customer-results{position:fixed;z-index:9999;display:none;background:#fff;border:1px solid #8196aa;box-shadow:0 5px 12px #0003;max-height:250px;overflow:auto}.customer-results.has-results{display:block}
@media(max-width:1350px){.cashier-shortcuts a:nth-child(n+6){display:none}.cashier-info-row{grid-template-columns:105px 105px minmax(190px,1.2fr) 95px 110px minmax(150px,1fr) auto}.cashier-summary-row{grid-template-columns:100px 95px 135px minmax(120px,1fr) minmax(120px,1fr) minmax(120px,1fr) 38px 38px 38px 38px 100px 60px}.cashier-summary-row .receipt-btn{display:none}.cashier-focusbar .top-action{padding:5px 7px}}
@media(max-height:760px){.cashier-focusbar{height:38px;flex-basis:38px}.cashier-workbar{height:32px;flex-basis:32px}.cashier-info-row{height:56px;flex-basis:56px}.cashier-control-row{height:44px;flex-basis:44px}.cashier-hint{height:16px;flex-basis:16px}.cashier-summary-row{height:58px;flex-basis:58px}.cashier-grid-panel .pos-table th{height:26px}.cashier-grid-panel .pos-table td{height:28px}}
/* V43.REFERENCE-POS polish: results stay directly below search and never create page scroll. */
.cashier-focus-shell{overflow-x:hidden!important}
.cashier-focusbar,.cashier-workbar,.cashier-info-row,.cashier-control-row,.cashier-summary-row{min-width:0}
.price-class-inline{display:none!important}
.product-results-anchor{position:relative;height:0;flex:0 0 0;z-index:250}
.product-results-anchor .product-results{left:8px;right:8px;top:0}
.cashier-summary-row > *{min-width:0}
.cashier-summary-row .sum-input{overflow:hidden}.cashier-summary-row .sum-input input{min-width:0}


/* V43.REFERENCE-LOCK — layout dikunci mengikuti tampilan Kasir yang sudah disetujui pengguna. */
html:has(body.cashier-focus), body.cashier-focus{height:100%;overflow:hidden!important}
body.cashier-focus main{height:100vh!important;max-width:none!important;margin:0!important;padding:0!important;overflow:hidden!important;background:#eef2f6!important}
.cashier-reference-layout{height:100vh!important;width:100%!important;min-width:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;background:#eef2f6!important;font-family:Arial,Helvetica,sans-serif!important;color:#13263b!important}
.cashier-reference-layout .cashier-focusbar{height:64px!important;min-height:64px!important;flex:0 0 64px!important;background:#0f67b4!important;box-sizing:border-box!important;padding:0 12px!important;gap:6px!important;box-shadow:none!important}
.cashier-reference-layout .cashier-brand{font-size:28px!important;font-weight:900!important;letter-spacing:-.3px!important}
.cashier-reference-layout .cashier-brand span{font-size:18px!important;margin-left:10px!important;font-weight:800!important}
.cashier-reference-layout .cashier-shortcuts{gap:4px!important;overflow:hidden!important;flex:1 1 auto!important}
.cashier-reference-layout .cashier-shortcuts a{padding:8px 11px!important;border-radius:6px!important;background:#1e73bd!important;font-size:13px!important;line-height:1!important}
.cashier-reference-layout .cashier-top-actions{gap:5px!important}
.cashier-reference-layout .top-action{height:40px!important;padding:8px 14px!important;border-radius:7px!important;font-size:13px!important}
.cashier-reference-layout .top-action.primary{background:#fff!important;color:#0f67b4!important}
.cashier-reference-layout .top-action.secondary{background:#1b70bb!important;color:#fff!important;border-color:#4a92ce!important}
.cashier-reference-layout .shift-top{background:#7b37de!important;color:#fff!important;border-color:#7b37de!important}
.cashier-reference-layout .logout-action{background:#e5232b!important;border-color:#e5232b!important;color:#fff!important}
.cashier-reference-layout .clock{font-size:24px!important;min-width:104px!important}

.cashier-reference-titlebar{height:82px;min-height:82px;flex:0 0 82px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 14px;background:#fff;border-bottom:1px solid #cbd5e1;box-sizing:border-box}
.cashier-reference-titlebar .reference-title{font-size:25px;font-weight:900;color:#10243c;white-space:nowrap}
.cashier-reference-titlebar .reference-header-right{display:flex;align-items:center;gap:10px;min-width:0}
.reference-mini-field{display:flex;flex-direction:column;gap:3px;min-width:145px}
.reference-mini-field label{font-size:11px;font-weight:900;color:#586b7d}
.reference-mini-field input,.reference-mini-field select{height:48px;box-sizing:border-box;border:1px solid #c3d0dc;border-radius:10px;background:#fff;padding:7px 11px;font-size:14px;color:#12263b}
 .cashier-reference-titlebar .shift-status-pill{height:48px;padding:0 13px;border-radius:10px;font-size:12px}
.cashier-result-pill{height:48px;min-width:145px;padding:0 12px;border-radius:10px;background:#e8f7ee;border:1px solid #a8dfbd;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box}
.cashier-result-pill span{font-size:9px;font-weight:900;color:#23734a;letter-spacing:.3px}
.cashier-result-pill b{font-size:17px;color:#146c3a;line-height:1.15;white-space:nowrap}
.cashier-result-pill.inactive{background:#f1f5f9;border-color:#d4dce5}
.cashier-result-pill.inactive span,.cashier-result-pill.inactive b{color:#64748b}

.cashier-reference-controlbar{height:96px;min-height:96px;flex:0 0 96px;display:grid;grid-template-columns:135px 140px minmax(220px,1.3fr) 140px 220px minmax(390px,2.2fr);gap:8px;align-items:end;padding:7px 10px;background:#eef3f8;border-bottom:1px solid #cbd5e1;box-sizing:border-box}
.ref-field{min-width:0;display:flex;flex-direction:column;gap:4px;position:relative}
.ref-field>label{font-size:12px;font-weight:900;color:#566a7e;white-space:nowrap}
.ref-field>input,.ref-field>select{height:50px;box-sizing:border-box;width:100%;border:1px solid #b7c7d5;border-radius:7px;background:#fff;color:#12263b;padding:8px 11px;font-size:17px;min-width:0}
.ref-customer .customer-inline{display:flex;gap:5px;min-width:0}
.ref-customer .customer-inline input:not([type=hidden]){flex:1;min-width:0}
.ref-customer .mini-btn{height:50px!important;width:38px!important;border-radius:7px!important;padding:0!important;background:#e9eef5!important;font-weight:900!important}
.price-class-inline{position:absolute;right:8px;bottom:-15px;font-size:9px;color:#0f67b4;font-weight:900;display:none!important}
.ref-scan{min-width:0}
.reference-scan-row{display:flex;align-items:center;gap:5px;min-width:0}
.reference-scan-row .reference-scan-button{height:50px!important;width:48px!important;flex:0 0 48px!important;border-radius:7px!important;background:#0f67b4!important;color:#fff!important;border:0!important}
.reference-scan-row input{height:50px!important;min-width:0!important;flex:1 1 auto!important;border:1px solid #9eb1c2!important;border-radius:7px!important;font-size:17px!important}
.reference-scan-row .primary,.reference-scan-row .scan-clear-btn{height:50px!important;flex:0 0 auto!important;padding:8px 17px!important;font-size:13px!important;border-radius:7px!important}
.reference-scan-row .scan-clear-btn{background:#e8232d!important;color:#fff!important;border:0!important}
.category-bar{display:none!important}

.cashier-reference-summarybar{height:61px;min-height:61px;flex:0 0 61px;display:grid;grid-template-columns:180px 170px 190px minmax(180px,1fr) minmax(190px,1fr) minmax(190px,1fr) 54px 54px 54px 54px 132px;gap:7px;align-items:stretch;padding:5px 10px;background:#fff;border-bottom:1px solid #bfcdd9;box-sizing:border-box}
.ref-summary-box{display:flex;flex-direction:column;justify-content:center;padding:2px 12px;border-right:1px solid #d7e0e8;min-width:0}
.ref-summary-box span,.ref-summary-input span{font-size:10px;font-weight:900;color:#5f7285;line-height:1}
.ref-summary-box b{font-size:17px;line-height:1.2;color:#12263b;white-space:nowrap}
.ref-summary-box.ref-total b{font-size:26px;color:#0f67b4}
.ref-summary-box.ref-total span{color:#0f67b4}
.ref-summary-input{display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0}
.ref-summary-input input{height:44px;width:100%;box-sizing:border-box;border:1px solid #b7c7d5;border-radius:8px;background:#fff;padding:7px 10px;font-size:16px;color:#12263b;min-width:0}
.ref-summary-input:first-of-type input{border:2px solid #9bbbe0;font-weight:900}
.ref-key-btn,.ref-save-btn{height:44px;align-self:center;border-radius:8px;font-weight:900;font-size:12px;cursor:pointer}
.ref-key-btn{border:1px solid #c3d0dc;background:#e9eef5;color:#13263b}.ref-key-btn.danger-dark{background:#121a29;color:#fff;border-color:#121a29}.ref-save-btn{border:1px solid #0f67b4;background:#0f67b4;color:#fff}

.cashier-reference-searchhint{height:29px;min-height:29px;flex:0 0 29px;display:flex;align-items:center;justify-content:space-between;padding:0 62px;background:#f3f6f9;color:#5f748b;font-size:12px;box-sizing:border-box}
.product-results-anchor{position:relative!important;height:0!important;flex:0 0 0!important;z-index:99999!important;pointer-events:none!important}
.product-results-anchor .product-results{pointer-events:auto!important;position:fixed!important;display:none!important;left:auto;top:auto;width:auto;max-height:300px;overflow:auto;margin:0;padding:0;background:#fff;border:1px solid #8298ad;box-shadow:0 5px 16px #0003;border-radius:4px;z-index:99999}
.product-results-anchor .product-results.has-results{display:block!important}

.cashier-reference-layout .cashier-grid-panel{position:relative!important;flex:1 1 auto!important;min-height:0!important;display:flex!important;overflow:hidden!important;background:#fff!important;border:1px solid #cbd7e2!important;border-left:1px solid #cbd7e2!important;border-right:1px solid #cbd7e2!important}
.cashier-reference-layout .cashier-table-wrap{flex:1 1 auto!important;min-height:0!important;overflow:auto!important;background:#fff!important}
.cashier-reference-layout .pos-table{width:100%!important;min-width:1120px!important;height:auto!important;table-layout:fixed!important;border-collapse:collapse!important;font-size:14px!important}
.cashier-reference-layout .pos-table th{height:40px!important;padding:6px 9px!important;background:#e5edf5!important;border:1px solid #c9d5df!important;color:#22344a!important;font-size:13px!important;font-weight:900!important;text-align:left!important;white-space:nowrap!important}
.cashier-reference-layout .pos-table td{height:40px!important;padding:6px 9px!important;border:1px solid #d8e1e9!important;background:#fff!important;color:#182b40!important;font-size:13px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.cashier-reference-layout .pos-table tbody tr:nth-child(even) td{background:#f8fafc!important}
.cashier-reference-layout .pos-table tbody tr:hover td{background:#eef6ff!important}
.cashier-reference-layout .empty-row{text-align:center!important;color:#61758b!important;font-size:15px!important;height:80px!important}
.cashier-reference-layout .qty,.cashier-reference-layout .disc{height:32px!important;width:100%!important;box-sizing:border-box!important;padding:5px 7px!important;border:1px solid #b7c7d5!important;border-radius:4px!important;font-size:12px!important}
.cashier-reference-layout .danger-mini{height:30px!important;padding:5px 9px!important;border-radius:5px!important;font-size:11px!important}
.cashier-reference-layout .cashier-msg{position:fixed!important;left:10px!important;bottom:7px!important;z-index:100000!important}
.cashier-reference-layout .pos-stock-alert{position:fixed!important;left:10px!important;right:10px!important;bottom:7px!important;z-index:99990!important}

@media(max-width:1500px){
  .cashier-reference-layout .cashier-brand{font-size:22px!important}.cashier-reference-layout .cashier-brand span{font-size:15px!important}.cashier-reference-layout .cashier-shortcuts a{padding:7px 8px!important;font-size:11px!important}.cashier-reference-layout .top-action{padding:7px 10px!important;font-size:11px!important}.cashier-reference-layout .clock{font-size:20px!important;min-width:84px!important}
  .cashier-reference-controlbar{grid-template-columns:115px 120px minmax(190px,1.25fr) 120px 185px minmax(300px,2fr)}
  .cashier-reference-summarybar{grid-template-columns:145px 135px 155px minmax(140px,1fr) minmax(150px,1fr) minmax(150px,1fr) 46px 46px 46px 46px 108px}
  .reference-mini-field{min-width:125px}.cashier-reference-titlebar .reference-title{font-size:21px}
}
@media(max-width:1150px){
  .cashier-reference-layout .cashier-shortcuts a:nth-child(n+5){display:none}.cashier-reference-layout .cashier-top-actions{gap:3px}.cashier-reference-layout .top-action{padding:6px 8px!important}
  .cashier-reference-controlbar{grid-template-columns:100px 105px 190px 105px 150px minmax(250px,1fr)}
  .cashier-reference-summarybar{grid-template-columns:125px 115px 135px 120px 120px 130px 42px 42px 42px 42px 90px}
  .cashier-reference-titlebar{height:72px;min-height:72px;flex-basis:72px}.cashier-reference-controlbar{height:88px;min-height:88px;flex-basis:88px}.cashier-reference-summarybar{height:55px;min-height:55px;flex-basis:55px}
  .cashier-reference-titlebar .reference-title{font-size:18px}.reference-mini-field input,.reference-mini-field select{height:42px;font-size:12px}.cashier-reference-titlebar .shift-status-pill{height:42px;font-size:10px}
}
@media(max-height:760px){
  .cashier-reference-layout .cashier-focusbar{height:54px!important;min-height:54px!important;flex-basis:54px!important}.cashier-reference-layout .cashier-focusbar .cashier-brand{font-size:22px!important}.cashier-reference-layout .cashier-focusbar .clock{font-size:18px!important}
  .cashier-reference-titlebar{height:64px;min-height:64px;flex-basis:64px}.cashier-reference-controlbar{height:78px;min-height:78px;flex-basis:78px}.cashier-reference-summarybar{height:52px;min-height:52px;flex-basis:52px}.cashier-reference-searchhint{height:22px;min-height:22px;flex-basis:22px;font-size:9px}.cashier-reference-layout .pos-table th{height:34px!important}.cashier-reference-layout .pos-table td{height:34px!important}
}

/* GLOBAL SCROLL FIX (NON-KASIR ONLY)
   Kasir uses body.cashier-focus and is intentionally left untouched. */
html, body { min-height: 100%; }
body:not(.cashier-focus) {
  height: auto !important;
  min-height: 100vh !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
body:not(.cashier-focus) main {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}
body:not(.cashier-focus) nav {
  max-height: none !important;
  overflow: visible !important;
}


/* Navigasi multitasking sederhana untuk setiap menu */
.page-taskbar{display:flex;align-items:center;gap:8px;padding:7px 10px;background:#f8fafc;border-bottom:1px solid #dbe3ec;box-shadow:0 1px 2px #0000000a;position:relative;z-index:50}
.page-taskbar-btn{display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 14px;border:1px solid #cbd5e1;border-radius:7px;text-decoration:none;font-weight:800;font-size:13px;cursor:pointer;background:#fff;color:#17324d}
.page-taskbar-btn.dashboard{background:#0f67b4;color:#fff;border-color:#0f67b4}
.page-taskbar-btn.back{background:#eef2f7}
.page-taskbar-btn:hover{filter:brightness(.97);transform:translateY(-1px)}
@media(max-width:700px){.page-taskbar{padding:6px}.page-taskbar-btn{height:32px;padding:0 10px;font-size:12px}}


/* KAS Focus UI */
.cash-mini-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 8px;padding:2px 2px}
.cash-mini-title h1{margin:0;font-size:28px;line-height:1.1}
.cash-mini-title>div{margin-top:2px;color:#64748b;font-size:12px}
.cash-mini-dashboard{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:#0f67b4;color:#fff;text-decoration:none;font-size:19px;font-weight:800;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.cash-mini-dashboard:hover{background:#095895;transform:translateY(-1px)}
body.cash-focus .cards{gap:8px}
body.cash-focus .cash-account-cards{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;margin-bottom:8px}
body.cash-focus .cash-account-card{padding:9px 12px;min-height:72px}
body.cash-focus .cash-account-card label{font-size:12px}
body.cash-focus .cash-account-card b{font-size:22px;margin:3px 0}
body.cash-focus .cash-account-card small{font-size:10px}
body.cash-focus .grid2{gap:10px}
body.cash-focus .panel{padding:10px 12px;margin:6px 0;border-radius:9px}
body.cash-focus .panel h2{font-size:19px;margin:0 0 7px}
body.cash-focus .form{gap:6px}
body.cash-focus input,body.cash-focus select{min-height:36px;padding:7px 9px;font-size:13px}
body.cash-focus button,body.cash-focus .btn{padding:7px 10px;font-size:12px}
body.cash-focus hr{margin:10px 0 !important}
body.cash-focus table{font-size:11px}
body.cash-focus table th,body.cash-focus table td{padding:5px 6px}
body.cash-focus .cash-history-panel .form.inline{gap:6px}
body.cash-focus .cash-history-panel label{font-size:11px}
@media(max-width:800px){.cash-mini-title h1{font-size:24px}.cash-mini-dashboard{width:34px;height:34px;font-size:18px}}


body.cash-focus{background:#eef2f6}
body.cash-focus header,body.cash-focus>.page-taskbar,body.cash-focus>.safe,body.cash-focus>.flash{display:none}
body.cash-focus main{padding:0 10px 40px}
.cash-focusbar{height:64px;background:#0f67b4;color:#fff;display:flex;align-items:center;gap:18px;padding:0 18px;margin:0 -10px 10px;box-shadow:0 2px 8px #0002}
.cash-brand{font-size:26px;font-weight:900;white-space:nowrap}.cash-brand span{font-size:15px;margin-left:6px;opacity:.9}
.cash-dashboard{background:#ffffff;color:#0f67b4;text-decoration:none;font-weight:800;padding:10px 15px;border-radius:8px;white-space:nowrap}
.cash-dashboard:hover{background:#eaf3ff}
.cash-title{font-size:22px;font-weight:800;flex:1}.cash-clock{font-size:20px;font-weight:800;min-width:85px;text-align:right}
.cash-intro{background:#fff;border:1px solid #dbe3ec;border-radius:10px;padding:10px 14px;color:#64748b;margin-bottom:12px}
.cash-account-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:16px}
.cash-account-card{padding:17px 20px;min-height:110px}.cash-account-card label{font-size:15px;font-weight:700}.cash-account-card b{display:block;font-size:28px;line-height:1.2;margin:6px 0}.cash-account-card small{display:block;color:#64748b}
.cash-focus .panel{border-color:#d5dee8;box-shadow:0 2px 8px #0000000a}
@media(max-width:800px){.cash-focusbar{gap:8px;padding:0 10px}.cash-brand{font-size:20px}.cash-title{display:none}.cash-clock{font-size:16px}.cash-dashboard{padding:8px 10px}}

/* Kas: transfer panel aligned with the controls beside it */
.cash-transfer-panel{align-self:stretch;}
.cash-transfer-panel .form{gap:12px;}
.cash-transfer-panel .form select,.cash-transfer-panel .form input{min-width:0;}
.cash-transfer-panel .form button{width:100%;}
@media(max-width:900px){.cash-transfer-panel .form{grid-template-columns:1fr 1fr;}.cash-transfer-panel .form button{grid-column:1/-1;}}

/* Produk & Stok focus: remove global chrome on product pages only.
   Kasir/Kas/Dashboard and other modules keep their existing layout. */
body.product-focus > header,
body.product-focus > .page-taskbar,
body.product-focus > .safe {
  display:none !important;
}
body.product-focus main {
  margin-top:0 !important;
  padding-top:0 !important;
}
.product-focus .page-head-row {
  margin-top:0;
  padding-top:12px;
}
.product-focus .daftar-produk-ringkas .btn-kecil {
  font-weight:800;
}
.product-focus .price-level-hint {
  margin:6px 0 0;
  color:#64748b;
  font-size:12px;
}

/* Riwayat Penjualan - compact UI only. Tidak memengaruhi halaman lain. */
body.sales-focus header{display:none}
body.sales-focus main{padding-top:4px}
.sales-title-row{display:flex;align-items:center;gap:14px;margin:16px 0 10px}
.sales-title-row h1{font-size:28px;margin:0;line-height:1.15}
.sales-dashboard-btn{display:inline-flex;align-items:center;gap:5px;background:#0f67b4;color:#fff;text-decoration:none;border-radius:7px;padding:7px 11px;font-size:12px;font-weight:800;white-space:nowrap}
.sales-dashboard-btn:hover{background:#095895}
body.sales-focus .safe{font-size:12px;padding:9px 12px;margin:8px 18px;border-radius:8px}
body.sales-focus .panel{margin:10px 0;padding:12px;border-radius:10px}
body.sales-focus .panel>p{margin:0 0 8px;display:flex;gap:6px;flex-wrap:wrap}
body.sales-focus .panel>p .btn{padding:8px 11px;font-size:12px}
body.sales-focus table{font-size:12px;min-width:1050px}
body.sales-focus th{padding:7px 9px;white-space:nowrap}
body.sales-focus td{padding:6px 9px;white-space:nowrap}
body.sales-focus td .btn{padding:7px 9px;font-size:11px}
@media(max-width:1000px){.sales-title-row h1{font-size:24px}.sales-dashboard-btn{font-size:11px;padding:6px 9px}}

/* REKAP PENJUALAN: tampilan khusus halaman ini saja */
body.report-focus > header,
body.report-focus > .page-taskbar,
body.report-focus > .safe { display:none !important; }
body.report-focus main { padding-top: 12px; }
.report-title-row{display:flex;align-items:center;gap:14px;margin:12px 0 10px}
.report-title-row h1{margin:0;font-size:32px;line-height:1.15}
.report-dashboard-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:#0f67b4;color:#fff;text-decoration:none;border-radius:9px;font-size:20px;font-weight:800;box-shadow:0 2px 5px rgba(0,0,0,.12)}
.report-dashboard-btn:hover{background:#095895}
@media(max-width:900px){.report-title-row h1{font-size:27px}.report-dashboard-btn{width:36px;height:36px;font-size:18px}}

/* PELANGGAN FOCUS - compact full-screen style, isolated to /pelanggan only */
body.customer-focus{background:#eef2f6!important;color:#111827!important}
body.customer-focus>header,
body.customer-focus>.page-taskbar,
body.customer-focus>.safe,
body.customer-focus>nav,
body.customer-focus>.flash{display:none!important}
body.customer-focus main{padding:8px 12px 18px!important;margin:0!important;max-width:none!important}
body.customer-focus .customer-page-title{display:flex;align-items:center;gap:10px;margin:4px 0 8px}
body.customer-focus .customer-page-title h1{margin:0;font-size:28px;line-height:1.15}
body.customer-focus .customer-dashboard{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:#0f67b4;color:#fff;text-decoration:none;font-size:19px;font-weight:800;border:1px solid #0f67b4;box-shadow:0 1px 3px rgba(0,0,0,.12)}
body.customer-focus .customer-dashboard:hover{background:#095895;transform:translateY(-1px)}
body.customer-focus .panel{margin:8px 0;padding:12px;border-radius:10px;box-shadow:0 1px 3px rgba(0,0,0,.07);overflow:visible}
body.customer-focus .panel h2{font-size:20px;margin:0 0 8px}
body.customer-focus .form{gap:7px}
body.customer-focus input,body.customer-focus select{height:38px;padding:8px 10px;font-size:13px}
body.customer-focus button,body.customer-focus .btn{padding:8px 10px;font-size:12px;border-radius:7px}
body.customer-focus table{font-size:11px}
body.customer-focus table th,body.customer-focus table td{padding:5px 7px}
body.customer-focus .panel>p{margin:7px 0 0}
@media(max-width:900px){body.customer-focus .customer-page-title h1{font-size:24px}body.customer-focus .form{grid-template-columns:1fr 1fr}}
@media(max-width:650px){body.customer-focus .form{grid-template-columns:1fr}body.customer-focus .customer-page-title h1{font-size:22px}}
