/* ═══ 01 · Legacy base: wp-admin wrap, cards, panels, forms (pre-1.2 rules) ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Order matters: later files override earlier ones. */

#wpcontent {
  background:#f6f7f9
}
.wcom-pos-wrap {
  max-width:1400px
}
.wcom-cards {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin:20px 0
}
.wcom-cards>div,.wcom-panel {
  background:#fff;
  border:1px solid #e2e4e7;
  border-radius:10px;
  padding:20px;
  box-shadow:0 2px 8px rgba(0,0,0,.04)
}
.wcom-cards b,.wcom-cards strong {
  display:block
}
.wcom-cards strong {
  font-size:25px;
  margin-top:10px
}
.wcom-pos-top {
  display:flex;
  gap:10px;
  margin-bottom:15px
}
.wcom-pos-top input {
  flex:1;
  padding:14px;
  font-size:18px
}
.wcom-pos-grid {
  display:grid;
  grid-template-columns:1.5fr 1fr;
  gap:16px
}
.wcom-product {
  width:calc(25% - 12px);
  min-height:110px;
  margin:6px;
  padding:12px;
  border:1px solid #ddd;
  background:#fff;
  border-radius:8px;
  cursor:pointer;
  text-align:right
}
.wcom-product:hover {
  border-color:#2271b1
}
.wcom-product span,.wcom-product small {
  display:block;
  margin-top:7px
}
.wcom-cart {
  background:#fff;
  padding:18px;
  border:1px solid #ddd;
  border-radius:10px
}
.wcom-cart-row {
  display:grid;
  grid-template-columns:1fr 85px 90px 35px;
  gap:8px;
  align-items:center;
  padding:9px 0;
  border-bottom:1px solid #eee
}
.wcom-cart-row input {
  width:75px
}
.wcom-totals {
  margin-top:20px;
  display:grid;
  gap:10px
}
.wcom-totals input,.wcom-totals select {
  padding:10px
}
.wcom-form-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px
}
.wcom-form-grid input,.wcom-form-grid select {
  padding:9px
}
.wcom-form-grid label {
  padding:9px
}
.wcom-danger {
  color:#b32d2e
}
.wcom-panel {
  margin-top:16px
}
@media(max-width:900px) {
  .wcom-cards {
    grid-template-columns:repeat(2,1fr)
  }
  .wcom-pos-grid {
    grid-template-columns:1fr
  }
  .wcom-product {
    width:calc(50% - 12px)
  }
  .wcom-form-grid {
    grid-template-columns:1fr
  }
}
.wcom-pos-ui {
  direction:rtl
}
.wcom-pos-ui button {
  font-family:inherit
}
.wcom-pos-ui .button-large {
  min-height:48px;
  font-size:16px
}
.wcom-cart-row button {
  border:0;
  background:none;
  color:#b32d2e;
  font-size:22px;
  cursor:pointer
}
.wcom-totals b {
  font-size:22px
}
.wcom-pos-top button {
  min-width:100px
}
.wcom-help {
  background:#f0f6fc;
  border-right:4px solid #2271b1;
  padding:12px;
  margin:12px 0
}
.wcom-badge {
  display:inline-block;
  padding:3px 8px;
  border-radius:12px;
  background:#eee;
  font-size:11px
}
.wcom-cashier {
  max-width:1400px
}
.wcom-cashier-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin:15px 0
}
.wcom-cashier-head h1 {
  display:inline-block;
  margin-left:10px
}
.wcom-cashier-status {
  background:#d7f5df;
  color:#176b35;
  border-radius:20px;
  padding:5px 10px;
  font-size:12px
}
.wcom-cashier-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  gap:16px
}
.wcom-cash-main,.wcom-cash-side {
  background:#fff;
  border:1px solid #dcdcde;
  border-radius:10px;
  padding:16px
}
.wcom-cash-search {
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px
}
.wcom-cash-search input {
  height:48px;
  font-size:18px;
  padding:0 14px
}
.wcom-cart {
  margin-top:15px
}
.wcom-cart td,.wcom-cart th {
  vertical-align:middle
}
.wcom-cart input {
  width:80px
}
.wcom-cash-side label {
  display:block;
  font-weight:600;
  margin:12px 0
}
.wcom-cash-side input,.wcom-cash-side select {
  display:block;
  width:100%;
  margin-top:5px;
  height:42px
}
.wcom-total-box {
  padding:18px;
  border-radius:8px;
  background:#f5f5f5;
  text-align:center;
  margin-bottom:12px
}
.wcom-total-box span {
  display:block
}
.wcom-total-box strong {
  font-size:34px;
  display:inline-block;
  margin:5px
}
.wcom-total-box small {
  font-size:14px
}
.wcom-change {
  padding:12px;
  margin:12px 0;
  background:#f5f5f5
}
.button-hero {
  width:100%;
  height:48px!important;
  margin-top:8px!important
}
.wcom-cashier .button-primary {
  background:#2271b1
}
.wcom-cashier-actions {
  display:flex;
  gap:8px
}
.wcom-cashier-product {
  padding:10px;
  border:1px solid #ddd;
  border-radius:7px;
  margin-top:8px;
  cursor:pointer;
  background:#fff
}
.wcom-cashier-product:hover {
  background:#f6f7f7
}
.wcom-cashier-product b {
  display:block
}
.wcom-cashier-product small {
  opacity:.75
}
.wcom-cash-modal {
  display:none;
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.45);
  z-index:100000;
  align-items:center;
  justify-content:center
}
.wcom-cash-modal.open {
  display:flex
}
.wcom-cash-modal-box {
  background:#fff;
  border-radius:10px;
  width:min(650px,92vw);
  max-height:85vh;
  overflow:auto;
  padding:22px;
  position:relative
}
.wcom-modal-close {
  position:absolute;
  left:12px;
  top:8px;
  border:0;
  background:none;
  font-size:28px;
  cursor:pointer
}
.wcom-modal-option {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:12px;
  border-bottom:1px solid #eee
}
.wcom-modal-option button {
  min-width:90px
}
.wcom-cash-qty {
  display:flex;
  align-items:center;
  gap:4px
}
.wcom-cash-qty button {
  width:30px;
  height:30px
}
.wcom-cash-qty input {
  width:70px;
  text-align:center
}
.wcom-cash-serials {
  max-height:250px;
  overflow:auto
}
.wcom-cash-serials label {
  display:block;
  padding:8px;
  border-bottom:1px solid #eee
}
.wcom-cash-receipt {
  font-family:Arial,sans-serif;
  direction:rtl;
  width:300px;
  padding:12px
}
.wcom-cash-receipt h2 {
  text-align:center;
  margin:0 0 8px
}
.wcom-cash-receipt table {
  width:100%;
  border-collapse:collapse;
  font-size:12px
}
.wcom-cash-receipt td {
  padding:3px 0;
  border-bottom:1px dotted #aaa
}
.wcom-cash-receipt .sum {
  text-align:left;
  font-weight:bold
}
.wcom-cash-receipt-actions {
  text-align:center;
  margin-top:10px
}
@media(max-width:900px) {
  .wcom-cashier-layout {
    grid-template-columns:1fr
  }
  .wcom-cash-side {
    order:-1
  }
}
.wcom-front-cashier {
  max-width:1200px;
  margin:20px auto;
  background:#f6f7f7;
  padding:20px;
  border-radius:12px;
  font-family:Arial,sans-serif
}
.wcom-front-cashier-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:15px
}
.wcom-front-cashier-head h2 {
  margin:0 0 5px
}
.wcom-front-cashier-head span {
  font-size:12px;
  opacity:.65
}
.wcom-front-grid {
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:15px
}
.wcom-front-grid main,.wcom-front-grid aside {
  background:#fff;
  border:1px solid #ddd;
  border-radius:10px;
  padding:15px
}
.wcom-front-search {
  display:grid;
  grid-template-columns:1fr 100px;
  gap:8px
}
.wcom-front-search input {
  height:48px;
  padding:0 12px;
  font-size:17px
}
.wcom-front-search button,#wcom-front-pay,.wcom-front-new {
  background:#2271b1;
  color:#fff;
  border:0;
  border-radius:6px;
  padding:10px 15px;
  cursor:pointer
}
.wcom-front-cart {
  margin-top:15px
}
.wcom-front-cart table {
  width:100%;
  border-collapse:collapse
}
.wcom-front-cart th,.wcom-front-cart td {
  padding:10px 6px;
  border-bottom:1px solid #eee;
  text-align:right
}
.wcom-front-total {
  text-align:center;
  padding:15px;
  background:#f2f3f4;
  border-radius:8px;
  margin-bottom:12px
}
.wcom-front-total b {
  font-size:32px;
  display:block
}
.wcom-front-grid aside label {
  display:block;
  margin:10px 0;
  font-weight:600
}
.wcom-front-grid aside input,.wcom-front-grid aside select {
  width:100%;
  height:40px;
  margin-top:5px
}
.wcom-front-grid aside #wcom-front-pay {
  width:100%;
  height:48px;
  margin-top:15px
}
.wcom-front-modal {
  display:none;
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.5);
  z-index:99999;
  align-items:center;
  justify-content:center
}
.wcom-front-modal.open {
  display:flex
}
.wcom-front-modal-box {
  background:#fff;
  padding:20px;
  border-radius:10px;
  width:min(600px,90vw);
  position:relative;
  max-height:80vh;
  overflow:auto
}
.wcom-front-close {
  position:absolute;
  left:10px;
  top:5px;
  border:0;
  background:none;
  font-size:28px
}
.wcom-front-result {
  padding:12px;
  border:1px solid #ddd;
  margin-top:6px;
  border-radius:6px;
  cursor:pointer;
  background:#fff
}
.wcom-front-result:hover {
  background:#f5f5f5
}
@media(max-width:800px) {
  .wcom-front-grid {
    grid-template-columns:1fr
  }
  .wcom-front-grid aside {
    order:-1
  }
}
/* ═══ 02 · Foundation: pro cashier base, panels/forms, settings, statistics, dashboard, modern theme (1.2 – 1.6) ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Order matters: later files override earlier ones. */

/* Production POS cashier */
.wcom-pro-cashier {
  --line:#e5e7eb;
  --muted:#6b7280;
  --ink:#111827;
  --soft:#f8fafc;
  max-width:1500px;
  margin:0 auto;
  padding:14px;
  color:var(--ink);
  font-family:Tahoma,Arial,sans-serif
}
.wpc-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:8px 0 18px
}
.wpc-kicker {
  font-size:11px;
  letter-spacing:2px;
  color:#64748b
}
.wpc-head h2 {
  margin:2px 0;
  font-size:28px
}
.wpc-head span {
  color:var(--muted);
  font-size:12px
}
.wpc-head-actions {
  display:flex;
  gap:8px
}
.wpc-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:14px;
  align-items:start
}
.wpc-main,.wpc-side {
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  box-shadow:0 8px 30px rgba(15,23,42,.05)
}
.wpc-main {
  padding:16px
}
.wpc-side {
  padding:16px;
  position:sticky;
  top:20px
}
.wpc-searchbar {
  display:grid;
  grid-template-columns:28px 1fr 110px;
  gap:8px;
  align-items:center;
  border:1px solid #cbd5e1;
  border-radius:11px;
  padding:4px 6px;
  background:#fff
}
.wpc-searchbar span {
  font-size:25px;
  text-align:center;
  color:#64748b
}
.wpc-searchbar input {
  border:0!important;
  outline:0!important;
  height:48px;
  font-size:17px;
  background:transparent
}
.wpc-btn {
  border:0;
  border-radius:9px;
  padding:11px 15px;
  background:#111827;
  color:#fff;
  cursor:pointer;
  font-family:inherit
}
.wpc-secondary {
  background:#f1f5f9;
  color:#111827;
  border:1px solid var(--line)
}
kbd {
  font-size:10px;
  padding:2px 5px;
  border:1px solid #cbd5e1;
  border-radius:4px;
  background:#fff;
  color:#475569
}
.wpc-results {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-top:10px
}
.wpc-result {
  padding:12px;
  text-align:right;
  border:1px solid var(--line);
  background:#fff;
  border-radius:10px;
  cursor:pointer;
  font-family:inherit
}
.wpc-result:hover {
  border-color:#94a3b8;
  background:#f8fafc
}
.wpc-result b,.wpc-result span {
  display:block
}
.wpc-result span {
  font-size:11px;
  color:var(--muted);
  margin-top:5px
}
.wpc-noresult {
  padding:15px;
  color:var(--muted);
  text-align:center
}
.wpc-cart-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin:20px 0 10px
}
.wpc-cart-head h3 {
  margin:0
}
.wpc-cart-head span {
  font-size:12px;
  color:var(--muted)
}
.wpc-cart-wrap {
  min-height:350px
}
.wpc-cart-wrap table {
  width:100%;
  border-collapse:collapse
}
.wpc-cart-wrap th,.wpc-cart-wrap td {
  padding:12px 7px;
  border-bottom:1px solid #eef2f7;
  text-align:right;
  vertical-align:middle
}
.wpc-cart-wrap th {
  font-size:12px;
  color:#64748b;
  background:#f8fafc
}
.wpc-cart-wrap td small {
  display:block;
  color:var(--muted);
  margin-top:4px
}
.wpc-qty {
  display:flex;
  align-items:center;
  gap:4px
}
.wpc-qty button {
  width:30px;
  height:30px;
  border:1px solid var(--line);
  background:#fff;
  border-radius:6px;
  cursor:pointer;
  font-size:18px
}
.wpc-qty input {
  width:65px;
  height:30px;
  text-align:center;
  border:1px solid var(--line);
  border-radius:6px
}
.wpc-del {
  border:0;
  background:transparent;
  color:#b91c1c;
  font-size:22px;
  cursor:pointer
}
.wpc-empty {
  height:300px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#94a3b8
}
.wpc-session {
  display:flex;
  align-items:center;
  gap:8px;
  padding:12px;
  background:#f8fafc;
  border-radius:10px;
  margin-bottom:15px
}
.wpc-session span {
  color:var(--muted);
  font-size:12px
}
.wpc-session b {
  flex:1
}
.wpc-link {
  border:0;
  background:none;
  color:#2563eb;
  cursor:pointer
}
.wpc-side label {
  display:block;
  font-size:12px;
  font-weight:700;
  margin:12px 0
}
.wpc-side select,.wpc-side input {
  display:block;
  width:100%;
  height:44px;
  margin-top:6px;
  border:1px solid #cbd5e1;
  border-radius:8px;
  padding:0 10px;
  font-family:inherit
}
.wpc-summary {
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding:12px 0;
  margin:15px 0
}
.wpc-summary>div {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:7px 0
}
.wpc-summary span {
  color:var(--muted);
  font-size:12px
}
.wpc-summary input {
  width:110px;
  height:34px;
  margin:0;
  text-align:left
}
.wpc-summary .grand {
  margin-top:7px;
  padding:14px 10px;
  background:#f8fafc;
  border-radius:9px
}
.wpc-summary .grand strong {
  font-size:31px
}
.wpc-change {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:12px;
  background:#ecfdf5;
  border-radius:9px;
  margin:10px 0
}
.wpc-change strong {
  font-size:22px
}
.wpc-pay {
  width:100%;
  height:52px;
  border:0;
  border-radius:10px;
  background:#16a34a;
  color:#fff;
  font-size:17px;
  font-weight:700;
  cursor:pointer;
  font-family:inherit
}
.wpc-pay:disabled {
  opacity:.6;
  cursor:not-allowed
}
.wpc-message {
  min-height:20px;
  margin-top:10px;
  text-align:center;
  font-size:12px;
  color:#15803d
}
.wpc-message.error {
  color:#b91c1c
}
.wpc-modal {
  display:none;
  position:fixed;
  inset:0;
  background:rgba(15,23,42,.55);
  z-index:999999;
  align-items:center;
  justify-content:center
}
.wpc-modal.open {
  display:flex
}
.wpc-modal-box {
  position:relative;
  width:min(620px,92vw);
  max-height:85vh;
  overflow:auto;
  background:#fff;
  border-radius:14px;
  padding:22px
}
.wpc-modal-close {
  position:absolute;
  left:12px;
  top:8px;
  border:0;
  background:none;
  font-size:28px;
  cursor:pointer
}
.wpc-option {
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-bottom:1px solid var(--line);
  padding:13px 0
}
.wpc-option small {
  display:block;
  color:var(--muted);
  margin-top:4px
}
.wpc-modal-input {
  width:100%;
  height:46px;
  border:1px solid #cbd5e1;
  border-radius:8px;
  padding:0 10px;
  margin:12px 0 15px
}
.wpc-modal-box .wpc-pay {
  margin-top:5px
}
@media(max-width:1050px) {
  .wpc-layout {
    grid-template-columns:1fr
  }
  .wpc-side {
    position:static
  }
  .wpc-results {
    grid-template-columns:repeat(3,1fr)
  }
}
@media(max-width:700px) {
  .wpc-head {
    align-items:flex-start;
    gap:10px;
    flex-direction:column
  }
  .wpc-results {
    grid-template-columns:repeat(2,1fr)
  }
  .wpc-searchbar {
    grid-template-columns:22px 1fr
  }
  .wpc-searchbar .wpc-btn {
    display:none
  }
  .wpc-cart-wrap {
    overflow:auto
  }
  .wpc-cart-wrap table {
    min-width:650px
  }
}
/* UX 1.2 */
.wcom-pos-wrap {
  max-width:1500px
}
.wcom-panel,.wcom-card {
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:20px;
  margin:18px 0;
  box-shadow:0 5px 20px rgba(15,23,42,.04)
}
.wcom-form-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(180px,1fr));
  gap:14px;
  align-items:end
}
.wcom-form-grid label {
  display:block;
  font-weight:700;
  font-size:13px
}
.wcom-form-grid input,.wcom-form-grid select,.wcom-form-grid textarea {
  display:block;
  width:100%;
  box-sizing:border-box;
  margin-top:6px;
  min-height:42px;
  border:1px solid #cbd5e1;
  border-radius:8px;
  padding:8px 10px;
  background:#fff;
  font-family:inherit
}
.wcom-form-grid textarea {
  min-height:90px
}
.wcom-field-wide {
  grid-column:span 2
}
.wcom-toolbar {
  display:flex;
  gap:10px;
  align-items:center;
  margin-bottom:15px
}
.wcom-toolbar input {
  min-height:42px;
  border:1px solid #cbd5e1;
  border-radius:8px;
  padding:0 12px;
  min-width:260px
}
.wcom-good {
  color:#15803d;
  font-weight:700
}
.wcom-bad {
  color:#b42318;
  font-weight:700
}
.wcom-quick-note {
  padding:12px 14px;
  border-radius:10px;
  background:#f8fafc;
  margin-bottom:14px
}
.wcom-quick-note span {
  display:block;
  color:#64748b;
  font-size:12px;
  margin-top:3px
}
.wcom-p-results {
  position:absolute;
  z-index:20;
  background:#fff;
  border:1px solid #cbd5e1;
  border-radius:8px;
  width:100%;
  box-shadow:0 10px 25px rgba(0,0,0,.12)
}
.wcom-p-result {
  display:block;
  width:100%;
  padding:11px 13px;
  border:0;
  border-bottom:1px solid #eef2f7;
  background:#fff;
  text-align:right;
  cursor:pointer
}
.wcom-p-result:hover {
  background:#f8fafc
}
.wcom-p-result small {
  color:#64748b;
  margin-right:8px
}
.wcom-simple-modal {
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  box-sizing:border-box!important;
  background:rgba(15,23,42,.5);
  z-index:2147483000!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:20px!important;
  overflow:auto!important;
  isolation:isolate
}
.wcom-simple-modal-box {
  width:min(560px,96vw);
  max-height:calc(100vh - 40px);
  overflow:auto;
  box-sizing:border-box;
  background:#fff;
  border-radius:14px;
  padding:24px;
  box-shadow:0 20px 60px rgba(0,0,0,.2);
  position:relative;
  flex:0 1 auto
}
.wcom-simple-modal-box h2 {
  margin-top:0
}
.wcom-simple-modal-box .wcom-a-grid {
  margin-top:12px
}
.wcom-simple-modal-box .wcom-a-actions {
  margin-top:18px
}
.wcom-modal-form label {
  display:block;
  font-weight:700;
  margin:12px 0
}
.wcom-modal-form input {
  display:block;
  width:100%;
  box-sizing:border-box;
  height:44px;
  margin-top:6px;
  border:1px solid #cbd5e1;
  border-radius:8px;
  padding:0 10px
}
.wcom-modal-actions {
  display:flex;
  gap:8px;
  justify-content:flex-start;
  margin-top:18px
}
.wcom-modal-form #wm-msg {
  margin-top:10px;
  color:#15803d
}
.wcom-modal-form #wm-msg.error {
  color:#b42318
}
.wcom-p-results {
  position:relative
}
.wcom-p-result {
  position:relative
}
@media(max-width:1000px) {
  .wcom-form-grid {
    grid-template-columns:repeat(2,minmax(180px,1fr))
  }
  .wcom-field-wide {
    grid-column:span 2
  }
}
@media(max-width:650px) {
  .wcom-form-grid {
    grid-template-columns:1fr
  }
  .wcom-field-wide {
    grid-column:auto
  }
  .wcom-toolbar {
    flex-direction:column;
    align-items:stretch
  }
  .wcom-toolbar input {
    min-width:0;
    width:100%
  }
}
/* Settings / final UX */
.wcom-settings-grid {
  max-width:1250px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px
}
.wcom-settings-grid .wcom-panel {
  margin:0
}
.wcom-settings-grid h2 {
  margin-top:0;
  font-size:18px
}
.wcom-feature-grid {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:10px
}
.wcom-feature-grid label {
  display:flex;
  align-items:center;
  gap:8px;
  padding:11px;
  border:1px solid #e2e8f0;
  border-radius:8px;
  background:#f8fafc
}
.wcom-settings-actions {
  grid-column:1/-1;
  display:flex;
  align-items:center;
  gap:15px
}
.wcom-settings-actions .button-hero {
  width:auto;
  padding:0 30px
}
.wcom-settings-actions #wcom-settings-msg {
  font-weight:700;
  color:#15803d
}
.wcom-settings-actions #wcom-settings-msg.error {
  color:#b42318
}
.wcom-modal-form textarea {
  display:block;
  width:100%;
  box-sizing:border-box;
  min-height:95px;
  margin-top:6px;
  border:1px solid #cbd5e1;
  border-radius:8px;
  padding:10px;
  font-family:inherit
}
.wcom-modal-form select {
  display:block;
  width:100%;
  box-sizing:border-box;
  height:44px;
  margin-top:6px;
  border:1px solid #cbd5e1;
  border-radius:8px;
  padding:0 10px;
  background:#fff
}
.wcom-p-results {
  position:relative
}
.wcom-p-result {
  position:relative
}
@media(max-width:800px) {
  .wcom-settings-grid {
    grid-template-columns:1fr
  }
  .wcom-feature-grid {
    grid-template-columns:1fr
  }
}
/* Statistics and stock receipt 1.3 */
.wcom-stats {
  max-width:1500px
}
.wcom-stats-management {
  margin:18px 0;
  background:linear-gradient(135deg,#f8fbff,#fff);
  border:1px solid #dbe5f0;
  border-radius:18px;
  padding:20px;
  box-shadow:0 7px 24px rgba(15,23,42,.05)
}
.wcom-stats-management-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:16px
}
.wcom-stats-management-head h2 {
  margin:0;
  font-size:20px
}
.wcom-stats-management-head small {
  display:block;
  color:#64748b;
  margin-top:5px
}
.wcom-stats-management-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px
}
.wcom-stats-management-grid>div {
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:16px;
  min-height:112px
}
.wcom-stats-management-grid span,.wcom-stats-management-grid small {
  display:block;
  color:#64748b
}
.wcom-stats-management-grid strong {
  display:block;
  font-size:23px;
  margin:8px 0;
  color:#123b78
}
.wcom-stats-management-grid .debt strong {
  color:#b45309
}
.wcom-stats-management-grid .supplier-debt {
  border-color:#fecaca;
  background:#fff7f7
}
.wcom-stats-management-grid .supplier-debt strong {
  color:#b91c1c
}
.wcom-stats-management-grid .customer-debt {
  border-color:#fde68a;
  background:#fffbeb
}
.wcom-stats-management-grid .cash strong {
  color:#0369a1
}
.wcom-stats-management-grid .realized {
  border-color:#86efac;
  background:#f0fdf4
}
.wcom-stats-management-grid .realized strong {
  color:#15803d
}
.wcom-stats-management-grid .profit strong {
  color:#166534
}
.wcom-stats-management-grid small {
  font-size:11px;
  line-height:1.5
}
.wcom-stats-management-grid+ .wcom-stats-cards {
  margin-top:14px
}
.wcom-stats-filters {
  display:flex;
  align-items:end;
  gap:16px
}
.wcom-stats-filters .wcom-form-grid {
  flex:1
}
.wcom-stats-filters button {
  min-height:42px
}
.wcom-stats-filters input:disabled {
  background:#f1f5f9;
  color:#94a3b8
}
.wcom-stats-cards {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin:18px 0
}
.wcom-stats-cards>div {
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:20px;
  box-shadow:0 5px 20px rgba(15,23,42,.04)
}
.wcom-stats-cards span,.wcom-stats-cards small {
  display:block;
  color:#64748b
}
.wcom-stats-cards strong {
  display:block;
  font-size:25px;
  margin:8px 0
}
.wcom-stats-cards .profit strong {
  color:#15803d
}
.wcom-stats-cards .net {
  border-color:#86efac;
  background:#f0fdf4
}
.wcom-stats-cards .net strong {
  color:#166534
}
.wcom-stats-summary {
  display:flex;
  justify-content:space-between;
  gap:15px;
  margin-bottom:14px
}
.wcom-muted {
  color:#64748b
}
.wcom-stats-profitbar {
  height:12px;
  background:#f1f5f9;
  border-radius:20px;
  overflow:hidden
}
.wcom-stats-profitbar div {
  height:100%;
  background:#22c55e;
  border-radius:20px
}
.wcom-stock-add {
  max-width:1450px
}
.wcom-stock-add-grid {
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:18px
}
.wcom-section-head h2 {
  margin:0 0 5px
}
.wcom-section-head p {
  margin:0;
  color:#64748b
}
.wcom-stock-form {
  margin-top:20px
}
.wcom-product-picker {
  position:relative
}
.wcom-product-picker>input {
  margin-bottom:0
}
.wcom-stock-product-info {
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:10px;
  padding:13px
}
.wcom-stock-product-info span {
  color:#64748b;
  font-size:12px
}
.wcom-stock-actions {
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:20px
}
.wcom-stock-actions #wcom-stock-add-msg {
  font-weight:700;
  color:#15803d
}
.wcom-stock-actions #wcom-stock-add-msg.error {
  color:#b42318
}
.wcom-stock-guide {
  margin:0;
  height:max-content
}
.wcom-stock-guide h2 {
  margin-top:0
}
.wcom-stock-guide li {
  margin:12px 0;
  color:#475569;
  line-height:1.8
}
.add-stock-result b {
  display:block
}
.add-stock-result small {
  display:block;
  color:#64748b;
  margin-top:4px
}
.wcom-field-wide {
  grid-column:span 2
}
@media(max-width:1200px) {
  .wcom-stats-management-grid {
    grid-template-columns:repeat(2,1fr)
  }
}
@media(max-width:1000px) {
  .wcom-stats-management-grid {
    grid-template-columns:repeat(2,1fr)
  }
  .wcom-stats-cards {
    grid-template-columns:repeat(2,1fr)
  }
  .wcom-stock-add-grid {
    grid-template-columns:1fr
  }
  .wcom-stats-filters {
    display:block
  }
  .wcom-stats-filters button {
    margin-top:12px
  }
}
@media(max-width:650px) {
  .wcom-stats-management-grid {
    grid-template-columns:1fr
  }
  .wcom-stats-cards {
    grid-template-columns:1fr
  }
  .wcom-stock-actions {
    flex-wrap:wrap
  }
  .wcom-field-wide {
    grid-column:auto
  }
}
.wcom-initial-stock-box {
  padding:16px;
  border:1px solid #dcdcde;
  border-radius:10px;
  background:#f8f9fa;
  display:flex;
  flex-direction:column;
  gap:10px
}
.wcom-initial-stock-box small {
  display:block;
  color:#646970
}
.wcom-initial-stock-box .wcom-form-grid {
  margin-top:2px
}
.wcom-initial-stock-box select,.wcom-initial-stock-box input {
  width:100%
}
/* WebCom POS 1.6 dashboard + cashier workflow */
.wcom-dashboard {
  max-width:1500px
}
.wcom-dashboard-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin:20px 0
}
.wcom-dashboard-head>div>span {
  font-size:13px;
  color:#64748b
}
.wcom-dashboard-head h2 {
  margin:5px 0;
  font-size:27px
}
.wcom-dashboard-head p {
  margin:0;
  color:#94a3b8
}
.wcom-dashboard-head .button-hero {
  width:auto;
  padding:0 28px
}
.wcom-dashboard-stats {
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:14px
}
.wcom-dash-stat {
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:18px;
  box-shadow:0 5px 20px rgba(15,23,42,.04)
}
.wcom-dash-stat span,.wcom-dash-stat small {
  display:block;
  color:#64748b
}
.wcom-dash-stat strong {
  display:block;
  font-size:24px;
  margin:8px 0
}
.wcom-dash-stat.positive {
  background:#f0fdf4;
  border-color:#bbf7d0
}
.wcom-dash-stat.positive strong {
  color:#15803d
}
.wcom-dash-stat.warning {
  background:#fffbeb;
  border-color:#fde68a
}
.wcom-dashboard-panel {
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:20px;
  margin-top:16px;
  box-shadow:0 5px 20px rgba(15,23,42,.04)
}
.wcom-dashboard-section-title {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:16px
}
.wcom-dashboard-section-title h2 {
  margin:0
}
.wcom-dashboard-section-title span {
  color:#64748b;
  font-size:12px
}
.wcom-quick-actions {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px
}
.wcom-quick-actions a {
  display:flex;
  flex-direction:column;
  gap:5px;
  text-decoration:none;
  color:#0f172a;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:16px;
  transition:.15s
}
.wcom-quick-actions a:hover {
  transform:translateY(-2px);
  border-color:#93c5fd;
  background:#eff6ff
}
.wcom-quick-actions b {
  font-size:25px
}
.wcom-quick-actions span {
  font-weight:800
}
.wcom-quick-actions small {
  color:#64748b
}
.wcom-alert-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px
}
.wcom-alert-grid a {
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:16px;
  text-decoration:none;
  color:#0f172a;
  display:flex;
  flex-direction:column;
  gap:6px
}
.wcom-alert-grid a:hover {
  border-color:#93c5fd
}
.wcom-alert-grid strong {
  font-size:24px
}
.wcom-alert-grid span {
  color:#64748b;
  font-size:12px
}
.wcom-dash-summary {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px
}
.wcom-dash-summary span {
  background:#f8fafc;
  padding:15px;
  border-radius:10px;
  color:#64748b
}
.wcom-dash-summary b {
  display:block;
  color:#0f172a;
  margin-top:5px;
  font-size:18px
}
.wpc-store-name {
  font-size:20px;
  font-weight:900;
  letter-spacing:.2px
}
.wpc-session-meta {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  color:#64748b;
  font-size:11px;
  margin-top:8px
}
.wpc-session-meta b {
  color:#0f172a
}
.wpc-head-actions {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  justify-content:flex-end
}
.wpc-wide {
  width:100%;
  margin-bottom:8px
}
.wpc-session-box {
  margin-top:14px;
  padding:12px;
  border-radius:10px;
  background:#f8fafc;
  display:grid;
  grid-template-columns:1fr auto;
  gap:5px
}
.wpc-session-box span {
  font-size:11px;
  color:#64748b
}
.wpc-session-box strong {
  font-size:12px
}
.wpc-session-box .wpc-link {
  grid-column:1/-1;
  text-align:right;
  padding:0
}
.wpc-session-closed {
  color:#b42318
}
.wpc-quick-products {
  margin:14px 0
}
.wpc-quick-title {
  display:flex;
  align-items:center;
  justify-content:space-between
}
.wpc-quick-title h3 {
  margin:0
}
.wpc-link {
  color:#2563eb;
  background:none;
  border:0;
  cursor:pointer;
  font-family:inherit
}
.wpc-quick-card {
  min-height:74px
}
.wpc-held-row {
  display:grid;
  grid-template-columns:1fr auto auto;
  align-items:center;
  gap:10px;
  padding:13px 0;
  border-bottom:1px solid #eef2f7
}
.wpc-held-row small {
  display:block;
  color:#64748b;
  margin-top:4px
}
.wpc-modal-muted {
  color:#64748b
}
.wpc-lookup-card {
  margin-top:15px;
  background:#f8fafc;
  border-radius:10px;
  padding:16px;
  display:flex;
  flex-direction:column;
  gap:8px
}
.wpc-in-stock {
  color:#15803d
}
.wpc-out-stock {
  color:#b42318
}
.wpc-return-sale-head {
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:12px 0
}
.wpc-return-item {
  display:grid;
  grid-template-columns:auto 1fr 110px;
  align-items:center;
  gap:8px;
  padding:9px 0;
  border-bottom:1px solid #eef2f7
}
.wpc-ret-qty {
  width:100%;
  height:38px;
  border:1px solid #cbd5e1;
  border-radius:7px
}
.wcom-return-app {
  max-width:1200px
}
.wcom-return-actions {
  display:flex;
  align-items:end;
  gap:12px;
  margin-top:18px
}
.wcom-return-actions label {
  font-weight:700
}
.wcom-return-actions input {
  display:block;
  margin-top:6px;
  height:40px
}
.wcom-return-actions #wcom-return-msg {
  font-weight:700
}
.wcom-return-sale-head {
  display:flex;
  justify-content:space-between;
  padding:12px 0
}
.wcom-return-qty {
  width:90px;
  height:36px
}
.wpc-results .wpc-quick-card {
  cursor:pointer
}
@media(max-width:1200px) {
  .wcom-dashboard-stats {
    grid-template-columns:repeat(3,1fr)
  }
  .wcom-quick-actions {
    grid-template-columns:repeat(4,1fr)
  }
}
@media(max-width:800px) {
  .wcom-dashboard-head {
    align-items:flex-start;
    flex-direction:column
  }
  .wcom-dashboard-stats,.wcom-alert-grid,.wcom-dash-summary {
    grid-template-columns:1fr 1fr
  }
  .wcom-quick-actions {
    grid-template-columns:repeat(2,1fr)
  }
  .wpc-head-actions {
    justify-content:flex-start
  }
  .wpc-return-item {
    grid-template-columns:auto 1fr
  }
  .wpc-return-item .wpc-ret-qty {
    grid-column:2
  }
  .wcom-return-actions {
    flex-wrap:wrap
  }
}
@media(max-width:600px) {
  .wcom-dashboard-stats,.wcom-alert-grid,.wcom-dash-summary {
    grid-template-columns:1fr
  }
  .wcom-quick-actions {
    grid-template-columns:1fr 1fr
  }
}
.wcom-version-badge {
  display:inline-block;
  margin-right:8px;
  padding:4px 9px;
  border-radius:999px;
  background:#eff6ff;
  color:#1d4ed8;
  font-size:11px;
  vertical-align:middle
}
.wcom-dashboard-head-actions {
  display:flex;
  gap:8px;
  align-items:center
}
/* WebCom POS cashier modern theme */
.wcom-pro-cashier {
  background:var(--cashier-bg,#f8fafc);
  min-height:calc(100vh - 32px);
  border-radius:18px
}
.wcom-pro-cashier .wpc-head {
  background:linear-gradient(135deg,var(--cashier-primary,#2563eb),#111827);
  color:#fff;
  border-radius:18px;
  padding:18px 20px;
  box-shadow:0 12px 35px rgba(15,23,42,.14);
  margin-bottom:14px
}
.wcom-pro-cashier .wpc-brand,.wcom-pro-cashier .wpc-brand h2,.wcom-pro-cashier .wpc-store-name,.wcom-pro-cashier .wpc-session-meta,.wcom-pro-cashier .wpc-session-meta span,.wcom-pro-cashier .wpc-session-meta b {
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.28)
}
.wcom-pro-cashier .wpc-session-meta {
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.24);
  border-radius:12px;
  padding:7px 10px;
  display:flex;
  gap:12px;
  flex-wrap:wrap
}
.wcom-pro-cashier .wpc-print-option {
  display:flex;
  align-items:center;
  gap:8px;
  font-weight:600;
  padding:9px 11px;
  border:1px solid #e2e8f0;
  border-radius:10px;
  background:#f8fafc
}
.wcom-pro-cashier .wpc-print-option input {
  width:18px;
  height:18px;
  margin:0
}
.wcom-pro-cashier .wpc-store-name {
  font-size:13px;
  font-weight:700;
  opacity:.85;
  margin-bottom:3px
}
.wcom-pro-cashier .wpc-head h2 {
  color:#fff
}
.wcom-pro-cashier .wpc-session-meta {
  display:flex;
  gap:16px;
  flex-wrap:wrap
}
.wcom-pro-cashier .wpc-session-meta span {
  color:rgba(255,255,255,.82)
}
.wcom-pro-cashier .wpc-head .wpc-btn {
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.22);
  color:#fff;
  backdrop-filter:blur(8px)
}
.wcom-pro-cashier .wpc-head .wpc-btn:hover {
  background:rgba(255,255,255,.24)
}
.wcom-pro-cashier .wpc-pay {
  background:var(--cashier-accent,#16a34a)
}
.wcom-pro-cashier .wpc-result:hover {
  border-color:var(--cashier-primary,#2563eb);
  box-shadow:0 4px 16px rgba(15,23,42,.06)
}
.wcom-pro-cashier:fullscreen,.wcom-pro-cashier.wpc-fullscreen-mode {
  background:#fff!important;
  width:100vw;
  height:100vh;
  min-height:100vh;
  margin:0;
  padding:18px;
  overflow:auto;
  border-radius:0
}
.wcom-pro-cashier:fullscreen .wpc-main,.wcom-pro-cashier:fullscreen .wpc-side {
  box-shadow:none
}
.wcom-pro-cashier:fullscreen {
  box-sizing:border-box
}
/* ═══ 03 · Cashier core: contrast, scanner/search/receipt, stable UI, responsive UI (1.6.4 – 3.0.4) ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Order matters: later files override earlier ones. */

/* 1.6.4 cashier contrast + account/security */
.wcom-pro-cashier .wpc-head {
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,var(--cashier-primary,#2563eb) 0%,#172033 72%,#0b1220 100%);
  padding:20px 22px;
  border-radius:20px
}
.wcom-pro-cashier .wpc-head:after {
  content:"";
  position:absolute;
  inset:auto -60px -90px auto;
  width:260px;
  height:260px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  pointer-events:none
}
.wcom-pro-cashier .wpc-brand,.wcom-pro-cashier .wpc-head-actions {
  position:relative;
  z-index:1
}
.wcom-pro-cashier .wpc-session-meta {
  background:#fff!important;
  color:#0f172a!important;
  border:0!important;
  box-shadow:0 4px 14px rgba(0,0,0,.12);
  padding:8px 12px;
  gap:7px 16px
}
.wcom-pro-cashier .wpc-session-meta span {
  color:#475569!important;
  text-shadow:none!important;
  font-weight:700
}
.wcom-pro-cashier .wpc-session-meta b {
  color:#0f172a!important;
  text-shadow:none!important;
  font-weight:900
}
.wcom-pro-cashier .wpc-head-actions .wpc-btn {
  min-height:40px;
  border-radius:10px
}
.wcom-settings-access-link {
  display:flex;
  align-items:center;
  gap:12px;
  margin:12px 0 16px;
  padding:12px 14px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px
}
.wcom-user-row {
  display:grid;
  grid-template-columns:minmax(180px,1fr) 220px minmax(260px,1.5fr) auto;
  gap:12px;
  align-items:center;
  padding:16px 0;
  border-bottom:1px solid #e2e8f0
}
.wcom-user-row small {
  display:block;
  color:#64748b;
  margin-top:4px
}
.wcom-user-row select {
  width:100%;
  height:38px
}
.wcom-user-caps {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  padding-top:10px
}
.wcom-user-caps label {
  font-size:12px
}
.wcom-user-protected {
  color:#64748b;
  font-size:12px
}
.wcom-account-card {
  max-width:760px;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:18px;
  padding:24px;
  box-shadow:0 10px 30px rgba(15,23,42,.06);
  display:grid;
  grid-template-columns:auto 1fr;
  gap:16px;
  align-items:center
}
.wcom-account-avatar {
  width:68px;
  height:68px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#eff6ff;
  color:#1d4ed8;
  font-size:28px;
  font-weight:900
}
.wcom-account-card h2 {
  margin:0
}
.wcom-account-card p {
  margin:5px 0;
  color:#64748b
}
.wcom-account-actions {
  grid-column:1/-1;
  display:flex;
  gap:8px;
  flex-wrap:wrap
}
@media(max-width:900px) {
  .wcom-user-row {
    grid-template-columns:1fr
  }
  .wcom-user-caps {
    grid-template-columns:1fr
  }
  .wcom-account-card {
    grid-template-columns:1fr
  }
}
.wpc-shift-details {
  margin-top:8px;
  padding:12px;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:#fff;
  box-shadow:0 5px 18px rgba(15,23,42,.05)
}
.wpc-shift-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px
}
.wpc-shift-grid>div {
  padding:9px;
  border:1px solid #eef2f7;
  border-radius:9px;
  background:#f8fafc
}
.wpc-shift-grid span {
  display:block;
  font-size:10px;
  color:#64748b;
  margin-bottom:4px
}
.wpc-shift-grid b {
  font-size:13px;
  color:#0f172a
}
.wpc-shift-grid .expected {
  background:#eff6ff;
  border-color:#bfdbfe
}
.wpc-shift-grid .expected b {
  font-size:17px;
  color:#1d4ed8
}
.wpc-shift-grid input {
  width:100%;
  height:32px;
  border:1px solid #cbd5e1;
  border-radius:7px;
  padding:0 7px;
  box-sizing:border-box
}
.wpc-shift-grid .difference {
  background:#fefce8;
  border-color:#fde68a
}
.wpc-shift-grid .difference b {
  font-size:15px
}
.wpc-shift-note {
  display:block;
  margin-top:9px;
  color:#64748b;
  font-size:10px;
  line-height:1.6
}
.wpc-offline-status {
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  margin:8px 0;
  border:1px solid #f59e0b;
  background:#fffbeb;
  color:#92400e;
  border-radius:10px;
  font-size:13px
}
.wpc-offline-status b {
  min-width:22px;
  text-align:center
}
.wcom-setup {
  max-width:1100px;
  margin:24px auto
}
.wcom-setup-hero {
  background:linear-gradient(135deg,#0f172a,#2563eb);
  color:#fff;
  border-radius:18px;
  padding:30px;
  margin-bottom:18px
}
.wcom-setup-hero h1 {
  color:#fff;
  margin:10px 0 6px;
  font-size:32px
}
.wcom-setup-hero p {
  opacity:.9;
  font-size:15px
}
.wcom-setup .wcom-panel {
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:22px;
  margin-bottom:16px;
  box-shadow:0 5px 18px rgba(15,23,42,.04)
}
.wcom-setup .wcom-panel h2 {
  margin-top:0
}
.wcom-setup .wcom-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px
}
.wcom-setup .wcom-form-grid label {
  display:flex;
  flex-direction:column;
  gap:6px;
  font-weight:600
}
.wcom-setup input,.wcom-setup textarea {
  width:100%;
  box-sizing:border-box
}
.wcom-setup .wcom-field-wide {
  grid-column:1/-1
}
.wcom-version-badge {
  display:inline-block;
  padding:5px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  font-size:12px
}
.wcom-setup .notice {
  margin:0 0 16px
}
@media(max-width:700px) {
  .wcom-setup .wcom-form-grid {
    grid-template-columns:1fr
  }
}
\n.wcom-cashier-login {
  min-height:70vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:40px 16px;
  background:#f6f8fb;
  font-family:Arial,Tahoma,sans-serif
}
.wcom-cashier-login-card {
  width:min(430px,100%);
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:20px;
  padding:34px;
  box-shadow:0 20px 60px rgba(15,23,42,.08);
  text-align:right
}
.wcom-login-logo {
  font-weight:800;
  font-size:22px;
  color:#2563eb;
  margin-bottom:22px
}
.wcom-cashier-login-card h1 {
  margin:0 0 8px;
  font-size:28px
}
.wcom-cashier-login-card p {
  color:#64748b;
  margin:0 0 22px
}
.wcom-cashier-login-card label {
  display:block;
  font-weight:700;
  margin:14px 0
}
.wcom-cashier-login-card input[type=text],.wcom-cashier-login-card input[type=password] {
  display:block;
  width:100%;
  box-sizing:border-box;
  margin-top:7px;
  padding:13px;
  border:1px solid #dbe2ea;
  border-radius:10px;
  font-size:16px
}
.wcom-cashier-login-card button {
  width:100%;
  border:0;
  border-radius:10px;
  padding:14px;
  background:#2563eb;
  color:#fff;
  font-weight:800;
  font-size:16px;
  cursor:pointer;
  margin-top:8px
}
.wcom-login-remember {
  font-weight:500!important
}
.wcom-login-remember input {
  margin-left:6px
}
.wcom-login-error {
  background:#fef2f2;
  color:#b91c1c;
  border:1px solid #fecaca;
  padding:11px 13px;
  border-radius:10px;
  margin-bottom:14px
}
.wcom-cashier-login-card small {
  display:block;
  color:#94a3b8;
  margin-top:18px;
  line-height:1.6
}
\n .wcom-invoice-modal {
  max-width:900px!important
}
.wcom-modal-x {
  position:absolute;
  left:16px;
  top:12px;
  border:0;
  background:transparent;
  font-size:28px;
  color:#64748b;
  cursor:pointer
}
.wcom-invoice-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-bottom:1px solid #e5e7eb;
  padding-bottom:15px;
  margin-bottom:15px
}
.wcom-invoice-head span,.wcom-invoice-meta span {
  display:block;
  color:#64748b;
  font-size:12px
}
.wcom-invoice-head h2 {
  margin:4px 0 0
}
.wcom-invoice-meta {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin-bottom:18px
}
.wcom-invoice-totals {
  margin-top:18px;
  margin-right:auto;
  width:min(360px,100%);
  display:grid;
  gap:8px
}
.wcom-invoice-totals>div {
  display:flex;
  justify-content:space-between;
  padding:8px 0;
  border-bottom:1px dashed #e5e7eb
}
.wcom-invoice-totals .grand {
  font-size:18px;
  border-bottom:0
}
@media(max-width:700px) {
  .wcom-invoice-meta {
    grid-template-columns:1fr
  }
  .wcom-invoice-modal {
    padding:20px!important
  }
}
/* 2.8.0 cashier core */
.wcom-receipt-preview {
  max-width:1100px!important;
  width:min(96vw,1100px)!important;
  padding:0!important;
  overflow:hidden
}
.wcom-receipt-preview iframe {
  display:block
}
.wpc-return-search {
  display:flex;
  gap:8px;
  align-items:center
}
.wpc-return-search .wpc-modal-input {
  flex:1
}
.wpc-return-total {
  margin:12px 0;
  padding:10px;
  border-radius:10px;
  background:#f8fafc
}
.wpc-offline-status {
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:center;
  margin:8px 0;
  padding:8px 12px;
  border-radius:10px;
  background:#fff7ed;
  color:#9a3412;
  font-weight:600
}
.wpc-offline-status b {
  min-width:24px;
  text-align:center
}
.wpc-result b {
  display:block
}
.wpc-result span {
  display:block;
  margin-top:3px;
  font-size:12px;
  opacity:.75
}
/* WebCom POS 2.8 scanner/search/receipt improvements */
.wpc-search-modes {
  display:flex;
  gap:4px;
  align-items:center;
  padding:3px
}
.wpc-search-mode,.wpc-search-scan {
  border:1px solid #dbe4ee;
  background:#fff;
  border-radius:9px;
  min-width:34px;
  height:34px;
  cursor:pointer;
  font-weight:800
}
.wpc-search-mode.active {
  background:var(--cashier-primary,#2563eb);
  color:#fff;
  border-color:var(--cashier-primary,#2563eb)
}
.wpc-search-scan {
  font-size:16px
}
.wcom-scanner-field {
  display:flex!important;
  align-items:center;
  gap:6px
}
.wcom-scanner-field>input,.wcom-scanner-field>select {
  flex:1
}
.wcom-inline-scan {
  border:1px solid #d1d5db;
  background:#fff;
  border-radius:8px;
  padding:8px 10px;
  cursor:pointer;
  line-height:1
}
.wcom-scanner-modal {
  position:fixed;
  inset:0;
  background:rgba(15,23,42,.78);
  z-index:1000000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px
}
.wcom-scanner-box {
  position:relative;
  width:min(680px,96vw);
  background:#000;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 20px 80px rgba(0,0,0,.4)
}
.wcom-scanner-box video {
  display:block;
  width:100%;
  max-height:75vh;
  object-fit:cover
}
.wcom-scanner-close {
  position:absolute;
  z-index:2;
  top:12px;
  right:12px;
  border:0;
  border-radius:10px;
  background:#fff;
  font-size:24px;
  width:42px;
  height:42px;
  cursor:pointer
}
.wcom-scanner-guide {
  position:absolute;
  bottom:18px;
  left:50%;
  transform:translateX(-50%);
  background:rgba(0,0,0,.65);
  color:#fff;
  padding:10px 16px;
  border-radius:999px;
  font-weight:700
}
.wcom-receipt-loading {
  padding:40px;
  text-align:center;
  font-weight:800;
  color:#475569
}
@media(max-width:700px) {
  .wpc-searchbar {
    flex-wrap:wrap
  }
  .wpc-searchbar input {
    min-width:160px
  }
  .wpc-search-modes {
    order:3;
    width:100%;
    justify-content:center
  }
}
/* Cashier UX: explicit product names and icon-based search modes */
.wpc-quick-card {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  text-align:right!important;
  min-height:88px!important
}
.wpc-product-name {
  font-size:15px!important;
  font-weight:900!important;
  color:#0f172a!important;
  line-height:1.45;
  white-space:normal
}
.wpc-product-meta {
  font-size:11px!important;
  color:#64748b!important;
  margin-top:7px!important
}
.wpc-search-modes {
  gap:5px!important
}
.wpc-search-mode,.wpc-search-scan {
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-width:38px!important;
  height:38px!important;
  font-size:17px!important
}
.wpc-mode-icon {
  line-height:1;
  font-size:17px
}
.wpc-search-mode.active .wpc-mode-icon {
  filter:brightness(0) invert(1)
}
.wcom-receipt-toolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 14px;
  background:#f8fafc;
  border-bottom:1px solid #e5e7eb;
  position:sticky;
  top:0;
  z-index:2
}
.wcom-receipt-toolbar>div {
  display:flex;
  gap:6px;
  align-items:center
}
.wcom-receipt-preview iframe {
  background:#fff
}
/* WebCom POS 2.9.1 — cashier UI stable */
.wpc-searchbar {
  grid-template-columns:34px minmax(180px,1fr) auto auto!important;
  gap:8px!important;
  align-items:center!important;
  overflow:visible!important
}
.wpc-search-leading {
  display:flex!important;
  align-items:center;
  justify-content:center;
  height:42px!important
}
.wpc-search-leading svg {
  width:21px;
  height:21px;
  fill:none;
  stroke:#64748b;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round
}
.wpc-search-modes {
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:5px!important;
  white-space:nowrap!important;
  padding:0!important;
  direction:rtl!important
}
.wpc-search-mode,.wpc-search-scan {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  width:auto!important;
  min-width:42px!important;
  height:42px!important;
  padding:0 9px!important;
  border:1px solid #dbe4ee!important;
  background:#fff!important;
  border-radius:10px!important;
  color:#334155!important;
  font-family:inherit!important;
  cursor:pointer!important;
  transition:.15s ease!important;
  overflow:visible!important
}
.wpc-search-mode:hover,.wpc-search-scan:hover {
  border-color:#94a3b8!important;
  background:#f8fafc!important
}
.wpc-search-mode.active {
  background:var(--cashier-primary,#2563eb)!important;
  color:#fff!important;
  border-color:var(--cashier-primary,#2563eb)!important;
  box-shadow:0 4px 12px rgba(37,99,235,.18)!important
}
.wpc-search-mode svg,.wpc-search-scan svg {
  width:20px!important;
  height:20px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  flex:0 0 auto!important
}
.wpc-search-mode span,.wpc-search-scan span {
  display:inline!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1!important
}
.wpc-searchbar>.wpc-btn {
  height:42px!important;
  white-space:nowrap!important
}
.wpc-quick-card {
  min-height:96px!important;
  padding:13px!important;
  align-items:flex-start!important;
  justify-content:center!important
}
.wpc-product-name {
  display:block!important;
  font-size:15px!important;
  font-weight:900!important;
  color:#0f172a!important;
  line-height:1.5!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important
}
.wpc-quick-card .wpc-product-meta {
  display:block!important;
  margin-top:7px!important;
  color:#64748b!important;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1.5!important
}
.wpc-results .wpc-result {
  min-width:0!important
}
.wpc-searchbar input {
  min-width:0!important
}
.wcom-receipt-preview {
  max-width:1100px!important;
  width:min(96vw,1100px)!important;
  height:min(92vh,900px)!important;
  padding:0!important;
  overflow:hidden!important
}
.wcom-receipt-preview iframe {
  display:block;
  border:0!important;
  width:100%!important;
  height:calc(100% - 52px)!important;
  background:#fff!important
}
.wcom-receipt-toolbar {
  height:52px!important;
  min-height:52px!important
}
@media(max-width:1050px) {
  .wpc-searchbar {
    grid-template-columns:34px minmax(140px,1fr) auto!important
  }
  .wpc-search-modes {
    grid-column:1/-1;
    justify-content:center!important;
    flex-wrap:wrap!important
  }
  .wpc-searchbar>.wpc-btn {
    grid-column:1/-1;
    width:100%!important
  }
}
@media(max-width:700px) {
  .wpc-searchbar {
    grid-template-columns:30px minmax(0,1fr)!important
  }
  .wpc-search-modes {
    grid-column:1/-1!important;
    justify-content:center!important
  }
  .wpc-search-mode,.wpc-search-scan {
    min-width:42px!important;
    padding:0 8px!important
  }
  .wpc-search-mode span,.wpc-search-scan span {
    font-size:10px!important
  }
  .wpc-searchbar>.wpc-btn {
    grid-column:1/-1!important
  }
}
/* WebCom POS 3.0 — Professional responsive UI */
.wcom-pro-cashier {
  width:100%;
  box-sizing:border-box
}
.wcom-pro-cashier .wpc-layout {
  grid-template-columns:minmax(0,1fr) 390px;
  gap:16px
}
.wcom-pro-cashier .wpc-main {
  min-width:0
}
.wcom-pro-cashier .wpc-side {
  min-width:0
}
.wcom-pro-cashier .wpc-results {
  grid-template-columns:repeat(4,minmax(0,1fr))
}
.wcom-pro-cashier .wpc-searchbar {
  min-width:0
}
.wcom-pro-cashier .wpc-searchbar input {
  width:100%;
  box-sizing:border-box
}
.wcom-pro-cashier .wpc-cart-wrap {
  overflow-x:auto
}
.wcom-pro-cashier .wpc-pay {
  min-height:54px;
  touch-action:manipulation
}
.wcom-pro-cashier button,.wcom-pro-cashier input,.wcom-pro-cashier select {
  touch-action:manipulation
}
.wcom-receipt-preview {
  width:min(1100px,96vw)!important;
  max-width:1100px!important
}
.wcom-receipt-toolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 16px;
  border-bottom:1px solid #e5e7eb;
  background:#f8fafc;
  position:sticky;
  top:0;
  z-index:2
}
.wcom-receipt-toolbar>div {
  display:flex;
  gap:7px;
  align-items:center
}
.wcom-receipt-toolbar .button {
  min-height:36px
}
.wcom-return-manager-card {
  overflow:hidden
}
.wcom-return-hero {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:16px;
  border-radius:16px;
  background:linear-gradient(135deg,#fff7ed,#f8fafc);
  border:1px solid #fed7aa;
  margin-bottom:16px
}
.wcom-return-hero h2 {
  margin:8px 0 5px!important
}
.wcom-return-hero p {
  margin:0;
  color:#64748b
}
.wcom-return-icon {
  width:56px;
  height:56px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:#fff;
  color:#c2410c;
  font-size:28px;
  font-weight:900;
  box-shadow:0 8px 20px rgba(194,65,12,.10)
}
.wcom-return-result {
  margin-top:14px;
  padding:14px;
  border:1px solid #e5e7eb;
  border-radius:14px;
  background:#fff;
  overflow:auto
}
.wcom-return-summary {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
  margin-top:14px;
  padding:14px;
  border-radius:14px;
  background:#f8fafc;
  border:1px solid #e5e7eb
}
.wcom-return-summary label {
  font-weight:800
}
.wcom-return-summary input {
  display:block;
  width:180px;
  margin-top:6px;
  height:42px;
  border:1px solid #cbd5e1;
  border-radius:10px;
  padding:0 10px;
  box-sizing:border-box
}
.wcom-return-product-filter {
  display:flex;
  gap:8px;
  align-items:center;
  margin:12px 0
}
.wcom-return-product-filter input {
  flex:1;
  height:42px;
  border:1px solid #cbd5e1;
  border-radius:10px;
  padding:0 12px
}
.wcom-return-product-filter button {
  height:42px
}
.wcom-return-item-hidden {
  display:none!important
}
@media(max-width:1200px) {
  .wcom-pro-cashier .wpc-layout {
    grid-template-columns:minmax(0,1fr) 340px
  }
  .wcom-pro-cashier .wpc-results {
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
}
@media(max-width:900px) {
  .wcom-pro-cashier {
    padding:10px
  }
  .wcom-pro-cashier .wpc-head {
    border-radius:16px;
    padding:15px
  }
  .wcom-pro-cashier .wpc-layout {
    grid-template-columns:1fr
  }
  .wcom-pro-cashier .wpc-side {
    position:static
  }
  .wcom-pro-cashier .wpc-results {
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .wcom-pro-cashier .wpc-cart-wrap {
    max-height:45vh;
    overflow:auto
  }
  .wcom-receipt-preview iframe {
    height:72vh!important
  }
}
@media(max-width:600px) {
  .wcom-pro-cashier {
    padding:6px
  }
  .wcom-pro-cashier .wpc-head {
    margin-bottom:8px;
    padding:13px;
    border-radius:14px
  }
  .wcom-pro-cashier .wpc-head h2 {
    font-size:21px
  }
  .wcom-pro-cashier .wpc-head-actions {
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr
  }
  .wcom-pro-cashier .wpc-head-actions .wpc-btn {
    width:100%;
    min-height:42px
  }
  .wcom-pro-cashier .wpc-main,.wcom-pro-cashier .wpc-side {
    padding:11px;
    border-radius:12px
  }
  .wcom-pro-cashier .wpc-results {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px
  }
  .wcom-pro-cashier .wpc-quick-card {
    min-height:82px!important;
    padding:10px!important
  }
  .wcom-pro-cashier .wpc-product-name {
    font-size:13px!important
  }
  .wcom-pro-cashier .wpc-searchbar {
    padding:4px
  }
  .wcom-pro-cashier .wpc-search-modes {
    gap:4px!important
  }
  .wcom-pro-cashier .wpc-search-mode,.wcom-pro-cashier .wpc-search-scan {
    height:40px!important;
    min-width:40px!important;
    padding:0 7px!important
  }
  .wcom-pro-cashier .wpc-search-mode span,.wcom-pro-cashier .wpc-search-scan span {
    font-size:9px!important
  }
  .wcom-pro-cashier .wpc-cart-wrap {
    max-height:42vh
  }
  .wcom-pro-cashier .wpc-summary .grand strong {
    font-size:25px
  }
  .wcom-pro-cashier .wpc-pay {
    height:56px
  }
  .wcom-return-hero {
    align-items:flex-start
  }
  .wcom-return-summary {
    display:block
  }
  .wcom-return-summary input {
    width:100%;
    margin-bottom:10px
  }
  .wcom-receipt-toolbar {
    align-items:stretch;
    flex-direction:column
  }
  .wcom-receipt-toolbar>div {
    width:100%
  }
  .wcom-receipt-toolbar .button {
    flex:1
  }
  .wcom-receipt-preview {
    width:98vw!important
  }
  .wcom-return-product-filter {
    flex-direction:column;
    align-items:stretch
  }
}
/* 3.0.1 fast interaction fixes */
.wcom-return-search-toolbar {
  align-items:flex-end;
  gap:12px
}
.wcom-return-search-label {
  display:flex!important;
  flex:1;
  min-width:280px;
  flex-direction:column;
  gap:6px;
  font-weight:800
}
.wcom-return-search-label input {
  width:100%;
  min-height:46px;
  font-size:16px;
  border:2px solid #cbd5e1!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 1px 2px rgba(15,23,42,.05);
  padding:10px 14px
}
.wcom-return-search-label input:focus {
  border-color:#2563eb!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.12)!important;
  outline:0
}
.wcom-return-search-label small {
  font-weight:500;
  color:#64748b
}
.wpc-return-search {
  display:flex;
  gap:10px;
  align-items:flex-end
}
.wpc-return-search-field {
  display:flex;
  flex:1;
  flex-direction:column;
  gap:6px;
  font-weight:800
}
.wpc-return-search-field input,.wpc-return-main-input {
  min-height:58px!important;
  height:58px!important;
  border:2px solid #94a3b8!important;
  font-size:18px!important;
  font-weight:600!important;
  background:#fff!important;
  padding:0 16px!important;
  box-sizing:border-box!important
}
.wpc-return-search-field input:focus,.wpc-return-main-input:focus {
  border-color:#2563eb!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.12)!important;
  outline:0!important
}
.wpc-return-search-field input:focus {
  border-color:#2563eb!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.12)!important;
  outline:0
}
.wpc-lookup-fast {
  display:flex;
  gap:8px
}
.wpc-lookup-fast .wpc-modal-input {
  flex:1
}
@media(max-width:700px) {
  .wcom-return-search-toolbar,.wpc-return-search {
    flex-direction:column;
    align-items:stretch
  }
  .wcom-return-search-label {
    min-width:0
  }
  .wcom-return-search-toolbar .button,.wpc-return-search .wpc-pay {
    width:100%;
    min-height:44px
  }
  .wpc-lookup-fast {
    flex-direction:column
  }
}
/* WebCom POS 3.0.4 - return lookup and invoice preview fixes */
.wpc-return-search {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 150px!important;
  gap:12px!important;
  align-items:end!important;
  width:100%!important
}
.wpc-return-search-field {
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  width:100%!important;
  gap:6px!important
}
.wpc-return-search-field>span {
  font-weight:800!important;
  color:#334155!important
}
.wpc-return-search-field input.wpc-modal-input {
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:58px!important;
  min-height:58px!important;
  box-sizing:border-box!important;
  padding:0 16px!important;
  border:2px solid #94a3b8!important;
  border-radius:12px!important;
  font-size:18px!important;
  font-weight:600!important;
  line-height:58px!important;
  background:#fff!important
}
.wpc-return-search-field input.wpc-modal-input:focus {
  border-color:#2563eb!important;
  outline:0!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.12)!important
}
.wpc-return-search>#wpc-return-go {
  width:100%!important;
  height:58px!important;
  min-height:58px!important;
  margin:0!important;
  box-sizing:border-box!important
}
.wcom-receipt-preview iframe {
  background:#fff!important
}
@media(max-width:700px) {
  .wpc-return-search {
    grid-template-columns:1fr!important
  }
  .wpc-return-search>#wpc-return-go {
    width:100%!important
  }
}

/* WebCom POS 3.9.199e — product images and cashier category filters */
.wcom-pro-cashier .wpc-category-filter{display:flex;gap:7px;overflow-x:auto;padding:8px 1px 3px;margin-top:8px;scrollbar-width:thin}
.wcom-pro-cashier .wpc-category-chip{flex:0 0 auto;border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:999px;padding:7px 13px;font-family:inherit;font-size:12px;font-weight:700;line-height:1.3;cursor:pointer;white-space:nowrap}
.wcom-pro-cashier .wpc-category-chip.active{background:#0f172a;color:#fff;border-color:#0f172a}
.wcom-pro-cashier .wpc-result.has-product-image,.wcom-pro-cashier .wpc-quick-card{display:flex;flex-direction:column;align-items:stretch;gap:7px}
.wcom-pro-cashier .wpc-product-image,.wcom-pro-cashier .wpc-product-image-placeholder{width:100%;height:88px;object-fit:contain;border-radius:9px;background:#f8fafc;display:block}
.wcom-pro-cashier .wpc-product-image-placeholder{display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:30px;border:1px dashed #cbd5e1}
.wcom-pro-cashier .wpc-product-top{display:flex;align-items:flex-start;justify-content:space-between;gap:5px}
.wcom-pro-cashier .wpc-product-name{overflow-wrap:anywhere}
.wcom-product-image-field{align-self:start}
@media(max-width:700px){.wcom-pro-cashier .wpc-product-image,.wcom-pro-cashier .wpc-product-image-placeholder{height:66px}.wcom-pro-cashier .wpc-category-chip{padding:6px 10px}}
/* ═══ 04 · Weighted products settings, invoice viewer, cashier UX hardening (Phase 2 – 3.2.1) ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Order matters: later files override earlier ones. */

/* WebCom POS Phase 2 — weighted products settings (storage/config only) */
.wcom-weighted-settings {
  border:1px solid #cbd5e1!important;
  background:linear-gradient(180deg,#fff,#f8fafc)!important
}
.wcom-weighted-settings h2 {
  display:flex;
  align-items:center;
  gap:8px
}
.wcom-weighted-note {
  margin-top:12px;
  padding:10px 12px;
  border-radius:10px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  color:#475569;
  font-size:13px;
  line-height:1.7
}
/* Phase 2 — dedicated weighted scale settings */
.wcom-weighted-hero {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  background:linear-gradient(135deg,#0f172a,#1e293b);
  color:#fff;
  border-radius:16px;
  padding:26px 30px;
  margin:18px 0 14px;
  box-shadow:0 10px 30px rgba(15,23,42,.12)
}
.wcom-weighted-hero h1 {
  color:#fff;
  margin:6px 0 8px;
  font-size:28px
}
.wcom-weighted-hero p {
  margin:0;
  color:#dbeafe;
  font-size:14px
}
.wcom-weighted-kicker {
  font-size:12px;
  font-weight:700;
  letter-spacing:.4px;
  color:#93c5fd
}
.wcom-weighted-phase2-notice {
  background:#fff7ed;
  border:1px solid #fed7aa;
  border-right:5px solid #f97316;
  border-radius:12px;
  padding:15px 18px;
  margin:0 0 14px;
  color:#7c2d12
}
.wcom-weighted-settings-page {
  border:2px solid #c7d2fe;
  box-shadow:0 8px 24px rgba(30,41,59,.08)
}
.wcom-weighted-settings-page h2 {
  font-size:20px;
  margin-top:0
}
.wcom-weighted-primary-field {
  border:1px solid #bfdbfe;
  border-radius:10px;
  padding:10px;
  background:#eff6ff
}
.wcom-weighted-primary-field select {
  margin-top:6px
}
.wcom-weighted-example {
  margin-top:14px;
  padding:12px 14px;
  background:#f8fafc;
  border:1px dashed #cbd5e1;
  border-radius:10px;
  font-size:13px;
  color:#475569
}
#wcom-weighted-msg {
  display:inline-block;
  margin-right:10px;
  font-weight:700
}
.wcom-save-ok {
  color:#15803d
}
.wcom-save-error {
  color:#b91c1c
}
@media(max-width:900px) {
  .wcom-weighted-hero {
    align-items:flex-start;
    flex-direction:column
  }
  .wcom-weighted-hero .button {
    align-self:stretch;
    text-align:center
  }
}
.wpc-weighted-line {
  display:block;
  color:#0f766e;
  font-weight:600;
  font-size:11px;
  margin-top:2px
}
/* WebCom POS 3.1.7 — modern sales invoice viewer */
body.wcom-invoice-view-open {
  overflow:hidden!important
}
.wcom-sales-invoice-overlay {
  background:rgba(2,6,23,.68)!important;
  backdrop-filter:blur(5px)!important;
  padding:18px!important
}
.wcom-sales-invoice-modal {
  width:min(1080px,96vw)!important;
  max-width:1080px!important;
  height:min(92vh,900px)!important;
  max-height:92vh!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.35)!important;
  border-radius:20px!important;
  box-shadow:0 30px 100px rgba(2,6,23,.35)!important;
  background:#f8fafc!important
}
.wcom-sales-invoice-header {
  height:68px;
  min-height:68px;
  padding:0 18px 0 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  background:linear-gradient(135deg,#ffffff,#f1f5f9);
  border-bottom:1px solid #e2e8f0;
  direction:rtl
}
.wcom-sales-invoice-title {
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
  color:#0f172a
}
.wcom-sales-invoice-icon {
  width:40px;
  height:40px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#e0ecff;
  font-size:20px;
  flex:0 0 auto
}
.wcom-sales-invoice-title>div {
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0
}
.wcom-sales-invoice-title span:not(.wcom-sales-invoice-icon) {
  font-size:11px;
  color:#64748b;
  font-weight:700
}
.wcom-sales-invoice-title strong {
  font-size:17px;
  line-height:1.2;
  color:#0f172a;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis
}
.wcom-sales-invoice-actions {
  display:flex;
  align-items:center;
  gap:8px;
  direction:rtl
}
.wcom-sales-invoice-actions .fm-sale-print {
  min-height:40px;
  border-radius:10px!important;
  font-weight:800!important
}
.wcom-sales-invoice-close {
  position:static!important;
  width:40px!important;
  height:40px!important;
  padding:0!important;
  border:1px solid #e2e8f0!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#475569!important;
  font-size:25px!important;
  line-height:1!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:0 1px 2px rgba(15,23,42,.05)!important
}
.wcom-sales-invoice-close:hover {
  background:#f8fafc!important;
  color:#0f172a!important
}
.wcom-sales-invoice-body {
  height:calc(100% - 68px);
  min-height:0;
  padding:14px;
  box-sizing:border-box;
  position:relative;
  background:#e2e8f0;
  overflow:hidden
}
.wcom-sales-invoice-frame {
  height:100%;
  width:100%;
  background:#fff;
  border:1px solid #dbe3ee;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 8px 28px rgba(15,23,42,.10)
}
.wcom-sales-invoice-frame iframe {
  display:block!important;
  width:100%!important;
  height:100%!important;
  border:0!important;
  background:#fff!important
}
.wcom-sales-invoice-body>.wcom-receipt-loading {
  position:absolute;
  inset:14px;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid #dbe3ee;
  border-radius:14px;
  background:rgba(255,255,255,.96);
  font-size:15px;
  color:#334155
}
@media(max-width:700px) {
  .wcom-sales-invoice-overlay {
    padding:8px!important
  }
  .wcom-sales-invoice-modal {
    width:98vw!important;
    height:94vh!important;
    border-radius:15px!important
  }
  .wcom-sales-invoice-header {
    height:62px;
    min-height:62px;
    padding:0 10px
  }
  .wcom-sales-invoice-title strong {
    font-size:14px
  }
  .wcom-sales-invoice-icon {
    width:36px;
    height:36px
  }
  .wcom-sales-invoice-actions .fm-sale-print {
    font-size:12px!important;
    padding:7px 9px!important
  }
  .wcom-sales-invoice-close {
    width:36px!important;
    height:36px!important
  }
  .wcom-sales-invoice-body {
    height:calc(100% - 62px);
    padding:8px
  }
  .wcom-sales-invoice-body>.wcom-receipt-loading {
    inset:8px
  }
  .wcom-sales-invoice-frame {
    border-radius:10px
  }
}
/* WebCom POS 3.2.1 — cashier UX hardening */
.wcom-pro-cashier .wpc-offline-status {
  position:sticky;
  top:0;
  z-index:20;
  justify-content:flex-start;
  background:#fff;
  border:1px solid #dbeafe;
  color:#1e3a8a;
  box-shadow:0 4px 12px rgba(15,23,42,.05)
}
.wcom-pro-cashier .wpc-offline-status b {
  background:#eff6ff;
  border-radius:999px;
  padding:2px 7px
}
.wcom-pro-cashier .wpc-qty button,.wcom-pro-cashier .wpc-del,.wcom-pro-cashier .wpc-result,.wcom-pro-cashier .wpc-pay,.wcom-pro-cashier .wpc-btn {
  touch-action:manipulation
}
.wcom-pro-cashier .wpc-cart-wrap tr:has(.wpc-weighted-line) {
  background:#fffbeb
}
.wcom-pro-cashier .wpc-weighted-line {
  font-weight:800;
  color:#92400e!important
}
.wcom-pro-cashier .wpc-qty input:disabled {
  background:#f8fafc;
  color:#64748b
}
.wcom-pro-cashier .wpc-result {
  min-height:76px
}
@media(max-width:900px) {
  .wcom-pro-cashier .wpc-qty button {
    width:38px;
    height:38px
  }
  .wcom-pro-cashier .wpc-qty input {
    height:38px;
    width:70px;
    font-size:16px
  }
  .wcom-pro-cashier .wpc-pay {
    font-size:18px
  }
}
.wpc-stock-status {
  font-size:12px;
  font-weight:700;
  padding:4px 8px;
  border-radius:999px;
  background:#f1f5f9;
  color:#475569
}
.wpc-stock-status.ok {
  background:#ecfdf5;
  color:#047857
}
.wpc-stock-status.warn {
  background:#fff7ed;
  color:#b45309
}
.wpc-unverified-badge {
  display:inline-block;
  margin-inline-start:6px;
  padding:2px 6px;
  border-radius:999px;
  background:#fff7ed;
  color:#b45309;
  font-size:11px;
  font-weight:700
}
.wpc-modal-actions {
  display:flex;
  gap:8px;
  justify-content:flex-start;
  margin-top:14px
}
.wpc-result span {
  line-height:1.45
}
.wcom-product-form-head,.wcom-product-list-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px
}
.wcom-product-finance-note {
  margin-top:14px;
  padding:12px 14px;
  border:1px solid #bfdbfe;
  background:#eff6ff;
  color:#1e40af;
  border-radius:12px;
  font-size:13px
}
.wcom-product-form-head h2,.wcom-product-list-head h2 {
  margin-bottom:4px
}
.wcom-a-table td .wcom-a-btn {
  padding:7px 9px;
  font-size:12px
}
.wcom-product-mode {
  display:flex;
  gap:10px;
  margin:14px 0;
  flex-wrap:wrap
}
.wcom-product-mode-btn {
  border:1px solid #cbd5e1;
  background:#fff;
  border-radius:10px;
  padding:11px 18px;
  cursor:pointer;
  font-weight:800;
  color:#334155
}
.wcom-product-mode-btn.active {
  background:#2563eb;
  color:#fff;
  border-color:#2563eb;
  box-shadow:0 6px 16px rgba(37,99,235,.18)
}
.wcom-product-existing-box {
  margin:0 0 14px;
  background:#f8fafc;
  border-color:#dbeafe;
  padding:18px
}
.wcom-product-existing-box label {
  display:block;
  font-weight:700;
  font-size:15px
}
.wcom-product-existing-box input,.wcom-product-existing-box select {
  display:block;
  width:100%;
  box-sizing:border-box;
  margin-top:9px;
  min-height:48px;
  border:1px solid #cbd5e1;
  border-radius:10px;
  padding:10px 12px;
  background:#fff
}
.wcom-product-existing-box select {
  height:260px;
  min-height:260px;
  font-size:16px;
  line-height:1.6;
  padding:6px
}
.wcom-product-existing-box select option {
  padding:10px 12px;
  min-height:40px
}
.wcom-product-info-box {
  margin-top:12px;
  padding:12px 14px;
  border-radius:10px;
  background:#eff6ff;
  color:#1e40af;
  font-size:14px;
  line-height:1.7
}
.wcom-product-finance-panel {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin-top:14px
}
.wcom-product-finance-panel>div {
  padding:13px;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:#f8fafc
}
.wcom-product-finance-panel span {
  display:block;
  color:#64748b;
  font-size:12px
}
.wcom-product-finance-panel strong {
  display:block;
  margin-top:5px;
  font-size:18px
}
.wcom-product-finance-panel>div:last-child strong {
  color:#2563eb
}
.wcom-a-muted {
  color:#64748b;
  font-size:12px
}
@media(max-width:800px) {
  .wcom-product-finance-panel {
    grid-template-columns:repeat(2,1fr)
  }
}
/* ═══ 05 · Management centers: purchases, inventory, warehouses, suppliers, batches, returns, expenses, treasury, stats, offline sync, employees (3.2.11 – 3.8.6) ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Order matters: later files override earlier ones. */

/* WebCom POS 3.2.11 — professional product purchase history viewer */
body.wcom-ph-open {
  overflow:hidden!important
}
.wcom-purchase-history-overlay {
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  min-height:100vh!important;
  background:rgba(15,23,42,.66)!important;
  backdrop-filter:blur(6px)!important;
  -webkit-backdrop-filter:blur(6px)!important;
  z-index:2147483647!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:22px!important;
  box-sizing:border-box!important;
  direction:rtl!important;
  isolation:isolate!important
}
.wcom-purchase-history-modal {
  width:min(1180px,96vw)!important;
  max-height:min(88vh,900px)!important;
  background:#fff!important;
  border:1px solid rgba(255,255,255,.6)!important;
  border-radius:20px!important;
  box-shadow:0 30px 100px rgba(2,6,23,.38)!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  box-sizing:border-box!important
}
.wcom-ph-header {
  min-height:78px;
  padding:12px 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  background:linear-gradient(135deg,#fff,#f7f9fc);
  border-bottom:1px solid #e5e7eb;
  box-sizing:border-box
}
.wcom-ph-title-wrap {
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0
}
.wcom-ph-title-wrap>div:last-child {
  min-width:0
}
.wcom-ph-title-wrap span {
  display:block;
  font-size:12px;
  color:#64748b;
  font-weight:800;
  margin-bottom:3px
}
.wcom-ph-title-wrap h2 {
  margin:0!important;
  color:#0f172a!important;
  font-size:20px!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis
}
.wcom-ph-icon {
  width:46px;
  height:46px;
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#e8f0ff;
  font-size:22px;
  flex:0 0 auto
}
.wcom-ph-close {
  width:42px!important;
  height:42px!important;
  border:1px solid #dbe3ee!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#475569!important;
  font-size:28px!important;
  line-height:1!important;
  cursor:pointer!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto
}
.wcom-ph-close:hover {
  background:#f8fafc!important;
  color:#0f172a!important
}
.wcom-ph-content {
  padding:18px;
  overflow:auto!important;
  min-height:0;
  background:#f8fafc;
  box-sizing:border-box
}
.wcom-ph-summary {
  display:grid;
  grid-template-columns:minmax(250px,1.5fr) repeat(4,minmax(130px,1fr));
  gap:10px;
  margin-bottom:18px
}
.wcom-ph-product,.wcom-ph-stat {
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:13px;
  padding:13px 15px;
  min-width:0;
  box-sizing:border-box
}
.wcom-ph-product {
  background:linear-gradient(135deg,#eff6ff,#fff);
  border-color:#dbeafe
}
.wcom-ph-product span,.wcom-ph-stat span {
  display:block;
  color:#64748b;
  font-size:11px;
  font-weight:800
}
.wcom-ph-product strong {
  display:block;
  color:#0f172a;
  font-size:16px;
  margin:5px 0 3px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis
}
.wcom-ph-product small {
  display:block;
  color:#64748b;
  font-size:11px
}
.wcom-ph-stat strong {
  display:block;
  margin-top:6px;
  color:#1e3a8a;
  font-size:17px
}
.wcom-ph-stat.due strong {
  color:#b45309
}
.wcom-ph-section-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin:4px 0 10px
}
.wcom-ph-section-head h3 {
  margin:0!important;
  font-size:16px!important;
  color:#0f172a!important
}
.wcom-ph-section-head span {
  font-size:11px;
  color:#64748b
}
.wcom-ph-table-wrap {
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:14px;
  overflow:auto;
  max-height:48vh
}
.wcom-ph-table {
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  min-width:930px;
  font-size:12px
}
.wcom-ph-table th {
  position:sticky;
  top:0;
  z-index:2;
  background:#f1f5f9;
  color:#475569;
  font-weight:800;
  padding:11px 10px;
  text-align:right;
  border-bottom:1px solid #dbe3ee;
  white-space:nowrap
}
.wcom-ph-table td {
  padding:12px 10px;
  border-bottom:1px solid #eef2f7;
  color:#334155;
  white-space:nowrap
}
.wcom-ph-table tbody tr:last-child td {
  border-bottom:0
}
.wcom-ph-table tbody tr:hover {
  background:#f8fafc
}
.wcom-ph-invoice {
  color:#1d4ed8
}
.wcom-ph-due {
  color:#b45309
}
.wcom-ph-status {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:5px 9px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  white-space:nowrap
}
.wcom-ph-status.paid {
  background:#ecfdf5;
  color:#047857
}
.wcom-ph-status.partial {
  background:#fff7ed;
  color:#b45309
}
.wcom-ph-status.due {
  background:#fef2f2;
  color:#b42318
}
.wcom-ph-footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:14px;
  padding-top:13px;
  border-top:1px solid #e2e8f0;
  color:#64748b;
  font-size:11px
}
.wcom-ph-footer .wcom-a-btn {
  min-height:38px
}
.wcom-ph-loading-state,.wcom-ph-empty,.wcom-ph-error {
  min-height:260px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:8px;
  color:#475569
}
.wcom-ph-loading-state span,.wcom-ph-empty span,.wcom-ph-error span {
  font-size:12px;
  color:#64748b
}
.wcom-ph-spinner {
  width:34px;
  height:34px;
  border:3px solid #dbeafe;
  border-top-color:#2563eb;
  border-radius:50%;
  animation:wcomPhSpin .8s linear infinite;
  margin-bottom:4px
}
@keyframes wcomPhSpin {
  to {
    transform:rotate(360deg)
  }
}
.wcom-ph-empty-icon {
  width:58px;
  height:58px;
  border-radius:16px;
  background:#eef2ff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:26px;
  margin-bottom:4px
}
.wcom-ph-empty strong {
  font-size:16px;
  color:#334155
}
.wcom-ph-error {
  color:#b42318
}
.wcom-ph-error strong {
  font-size:16px
}
@media(max-width:900px) {
  .wcom-purchase-history-overlay {
    padding:10px!important
  }
  .wcom-purchase-history-modal {
    width:98vw!important;
    max-height:94vh!important;
    border-radius:16px!important
  }
  .wcom-ph-header {
    min-height:68px;
    padding:10px 12px
  }
  .wcom-ph-title-wrap h2 {
    font-size:16px!important
  }
  .wcom-ph-icon {
    width:40px;
    height:40px
  }
  .wcom-ph-summary {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .wcom-ph-product {
    grid-column:1/-1
  }
  .wcom-ph-content {
    padding:10px
  }
  .wcom-ph-table-wrap {
    max-height:55vh
  }
  .wcom-ph-footer {
    align-items:flex-start;
    flex-direction:column
  }
  .wcom-ph-footer .wcom-a-btn {
    width:100%;
    justify-content:center
  }
}
/* WebCom POS 3.2.12 — inventory management */
.wcom-inventory-title {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px
}
.wcom-inventory-title h2 {
  margin:0 0 6px
}
.wcom-inventory-kpis {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  margin-top:18px
}
.wcom-inventory-kpis>div {
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:15px;
  padding:14px 15px;
  display:flex;
  flex-direction:column;
  gap:6px
}
.wcom-inventory-kpis span {
  font-size:12px;
  color:#64748b
}
.wcom-inventory-kpis strong {
  font-size:22px;
  color:#0f172a
}
.wcom-inv-low {
  color:#b45309!important
}
.wcom-inv-out {
  color:#b91c1c!important
}
.wcom-inventory-toolbar {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px
}
.wcom-inventory-filters {
  display:grid;
  grid-template-columns:180px 180px minmax(260px,1fr);
  gap:10px;
  flex:1
}
.wcom-inventory-filters label {
  font-weight:700
}
.wcom-inventory-filters input,.wcom-inventory-filters select {
  margin-top:6px
}
.wcom-inventory-actions {
  display:flex;
  gap:8px
}
.wcom-inventory-table-wrap {
  overflow:auto;
  border:1px solid #e2e8f0;
  border-radius:14px
}
.wcom-inventory-table {
  min-width:980px
}
.wcom-inventory-table thead th {
  position:sticky;
  top:0;
  background:#f8fafc;
  z-index:1
}
.wcom-inventory-row-actions {
  display:flex;
  gap:6px;
  flex-wrap:wrap
}
.wcom-inv-warning {
  display:inline-flex;
  align-items:center;
  padding:5px 9px;
  border-radius:999px;
  background:#fff7ed;
  color:#b45309;
  font-weight:800;
  font-size:12px
}
.wcom-inventory-add-card {
  scroll-margin-top:20px
}
.wcom-inventory-add-summary {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin:16px 0
}
.wcom-inventory-add-summary>div {
  border:1px solid #e2e8f0;
  background:#f8fafc;
  border-radius:14px;
  padding:12px 14px
}
.wcom-inventory-add-summary span {
  display:block;
  color:#64748b;
  font-size:12px;
  margin-bottom:5px
}
.wcom-inventory-add-summary strong {
  font-size:20px
}
.wcom-inv-detail-head {
  display:grid;
  grid-template-columns:220px 1fr;
  gap:16px;
  align-items:start;
  margin-bottom:22px
}
.wcom-inv-detail-head>div:first-child {
  background:#eff6ff;
  border-radius:16px;
  padding:16px
}
.wcom-inv-detail-head>div:first-child span {
  display:block;
  color:#64748b;
  font-size:12px
}
.wcom-inv-detail-head>div:first-child strong {
  display:block;
  font-size:18px;
  margin-top:5px
}
.wcom-inv-balance-list {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:10px
}
.wcom-inv-balance {
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:13px 15px;
  background:#fff;
  display:flex;
  justify-content:space-between;
  gap:10px
}
.wcom-inv-plus {
  color:#15803d;
  font-weight:800
}
.wcom-inv-minus {
  color:#b91c1c;
  font-weight:800
}
.wcom-a-empty {
  text-align:center;
  padding:28px;
  color:#64748b;
  background:#f8fafc;
  border-radius:14px
}
.wcom-inv-adjust-box {
  padding:4px
}
.wcom-inventory-modal h3 {
  margin:22px 0 10px
}
.wcom-inventory-modal .wcom-a-table {
  min-width:900px
}
@media(max-width:900px) {
  .wcom-inventory-kpis {
    grid-template-columns:repeat(2,1fr)
  }
  .wcom-inventory-toolbar {
    align-items:stretch;
    flex-direction:column
  }
  .wcom-inventory-filters {
    grid-template-columns:1fr
  }
  .wcom-inventory-add-summary {
    grid-template-columns:1fr
  }
  .wcom-inv-detail-head {
    grid-template-columns:1fr
  }
  .wcom-inventory-title {
    flex-direction:column;
    align-items:stretch
  }
}
/* WebCom POS 3.2.16 — warehouse management */
.wcom-wh-page {
  display:flex;
  flex-direction:column;
  gap:16px
}
.wcom-wh-hero {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  padding:22px 24px;
  border:1px solid #dbe4f0;
  border-radius:18px;
  background:linear-gradient(135deg,#f8fbff,#fff);
  box-shadow:0 8px 25px rgba(15,23,42,.04)
}
.wcom-wh-hero h2 {
  margin:7px 0 5px;
  font-size:24px;
  color:#0f172a
}
.wcom-wh-hero p {
  margin:0;
  color:#64748b;
  line-height:1.7
}
.wcom-wh-kpis {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px
}
.wcom-wh-kpi {
  background:#fff;
  border:1px solid #dbe4f0;
  border-radius:16px;
  padding:16px;
  min-height:100px;
  box-shadow:0 5px 18px rgba(15,23,42,.035)
}
.wcom-wh-kpi span {
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:800
}
.wcom-wh-kpi strong {
  display:block;
  color:#1e3a8a;
  font-size:25px;
  margin-top:9px
}
.wcom-wh-kpi strong.warn {
  color:#b45309
}
.wcom-wh-kpi strong.danger {
  color:#b42318
}
.wcom-wh-kpi small {
  display:block;
  color:#94a3b8;
  margin-top:5px
}
.wcom-wh-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px
}
.wcom-wh-card {
  background:#fff;
  border:1px solid #dbe4f0;
  border-radius:18px;
  padding:18px;
  box-shadow:0 7px 25px rgba(15,23,42,.045)
}
.wcom-wh-card-head {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px
}
.wcom-wh-title {
  display:flex;
  align-items:center;
  gap:11px
}
.wcom-wh-title h3 {
  margin:0;
  color:#0f172a;
  font-size:19px
}
.wcom-wh-title small {
  color:#64748b;
  display:block;
  margin-top:4px
}
.wcom-wh-icon {
  width:42px;
  height:42px;
  border-radius:12px;
  background:#eff6ff;
  color:#1d4ed8;
  display:grid;
  place-items:center;
  font-size:21px
}
.wcom-wh-badges {
  display:flex;
  gap:6px;
  flex-wrap:wrap
}
.wcom-wh-badges span {
  font-size:10px;
  font-weight:800;
  padding:6px 9px;
  border-radius:999px
}
.wcom-wh-badges .default {
  background:#fff7ed;
  color:#b45309
}
.wcom-wh-badges .active {
  background:#ecfdf5;
  color:#047857
}
.wcom-wh-address {
  margin:14px 0;
  color:#64748b;
  font-size:12px;
  min-height:20px
}
.wcom-wh-stats {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:7px
}
.wcom-wh-stats>div {
  padding:10px 7px;
  background:#f8fafc;
  border-radius:11px;
  text-align:center
}
.wcom-wh-stats span {
  display:block;
  font-size:10px;
  color:#64748b
}
.wcom-wh-stats strong {
  display:block;
  margin-top:5px;
  font-size:14px;
  color:#0f172a
}
.wcom-wh-stats strong.warn {
  color:#b45309
}
.wcom-wh-stats strong.danger {
  color:#b42318
}
.wcom-wh-foot {
  border-top:1px solid #eef2f7;
  margin-top:15px;
  padding-top:13px;
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:12px
}
.wcom-wh-foot>div:first-child {
  min-width:0
}
.wcom-wh-foot span,.wcom-wh-foot b,.wcom-wh-foot small {
  display:block
}
.wcom-wh-foot span {
  font-size:10px;
  color:#94a3b8
}
.wcom-wh-foot b {
  font-size:11px;
  color:#475569;
  margin-top:4px
}
.wcom-wh-foot small {
  font-size:10px;
  color:#94a3b8;
  margin-top:3px
}
.wcom-wh-actions {
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  justify-content:flex-end
}
.wcom-wh-loading,.wcom-wh-empty,.wcom-wh-error {
  background:#fff;
  border:1px dashed #cbd5e1;
  border-radius:16px;
  padding:30px;
  text-align:center;
  color:#64748b
}
.wcom-wh-empty h3 {
  margin:8px 0 5px;
  color:#0f172a
}
.wcom-wh-empty p {
  margin:0 0 15px
}
.wcom-wh-error {
  color:#b42318
}
.wcom-wh-modal {
  position:fixed;
  inset:0;
  background:rgba(15,23,42,.62);
  backdrop-filter:blur(6px);
  z-index:2147483647;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  direction:rtl
}
.wcom-wh-modal-box {
  width:min(680px,96vw);
  background:#fff;
  border-radius:20px;
  box-shadow:0 30px 100px rgba(2,6,23,.4);
  overflow:hidden
}
.wcom-wh-modal-head {
  padding:18px 20px;
  border-bottom:1px solid #e2e8f0;
  display:flex;
  align-items:center;
  justify-content:space-between
}
.wcom-wh-modal-head>div>span {
  font-size:11px;
  color:#64748b;
  font-weight:800
}
.wcom-wh-modal-head h2 {
  margin:4px 0 0;
  color:#0f172a
}
.wcom-wh-close {
  border:0;
  background:#f1f5f9;
  color:#334155;
  width:40px;
  height:40px;
  border-radius:11px;
  font-size:24px;
  cursor:pointer
}
.wcom-wh-modal-body {
  padding:20px
}
.wcom-wh-default-check {
  display:flex!important;
  align-items:center;
  gap:8px
}
.wcom-wh-default-check input {
  width:auto!important
}
.wcom-wh-help {
  margin-top:14px;
  padding:11px 13px;
  background:#f8fafc;
  border-radius:11px;
  color:#64748b;
  font-size:11px;
  line-height:1.7
}
.wcom-wh-modal-foot {
  padding:14px 20px;
  border-top:1px solid #e2e8f0;
  display:flex;
  justify-content:flex-start;
  gap:8px
}
.wcom-a-badge {
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  background:#eff6ff;
  color:#1d4ed8;
  font-size:11px;
  font-weight:800
}
@media(max-width:1050px) {
  .wcom-wh-kpis {
    grid-template-columns:repeat(3,1fr)
  }
  .wcom-wh-grid {
    grid-template-columns:1fr
  }
}
@media(max-width:700px) {
  .wcom-wh-hero {
    flex-direction:column;
    align-items:stretch
  }
  .wcom-wh-kpis {
    grid-template-columns:repeat(2,1fr)
  }
  .wcom-wh-stats {
    grid-template-columns:repeat(3,1fr)
  }
  .wcom-wh-foot {
    flex-direction:column;
    align-items:stretch
  }
  .wcom-wh-actions {
    justify-content:flex-start
  }
}
@media(max-width:430px) {
  .wcom-wh-kpis {
    grid-template-columns:1fr
  }
  .wcom-wh-stats {
    grid-template-columns:repeat(2,1fr)
  }
}
/* WebCom POS 3.2.18 — supplier management */
.wcom-sup-page {
  display:flex;
  flex-direction:column;
  gap:16px
}
.wcom-sup-hero {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  padding:22px 24px;
  border:1px solid #dbe4f0;
  border-radius:18px;
  background:linear-gradient(135deg,#f8fbff,#fff);
  box-shadow:0 8px 25px rgba(15,23,42,.04)
}
.wcom-sup-hero h2 {
  margin:8px 0 5px;
  color:#0f172a;
  font-size:24px
}
.wcom-sup-hero p {
  margin:0;
  color:#64748b;
  line-height:1.7
}
.wcom-sup-kpis {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px
}
.wcom-sup-kpi {
  background:#fff;
  border:1px solid #dbe4f0;
  border-radius:16px;
  padding:16px;
  min-height:86px;
  box-shadow:0 5px 18px rgba(15,23,42,.035)
}
.wcom-sup-kpi span {
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:800
}
.wcom-sup-kpi strong {
  display:block;
  color:#1e3a8a;
  font-size:23px;
  margin-top:9px
}
.wcom-sup-toolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  margin-bottom:14px
}
.wcom-sup-toolbar h2 {
  margin:0 0 4px
}
.wcom-sup-toolbar small {
  color:#64748b
}
.wcom-sup-toolbar input {
  width:min(360px,100%);
  padding:11px 13px;
  border:1px solid #cbd5e1;
  border-radius:10px;
  box-sizing:border-box
}
.wcom-sup-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px
}
.wcom-sup-card {
  background:#fff;
  border:1px solid #dbe4f0;
  border-radius:17px;
  padding:17px;
  box-shadow:0 6px 22px rgba(15,23,42,.04)
}
.wcom-sup-card-head {
  display:flex;
  align-items:center;
  gap:11px
}
.wcom-sup-avatar {
  width:44px;
  height:44px;
  border-radius:13px;
  background:#eff6ff;
  color:#1d4ed8;
  display:grid;
  place-items:center;
  font-size:22px
}
.wcom-sup-title {
  min-width:0;
  flex:1
}
.wcom-sup-title h3 {
  margin:0;
  color:#0f172a;
  font-size:17px
}
.wcom-sup-title span {
  display:block;
  color:#64748b;
  font-size:11px;
  margin-top:4px
}
.wcom-sup-status {
  display:inline-flex;
  align-items:center;
  padding:5px 9px;
  border-radius:999px;
  font-size:10px;
  font-weight:900;
  white-space:nowrap
}
.wcom-sup-status.paid {
  background:#ecfdf5;
  color:#047857
}
.wcom-sup-status.partial {
  background:#fff7ed;
  color:#b45309
}
.wcom-sup-status.due {
  background:#fef2f2;
  color:#b42318
}
.wcom-sup-stats {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:7px;
  margin-top:15px
}
.wcom-sup-stats>div {
  background:#f8fafc;
  border-radius:11px;
  padding:10px 7px;
  text-align:center
}
.wcom-sup-stats span {
  display:block;
  color:#64748b;
  font-size:9px
}
.wcom-sup-stats b {
  display:block;
  color:#0f172a;
  font-size:13px;
  margin-top:5px
}
.wcom-sup-meta {
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin-top:13px;
  padding-top:11px;
  border-top:1px solid #eef2f7;
  color:#94a3b8;
  font-size:10px
}
.wcom-sup-meta b {
  color:#475569
}
.wcom-sup-actions {
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin-top:13px
}
.wcom-sup-actions .wcom-a-btn {
  font-size:11px;
  padding:8px 10px
}
.wcom-sup-modal {
  position:fixed;
  inset:0;
  width:100vw;
  height:100vh;
  background:rgba(15,23,42,.62);
  backdrop-filter:blur(6px);
  z-index:2147483647;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  box-sizing:border-box;
  direction:rtl
}
.wcom-sup-modal-box {
  width:min(1080px,96vw);
  max-height:92vh;
  background:#fff;
  border-radius:20px;
  box-shadow:0 30px 100px rgba(2,6,23,.4);
  overflow:hidden;
  display:flex;
  flex-direction:column
}
.wcom-sup-modal-head {
  padding:18px 20px;
  border-bottom:1px solid #e2e8f0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px
}
.wcom-sup-modal-head>div {
  min-width:0
}
.wcom-sup-modal-head span {
  display:block;
  font-size:11px;
  color:#64748b;
  font-weight:800
}
.wcom-sup-modal-head h2 {
  margin:5px 0 2px;
  color:#0f172a
}
.wcom-sup-modal-head small {
  color:#64748b
}
.wcom-sup-close {
  border:0;
  background:#f1f5f9;
  color:#334155;
  width:40px;
  height:40px;
  border-radius:11px;
  font-size:24px;
  cursor:pointer
}
.wcom-sup-modal-body {
  padding:20px;
  overflow:auto;
  min-height:0;
  background:#f8fafc
}
.wcom-sup-modal-foot {
  padding:14px 20px;
  border-top:1px solid #e2e8f0;
  display:flex;
  justify-content:flex-start;
  gap:8px
}
.wcom-sup-detail-kpis {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:9px;
  margin-bottom:18px
}
.wcom-sup-detail-kpis>div {
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:13px;
  padding:12px
}
.wcom-sup-detail-kpis span {
  display:block;
  color:#64748b;
  font-size:10px
}
.wcom-sup-detail-kpis strong {
  display:block;
  margin-top:6px;
  color:#1e3a8a;
  font-size:17px
}
.wcom-sup-detail-kpis strong.due {
  color:#b42318
}
.wcom-sup-statement-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:5px 0 10px
}
.wcom-sup-statement-head h3 {
  margin:0;
  color:#0f172a
}
.wcom-sup-table-wrap {
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:14px;
  overflow:auto;
  max-height:48vh
}
.wcom-sup-table {
  width:100%;
  min-width:850px;
  border-collapse:collapse
}
.wcom-sup-table th {
  background:#f1f5f9;
  color:#475569;
  font-size:11px;
  padding:10px;
  text-align:right
}
.wcom-sup-table td {
  border-top:1px solid #eef2f7;
  padding:10px;
  font-size:11px;
  color:#334155
}
.wcom-sup-payment-balance {
  display:flex;
  justify-content:space-between;
  align-items:center;
  background:#fff7ed;
  border:1px solid #fed7aa;
  border-radius:14px;
  padding:15px;
  margin-bottom:15px
}
.wcom-sup-payment-balance span {
  color:#9a3412;
  font-size:12px;
  font-weight:800
}
.wcom-sup-payment-balance strong {
  font-size:23px;
  color:#c2410c
}
@media(max-width:1000px) {
  .wcom-sup-grid {
    grid-template-columns:1fr
  }
  .wcom-sup-detail-kpis {
    grid-template-columns:repeat(3,1fr)
  }
}
@media(max-width:750px) {
  .wcom-sup-hero,.wcom-sup-toolbar {
    align-items:stretch;
    flex-direction:column
  }
  .wcom-sup-kpis {
    grid-template-columns:repeat(2,1fr)
  }
  .wcom-sup-stats {
    grid-template-columns:repeat(2,1fr)
  }
  .wcom-sup-meta {
    flex-direction:column
  }
  .wcom-sup-detail-kpis {
    grid-template-columns:repeat(2,1fr)
  }
  .wcom-sup-toolbar input {
    width:100%
  }
}
@media(max-width:430px) {
  .wcom-sup-kpis {
    grid-template-columns:1fr
  }
  .wcom-sup-detail-kpis {
    grid-template-columns:1fr
  }
}
/* Purchases center - 3.2.19 */
.wcom-pur-page {
  display:flex;
  flex-direction:column;
  gap:16px
}
.wcom-pur-hero {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:24px;
  border:1px solid #dbe5f1;
  border-radius:18px;
  background:linear-gradient(135deg,#f8fbff,#fff);
  box-shadow:0 8px 30px rgba(15,23,42,.05)
}
.wcom-pur-hero h2 {
  margin:7px 0 5px;
  font-size:28px
}
.wcom-pur-hero p {
  margin:0;
  color:#64748b
}
.wcom-pur-kpis {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px
}
.wcom-pur-kpi {
  padding:18px;
  border:1px solid #dbe5f1;
  border-radius:16px;
  background:#fff;
  box-shadow:0 6px 22px rgba(15,23,42,.04)
}
.wcom-pur-kpi span,.wcom-pur-kpi small {
  display:block;
  color:#64748b
}
.wcom-pur-kpi strong {
  display:block;
  font-size:23px;
  color:#173f88;
  margin:6px 0
}
.wcom-pur-kpi.danger strong {
  color:#b45309
}
.wcom-pur-kpi.today strong {
  color:#059669
}
.wcom-pur-toolbar-card {
  padding:18px
}
.wcom-pur-toolbar {
  display:grid;
  grid-template-columns:minmax(220px,1.8fr) repeat(3,minmax(150px,1fr)) auto;
  gap:10px;
  margin-bottom:16px
}
.wcom-pur-toolbar input,.wcom-pur-toolbar select {
  min-width:0;
  padding:11px 12px;
  border:1px solid #d5dfec;
  border-radius:10px;
  background:#fff
}
.wcom-pur-table-wrap {
  overflow:auto
}
.wcom-pur-table {
  min-width:1050px
}
.wcom-pur-table td {
  vertical-align:middle
}
.wcom-pur-status {
  display:inline-flex;
  align-items:center;
  padding:5px 9px;
  border-radius:999px;
  font-size:12px;
  font-weight:800
}
.wcom-pur-status.paid {
  background:#dcfce7;
  color:#166534
}
.wcom-pur-status.partial {
  background:#fef3c7;
  color:#92400e
}
.wcom-pur-status.due {
  background:#fee2e2;
  color:#991b1b
}
.wcom-pur-due {
  font-weight:800;
  color:#b91c1c
}
.wcom-pur-by {
  display:block;
  color:#94a3b8;
  font-size:11px;
  margin-top:3px
}
.wcom-pur-form-overlay,.wcom-pur-modal {
  position:fixed;
  inset:0;
  z-index:2147483000;
  background:rgba(15,23,42,.62);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  box-sizing:border-box;
  direction:rtl
}
.wcom-pur-form,.wcom-pur-modal-box {
  width:min(1120px,96vw);
  max-height:94vh;
  overflow:hidden;
  background:#fff;
  border-radius:22px;
  box-shadow:0 30px 100px rgba(2,6,23,.35);
  display:flex;
  flex-direction:column
}
.wcom-pur-form-head,.wcom-pur-modal-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:22px 26px;
  border-bottom:1px solid #e2e8f0;
  background:linear-gradient(135deg,#f8fbff,#fff)
}
.wcom-pur-form-head h2,.wcom-pur-modal-head h2 {
  margin:5px 0;
  font-size:24px
}
.wcom-pur-form-head p {
  margin:0;
  color:#64748b
}
.wcom-pur-form-x,.wcom-pur-x {
  border:0;
  background:#f1f5f9;
  color:#334155;
  width:42px;
  height:42px;
  border-radius:12px;
  font-size:25px;
  cursor:pointer
}
.wcom-pur-form-body,.wcom-pur-detail-body {
  overflow:auto;
  padding:22px 26px
}
.wcom-pur-form-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:13px
}
.wcom-pur-form-grid label,.wcom-pur-notes-field {
  display:flex;
  flex-direction:column;
  gap:6px;
  font-weight:700;
  color:#334155
}
.wcom-pur-form-grid input,.wcom-pur-form-grid select,.wcom-pur-notes-field textarea,.wcom-pur-payment-box input,.wcom-pur-payment-box select {
  padding:11px;
  border:1px solid #d5dfec;
  border-radius:10px;
  background:#fff
}
.wcom-pur-line-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin:22px 0 10px
}
.wcom-pur-line-head h3,.wcom-pur-items h3,.wcom-pur-payments h3,.wcom-pur-payment-box h3 {
  margin:0
}
.wcom-pur-line {
  display:grid;
  grid-template-columns:minmax(260px,2fr) 130px 160px 150px auto;
  gap:10px;
  align-items:end;
  padding:12px;
  border:1px solid #e2e8f0;
  border-radius:14px;
  background:#f8fafc;
  margin-bottom:8px
}
.wcom-pur-line label {
  display:flex;
  flex-direction:column;
  gap:6px;
  color:#475569;
  font-weight:700
}
.wcom-pur-line input,.wcom-pur-line select {
  padding:10px;
  border:1px solid #d5dfec;
  border-radius:9px;
  background:#fff
}
.wpf-line-total {
  padding:10px 12px;
  border-radius:9px;
  background:#fff;
  border:1px solid #e2e8f0
}
.wpf-line-total span {
  display:block;
  font-size:11px;
  color:#64748b
}
.wpf-line-total b {
  font-size:16px
}
.wcom-pur-form-summary {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin-top:14px
}
.wcom-pur-form-summary>div {
  padding:14px;
  border-radius:12px;
  background:#f8fafc;
  border:1px solid #e2e8f0
}
.wcom-pur-form-summary span {
  display:block;
  color:#64748b;
  font-size:12px
}
.wcom-pur-form-summary b {
  display:block;
  margin-top:5px;
  font-size:18px
}
.wcom-pur-form-summary input {
  width:100%;
  box-sizing:border-box;
  margin-top:5px;
  padding:9px;
  border:1px solid #cbd5e1;
  border-radius:9px
}
.wcom-pur-form-summary .due b {
  color:#b91c1c
}
.wcom-pur-payment-note {
  margin:10px 0;
  padding:11px 13px;
  border-radius:10px;
  background:#f8fafc;
  color:#475569
}
.wcom-pur-notes-field {
  margin-top:14px
}
.wcom-pur-notes-field textarea {
  min-height:80px;
  resize:vertical
}
.wcom-pur-form-foot,.wcom-pur-modal-foot {
  display:flex;
  justify-content:flex-start;
  gap:9px;
  padding:15px 26px;
  border-top:1px solid #e2e8f0;
  background:#f8fafc
}
.wcom-pur-detail-top {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin-bottom:20px
}
.wcom-pur-detail-top>div {
  padding:14px;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:#f8fafc
}
.wcom-pur-detail-top span {
  display:block;
  color:#64748b;
  font-size:12px
}
.wcom-pur-detail-top b {
  display:block;
  margin-top:5px
}
.wcom-pur-detail-due {
  color:#b91c1c
}
.wcom-pur-detail-fin {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin:18px 0
}
.wcom-pur-detail-fin>div {
  padding:15px;
  border-radius:12px;
  background:#eff6ff
}
.wcom-pur-detail-fin span {
  display:block;
  color:#64748b
}
.wcom-pur-detail-fin b {
  display:block;
  font-size:20px;
  margin-top:5px
}
.wcom-pur-payment-box {
  margin-top:20px;
  padding:18px;
  border:1px solid #bfdbfe;
  border-radius:15px;
  background:#f8fbff
}
.wcom-pur-payment-box .wcom-a-grid {
  margin-top:12px
}
.wcom-pur-notes {
  margin-top:14px;
  color:#475569;
  white-space:pre-wrap
}
.wcom-pur-modal-box {
  width:min(1120px,96vw)
}
@media(max-width:900px) {
  .wcom-pur-kpis {
    grid-template-columns:repeat(2,1fr)
  }
  .wcom-pur-toolbar {
    grid-template-columns:1fr 1fr
  }
  .wcom-pur-form-grid,.wcom-pur-detail-top {
    grid-template-columns:1fr 1fr
  }
  .wcom-pur-form-summary {
    grid-template-columns:1fr 1fr
  }
  .wcom-pur-line {
    grid-template-columns:1fr 1fr
  }
  .wpf-line-total {
    grid-column:1/2
  }
}
@media(max-width:600px) {
  .wcom-pur-hero {
    align-items:stretch;
    flex-direction:column
  }
  .wcom-pur-kpis,.wcom-pur-toolbar,.wcom-pur-form-grid,.wcom-pur-detail-top,.wcom-pur-form-summary {
    grid-template-columns:1fr
  }
  .wcom-pur-line {
    grid-template-columns:1fr
  }
  .wcom-pur-form,.wcom-pur-modal-box {
    max-height:96vh
  }
  .wcom-pur-form-head,.wcom-pur-modal-head,.wcom-pur-form-body,.wcom-pur-detail-body {
    padding:16px
  }
  .wcom-pur-form-foot,.wcom-pur-modal-foot {
    padding:12px 16px
  }
}
/* WebCom POS — 3.2.20 professional batches & expiry center */
.wcom-batch-page {
  display:flex;
  flex-direction:column;
  gap:16px
}
.wcom-batch-hero {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:24px;
  border:1px solid #dbe5f1;
  border-radius:18px;
  background:linear-gradient(135deg,#f8fbff,#fff);
  box-shadow:0 8px 30px rgba(15,23,42,.05)
}
.wcom-batch-hero h2 {
  margin:7px 0 5px;
  font-size:28px
}
.wcom-batch-hero p {
  margin:0;
  color:#64748b
}
.wcom-batch-kpis {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px
}
.wcom-batch-kpi {
  padding:17px;
  border:1px solid #dbe5f1;
  border-radius:16px;
  background:#fff;
  box-shadow:0 6px 22px rgba(15,23,42,.04)
}
.wcom-batch-kpi span,.wcom-batch-kpi small {
  display:block;
  color:#64748b
}
.wcom-batch-kpi strong {
  display:block;
  font-size:23px;
  color:#173f88;
  margin:6px 0
}
.wcom-batch-kpi.warn strong {
  color:#b45309
}
.wcom-batch-kpi.danger strong {
  color:#b91c1c
}
.wcom-batch-kpi.due strong {
  color:#7c3aed
}
.wcom-batch-toolbar-card {
  padding:16px
}
.wcom-batch-toolbar {
  display:grid;
  grid-template-columns:minmax(260px,2fr) repeat(3,minmax(145px,1fr)) auto;
  gap:10px
}
.wcom-batch-toolbar input,.wcom-batch-toolbar select {
  min-width:0;
  padding:11px 12px;
  border:1px solid #d5dfec;
  border-radius:10px;
  background:#fff
}
.wcom-batch-table-wrap {
  overflow:auto
}
.wcom-batch-table {
  width:100%;
  min-width:1080px;
  border-collapse:collapse
}
.wcom-batch-table th {
  background:#f1f5f9;
  color:#475569;
  font-size:11px;
  padding:11px;
  text-align:right;
  white-space:nowrap
}
.wcom-batch-table td {
  border-top:1px solid #eef2f7;
  padding:11px;
  font-size:12px;
  color:#334155;
  vertical-align:middle
}
.wcom-batch-table td>b {
  display:block;
  color:#0f172a
}
.wcom-batch-table td small {
  display:block;
  color:#64748b;
  font-size:10px;
  margin-top:4px
}
.wcom-batch-status {
  display:inline-flex;
  align-items:center;
  padding:5px 9px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  white-space:nowrap
}
.wcom-batch-status.valid {
  background:#dcfce7;
  color:#166534
}
.wcom-batch-status.expiring {
  background:#fef3c7;
  color:#92400e
}
.wcom-batch-status.expired {
  background:#fee2e2;
  color:#991b1b
}
.wcom-batch-status.depleted {
  background:#e5e7eb;
  color:#475569
}
.wcom-batch-status.no-expiry {
  background:#e0f2fe;
  color:#075985
}
.wcom-batch-status.untracked {
  background:#dbeafe;
  color:#1d4ed8
}
.wcom-batch-kpi.untracked strong {
  color:#1d4ed8
}
.wcom-batch-untracked-note {
  display:inline-flex;
  padding:6px 8px;
  border-radius:9px;
  background:#eff6ff;
  color:#1d4ed8;
  font-size:10px;
  font-weight:800;
  white-space:nowrap
}
.wcom-batch-pay {
  display:inline-flex;
  padding:4px 7px;
  border-radius:999px;
  font-size:10px;
  font-weight:800;
  margin-top:4px
}
.wcom-batch-pay.paid {
  background:#dcfce7;
  color:#166534
}
.wcom-batch-pay.partial {
  background:#fef3c7;
  color:#92400e
}
.wcom-batch-pay.due {
  background:#fee2e2;
  color:#991b1b
}
.wcom-batch-empty {
  text-align:center;
  padding:55px 20px;
  color:#64748b
}
.wcom-batch-empty>div {
  font-size:34px;
  color:#2563eb
}
.wcom-batch-empty h3 {
  margin:8px 0;
  color:#334155
}
.wcom-batch-empty.error {
  color:#991b1b
}
.wcom-batch-modal {
  position:fixed;
  inset:0;
  width:100vw;
  height:100vh;
  background:rgba(15,23,42,.62);
  backdrop-filter:blur(6px);
  z-index:2147483647;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  box-sizing:border-box;
  direction:rtl
}
.wcom-batch-modal-box {
  width:min(1050px,96vw);
  max-height:92vh;
  background:#fff;
  border-radius:20px;
  box-shadow:0 30px 100px rgba(2,6,23,.4);
  overflow:hidden;
  display:flex;
  flex-direction:column
}
.wcom-batch-modal-head {
  padding:19px 22px;
  border-bottom:1px solid #e2e8f0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  background:linear-gradient(135deg,#f8fbff,#fff)
}
.wcom-batch-modal-head span {
  display:block;
  font-size:11px;
  color:#64748b;
  font-weight:800
}
.wcom-batch-modal-head h2 {
  margin:5px 0;
  color:#0f172a
}
.wcom-batch-modal-head small {
  color:#64748b
}
.wcom-batch-close {
  border:0;
  background:#f1f5f9;
  color:#334155;
  width:40px;
  height:40px;
  border-radius:11px;
  font-size:24px;
  cursor:pointer
}
.wcom-batch-modal-body {
  padding:20px;
  overflow:auto;
  background:#f8fafc
}
.wcom-batch-detail-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px
}
.wcom-batch-detail-grid>div {
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:13px;
  padding:13px
}
.wcom-batch-detail-grid span:not(.wcom-batch-status) {
  display:block;
  color:#64748b;
  font-size:11px
}
.wcom-batch-detail-grid b {
  display:block;
  margin-top:6px;
  color:#0f172a
}
.wcom-batch-finance {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin-top:14px
}
.wcom-batch-finance>div {
  padding:15px;
  border-radius:13px;
  background:#eff6ff;
  border:1px solid #dbeafe
}
.wcom-batch-finance span {
  display:block;
  color:#64748b;
  font-size:11px
}
.wcom-batch-finance b {
  display:block;
  font-size:19px;
  margin-top:5px;
  color:#173f88
}
.wcom-batch-history {
  margin-top:14px;
  padding:16px;
  border:1px solid #e2e8f0;
  border-radius:14px;
  background:#fff
}
.wcom-batch-history h3 {
  margin:0 0 9px
}
.wcom-batch-history p {
  margin:7px 0;
  color:#475569
}
.wcom-batch-modal-foot {
  display:flex;
  justify-content:flex-start;
  gap:9px;
  padding:14px 20px;
  border-top:1px solid #e2e8f0;
  background:#fff
}
@media(max-width:1000px) {
  .wcom-batch-kpis {
    grid-template-columns:repeat(3,1fr)
  }
  .wcom-batch-toolbar {
    grid-template-columns:1fr 1fr
  }
  .wcom-batch-detail-grid {
    grid-template-columns:repeat(2,1fr)
  }
}
@media(max-width:650px) {
  .wcom-batch-hero {
    align-items:stretch;
    flex-direction:column
  }
  .wcom-batch-kpis {
    grid-template-columns:1fr 1fr
  }
  .wcom-batch-toolbar {
    grid-template-columns:1fr
  }
  .wcom-batch-detail-grid,.wcom-batch-finance {
    grid-template-columns:1fr
  }
  .wcom-batch-modal-box {
    max-height:96vh
  }
  .wcom-batch-modal-head,.wcom-batch-modal-body,.wcom-batch-modal-foot {
    padding:15px
  }
}
.wcom-cus-page {
  display:grid;
  gap:16px
}
.wcom-cus-hero {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:22px;
  border-radius:20px;
  background:linear-gradient(135deg,#0f244f,#2563df);
  color:#fff
}
.wcom-cus-hero h2 {
  margin:5px 0
}
.wcom-cus-hero p {
  margin:0;
  color:#dbeafe
}
.wcom-cus-kpis {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px
}
.wcom-cus-kpi {
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:16px
}
.wcom-cus-kpi span,.wcom-cus-kpi small {
  display:block;
  color:#64748b;
  font-size:12px
}
.wcom-cus-kpi strong {
  display:block;
  font-size:23px;
  margin:6px 0
}
.wcom-cus-kpi .danger,.wcom-cus-card .danger {
  color:#b91c1c
}
.wcom-cus-kpi .good,.wcom-cus-card .good {
  color:#15803d
}
.wcom-cus-toolbar {
  display:grid;
  grid-template-columns:1.5fr .7fr auto;
  gap:10px
}
.wcom-cus-toolbar input,.wcom-cus-toolbar select {
  width:100%;
  box-sizing:border-box
}
.wcom-cus-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:14px
}
.wcom-cus-card {
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:16px;
  background:#fff
}
.wcom-cus-card-head {
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:flex-start
}
.wcom-cus-card h3 {
  margin:0 0 4px
}
.wcom-cus-card small {
  color:#64748b
}
.wcom-cus-status {
  padding:5px 9px;
  border-radius:999px;
  font-size:11px;
  font-weight:800
}
.wcom-cus-status.due {
  background:#fee2e2;
  color:#991b1b
}
.wcom-cus-status.paid {
  background:#dcfce7;
  color:#166534
}
.wcom-cus-card-stats {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin:15px 0
}
.wcom-cus-card-stats div {
  background:#f8fafc;
  border-radius:11px;
  padding:10px
}
.wcom-cus-card-stats span {
  display:block;
  color:#64748b;
  font-size:11px
}
.wcom-cus-card-stats strong {
  display:block;
  margin-top:4px
}
.wcom-cus-card-actions {
  display:flex;
  gap:8px
}
.wcom-cus-card-actions button {
  flex:1
}
.wcom-cus-empty,.wcom-cus-error {
  padding:30px;
  text-align:center;
  color:#64748b
}
.wcom-cus-error {
  color:#991b1b;
  background:#fff7f7
}
.wcom-cus-form-head,.wcom-cus-ledger-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px
}
.wcom-cus-modal {
  position:fixed;
  inset:0;
  background:rgba(15,23,42,.65);
  z-index:2147483647;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  direction:rtl
}
.wcom-cus-dialog,.wcom-cus-payment {
  width:min(1120px,96vw);
  max-height:92vh;
  background:#fff;
  border-radius:20px;
  box-shadow:0 30px 100px rgba(2,6,23,.35);
  overflow:hidden;
  display:flex;
  flex-direction:column
}
.wcom-cus-payment {
  width:min(520px,94vw)
}
.wcom-cus-dialog-head {
  padding:17px 20px;
  border-bottom:1px solid #e2e8f0;
  display:flex;
  justify-content:space-between;
  align-items:center
}
.wcom-cus-dialog-head span {
  font-size:12px;
  color:#64748b;
  font-weight:700
}
.wcom-cus-dialog-head h2 {
  margin:3px 0
}
.wcom-cus-close {
  border:0;
  background:#f1f5f9;
  border-radius:10px;
  width:40px;
  height:40px;
  font-size:25px;
  cursor:pointer
}
.wcom-cus-dialog-body,.wcom-cus-payment-body {
  padding:18px;
  overflow:auto
}
.wcom-cus-detail-kpis {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin-bottom:18px
}
.wcom-cus-detail-kpis div {
  padding:13px;
  border:1px solid #e2e8f0;
  border-radius:13px;
  background:#f8fafc
}
.wcom-cus-detail-kpis span {
  display:block;
  color:#64748b;
  font-size:12px
}
.wcom-cus-detail-kpis strong {
  display:block;
  font-size:19px;
  margin-top:4px
}
.wcom-cus-ledger-wrap {
  overflow:auto;
  margin-top:10px
}
.wcom-cus-ledger {
  width:100%;
  min-width:900px;
  border-collapse:collapse
}
.wcom-cus-ledger th,.wcom-cus-ledger td {
  padding:10px;
  border-bottom:1px solid #e2e8f0;
  text-align:right;
  white-space:nowrap
}
.wcom-cus-ledger th {
  background:#f8fafc;
  font-size:12px
}
.wcom-cus-payment-due {
  padding:15px;
  background:#fff7ed;
  border:1px solid #fed7aa;
  border-radius:13px;
  margin-bottom:15px
}
.wcom-cus-payment-due strong {
  font-size:22px;
  color:#c2410c;
  display:block;
  margin-top:4px
}
.wcom-cus-payment-body label {
  display:block;
  margin:12px 0;
  font-weight:700
}
.wcom-cus-payment-body input,.wcom-cus-payment-body select,.wcom-cus-payment-body textarea {
  display:block;
  width:100%;
  box-sizing:border-box;
  margin-top:6px
}
.wcom-cus-payment-body textarea {
  min-height:80px
}
@media(max-width:900px) {
  .wcom-cus-kpis,.wcom-cus-detail-kpis {
    grid-template-columns:1fr 1fr
  }
  .wcom-cus-grid {
    grid-template-columns:1fr
  }
  .wcom-cus-toolbar {
    grid-template-columns:1fr
  }
  .wcom-cus-hero {
    flex-direction:column;
    align-items:flex-start
  }
}
/* WebCom POS 3.2.23 — Returns history */
.wcom-return-kpis {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:16px 0
}
.wcom-return-kpis>div {
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:15px 16px
}
.wcom-return-kpis span,.wcom-return-kpis small {
  display:block;
  color:#64748b;
  font-size:12px
}
.wcom-return-kpis strong {
  display:block;
  margin:5px 0;
  font-size:23px;
  color:#0f172a
}
.wcom-return-history-panel {
  margin-top:16px
}
.wcom-return-history-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px
}
.wcom-return-history-head h2 {
  margin:4px 0
}
.wcom-return-table-wrap {
  overflow:auto;
  border:1px solid #e2e8f0;
  border-radius:16px;
  background:#fff
}
.wcom-return-table {
  width:100%;
  border-collapse:collapse;
  min-width:980px
}
.wcom-return-table th,.wcom-return-table td {
  padding:11px 10px;
  border-bottom:1px solid #edf2f7;
  text-align:right;
  vertical-align:middle
}
.wcom-return-table th {
  background:#f8fafc;
  color:#475569;
  font-size:12px
}
.wcom-return-table td small {
  display:block;
  color:#64748b;
  margin-top:3px
}
.wcom-return-status {
  display:inline-flex;
  align-items:center;
  padding:5px 9px;
  border-radius:999px;
  background:#f1f5f9;
  color:#475569;
  font-size:12px;
  font-weight:800
}
.wcom-return-status.completed {
  background:#dcfce7;
  color:#166534
}
.wcom-return-loading,.wcom-return-empty,.wcom-return-error {
  padding:28px;
  text-align:center;
  border:1px dashed #cbd5e1;
  border-radius:16px;
  background:#f8fafc;
  color:#64748b
}
.wcom-return-empty h3 {
  margin:8px 0 4px;
  color:#334155
}
.wcom-return-empty div {
  font-size:30px
}
.wcom-return-error {
  color:#b91c1c;
  background:#fff7f7
}
.wcom-return-modal {
  position:fixed;
  inset:0;
  z-index:2147483647;
  background:rgba(15,23,42,.62);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  direction:rtl
}
.wcom-return-dialog {
  width:min(1050px,96vw);
  max-height:92vh;
  background:#fff;
  border-radius:22px;
  box-shadow:0 30px 100px rgba(2,6,23,.35);
  overflow:hidden;
  display:flex;
  flex-direction:column
}
.wcom-return-dialog-head {
  padding:18px 20px;
  border-bottom:1px solid #e2e8f0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px
}
.wcom-return-dialog-head span {
  font-size:12px;
  color:#64748b;
  font-weight:700
}
.wcom-return-dialog-head h2 {
  margin:3px 0;
  font-size:21px;
  color:#0f172a
}
.wcom-return-dialog-head small {
  color:#64748b
}
.wcom-return-dialog-actions {
  display:flex;
  align-items:center;
  gap:8px
}
.wcom-return-modal-close {
  border:0;
  background:#f1f5f9;
  width:42px;
  height:42px;
  border-radius:12px;
  font-size:25px;
  cursor:pointer;
  color:#334155
}
.wcom-return-dialog-body {
  padding:20px;
  overflow:auto
}
.wcom-return-detail-kpis {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-bottom:16px
}
.wcom-return-detail-kpis>div {
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:15px;
  padding:13px
}
.wcom-return-detail-kpis span {
  display:block;
  color:#64748b;
  font-size:12px
}
.wcom-return-detail-kpis strong {
  display:block;
  margin-top:5px;
  font-size:19px
}
.wcom-return-meta {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-bottom:18px
}
.wcom-return-meta>div {
  padding:12px;
  border:1px solid #e2e8f0;
  border-radius:13px
}
.wcom-return-meta span {
  display:block;
  color:#64748b;
  font-size:11px;
  margin-bottom:4px
}
.wcom-return-items h3 {
  margin:0 0 10px
}
.wcom-return-items .wcom-a-table {
  width:100%
}
@media(max-width:900px) {
  .wcom-return-kpis,.wcom-return-detail-kpis {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .wcom-return-meta {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}
@media(max-width:560px) {
  .wcom-return-kpis,.wcom-return-detail-kpis,.wcom-return-meta {
    grid-template-columns:1fr
  }
  .wcom-return-dialog-head {
    align-items:flex-start
  }
  .wcom-return-dialog-actions {
    flex-wrap:wrap
  }
}
/* WebCom POS 3.2.24 — Expenses center */
.wcom-exp-page {
  display:flex;
  flex-direction:column;
  gap:16px
}
.wcom-exp-hero {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:24px;
  border:1px solid #dbe5f1;
  border-radius:20px;
  background:linear-gradient(135deg,#f8fbff,#fff);
  box-shadow:0 8px 30px rgba(15,23,42,.05)
}
.wcom-exp-hero h2 {
  margin:7px 0 5px;
  font-size:28px;
  color:#12264a
}
.wcom-exp-hero p {
  margin:0;
  color:#64748b
}
.wcom-exp-kpis {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px
}
.wcom-exp-kpi {
  padding:17px;
  border:1px solid #dbe5f1;
  border-radius:16px;
  background:#fff;
  box-shadow:0 6px 22px rgba(15,23,42,.04)
}
.wcom-exp-kpi span,.wcom-exp-kpi small {
  display:block;
  color:#64748b
}
.wcom-exp-kpi strong {
  display:block;
  font-size:22px;
  color:#173f88;
  margin:6px 0
}
.wcom-exp-kpi.cash strong {
  color:#b45309
}
.wcom-exp-kpi.muted strong {
  color:#64748b
}
.wcom-exp-form-card {
  border-color:#bfdbfe;
  background:#f8fbff
}
.wcom-exp-form-head,.wcom-exp-bottom {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px
}
.wcom-exp-form-head h3,.wcom-exp-toolbar h3,.wcom-exp-bottom h3 {
  margin:0 0 4px;
  color:#12264a
}
.wcom-exp-form-head small,.wcom-exp-toolbar small,.wcom-exp-bottom small {
  color:#64748b
}
.wcom-exp-toolbar {
  display:grid;
  grid-template-columns:minmax(240px,1.6fr) 180px 190px auto;
  gap:10px;
  align-items:end;
  margin-bottom:16px
}
.wcom-exp-toolbar>div {
  min-width:0
}
.wcom-exp-toolbar input,.wcom-exp-toolbar select {
  width:100%;
  box-sizing:border-box;
  padding:11px 12px;
  border:1px solid #d5dfec;
  border-radius:10px;
  background:#fff
}
.wcom-exp-table-wrap {
  overflow:auto
}
.wcom-exp-table {
  width:100%;
  min-width:980px;
  border-collapse:collapse
}
.wcom-exp-table th,.wcom-exp-table td {
  padding:12px 10px;
  border-bottom:1px solid #edf2f7;
  text-align:right;
  vertical-align:middle
}
.wcom-exp-table th {
  background:#f7f9fc;
  color:#475569
}
.wcom-exp-table tr.is-voided {
  opacity:.72;
  background:#fffafa
}
.wcom-exp-method {
  display:inline-flex;
  padding:5px 9px;
  border-radius:999px;
  background:#eff6ff;
  color:#1d4ed8;
  font-size:12px;
  font-weight:800
}
.wcom-exp-status {
  display:inline-flex;
  padding:5px 9px;
  border-radius:999px;
  font-size:12px;
  font-weight:800
}
.wcom-exp-status.active {
  background:#dcfce7;
  color:#166534
}
.wcom-exp-status.voided {
  background:#fee2e2;
  color:#991b1b
}
.wcom-exp-reason {
  display:block;
  margin-top:4px;
  color:#991b1b;
  font-size:11px
}
.wcom-exp-categories {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:14px
}
.wcom-exp-cat {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 14px;
  border:1px solid #e2e8f0;
  border-radius:13px;
  background:#f8fafc
}
.wcom-exp-cat b,.wcom-exp-cat small {
  display:block
}
.wcom-exp-cat small {
  color:#64748b;
  margin-top:3px;
  font-size:11px
}
.wcom-exp-cat strong {
  color:#173f88
}
.wcom-exp-loading,.wcom-exp-empty {
  padding:30px;
  text-align:center;
  color:#64748b
}
.wcom-exp-empty.error {
  background:#fee2e2;
  color:#991b1b;
  border-radius:12px
}
.wcom-exp-bottom {
  align-items:flex-start;
  flex-direction:column
}
@media(max-width:1050px) {
  .wcom-exp-kpis {
    grid-template-columns:repeat(3,1fr)
  }
  .wcom-exp-toolbar {
    grid-template-columns:1fr 1fr
  }
  .wcom-exp-categories {
    grid-template-columns:1fr 1fr
  }
}
@media(max-width:650px) {
  .wcom-exp-hero,.wcom-exp-form-head {
    align-items:flex-start;
    flex-direction:column
  }
  .wcom-exp-kpis {
    grid-template-columns:1fr 1fr
  }
  .wcom-exp-toolbar {
    grid-template-columns:1fr
  }
  .wcom-exp-categories {
    grid-template-columns:1fr
  }
}
/* 3.2.26 Treasury & cashier shifts */
.wcom-treasury-page {
  display:flex;
  flex-direction:column;
  gap:16px
}
.wcom-treasury-hero {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:24px;
  border:1px solid #dbe5f1;
  border-radius:22px;
  background:linear-gradient(135deg,#f8fbff,#fff 55%,#f0fdf9);
  box-shadow:0 10px 32px rgba(15,23,42,.06)
}
.wcom-treasury-hero h2 {
  margin:7px 0 5px;
  font-size:28px;
  color:#12264a
}
.wcom-treasury-hero p {
  margin:0;
  color:#64748b;
  line-height:1.7
}
.wcom-treasury-kpis {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px
}
.wcom-treasury-kpis small {
  display:block;
  color:#64748b;
  margin-top:4px
}
.wcom-treasury-toolbar {
  display:grid;
  grid-template-columns:180px 1fr 1fr 220px auto;
  gap:10px;
  align-items:end
}
.wcom-treasury-toolbar select,.wcom-treasury-toolbar input {
  width:100%;
  box-sizing:border-box;
  padding:11px 12px;
  border:1px solid #d5dfec;
  border-radius:11px;
  background:#fff
}
.wcom-treasury-table-wrap {
  overflow:auto
}
.wcom-treasury-table-wrap .wcom-a-table {
  min-width:1180px
}
.wcom-t-status {
  display:inline-flex;
  padding:5px 9px;
  border-radius:999px;
  font-size:12px;
  font-weight:850
}
.wcom-t-status.open {
  background:#dcfce7;
  color:#166534
}
.wcom-t-status.closed {
  background:#e2e8f0;
  color:#475569
}
.wcom-t-positive {
  color:#15803d;
  font-weight:850
}
.wcom-t-negative {
  color:#b91c1c;
  font-weight:850
}
.wcom-treasury-empty {
  padding:34px;
  text-align:center;
  color:#64748b;
  background:#f8fafc;
  border-radius:14px
}
.wcom-treasury-empty.error {
  background:#fef2f2;
  color:#991b1b
}
.wcom-t-detail-head {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:15px;
  margin-bottom:16px
}
.wcom-t-detail-head h3 {
  margin:7px 0 4px;
  color:#12264a
}
.wcom-t-detail-head small {
  color:#64748b
}
.wcom-t-detail-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px
}
.wcom-t-detail-grid>div {
  padding:14px;
  border:1px solid #e2e8f0;
  border-radius:14px;
  background:#f8fafc
}
.wcom-t-detail-grid span {
  display:block;
  color:#64748b;
  font-size:12px
}
.wcom-t-detail-grid b {
  display:block;
  margin-top:5px;
  color:#173f8f;
  font-size:19px
}
.wcom-t-detail-grid .expected {
  background:#eff6ff;
  border-color:#bfdbfe
}
.wcom-t-detail-grid .difference {
  background:#f8fafc
}
.wcom-t-reason {
  margin-top:12px;
  padding:12px 14px;
  border-radius:12px;
  background:#fff7ed;
  color:#9a3412
}
.wcom-t-modal {
  position:fixed;
  inset:0;
  z-index:2147483647;
  background:rgba(15,23,42,.58);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  direction:rtl
}
.wcom-t-modal-card {
  width:min(520px,94vw);
  background:#fff;
  border-radius:22px;
  padding:22px;
  box-shadow:0 30px 100px rgba(2,6,23,.3);
  border:1px solid #e2e8f0
}
.wcom-t-modal-head {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:15px;
  margin-bottom:18px
}
.wcom-t-modal-head h3 {
  margin:7px 0 4px;
  color:#12264a
}
.wcom-t-modal-head small {
  color:#64748b
}
.wcom-t-modal-card label {
  display:block;
  font-weight:800;
  color:#334155;
  margin:12px 0
}
.wcom-t-modal-card input,.wcom-t-modal-card select {
  width:100%;
  box-sizing:border-box;
  margin-top:6px;
  padding:12px;
  border:1px solid #cbd7e6;
  border-radius:11px;
  background:#fff
}
@media(max-width:1050px) {
  .wcom-treasury-kpis {
    grid-template-columns:repeat(3,1fr)
  }
  .wcom-treasury-toolbar {
    grid-template-columns:1fr 1fr
  }
  .wcom-t-detail-grid {
    grid-template-columns:repeat(2,1fr)
  }
}
@media(max-width:650px) {
  .wcom-treasury-hero {
    align-items:flex-start;
    flex-direction:column
  }
  .wcom-treasury-kpis {
    grid-template-columns:1fr 1fr
  }
  .wcom-treasury-toolbar {
    grid-template-columns:1fr
  }
  .wcom-t-detail-grid {
    grid-template-columns:1fr
  }
}
.wcom-tools-hero {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  padding:28px;
  border-radius:20px;
  background:linear-gradient(135deg,#0f2f75,#2563eb);
  color:#fff;
  margin-bottom:18px
}
.wcom-tools-hero h2 {
  color:#fff;
  margin:7px 0;
  font-size:27px
}
.wcom-tools-hero p {
  margin:0;
  color:rgba(255,255,255,.82);
  line-height:1.8
}
.wcom-tools-hero .wcom-a-badge {
  background:rgba(255,255,255,.14);
  color:#fff
}
.wcom-tools-hero-icon {
  font-size:54px;
  background:rgba(255,255,255,.12);
  width:88px;
  height:88px;
  border-radius:24px;
  display:flex;
  align-items:center;
  justify-content:center
}
.wcom-tools-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-bottom:18px
}
.wcom-tool-card {
  background:#fff;
  border:1px solid #dbe5f1;
  border-radius:18px;
  padding:22px;
  box-shadow:0 8px 24px rgba(15,23,42,.05)
}
.wcom-tool-card h3 {
  margin:7px 0;
  font-size:19px
}
.wcom-tool-card p {
  color:#64748b;
  line-height:1.8
}
.wcom-tool-wide {
  grid-column:1/-1
}
.wcom-tool-icon {
  font-size:27px
}
.wcom-tool-form {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  align-items:end
}
.wcom-tool-form label {
  font-weight:700;
  font-size:13px;
  color:#334155
}
.wcom-tool-form input,.wcom-tool-form select {
  display:block;
  width:100%;
  margin-top:6px;
  box-sizing:border-box
}
.wcom-tool-actions {
  display:flex;
  gap:8px;
  flex-wrap:wrap
}
.wcom-tool-card .danger {
  background:#b91c1c
}
.wcom-tool-card input[type=file] {
  display:block;
  width:100%;
  margin:12px 0
}
.wcom-tools-section-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px
}
.wcom-tool-card #fm-tool-backup-msg,.wcom-tool-card #fm-tool-restore-msg,.wcom-tool-card #fm-tool-export-msg {
  margin-top:10px;
  font-size:13px;
  color:#166534
}
@media(max-width:900px) {
  .wcom-tools-grid {
    grid-template-columns:1fr
  }
  .wcom-tool-wide {
    grid-column:auto
  }
  .wcom-tool-form {
    grid-template-columns:1fr 1fr
  }
  .wcom-tools-hero {
    align-items:flex-start
  }
}
@media(max-width:600px) {
  .wcom-tool-form {
    grid-template-columns:1fr
  }
  .wcom-tools-hero-icon {
    display:none
  }
}
/* 3.2.39 — Professional management summary on Statistics center */
.wcom-management-summary {
  margin:0 0 20px;
  padding:22px;
  border:1px solid #d7e2ef;
  border-radius:20px;
  background:#fff;
  box-shadow:0 8px 28px rgba(15,23,42,.06);
  direction:rtl
}
.wcom-management-summary-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
  padding-bottom:14px;
  border-bottom:1px solid #e8eef5
}
.wcom-management-summary-head h3 {
  margin:6px 0 4px;
  font-size:22px;
  color:#132b50
}
.wcom-management-summary-head small {
  display:block;
  color:#64748b;
  font-size:12px;
  line-height:1.8
}
.wcom-management-summary-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px
}
.wcom-management-summary-item {
  min-height:116px;
  padding:16px;
  border:1px solid #e2e8f0;
  border-radius:15px;
  background:#f8fafc;
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-sizing:border-box
}
.wcom-management-summary-item span {
  font-size:13px;
  font-weight:700;
  color:#475569;
  margin-bottom:7px
}
.wcom-management-summary-item strong {
  font-size:25px;
  color:#173f80;
  line-height:1.2;
  direction:ltr;
  text-align:right
}
.wcom-management-summary-item small {
  margin-top:7px;
  color:#64748b;
  font-size:11px;
  line-height:1.55
}
.wcom-management-summary-item.sales {
  background:#f8fbff
}
.wcom-management-summary-item.sales strong {
  color:#1d4ed8
}
.wcom-management-summary-item.receivable {
  background:#fffaf0
}
.wcom-management-summary-item.receivable strong {
  color:#b45309
}
.wcom-management-summary-item.payable {
  background:#fff7f7
}
.wcom-management-summary-item.payable strong {
  color:#b91c1c
}
.wcom-management-summary-item.cash {
  background:#f2fbf7
}
.wcom-management-summary-item.cash strong {
  color:#047857
}
.wcom-management-summary-item.profit-realized {
  background:#f0fdf4
}
.wcom-management-summary-item.profit-realized strong {
  color:#15803d
}
.wcom-management-summary-item.profit-accounting {
  background:#eff6ff
}
.wcom-management-summary-item.profit-accounting strong {
  color:#1e40af
}
.wcom-management-summary-item.cash-flow {
  background:#f8fafc
}
.wcom-management-summary-item.cash-flow strong {
  color:#334155
}
.wcom-management-summary-note {
  margin-top:12px;
  padding:10px 13px;
  border-radius:11px;
  background:#f8fafc;
  color:#64748b;
  font-size:12px;
  line-height:1.7
}
@media(max-width:1000px) {
  .wcom-management-summary-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}
@media(max-width:650px) {
  .wcom-management-summary-grid {
    grid-template-columns:1fr
  }
  .wcom-management-summary {
    padding:15px
  }
  .wcom-management-summary-head h3 {
    font-size:19px
  }
}
/* 3.3.0 Offline-first sync center */
.wpc-offline-status .wpc-sync-pulse {
  display:inline-block;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#16a34a
}
.wpc-sync-list {
  max-height:55vh;
  overflow:auto
}
.wpc-sync-list .wpc-held-row {
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid #eef2f7;
  padding:10px 0
}
.wpc-sync-list .wpc-held-row small {
  display:block;
  color:#64748b;
  margin-top:3px
}
.wpc-sync-list strong {
  white-space:nowrap
}
.wpc-offline-status.offline {
  background:#fff7ed;
  color:#9a3412;
  border-color:#fed7aa
}
.wpc-offline-status.pending {
  background:#eff6ff;
  color:#1d4ed8;
  border-color:#bfdbfe
}
.wcom-manager-offline-status {
  position:sticky;
  top:0;
  z-index:20;
  margin:0 0 12px;
  padding:10px 14px;
  border:1px solid #bfdbfe;
  background:#eff6ff;
  color:#1d4ed8;
  border-radius:10px;
  font-weight:700
}
.wcom-manager-offline-status.err {
  border-color:#fecaca;
  background:#fef2f2;
  color:#b91c1c
}
.wpc-offline-health {
  margin:8px 0;
  padding:8px 12px;
  border:1px solid #bbf7d0;
  background:#f0fdf4;
  color:#166534;
  border-radius:9px;
  font-size:12px;
  font-weight:800
}
.wpc-offline-health.warn {
  border-color:#fed7aa;
  background:#fff7ed;
  color:#9a3412
}
/* WebCom POS 3.8.6 — modern employee & permissions center */
.wcom-emp-hero {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:24px 26px;
  margin-bottom:14px;
  border:1px solid #dbe7f5;
  border-radius:22px;
  background:linear-gradient(135deg,#f8fbff 0%,#eef5ff 52%,#f7f9ff 100%);
  box-shadow:0 10px 30px rgba(15,23,42,.05)
}
.wcom-emp-hero h2 {
  margin:5px 0 7px;
  font-size:26px;
  color:#0f172a
}
.wcom-emp-hero p {
  margin:0;
  color:#64748b;
  line-height:1.8
}
.wcom-emp-eyebrow {
  display:inline-flex;
  padding:5px 10px;
  border-radius:999px;
  background:#e0edff;
  color:#1d4ed8;
  font-size:11px;
  font-weight:900
}
.wcom-emp-hero-icon {
  width:62px;
  height:62px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:18px;
  background:#1d4ed8;
  color:#fff;
  font-size:29px;
  box-shadow:0 12px 24px rgba(37,99,235,.22)
}
.wcom-emp-stats {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-bottom:14px
}
.wcom-emp-stats>div {
  background:#fff;
  border:1px solid #e5eaf1;
  border-radius:17px;
  padding:15px 17px;
  box-shadow:0 8px 25px rgba(15,23,42,.045)
}
.wcom-emp-stats b {
  display:block;
  font-size:25px;
  color:#0f172a
}
.wcom-emp-stats span {
  display:block;
  margin-top:3px;
  color:#64748b;
  font-size:12px
}
.wcom-emp-card-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px
}
.wcom-emp-card-head h3 {
  margin:0 0 5px;
  color:#0f172a
}
.wcom-emp-card-head p {
  margin:0;
  color:#64748b;
  font-size:12px
}
.wcom-emp-secure {
  padding:7px 10px;
  border-radius:999px;
  background:#ecfdf5;
  color:#047857;
  font-size:11px;
  font-weight:900;
  white-space:nowrap
}
.wcom-emp-form-grid {
  grid-template-columns:repeat(3,minmax(0,1fr))
}
.wcom-emp-form-grid label {
  position:relative
}
.wcom-emp-form-grid input,.wcom-emp-form-grid select {
  min-height:42px;
  box-sizing:border-box
}
.wcom-emp-pass {
  position:relative
}
.wcom-emp-pass input {
  padding-left:44px!important
}
.wcom-emp-pass button {
  position:absolute;
  left:7px;
  top:7px;
  width:30px;
  height:30px;
  border:0;
  border-radius:8px;
  background:#f1f5f9;
  color:#64748b;
  cursor:pointer
}
.wcom-emp-create-foot {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  margin-top:16px
}
.wcom-emp-hint {
  color:#64748b;
  font-size:12px
}
.wcom-emp-primary {
  min-width:145px
}
.wcom-emp-list-tools {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap
}
.wcom-emp-list-tools input,.wcom-emp-list-tools select {
  height:40px;
  border:1px solid #d8e0ea;
  border-radius:10px;
  padding:0 11px;
  background:#fff;
  min-width:170px
}
.wcom-emp-list-tools input {
  min-width:260px
}
.wcom-emp-list {
  display:grid;
  gap:10px
}
.wcom-emp-row {
  border:1px solid #e4eaf1;
  border-radius:16px;
  background:#fff;
  overflow:hidden;
  transition:box-shadow .18s,border-color .18s
}
.wcom-emp-row:hover {
  border-color:#cbd8ea;
  box-shadow:0 10px 25px rgba(15,23,42,.05)
}
.wcom-emp-main {
  display:flex;
  align-items:center;
  gap:12px;
  padding:15px 16px 8px
}
.wcom-emp-avatar {
  width:44px;
  height:44px;
  flex:0 0 44px;
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#eff6ff;
  color:#1d4ed8;
  font-weight:900;
  font-size:18px
}
.wcom-emp-identity strong {
  display:block;
  color:#0f172a;
  font-size:14px
}
.wcom-emp-identity span {
  display:inline-block;
  color:#475569;
  font-size:11px;
  margin-top:3px;
  direction:ltr
}
.wcom-emp-identity small {
  display:block;
  color:#94a3b8;
  font-size:10px;
  margin-top:3px
}
.wcom-emp-meta {
  display:flex;
  align-items:center;
  gap:7px;
  padding:0 16px 12px;
  flex-wrap:wrap
}
.wcom-emp-role,.wcom-emp-status,.wcom-emp-warehouse {
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:5px 9px;
  border-radius:999px;
  font-size:10px;
  font-weight:900
}
.wcom-emp-role {
  background:#eef2ff;
  color:#4338ca
}
.wcom-emp-role.wcom_cashier {
  background:#ecfeff;
  color:#0e7490
}
.wcom-emp-role.wcom_manager {
  background:#eff6ff;
  color:#1d4ed8
}
.wcom-emp-role.wcom_warehouse {
  background:#f0fdf4;
  color:#15803d
}
.wcom-emp-role.wcom_accountant {
  background:#fff7ed;
  color:#c2410c
}
.wcom-emp-warehouse {
  background:#f8fafc;
  color:#475569
}
.wcom-emp-status {
  border:0;
  cursor:pointer
}
.wcom-emp-status.on {
  background:#ecfdf5;
  color:#047857
}
.wcom-emp-status.off {
  background:#fef2f2;
  color:#b91c1c
}
.wcom-emp-actions {
  display:grid;
  grid-template-columns:1fr 1fr auto auto;
  gap:8px;
  padding:0 16px 15px
}
.wcom-emp-actions select {
  height:39px;
  border:1px solid #d8e0ea;
  border-radius:10px;
  background:#fff;
  padding:0 10px
}
.wcom-emp-perm-btn {
  border:1px solid #d8e0ea;
  background:#f8fafc;
  color:#334155;
  border-radius:10px;
  padding:0 13px;
  font-weight:800;
  cursor:pointer
}
.wcom-emp-perm-btn.active,.wcom-emp-perm-btn:hover {
  background:#eef4ff;
  border-color:#bfd3f7;
  color:#1d4ed8
}
.wcom-emp-perms {
  display:none;
  border-top:1px solid #edf1f6;
  background:#fbfdff;
  padding:16px
}
.wcom-emp-perms.open {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px
}
.wcom-emp-perm-group {
  border:1px solid #e5eaf1;
  border-radius:13px;
  background:#fff;
  padding:12px
}
.wcom-emp-perm-group h5 {
  margin:0 0 9px;
  color:#334155;
  font-size:12px
}
.wcom-emp-perm-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px
}
.wcom-emp-perm {
  display:flex;
  align-items:center;
  gap:7px;
  min-height:36px;
  padding:6px 8px;
  border:1px solid #e8edf3;
  border-radius:9px;
  background:#f8fafc;
  font-size:11px;
  color:#334155
}
.wcom-emp-perm input {
  margin:0
}
.wcom-emp-perm em {
  margin-right:auto;
  font-style:normal;
  color:#94a3b8;
  font-size:9px
}
.wcom-emp-perm.inherited {
  background:#f1f5f9
}
.wcom-emp-empty {
  text-align:center;
  padding:35px 15px;
  color:#64748b
}
.wcom-emp-empty>div {
  font-size:30px
}
.wcom-emp-empty h3 {
  margin:8px 0 5px;
  color:#334155
}
.wcom-emp-empty p {
  margin:0;
  font-size:12px
}
@media(max-width:900px) {
  .wcom-emp-stats {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .wcom-emp-form-grid {
    grid-template-columns:1fr 1fr
  }
  .wcom-emp-perms.open {
    grid-template-columns:1fr
  }
  .wcom-emp-actions {
    grid-template-columns:1fr 1fr
  }
  .wcom-emp-list-tools input {
    min-width:190px
  }
}
@media(max-width:600px) {
  .wcom-emp-hero {
    padding:18px
  }
  .wcom-emp-hero-icon {
    display:none
  }
  .wcom-emp-stats {
    grid-template-columns:1fr 1fr
  }
  .wcom-emp-form-grid {
    grid-template-columns:1fr
  }
  .wcom-emp-card-head {
    align-items:flex-start;
    flex-direction:column
  }
  .wcom-emp-list-tools {
    width:100%
  }
  .wcom-emp-list-tools input,.wcom-emp-list-tools select,.wcom-emp-list-tools button {
    width:100%;
    min-width:0
  }
  .wcom-emp-actions {
    grid-template-columns:1fr
  }
  .wcom-emp-perm-grid {
    grid-template-columns:1fr
  }
}
/* 3.8.6 — employee warehouse scope selector */
.wcom-emp-warehouse-wrap {
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0
}
.wcom-emp-warehouse-wrap select {
  flex:1
}
.wcom-emp-scope {
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 9px;
  border-radius:999px;
  background:#f5f3ff;
  color:#6d28d9;
  font-size:10px;
  font-weight:900
}
.wcom-emp-scope.all {
  background:#ecfdf5;
  color:#047857
}
.wcom-emp-scope.specific {
  background:#eff6ff;
  color:#1d4ed8
}
.wcom-emp-scope.default {
  background:#f8fafc;
  color:#475569
}
.wcom-cashier-warehouse-switch {
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  border:1px solid rgba(148,163,184,.22);
  background:rgba(255,255,255,.72);
  border-radius:13px;
  box-shadow:0 5px 16px rgba(15,23,42,.04)
}
.wcom-cashier-warehouse-switch span {
  font-size:11px;
  color:#64748b;
  font-weight:800;
  white-space:nowrap
}
.wcom-cashier-warehouse-switch select {
  border:0;
  background:transparent;
  color:#0f172a;
  font-weight:900;
  outline:none;
  min-width:145px
}
@media(max-width:900px) {
  .wcom-cashier-warehouse-switch select {
    min-width:100px
  }
  .wcom-cashier-warehouse-switch {
    width:100%;
    justify-content:space-between
  }
}
.wcom-emp-row-msg {
  display:block;
  width:100%;
  flex-basis:100%;
  margin-top:8px;
  padding:8px 12px;
  border-radius:10px;
  font-size:13px;
  font-weight:600;
  min-height:0
}
.wcom-emp-row-msg:empty {
  display:none
}
.wcom-emp-row-msg.success {
  background:#ecfdf3;
  color:#087443;
  border:1px solid #b7ebcd
}
.wcom-emp-row-msg.error {
  background:#fff1f2;
  color:#b42318;
  border:1px solid #fecdd3
}
.wcom-emp-actions {
  flex-wrap:wrap
}
/* ═══ 06 · Cashier premium UI refresh and header alignment (3.9.3 – 3.9.10) ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Order matters: later files override earlier ones. */

/* WebCom POS 3.9.3 — Professional cashier UI refresh
 * UI-only layer. No API/data/permission behavior is changed here.
 */
.wcom-pro-cashier {
  --cashier-surface:#ffffff;
  --cashier-surface-soft:#f8fafc;
  --cashier-border:#e2e8f0;
  --cashier-ink:#0f172a;
  --cashier-muted:#64748b;
  --cashier-primary-soft:color-mix(in srgb,var(--cashier-primary,#2563eb) 10%,#fff);
  padding:14px!important;
  background:var(--cashier-bg,#f5f7fb)!important;
}
.wcom-pro-cashier .wpc-head {
  display:grid;
  grid-template-columns:minmax(250px,1fr) auto minmax(0,auto);
  gap:14px;
  align-items:center;
  padding:14px 16px!important;
  margin-bottom:16px!important;
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px!important;
  background:linear-gradient(135deg,#0f172a 0%,#172554 55%,var(--cashier-primary,#2563eb) 130%);
  color:#fff;
  box-shadow:0 18px 45px rgba(15,23,42,.16);
}
.wcom-pro-cashier .wpc-store-name {
  font-size:11px;
  font-weight:800;
  letter-spacing:.7px;
  opacity:.78;
  margin-bottom:2px
}
.wcom-pro-cashier .wpc-head h2 {
  font-size:27px!important;
  margin:0!important;
  line-height:1.15;
  color:#fff
}
.wcom-pro-cashier .wpc-session-meta {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:9px
}
.wcom-pro-cashier .wpc-session-meta span {
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:6px 9px;
  border-radius:999px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.09);
  color:#dbeafe;
  font-size:11px
}
.wcom-pro-cashier .wpc-session-meta b {
  color:#fff
}
.wcom-pro-cashier .wcom-cashier-warehouse-switch {
  min-width:240px;
  display:flex;
  align-items:center;
  gap:9px!important;
  padding:8px 10px;
  border-radius:14px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(255,255,255,.25);
  box-shadow:0 8px 25px rgba(0,0,0,.12);
  color:#334155;
}
.wcom-pro-cashier .wcom-cashier-warehouse-switch>span {
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
  color:#64748b
}
.wcom-pro-cashier #wcom-cashier-warehouse-select {
  height:44px!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  color:#0f172a!important;
  font-weight:900;
  font-size:14px;
  outline:0;
  box-shadow:none!important;
  min-width:150px
}
.wcom-pro-cashier .wpc-head-actions {
  display:flex;
  justify-content:flex-end;
  align-items:center;
  flex-wrap:wrap;
  gap:7px
}
.wcom-pro-cashier .wpc-head-actions .wpc-btn {
  height:40px;
  padding:0 12px;
  border-radius:11px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
  box-shadow:none
}
.wcom-pro-cashier .wpc-head-actions .wpc-btn:hover {
  background:rgba(255,255,255,.18);
  transform:translateY(-1px)
}
.wcom-pro-cashier .wpc-head-actions #wpc-new {
  background:#fff;
  color:#0f172a;
  border-color:#fff
}
.wcom-pro-cashier .wpc-head-actions #wpc-new:hover {
  background:#f8fafc
}
.wcom-pro-cashier .wpc-layout {
  grid-template-columns:minmax(0,1fr) 385px!important;
  gap:18px!important
}
.wcom-pro-cashier .wpc-main,.wcom-pro-cashier .wpc-side {
  border:1px solid var(--cashier-border);
  border-radius:18px!important;
  box-shadow:0 10px 35px rgba(15,23,42,.055);
  background:var(--cashier-surface)
}
.wcom-pro-cashier .wpc-main {
  padding:18px!important
}
.wcom-pro-cashier .wpc-side {
  padding:18px!important;
  top:14px
}
.wcom-pro-cashier .wpc-searchbar {
  min-height:58px;
  padding:5px 7px!important;
  border:2px solid #dbe4ee!important;
  border-radius:15px!important;
  box-shadow:0 4px 18px rgba(15,23,42,.04);
  transition:.16s ease;
  background:#fff
}
.wcom-pro-cashier .wpc-searchbar:focus-within {
  border-color:var(--cashier-primary,#2563eb)!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.08)
}
.wcom-pro-cashier .wpc-searchbar input {
  height:48px!important;
  font-size:16px!important;
  font-weight:700
}
.wcom-pro-cashier .wpc-search-leading {
  height:46px!important
}
.wcom-pro-cashier .wpc-search-modes {
  gap:4px!important
}
.wcom-pro-cashier .wpc-search-mode,.wcom-pro-cashier .wpc-search-scan {
  height:40px!important;
  border-radius:10px!important;
  background:#f8fafc!important
}
.wcom-pro-cashier .wpc-search-mode.active {
  background:var(--cashier-primary,#2563eb)!important;
  color:#fff!important
}
.wcom-pro-cashier #wpc-search-btn {
  height:40px!important;
  border-radius:10px!important;
  background:#0f172a!important;
  font-weight:900
}
.wcom-pro-cashier .wpc-results {
  gap:10px!important;
  margin-top:12px
}
.wcom-pro-cashier .wpc-result {
  min-height:76px;
  padding:12px 13px;
  border-radius:14px;
  border:1px solid #e2e8f0;
  background:#fff;
  box-shadow:0 2px 8px rgba(15,23,42,.025);
  transition:.15s ease
}
.wcom-pro-cashier .wpc-result:hover {
  transform:translateY(-2px);
  border-color:#bfd0e5;
  background:#fff;
  box-shadow:0 8px 20px rgba(15,23,42,.07)
}
.wcom-pro-cashier .wpc-product-name {
  font-size:14px;
  font-weight:900;
  color:#0f172a;
  line-height:1.35
}
.wcom-pro-cashier .wpc-product-meta {
  font-size:11px!important;
  color:#64748b!important;
  margin-top:8px!important;
  font-weight:700
}
.wcom-pro-cashier .wpc-quick-products {
  margin-top:22px;
  padding-top:4px
}
.wcom-pro-cashier .wpc-quick-title {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px
}
.wcom-pro-cashier .wpc-quick-title h3 {
  margin:0!important;
  font-size:18px;
  color:#0f172a
}
.wcom-pro-cashier .wpc-quick-title .wpc-link {
  font-weight:900;
  font-size:12px
}
.wcom-pro-cashier .wpc-quick-card {
  min-height:88px!important;
  display:flex;
  flex-direction:column;
  justify-content:center;
  text-align:right
}
.wcom-pro-cashier .wpc-cart-head {
  margin:24px 0 10px;
  padding-top:16px;
  border-top:1px solid #edf2f7
}
.wcom-pro-cashier .wpc-cart-head h3 {
  font-size:20px!important;
  color:#0f172a
}
.wcom-pro-cashier .wpc-cart-head span {
  padding:5px 9px;
  border-radius:999px;
  background:#eff6ff;
  color:#2563eb;
  font-weight:900
}
.wcom-pro-cashier .wpc-cart-wrap {
  min-height:330px;
  border:1px solid #edf2f7;
  border-radius:14px;
  overflow:hidden;
  background:#fff
}
.wcom-pro-cashier .wpc-cart-wrap th {
  background:#f8fafc;
  color:#64748b;
  font-weight:900
}
.wcom-pro-cashier .wpc-empty {
  height:300px;
  flex-direction:column;
  gap:8px;
  font-size:13px;
  background:linear-gradient(#fff,#fbfdff)
}
.wcom-pro-cashier .wpc-empty:before {
  content:'🧾';
  font-size:32px;
  opacity:.55
}
.wcom-pro-cashier .wpc-quick-note {
  padding:14px 15px;
  border-radius:14px;
  background:linear-gradient(135deg,#eff6ff,#f8fafc);
  border:1px solid #dbeafe;
  margin-bottom:15px
}
.wcom-pro-cashier .wpc-quick-note b {
  display:block;
  font-size:16px;
  color:#0f172a;
  margin-bottom:5px
}
.wcom-pro-cashier .wpc-quick-note span {
  display:block;
  color:#64748b;
  font-size:11px;
  line-height:1.7
}
.wcom-pro-cashier .wpc-side label {
  margin:12px 0;
  font-size:12px;
  color:#334155
}
.wcom-pro-cashier .wpc-side select,.wcom-pro-cashier .wpc-side input {
  height:46px!important;
  border-radius:11px!important;
  border-color:#d7e0ea!important;
  background:#fff;
  font-size:13px;
  font-weight:700
}
.wcom-pro-cashier .wpc-side select:focus,.wcom-pro-cashier .wpc-side input:focus {
  border-color:var(--cashier-primary,#2563eb)!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.08);
  outline:0
}
.wcom-pro-cashier .wpc-summary {
  padding:11px 0;
  margin:16px 0;
  border-color:#edf2f7
}
.wcom-pro-cashier .wpc-summary .grand {
  padding:17px 13px;
  background:#f8fafc;
  border:1px solid #edf2f7;
  border-radius:13px
}
.wcom-pro-cashier .wpc-summary .grand strong {
  font-size:34px!important;
  letter-spacing:-1px
}
.wcom-pro-cashier .wpc-change {
  padding:13px;
  border:1px solid #bbf7d0;
  background:#f0fdf4;
  border-radius:13px
}
.wcom-pro-cashier .wpc-change strong {
  font-size:24px
}
.wcom-pro-cashier #wpc-hold {
  height:46px;
  border-radius:11px;
  font-weight:900;
  margin-bottom:9px
}
.wcom-pro-cashier .wpc-pay {
  height:58px!important;
  border-radius:13px!important;
  background:linear-gradient(135deg,#16a34a,#15803d)!important;
  box-shadow:0 10px 22px rgba(22,163,74,.18);
  font-size:17px!important
}
.wcom-pro-cashier .wpc-pay:hover {
  filter:brightness(1.04);
  transform:translateY(-1px)
}
.wcom-pro-cashier .wpc-session-box {
  margin-top:15px;
  padding:13px;
  border:1px solid #e2e8f0;
  border-radius:13px;
  background:#f8fafc
}
.wcom-pro-cashier .wpc-session-box>span {
  color:#64748b;
  font-size:11px
}
.wcom-pro-cashier .wpc-session-box>strong {
  display:block;
  margin-top:4px
}
.wcom-pro-cashier .wpc-message {
  padding:5px 7px;
  border-radius:9px
}
.wcom-pro-cashier .wpc-print-option {
  display:flex!important;
  align-items:center;
  gap:8px;
  padding:9px 11px;
  border:1px solid #e2e8f0;
  border-radius:10px;
  background:#f8fafc
}
.wcom-pro-cashier .wpc-print-option input {
  width:18px!important;
  height:18px!important;
  margin:0!important
}
@media(max-width:1250px) {
  .wcom-pro-cashier .wpc-head {
    grid-template-columns:1fr auto
  }
  .wcom-pro-cashier .wpc-head-actions {
    grid-column:1/-1;
    justify-content:flex-start
  }
  .wcom-pro-cashier .wpc-layout {
    grid-template-columns:minmax(0,1fr) 340px!important
  }
}
@media(max-width:900px) {
  .wcom-pro-cashier .wpc-head {
    grid-template-columns:1fr
  }
  .wcom-pro-cashier .wcom-cashier-warehouse-switch {
    width:100%;
    box-sizing:border-box
  }
  .wcom-pro-cashier .wpc-head-actions {
    grid-column:auto
  }
  .wcom-pro-cashier .wpc-layout {
    grid-template-columns:1fr!important
  }
  .wcom-pro-cashier .wpc-side {
    position:static
  }
  .wcom-pro-cashier .wpc-results {
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
}
@media(max-width:600px) {
  .wcom-pro-cashier {
    padding:7px!important
  }
  .wcom-pro-cashier .wpc-head {
    padding:12px!important;
    border-radius:16px!important
  }
  .wcom-pro-cashier .wpc-head h2 {
    font-size:22px!important
  }
  .wcom-pro-cashier .wpc-head-actions {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%
  }
  .wcom-pro-cashier .wpc-head-actions .wpc-btn {
    width:100%;
    min-height:42px
  }
  .wcom-pro-cashier .wpc-main,.wcom-pro-cashier .wpc-side {
    padding:11px!important;
    border-radius:14px!important
  }
  .wcom-pro-cashier .wpc-results {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important
  }
  .wcom-pro-cashier .wpc-searchbar {
    grid-template-columns:30px minmax(0,1fr)!important
  }
  .wcom-pro-cashier .wpc-search-modes {
    grid-column:1/-1!important;
    justify-content:center!important
  }
  .wcom-pro-cashier .wpc-cart-wrap {
    max-height:44vh;
    overflow:auto
  }
  .wcom-pro-cashier .wpc-summary .grand strong {
    font-size:28px!important
  }
}
/* WebCom POS 3.9.4 — Premium cashier visual layer */
.wcom-pro-cashier {
  --cashier-shadow:0 10px 35px rgba(15,23,42,.07);
  background:linear-gradient(180deg,#eef4ff 0,#f8fafc 22%,#f8fafc 100%)!important;
  padding:10px 14px 24px!important
}
.wcom-pro-cashier .wpc-head {
  position:relative;
  display:grid;
  grid-template-columns:minmax(220px,1fr) auto minmax(420px,1.7fr);
  gap:14px;
  align-items:center;
  padding:14px 18px!important;
  margin-bottom:14px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:22px;
  background:linear-gradient(135deg,#10204a 0%,#1d3d87 58%,#245fe2 100%);
  box-shadow:0 14px 36px rgba(30,64,175,.18);
  color:#fff;
  overflow:hidden
}
.wcom-pro-cashier .wpc-head:after {
  content:"";
  position:absolute;
  inset:auto -90px -120px auto;
  width:300px;
  height:300px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  pointer-events:none
}
.wcom-pro-cashier .wpc-brand {
  position:relative;
  z-index:1
}
.wcom-pro-cashier .wpc-store-name {
  font-size:11px;
  font-weight:700;
  opacity:.72;
  letter-spacing:.4px
}
.wcom-pro-cashier .wpc-head h2 {
  font-size:27px!important;
  margin:2px 0 6px!important;
  color:#fff
}
.wcom-pro-cashier .wpc-session-meta {
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  color:#dbeafe!important
}
.wcom-pro-cashier .wpc-session-meta span {
  color:#dbeafe!important;
  font-size:11px
}
.wcom-pro-cashier .wcom-cashier-warehouse-switch {
  position:relative;
  z-index:2;
  display:flex!important;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  background:rgba(255,255,255,.97);
  border:1px solid rgba(255,255,255,.35);
  border-radius:15px;
  box-shadow:0 7px 18px rgba(15,23,42,.13);
  min-width:235px
}
.wcom-pro-cashier .wcom-cashier-warehouse-switch>span {
  font-size:10px;
  font-weight:800;
  color:#64748b;
  white-space:nowrap
}
.wcom-pro-cashier #wcom-cashier-warehouse-select {
  flex:1;
  min-width:0;
  height:46px;
  border:0!important;
  background:#f1f5f9!important;
  border-radius:11px!important;
  font-weight:800;
  color:#172554!important;
  padding:0 12px!important
}
.wcom-pro-cashier .wpc-head-actions {
  position:relative;
  z-index:2;
  display:flex;
  justify-content:flex-end;
  gap:6px;
  flex-wrap:wrap
}
.wcom-pro-cashier .wpc-head-actions .wpc-btn {
  height:40px;
  padding:0 12px;
  border-radius:11px;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  font-size:11px;
  font-weight:800;
  box-shadow:none
}
.wcom-pro-cashier .wpc-head-actions .wpc-btn:hover {
  background:rgba(255,255,255,.19);
  transform:translateY(-1px)
}
.wcom-pro-cashier .wpc-head-actions #wpc-new {
  background:#fff;
  color:#123276;
  border-color:#fff
}
.wcom-pro-cashier .wpc-head-actions #wpc-account {
  background:rgba(127,29,29,.55);
  border-color:rgba(254,202,202,.3)
}
.wcom-pro-cashier .wpc-layout {
  gap:18px!important
}
.wcom-pro-cashier .wpc-main,.wcom-pro-cashier .wpc-side {
  border:1px solid #dbe4f0!important;
  border-radius:18px!important;
  box-shadow:var(--cashier-shadow)!important
}
.wcom-pro-cashier .wpc-main {
  padding:18px!important
}
.wcom-pro-cashier .wpc-side {
  padding:18px!important;
  background:rgba(255,255,255,.98)
}
.wcom-pro-cashier .wpc-searchbar {
  border:2px solid #dbe5f2!important;
  border-radius:16px!important;
  padding:5px!important;
  box-shadow:0 5px 18px rgba(15,23,42,.04);
  background:#fff
}
.wcom-pro-cashier .wpc-searchbar:focus-within {
  border-color:#4f7df3!important;
  box-shadow:0 0 0 4px rgba(79,125,243,.10)
}
.wcom-pro-cashier .wpc-searchbar input {
  font-size:18px!important;
  font-weight:600
}
.wcom-pro-cashier .wpc-search-modes {
  background:#f8fafc;
  border-radius:11px;
  padding:3px!important
}
.wcom-pro-cashier .wpc-search-mode,.wcom-pro-cashier .wpc-search-scan {
  border:0!important;
  background:transparent!important;
  border-radius:9px!important
}
.wcom-pro-cashier .wpc-search-mode.active {
  box-shadow:0 4px 10px rgba(37,99,235,.2)!important
}
.wcom-pro-cashier .wpc-quick-title {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin:20px 2px 9px
}
.wcom-pro-cashier .wpc-quick-title h3 {
  margin:0;
  font-size:18px
}
.wcom-pro-cashier .wpc-quick-title:before {
  content:"بيع سريع";
  order:2;
  margin-right:auto;
  margin-left:10px;
  font-size:10px;
  font-weight:800;
  color:#2563eb;
  background:#eff6ff;
  border:1px solid #dbeafe;
  border-radius:999px;
  padding:5px 9px
}
.wcom-pro-cashier .wpc-results {
  gap:10px!important
}
.wcom-pro-cashier .wpc-quick-card {
  min-height:104px!important;
  padding:14px!important;
  border:1px solid #dce5f0!important;
  border-radius:15px!important;
  box-shadow:0 4px 12px rgba(15,23,42,.035);
  transition:.16s ease;
  justify-content:space-between!important
}
.wcom-pro-cashier .wpc-quick-card:hover {
  transform:translateY(-2px);
  border-color:#93b4f7!important;
  box-shadow:0 9px 22px rgba(37,99,235,.1);
  background:#fff!important
}
.wpc-product-top {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:7px;
  width:100%
}
.wpc-product-name {
  font-size:14px!important;
  font-weight:900!important;
  line-height:1.45
}
.wpc-product-bottom {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:8px;
  width:100%;
  margin-top:10px
}
.wpc-product-bottom strong {
  font-size:16px;
  color:#172554
}
.wpc-product-bottom strong small {
  font-size:9px;
  font-weight:700
}
.wpc-stock-pill {
  display:inline-flex;
  align-items:center;
  gap:4px;
  white-space:nowrap;
  border-radius:999px;
  padding:4px 7px;
  font-size:9px;
  font-weight:900;
  line-height:1
}
.wpc-stock-pill i {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:15px;
  height:15px;
  border-radius:50%;
  font-style:normal;
  font-size:9px;
  background:currentColor;
  color:#fff
}
.wpc-stock-pill.good {
  color:#15803d;
  background:#ecfdf3;
  border:1px solid #bbf7d0
}
.wpc-stock-pill.good i {
  background:#16a34a
}
.wpc-stock-pill.low {
  color:#b91c1c;
  background:#fef2f2;
  border:1px solid #fecaca
}
.wpc-stock-pill.low i {
  background:#dc2626
}
.wpc-stock-pill.out {
  color:#991b1b;
  background:#fee2e2;
  border:1px solid #fecaca
}
.wpc-stock-pill.out i {
  background:#b91c1c
}
.wpc-stock-pill.untracked {
  color:#475569;
  background:#f1f5f9;
  border:1px solid #e2e8f0
}
.wpc-stock-pill.untracked i {
  background:#64748b
}
.wpc-stock-count {
  font-size:10px!important;
  font-weight:800!important
}
.wpc-stock-count.good {
  color:#15803d!important
}
.wpc-stock-count.low {
  color:#dc2626!important
}
.wpc-stock-count.out {
  color:#b91c1c!important
}
.wpc-stock-count.untracked {
  color:#64748b!important
}
.wcom-pro-cashier .wpc-cart-head {
  margin-top:24px!important;
  padding:10px 2px;
  border-bottom:1px solid #e5edf7
}
.wcom-pro-cashier .wpc-cart-head h3 {
  font-size:19px
}
.wcom-pro-cashier #wpc-cart-count {
  background:#eff6ff;
  color:#2563eb;
  padding:5px 9px;
  border-radius:999px;
  font-weight:900
}
.wcom-pro-cashier .wpc-empty {
  border:2px dashed #e2e8f0;
  border-radius:14px;
  background:#f8fafc;
  height:220px!important
}
.wcom-pro-cashier .wpc-side .wpc-quick-note {
  border:1px solid #dbeafe!important;
  background:linear-gradient(135deg,#eff6ff,#f8fbff)!important;
  border-radius:15px!important;
  padding:14px!important
}
.wcom-pro-cashier .wpc-summary .grand {
  border:1px solid #dbeafe;
  background:linear-gradient(135deg,#eff6ff,#f8fbff)!important
}
.wcom-pro-cashier .wpc-pay {
  box-shadow:0 9px 20px rgba(22,163,74,.18);
  font-size:18px!important
}
@media(max-width:1200px) {
  .wcom-pro-cashier .wpc-head {
    grid-template-columns:1fr auto
  }
  .wcom-pro-cashier .wpc-head-actions {
    grid-column:1/-1;
    justify-content:flex-start
  }
  .wcom-pro-cashier .wcom-cashier-warehouse-switch {
    justify-self:end
  }
  .wcom-pro-cashier .wpc-results {
    grid-template-columns:repeat(3,minmax(0,1fr))!important
  }
}
@media(max-width:700px) {
  .wcom-pro-cashier .wpc-head {
    grid-template-columns:1fr;
    padding:13px!important
  }
  .wcom-pro-cashier .wcom-cashier-warehouse-switch {
    width:100%;
    justify-self:stretch
  }
  .wcom-pro-cashier .wpc-head-actions {
    grid-column:auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%
  }
  .wcom-pro-cashier .wpc-head-actions .wpc-btn {
    width:100%
  }
  .wcom-pro-cashier .wpc-results {
    grid-template-columns:repeat(2,minmax(0,1fr))!important
  }
  .wcom-pro-cashier .wpc-quick-card {
    min-height:96px!important
  }
  .wpc-product-top {
    flex-direction:column
  }
  .wpc-stock-pill {
    align-self:flex-start
  }
}
/* WebCom POS 3.9.5 — cashier context + brand-aligned stock states */
.wcom-pro-cashier .wpc-head {
  grid-template-columns:minmax(220px,1fr) auto minmax(420px,1.7fr)!important
}
.wcom-pro-cashier .wpc-context-group {
  position:relative;
  z-index:2;
  display:flex;
  align-items:stretch;
  gap:8px;
  justify-content:center
}
.wcom-pro-cashier .wpc-context-card {
  height:52px;
  min-width:188px;
  padding:7px 12px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:15px;
  background:rgba(255,255,255,.95);
  color:#172554;
  display:flex;
  align-items:center;
  gap:9px;
  cursor:pointer;
  font-family:inherit;
  text-align:right;
  box-shadow:0 7px 18px rgba(15,23,42,.13);
  transition:.16s ease
}
.wcom-pro-cashier .wpc-context-card:hover {
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(15,23,42,.17)
}
.wcom-pro-cashier .wpc-context-icon {
  width:30px;
  height:30px;
  border-radius:9px;
  display:grid;
  place-items:center;
  background:#eaf1ff;
  color:var(--cashier-primary,#2563eb);
  font-size:17px;
  font-weight:900;
  flex:0 0 auto
}
.wcom-pro-cashier .wpc-context-copy {
  display:flex;
  flex-direction:column;
  gap:2px;
  line-height:1.15
}
.wcom-pro-cashier .wpc-context-copy small {
  font-size:9px;
  color:#64748b;
  font-weight:800
}
.wcom-pro-cashier .wpc-context-copy b {
  font-size:12px;
  color:#172554;
  font-weight:900
}
.wcom-pro-cashier .wpc-context-shift {
  min-width:216px;
  background:rgba(255,255,255,.94)
}
.wcom-pro-cashier .wpc-context-shift.is-open {
  border-color:rgba(147,197,253,.75);
  background:linear-gradient(135deg,#eff6ff,#fff);
}
.wcom-pro-cashier .wpc-context-shift.is-open .wpc-context-icon {
  background:#dbeafe;
  color:#1d4ed8
}
.wcom-pro-cashier .wpc-context-shift.is-closed {
  border-color:rgba(254,202,202,.75)
}
.wcom-pro-cashier .wpc-context-shift.is-closed .wpc-context-icon {
  background:#fef2f2;
  color:#b91c1c
}
.wcom-pro-cashier .wcom-cashier-warehouse-switch {
  min-width:235px!important;
  height:52px;
  box-sizing:border-box;
  padding:7px 10px!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.94)!important
}
.wcom-pro-cashier .wcom-cashier-warehouse-switch>span {
  font-size:10px!important
}
.wcom-pro-cashier #wcom-cashier-warehouse-select {
  height:38px!important;
  font-size:13px!important
}
.wcom-pro-cashier .wpc-stock-pill.good {
  color:#2563eb!important;
  background:#eff6ff!important;
  border-color:#bfdbfe!important
}
.wcom-pro-cashier .wpc-stock-pill.good i {
  background:#2563eb!important
}
.wcom-pro-cashier .wpc-stock-count.good {
  color:#2563eb!important
}
.wcom-pro-cashier .wpc-stock-pill.low {
  color:#b45309!important;
  background:#fff7ed!important;
  border-color:#fed7aa!important
}
.wcom-pro-cashier .wpc-stock-pill.low i {
  background:#d97706!important
}
.wcom-pro-cashier .wpc-stock-count.low {
  color:#b45309!important
}
.wcom-pro-cashier .wpc-stock-pill.out {
  color:#b42318!important;
  background:#fef2f2!important;
  border-color:#fecaca!important
}
.wcom-pro-cashier .wpc-stock-pill.out i {
  background:#dc2626!important
}
.wcom-pro-cashier .wpc-stock-count.out {
  color:#b42318!important
}
.wcom-pro-cashier .wpc-stock-count {
  font-size:10px!important;
  font-weight:900!important
}
@media(max-width:1200px) {
  .wcom-pro-cashier .wpc-head {
    grid-template-columns:1fr auto!important
  }
  .wcom-pro-cashier .wpc-context-group {
    justify-self:end
  }
  .wcom-pro-cashier .wpc-head-actions {
    grid-column:1/-1!important;
    justify-content:flex-start
  }
}
@media(max-width:800px) {
  .wcom-pro-cashier .wpc-context-group {
    width:100%;
    justify-content:stretch
  }
  .wcom-pro-cashier .wpc-context-card,.wcom-pro-cashier .wcom-cashier-warehouse-switch {
    flex:1;
    min-width:0!important
  }
  .wcom-pro-cashier .wcom-cashier-warehouse-switch {
    width:auto!important
  }
  .wcom-pro-cashier .wpc-head-actions {
    grid-column:auto!important
  }
}
@media(max-width:600px) {
  .wcom-pro-cashier .wpc-context-group {
    display:grid;
    grid-template-columns:1fr 1fr
  }
  .wcom-pro-cashier .wpc-context-card,.wcom-pro-cashier .wcom-cashier-warehouse-switch {
    width:100%!important
  }
  .wcom-pro-cashier .wpc-context-card {
    min-width:0!important
  }
  .wcom-pro-cashier .wcom-cashier-warehouse-switch select {
    min-width:0!important
  }
  .wcom-pro-cashier .wpc-head-actions {
    display:grid!important
  }
}
/* WebCom POS 3.9.8 — Premium cashier header buttons (UI only)
 * Restores the original cashier action buttons. No JS/API/HTML behavior changes.
 */
.wcom-pro-cashier .wpc-head {
  grid-template-columns:minmax(235px,1fr) auto minmax(0,1.45fr)!important;
  min-height:88px!important;
  padding:12px 16px!important;
  gap:12px!important;
  border-radius:20px!important;
}
.wcom-pro-cashier .wpc-brand {
  min-width:235px;
  align-self:center
}
.wcom-pro-cashier .wpc-store-name {
  font-size:10px!important;
  letter-spacing:.55px!important;
  opacity:.72!important
}
.wcom-pro-cashier .wpc-head h2 {
  font-size:25px!important;
  margin:0!important;
  line-height:1.12!important
}
.wcom-pro-cashier .wpc-session-meta {
  gap:6px!important;
  margin-top:7px!important
}
.wcom-pro-cashier .wpc-session-meta span {
  padding:5px 8px!important;
  font-size:10px!important;
  background:rgba(255,255,255,.075)!important
}
.wcom-pro-cashier .wpc-context-group {
  display:flex;
  align-items:center;
  gap:8px;
  justify-content:center;
  min-width:0
}
.wcom-pro-cashier .wpc-context-card {
  height:50px!important;
  min-width:205px!important;
  padding:6px 11px!important;
  border-radius:14px!important
}
.wcom-pro-cashier .wcom-cashier-warehouse-switch {
  height:50px!important;
  min-width:225px!important;
  box-sizing:border-box;
  padding:7px 10px!important;
  border-radius:14px!important
}
.wcom-pro-cashier #wcom-cashier-warehouse-select {
  height:36px!important;
  font-size:12px!important;
  min-width:130px!important
}
.wcom-pro-cashier .wpc-head-actions {
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  max-width:100%;
}
.wcom-pro-cashier .wpc-head-actions .wpc-btn {
  position:relative;
  height:39px!important;
  min-width:0!important;
  padding:0 11px!important;
  border-radius:11px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.085)!important;
  color:#f8fbff!important;
  font-size:10.5px!important;
  font-weight:800!important;
  letter-spacing:0!important;
  box-shadow:0 2px 7px rgba(15,23,42,.08)!important;
  transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
.wcom-pro-cashier .wpc-head-actions .wpc-btn:hover {
  transform:translateY(-1px)!important;
  background:rgba(255,255,255,.16)!important;
  border-color:rgba(255,255,255,.30)!important;
  box-shadow:0 6px 14px rgba(15,23,42,.12)!important;
}
.wcom-pro-cashier .wpc-head-actions .wpc-btn:active {
  transform:translateY(0)!important
}
.wcom-pro-cashier .wpc-head-actions #wpc-new {
  order:-1;
  background:#fff!important;
  color:#123276!important;
  border-color:#fff!important;
  min-width:128px!important;
  box-shadow:0 6px 16px rgba(15,23,42,.14)!important;
}
.wcom-pro-cashier .wpc-head-actions #wpc-new:hover {
  background:#f8fbff!important;
  color:#0f2d6d!important
}
.wcom-pro-cashier .wpc-head-actions #wpc-account {
  background:rgba(127,29,29,.48)!important;
  border-color:rgba(254,202,202,.28)!important;
  color:#fff!important;
}
.wcom-pro-cashier .wpc-head-actions #wpc-account:hover {
  background:rgba(153,27,27,.68)!important
}
.wcom-pro-cashier .wpc-head-actions #wpc-held, .wcom-pro-cashier .wpc-head-actions #wpc-sync {
  background:rgba(255,255,255,.12)!important
}
.wcom-pro-cashier .wpc-head-actions b {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:18px;
  height:18px;
  padding:0 4px;
  margin-inline-start:4px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  font-size:9px!important
}
.wcom-pro-cashier .wpc-head-actions #wpc-new b {
  background:#eaf1ff;
  color:#1d4ed8
}
.wcom-pro-cashier .wpc-head-actions kbd {
  font-size:8px!important;
  padding:1px 4px!important;
  margin-inline-start:3px!important;
  border-radius:4px!important;
  background:#eef4ff!important;
  border-color:#d7e3fb!important;
  color:#334155!important
}
@media(max-width:1350px) {
  .wcom-pro-cashier .wpc-head {
    grid-template-columns:minmax(210px,1fr) auto!important
  }
  .wcom-pro-cashier .wpc-context-group {
    justify-self:end
  }
  .wcom-pro-cashier .wpc-head-actions {
    grid-column:1/-1;
    justify-content:flex-start!important;
    padding-top:2px
  }
}
@media(max-width:900px) {
  .wcom-pro-cashier .wpc-head {
    grid-template-columns:1fr!important
  }
  .wcom-pro-cashier .wpc-brand,.wcom-pro-cashier .wpc-context-group,.wcom-pro-cashier .wpc-head-actions {
    grid-column:auto!important;
    justify-self:stretch!important
  }
  .wcom-pro-cashier .wpc-context-group {
    justify-content:stretch
  }
  .wcom-pro-cashier .wpc-context-card,.wcom-pro-cashier .wcom-cashier-warehouse-switch {
    flex:1;
    min-width:0!important
  }
  .wcom-pro-cashier .wpc-head-actions {
    justify-content:flex-start!important
  }
}
@media(max-width:600px) {
  .wcom-pro-cashier .wpc-head-actions {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px!important
  }
  .wcom-pro-cashier .wpc-head-actions .wpc-btn {
    width:100%!important
  }
  .wcom-pro-cashier .wpc-head-actions #wpc-new {
    min-width:0!important
  }
  .wcom-pro-cashier .wpc-context-group {
    display:grid;
    grid-template-columns:1fr 1fr;
    width:100%
  }
}
/* WebCom POS 3.9.9 — cashier context controls refined
 * UI-only: keeps shift/warehouse controls together on the right,
 * aligned with the held-invoices visual language. Stock text is neutral black.
 */
.wcom-pro-cashier .wpc-head {
  position:relative!important;
  grid-template-columns:minmax(210px,1fr) minmax(430px,auto) minmax(225px,auto)!important;
  align-items:center!important;
}
.wcom-pro-cashier .wpc-brand {
  grid-column:3!important;
  justify-self:end!important;
  min-width:225px!important;
}
.wcom-pro-cashier .wpc-context-group {
  grid-column:2!important;
  justify-self:end!important;
  width:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  padding-inline-end:2px!important;
}
/* Same visual family as the pending-invoices buttons. */
.wcom-pro-cashier .wpc-context-card, .wcom-pro-cashier .wcom-cashier-warehouse-switch {
  color:#f8fbff!important;
  background:rgba(255,255,255,.12)!important;
  border:1px solid rgba(255,255,255,.20)!important;
  box-shadow:0 3px 10px rgba(15,23,42,.10)!important;
}
.wcom-pro-cashier .wpc-context-card:hover, .wcom-pro-cashier .wcom-cashier-warehouse-switch:hover {
  background:rgba(255,255,255,.18)!important;
  border-color:rgba(255,255,255,.32)!important;
}
.wcom-pro-cashier .wpc-context-icon {
  background:rgba(255,255,255,.14)!important;
  color:#fff!important;
}
.wcom-pro-cashier .wpc-context-copy small, .wcom-pro-cashier .wpc-context-copy b, .wcom-pro-cashier .wcom-cashier-warehouse-switch>span {
  color:#fff!important;
}
.wcom-pro-cashier #wcom-cashier-warehouse-select {
  color:#fff!important;
  background:transparent!important;
  border-color:rgba(255,255,255,.16)!important;
}
.wcom-pro-cashier #wcom-cashier-warehouse-select option {
  color:#111827;
  background:#fff;
}
/* Stock status/count: keep the state structure, but use neutral black text. */
.wcom-pro-cashier .wpc-stock-pill.good, .wcom-pro-cashier .wpc-stock-pill.low, .wcom-pro-cashier .wpc-stock-pill.out {
  color:#111827!important;
}
.wcom-pro-cashier .wpc-stock-pill.good i {
  background:#111827!important
}
.wcom-pro-cashier .wpc-stock-count.good, .wcom-pro-cashier .wpc-stock-count.low, .wcom-pro-cashier .wpc-stock-count.out, .wcom-pro-cashier .wpc-stock-count {
  color:#111827!important;
}
@media(max-width:1350px) {
  .wcom-pro-cashier .wpc-head {
    grid-template-columns:minmax(0,1fr) minmax(390px,auto)!important;
  }
  .wcom-pro-cashier .wpc-brand {
    grid-column:2!important;
  }
  .wcom-pro-cashier .wpc-context-group {
    grid-column:2!important;
    grid-row:2!important;
    justify-self:end!important;
  }
  .wcom-pro-cashier .wpc-head-actions {
    grid-column:1/-1!important;
    grid-row:3!important;
  }
}
@media(max-width:900px) {
  .wcom-pro-cashier .wpc-head {
    grid-template-columns:1fr!important;
  }
  .wcom-pro-cashier .wpc-brand, .wcom-pro-cashier .wpc-context-group, .wcom-pro-cashier .wpc-head-actions {
    grid-column:1!important;
    grid-row:auto!important;
    justify-self:stretch!important;
  }
  .wcom-pro-cashier .wpc-context-group {
    justify-content:stretch!important;
  }
  .wcom-pro-cashier .wpc-context-card, .wcom-pro-cashier .wcom-cashier-warehouse-switch {
    flex:1!important;
    min-width:0!important;
  }
}
/* WebCom POS 3.9.10 — final cashier header alignment
 * Desktop visual order:
 * Right: POS details/brand
 * Left: warehouse + shift status
 * Keep the existing blue identity and button colors unchanged.
 */
@media(min-width:1351px) {
  .wcom-pro-cashier .wpc-head {
    grid-template-columns:minmax(300px,1fr) minmax(0,1.45fr) minmax(390px,auto)!important;
    align-items:center!important;
  }
  .wcom-pro-cashier .wpc-brand {
    grid-column:1!important;
    justify-self:end!important;
    min-width:300px!important;
    text-align:right!important;
  }
  .wcom-pro-cashier .wpc-head-actions {
    grid-column:2!important;
    justify-self:center!important;
    justify-content:center!important;
    width:100%!important;
  }
  .wcom-pro-cashier .wpc-context-group {
    grid-column:3!important;
    justify-self:start!important;
    justify-content:flex-start!important;
    flex-direction:row!important;
    gap:8px!important;
    width:auto!important;
  }
  .wcom-pro-cashier .wcom-cashier-warehouse-switch {
    order:2!important;
  }
  .wcom-pro-cashier .wpc-context-shift {
    order:1!important;
  }
}
/* At medium widths, keep brand on the right and context controls on the left. */
@media(min-width:901px) and (max-width:1350px) {
  .wcom-pro-cashier .wpc-head {
    grid-template-columns:minmax(390px,auto) minmax(0,1fr)!important;
  }
  .wcom-pro-cashier .wpc-brand {
    grid-column:1!important;
    justify-self:end!important;
    text-align:right!important;
  }
  .wcom-pro-cashier .wpc-context-group {
    grid-column:2!important;
    grid-row:1!important;
    justify-self:start!important;
    justify-content:flex-start!important;
  }
  .wcom-pro-cashier .wpc-head-actions {
    grid-column:1/-1!important;
    grid-row:2!important;
    justify-content:flex-start!important;
  }
}
/* Keep the responsive/mobile behavior intact. */
@media(max-width:900px) {
  .wcom-pro-cashier .wpc-brand {
    text-align:right!important;
  }
}
/* ═══ 07 · Employees surface, unified dashboard and reports (3.9.12 – 3.9.33) ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Order matters: later files override earlier ones. */

/* Employees v3.9.12 — modern, dense but comfortable management UI */
.wcom-emp-create-card,.wcom-emp-list-card {
  border:1px solid #dfe7f2;
  box-shadow:0 14px 38px rgba(15,23,42,.055);
  background:rgba(255,255,255,.98)
}
.wcom-emp-create-card {
  position:relative;
  overflow:hidden
}
.wcom-emp-create-card:before {
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:4px;
  background:linear-gradient(90deg,#1d4ed8,#3b82f6,#60a5fa)
}
.wcom-emp-form-grid {
  gap:14px
}
.wcom-emp-form-grid label {
  font-weight:800;
  color:#334155
}
.wcom-emp-form-grid input,.wcom-emp-form-grid select {
  border-color:#d8e2ee!important;
  border-radius:12px!important;
  background:#fbfdff!important;
  transition:border-color .18s,box-shadow .18s,background .18s
}
.wcom-emp-form-grid input:focus,.wcom-emp-form-grid select:focus {
  background:#fff!important;
  border-color:#7aa2e8!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.08)!important
}
.wcom-emp-list-card .wcom-emp-card-head {
  padding-bottom:14px;
  border-bottom:1px solid #edf1f6
}
.wcom-emp-list {
  gap:14px
}
.wcom-emp-row {
  border-color:#dfe6ef;
  border-radius:18px;
  box-shadow:0 7px 22px rgba(15,23,42,.035)
}
.wcom-emp-row:hover {
  border-color:#bfd0e7;
  box-shadow:0 14px 32px rgba(15,23,42,.075);
  transform:translateY(-1px)
}
.wcom-emp-main {
  padding:17px 18px 10px
}
.wcom-emp-avatar {
  width:48px;
  height:48px;
  flex-basis:48px;
  border-radius:15px;
  background:linear-gradient(145deg,#eef4ff,#e6efff);
  border:1px solid #d6e3f6;
  color:#1d4ed8;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8)
}
.wcom-emp-identity strong {
  font-size:15px
}
.wcom-emp-identity span {
  font-size:11px
}
.wcom-emp-meta {
  padding:0 18px 14px
}
.wcom-emp-status {
  padding:6px 11px;
  min-width:82px;
  justify-content:center
}
.wcom-emp-status.on {
  background:#effaf4;
  color:#087443;
  border:1px solid #c8ecd8
}
.wcom-emp-status.off {
  background:#fff5f5;
  color:#b42318;
  border:1px solid #f4c7cc
}
.wcom-emp-actions {
  grid-template-columns:minmax(150px,.7fr) minmax(250px,1.35fr) auto auto auto;
  align-items:center;
  padding:13px 18px 17px;
  border-top:1px solid #f0f3f7;
  background:#fbfcfe
}
.wcom-emp-actions select {
  height:41px!important;
  border-color:#d7e0eb!important;
  border-radius:11px!important
}
.wcom-emp-warehouse-wrap {
  min-width:0
}
.wcom-emp-warehouse-wrap select {
  min-width:0
}
.wcom-emp-no-warehouse {
  height:41px;
  display:flex;
  align-items:center;
  padding:0 12px;
  border:1px dashed #d8e0ea;
  border-radius:11px;
  color:#94a3b8;
  background:#f8fafc;
  font-size:11px;
  font-weight:700
}
.wcom-emp-perm-btn,.wcom-emp-actions .wcom-a-btn {
  height:41px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  border-radius:11px!important
}
.wcom-emp-actions .danger {
  min-width:100px
}
.wcom-emp-perms {
  background:#f8fbff;
  border-top:1px solid #e4ebf3;
  padding:17px 18px
}
.wcom-emp-perms.open {
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px
}
.wcom-emp-perm-group {
  border-color:#e0e8f2;
  box-shadow:0 4px 14px rgba(15,23,42,.025)
}
.wcom-emp-perm {
  background:#fff;
  min-height:38px
}
.wcom-emp-perm.inherited {
  background:#f1f5fb;
  border-color:#dce5f0
}
.wcom-emp-row-msg {
  margin-top:10px;
  background:#fff
}
.wcom-emp-scope.all {
  background:#eef9f3;
  color:#087443
}
.wcom-emp-scope.specific {
  background:#eef4ff;
  color:#1d4ed8
}
.wcom-emp-scope.default {
  background:#f4f6f8;
  color:#475569
}
@media(max-width:1150px) {
  .wcom-emp-actions {
    grid-template-columns:1fr 1fr
  }
  .wcom-emp-warehouse-wrap {
    grid-column:span 2
  }
  .wcom-emp-perms.open {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}
@media(max-width:700px) {
  .wcom-emp-perms.open {
    grid-template-columns:1fr
  }
  .wcom-emp-actions {
    grid-template-columns:1fr
  }
  .wcom-emp-warehouse-wrap {
    grid-column:auto
  }
  .wcom-emp-no-warehouse {
    width:100%;
    box-sizing:border-box
  }
}
/* Employees 3.9.13 — refined management surface */
.wcom-emp-hero {
  background:linear-gradient(135deg,#0f172a,#1e3a8a 62%,#2563eb);
  color:#fff;
  border-radius:22px;
  padding:24px 26px;
  box-shadow:0 18px 45px rgba(15,23,42,.12);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px
}
.wcom-emp-hero h2 {
  margin:5px 0 7px;
  font-size:25px
}
.wcom-emp-hero p {
  margin:0;
  color:rgba(255,255,255,.78);
  max-width:760px
}
.wcom-emp-eyebrow {
  font-size:11px;
  font-weight:900;
  letter-spacing:.06em;
  color:#bfdbfe
}
.wcom-emp-hero-icon {
  width:58px;
  height:58px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.10);
  border-radius:18px;
  display:grid;
  place-items:center;
  font-size:28px
}
.wcom-emp-stats {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:14px 0
}
.wcom-emp-stats>div {
  background:#fff;
  border:1px solid #e4eaf2;
  border-radius:16px;
  padding:14px 16px;
  box-shadow:0 7px 22px rgba(15,23,42,.045)
}
.wcom-emp-stats b {
  display:block;
  font-size:23px;
  color:#0f172a
}
.wcom-emp-stats span {
  display:block;
  margin-top:3px;
  color:#64748b;
  font-size:11px;
  font-weight:800
}
.wcom-emp-list-tools {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap
}
.wcom-emp-list-tools input {
  min-width:250px;
  flex:1;
  border:1px solid #d8e2ee;
  border-radius:11px;
  padding:10px 12px;
  background:#fbfdff
}
.wcom-emp-list-tools select {
  border:1px solid #d8e2ee;
  border-radius:11px;
  padding:10px 12px;
  background:#fff
}
.wcom-emp-secure {
  white-space:nowrap;
  background:#eff6ff;
  color:#1d4ed8;
  border:1px solid #dbeafe;
  border-radius:999px;
  padding:7px 11px;
  font-size:11px;
  font-weight:900
}
.wcom-emp-create-foot {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:15px
}
.wcom-emp-hint {
  color:#64748b;
  font-size:11px;
  line-height:1.7
}
.wcom-emp-row {
  overflow:hidden
}
.wcom-emp-row[aria-busy=true] {
  opacity:.7;
  pointer-events:none
}
.wcom-emp-row-msg {
  grid-column:1/-1;
  padding:9px 11px;
  border-radius:10px;
  font-size:12px;
  font-weight:800;
  color:#166534;
  background:#ecfdf5;
  border:1px solid #bbf7d0
}
.wcom-emp-row-msg:empty {
  display:none
}
.wcom-emp-perm-btn.active {
  background:#eff6ff!important;
  color:#1d4ed8!important;
  border-color:#bfdbfe!important
}
.wcom-emp-actions {
  display:grid!important
}
.wcom-emp-actions .wcom-emp-role-select {
  font-weight:800
}
.wcom-emp-actions .fm-u-save {
  background:#2563eb
}
.wcom-emp-actions .fm-u-delete {
  background:#fff1f2!important;
  color:#b42318!important;
  border:1px solid #fecdd3!important
}
.wcom-emp-actions .fm-u-delete:hover {
  background:#ffe4e6!important
}
.wcom-emp-empty {
  border:1px dashed #cbd5e1;
  border-radius:16px;
  padding:34px;
  text-align:center;
  background:#f8fafc;
  color:#64748b
}
.wcom-emp-empty div {
  font-size:30px;
  margin-bottom:7px
}
.wcom-emp-empty h3 {
  margin:0 0 5px;
  color:#334155
}
.wcom-emp-empty p {
  margin:0;
  font-size:12px
}
@media(max-width:900px) {
  .wcom-emp-stats {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .wcom-emp-hero {
    padding:20px
  }
  .wcom-emp-create-foot {
    align-items:stretch;
    flex-direction:column
  }
}
@media(max-width:560px) {
  .wcom-emp-stats {
    grid-template-columns:1fr
  }
  .wcom-emp-list-tools input {
    min-width:100%
  }
  .wcom-emp-list-tools select,.wcom-emp-list-tools button {
    flex:1
  }
  .wcom-emp-hero-icon {
    display:none
  }
}
/* Dashboard 3.9.18 — unified accounting + professional management surface */
.wcom-dashboard-pro {
  max-width:1520px;
  margin:0 auto;
  padding-bottom:30px
}
.wcom-dash-hero {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:28px;
  padding:30px 34px;
  border-radius:24px;
  background:linear-gradient(135deg,#071936,#1f57cf);
  color:#fff;
  box-shadow:0 18px 45px rgba(15,23,42,.16);
  margin:18px 0 18px
}
.wcom-dash-eyebrow {
  display:inline-flex;
  padding:6px 10px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  font-size:12px
}
.wcom-dash-hero h1 {
  font-size:32px;
  margin:10px 0 8px;
  color:#fff
}
.wcom-dash-hero p {
  margin:0;
  color:rgba(255,255,255,.78);
  max-width:720px;
  line-height:1.8
}
.wcom-dash-meta {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:16px
}
.wcom-dash-meta span {
  background:rgba(255,255,255,.1);
  padding:7px 10px;
  border-radius:9px;
  font-size:12px
}
.wcom-dash-hero-actions {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:flex-end;
  max-width:420px
}
.wcom-dash-hero-actions a {
  text-decoration:none;
  border-radius:11px;
  padding:11px 15px;
  font-weight:800;
  white-space:nowrap
}
.wcom-dash-primary {
  background:#10b981;
  color:#fff
}
.wcom-dash-light {
  background:rgba(255,255,255,.11);
  color:#fff;
  border:1px solid rgba(255,255,255,.2)
}
.wcom-dash-kpi-grid {
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:12px
}
.wcom-dash-kpi {
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:17px;
  padding:18px;
  box-shadow:0 7px 24px rgba(15,23,42,.045);
  min-width:0
}
.wcom-dash-kpi span {
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:700
}
.wcom-dash-kpi strong {
  display:block;
  font-size:25px;
  line-height:1.2;
  margin:9px 0 8px;
  color:#0f172a
}
.wcom-dash-kpi small {
  display:block;
  color:#94a3b8;
  line-height:1.5
}
.wcom-dash-kpi.accent {
  background:#f7fbff;
  border-color:#bfdbfe
}
.wcom-dash-kpi.accent strong {
  color:#1d4ed8
}
.wcom-dash-kpi.good strong {
  color:#059669
}
.wcom-dash-kpi.danger {
  background:#fff7f7;
  border-color:#fecaca
}
.wcom-dash-kpi.danger strong {
  color:#dc2626
}
.wcom-dash-kpi.neutral strong {
  color:#475569
}
.wcom-dash-main-grid {
  display:grid;
  grid-template-columns:minmax(0,1.8fr) minmax(330px,.9fr);
  gap:16px;
  margin-top:16px
}
.wcom-dash-performance,.wcom-dash-health {
  margin-top:0
}
.wcom-dashboard-pro .wcom-dashboard-panel {
  border-radius:18px;
  padding:21px;
  box-shadow:0 7px 24px rgba(15,23,42,.045)
}
.wcom-dashboard-pro .wcom-dashboard-section-title {
  margin-bottom:18px
}
.wcom-dashboard-section-title h2 {
  font-size:18px
}
.wcom-dashboard-section-title a {
  font-size:12px;
  text-decoration:none;
  color:#2563eb;
  font-weight:800
}
.wcom-dash-chart {
  height:235px;
  display:grid;
  grid-template-columns:repeat(7,1fr);
  align-items:end;
  gap:13px;
  padding:18px 10px 0;
  border-top:1px solid #eef2f7;
  border-bottom:1px solid #eef2f7
}
.wcom-dash-trend-day {
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  min-width:0
}
.wcom-dash-trend-bars {
  height:185px;
  width:100%;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:4px;
  border-bottom:1px solid #e5e7eb
}
.wcom-dash-trend-bars span {
  width:18px;
  max-width:34%;
  border-radius:6px 6px 0 0;
  display:block;
  transition:.2s
}
.wcom-dash-trend-bars .sales {
  background:#2563eb
}
.wcom-dash-trend-bars .profit {
  background:#10b981
}
.wcom-dash-trend-day>b {
  font-size:11px;
  margin-top:8px;
  color:#334155
}
.wcom-dash-trend-day>small {
  font-size:10px;
  color:#94a3b8;
  margin-top:3px
}
.wcom-dash-legend {
  display:flex;
  gap:18px;
  margin-top:13px;
  color:#64748b;
  font-size:11px
}
.wcom-dash-legend i {
  width:9px;
  height:9px;
  display:inline-block;
  border-radius:50%;
  margin-left:4px
}
.wcom-dash-legend .sales {
  background:#2563eb
}
.wcom-dash-legend .profit {
  background:#10b981
}
.wcom-dash-health-list {
  display:grid;
  gap:2px
}
.wcom-dash-health-list>div {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:13px 0;
  border-bottom:1px solid #f1f5f9
}
.wcom-dash-health-list>div:last-child {
  border-bottom:0
}
.wcom-dash-health-list span {
  color:#64748b;
  font-size:12px
}
.wcom-dash-health-list b {
  font-size:15px;
  color:#0f172a
}
.wcom-dash-health-list b.warn {
  color:#d97706
}
.wcom-dash-health-list b.ok {
  color:#059669
}
.wcom-quick-actions-pro {
  grid-template-columns:repeat(8,1fr)
}
.wcom-quick-actions-pro a {
  min-height:105px;
  justify-content:center;
  border-radius:14px
}
.wcom-dash-note {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  background:linear-gradient(90deg,#f8fafc,#fff)
}
.wcom-dash-note strong {
  font-size:14px
}
.wcom-dash-note p {
  margin:6px 0 0;
  color:#64748b;
  font-size:12px;
  line-height:1.8
}
.wcom-dash-note-actions a {
  display:inline-flex;
  text-decoration:none;
  background:#eff6ff;
  color:#1d4ed8;
  padding:9px 13px;
  border-radius:10px;
  font-size:12px;
  font-weight:800;
  white-space:nowrap
}
@media(max-width:1250px) {
  .wcom-dash-kpi-grid {
    grid-template-columns:repeat(3,1fr)
  }
  .wcom-quick-actions-pro {
    grid-template-columns:repeat(4,1fr)
  }
}
@media(max-width:900px) {
  .wcom-dash-hero {
    flex-direction:column;
    align-items:flex-start
  }
  .wcom-dash-hero-actions {
    justify-content:flex-start;
    max-width:none
  }
  .wcom-dash-main-grid {
    grid-template-columns:1fr
  }
  .wcom-dash-kpi-grid {
    grid-template-columns:repeat(2,1fr)
  }
}
@media(max-width:600px) {
  .wcom-dash-kpi-grid {
    grid-template-columns:1fr
  }
  .wcom-quick-actions-pro {
    grid-template-columns:repeat(2,1fr)
  }
  .wcom-dash-note {
    align-items:flex-start;
    flex-direction:column
  }
  .wcom-dash-chart {
    gap:5px
  }
  .wcom-dash-trend-bars span {
    width:12px
  }
}
/* Dashboard 3.9.19 — unified report engine + management surface */
.wcom-dash-periodbar {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  background:#fff;
  border:1px solid #dbe5f0;
  border-radius:16px;
  padding:13px 16px;
  margin:0 0 14px;
  box-shadow:0 6px 20px rgba(15,23,42,.04)
}
.wcom-dash-periodbar>div {
  display:flex;
  flex-direction:column;
  gap:3px
}
.wcom-dash-periodbar strong {
  font-size:13px;
  color:#0f172a
}
.wcom-dash-periodbar small {
  color:#64748b;
  font-size:11px
}
.wcom-dash-periodbar nav {
  display:flex;
  gap:6px;
  flex-wrap:wrap
}
.wcom-dash-periodbar nav a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 14px;
  border-radius:10px;
  text-decoration:none;
  color:#475569;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  font-weight:800;
  font-size:12px
}
.wcom-dash-periodbar nav a:hover {
  border-color:#93c5fd;
  background:#eff6ff
}
.wcom-dash-periodbar nav a.active {
  background:#1d4ed8;
  color:#fff;
  border-color:#1d4ed8;
  box-shadow:0 5px 14px rgba(29,78,216,.18)
}
.wcom-dash-secondary-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin:12px 0
}
.wcom-dash-mini {
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:15px;
  padding:16px;
  box-shadow:0 6px 20px rgba(15,23,42,.035)
}
.wcom-dash-mini span,.wcom-dash-mini small {
  display:block;
  color:#64748b;
  font-size:11px
}
.wcom-dash-mini strong {
  display:block;
  margin:7px 0;
  font-size:21px;
  color:#0f172a
}
.wcom-dash-mini.good strong {
  color:#15803d
}
.wcom-dash-mini.danger strong {
  color:#b91c1c
}
.wcom-dash-mini small {
  color:#94a3b8
}
.wcom-dash-empty {
  height:220px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#64748b;
  background:#f8fafc;
  border:1px dashed #cbd5e1;
  border-radius:12px
}
.wcom-dash-kpi.accent strong {
  color:#1d4ed8
}
.wcom-dash-kpi.good {
  background:#f0fdf4;
  border-color:#bbf7d0
}
.wcom-dash-kpi.good strong {
  color:#15803d
}
.wcom-dash-kpi.danger {
  background:#fff7f7;
  border-color:#fecaca
}
.wcom-dash-kpi.danger strong {
  color:#b91c1c
}
.wcom-dash-kpi.neutral {
  background:#f8fafc
}
.wcom-dash-kpi.neutral strong {
  color:#475569
}
@media(max-width:1100px) {
  .wcom-dash-secondary-grid {
    grid-template-columns:repeat(2,1fr)
  }
  .wcom-dash-periodbar {
    align-items:flex-start;
    flex-direction:column
  }
}
@media(max-width:600px) {
  .wcom-dash-secondary-grid {
    grid-template-columns:1fr
  }
  .wcom-dash-periodbar nav {
    width:100%
  }
  .wcom-dash-periodbar nav a {
    flex:1
  }
  .wcom-dash-hero {
    padding:22px
  }
  .wcom-dash-hero h1 {
    font-size:26px
  }
}
/* Manager Overview 3.9.20 — unified accounting dashboard */
.wcom-dash-periodbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:0 0 16px;
  padding:14px 16px;
  background:#fff;
  border:1px solid #dfe7f1;
  border-radius:16px;
  box-shadow:0 7px 24px rgba(15,23,42,.045)
}
.wcom-dash-periodbar>div {
  display:flex;
  flex-direction:column;
  gap:3px
}
.wcom-dash-periodbar strong {
  color:#12264a
}
.wcom-dash-periodbar small {
  color:#64748b
}
.wcom-dash-periodbar nav {
  display:flex;
  gap:6px;
  flex-wrap:wrap
}
.wcom-dash-periodbar button {
  border:1px solid #dbe4f0;
  background:#f8fafc;
  color:#334155;
  border-radius:10px;
  padding:8px 12px;
  font:inherit;
  font-size:12px;
  font-weight:800;
  cursor:pointer
}
.wcom-dash-periodbar button.active {
  background:#2563eb;
  border-color:#2563eb;
  color:#fff
}
.wcom-dash-secondary-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:16px
}
.wcom-dash-mini {
  background:#fff;
  border:1px solid #dfe7f1;
  border-radius:17px;
  padding:16px;
  box-shadow:0 7px 24px rgba(15,23,42,.045)
}
.wcom-dash-mini span {
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:700
}
.wcom-dash-mini strong {
  display:block;
  margin-top:8px;
  font-size:21px;
  color:#173f8f
}
.wcom-dash-mini small {
  display:block;
  margin-top:4px;
  color:#94a3b8
}
.wcom-dash-mini.good strong {
  color:#059669
}
.wcom-dash-mini.danger strong {
  color:#dc2626
}
.wcom-dash-empty {
  display:flex;
  align-items:center;
  justify-content:center;
  height:100%;
  color:#94a3b8
}
.wcom-manager-dashboard .wcom-dash-hero h2 {
  color:#fff
}
.wcom-manager-dashboard .wcom-dash-hero p {
  max-width:800px
}
.wcom-manager-dashboard .wcom-dash-main-grid {
  align-items:stretch
}
.wcom-manager-dashboard .wcom-quick-actions-pro a {
  cursor:pointer
}
@media(max-width:900px) {
  .wcom-dash-secondary-grid {
    grid-template-columns:1fr 1fr
  }
  .wcom-dash-periodbar {
    align-items:flex-start;
    flex-direction:column
  }
}
@media(max-width:600px) {
  .wcom-dash-secondary-grid {
    grid-template-columns:1fr
  }
  .wcom-dash-periodbar nav {
    width:100%
  }
  .wcom-dash-periodbar button {
    flex:1
  }
}
/* 3.9.33: financial dashboard home uses the GL as source of truth and a full-width performance chart. */
.wcom-manager-dashboard .wcom-dash-main-grid {
  grid-template-columns:1fr!important
}
/* ═══ 08 · Cashier checkout UX, terminal layout, overflow contract, mobile contract (3.9.34 – 3.9.76) ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Order matters: later files override earlier ones. */

/* 3.9.34 cashier UX: guided discount, return amount guard and scan feedback */
.wcom-pro-cashier .wpc-discount-control {
  display:block!important;
  padding:8px 0!important
}
.wcom-pro-cashier .wpc-discount-check {
  display:flex;
  align-items:center;
  gap:9px;
  cursor:pointer;
  font-weight:900;
  color:#0f172a!important;
  margin:0!important
}
.wcom-pro-cashier .wpc-discount-check input {
  position:absolute;
  opacity:0;
  pointer-events:none
}
.wcom-pro-cashier .wpc-checkmark {
  width:25px;
  height:25px;
  border:2px solid #cbd5e1;
  border-radius:7px;
  display:grid;
  place-items:center;
  color:transparent;
  background:#fff;
  font-weight:1000;
  font-size:17px;
  transition:.15s
}
.wcom-pro-cashier .wpc-discount-check input:checked + .wpc-checkmark {
  background:#16a34a;
  border-color:#16a34a;
  color:#fff;
  box-shadow:0 3px 10px rgba(22,163,74,.2)
}
.wcom-pro-cashier .wpc-discount-check input:disabled + .wpc-checkmark {
  opacity:.45;
  cursor:not-allowed
}
.wcom-pro-cashier #wpc-discount-fields {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
  margin-top:8px;
  padding:9px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:10px
}
.wcom-pro-cashier #wpc-discount-fields input,.wcom-pro-cashier #wpc-discount-fields select {
  width:100%;
  height:38px;
  border:1px solid #cbd5e1;
  border-radius:8px;
  padding:0 8px;
  box-sizing:border-box;
  font-family:inherit
}
.wcom-pro-cashier #wpc-discount-note {
  grid-column:1/-1
}
.wcom-pro-cashier .wpc-return-expected {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin:8px 0;
  padding:11px 12px;
  border:1px solid #bfdbfe;
  background:#eff6ff;
  border-radius:10px;
  color:#1e3a8a;
  font-weight:800
}
.wcom-pro-cashier .wpc-return-payment-summary {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin:8px 0;
  padding:10px 12px;
  border:1px solid #e2e8f0;
  background:#f8fafc;
  border-radius:10px;
  color:#334155;
  font-weight:700
}
.wcom-pro-cashier .wpc-return-warning {
  margin:8px 0;
  padding:10px 12px;
  border-radius:10px;
  background:#f8fafc;
  color:#475569;
  font-weight:700;
  font-size:12px
}
.wcom-pro-cashier .wpc-return-warning.is-ok {
  background:#f0fdf4;
  color:#166534;
  border:1px solid #bbf7d0
}
.wcom-pro-cashier .wpc-return-warning.is-error {
  background:#fef2f2;
  color:#991b1b;
  border:1px solid #fecaca
}
.wcom-pro-cashier #wpc-return-refund.is-mismatch {
  border:2px solid #dc2626!important;
  background:#fef2f2!important;
  color:#991b1b!important;
  box-shadow:0 0 0 3px rgba(220,38,38,.10)
}
@media(max-width:600px) {
  .wcom-pro-cashier #wpc-discount-fields {
    grid-template-columns:1fr
  }
  .wcom-pro-cashier #wpc-discount-note {
    grid-column:auto
  }
}
/* 3.9.44 — Return refund policy alerts. Cashier-only; no employee logic changes. */
.wcom-pro-cashier .wpc-cashier-status-strip {
  max-width:1500px;
  margin:9px auto 12px;
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
  padding:8px 10px;
  background:rgba(255,255,255,.92);
  border:1px solid #e2e8f0;
  border-radius:13px;
  box-shadow:0 5px 18px rgba(15,23,42,.04)
}
.wcom-pro-cashier .wpc-status-chip {
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:6px 9px;
  border-radius:999px;
  background:#f8fafc;
  color:#64748b;
  border:1px solid #e5e7eb;
  font-size:10px;
  font-weight:800;
  white-space:nowrap
}
.wcom-pro-cashier .wpc-status-chip i {
  font-style:normal;
  color:#94a3b8
}
.wcom-pro-cashier .wpc-status-chip b {
  color:#0f172a
}
.wcom-pro-cashier .wpc-status-chip b.is-ok {
  color:#15803d
}
.wcom-pro-cashier .wpc-status-chip b.is-error {
  color:#b91c1c
}
.wcom-pro-cashier .wpc-cashier-alert {
  margin-right:auto;
  min-height:30px;
  display:flex;
  align-items:center;
  gap:6px;
  padding:5px 10px;
  border-radius:9px;
  color:#475569;
  background:#f8fafc;
  border:1px solid transparent;
  opacity:.65;
  transition:.18s
}
.wcom-pro-cashier .wpc-cashier-alert.is-ok {
  opacity:1;
  color:#166534;
  background:#f0fdf4;
  border-color:#bbf7d0
}
.wcom-pro-cashier .wpc-cashier-alert.is-error {
  opacity:1;
  color:#991b1b;
  background:#fef2f2;
  border-color:#fecaca
}
.wcom-pro-cashier .wpc-cashier-alert.is-info {
  opacity:1;
  color:#1e40af;
  background:#eff6ff;
  border-color:#bfdbfe
}
.wcom-pro-cashier .wpc-cashier-alert>span {
  font-size:10px
}
.wcom-pro-cashier #wpc-accounting {
  display:none!important
}
@media(max-width:700px) {
  .wcom-pro-cashier .wpc-cashier-alert {
    width:100%;
    margin-right:0
  }
  .wcom-pro-cashier .wpc-cashier-status-strip {
    align-items:stretch
  }
  .wcom-pro-cashier .wpc-status-chip {
    flex:1;
    justify-content:center
  }
}
/* WebCom POS 3.9.46 — Cashier UI rebuild
 * UI/UX redesign only. Existing IDs/classes required by cashier JS are preserved.
 */
.wcom-pro-cashier {
  position:fixed!important;
  inset:0!important;
  z-index:999999!important;
  overflow:auto!important;
  box-sizing:border-box!important;
  padding:10px 14px 18px!important;
  background:#f3f6fa!important;
  color:#0f172a!important;
  font-family:Tahoma,Arial,sans-serif!important
}
.wcom-pro-cashier * {
  box-sizing:border-box
}
.wcom-pro-cashier .wpc-head {
  max-width:1540px!important;
  margin:0 auto 10px!important;
  min-height:72px!important;
  padding:10px 14px!important;
  display:grid!important;
  grid-template-columns:minmax(250px,.8fr) minmax(0,1.7fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  border-radius:16px!important;
  border:1px solid #dbe5f1!important;
  background:linear-gradient(135deg,#0f214b 0%,#173d82 62%,#2459c8 100%)!important;
  box-shadow:0 8px 24px rgba(15,35,75,.14)!important;
  overflow:visible!important
}
.wcom-pro-cashier .wpc-head:after {
  display:none!important
}
.wcom-pro-cashier .wpc-brand {
  grid-column:3!important;
  grid-row:1!important;
  min-width:220px!important;
  text-align:right!important
}
.wcom-pro-cashier .wpc-store-name {
  font-size:9px!important;
  letter-spacing:.4px!important;
  color:#cbd5e1!important;
  opacity:1!important;
  margin-bottom:1px!important
}
.wcom-pro-cashier .wpc-head h2 {
  font-size:20px!important;
  line-height:1.1!important;
  margin:0!important;
  color:#fff!important
}
.wcom-pro-cashier .wpc-session-meta {
  margin-top:5px!important;
  display:flex!important;
  gap:4px!important;
  flex-wrap:wrap!important;
  background:none!important;
  border:0!important;
  padding:0!important
}
.wcom-pro-cashier .wpc-session-meta span {
  font-size:9px!important;
  color:#dbeafe!important;
  padding:2px 5px!important;
  background:rgba(255,255,255,.07)!important;
  border-radius:6px!important
}
.wcom-pro-cashier .wpc-context-group {
  grid-column:1!important;
  grid-row:1!important;
  justify-self:start!important;
  display:flex!important;
  gap:6px!important;
  align-items:center!important
}
.wcom-pro-cashier .wpc-context-card,.wcom-pro-cashier .wcom-cashier-warehouse-switch {
  height:42px!important;
  min-width:170px!important;
  border-radius:11px!important;
  padding:5px 9px!important;
  background:rgba(255,255,255,.10)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  color:#fff!important;
  box-shadow:none!important
}
.wcom-pro-cashier .wpc-context-icon {
  width:25px!important;
  height:25px!important;
  border-radius:7px!important;
  background:rgba(255,255,255,.13)!important;
  color:#fff!important;
  font-size:13px!important
}
.wcom-pro-cashier .wpc-context-copy small {
  font-size:8px!important;
  color:#cbd5e1!important
}
.wcom-pro-cashier .wpc-context-copy b {
  font-size:10px!important;
  color:#fff!important
}
.wcom-pro-cashier .wcom-cashier-warehouse-switch {
  min-width:190px!important;
  gap:6px!important
}
.wcom-pro-cashier .wcom-cashier-warehouse-switch>span {
  font-size:8px!important;
  color:#cbd5e1!important
}
.wcom-pro-cashier #wcom-cashier-warehouse-select {
  height:30px!important;
  font-size:10px!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  border:0!important;
  padding:0 7px!important
}
.wcom-pro-cashier #wcom-cashier-warehouse-select option {
  color:#111827;
  background:#fff
}
.wcom-pro-cashier .wpc-head-actions {
  grid-column:2!important;
  grid-row:1!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:5px!important;
  flex-wrap:nowrap!important;
  min-width:0!important
}
.wcom-pro-cashier .wpc-head-actions .wpc-btn {
  height:36px!important;
  padding:0 9px!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.15)!important;
  color:#fff!important;
  font-size:9px!important;
  font-weight:800!important;
  white-space:nowrap!important;
  box-shadow:none!important
}
.wcom-pro-cashier .wpc-head-actions .wpc-btn:hover {
  background:rgba(255,255,255,.16)!important;
  transform:none!important
}
.wcom-pro-cashier .wpc-head-actions #wpc-new {
  display:none!important
}
.wcom-pro-cashier .wpc-head-actions #wpc-account {
  background:rgba(127,29,29,.45)!important
}
.wcom-pro-cashier .wpc-head-actions kbd {
  font-size:7px!important;
  padding:1px 3px!important
}
.wcom-pro-cashier .wpc-cashier-status-strip {
  max-width:1540px!important;
  margin:0 auto 10px!important;
  padding:5px 8px!important;
  min-height:34px!important;
  border-radius:10px!important;
  box-shadow:none!important;
  background:#fff!important;
  border:1px solid #e1e8f0!important;
  gap:5px!important
}
.wcom-pro-cashier .wpc-status-chip {
  padding:5px 8px!important;
  font-size:9px!important;
  background:#f8fafc!important
}
.wcom-pro-cashier .wpc-cashier-alert {
  min-height:25px!important;
  padding:3px 8px!important;
  font-size:9px!important
}
.wcom-pro-cashier .wpc-layout {
  max-width:1540px!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 430px!important;
  gap:12px!important;
  align-items:start!important
}
.wcom-pro-cashier .wpc-main {
  min-width:0!important;
  padding:14px!important;
  background:#fff!important;
  border:1px solid #dce5ef!important;
  border-radius:16px!important;
  box-shadow:0 7px 24px rgba(15,23,42,.055)!important
}
.wcom-pro-cashier .wpc-side {
  min-width:0!important;
  padding:12px!important;
  background:#fff!important;
  border:1px solid #dce5ef!important;
  border-radius:16px!important;
  box-shadow:0 7px 24px rgba(15,23,42,.055)!important;
  position:sticky!important;
  top:8px!important;
  max-height:calc(100vh - 110px)!important;
  overflow:auto!important
}
.wcom-pro-cashier .wpc-searchbar {
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr) auto!important;
  gap:5px!important;
  padding:4px!important;
  border:1px solid #cfdbe9!important;
  border-radius:12px!important;
  box-shadow:none!important;
  background:#fff!important
}
.wcom-pro-cashier .wpc-searchbar input {
  height:44px!important;
  font-size:15px!important;
  font-weight:600!important;
  color:#0f172a!important
}
.wcom-pro-cashier .wpc-search-leading {
  height:44px!important
}
.wcom-pro-cashier .wpc-search-modes {
  display:flex!important;
  gap:2px!important;
  padding:2px!important;
  background:#f4f7fb!important;
  border-radius:9px!important
}
.wcom-pro-cashier .wpc-search-mode,.wcom-pro-cashier .wpc-search-scan {
  height:36px!important;
  padding:0 8px!important;
  border:0!important;
  border-radius:7px!important;
  background:transparent!important;
  color:#475569!important;
  font-size:9px!important;
  font-weight:800!important
}
.wcom-pro-cashier .wpc-search-mode.active {
  background:#1d4ed8!important;
  color:#fff!important
}
.wcom-pro-cashier #wpc-search-btn {
  height:36px!important;
  border-radius:8px!important;
  background:#0f172a!important;
  font-size:10px!important;
  padding:0 10px!important
}
.wcom-pro-cashier .wpc-results {
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:9px!important;
  margin-top:10px!important
}
.wcom-pro-cashier .wpc-result {
  min-height:88px!important;
  padding:11px!important;
  text-align:right!important;
  border:1px solid #e0e7ef!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 2px 7px rgba(15,23,42,.025)!important;
  transition:.14s ease!important
}
.wcom-pro-cashier .wpc-result:hover {
  transform:translateY(-2px)!important;
  border-color:#8fb1e5!important;
  box-shadow:0 8px 18px rgba(15,23,42,.08)!important
}
.wcom-pro-cashier .wpc-product-top {
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:7px!important
}
.wcom-pro-cashier .wpc-product-name {
  font-size:12px!important;
  line-height:1.45!important;
  color:#111827!important;
  font-weight:900!important
}
.wcom-pro-cashier .wpc-stock-pill {
  font-size:8px!important;
  padding:3px 5px!important;
  border-radius:999px!important;
  white-space:nowrap!important
}
.wcom-pro-cashier .wpc-product-bottom {
  display:flex!important;
  justify-content:space-between!important;
  align-items:end!important;
  gap:5px!important;
  margin-top:14px!important
}
.wcom-pro-cashier .wpc-product-bottom strong {
  font-size:15px!important;
  color:#123d86!important
}
.wcom-pro-cashier .wpc-product-bottom small {
  font-size:8px!important;
  color:#64748b!important
}
.wcom-pro-cashier .wpc-stock-count {
  font-size:8px!important;
  color:#64748b!important;
  font-weight:700!important
}
.wcom-pro-cashier .wpc-quick-products {
  margin:14px 0 0!important;
  padding:0!important
}
.wcom-pro-cashier .wpc-quick-title {
  margin:0 0 7px!important;
  padding:0 2px!important
}
.wcom-pro-cashier .wpc-quick-title h3 {
  font-size:14px!important;
  margin:0!important
}
.wcom-pro-cashier .wpc-quick-title .wpc-link {
  font-size:10px!important
}
.wcom-pro-cashier .wpc-quick-card {
  min-height:78px!important
}
.wcom-pro-cashier .wpc-side-invoice-head {
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:8px!important;
  padding:2px 2px 10px!important;
  border-bottom:1px solid #edf1f5!important
}
.wcom-pro-cashier .wpc-side-invoice-head>div {
  display:flex!important;
  align-items:center!important;
  gap:8px!important
}
.wcom-pro-cashier .wpc-side-invoice-head>div span {
  font-size:15px!important;
  font-weight:900!important;
  color:#0f172a!important
}
.wcom-pro-cashier .wpc-side-invoice-head>div strong {
  font-size:9px!important;
  padding:4px 7px!important;
  border-radius:999px!important;
  background:#eef4ff!important;
  color:#1d4ed8!important
}
.wcom-pro-cashier .wpc-side-clear {
  border:1px solid #dbe5ef!important;
  background:#f8fafc!important;
  color:#334155!important;
  border-radius:8px!important;
  height:32px!important;
  padding:0 8px!important;
  font-family:inherit!important;
  font-size:9px!important;
  font-weight:800!important;
  cursor:pointer!important
}
.wcom-pro-cashier .wpc-cart-wrap {
  min-height:190px!important;
  max-height:34vh!important;
  overflow:auto!important;
  margin-top:9px!important;
  border:1px solid #e6ebf1!important;
  border-radius:10px!important;
  background:#fff!important
}
.wcom-pro-cashier .wpc-cart-wrap table {
  font-size:10px!important
}
.wcom-pro-cashier .wpc-cart-wrap th {
  position:sticky!important;
  top:0!important;
  z-index:2!important;
  background:#f7f9fc!important;
  font-size:8px!important;
  padding:8px 5px!important
}
.wcom-pro-cashier .wpc-cart-wrap td {
  padding:7px 5px!important;
  border-bottom:1px solid #f0f3f7!important;
  font-size:9px!important
}
.wcom-pro-cashier .wpc-qty button {
  width:24px!important;
  height:24px!important;
  font-size:14px!important;
  border-radius:5px!important
}
.wcom-pro-cashier .wpc-qty input {
  width:38px!important;
  height:24px!important;
  font-size:10px!important
}
.wcom-pro-cashier .wpc-del {
  font-size:17px!important
}
.wcom-pro-cashier .wpc-empty {
  height:170px!important;
  font-size:10px!important;
  text-align:center!important;
  padding:20px!important
}
.wcom-pro-cashier .wpc-empty:before {
  font-size:25px!important
}
.wcom-pro-cashier .wpc-quick-note {
  margin:10px 0!important;
  padding:9px 10px!important;
  border-radius:9px!important;
  background:#f6f9fd!important;
  border:1px solid #e2eaf3!important
}
.wcom-pro-cashier .wpc-quick-note b {
  font-size:11px!important;
  margin-bottom:2px!important
}
.wcom-pro-cashier .wpc-quick-note span {
  font-size:9px!important;
  line-height:1.55!important
}
.wcom-pro-cashier .wpc-side label {
  font-size:9px!important;
  margin:8px 0!important;
  color:#475569!important
}
.wcom-pro-cashier .wpc-side select,.wcom-pro-cashier .wpc-side input {
  height:37px!important;
  border-radius:8px!important;
  font-size:10px!important;
  margin-top:4px!important
}
.wcom-pro-cashier .wpc-summary {
  margin:9px 0!important;
  padding:8px 0!important
}
.wcom-pro-cashier .wpc-summary>div {
  padding:4px 0!important
}
.wcom-pro-cashier .wpc-summary span {
  font-size:9px!important
}
.wcom-pro-cashier .wpc-summary .grand {
  margin-top:5px!important;
  padding:10px!important;
  border-radius:9px!important;
  background:#f6f9fd!important;
  border:1px solid #e3eaf2!important
}
.wcom-pro-cashier .wpc-summary .grand strong {
  font-size:27px!important;
  color:#0f172a!important
}
.wcom-pro-cashier .wpc-summary .grand small {
  font-size:8px!important
}
.wcom-pro-cashier .wpc-discount-control {
  padding:5px 0!important
}
.wcom-pro-cashier .wpc-discount-check {
  font-size:9px!important
}
.wcom-pro-cashier .wpc-checkmark {
  width:19px!important;
  height:19px!important;
  border-radius:5px!important;
  font-size:12px!important
}
.wcom-pro-cashier #wpc-discount-fields {
  padding:6px!important;
  gap:5px!important;
  margin-top:5px!important
}
.wcom-pro-cashier #wpc-discount-fields input,.wcom-pro-cashier #wpc-discount-fields select {
  height:32px!important;
  font-size:9px!important
}
.wcom-pro-cashier .wpc-print-option {
  font-size:9px!important;
  padding:6px 8px!important;
  margin:7px 0!important
}
.wcom-pro-cashier .wpc-print-option input {
  width:15px!important;
  height:15px!important
}
.wcom-pro-cashier .wpc-change {
  margin:7px 0!important;
  padding:8px 10px!important;
  border-radius:8px!important
}
.wcom-pro-cashier .wpc-change span {
  font-size:9px!important
}
.wcom-pro-cashier .wpc-change strong {
  font-size:18px!important
}
.wcom-pro-cashier #wpc-hold {
  height:37px!important;
  margin-bottom:6px!important;
  border-radius:8px!important;
  font-size:10px!important
}
.wcom-pro-cashier .wpc-pay {
  height:46px!important;
  border-radius:9px!important;
  font-size:13px!important;
  box-shadow:0 7px 16px rgba(22,163,74,.16)!important
}
.wcom-pro-cashier .wpc-session-box {
  margin-top:8px!important;
  padding:8px!important;
  border-radius:8px!important;
  font-size:9px!important
}
.wcom-pro-cashier .wpc-session-box>span {
  font-size:8px!important
}
.wcom-pro-cashier .wpc-session-box strong {
  font-size:10px!important
}
.wcom-pro-cashier .wpc-session-box .wpc-link {
  font-size:8px!important
}
.wcom-pro-cashier .wpc-message {
  font-size:9px!important;
  margin-top:6px!important
}
@media(max-width:1250px) {
  .wcom-pro-cashier .wpc-head {
    grid-template-columns:minmax(190px,.7fr) minmax(0,1fr) minmax(210px,.8fr)!important
  }
  .wcom-pro-cashier .wpc-head-actions .wpc-btn {
    padding:0 7px!important;
    font-size:8px!important
  }
  .wcom-pro-cashier .wpc-layout {
    grid-template-columns:minmax(0,1fr) 380px!important
  }
  .wcom-pro-cashier .wpc-results {
    grid-template-columns:repeat(3,minmax(0,1fr))!important
  }
}
@media(max-width:1000px) {
  .wcom-pro-cashier .wpc-head {
    grid-template-columns:1fr!important;
    gap:7px!important
  }
  .wcom-pro-cashier .wpc-brand,.wcom-pro-cashier .wpc-context-group,.wcom-pro-cashier .wpc-head-actions {
    grid-column:1!important;
    grid-row:auto!important;
    justify-self:stretch!important
  }
  .wcom-pro-cashier .wpc-brand {
    text-align:right!important
  }
  .wcom-pro-cashier .wpc-context-group {
    justify-content:flex-start!important
  }
  .wcom-pro-cashier .wpc-head-actions {
    justify-content:flex-start!important;
    flex-wrap:wrap!important
  }
  .wcom-pro-cashier .wpc-layout {
    grid-template-columns:1fr!important
  }
  .wcom-pro-cashier .wpc-side {
    position:relative!important;
    top:auto!important;
    max-height:none!important;
    overflow:visible!important
  }
}
@media(max-width:650px) {
  .wcom-pro-cashier {
    padding:6px!important
  }
  .wcom-pro-cashier .wpc-head {
    padding:9px!important;
    border-radius:13px!important
  }
  .wcom-pro-cashier .wpc-context-group {
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:100%!important
  }
  .wcom-pro-cashier .wpc-context-card,.wcom-pro-cashier .wcom-cashier-warehouse-switch {
    min-width:0!important;
    width:100%!important
  }
  .wcom-pro-cashier .wpc-head-actions {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important
  }
  .wcom-pro-cashier .wpc-head-actions .wpc-btn {
    width:100%!important
  }
  .wcom-pro-cashier .wpc-results {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important
  }
  .wcom-pro-cashier .wpc-searchbar {
    grid-template-columns:26px 1fr!important
  }
  .wcom-pro-cashier .wpc-search-modes {
    grid-column:1/-1!important;
    justify-content:center!important
  }
  .wcom-pro-cashier .wpc-side-invoice-head>div span {
    font-size:13px!important
  }
  .wcom-pro-cashier .wpc-cart-wrap {
    max-height:45vh!important
  }
}
/* Cashier Checkout UX 2.0 — compact contextual checkout */
.wcom-pro-cashier .wpc-checkout-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 0 9px;
  border-bottom:1px solid #edf2f7;
  margin-bottom:8px
}
.wcom-pro-cashier .wpc-checkout-head b {
  display:block;
  font-size:14px
}
.wcom-pro-cashier .wpc-checkout-head span {
  display:block;
  color:#64748b;
  font-size:10px;
  margin-top:2px
}
.wcom-pro-cashier .wpc-checkout-lock {
  padding:5px 8px;
  border-radius:999px;
  background:#fff7ed;
  color:#9a3412;
  border:1px solid #fed7aa;
  white-space:nowrap
}
.wcom-pro-cashier .wpc-customer-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) 38px;
  gap:6px;
  align-items:end
}
.wcom-pro-cashier .wpc-customer-row label {
  margin:6px 0!important
}
.wcom-pro-cashier .wpc-icon-btn {
  height:37px;
  border:1px solid #cbd5e1;
  border-radius:8px;
  background:#f8fafc;
  color:#2563eb;
  font-size:20px;
  font-weight:800;
  cursor:pointer
}
.wcom-pro-cashier .wpc-payment-section {
  margin-top:6px
}
.wcom-pro-cashier .wpc-section-label {
  font-size:9px;
  font-weight:800;
  color:#475569;
  margin-bottom:5px
}
.wcom-pro-cashier .wpc-payment-methods {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:5px
}
.wcom-pro-cashier .wpc-method-btn {
  height:34px;
  border:1px solid #dbe3ec;
  border-radius:8px;
  background:#f8fafc;
  color:#475569;
  font-family:inherit;
  font-size:10px;
  font-weight:800;
  cursor:pointer
}
.wcom-pro-cashier .wpc-method-btn.active {
  background:#eff6ff;
  border-color:#93c5fd;
  color:#1d4ed8;
  box-shadow:inset 0 0 0 1px #bfdbfe
}
.wcom-pro-cashier #wpc-method {
  display:none!important
}
.wcom-pro-cashier .wpc-summary {
  margin:7px 0!important;
  padding:6px 0!important
}
.wcom-pro-cashier .wpc-summary>div {
  padding:3px 0!important
}
.wcom-pro-cashier .wpc-summary .grand {
  display:flex;
  align-items:center;
  gap:7px;
  margin-top:4px!important;
  padding:9px 10px!important
}
.wcom-pro-cashier .wpc-summary .grand span {
  margin-left:auto
}
.wcom-pro-cashier .wpc-summary .grand strong {
  font-size:25px!important
}
.wcom-pro-cashier .wpc-discount-toggle {
  border:0;
  background:none;
  color:#2563eb;
  font-family:inherit;
  font-size:9px;
  font-weight:800;
  padding:3px 0;
  cursor:pointer
}
.wcom-pro-cashier #wpc-discount-fields {
  display:grid;
  grid-template-columns:90px 1fr;
  gap:5px;
  padding:6px!important;
  margin-top:4px;
  background:#f8fafc;
  border:1px solid #e5edf5;
  border-radius:8px
}
.wcom-pro-cashier #wpc-discount-fields input,.wcom-pro-cashier #wpc-discount-fields select {
  width:100%;
  height:31px!important;
  margin:0!important;
  font-size:9px!important
}
.wcom-pro-cashier #wpc-discount-fields input:last-child {
  grid-column:1/-1
}
.wcom-pro-cashier .wpc-paid-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) 105px;
  gap:7px;
  align-items:end
}
.wcom-pro-cashier .wpc-paid-row label {
  margin:5px 0!important
}
.wcom-pro-cashier .wpc-paid-row input {
  height:37px!important
}
.wcom-pro-cashier .wpc-paid-row .wpc-change {
  height:37px;
  margin:0!important;
  padding:5px 8px!important;
  box-sizing:border-box
}
.wcom-pro-cashier .wpc-paid-row .wpc-change span {
  font-size:8px
}
.wcom-pro-cashier .wpc-paid-row .wpc-change strong {
  font-size:15px
}
.wcom-pro-cashier .wpc-print-option {
  display:flex!important;
  align-items:center;
  gap:5px;
  padding:3px 0!important;
  margin:4px 0!important
}
.wcom-pro-cashier .wpc-print-option input {
  width:14px!important;
  height:14px!important;
  margin:0!important
}
.wcom-pro-cashier .wpc-checkout-actions {
  display:grid;
  grid-template-columns:88px minmax(0,1fr);
  gap:6px;
  margin-top:6px
}
.wcom-pro-cashier .wpc-checkout-actions #wpc-hold {
  width:100%;
  height:46px!important;
  margin:0!important
}
.wcom-pro-cashier .wpc-checkout-actions #wpc-pay {
  width:100%;
  height:46px!important;
  margin:0!important
}
.wcom-pro-cashier .wpc-session-box {
  margin-top:7px!important;
  padding:7px 8px!important
}
.wcom-pro-cashier .wpc-session-box .wpc-link {
  font-size:8px
}
.wcom-pro-cashier .wpc-pay[style*="display: none"] {
  display:none!important
}
.wcom-pro-cashier .wpc-pay-locked {
  font-size:9px
}
@media(max-width:600px) {
  .wcom-pro-cashier .wpc-payment-methods {
    gap:4px
  }
  .wcom-pro-cashier .wpc-method-btn {
    font-size:9px
  }
  .wcom-pro-cashier .wpc-paid-row {
    grid-template-columns:minmax(0,1fr) 95px
  }
  .wcom-pro-cashier .wpc-checkout-head {
    align-items:flex-start
  }
  .wcom-pro-cashier .wpc-checkout-lock {
    font-size:8px
  }
  .wcom-pro-cashier .wpc-checkout-actions {
    grid-template-columns:82px minmax(0,1fr)
  }
}
/* Cashier Checkout UX 2.1 — invoice directly below products */
.wcom-pro-cashier .wpc-layout {
  display:block!important
}
.wcom-pro-cashier .wpc-main {
  width:100%;
  box-sizing:border-box
}
.wcom-pro-cashier .wpc-side {
  width:100%;
  box-sizing:border-box;
  position:static!important;
  margin-top:14px;
  padding:14px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.55fr) minmax(360px,.85fr)!important;
  gap:14px!important;
  align-items:start!important
}
.wcom-pro-cashier .wpc-invoice-cart {
  min-width:0
}
.wcom-pro-cashier .wpc-checkout-panel {
  min-width:0;
  background:#fbfdff;
  border:1px solid #e6ebf1;
  border-radius:12px;
  padding:10px 12px
}
.wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap {
  max-height:300px!important;
  min-height:150px!important
}
.wcom-pro-cashier .wpc-invoice-cart .wpc-empty {
  height:150px!important
}
.wcom-pro-cashier .wpc-checkout-panel .wpc-session-box {
  margin-top:7px!important
}
@media(max-width:1000px) {
  .wcom-pro-cashier .wpc-side {
    grid-template-columns:1fr!important
  }
  .wcom-pro-cashier .wpc-checkout-panel {
    padding:10px!important
  }
}
@media(max-width:650px) {
  .wcom-pro-cashier .wpc-side {
    padding:10px!important;
    gap:10px!important
  }
  .wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap {
    max-height:45vh!important
  }
}
/* WebCom POS 3.9.46 —  Checkout UX 2.2: one-screen compact checkout */
.wcom-pro-cashier .wpc-checkout-panel {
  padding:8px 10px!important;
  overflow:visible!important
}
.wcom-pro-cashier .wpc-checkout-head {
  padding:5px 0 6px!important;
  margin-bottom:5px!important
}
.wcom-pro-cashier .wpc-checkout-head b {
  font-size:13px!important
}
.wcom-pro-cashier .wpc-checkout-head span {
  font-size:9px!important;
  margin-top:1px!important
}
.wcom-pro-cashier .wpc-checkout-lock {
  font-size:8px!important;
  padding:4px 7px!important
}
.wcom-pro-cashier .wpc-customer-row {
  grid-template-columns:minmax(0,1fr) 34px!important;
  gap:5px!important
}
.wcom-pro-cashier .wpc-customer-row label {
  margin:3px 0!important
}
.wcom-pro-cashier .wpc-customer-row label select {
  height:34px!important;
  margin-top:3px!important
}
.wcom-pro-cashier .wpc-icon-btn {
  height:34px!important;
  font-size:18px!important
}
.wcom-pro-cashier .wpc-payment-section {
  margin-top:4px!important
}
.wcom-pro-cashier .wpc-section-label {
  margin-bottom:3px!important;
  font-size:8px!important
}
.wcom-pro-cashier .wpc-payment-methods {
  gap:4px!important
}
.wcom-pro-cashier .wpc-method-btn {
  height:31px!important;
  font-size:9px!important;
  border-radius:7px!important
}
.wcom-pro-cashier .wpc-summary {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:3px 7px!important;
  margin:5px 0!important;
  padding:5px 0!important
}
.wcom-pro-cashier .wpc-summary>div {
  padding:2px 0!important;
  min-width:0!important
}
.wcom-pro-cashier .wpc-summary>div:first-child {
  grid-column:1
}
.wcom-pro-cashier .wpc-summary .wpc-discount-control {
  grid-column:2;
  display:flex;
  align-items:center;
  justify-content:flex-start
}
.wcom-pro-cashier .wpc-summary .grand {
  grid-column:1/-1!important;
  margin-top:2px!important;
  padding:7px 9px!important;
  min-height:43px!important
}
.wcom-pro-cashier .wpc-summary .grand strong {
  font-size:23px!important
}
.wcom-pro-cashier .wpc-summary .grand small {
  font-size:7px!important
}
.wcom-pro-cashier .wpc-paid-row {
  grid-template-columns:minmax(0,1fr) 100px!important;
  gap:5px!important
}
.wcom-pro-cashier .wpc-paid-row label {
  margin:3px 0!important
}
.wcom-pro-cashier .wpc-paid-row input {
  height:34px!important;
  margin-top:3px!important
}
.wcom-pro-cashier .wpc-paid-row .wpc-change {
  height:34px!important
}
.wcom-pro-cashier .wpc-print-option {
  font-size:8px!important;
  padding:2px 0!important;
  margin:3px 0!important
}
.wcom-pro-cashier .wpc-checkout-actions {
  position:sticky!important;
  bottom:0!important;
  z-index:8!important;
  grid-template-columns:78px minmax(0,1fr)!important;
  gap:5px!important;
  margin:4px -2px 0!important;
  padding:5px 2px 2px!important;
  background:#fbfdff!important;
  border-top:1px solid #edf2f7!important
}
.wcom-pro-cashier .wpc-checkout-actions #wpc-hold,.wcom-pro-cashier .wpc-checkout-actions #wpc-pay {
  height:42px!important;
  border-radius:8px!important;
  font-size:11px!important
}
.wcom-pro-cashier .wpc-checkout-actions #wpc-pay {
  font-size:13px!important
}
.wcom-pro-cashier .wpc-session-box {
  margin-top:4px!important;
  padding:5px 7px!important;
  grid-template-columns:1fr auto!important;
  gap:2px!important;
  line-height:1.2!important
}
.wcom-pro-cashier .wpc-session-box>span {
  font-size:7px!important
}
.wcom-pro-cashier .wpc-session-box>strong {
  font-size:9px!important;
  margin-top:0!important
}
.wcom-pro-cashier .wpc-session-box .wpc-link {
  font-size:7px!important
}
.wcom-pro-cashier .wpc-message {
  min-height:12px!important;
  margin-top:3px!important;
  font-size:8px!important
}
@media(min-width:1100px) and (max-height:820px) {
  .wcom-pro-cashier .wpc-side {
    max-height:calc(100vh - 102px)!important
  }
  .wcom-pro-cashier .wpc-cart-wrap {
    max-height:29vh!important;
    min-height:145px!important
  }
}
@media(max-width:700px) {
  .wcom-pro-cashier .wpc-summary {
    grid-template-columns:1fr!important
  }
  .wcom-pro-cashier .wpc-summary>div:first-child,.wcom-pro-cashier .wpc-summary .wpc-discount-control,.wcom-pro-cashier .wpc-summary .grand {
    grid-column:1!important
  }
  .wcom-pro-cashier .wpc-summary .wpc-discount-control {
    justify-content:flex-start
  }
  .wcom-pro-cashier .wpc-checkout-actions {
    position:sticky!important;
    bottom:0!important
  }
}
/* WebCom POS 3.9.49 -- Terminal layout: the pay button is always visible.
   One-screen cashier: header + status on top, products on one side, invoice (scrolls inside) +
   checkout (compact, pay button pinned) on the other. Appended last so it wins over older patches. */
#wcom-cashier-app.wcom-pro-cashier {
  display:flex!important;
  flex-direction:column!important;
  height:100vh!important;
  height:100dvh!important;
  overflow:hidden!important;
  padding:8px 10px!important;
  box-sizing:border-box!important
}
#wcom-cashier-app .wpc-head {
  flex:0 0 auto!important;
  max-width:none!important;
  width:100%!important;
  margin:0 0 6px!important;
  padding:6px 12px!important;
  min-height:0!important;
  gap:10px!important;
  border-radius:12px!important
}
#wcom-cashier-app .wpc-head h2 {
  font-size:17px!important;
  margin:0!important;
  line-height:1.2!important
}
#wcom-cashier-app .wpc-store-name {
  font-size:10px!important;
  line-height:1.1!important
}
#wcom-cashier-app .wpc-session-meta {
  gap:4px!important;
  margin-top:2px!important
}
#wcom-cashier-app .wpc-session-meta span {
  padding:1px 6px!important;
  font-size:9px!important
}
#wcom-cashier-app .wpc-head-actions .wpc-btn,#wcom-cashier-app .wpc-context-card {
  min-height:34px!important;
  padding-top:4px!important;
  padding-bottom:4px!important;
  font-size:11px!important
}
#wcom-cashier-app .wpc-cashier-status-strip {
  flex:0 0 auto!important;
  margin:0 0 6px!important;
  padding:3px 10px!important;
  min-height:0!important;
  border-radius:10px!important
}
#wcom-cashier-app .wpc-status-chip {
  padding:2px 8px!important;
  font-size:10px!important
}
#wcom-cashier-app .wpc-layout {
  flex:1 1 auto!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(360px,420px)!important;
  gap:10px!important;
  align-items:stretch!important;
  max-width:none!important;
  margin:0!important;
  overflow:hidden!important
}
#wcom-cashier-app .wpc-main {
  min-height:0!important;
  overflow:auto!important;
  overscroll-behavior:contain;
  padding:10px!important
}
#wcom-cashier-app .wpc-side {
  position:relative!important;
  top:auto!important;
  margin:0!important;
  width:auto!important;
  max-height:none!important;
  min-height:0!important;
  height:100%!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  padding:8px!important;
  box-sizing:border-box!important
}
#wcom-cashier-app .wpc-invoice-cart {
  flex:1 1 150px!important;
  min-height:110px!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important
}
#wcom-cashier-app .wpc-side-invoice-head {
  flex:0 0 auto!important
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap {
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:auto!important;
  overscroll-behavior:contain
}
#wcom-cashier-app .wpc-cart-wrap thead th {
  position:sticky;
  top:0;
  z-index:2;
  background:#f8fafc
}
#wcom-cashier-app .wpc-checkout-panel {
  flex:0 1 auto!important;
  min-height:0!important;
  overflow:auto!important;
  overscroll-behavior:contain;
  padding:6px 8px 0!important;
  position:relative!important
}
#wcom-cashier-app .wpc-checkout-head span:not(.wpc-checkout-lock),#wcom-cashier-app .wpc-checkout-head div span {
  display:none!important
}
#wcom-cashier-app .wpc-checkout-head {
  margin:0 0 4px!important;
  padding:0!important
}
#wcom-cashier-app .wpc-checkout-head b {
  font-size:12px!important
}
#wcom-cashier-app .wpc-section-label {
  display:none!important
}
#wcom-cashier-app .wpc-checkout-panel label {
  margin:4px 0!important
}
#wcom-cashier-app .wpc-checkout-panel select,#wcom-cashier-app .wpc-checkout-panel input[type=number],#wcom-cashier-app .wpc-checkout-panel input[type=text] {
  height:34px!important;
  margin-top:2px!important
}
#wcom-cashier-app .wpc-summary {
  margin:4px 0!important;
  padding:6px 8px!important
}
#wcom-cashier-app .wpc-summary .grand strong {
  font-size:22px!important
}
#wcom-cashier-app .wpc-paid-row {
  margin:4px 0!important;
  gap:8px!important
}
#wcom-cashier-app .wpc-print-option {
  margin:2px 0!important;
  font-size:11px!important
}
#wcom-cashier-app .wpc-checkout-actions {
  position:sticky!important;
  bottom:0!important;
  z-index:9!important;
  display:grid!important;
  grid-template-columns:84px minmax(0,1fr)!important;
  gap:8px!important;
  margin:6px -8px 0!important;
  padding:8px!important;
  background:#fff!important;
  border-top:1px solid #e2e8f0!important;
  box-shadow:0 -6px 14px rgba(15,23,42,.06)!important
}
#wcom-cashier-app .wpc-checkout-actions #wpc-hold {
  height:50px!important
}
#wcom-cashier-app .wpc-checkout-actions #wpc-pay {
  height:50px!important;
  font-size:15px!important;
  font-weight:800!important
}
#wcom-cashier-app #wpc-pay[data-total]::after {
  content:"  ·  " attr(data-total);
  font-weight:800
}
#wcom-cashier-app .wpc-session-box {
  margin:6px 0 4px!important;
  padding:4px 8px!important;
  font-size:11px!important
}
#wcom-cashier-app #wpc-message:empty {
  display:none!important
}
/* tighter checkout so the invoice list gets most of the height */
#wcom-cashier-app #wpc-discount-fields[hidden],#wcom-cashier-app .wpc-discount-check[hidden] {
  display:none!important
}
#wcom-cashier-app .wpc-invoice-cart {
  flex:1 1 0!important;
  min-height:190px!important
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap td {
  padding:4px 6px!important;
  font-size:12px!important
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap input {
  height:30px!important;
  width:64px!important;
  min-width:0!important;
  margin:0!important;
  padding:0 4px!important;
  font-size:12px!important
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap thead th {
  padding:5px 6px!important;
  font-size:10px!important
}
#wcom-cashier-app .wpc-customer-row {
  display:flex!important;
  gap:6px!important;
  align-items:flex-end!important;
  margin:0 0 4px!important
}
#wcom-cashier-app .wpc-customer-row label {
  flex:1 1 auto!important;
  margin:0!important
}
#wcom-cashier-app .wpc-customer-row #wpc-add-customer {
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important
}
#wcom-cashier-app .wpc-payment-methods button {
  height:32px!important;
  min-height:0!important;
  font-size:12px!important;
  padding:0 4px!important
}
#wcom-cashier-app .wpc-payment-section {
  margin:2px 0 4px!important
}
#wcom-cashier-app .wpc-summary {
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:4px 8px!important
}
#wcom-cashier-app .wpc-summary>div:first-child {
  font-size:11px!important
}
#wcom-cashier-app .wpc-summary .grand {
  flex:1 1 100%!important;
  display:flex!important;
  align-items:baseline!important;
  justify-content:space-between!important;
  padding:4px 8px!important;
  margin:0!important
}
#wcom-cashier-app .wpc-paid-row {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 120px!important;
  align-items:end!important
}
#wcom-cashier-app .wpc-paid-row .wpc-change {
  height:34px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:0 8px!important;
  margin:0!important
}
#wcom-cashier-app .wpc-paid-row .wpc-change strong {
  font-size:15px!important
}
#wcom-cashier-app .wpc-session-box {
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important
}
/* Tablets / phones: normal scrolling page, but the pay bar is pinned to the bottom of the screen. */
@media (max-width:900px) {
  #wcom-cashier-app.wcom-pro-cashier {
    overflow:auto!important;
    display:block!important;
    padding-bottom:84px!important
  }
  #wcom-cashier-app .wpc-layout {
    display:block!important;
    overflow:visible!important
  }
  #wcom-cashier-app .wpc-main {
    overflow:visible!important;
    margin-bottom:10px!important
  }
  #wcom-cashier-app .wpc-side {
    height:auto!important;
    overflow:visible!important;
    display:block!important
  }
  #wcom-cashier-app .wpc-invoice-cart {
    display:block!important;
    overflow:visible!important
  }
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap {
    max-height:40vh!important
  }
  #wcom-cashier-app .wpc-checkout-panel {
    overflow:visible!important
  }
  #wcom-cashier-app .wpc-checkout-actions {
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    margin:0!important;
    border-radius:14px 14px 0 0!important;
    z-index:1000000!important;
    padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))!important
  }
}
/* Short screens (small laptops / tablets in landscape): reclaim height for the invoice list */
@media (max-height:700px) and (min-width:901px) {
  #wcom-cashier-app .wpc-session-meta,#wcom-cashier-app .wpc-store-name {
    display:none!important
  }
  #wcom-cashier-app .wpc-session-box {
    display:none!important
  }
  #wcom-cashier-app .wpc-checkout-head b {
    display:none!important
  }
  #wcom-cashier-app .wpc-head {
    padding-top:4px!important;
    padding-bottom:4px!important
  }
}
.wcom-pro-cashier .wpc-wholesale-switch {
  display:flex;
  align-items:center;
  gap:7px;
  white-space:nowrap;
  height:42px;
  padding:0 10px;
  border:1px solid #dbe4ee;
  border-radius:9px;
  background:#fff;
  cursor:pointer;
  font-size:12px;
  font-weight:800
}
.wcom-pro-cashier .wpc-wholesale-switch input {
  position:absolute;
  opacity:0;
  pointer-events:none
}
.wcom-pro-cashier .wpc-wholesale-slider {
  width:34px;
  height:20px;
  border-radius:999px;
  background:#cbd5e1;
  position:relative;
  transition:.15s
}
.wcom-pro-cashier .wpc-wholesale-slider:after {
  content:"";
  position:absolute;
  top:3px;
  right:3px;
  width:14px;
  height:14px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 1px 3px rgba(15,23,42,.2);
  transition:.15s
}
.wcom-pro-cashier .wpc-wholesale-switch:has(input:checked) {
  border-color:var(--cashier-primary,#2563eb);
  background:#eff6ff;
  color:#1d4ed8
}
.wcom-pro-cashier .wpc-wholesale-switch:has(input:checked) .wpc-wholesale-slider {
  background:var(--cashier-primary,#2563eb)
}
.wcom-pro-cashier .wpc-wholesale-switch:has(input:checked) .wpc-wholesale-slider:after {
  right:17px
}
.wcom-pro-cashier .wpc-pricing-badge {
  display:inline-flex;
  align-items:center;
  margin-top:10px;
  padding:7px 11px;
  border-radius:999px;
  background:#f1f5f9;
  color:#475569;
  font-size:12px;
  font-weight:800
}
.wcom-pro-cashier .wpc-pricing-badge.is-wholesale {
  background:#ecfdf5;
  color:#047857
}
.wcom-pro-cashier .wpc-wholesale-line {
  display:block!important;
  color:#047857!important;
  font-weight:800
}
@media(max-width:1050px) {
  .wcom-pro-cashier .wpc-wholesale-switch {
    grid-column:1/-1;
    justify-content:center
  }
}
.wcom-pro-cashier .wpc-searchbar {
  grid-template-columns:auto 34px minmax(180px,1fr) auto auto!important
}
.wcom-pro-cashier .wpc-wholesale-switch .wpc-wholesale-slider {
  font-size:0!important;
  text-align:left!important;
  display:block!important;
  width:34px!important;
  height:20px!important
}
.wcom-pro-cashier .wpc-wholesale-switch input {
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important
}
@media(max-width:1050px) {
  .wcom-pro-cashier .wpc-searchbar {
    grid-template-columns:auto 34px minmax(140px,1fr) auto!important
  }
  .wcom-pro-cashier .wpc-wholesale-switch {
    grid-column:1/-1
  }
}
@media(max-width:700px) {
  .wcom-pro-cashier .wpc-searchbar {
    grid-template-columns:30px minmax(0,1fr)!important
  }
  .wcom-pro-cashier .wpc-wholesale-switch {
    grid-column:1/-1!important
  }
  .wcom-pro-cashier .wpc-searchbar .wpc-search-modes {
    grid-column:1/-1!important
  }
}
/* WebCom POS 3.9.63 — cashier true full-viewport layout */
.wcom-pro-cashier {
  width:100vw!important;
  max-width:none!important;
  margin:0!important;
  left:0!important;
  right:0!important;
}
.wcom-pro-cashier .wpc-head, .wcom-pro-cashier .wpc-cashier-status-strip, .wcom-pro-cashier .wpc-layout {
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}
.wcom-pro-cashier .wpc-layout {
  grid-template-columns:minmax(0,1fr) 430px!important;
}
@media(max-width:1050px) {
  .wcom-pro-cashier .wpc-layout {
    grid-template-columns:1fr!important;
  }
}
/* WebCom POS 3.9.72 — cashier overflow contract.
   The right checkout column must never clip content. The invoice list and checkout
   form own their scroll areas independently so notes/status below the pay action
   remain reachable on short screens. */
#wcom-cashier-app .wpc-side {
  overflow:visible!important;
  min-height:0!important;
}
#wcom-cashier-app .wpc-checkout-panel {
  min-height:0!important;
  max-height:100%!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  scrollbar-gutter:stable;
  scroll-padding-bottom:88px!important;
  padding-bottom:12px!important;
}
#wcom-cashier-app .wpc-checkout-panel .wpc-checkout-actions {
  position:sticky!important;
  bottom:0!important;
}
#wcom-cashier-app .wpc-session-box {
  flex-shrink:0!important;
}
#wcom-cashier-app .wpc-shift-details,#wcom-cashier-app .wpc-shift-note,#wcom-cashier-app #wpc-message {
  max-width:100%!important;
  box-sizing:border-box!important;
}
@media(max-width:900px) {
  #wcom-cashier-app .wpc-side {
    overflow:visible!important;
  }
  #wcom-cashier-app .wpc-checkout-panel {
    max-height:none!important;
    overflow:visible!important;
    padding-bottom:0!important;
  }
}
/* ==========================================================================
   WebCom POS 3.9.73 — Cashier: mobile layout contract + print overlay + empty cart
   Scoped to #wcom-cashier-app only. No change to desktop layout.
   ========================================================================== */
/* Modals must always sit above the cashier's fixed action bar (was 999999 < 1000000). */
#wcom-cashier-app .wpc-modal {
  z-index:2147483000!important
}
/* Empty cart: hide the table (headers + rows) and keep only the friendly empty message. */
#wcom-cashier-app .wpc-cart-wrap.is-empty table {
  display:none!important
}
#wcom-cashier-app .wpc-cart-wrap.is-empty {
  max-height:none!important;
  overflow:visible!important
}
#wcom-cashier-app .wpc-cart-wrap:not(.is-empty) #wpc-empty {
  display:none!important
}
/* Inline receipt viewer (used when the browser blocks the print popup). Never closes by itself. */
.wcom-receipt-overlay {
  position:fixed;
  inset:0;
  z-index:2147483600;
  background:rgba(15,23,42,.62);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px;
  box-sizing:border-box
}
.wcom-receipt-overlay-box {
  display:flex;
  flex-direction:column;
  width:min(520px,100%);
  height:min(92vh,900px);
  background:#fff;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 24px 70px rgba(15,23,42,.4)
}
.wcom-receipt-overlay-bar {
  display:flex;
  gap:8px;
  padding:10px;
  background:#f8fafc;
  border-bottom:1px solid #e5e7eb
}
.wcom-receipt-overlay-bar .wpc-btn {
  flex:1;
  min-height:42px
}
.wcom-receipt-overlay iframe {
  flex:1;
  width:100%;
  border:0;
  background:#eee
}
.wcom-receipt-overlay-hint {
  padding:8px 12px;
  background:#fff7ed;
  color:#9a3412;
  font-size:12px;
  font-weight:600;
  border-bottom:1px solid #fed7aa;
  line-height:1.45
}
@media (max-width:900px) {
  /* 1) No page-level sideways scroll */
  #wcom-cashier-app.wcom-pro-cashier {
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch
  }
  #wcom-cashier-app .wpc-head,#wcom-cashier-app .wpc-layout,#wcom-cashier-app .wpc-main,#wcom-cashier-app .wpc-side {
    max-width:100%!important;
    box-sizing:border-box!important
  }
  #wcom-cashier-app .wpc-cart-wrap {
    overflow-x:auto;
    -webkit-overflow-scrolling:touch
  }
  /* 2) The offline banner must scroll with the page, not stay glued to the top covering content */
  #wcom-cashier-app .wpc-offline-status {
    position:static!important;
    box-shadow:none!important
  }
  /* 3) ONE rule for the bottom action bar (hold + pay):
        - fixed at the bottom only while the invoice has items and the keyboard is closed
        - otherwise it flows normally inside the page and reserves no empty space */
  #wcom-cashier-app .wpc-checkout-panel .wpc-checkout-actions {
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    margin:0!important;
    z-index:60!important;
    border-radius:14px 14px 0 0!important;
    padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px))!important;
    box-shadow:0 -6px 18px rgba(15,23,42,.14)!important;
    box-sizing:border-box!important
  }
  #wcom-cashier-app:not(.wpc-has-items) .wpc-checkout-panel .wpc-checkout-actions, #wcom-cashier-app.wpc-kb-open .wpc-checkout-panel .wpc-checkout-actions {
    position:static!important;
    box-shadow:none!important;
    border-radius:12px!important;
    margin:6px 0 0!important;
    padding:6px 0!important
  }
  #wcom-cashier-app.wcom-pro-cashier {
    padding-bottom:12px!important
  }
  #wcom-cashier-app.wcom-pro-cashier.wpc-has-items:not(.wpc-kb-open) {
    padding-bottom:88px!important
  }
  /* 4) Compact the status strip so it does not eat the first screen */
  #wcom-cashier-app .wpc-cashier-status-strip {
    gap:4px!important
  }
  #wcom-cashier-app .wpc-status-chip {
    font-size:10px!important;
    padding:3px 7px!important
  }
  /* 5) Cart list keeps its own scroll; header cell sticks only inside that box */
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap {
    max-height:42vh!important;
    overflow-y:auto!important
  }
  #wcom-cashier-app .wpc-cart-wrap thead th {
    position:sticky;
    top:0;
    z-index:1
  }
  /* 6) Touch targets */
  #wcom-cashier-app .wpc-method-btn,#wcom-cashier-app .wpc-btn {
    min-height:40px
  }
}
/* WebCom POS 3.9.76 -- customer debt payment: collection destination (shift drawer / outside drawer) */
.wcom-cus-payment .fm-c-pay-dest {
  margin:6px 0 10px
}
.wcom-cus-payment .fm-c-pay-dest-title {
  font-size:12px;
  font-weight:800;
  color:#334155;
  margin-bottom:6px
}
.wcom-cus-payment .fm-c-pay-dest-btns {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px
}
.wcom-cus-payment .fm-c-dest-btn {
  height:40px;
  border:1px solid #cbd5e1;
  border-radius:10px;
  background:#fff;
  font:inherit;
  font-weight:800;
  font-size:13px;
  cursor:pointer;
  color:#334155
}
.wcom-cus-payment .fm-c-dest-btn.active {
  background:#eff6ff;
  border-color:#2563eb;
  color:#1d4ed8;
  box-shadow:0 0 0 2px rgba(37,99,235,.12)
}
.wcom-cus-payment .fm-c-dest-btn:disabled {
  opacity:.45;
  cursor:not-allowed
}
.wcom-cus-payment .fm-c-drawer-box[hidden],.wcom-cus-payment .fm-c-ext-box[hidden] {
  display:none!important
}
.wcom-cus-payment .fm-c-pay-hint {
  font-size:12px;
  color:#64748b;
  line-height:1.6;
  margin:2px 0 10px;
  padding:7px 10px;
  background:#f8fafc;
  border:1px dashed #cbd5e1;
  border-radius:9px
}
/* ═══ 09 · Cashier responsive visual system, last-wins layer (3.9.77) ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Order matters: later files override earlier ones. */

/* ==========================================================================
   WebCom POS 3.9.77 — Cashier responsive visual system
   One consolidated, last-wins layer for #wcom-cashier-app. It replaces the
   conflicting breakpoint stack (4-column grids on phones, search bar overflow,
   100vw clipping, cramped 901–1050px two-column layout, tiny touch targets).
   Breakpoints:  phone ≤600 · tablet/phone-landscape ≤900 · laptop 901–1280
                 · desktop 1281–1699 · large 1700+ · short height ≤700 / ≤520
   ========================================================================== */
/* --- 0. Viewport safety: never wider than the screen, no page scrollbar behind the terminal --- */
html:has(#wcom-cashier-app),html:has(#wcom-cashier-app) body {
  overflow:hidden!important
}
#wcom-cashier-app.wcom-pro-cashier {
  width:auto!important;
  max-width:100%!important;
  left:0!important;
  right:0!important;
  padding-left:max(10px,env(safe-area-inset-left))!important;
  padding-right:max(10px,env(safe-area-inset-right))!important;
  padding-top:max(8px,env(safe-area-inset-top))!important
}
#wcom-cashier-app .wpc-head,#wcom-cashier-app .wpc-cashier-status-strip,#wcom-cashier-app .wpc-layout, #wcom-cashier-app .wpc-main,#wcom-cashier-app .wpc-side {
  min-width:0!important;
  box-sizing:border-box!important
}
#wcom-cashier-app :focus-visible {
  outline:2px solid #2563eb!important;
  outline-offset:2px
}
/* --- 1. Product grid: ONE auto-fitting rule instead of 4 conflicting column counts --- */
#wcom-cashier-app .wpc-results {
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(clamp(138px,13vw,210px),1fr))!important;
  gap:10px!important;
  margin-top:10px!important
}
#wcom-cashier-app .wpc-results>* {
  min-width:0!important;
  overflow:hidden
}
#wcom-cashier-app .wpc-result,#wcom-cashier-app .wpc-quick-card {
  overflow-wrap:anywhere;
  word-break:normal
}
#wcom-cashier-app .wpc-result b,#wcom-cashier-app .wpc-quick-card b {
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  line-height:1.35
}
/* --- 2. Search bar: flexible row that wraps cleanly instead of overflowing the column --- */
#wcom-cashier-app .wpc-searchbar {
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
  grid-template-columns:none!important;
  min-width:0!important
}
#wcom-cashier-app .wpc-searchbar .wpc-wholesale-switch {
  flex:0 0 auto!important
}
#wcom-cashier-app .wpc-searchbar .wpc-search-leading {
  flex:0 0 28px!important;
  width:28px!important
}
#wcom-cashier-app .wpc-searchbar #wpc-search {
  flex:1 1 200px!important;
  min-width:0!important;
  width:auto!important
}
#wcom-cashier-app .wpc-searchbar .wpc-search-modes {
  flex:0 1 auto!important;
  max-width:100%!important;
  overflow-x:auto!important;
  scrollbar-width:none;
  justify-content:flex-start!important
}
#wcom-cashier-app .wpc-searchbar .wpc-search-modes::-webkit-scrollbar {
  display:none
}
#wcom-cashier-app .wpc-searchbar .wpc-search-mode,#wcom-cashier-app .wpc-searchbar .wpc-search-scan {
  flex:0 0 auto!important
}
#wcom-cashier-app .wpc-searchbar>#wpc-search-btn {
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center;
  gap:6px;
  width:auto!important;
  grid-column:auto!important
}
/* --- 3. Two-column terminal (≥901px): checkout column scales with the screen --- */
@media (min-width:901px) {
  #wcom-cashier-app .wpc-layout {
    grid-template-columns:minmax(0,1fr) clamp(340px,27vw,500px)!important;
    gap:clamp(8px,1vw,16px)!important
  }
}
/* laptop / small desktop: search modes take their own full row so nothing is squeezed */
@media (min-width:901px) and (max-width:1280px) {
  #wcom-cashier-app .wpc-searchbar .wpc-search-modes {
    flex:1 1 100%!important;
    order:5;
    justify-content:space-between!important
  }
  #wcom-cashier-app .wpc-searchbar .wpc-search-mode,#wcom-cashier-app .wpc-searchbar .wpc-search-scan {
    flex:1 1 0!important
  }
  #wcom-cashier-app .wpc-head-actions .wpc-btn {
    padding:0 9px!important;
    font-size:10.5px!important
  }
}
/* --- 4. Large screens / touch terminals / wall displays --- */
@media (min-width:1700px) {
  #wcom-cashier-app .wpc-head h2 {
    font-size:20px!important
  }
  #wcom-cashier-app .wpc-status-chip {
    font-size:11px!important;
    padding:3px 10px!important
  }
  #wcom-cashier-app .wpc-head-actions .wpc-btn {
    font-size:12px!important;
    min-height:38px!important
  }
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap td {
    font-size:13.5px!important;
    padding:6px 8px!important
  }
  #wcom-cashier-app .wpc-checkout-actions #wpc-pay,#wcom-cashier-app .wpc-checkout-actions #wpc-hold {
    height:56px!important;
    font-size:17px!important
  }
  #wcom-cashier-app .wpc-summary .grand strong {
    font-size:26px!important
  }
  #wcom-cashier-app .wpc-payment-methods button {
    height:38px!important;
    font-size:13px!important
  }
}
@media (min-width:2200px) {
  #wcom-cashier-app .wpc-layout {
    grid-template-columns:minmax(0,1fr) 560px!important
  }
  #wcom-cashier-app .wpc-results {
    grid-template-columns:repeat(auto-fill,minmax(220px,1fr))!important
  }
}
/* touch screens (tablets / touch POS): comfortable tap targets, no hover jumps */
@media (pointer:coarse) {
  #wcom-cashier-app .wpc-qty button,#wcom-cashier-app .wpc-del {
    min-width:38px!important;
    min-height:38px!important
  }
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap input {
    height:38px!important;
    width:60px!important
  }
  #wcom-cashier-app .wpc-payment-methods button {
    height:42px!important;
    font-size:13px!important
  }
  #wcom-cashier-app .wpc-checkout-panel select,#wcom-cashier-app .wpc-checkout-panel input[type=number],#wcom-cashier-app .wpc-checkout-panel input[type=text] {
    height:40px!important
  }
  #wcom-cashier-app .wpc-head-actions .wpc-btn {
    min-height:40px!important
  }
  #wcom-cashier-app .wpc-quick-card:hover {
    transform:none!important
  }
}
/* --- 5. Tablet & phone (≤900px): normal page scroll, tidy header, scrolling chips --- */
@media (max-width:900px) {
  #wcom-cashier-app .wpc-head {
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px 10px!important;
    align-items:center!important;
    padding:10px 12px!important
  }
  #wcom-cashier-app .wpc-head .wpc-context-group {
    grid-column:2;
    grid-row:1
  }
  #wcom-cashier-app .wpc-head .wpc-head-actions {
    grid-column:1/-1!important;
    grid-row:2;
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:6px!important;
    overflow-x:auto;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    width:100%!important;
    justify-content:flex-start!important;
    padding-bottom:2px
  }
  #wcom-cashier-app .wpc-head .wpc-head-actions::-webkit-scrollbar {
    display:none
  }
  #wcom-cashier-app .wpc-head .wpc-head-actions .wpc-btn {
    flex:0 0 auto!important;
    width:auto!important;
    min-height:38px!important;
    height:38px!important;
    padding:0 12px!important;
    font-size:12px!important;
    white-space:nowrap
  }
  #wcom-cashier-app .wpc-head h2 {
    font-size:19px!important
  }
  #wcom-cashier-app .wpc-cashier-status-strip {
    display:flex!important;
    flex-wrap:nowrap!important;
    overflow-x:auto;
    scrollbar-width:none;
    gap:6px!important;
    -webkit-overflow-scrolling:touch
  }
  #wcom-cashier-app .wpc-cashier-status-strip::-webkit-scrollbar {
    display:none
  }
  #wcom-cashier-app .wpc-status-chip {
    flex:0 0 auto;
    white-space:nowrap
  }
  #wcom-cashier-app .wpc-main {
    padding:10px!important
  }
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap {
    overflow-x:auto!important
  }
}
/* phones */
@media (max-width:600px) {
  #wcom-cashier-app .wpc-head .wpc-brand {
    min-width:0
  }
  #wcom-cashier-app .wpc-head .wpc-session-meta {
    display:none!important
  }
  #wcom-cashier-app .wpc-searchbar #wpc-search {
    flex:1 1 140px!important
  }
  #wcom-cashier-app .wpc-searchbar .wpc-search-modes {
    flex:1 1 100%!important;
    order:5;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:4px!important
  }
  #wcom-cashier-app .wpc-searchbar .wpc-search-mode,#wcom-cashier-app .wpc-searchbar .wpc-search-scan {
    flex-direction:column;
    height:46px!important;
    gap:2px!important;
    padding:2px!important
  }
  #wcom-cashier-app .wpc-searchbar .wpc-search-mode span,#wcom-cashier-app .wpc-searchbar .wpc-search-scan span {
    font-size:10px!important
  }
  #wcom-cashier-app .wpc-searchbar .wpc-wholesale-switch {
    height:36px!important
  }
  #wcom-cashier-app .wpc-searchbar>#wpc-search-btn kbd {
    display:none
  }
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap td {
    padding:5px 4px!important;
    font-size:12px!important
  }
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap input {
    width:48px!important
  }
  #wcom-cashier-app .wpc-qty {
    gap:3px!important
  }
  #wcom-cashier-app .wpc-paid-row {
    grid-template-columns:minmax(0,1fr) 104px!important
  }
}
/* very narrow phones */
@media (max-width:380px) {
  #wcom-cashier-app .wpc-results {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important
  }
  #wcom-cashier-app .wpc-head .wpc-head-actions .wpc-btn {
    padding:0 9px!important;
    font-size:11px!important
  }
}
/* --- 6. Short screens --- */
@media (max-width:900px) and (max-height:520px) {
  /* landscape phone: don't let a fixed pay bar eat 20% of the screen */
  #wcom-cashier-app .wpc-checkout-panel .wpc-checkout-actions {
    position:static!important;
    box-shadow:none!important;
    border-radius:12px!important;
    margin:6px 0 0!important;
    padding:6px 0!important
  }
  #wcom-cashier-app.wcom-pro-cashier,#wcom-cashier-app.wcom-pro-cashier.wpc-has-items:not(.wpc-kb-open) {
    padding-bottom:12px!important
  }
  #wcom-cashier-app .wpc-head .wpc-brand .wpc-store-name {
    display:none!important
  }
  #wcom-cashier-app .wpc-results {
    grid-template-columns:repeat(auto-fill,minmax(120px,1fr))!important
  }
}
@media (min-width:901px) and (max-height:600px) {
  #wcom-cashier-app .wpc-cashier-status-strip {
    display:none!important
  }
  #wcom-cashier-app .wpc-checkout-actions #wpc-pay,#wcom-cashier-app .wpc-checkout-actions #wpc-hold {
    height:44px!important
  }
  #wcom-cashier-app .wpc-invoice-cart {
    min-height:130px!important
  }
}
/* ═══ 10 · Current-invoice height/scrollers, identity header (3.9.78) ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Order matters: later files override earlier ones. */

/* WebCom POS 3.9.78 — responsive current-invoice height fix */
#wcom-cashier-app .wpc-invoice-cart, .wcom-pro-cashier .wpc-invoice-cart {
  min-height:0!important;
  min-width:0!important
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap, .wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap {
  height:auto!important;
  min-height:110px!important;
  max-height:clamp(120px, 27vh, 230px)!important;
  overflow:auto!important;
  overflow-x:auto!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap table, .wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap table {
  margin:0!important
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap thead th, .wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap thead th {
  position:sticky!important;
  top:0!important;
  z-index:3!important
}
@media (max-height:800px) {
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap, .wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap {
    max-height:clamp(105px, 23vh, 185px)!important;
    min-height:100px!important
  }
}
@media (max-width:900px) {
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap, .wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap {
    max-height:32vh!important;
    min-height:100px!important
  }
}
@media (max-width:600px) {
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap, .wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap {
    max-height:28vh!important;
    min-height:90px!important
  }
}
@media (max-height:560px) and (min-width:901px) {
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap, .wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap {
    max-height:20vh!important;
    min-height:85px!important
  }
}
/* WebCom POS 3.9.78 — keep current-invoice vertical scrollbar visible across viewport sizes */
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap, .wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap {
  overflow-y:scroll!important;
  scrollbar-gutter:stable;
  scrollbar-width:auto;
  scrollbar-color:#7b8794 #edf1f5;
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap::-webkit-scrollbar, .wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap::-webkit-scrollbar {
  width:12px;
  height:12px;
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap::-webkit-scrollbar-track, .wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap::-webkit-scrollbar-track {
  background:#edf1f5;
  border-radius:8px;
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap::-webkit-scrollbar-thumb, .wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap::-webkit-scrollbar-thumb {
  background:#7b8794;
  border:2px solid #edf1f5;
  border-radius:8px;
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap::-webkit-scrollbar-thumb:hover, .wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap::-webkit-scrollbar-thumb:hover {
  background:#536273;
}
/* WebCom POS 3.9.78 — dedicated horizontal invoice scroller below the item list */
#wcom-cashier-app .wpc-invoice-cart {
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap {
  flex:1 1 auto!important;
  min-height:0!important;
  min-width:0!important;
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-hscroll {
  display:block!important;
  flex:0 0 16px!important;
  width:100%!important;
  height:16px!important;
  min-height:16px!important;
  overflow-x:scroll!important;
  overflow-y:hidden!important;
  direction:ltr!important;
  box-sizing:border-box!important;
  background:#edf1f5!important;
  border:1px solid #d4dce6!important;
  border-radius:8px!important;
  scrollbar-width:auto!important;
  scrollbar-color:#64748b #edf1f5!important;
  overscroll-behavior-x:contain!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-x!important;
  margin:4px 0 0!important;
}
#wcom-cashier-app .wpc-cart-hscroll-inner {
  height:1px!important;
  min-width:100%!important;
  pointer-events:none!important;
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-hscroll::-webkit-scrollbar {
  height:14px!important;
  display:block!important;
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-hscroll::-webkit-scrollbar-track {
  background:#edf1f5!important;
  border-radius:8px!important;
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-hscroll::-webkit-scrollbar-thumb {
  background:#64748b!important;
  border:2px solid #edf1f5!important;
  border-radius:8px!important;
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-hscroll:focus-visible {
  outline:2px solid #2563eb!important;
  outline-offset:1px!important;
}
@media(max-width:900px) {
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-hscroll {
    height:18px!important;
    min-height:18px!important;
    flex-basis:18px!important;
  }
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-hscroll::-webkit-scrollbar {
    height:16px!important;
  }
}
/* WebCom POS 3.9.78 — persistent custom vertical invoice scrollbar (all cashier wrappers) */
#wcom-cashier-app .wpc-invoice-cart,.wcom-pro-cashier .wpc-invoice-cart {
  position:relative!important;
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap,.wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap {
  padding-inline-end:26px!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap::-webkit-scrollbar,.wcom-pro-cashier .wpc-invoice-cart .wpc-cart-wrap::-webkit-scrollbar {
  width:0!important;
  height:0!important;
  display:none!important;
}
#wcom-cashier-app .wpc-invoice-cart .wpc-cart-vrail,.wcom-pro-cashier .wpc-invoice-cart .wpc-cart-vrail {
  position:absolute!important;
  z-index:999!important;
  top:42px!important;
  bottom:24px!important;
  inset-inline-end:2px!important;
  width:22px!important;
  min-width:22px!important;
  display:flex!important;
  visibility:visible!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:3px!important;
  padding:3px 2px!important;
  box-sizing:border-box!important;
  background:#edf1f5!important;
  border:1px solid #94a3b8!important;
  border-radius:10px!important;
  touch-action:none!important;
  user-select:none!important;
  opacity:1!important;
}
#wcom-cashier-app .wpc-cart-vrail button,.wcom-pro-cashier .wpc-cart-vrail button {
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 18px!important;
  width:16px!important;
  min-width:16px!important;
  height:18px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:4px!important;
  background:#cbd5e1!important;
  color:#1e293b!important;
  font-size:9px!important;
  line-height:1!important;
  cursor:pointer!important;
}
#wcom-cashier-app .wpc-cart-vrail .wpc-vscroll-track,.wcom-pro-cashier .wpc-cart-vrail .wpc-vscroll-track {
  position:relative!important;
  flex:1 1 auto!important;
  width:100%!important;
  min-height:24px!important;
  background:#e2e8f0!important;
  border-radius:7px!important;
  cursor:pointer!important;
}
#wcom-cashier-app .wpc-cart-vrail .wpc-vscroll-thumb,.wcom-pro-cashier .wpc-cart-vrail .wpc-vscroll-thumb {
  position:absolute!important;
  inset-inline:1px!important;
  top:0;
  min-height:28px!important;
  background:#475569!important;
  border:1px solid #334155!important;
  border-radius:7px!important;
  cursor:grab!important;
  touch-action:none!important;
}
#wcom-cashier-app .wpc-cart-vrail .wpc-vscroll-thumb:active,.wcom-pro-cashier .wpc-cart-vrail .wpc-vscroll-thumb:active {
  cursor:grabbing!important;
  background:#334155!important;
}
#wcom-cashier-app .wpc-cart-vrail:focus-visible,.wcom-pro-cashier .wpc-cart-vrail:focus-visible {
  outline:2px solid #2563eb!important;
  outline-offset:1px!important;
}
/* Invoice preview moved below the product grid (responsive layout repair) */
#wcom-cashier-app .wpc-layout {
  align-items:stretch!important
}
#wcom-cashier-app .wpc-main {
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important
}
#wcom-cashier-app .wpc-main .wpc-invoice-cart {
  display:flex!important;
  flex-direction:column!important;
  flex:0 0 auto!important;
  width:100%!important;
  min-width:0!important;
  margin-top:auto!important;
  padding:10px!important;
  border:1px solid #dbe5ef!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(15,23,42,.045)!important
}
#wcom-cashier-app .wpc-main .wpc-side-invoice-head {
  flex:0 0 auto!important
}
#wcom-cashier-app .wpc-main .wpc-invoice-cart .wpc-cart-wrap {
  flex:0 1 auto!important;
  width:100%!important;
  min-height:80px!important;
  height:auto!important;
  max-height:clamp(120px,25vh,240px)!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  border:1px solid #e6ebf1!important;
  border-radius:9px!important;
  background:#fff!important
}
#wcom-cashier-app .wpc-main .wpc-invoice-cart .wpc-empty {
  height:100px!important;
  min-height:100px!important
}
#wcom-cashier-app .wpc-main .wpc-invoice-cart .wpc-cart-hscroll {
  flex:0 0 auto!important
}
#wcom-cashier-app .wpc-side {
  display:block!important;
  min-width:0!important
}
#wcom-cashier-app .wpc-side .wpc-checkout-panel {
  width:100%!important;
  max-height:100%!important
}
@media(max-width:1050px) {
  #wcom-cashier-app .wpc-main {
    display:flex!important;
    flex-direction:column!important;
    overflow:visible!important
  }
  #wcom-cashier-app .wpc-main .wpc-invoice-cart {
    margin-top:14px!important
  }
  #wcom-cashier-app .wpc-main .wpc-invoice-cart .wpc-cart-wrap {
    max-height:42vh!important
  }
  #wcom-cashier-app .wpc-side {
    height:auto!important;
    overflow:visible!important
  }
}
@media(max-width:600px) {
  #wcom-cashier-app .wpc-main .wpc-invoice-cart {
    padding:8px!important;
    margin-top:10px!important
  }
  #wcom-cashier-app .wpc-main .wpc-invoice-cart .wpc-cart-wrap {
    max-height:38vh!important;
    min-height:90px!important
  }
  #wcom-cashier-app .wpc-main .wpc-side-invoice-head>div span {
    font-size:13px!important
  }
}
/* WebCom POS 3.9.78 — cashier identity header polish (scoped to header only) */
.wcom-pro-cashier .wpc-head .wpc-brand {
  min-width:0;
  max-width:100%;
}
.wcom-pro-cashier .wpc-brand .wpc-store-name {
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:0 0 5px;
  padding:4px 10px;
  border:1px solid rgba(191,219,254,.32);
  border-radius:999px;
  background:rgba(96,165,250,.16);
  color:#dbeafe!important;
  font-size:12px;
  font-weight:800;
  letter-spacing:0;
  opacity:1;
  text-shadow:none!important;
}
.wcom-pro-cashier .wpc-brand h2 {
  font-size:29px!important;
  font-weight:900!important;
  letter-spacing:-.4px;
  line-height:1.15;
  margin:0 0 8px!important;
  color:#fff!important;
  text-shadow:0 2px 10px rgba(0,0,0,.16)!important;
}
.wcom-pro-cashier .wpc-session-meta {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px 7px;
  margin-top:7px;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.wcom-pro-cashier .wpc-session-meta span {
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:28px;
  padding:5px 9px;
  border:1px solid rgba(191,219,254,.22);
  border-radius:9px;
  background:rgba(255,255,255,.095);
  color:#dbeafe!important;
  font-size:11px;
  font-weight:700;
  line-height:1.35;
  text-shadow:none!important;
  white-space:nowrap;
}
.wcom-pro-cashier .wpc-session-meta span b {
  color:#fff!important;
  font-weight:900;
  text-shadow:none!important;
}
@media(max-width:700px) {
  .wcom-pro-cashier .wpc-head {
    align-items:flex-start;
    gap:10px;
    padding:12px!important
  }
  .wcom-pro-cashier .wpc-brand h2 {
    font-size:22px!important
  }
  .wcom-pro-cashier .wpc-session-meta {
    gap:5px
  }
  .wcom-pro-cashier .wpc-session-meta span {
    font-size:10px;
    padding:5px 7px;
    white-space:normal
  }
}
/* WebCom POS 3.9.78 — mobile: hide custom invoice scrollbar so it cannot cover checkout */
@media (max-width: 600px) {
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-vrail, .wcom-pro-cashier .wpc-invoice-cart .wpc-cart-vrail {
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  #wcom-cashier-app .wpc-invoice-cart .wpc-cart-wrap {
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:thin;
  }
}
/* ═══ 11 · Product-entry fields, clothing variants, restock variants, search result cards (3.9.84 – 3.9.96) ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Order matters: later files override earlier ones. */

/* WebCom POS 3.9.84 — product-entry fields: prevent clipped labels and controls */
.wcom-a-view[data-view="products"] .wcom-a-grid {
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:start;
  column-gap:12px;
  row-gap:14px;
}
.wcom-a-view[data-view="products"] .wcom-a-grid>label {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:6px;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
  line-height:1.55;
  overflow-wrap:anywhere;
}
.wcom-a-view[data-view="products"] .wcom-a-grid input:not([type="checkbox"]), .wcom-a-view[data-view="products"] .wcom-a-grid select, .wcom-a-view[data-view="products"] .wcom-a-grid textarea {
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  min-height:42px;
  height:auto;
  box-sizing:border-box;
  padding:10px 12px;
  line-height:1.5;
  font:inherit;
  border-radius:10px;
}
.wcom-a-view[data-view="products"] .wcom-a-grid select {
  white-space:normal;
  text-overflow:clip;
  padding-inline:10px;
}
.wcom-a-view[data-view="products"] .wcom-a-grid label small {
  display:block;
  line-height:1.6;
  white-space:normal;
  overflow-wrap:anywhere;
}
.wcom-a-view[data-view="products"] .wcom-a-grid label:has(input[type="checkbox"]) {
  flex-direction:row;
  align-items:center;
  gap:9px;
  min-height:42px;
}
.wcom-a-view[data-view="products"] .wcom-a-grid input[type="checkbox"] {
  flex:0 0 auto;
  width:16px;
  height:16px;
  margin:0;
}
@media(max-width:1100px) {
  .wcom-a-view[data-view="products"] .wcom-a-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:600px) {
  .wcom-a-view[data-view="products"] .wcom-a-grid {
    grid-template-columns:minmax(0,1fr);
  }
}
/* ===== Clothing variants picker (3.9.90) ===== */
.wpc-variant-badge {
  display:inline-block;
  margin-top:6px;
  padding:3px 8px;
  border-radius:999px;
  background:#eef2ff;
  color:#3730a3;
  font-size:11px;
  font-weight:800;
}
.wpc-result.has-variants {
  border-color:#c7d2fe;
  box-shadow:0 0 0 1px #e0e7ff inset
}
.wpc-result.has-variants:hover {
  border-color:#818cf8
}
.wpc-variant-matrix {
  display:flex;
  flex-direction:column;
  gap:6px;
  margin:12px 0;
  max-width:100%;
  overflow:auto
}
.wpc-variant-matrix-head,.wpc-variant-matrix-row {
  display:grid;
  grid-template-columns:28px minmax(70px,1fr) repeat(auto-fit,minmax(52px,1fr));
  gap:6px;
  align-items:center
}
.wpc-variant-matrix-head {
  font-size:12px;
  font-weight:800;
  color:#64748b
}
.wpc-v-size {
  text-align:center
}
.wpc-v-color {
  font-weight:800;
  font-size:13px
}
.wpc-color-swatch {
  width:18px;
  height:18px;
  border-radius:50%;
  border:1px solid #cbd5e1;
  display:inline-block;
  vertical-align:middle;
  flex-shrink:0
}
.wpc-v-cell {
  min-height:48px;
  border-radius:10px;
  border:1px solid #e2e8f0;
  background:#f8fafc;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  padding:4px;
  font-size:12px;
  transition:.15s
}
.wpc-v-cell b {
  font-size:13px
}
.wpc-v-cell small {
  color:#64748b;
  font-weight:700
}
.wpc-v-cell.ok:hover {
  background:#4f46e5;
  color:#fff;
  border-color:#4f46e5
}
.wpc-v-cell.ok:hover small {
  color:#e0e7ff
}
.wpc-v-cell.out,.wpc-v-cell.empty {
  opacity:.45;
  cursor:not-allowed;
  background:#f1f5f9
}
.wpc-v-cell.out {
  color:#b91c1c
}
.wpc-variant-list {
  display:flex;
  flex-direction:column;
  gap:8px;
  margin:12px 0
}
.wpc-v-flat {
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-radius:12px;
  border:1px solid #e2e8f0;
  background:#fff;
  cursor:pointer;
  text-align:right;
  width:100%
}
.wpc-v-flat.ok:hover {
  border-color:#818cf8;
  background:#eef2ff
}
.wpc-v-flat.out {
  opacity:.5;
  cursor:not-allowed
}
.wpc-v-flat-name {
  flex:1;
  font-weight:800
}
.wpc-v-flat-price {
  font-weight:800;
  color:#0f172a
}
.wpc-v-flat-stock {
  font-size:12px;
  color:#64748b;
  font-weight:700
}
@media (max-width:520px) {
  .wpc-variant-matrix-head,.wpc-variant-matrix-row {
    grid-template-columns:22px minmax(56px,.9fr) repeat(auto-fit,minmax(44px,1fr));
    gap:4px
  }
  .wpc-v-cell {
    min-height:42px;
    font-size:11px
  }
}
/* 3.9.95 — نموذج منتج جديد: منتج بمتغيرات (ملابس) */
#fm-p-type {
  margin-top:0
}
.wcom-apx-box {
  margin:14px 0;
  padding:16px;
  border:1px solid #c7d2fe;
  background:#f8faff;
  border-radius:14px
}
.wcom-apx-head {
  display:flex;
  flex-direction:column;
  gap:4px;
  margin-bottom:12px
}
.wcom-apx-head b {
  font-size:16px;
  color:#1e1b4b
}
.wcom-apx-cols {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-bottom:12px
}
.wcom-apx-col {
  display:flex;
  flex-direction:column;
  gap:8px
}
.wcom-apx-col textarea {
  width:100%;
  box-sizing:border-box;
  border:1px solid #cbd5e1;
  border-radius:10px;
  padding:10px;
  font-size:14px
}
.wcom-apx-col label small {
  display:block;
  color:#64748b;
  font-weight:400;
  margin:2px 0 6px
}
.wcom-apx-presets {
  display:flex;
  flex-wrap:wrap;
  gap:6px
}
.wcom-apx-presets button {
  border:1px solid #cbd5e1;
  background:#fff;
  border-radius:999px;
  padding:4px 12px;
  font-size:12px;
  font-weight:700;
  color:#334155;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:5px
}
.wcom-apx-presets button:hover {
  background:#eef2ff;
  border-color:#818cf8
}
.wcom-apx-presets button i,.wcom-apx-chip i,.wcom-apx-sw {
  display:inline-block;
  width:12px;
  height:12px;
  border-radius:50%;
  border:1px solid #cbd5e1;
  vertical-align:middle
}
.wcom-apx-sw {
  margin-left:6px
}
.wcom-apx-chips {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  min-height:6px
}
.wcom-apx-chip {
  background:#eef2ff;
  color:#3730a3;
  padding:3px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  display:inline-flex;
  align-items:center;
  gap:5px
}
.wcom-apx-grid-wrap {
  overflow:auto;
  margin:12px 0;
  border-radius:12px
}
.wcom-apx-table {
  min-width:100%
}
.wcom-apx-table th {
  white-space:nowrap
}
.wcom-apx-table td {
  padding:4px
}
.wcom-apx-table .fm-apx-q {
  width:72px;
  text-align:center;
  border:1px solid #cbd5e1;
  border-radius:8px;
  padding:6px
}
@media(max-width:700px) {
  .wcom-apx-cols {
    grid-template-columns:1fr
  }
}
/* 3.9.96 — توريد متغيرات منتج موجود + عرض المتغيرات في قائمة المنتجات */
.wcom-apx-badge {
  display:inline-block;
  background:#eef2ff;
  color:#3730a3;
  border-radius:999px;
  padding:2px 9px;
  font-size:11px;
  font-weight:800;
  vertical-align:middle
}
.wcom-apx-na {
  color:#cbd5e1;
  text-align:center
}
.wcom-apx-cur {
  display:block;
  font-size:11px;
  color:#64748b;
  margin-top:2px;
  text-align:center
}
.wcom-apx-detail>td {
  background:#f8faff;
  padding:12px 16px!important
}
.wcom-apx-detail-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px
}
.wcom-apx-stock {
  text-align:center;
  font-weight:700
}
.wcom-apx-stock.out {
  color:#b91c1c;
  background:#fef2f2
}
.wcom-apx-stock.low {
  color:#b45309;
  background:#fffbeb
}
.wcom-apx-total {
  text-align:center;
  font-weight:800;
  color:#0f172a
}
.wcom-apx-total-row th,.wcom-apx-total-row td {
  border-top:2px solid #c7d2fe
}
.fm-product-variants.active {
  background:#eef2ff;
  border-color:#818cf8
}
#wcom-cashier-app .wpc-result {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:4px;
  padding:12px 12px 10px;
  text-align:right;
  min-height:88px
}
#wcom-cashier-app .wpc-result-name {
  font-weight:800;
  font-size:14px;
  color:#0f172a;
  line-height:1.35;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden
}
#wcom-cashier-app .wpc-result-price {
  font-size:13px;
  font-weight:700;
  color:#1d4ed8
}
#wcom-cashier-app .wpc-result-meta {
  font-size:11px;
  color:#64748b;
  line-height:1.4
}
#wcom-cashier-app .wpc-result-badge {
  display:inline-block;
  margin-top:2px;
  padding:2px 8px;
  border-radius:999px;
  background:#eef2ff;
  color:#3730a3;
  font-size:10px;
  font-weight:700;
  align-self:flex-start
}
#wcom-cashier-app .wpc-result.has-variants {
  border-color:#a5b4fc;
  background:linear-gradient(180deg,#fff 0%,#f8faff 100%)
}
/* Search result cards — product name always visible (including variant products) */
#wcom-cashier-app .wpc-result {
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:5px!important;
  padding:12px!important;
  text-align:right!important;
  min-height:96px!important;
  overflow:visible!important;
}
#wcom-cashier-app .wpc-result .wpc-result-name, #wcom-cashier-app .wpc-result b.wpc-result-name, #wcom-cashier-app .wpc-result > b {
  display:block!important;
  font-weight:800!important;
  font-size:15px!important;
  color:#0f172a!important;
  line-height:1.4!important;
  margin:0 0 2px!important;
  max-height:none!important;
  overflow:visible!important;
  white-space:normal!important;
  -webkit-line-clamp:unset!important;
  opacity:1!important;
  visibility:visible!important;
}
#wcom-cashier-app .wpc-result .wpc-result-price, #wcom-cashier-app .wpc-result span.wpc-result-price {
  display:block!important;
  font-size:13px!important;
  font-weight:700!important;
  color:#1d4ed8!important;
  margin:0!important;
}
#wcom-cashier-app .wpc-result .wpc-result-meta, #wcom-cashier-app .wpc-result span.wpc-result-meta {
  display:block!important;
  font-size:11px!important;
  color:#64748b!important;
  margin:0!important;
}
#wcom-cashier-app .wpc-result-badge {
  display:inline-block!important;
  margin-top:4px!important;
  padding:2px 8px!important;
  border-radius:999px!important;
  background:#eef2ff!important;
  color:#3730a3!important;
  font-size:10px!important;
  font-weight:700!important;
}
#wcom-cashier-app .wpc-result.has-variants {
  border-color:#a5b4fc!important;
  background:#fff!important;
}
/* ═══ 12 · Cashier UX 3.9.102: sticky search, payment methods, summary, variant matrix, favorites ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Order matters: later files override earlier ones. */

/* ========== Cashier UX 3.9.102 ========== */
/* Sticky search */
#wcom-cashier-app .wpc-search-sticky {
  position:sticky;
  top:0;
  z-index:40;
  background:rgba(248,250,252,.96);
  backdrop-filter:blur(8px);
  padding:8px 0 10px;
  margin:0 0 8px;
  border-bottom:1px solid #e2e8f0;
}
#wcom-cashier-app .wpc-searchbar {
  min-height:54px
}
/* Head more menu */
#wcom-cashier-app .wpc-head-actions {
  position:relative;
  flex-wrap:wrap;
  gap:8px
}
#wcom-cashier-app .wpc-more-menu {
  display:none;
  position:absolute;
  top:calc(100% + 6px);
  left:0;
  z-index:80;
  min-width:220px;
  padding:8px;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:14px;
  box-shadow:0 16px 40px rgba(15,23,42,.16);
  flex-direction:column;
  gap:6px;
}
#wcom-cashier-app .wpc-more-menu.is-open {
  display:flex
}
#wcom-cashier-app .wpc-more-menu .wpc-btn, #wcom-cashier-app .wpc-more-menu a.wpc-btn {
  width:100%;
  justify-content:flex-start
}
#wcom-cashier-app .wpc-more-toggle[aria-expanded="true"] {
  background:#e2e8f0
}
/* Payment methods — larger touch targets */
#wcom-cashier-app .wpc-payment-methods {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}
#wcom-cashier-app .wpc-method-btn {
  min-height:48px!important;
  font-size:15px!important;
  font-weight:800!important;
  border-radius:12px!important;
  border:2px solid #e2e8f0!important;
  background:#fff!important;
}
#wcom-cashier-app .wpc-method-btn.active {
  border-color:var(--cashier-primary,#2563eb)!important;
  background:color-mix(in srgb, var(--cashier-primary,#2563eb) 12%, #fff)!important;
  color:var(--cashier-primary,#2563eb)!important;
  box-shadow:0 0 0 3px color-mix(in srgb, var(--cashier-primary,#2563eb) 18%, transparent);
}
/* Invoice summary hierarchy */
#wcom-cashier-app .wpc-summary {
  display:flex;
  flex-direction:column;
  gap:8px
}
#wcom-cashier-app .wpc-summary-items {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:8px 10px;
  background:#f8fafc;
  border-radius:10px;
  border:1px solid #e2e8f0;
}
#wcom-cashier-app .wpc-summary-items b {
  font-size:18px;
  color:#0f172a
}
#wcom-cashier-app .wpc-summary .grand {
  display:flex!important;
  flex-wrap:wrap;
  align-items:baseline;
  justify-content:space-between;
  gap:6px;
  padding:14px 12px!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#eff6ff,#f8fbff)!important;
  border:1px solid #bfdbfe!important;
}
#wcom-cashier-app .wpc-summary .grand span {
  font-size:14px;
  font-weight:700;
  color:#1e40af
}
#wcom-cashier-app .wpc-summary .grand strong {
  font-size:32px!important;
  line-height:1!important;
  color:#0f172a!important;
  letter-spacing:-.5px;
}
#wcom-cashier-app .wpc-paid-row .wpc-change strong {
  font-size:18px!important;
  color:#15803d
}
#wcom-cashier-app .wpc-paid-row input#wpc-paid {
  min-height:44px;
  font-size:18px;
  font-weight:700
}
/* Checkout actions */
#wcom-cashier-app .wpc-checkout-actions {
  display:grid!important;
  grid-template-columns:minmax(90px,.7fr) minmax(0,1.4fr)!important;
  gap:10px!important;
}
#wcom-cashier-app .wpc-checkout-actions #wpc-pay, #wcom-cashier-app .wpc-checkout-actions .wpc-pay {
  min-height:58px!important;
  font-size:18px!important;
  font-weight:900!important;
  border-radius:14px!important;
}
#wcom-cashier-app .wpc-checkout-actions #wpc-hold {
  min-height:58px!important;
  font-size:15px!important;
  border-radius:14px!important
}
/* Print row */
#wcom-cashier-app .wpc-print-row {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 12px;
  margin:8px 0 4px;
}
#wcom-cashier-app .wpc-print-method-badge {
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:4px 10px;
  border-radius:999px;
  background:#f1f5f9;
  color:#334155;
  font-size:11px;
  font-weight:800;
}
#wcom-cashier-app .wpc-print-method-badge.is-qz {
  background:#ecfdf5;
  color:#047857
}
#wcom-cashier-app .wpc-print-method-badge.is-rawbt {
  background:#eff6ff;
  color:#1d4ed8
}
#wcom-cashier-app #wcom-cash-print-last {
  font-weight:700
}
/* Variant matrix — larger touch cells */
#wcom-cashier-app .wpc-variant-matrix, .wpc-variant-matrix {
  overflow:auto;
  max-width:100%
}
.wpc-variant-matrix-head, .wpc-variant-matrix-row {
  display:grid;
  grid-template-columns:minmax(72px,90px) repeat(auto-fit,minmax(64px,1fr));
  gap:8px;
  align-items:center;
  margin-bottom:8px;
}
.wpc-variant-matrix-head .wpc-v-size {
  text-align:center;
  font-weight:800;
  font-size:13px;
  color:#334155;
  padding:6px 4px;
}
.wpc-v-cell {
  min-height:64px!important;
  min-width:64px!important;
  border-radius:12px!important;
  border:2px solid #e2e8f0!important;
  background:#fff!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
  font-weight:800!important;
  cursor:pointer;
  padding:8px 4px!important;
}
.wpc-v-cell b {
  font-size:15px
}
.wpc-v-cell small {
  font-size:11px;
  font-weight:700;
  color:#64748b
}
.wpc-v-cell.ok:hover {
  border-color:#2563eb!important;
  background:#eff6ff!important
}
.wpc-v-cell.out {
  opacity:.45;
  cursor:not-allowed;
  background:#f8fafc!important
}
.wpc-v-cell.empty {
  opacity:.25;
  cursor:default
}
.wpc-color-swatch {
  width:14px;
  height:14px;
  border-radius:50%;
  border:1px solid #cbd5e1;
  display:inline-block;
  margin-left:6px
}
.wpc-v-color {
  font-weight:800;
  font-size:13px
}
/* Favorites on quick cards */
#wcom-cashier-app .wpc-quick-card {
  position:relative
}
#wcom-cashier-app .wpc-quick-card .wpc-fav-star {
  position:absolute;
  top:6px;
  left:6px;
  z-index:2;
  border:0;
  background:rgba(255,255,255,.9);
  width:28px;
  height:28px;
  border-radius:999px;
  cursor:pointer;
  font-size:14px;
  line-height:1;
  box-shadow:0 2px 8px rgba(15,23,42,.1);
}
#wcom-cashier-app .wpc-quick-card.is-favorite {
  border-color:#f59e0b!important;
  box-shadow:0 0 0 2px rgba(245,158,11,.25);
}
#wcom-cashier-app .wpc-fav-hint {
  color:#94a3b8;
  font-size:11px;
  font-weight:600;
  margin-right:auto
}
/* Search result type chips already exist — enhance stock colors */
#wcom-cashier-app .wpc-result.is-low {
  border-color:#fdba74
}
#wcom-cashier-app .wpc-result.is-out {
  border-color:#fca5a5;
  opacity:.85
}
@media (max-width:900px) {
  #wcom-cashier-app .wpc-search-sticky {
    top:0
  }
  #wcom-cashier-app .wpc-method-btn {
    min-height:52px!important
  }
  .wpc-v-cell {
    min-height:72px!important;
    min-width:72px!important
  }
}
/* ═══ 13 · Compact header, More menu, responsive header (3.9.103 – 3.9.108) ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Order matters: later files override earlier ones. */

/* Top bar: reduce HEIGHT only (3.9.103) */
#wcom-cashier-app .wpc-head {
  padding:6px 10px!important;
  min-height:0!important;
  align-items:center!important;
  gap:8px!important;
}
#wcom-cashier-app .wpc-brand h2 {
  font-size:16px!important;
  margin:0!important;
  line-height:1.2!important
}
#wcom-cashier-app .wpc-store-name {
  font-size:13px!important;
  line-height:1.2!important
}
#wcom-cashier-app .wpc-session-meta {
  font-size:11px!important;
  gap:6px!important;
  margin-top:2px!important
}
#wcom-cashier-app .wpc-session-meta span {
  font-size:11px!important
}
#wcom-cashier-app .wpc-head-actions .wpc-btn, #wcom-cashier-app .wpc-head-actions a.wpc-btn {
  min-height:32px!important;
  height:32px!important;
  padding:0 10px!important;
  font-size:12px!important;
  line-height:32px!important;
  border-radius:8px!important;
}
#wcom-cashier-app .wpc-more-toggle {
  min-width:32px!important;
  width:auto!important;
  padding:0 10px!important;
  font-size:12px!important;
  min-height:32px!important;
  height:32px!important;
}
#wcom-cashier-app .wpc-context-card {
  min-height:32px!important;
  padding:4px 10px!important;
  border-radius:8px!important;
}
#wcom-cashier-app .wpc-context-card b {
  font-size:12px!important
}
#wcom-cashier-app .wpc-context-card small {
  font-size:10px!important
}
#wcom-cashier-app .wcom-cashier-warehouse-switch {
  min-height:32px!important;
  padding:2px 8px!important;
}
#wcom-cashier-app .wcom-cashier-warehouse-switch select {
  min-height:28px!important;
  height:28px!important;
  font-size:12px!important;
  padding:0 6px!important;
}
#wcom-cashier-app .wpc-cashier-status-strip {
  padding:4px 8px!important;
  min-height:0!important;
  gap:6px!important;
}
#wcom-cashier-app .wpc-status-chip {
  font-size:11px!important;
  padding:2px 8px!important
}
/* More dropdown — reliable panel (3.9.104) */
#wcom-cashier-app .wpc-head-actions {
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
}
#wcom-cashier-app .wpc-more-toggle {
  min-height:32px!important;
  height:32px!important;
  padding:0 12px!important;
  font-size:12px!important;
  font-weight:800!important;
  border-radius:8px!important;
  position:relative!important;
  z-index:90;
}
#wcom-cashier-app .wpc-more-toggle.is-open, #wcom-cashier-app .wpc-more-toggle[aria-expanded="true"] {
  background:#e2e8f0!important;
  color:#0f172a!important;
}
#wcom-cashier-app .wpc-more-menu {
  display:none!important;
  position:absolute!important;
  top:calc(100% + 6px)!important;
  left:0!important;
  right:auto!important;
  z-index:9999!important;
  min-width:240px!important;
  max-width:min(320px,92vw)!important;
  padding:8px!important;
  margin:0!important;
  background:#fff!important;
  border:1px solid #e2e8f0!important;
  border-radius:12px!important;
  box-shadow:0 12px 40px rgba(15,23,42,.18)!important;
  flex-direction:column!important;
  gap:4px!important;
}
#wcom-cashier-app .wpc-more-menu.is-open {
  display:flex!important;
}
#wcom-cashier-app .wpc-more-menu .wpc-btn, #wcom-cashier-app .wpc-more-menu a.wpc-btn {
  width:100%!important;
  justify-content:flex-start!important;
  text-align:right!important;
  min-height:40px!important;
  height:auto!important;
  padding:8px 12px!important;
  font-size:13px!important;
  border-radius:8px!important;
  box-shadow:none!important;
}
#wcom-cashier-app .wpc-more-menu .wpc-btn:hover, #wcom-cashier-app .wpc-more-menu a.wpc-btn:hover {
  background:#f1f5f9!important;
}
/* ===== Compact header redesign 3.9.105 ===== */
#wcom-cashier-app .wpc-head.wpc-head-compact {
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px 14px!important;
  padding:8px 12px!important;
  min-height:52px!important;
  max-height:none!important;
  background:linear-gradient(135deg,#0f172a 0%,#1e3a8a 100%)!important;
  border-radius:14px!important;
  color:#e2e8f0!important;
  box-shadow:0 8px 24px rgba(15,23,42,.18)!important;
  margin:0 0 6px!important;
}
#wcom-cashier-app .wpc-head-work {
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}
#wcom-cashier-app .wpc-shift-pill {
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  border:0!important;
  cursor:pointer!important;
  background:#16a34a!important;
  color:#fff!important;
  padding:6px 12px!important;
  border-radius:999px!important;
  font-family:inherit!important;
  min-height:34px!important;
  box-shadow:0 4px 12px rgba(22,163,74,.25)!important;
}
#wcom-cashier-app .wpc-shift-pill.is-closed {
  background:#f59e0b!important;
  box-shadow:0 4px 12px rgba(245,158,11,.25)!important;
}
#wcom-cashier-app .wpc-shift-pill.is-closed .wpc-shift-dot {
  background:#fff!important
}
#wcom-cashier-app .wpc-shift-dot {
  width:8px;
  height:8px;
  border-radius:50%;
  background:#bbf7d0;
  box-shadow:0 0 0 3px rgba(255,255,255,.25);
}
#wcom-cashier-app .wpc-shift-label {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  line-height:1.15
}
#wcom-cashier-app .wpc-shift-label small {
  font-size:10px;
  opacity:.9;
  font-weight:600
}
#wcom-cashier-app .wpc-shift-label b {
  font-size:13px;
  font-weight:800
}
#wcom-cashier-app .wpc-wh-pill {
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  background:rgba(255,255,255,.1)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:999px!important;
  padding:4px 10px 4px 8px!important;
  min-height:34px!important;
  color:#e2e8f0!important;
}
#wcom-cashier-app .wpc-wh-pill select {
  background:transparent!important;
  border:0!important;
  color:#fff!important;
  font-weight:700!important;
  font-size:12px!important;
  min-height:26px!important;
  outline:none!important;
  max-width:160px;
}
#wcom-cashier-app .wpc-wh-pill select option {
  color:#0f172a
}
#wcom-cashier-app .wpc-head-live {
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  font-size:12px!important;
  color:rgba(226,232,240,.85)!important;
  text-align:center!important;
}
#wcom-cashier-app .wpc-live-item b {
  color:#fff!important;
  font-weight:700
}
#wcom-cashier-app .wpc-live-sep {
  opacity:.5
}
#wcom-cashier-app .wpc-live-dot {
  display:inline-block;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#22c55e;
  margin-left:4px;
}
#wcom-cashier-app .wpc-head-actions {
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  position:relative!important;
  justify-content:flex-end!important;
}
#wcom-cashier-app .wpc-head-compact .wpc-icon-btn {
  min-width:34px!important;
  width:auto!important;
  min-height:34px!important;
  height:34px!important;
  padding:0 10px!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.1)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.14)!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:34px!important;
}
#wcom-cashier-app .wpc-head-compact .wpc-icon-btn:hover {
  background:rgba(255,255,255,.18)!important
}
#wcom-cashier-app .wpc-head-compact .wpc-logout-btn {
  min-height:34px!important;
  height:34px!important;
  padding:0 12px!important;
  border-radius:10px!important;
  border:0!important;
  background:#dc2626!important;
  color:#fff!important;
  font-weight:800!important;
  font-size:12px!important;
}
#wcom-cashier-app .wpc-head-compact .wpc-more-menu {
  top:calc(100% + 8px)!important;
  left:0!important;
  right:auto!important;
  background:#fff!important;
  color:#0f172a!important;
  z-index:10000!important;
}
#wcom-cashier-app .wpc-meta-strip {
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  padding:4px 8px 8px!important;
  min-height:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  font-size:11px!important;
  color:#64748b!important;
}
#wcom-cashier-app .wpc-meta-strip .wpc-meta-brand {
  margin-right:auto;
  opacity:.7
}
#wcom-cashier-app .wpc-meta-sep {
  opacity:.45
}
#wcom-cashier-app .wpc-meta-user b {
  color:#334155;
  font-weight:700
}
/* hide legacy brand blocks if any remain */
#wcom-cashier-app .wpc-head-compact .wpc-brand, #wcom-cashier-app .wpc-head-compact .wpc-context-group {
  display:none!important
}
@media (max-width:900px) {
  #wcom-cashier-app .wpc-head.wpc-head-compact {
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  #wcom-cashier-app .wpc-head-live {
    order:3;
    justify-content:flex-start!important
  }
  #wcom-cashier-app .wpc-head-actions {
    order:2;
    justify-content:flex-start!important
  }
}
/* ===== More menu polish 3.9.106 ===== */
#wcom-cashier-app .wpc-more-wrap {
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important
}
#wcom-cashier-app .wpc-head-work .wpc-more-toggle {
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  min-height:34px!important;
  height:34px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:800!important;
  cursor:pointer!important;
  font-family:inherit!important;
}
#wcom-cashier-app .wpc-head-work .wpc-more-toggle.is-open, #wcom-cashier-app .wpc-head-work .wpc-more-toggle[aria-expanded="true"] {
  background:#fff!important;
  color:#0f172a!important;
  border-color:#fff!important;
}
#wcom-cashier-app .wpc-more-menu {
  display:none!important;
  position:absolute!important;
  top:calc(100% + 10px)!important;
  right:0!important;
  left:auto!important;
  z-index:10050!important;
  min-width:260px!important;
  max-width:min(320px,92vw)!important;
  padding:8px!important;
  margin:0!important;
  background:#fff!important;
  color:#0f172a!important;
  border:1px solid #e2e8f0!important;
  border-radius:14px!important;
  box-shadow:0 18px 50px rgba(15,23,42,.22)!important;
  flex-direction:column!important;
  gap:4px!important;
}
#wcom-cashier-app .wpc-more-menu.is-open {
  display:flex!important
}
#wcom-cashier-app .wpc-more-item {
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  text-align:right!important;
  min-height:44px!important;
  padding:8px 12px!important;
  border:0!important;
  border-radius:10px!important;
  background:#f8fafc!important;
  color:#0f172a!important;
  font-family:inherit!important;
  font-size:13px!important;
  font-weight:700!important;
  cursor:pointer!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
#wcom-cashier-app .wpc-more-item:hover {
  filter:brightness(0.97);
  transform:translateY(-1px)
}
#wcom-cashier-app .wpc-mi-ico {
  width:28px;
  height:28px;
  border-radius:8px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  flex-shrink:0;
}
#wcom-cashier-app .wpc-mi-text {
  flex:1;
  text-align:right
}
#wcom-cashier-app .wpc-more-item b {
  min-width:22px;
  height:22px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  background:rgba(15,23,42,.08);
  color:#0f172a;
}
/* per-item accent colors */
#wcom-cashier-app .wpc-more-held {
  background:#eff6ff!important
}
#wcom-cashier-app .wpc-more-held .wpc-mi-ico {
  background:#dbeafe
}
#wcom-cashier-app .wpc-more-sync {
  background:#f0fdf4!important
}
#wcom-cashier-app .wpc-more-sync .wpc-mi-ico {
  background:#dcfce7
}
#wcom-cashier-app .wpc-more-sales {
  background:#f8fafc!important
}
#wcom-cashier-app .wpc-more-sales .wpc-mi-ico {
  background:#e2e8f0
}
#wcom-cashier-app .wpc-more-returns {
  background:#fff7ed!important
}
#wcom-cashier-app .wpc-more-returns .wpc-mi-ico {
  background:#ffedd5
}
#wcom-cashier-app .wpc-more-lookup {
  background:#f5f3ff!important
}
#wcom-cashier-app .wpc-more-lookup .wpc-mi-ico {
  background:#ede9fe
}
#wcom-cashier-app .wpc-more-reports {
  background:#ecfeff!important
}
#wcom-cashier-app .wpc-more-reports .wpc-mi-ico {
  background:#cffafe
}
#wcom-cashier-app .wpc-more-products {
  background:#fdf4ff!important
}
#wcom-cashier-app .wpc-more-products .wpc-mi-ico {
  background:#fae8ff
}
#wcom-cashier-app .wpc-more-admin {
  background:#f1f5f9!important
}
#wcom-cashier-app .wpc-more-admin .wpc-mi-ico {
  background:#e2e8f0
}
#wcom-cashier-app .wpc-more-divider {
  height:1px;
  margin:4px 6px;
  background:#e2e8f0;
  border:0;
}
/* More button: first from the LEFT (3.9.107) */
#wcom-cashier-app .wpc-head-actions {
  direction:ltr!important;
  /* left → right: المزيد then ⛶ then خروج */
  justify-content:flex-start!important;
  gap:6px!important;
}
#wcom-cashier-app .wpc-head-actions .wpc-more-wrap {
  order:1
}
#wcom-cashier-app .wpc-head-actions #wpc-fullscreen {
  order:2
}
#wcom-cashier-app .wpc-head-actions #wpc-account {
  order:3
}
#wcom-cashier-app .wpc-head-actions .wpc-more-toggle {
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  min-height:34px!important;
  height:34px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:800!important;
  cursor:pointer!important;
  font-family:inherit!important;
}
#wcom-cashier-app .wpc-head-actions .wpc-more-toggle.is-open, #wcom-cashier-app .wpc-head-actions .wpc-more-toggle[aria-expanded="true"] {
  background:#fff!important;
  color:#0f172a!important;
  border-color:#fff!important;
}
#wcom-cashier-app .wpc-head-actions .wpc-more-menu {
  right:auto!important;
  left:0!important;
  /* open under button toward center */
}
/* ===== More menu fixed portal + responsive 3.9.108 ===== */
#wpc-more-menu.wpc-more-menu, body > #wpc-more-menu {
  display:none;
  flex-direction:column;
  gap:6px;
  padding:10px;
  margin:0;
  background:#ffffff !important;
  color:#0f172a !important;
  border:1px solid #e2e8f0 !important;
  border-radius:14px !important;
  box-shadow:0 20px 50px rgba(15,23,42,.28) !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  box-sizing:border-box !important;
}
#wpc-more-menu.wpc-more-menu.is-open, body > #wpc-more-menu.is-open {
  display:flex !important;
}
#wpc-more-menu .wpc-more-item, body > #wpc-more-menu .wpc-more-item {
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  width:100% !important;
  min-height:48px !important;
  padding:10px 12px !important;
  margin:0 !important;
  border:0 !important;
  border-radius:10px !important;
  background:#f8fafc !important;
  color:#0f172a !important;
  font-size:14px !important;
  font-weight:700 !important;
  font-family:Tahoma,Arial,sans-serif !important;
  line-height:1.3 !important;
  text-align:right !important;
  text-decoration:none !important;
  cursor:pointer !important;
  box-shadow:none !important;
  opacity:1 !important;
  visibility:visible !important;
  box-sizing:border-box !important;
}
#wpc-more-menu .wpc-more-item * {
  color:#0f172a !important;
  opacity:1 !important;
  visibility:visible !important;
}
#wpc-more-menu .wpc-mi-text {
  flex:1 !important;
  text-align:right !important;
  font-size:14px !important;
  font-weight:700 !important;
}
#wpc-more-menu .wpc-mi-ico {
  width:32px !important;
  height:32px !important;
  border-radius:8px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:15px !important;
  flex-shrink:0 !important;
  background:#e2e8f0 !important;
}
#wpc-more-menu .wpc-more-item b {
  min-width:24px !important;
  height:24px !important;
  padding:0 6px !important;
  border-radius:999px !important;
  background:#e2e8f0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:12px !important;
}
#wpc-more-menu .wpc-more-held {
  background:#eff6ff !important
}
#wpc-more-menu .wpc-more-held .wpc-mi-ico {
  background:#dbeafe !important
}
#wpc-more-menu .wpc-more-sync {
  background:#f0fdf4 !important
}
#wpc-more-menu .wpc-more-sync .wpc-mi-ico {
  background:#dcfce7 !important
}
#wpc-more-menu .wpc-more-sales {
  background:#f8fafc !important
}
#wpc-more-menu .wpc-more-returns {
  background:#fff7ed !important
}
#wpc-more-menu .wpc-more-returns .wpc-mi-ico {
  background:#ffedd5 !important
}
#wpc-more-menu .wpc-more-lookup {
  background:#f5f3ff !important
}
#wpc-more-menu .wpc-more-lookup .wpc-mi-ico {
  background:#ede9fe !important
}
#wpc-more-menu .wpc-more-reports {
  background:#ecfeff !important
}
#wpc-more-menu .wpc-more-products {
  background:#fdf4ff !important
}
#wpc-more-menu .wpc-more-admin {
  background:#f1f5f9 !important
}
#wpc-more-menu .wpc-more-divider {
  height:1px;
  margin:4px 4px;
  background:#e2e8f0;
  border:0
}
/* Responsive header */
@media (max-width:1100px) {
  #wcom-cashier-app .wpc-head.wpc-head-compact {
    grid-template-columns:1fr auto !important;
    gap:8px !important;
  }
  #wcom-cashier-app .wpc-head-live {
    display:none !important;
    /* status moves to meta strip on medium */
  }
}
@media (max-width:720px) {
  #wcom-cashier-app .wpc-head.wpc-head-compact {
    grid-template-columns:1fr !important;
    padding:8px !important;
  }
  #wcom-cashier-app .wpc-head-work {
    width:100% !important;
    justify-content:flex-start !important;
  }
  #wcom-cashier-app .wpc-head-actions {
    width:100% !important;
    justify-content:space-between !important;
  }
  #wcom-cashier-app .wpc-shift-label small {
    display:none !important
  }
  #wcom-cashier-app .wpc-more-toggle span:not(.wpc-more-ico) {
    display:none !important
  }
  #wcom-cashier-app .wpc-more-toggle {
    min-width:40px !important;
    padding:0 10px !important;
    justify-content:center !important
  }
}
@media (max-width:480px) {
  body > #wpc-more-menu, #wpc-more-menu.wpc-more-menu.is-open {
    left:8px !important;
    right:8px !important;
    width:auto !important;
    max-width:none !important;
  }
}
/* ═══ 14 · Subscription, product lookup variants, shift card, product form sections, list filters (3.9.126 – 3.9.167) ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Order matters: later files override earlier ones. */

/* ===== تفاصيل الاشتراك ===== */
.wpc-sub-card {
  direction:rtl;
  text-align:right;
  padding:4px 2px 8px
}
.wpc-sub-hero {
  display:flex;
  align-items:center;
  gap:14px;
  background:linear-gradient(135deg,#0f172a,#1d4ed8);
  color:#fff;
  padding:18px 20px;
  border-radius:16px;
  margin-bottom:16px
}
.wpc-sub-hero h2 {
  color:#fff
}
.wpc-sub-hero-icon {
  font-size:32px;
  line-height:1
}
.wpc-sub-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-bottom:14px
}
.wpc-sub-item {
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:12px 14px
}
.wpc-sub-label {
  display:block;
  font-size:12px;
  color:#64748b;
  margin-bottom:4px;
  font-weight:600
}
.wpc-sub-item b {
  font-size:15px;
  color:#0f172a
}
.wpc-sub-section {
  margin-bottom:14px
}
.wpc-sub-chips {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:8px
}
.wpc-sub-chip {
  display:inline-flex;
  align-items:center;
  gap:4px;
  background:#dcfce7;
  color:#166534;
  border-radius:999px;
  padding:6px 12px;
  font-size:13px;
  font-weight:700
}
.wpc-sub-chip.muted {
  background:#f1f5f9;
  color:#64748b
}
.wpc-sub-notes {
  margin:8px 0 0;
  padding:12px;
  background:#fffbeb;
  border:1px solid #fde68a;
  border-radius:12px;
  color:#92400e;
  line-height:1.7
}
.wpc-sub-support {
  margin-top:8px;
  padding:12px 14px;
  background:#eff6ff;
  border:1px solid #bfdbfe;
  border-radius:12px;
  text-align:center;
  font-size:14px
}
.wpc-sub-support a {
  color:#1d4ed8;
  text-decoration:none
}
@media (max-width:560px) {
  .wpc-sub-grid {
    grid-template-columns:1fr
  }
}
/* Subscription alerts section */
.wpc-sub-alerts {
  margin:16px 0 12px;
  border:1px solid #e2e8f0;
  border-radius:16px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 4px 18px rgba(15,23,42,.04)
}
.wpc-sub-alerts-head {
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  background:linear-gradient(135deg,#0f172a,#1e3a8a);
  color:#fff
}
.wpc-sub-alerts-head strong {
  display:block;
  font-size:15px
}
.wpc-sub-alerts-head small {
  display:block;
  opacity:.85;
  font-size:12px;
  margin-top:2px
}
.wpc-sub-alerts-icon {
  font-size:22px;
  line-height:1
}
.wpc-sub-alerts-list {
  padding:12px;
  display:flex;
  flex-direction:column;
  gap:10px;
  max-height:360px;
  overflow:auto
}
.wpc-sub-alert-item {
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:12px 14px;
  border-radius:12px;
  border:1px solid #eef2f7;
  background:#f8fafc
}
.wpc-sub-alert-item.danger {
  border-color:#fecaca;
  background:#fef2f2
}
.wpc-sub-alert-item.warning {
  border-color:#fde68a;
  background:#fffbeb
}
.wpc-sub-alert-item.info {
  border-color:#bfdbfe;
  background:#eff6ff
}
.wpc-sub-alert-icon {
  font-size:18px;
  line-height:1;
  flex-shrink:0;
  margin-top:2px
}
.wpc-sub-alert-content {
  flex:1;
  min-width:0
}
.wpc-sub-alert-content b {
  display:block;
  font-size:13px;
  color:#0f172a;
  margin-bottom:4px
}
.wpc-sub-alert-content p {
  margin:0;
  font-size:12px;
  color:#334155;
  line-height:1.6;
  word-break:break-word
}
.wpc-sub-alert-content small {
  display:block;
  margin-top:6px;
  color:#64748b;
  font-size:11px
}
.wpc-sub-alerts-empty .wpc-sub-alerts-head {
  background:linear-gradient(135deg,#334155,#475569)
}
.wpc-sub-alerts-empty-msg {
  margin:0;
  padding:16px;
  text-align:center;
  color:#64748b;
  font-size:13px;
  line-height:1.6
}
.wpc-central-offline-alert {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin:8px auto;
  padding:11px 14px;
  max-width:1500px;
  border:1px solid #f59e0b;
  background:#fffbeb;
  color:#92400e;
  border-radius:11px;
  font-size:13px;
  line-height:1.6
}
.wpc-central-offline-alert[hidden] {
  display:none!important
}
.wpc-central-offline-alert button {
  border:1px solid #d97706;
  background:#fff;
  color:#92400e;
  border-radius:8px;
  padding:5px 9px;
  font-weight:700;
  cursor:pointer
}
/* Product lookup — variants table (3.9.126) */
.wpc-lk-wrap {
  overflow-x:auto;
  margin-top:6px;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:#fff
}
.wpc-lk-table {
  width:100%;
  border-collapse:collapse;
  font-size:13px
}
.wpc-lk-table th {
  background:#f1f5f9;
  padding:9px 10px;
  text-align:right;
  font-weight:800;
  color:#334155;
  white-space:nowrap
}
.wpc-lk-table td {
  padding:9px 10px;
  border-top:1px solid #eef2f7;
  vertical-align:middle
}
.wpc-lk-table tr.wpc-lk-hit td {
  background:#eff6ff;
  box-shadow:inset 0 0 0 1px #93c5fd
}
.wpc-lk-table tr.wpc-lk-zero td {
  color:#94a3b8
}
.wpc-lk-qty {
  display:inline-block;
  min-width:38px;
  text-align:center;
  padding:3px 10px;
  border-radius:999px;
  font-weight:900
}
.wpc-lk-qty.wpc-lk-ok {
  background:#ecfdf5;
  color:#166534
}
.wpc-lk-qty.wpc-lk-low {
  background:#fffbeb;
  color:#b45309
}
.wpc-lk-qty.wpc-lk-out {
  background:#fef2f2;
  color:#b91c1c
}
.wpc-lk-sw {
  display:inline-block;
  width:12px;
  height:12px;
  border-radius:50%;
  border:1px solid #cbd5e1;
  margin-inline-end:6px;
  vertical-align:middle
}
.wpc-lk-other {
  display:block;
  margin-top:3px;
  color:#2563eb;
  font-size:11px
}
.wpc-lk-note {
  font-size:12px;
  color:#64748b
}
.wpc-lk-more {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
  margin-top:4px
}
.wpc-lk-chip {
  border:1px solid #dbe4ee;
  background:#fff;
  border-radius:999px;
  padding:5px 12px;
  cursor:pointer;
  font-weight:700;
  font-size:12px
}
.wpc-lk-chip:hover {
  background:#eff6ff;
  border-color:#93c5fd
}
@media(max-width:600px) {
  .wpc-lk-table thead {
    display:none
  }
  .wpc-lk-table tr {
    display:block;
    padding:8px 10px;
    border-top:1px solid #eef2f7
  }
  .wpc-lk-table td {
    display:flex;
    justify-content:space-between;
    border:0;
    padding:3px 0
  }
  .wpc-lk-table td:before {
    content:attr(data-l);
    color:#64748b;
    font-size:12px
  }
}
/* ===== 3.9.149 — بطاقة الوردية (حالة / تفاصيل / إغلاق) ===== */
#wcom-cashier-app .wsc {
  margin:10px 0 6px;
  padding:12px;
  border:1px solid #e2e8f0;
  border-radius:16px;
  background:#fff;
  box-shadow:0 4px 14px rgba(15,23,42,.06);
  display:grid;
  gap:10px;
  box-sizing:border-box;
  max-width:100%
}
#wcom-cashier-app .wsc-top {
  display:flex;
  align-items:center;
  gap:10px
}
#wcom-cashier-app .wsc-dot {
  flex:0 0 12px;
  width:12px;
  height:12px;
  border-radius:50%;
  background:#94a3b8;
  box-shadow:0 0 0 4px rgba(148,163,184,.2)
}
#wcom-cashier-app .wsc.is-open .wsc-dot {
  background:#16a34a;
  box-shadow:0 0 0 4px rgba(22,163,74,.18);
  animation:wscPulse 2.2s ease-in-out infinite
}
#wcom-cashier-app .wsc.is-offline .wsc-dot {
  background:#f59e0b;
  box-shadow:0 0 0 4px rgba(245,158,11,.2)
}
#wcom-cashier-app .wsc.is-closed .wsc-dot {
  background:#ef4444;
  box-shadow:0 0 0 4px rgba(239,68,68,.16)
}
@keyframes wscPulse {
  0%,100% {
    box-shadow:0 0 0 3px rgba(22,163,74,.18)
  }
  50% {
    box-shadow:0 0 0 7px rgba(22,163,74,.06)
  }
}
#wcom-cashier-app .wsc-info {
  display:grid;
  gap:1px;
  min-width:0;
  flex:1
}
#wcom-cashier-app .wsc-info small,#wcom-cashier-app .wsc-amount small {
  font-size:11px!important;
  color:#64748b;
  font-weight:600
}
#wcom-cashier-app .wsc-info strong {
  font-size:14px!important;
  font-weight:900;
  color:#0f172a;
  margin:0!important
}
#wcom-cashier-app .wsc.is-closed .wsc-info strong {
  color:#b91c1c
}
#wcom-cashier-app .wsc-amount {
  text-align:end;
  display:grid;
  gap:1px;
  padding:5px 10px;
  border-radius:10px;
  background:#f0fdf4;
  border:1px solid #bbf7d0
}
#wcom-cashier-app .wsc.is-offline .wsc-amount {
  background:#fffbeb;
  border-color:#fde68a
}
#wcom-cashier-app .wsc-amount[hidden] {
  display:none
}
#wcom-cashier-app .wsc-amount b {
  font-size:14px;
  font-weight:900;
  color:#166534;
  white-space:nowrap
}
#wcom-cashier-app .wsc-actions {
  display:flex;
  gap:8px;
  flex-wrap:wrap
}
#wcom-cashier-app .wsc .wsc-btn {
  flex:1 1 120px;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:7px;
  height:40px;
  min-height:40px;
  padding:0 12px!important;
  border-radius:11px!important;
  border:1px solid #e2e8f0;
  font:inherit;
  font-size:12.5px!important;
  font-weight:800!important;
  cursor:pointer;
  white-space:nowrap;
  transition:background .15s,border-color .15s,transform .05s;
  text-decoration:none
}
#wcom-cashier-app .wsc .wsc-btn:active {
  transform:translateY(1px)
}
#wcom-cashier-app .wsc .wsc-btn:focus-visible {
  outline:2px solid #60a5fa;
  outline-offset:2px
}
#wcom-cashier-app .wsc .wsc-btn[style*="display:none"],#wcom-cashier-app .wsc .wsc-btn[style*="display: none"] {
  display:none!important
}
#wcom-cashier-app .wsc .wsc-ghost {
  background:#f8fafc!important;
  color:#0f172a!important
}
#wcom-cashier-app .wsc .wsc-ghost:hover,#wcom-cashier-app .wsc .wsc-ghost.is-open {
  background:#eef2ff!important;
  border-color:#c7d2fe
}
#wcom-cashier-app .wsc .wsc-ghost i {
  font-style:normal;
  font-size:10px;
  transition:transform .15s
}
#wcom-cashier-app .wsc .wsc-ghost.is-open i {
  transform:rotate(180deg)
}
#wcom-cashier-app .wsc .wsc-danger {
  background:#fef2f2!important;
  color:#b91c1c!important;
  border-color:#fecaca!important
}
#wcom-cashier-app .wsc .wsc-danger:hover {
  background:#fee2e2!important;
  border-color:#fca5a5!important
}
#wcom-cashier-app .wsc .wsc-primary {
  background:linear-gradient(135deg,#16a34a,#15803d)!important;
  color:#fff!important;
  border-color:#15803d!important;
  box-shadow:0 6px 14px rgba(22,163,74,.25)
}
#wcom-cashier-app .wsc .wsc-primary:hover {
  filter:brightness(1.05)
}
#wcom-cashier-app .wpc-shift-details {
  margin-top:8px;
  padding:12px;
  border-radius:16px!important;
  border:1px solid #e2e8f0!important;
  background:#fff!important
}
#wcom-cashier-app .wpc-shift-grid>div {
  border-radius:11px!important
}
#wcom-cashier-app .wpc-shift-grid .difference.is-zero {
  background:#f0fdf4!important;
  border-color:#bbf7d0!important
}
#wcom-cashier-app .wpc-shift-grid .difference.is-zero b {
  color:#166534
}
#wcom-cashier-app .wpc-shift-grid .difference.is-neg {
  background:#fef2f2!important;
  border-color:#fecaca!important
}
#wcom-cashier-app .wpc-shift-grid .difference.is-neg b {
  color:#b91c1c
}
#wcom-cashier-app .wpc-shift-grid .difference.is-pos {
  background:#fffbeb!important;
  border-color:#fde68a!important
}
#wcom-cashier-app .wpc-shift-grid .difference.is-pos b {
  color:#92400e
}
#wcom-cashier-app .wpc-offline-status {
  display:flex!important;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
  margin:6px 0;
  padding:8px 12px!important;
  border-radius:12px!important;
  background:#fffbeb!important;
  border:1px solid #fde68a!important;
  color:#92400e!important;
  font-size:12px!important;
  font-weight:700
}
#wcom-cashier-app .wpc-offline-status[style*="display: none"] {
  display:none!important
}
#wcom-cashier-app .wpc-offline-status b {
  min-width:22px;
  height:22px;
  padding:0 6px;
  border-radius:999px;
  background:#f59e0b;
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:12px
}
/* ===== WebCom POS 3.9.166 — product form: collapsible sections, margin chips, save & add another ===== */
.wcom-fsec {
  border:1px solid #e2e8f0;
  border-radius:14px;
  background:#fff;
  margin-top:12px;
  overflow:hidden
}
.wcom-fsec-head {
  all:unset;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  padding:13px 16px;
  cursor:pointer;
  background:#f8fafc;
  font-weight:800;
  font-size:15px;
  color:#0f172a
}
.wcom-fsec-head:hover {
  background:#f1f5f9
}
.wcom-fsec-head:focus-visible {
  outline:2px solid #2563eb;
  outline-offset:-2px
}
.wcom-fsec-title {
  flex:0 0 auto
}
.wcom-fsec-sum {
  flex:1 1 auto;
  min-width:0;
  font-weight:600;
  font-size:12.5px;
  color:#64748b;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis
}
.wcom-fsec-arrow {
  flex:0 0 auto;
  font-style:normal;
  color:#64748b;
  transition:transform .18s
}
.wcom-fsec[data-open="0"] .wcom-fsec-arrow {
  transform:rotate(90deg)
}
.wcom-fsec[data-open="0"] .wcom-fsec-body {
  display:none
}
.wcom-fsec-body {
  padding:16px;
  border-top:1px solid #e2e8f0
}
.wcom-fsec-body .wcom-product-finance-panel {
  margin-top:14px
}
.wcom-fsec.wcom-hide,.wcom-a-view[data-view="products"] .wcom-a-grid>label.wcom-hide {
  display:none!important
}
.wcom-margin {
  display:block;
  min-height:0;
  font-weight:700;
  font-size:12.5px;
  line-height:1.6
}
.wcom-margin:empty {
  display:none
}
.wcom-margin.good {
  color:#15803d
}
.wcom-margin.bad {
  color:#b42318
}
.wcom-margin.warn {
  color:#b45309
}
#fm-p-save-new {
  margin-inline-start:8px
}
@media(max-width:600px) {
  .wcom-fsec-sum {
    display:none
  }
  .wcom-a-actions #fm-p-save,.wcom-a-actions #fm-p-save-new {
    width:100%;
    margin:6px 0 0
  }
}
/* ===== WebCom POS 3.9.167 — product list filters, responsible column, change log ===== */
.wcom-pf-bar {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:flex-end;
  margin-top:10px
}
.wcom-pf-bar label {
  display:flex;
  flex-direction:column;
  gap:4px;
  font-size:12px;
  font-weight:700;
  color:#475569;
  min-width:150px;
  flex:1 1 150px
}
.wcom-pf-bar select,.wcom-pf-bar input {
  min-height:40px;
  padding:8px 10px;
  border:1px solid #d1d5db;
  border-radius:10px;
  font:inherit;
  background:#fff;
  box-sizing:border-box;
  width:100%
}
.wcom-pf-actions {
  display:flex;
  gap:8px;
  flex:0 0 auto;
  flex-wrap:wrap
}
.wcom-pf-summary {
  margin:8px 2px 0;
  font-size:12.5px
}
.wcom-pf-who {
  font-size:12.5px;
  line-height:1.6;
  min-width:130px
}
.wcom-pf-k {
  color:#64748b;
  font-weight:700
}
.wcom-pf-log table {
  width:100%;
  border-collapse:collapse;
  font-size:13px
}
.wcom-pf-log th,.wcom-pf-log td {
  border-bottom:1px solid #e2e8f0;
  padding:8px 10px;
  text-align:right;
  vertical-align:top
}
.wcom-pf-log th {
  background:#f8fafc;
  font-weight:800;
  color:#334155
}
.wcom-pf-log .old {
  color:#b42318;
  text-decoration:line-through
}
.wcom-pf-log .new {
  color:#15803d;
  font-weight:700
}
.wcom-pf-log .muted {
  color:#64748b;
  font-size:11.5px
}
@media(max-width:600px) {
  .wcom-pf-actions {
    width:100%
  }
  .wcom-pf-actions .wcom-a-btn {
    flex:1
  }
}
/* إحصائيات المبالغ المحصّلة من الأدراج — الخزينة والشفتات */
.wcom-t-stats { display:grid; gap:14px }
.wcom-t-stats-head { display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:12px }
.wcom-t-stats-head h3 { margin:0 0 4px; font-size:18px; color:#12264a }
.wcom-t-stats-head small { color:#64748b; line-height:1.6 }
.wcom-t-stats-filter { display:flex; flex-wrap:wrap; gap:8px; align-items:center }
.wcom-t-stats-filter select, .wcom-t-stats-filter input { box-sizing:border-box; padding:10px 12px; border:1px solid #d5dfec; border-radius:11px; background:#fff; min-width:130px }
.wcom-t-stats-kpis { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:12px }
.wcom-t-stats-kpis small { display:block; color:#64748b; margin-top:4px }
.wcom-t-stats-kpis .wcom-a-kpi.strong { border-color:#93c5fd; background:#f0f7ff }
.wcom-t-stats-table td, .wcom-t-stats-table th { white-space:nowrap }
.wcom-t-stats-detail > td { background:#f8fafc; padding:10px !important; white-space:normal }
.wcom-t-stats-detail .wcom-t-stats-sub { width:100%; background:#fff }
.wcom-t-stats-detail .wcom-treasury-table-wrap, .wcom-t-stats-detail { overflow-x:auto }
@media (max-width:760px) {
  .wcom-t-stats-filter { width:100% }
  .wcom-t-stats-filter select, .wcom-t-stats-filter input { flex:1 1 calc(50% - 8px) }
}
/* مرتجعات الموردين (3.9.187) */
.wcom-sup-table .wrt-qty { width:90px; box-sizing:border-box; padding:8px 10px; border:1px solid #d5dfec; border-radius:10px; background:#fff }
.wcom-sup-table .wrt-qty:disabled { background:#f1f5f9; color:#94a3b8 }
.wrt-serials { display:flex; flex-wrap:wrap; gap:6px; margin-top:6px }
.wrt-sn { display:inline-flex; align-items:center; gap:4px; padding:3px 8px; border:1px solid #d5dfec; border-radius:8px; background:#f8fafc; font-size:12px }
.wrt-summary { margin:12px 0 }
.wcom-sup-detail-kpis strong.ok { color:#15803d }
/* 3.9.190 — أزرار الوضع/النوع في صف واحد + وحدة الإدخال (كرتونة/دستة) */
.wcom-product-modes-row {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 14px;
  margin:14px 0
}
.wcom-product-modes-row .wcom-product-mode {
  margin:0;
  gap:8px
}
.wcom-product-modes-row #fm-p-type:not([style*="display:none"]) {
  padding-inline-start:14px;
  border-inline-start:2px solid #e2e8f0
}
.wcom-pack-summary {
  display:block;
  margin-top:6px;
  padding:6px 10px;
  border-radius:8px;
  background:#eff6ff;
  color:#1d4ed8;
  font-weight:800
}
/* 3.9.196 — شريط استرجاع الفواتير غير المنتهية (مسودات الكاشير) */
.wpc-draft-banner { display: flex; flex-direction: column; gap: 6px; margin: 8px 0; padding: 10px 12px; border: 1px solid #f59e0b; background: #fffbeb; color: #78350f; border-radius: 10px; font-size: 13px; }
.wpc-draft-banner[hidden] { display: none; }
.wpc-draft-title { font-weight: 800; }
.wpc-draft-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; padding: 6px 8px; background: #fff; border: 1px solid #fde68a; border-radius: 8px; }
.wpc-draft-actions { display: inline-flex; gap: 6px; }
.wpc-draft-actions button, .wpc-draft-hide { border: 0; border-radius: 8px; padding: 6px 12px; font: inherit; font-weight: 700; cursor: pointer; }
.wpc-draft-restore { background: #16a34a; color: #fff; }
.wpc-draft-drop { background: #fee2e2; color: #991b1b; }
.wpc-draft-hide { align-self: flex-start; background: transparent; color: #92400e; text-decoration: underline; padding: 2px 4px; }
/* ═══ 19 · Cashier category bar redesign (3.9.203) ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   Fixes: strip clipped inside the flex-column .wpc-main (flex-shrink), small/pale chips,
   empty "no results" box, noisy "متوفر" pill. Last-wins layer. */

/* 1) الحاوية: لا تنكمش داخل .wpc-main (سبب القص) + تمرير أفقي ناعم */
#wcom-cashier-app .wpc-category-filter {
  flex:0 0 auto!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:8px!important;
  min-height:56px!important;
  height:auto!important;
  margin:6px 0 4px!important;
  padding:6px 2px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 22px,#000 calc(100% - 22px),transparent 100%);
  mask-image:linear-gradient(to right,transparent 0,#000 22px,#000 calc(100% - 22px),transparent 100%)
}
#wcom-cashier-app .wpc-category-filter::-webkit-scrollbar { display:none }

/* 2) الأزرار: أكبر للمس، التصنيف النشط ممتلئ بالأزرق */
#wcom-cashier-app .wpc-category-chip {
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  min-height:44px!important;
  padding:0 8px 0 14px!important;
  border:1.5px solid #d5deea!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#1e293b!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap;
  scroll-snap-align:center;
  transition:background .15s,border-color .15s,color .15s,transform .1s
}
#wcom-cashier-app .wpc-category-chip:hover { border-color:#93b4f5!important; background:#f5f9ff!important }
#wcom-cashier-app .wpc-category-chip:active { transform:scale(.97) }
#wcom-cashier-app .wpc-category-chip.active {
  background:#2563eb!important;
  border-color:#2563eb!important;
  color:#fff!important;
  box-shadow:0 4px 12px rgba(37,99,235,.28)
}
#wcom-cashier-app .wpc-category-count {
  min-width:26px;
  padding:4px 7px;
  border-radius:8px;
  background:#eef2f7;
  color:#475569;
  font-size:12px;
  font-weight:800;
  text-align:center
}
#wcom-cashier-app .wpc-category-chip.active .wpc-category-count {
  background:rgba(255,255,255,.22);
  color:#fff
}

/* 3) زر «كل التصنيفات»: يعرض كل الأزرار في شبكة متعددة الأسطر */
#wcom-cashier-app .wpc-category-more {
  flex:0 0 auto!important;
  min-height:44px;
  padding:0 14px;
  border:1.5px dashed #94a3b8;
  border-radius:12px;
  background:transparent;
  color:#334155;
  font:inherit;
  font-size:13px;
  font-weight:800;
  cursor:pointer
}
#wcom-cashier-app .wpc-category-filter.is-expanded {
  flex-wrap:wrap!important;
  overflow:visible!important;
  -webkit-mask-image:none;
  mask-image:none;
  padding:8px 2px!important
}

/* 4) لا صندوق «لا توجد نتائج» فارغ فوق المنتجات */
#wcom-cashier-app #wpc-results:empty { display:none!important; margin:0!important }

/* 5) شارة المخزون: تظهر فقط عند الحاجة (منخفض / نفد) */
#wcom-cashier-app .wpc-stock-pill.good,
#wcom-cashier-app .wpc-stock-pill.untracked { display:none!important }

/* 6) تباين أفضل لنص المخزون الصغير */
#wcom-cashier-app .wpc-stock-count { color:#475569!important; font-weight:700 }

@media(max-width:700px) {
  #wcom-cashier-app .wpc-category-chip { min-height:42px!important; font-size:13px!important; padding:0 7px 0 11px!important }
}
/* WebCom POS 3.9.204 — مركز الروابط (قسم «الروابط» في لوحة الإدارة) */
#wcom-manager-app .wcom-lk-item[hidden], #wcom-manager-app .wcom-lk-card[hidden] { display: none !important; }
#wcom-manager-app .wcom-lk-search { width: 100%; margin-top: 10px; padding: 11px 14px; border: 1px solid #dfe7f1; border-radius: 12px; font-size: 15px; box-sizing: border-box; }
#wcom-manager-app .wcom-lk-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)); gap: 12px; margin-top: 12px; }
#wcom-manager-app .wcom-lk-item { display: flex; flex-direction: column; gap: 8px; padding: 12px 14px; border: 1px solid #e5ecf5; border-radius: 14px; background: #fff; min-width: 0; }
#wcom-manager-app .wcom-lk-info { display: flex; flex-direction: column; gap: 3px; }
#wcom-manager-app .wcom-lk-info b { font-size: 15px; color: #0f172a; }
#wcom-manager-app .wcom-lk-info small { color: #64748b; line-height: 1.6; }
#wcom-manager-app .wcom-lk-item .wcom-a-linkbox { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
#wcom-manager-app .wcom-lk-item .wcom-a-linkbox input { flex: 1 1 180px; min-width: 0; direction: ltr; text-align: left; font-size: 13px; }
#wcom-manager-app .wcom-lk-item .wcom-a-linkbox .wcom-a-btn { margin-top: 0; width: auto; white-space: nowrap; }
@media (max-width: 780px) {
  #wcom-manager-app .wcom-lk-list { grid-template-columns: 1fr; }
  #wcom-manager-app .wcom-lk-item .wcom-a-linkbox .wcom-a-btn { flex: 1 1 auto; }
}
/* 3.9.220 — تبديل عرض المنتجات في الكاشير: شبكة (الافتراضي) | قائمة مضغوطة بلا صور */
#wcom-cashier-app .wpc-view-toggle{display:inline-flex;gap:2px;padding:2px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;flex:0 0 auto}
#wcom-cashier-app .wpc-view-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:32px;padding:0;border:0;border-radius:8px;background:transparent;color:#475569;cursor:pointer}
#wcom-cashier-app .wpc-view-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#wcom-cashier-app .wpc-view-btn.active{background:#2563eb;color:#fff}

/* وضع القائمة: صف واحد لكل منتج (يخص #wpc-results و #wpc-quick-list) */
#wcom-cashier-app.wpc-view-list .wpc-results{grid-template-columns:1fr!important;gap:4px!important}
#wcom-cashier-app.wpc-view-list .wpc-results>*{overflow:visible}
#wcom-cashier-app.wpc-view-list .wpc-results .wpc-result{display:flex!important;flex-direction:row!important;flex-wrap:wrap;align-items:center!important;gap:2px 14px!important;width:100%;min-height:0!important;height:auto!important;padding:7px 12px!important;text-align:right}
#wcom-cashier-app.wpc-view-list .wpc-result .wpc-product-image,
#wcom-cashier-app.wpc-view-list .wpc-result .wpc-product-image-placeholder{display:none!important}
#wcom-cashier-app.wpc-view-list .wpc-result b{-webkit-line-clamp:1!important;line-clamp:1}
/* بطاقة المنتجات السريعة */
#wcom-cashier-app.wpc-view-list .wpc-result .wpc-product-top{flex:1 1 45%;min-width:0;display:flex;align-items:center;gap:10px;margin:0}
#wcom-cashier-app.wpc-view-list .wpc-result .wpc-product-bottom{display:flex;align-items:center;gap:14px;margin:0;margin-inline-start:auto}
/* بطاقة نتائج البحث */
#wcom-cashier-app.wpc-view-list .wpc-result .wpc-result-name{flex:1 1 40%;min-width:0}
#wcom-cashier-app.wpc-view-list .wpc-result .wpc-result-price{white-space:nowrap;font-weight:700}
#wcom-cashier-app.wpc-view-list .wpc-result .wpc-result-meta{flex:1 1 30%;min-width:0;font-size:12px}
#wcom-cashier-app.wpc-view-list .wpc-result .wpc-result-badge{white-space:nowrap}
/* ═══ 22 · Cashier UX 3.9.221 — شريط واحد، فاتورة أكبر، بطاقات مدمجة، لوحة دفع أنظف ═══
   Part of assets/admin.css (generated by tools/build-css.js) — edit here, not in assets/admin.css.
   آخر طبقة: تغلب على ما قبلها. كل القواعد داخل #wcom-cashier-app. */

/* 1) الشريط الرمادي حُذف من الصفحة؛ هذه حماية لو بقيت نسخة قديمة في الكاش */
#wcom-cashier-app .wpc-cashier-status-strip{display:none!important}

/* 2) بطاقة الكاشير + الوقت داخل الشريط الأزرق (أرقام لاتينية) */
#wcom-cashier-app .wpc-head.wpc-head-compact{grid-template-columns:auto minmax(0,1fr) auto auto!important}
#wcom-cashier-app .wpc-head-clock{display:flex;align-items:center;gap:9px;min-width:0;padding:4px 12px 4px 10px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(255,255,255,.1);color:#fff;cursor:default}
#wcom-cashier-app .wpc-clock-avatar{flex:0 0 32px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff;color:#1e3a8a;font-size:15px;font-weight:900;line-height:1}
#wcom-cashier-app .wpc-clock-text{display:grid;gap:1px;min-width:0;line-height:1.2}
#wcom-cashier-app .wpc-clock-text b{max-width:190px;unicode-bidi:plaintext;text-align:start;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font-size:14px;font-weight:800}
#wcom-cashier-app .wpc-clock-text #wpc-time{color:#bfdbfe;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;text-align:start;unicode-bidi:plaintext}
#wcom-cashier-app .wpc-head-actions .wcom-hdr-btn{margin:0;height:34px;min-height:34px;padding:0 12px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.12);color:#fff;font-size:12px}
#wcom-cashier-app .wpc-head-actions .wcom-hdr-btn:hover{background:rgba(255,255,255,.2)}
@media (max-width:1100px){
  #wcom-cashier-app .wpc-head.wpc-head-compact{grid-template-columns:minmax(0,1fr) auto auto!important}
}
@media (max-width:720px){
  #wcom-cashier-app .wpc-head.wpc-head-compact{grid-template-columns:1fr!important}
  #wcom-cashier-app .wpc-head-clock{order:1;width:100%;box-sizing:border-box}
  #wcom-cashier-app .wpc-clock-text b{max-width:none}
}

/* 3) رسالة الحالة العابرة: تطفو أسفل الشريط ولا تستهلك صفًا */
#wcom-cashier-app .wpc-cashier-alert{position:fixed!important;top:64px;left:50%;right:auto;transform:translateX(-50%);z-index:2000;width:auto!important;max-width:min(92vw,520px);margin:0!important;min-height:34px!important;padding:6px 14px!important;font-size:13px!important;font-weight:800;border-radius:10px!important;box-shadow:0 8px 24px rgba(15,23,42,.18);pointer-events:none}
#wcom-cashier-app .wpc-cashier-alert:not(.is-ok):not(.is-error):not(.is-info){display:none!important}
#wcom-cashier-app .wpc-cashier-alert.is-ok,#wcom-cashier-app .wpc-cashier-alert.is-error,#wcom-cashier-app .wpc-cashier-alert.is-info{opacity:1!important}

/* 4) صف واحد: نوع التسعير + تصنيفات المنتجات */
#wcom-cashier-app .wpc-filter-row{display:flex;align-items:center;gap:10px;flex:0 0 auto;min-width:0}
#wcom-cashier-app .wpc-filter-row .wpc-pricing-badge{flex:0 0 auto;width:auto!important;margin:0!important;padding:7px 12px!important;border-radius:999px!important;font-size:12.5px!important;font-weight:800;white-space:nowrap}
#wcom-cashier-app .wpc-filter-row .wpc-category-filter{flex:1 1 auto;min-width:0;margin:0!important}

/* 5) زر «وزن مباشر» ثانوي بدل الأسود الغامق */
#wcom-cashier-app .wpc-searchbar #wpc-direct-scale{background:#fff!important;color:#0f172a!important;border:1px solid #cbd5e1!important;box-shadow:none!important}
#wcom-cashier-app .wpc-searchbar #wpc-direct-scale:hover{background:#f1f5f9!important}

/* 6) توزيع الارتفاع: الفاتورة الحالية تمتد وتملأ المتاح، والمنتجات تتمرر داخل مساحتها */
@media (min-width:1051px){
  #wcom-cashier-app .wpc-main{gap:8px}
  #wcom-cashier-app .wpc-main>.wpc-quick-products,
  #wcom-cashier-app .wpc-main>#wpc-results{flex:0 1 auto!important;min-height:0;max-height:40%;overflow-y:auto;overscroll-behavior:contain}
  #wcom-cashier-app .wpc-main>#wpc-results:empty{max-height:0}
  #wcom-cashier-app .wpc-main .wpc-invoice-cart{flex:1 1 280px!important;min-height:230px!important;margin-top:0!important}
  #wcom-cashier-app .wpc-main .wpc-invoice-cart .wpc-cart-wrap{flex:1 1 auto!important;max-height:none!important;min-height:120px!important}
}

/* 7) بدون صور: بطاقة أقصر بلا فراغ علوي */
#wcom-cashier-app .wpc-results[data-product-images-enabled="0"]{grid-template-columns:repeat(auto-fill,minmax(clamp(168px,12vw,210px),1fr))!important;gap:8px!important;align-content:start}
#wcom-cashier-app .wpc-results[data-product-images-enabled="0"] .wpc-result{min-height:0!important;padding:9px 11px!important;gap:6px!important;justify-content:space-between}
#wcom-cashier-app .wpc-results[data-product-images-enabled="0"] .wpc-product-top{margin:0!important}

/* 8) المخزون: أكبر، ولون + نص (منخفض / نفد) حتى لا يعتمد المعنى على اللون وحده */
#wcom-cashier-app .wpc-result .wpc-stock-count{font-size:12px!important;font-weight:700}
#wcom-cashier-app .wpc-result .wpc-stock-count.low{color:#b45309!important}
#wcom-cashier-app .wpc-result .wpc-stock-count.out{color:#b91c1c!important}

/* 9) لوحة الدفع: عناوين أوضح، «المطلوب» يبقى أكبر رقم */
#wcom-cashier-app .wpc-summary>div>span,
#wcom-cashier-app .wpc-summary-items span,
#wcom-cashier-app .wpc-customer-row label,
#wcom-cashier-app .wpc-paid-row label,
#wcom-cashier-app .wpc-change span{font-size:12.5px!important;font-weight:700!important;color:#475569}
#wcom-cashier-app .wpc-summary-items,#wcom-cashier-app .wpc-summary>div:not(.grand):not(.wpc-discount-control){gap:10px}
#wcom-cashier-app .wpc-checkout-actions #wpc-hold{min-height:44px!important}

/* 10) بطاقة الوردية: سطر مضغوط (الزر الكبير الأخضر يبقى فقط عند عدم وجود وردية) */
#wcom-cashier-app .wsc{margin:6px 0 2px!important;padding:8px 10px!important;gap:8px!important;border-radius:12px!important;box-shadow:none!important}
#wcom-cashier-app .wsc.is-open,#wcom-cashier-app .wsc.is-offline{grid-template-columns:minmax(0,1fr) auto;align-items:center}
#wcom-cashier-app .wsc.is-open .wsc-btn,#wcom-cashier-app .wsc.is-offline .wsc-btn{min-height:34px!important;padding:0 10px!important;font-size:12px!important}
#wcom-cashier-app .wsc.is-closed .wsc-primary{min-height:42px!important}
/* WebCom POS 3.9.225 — صقل لوحة الدفع والوردية في الكاشير (آخر طبقة تفوز) */

/* 1) بطاقة الوردية: ترتيب عمودي بدل عمودين متزاحمين (كان يقطع «حالة الوردية» ويطفو النقطة) */
#wcom-cashier-app .wsc,
#wcom-cashier-app .wsc.is-open,
#wcom-cashier-app .wsc.is-offline,
#wcom-cashier-app .wsc.is-closed,
#wcom-cashier-app .wsc.is-unknown{grid-template-columns:minmax(0,1fr)!important;gap:8px!important;padding:10px!important;border-radius:14px!important;overflow:hidden}
#wcom-cashier-app .wsc .wsc-top{display:flex!important;align-items:center;gap:10px;min-width:0}
#wcom-cashier-app .wsc .wsc-dot{flex:0 0 12px}
#wcom-cashier-app .wsc .wsc-info{flex:1 1 auto;min-width:0}
#wcom-cashier-app .wsc .wsc-info small,
#wcom-cashier-app .wsc .wsc-info strong{white-space:nowrap;overflow:visible;text-overflow:clip}
#wcom-cashier-app .wsc .wsc-amount{flex:0 0 auto;min-width:112px;padding:5px 12px!important}
#wcom-cashier-app .wsc .wsc-amount small{white-space:nowrap}
#wcom-cashier-app .wsc .wsc-amount b{font-size:15px!important;white-space:nowrap}
#wcom-cashier-app .wsc .wsc-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#wcom-cashier-app .wsc .wsc-actions .wsc-btn{flex:none;width:100%;min-height:36px!important;padding:0 8px!important;font-size:12.5px!important}
#wcom-cashier-app .wsc .wsc-actions .wsc-primary{grid-column:1/-1}
/* «إغلاق الوردية» إجراء حساس: يبقى واضحًا لكن أهدأ من أزرار البيع */
#wcom-cashier-app .wsc .wsc-danger{background:#fff!important;color:#b91c1c!important;border:1px solid #fecaca!important}
#wcom-cashier-app .wsc .wsc-danger:hover{background:#fef2f2!important}
@media (max-width:360px){#wcom-cashier-app .wsc .wsc-actions{grid-template-columns:1fr}}

/* 2) رسالة النجاح/الخطأ: toast واضح بدل سطر 8px داخل اللوحة */
#wcom-cashier-app #wpc-message.wpc-message:not(:empty){
  position:fixed!important;left:50%;right:auto;bottom:22px;transform:translateX(-50%);z-index:2000;
  width:auto!important;max-width:min(92vw,520px)!important;margin:0!important;
  padding:10px 18px!important;border-radius:12px!important;
  font-size:14px!important;font-weight:800;line-height:1.5;min-height:0!important;
  color:#166534!important;background:#f0fdf4;border:1px solid #86efac;
  box-shadow:0 10px 28px rgba(15,23,42,.18);
}
#wcom-cashier-app #wpc-message.wpc-message.error:not(:empty){color:#991b1b!important;background:#fef2f2;border-color:#fca5a5}

/* 3) صف الطباعة: ثلاثة عناصر بنفس الشكل والارتفاع */
#wcom-cashier-app .wpc-print-row{display:grid!important;grid-template-columns:minmax(0,1.4fr) auto minmax(0,1fr);gap:6px!important;align-items:stretch;margin:8px 0 4px!important}
#wcom-cashier-app .wpc-print-row .wpc-print-option,
#wcom-cashier-app .wpc-print-row .wpc-print-method-badge,
#wcom-cashier-app .wpc-print-row #wcom-cash-print-last{
  box-sizing:border-box;display:inline-flex!important;align-items:center;justify-content:center;gap:6px;
  height:36px;min-height:36px;margin:0!important;padding:0 10px!important;
  border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;
  font:inherit;font-size:12px!important;font-weight:700;color:#334155;white-space:nowrap;text-decoration:none;
}
#wcom-cashier-app .wpc-print-row .wpc-print-option input{width:16px!important;height:16px!important;margin:0!important}
#wcom-cashier-app .wpc-print-row #wcom-cash-print-last{color:#1d4ed8;cursor:pointer}
#wcom-cashier-app .wpc-print-row #wcom-cash-print-last:hover:not(:disabled){background:#eff6ff;border-color:#bfdbfe}
#wcom-cashier-app .wpc-print-row #wcom-cash-print-last:disabled{opacity:.45;cursor:not-allowed}

/* 4) طريقة الدفع المحددة: خلفية ممتلئة وليس إطارًا فقط */
#wcom-cashier-app .wpc-method-btn.active{background:var(--cashier-primary,#2563eb)!important;border-color:var(--cashier-primary,#2563eb)!important;color:#fff!important;box-shadow:0 4px 12px rgba(37,99,235,.28)!important}

/* 5) المبالغ السريعة (تظهر عند تفعيل «لمس» فقط): أقل ارتفاعًا وبدون عنوان زائد */
html.wcom-touch .wcom-quickcash{margin:6px 0 4px}
html.wcom-touch .wcom-quickcash-title{display:none}
html.wcom-touch .wcom-quickcash-row{gap:6px}
html.wcom-touch .wcom-qc{min-height:42px;font-size:15px}
/* 3.9.226 — خانة "تطبيق الضريبة" في ملخص الكاشير */
#wcom-cashier-app .wpc-tax-toggle-row{margin:6px 0 2px!important}
#wcom-cashier-app .wpc-tax-option{display:flex;align-items:center;gap:8px;width:100%;min-height:34px;padding:6px 10px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;font-size:12px;font-weight:700;color:#0f172a;cursor:pointer;box-sizing:border-box}
#wcom-cashier-app .wpc-tax-option input{width:16px;height:16px;margin:0;cursor:pointer}
#wcom-cashier-app .wpc-tax-option:has(input:not(:checked)){background:#fef2f2;border-color:#fca5a5;color:#b91c1c}
/* 3.9.262 — الإحالات ونقاط الولاء (شاشة العملاء) */
.wcom-cus-hero-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.wcom-ref-body .wcom-ref-settings,.wcom-ref-box{margin:12px 0;padding:14px;background:#f8fafc;border:1px solid #e6eaf3;border-radius:14px}
.wcom-ref-body .wcom-ref-settings h3,.wcom-ref-box h3{margin:0 0 10px;font-size:15px}
.wcom-ref-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin:8px 0}
.wcom-ref-grid label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:700}
.wcom-ref-check{display:flex;align-items:center;gap:8px;font-weight:700;margin:6px 0}
.wcom-ref-hint{display:block;color:#64748b;line-height:1.7;margin:6px 0}
.wcom-ref-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:8px}
.wcom-ref-link{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.wcom-ref-link input{flex:1;min-width:180px}
.wcom-ref-box p{margin:6px 0}
@media (prefers-color-scheme:dark){.wcom-ref-body .wcom-ref-settings,.wcom-ref-box{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1)}.wcom-ref-hint{color:#94a3b8}}
