/* ============================================================
   UBUZIMA+ PHARMACY POS COUNTER — VNEXT UAT

   Dedicated scope:
   section=pos
   pos=pos

   No global shell, Dock, module navigation or shared-design
   selector is intentionally targeted by this stylesheet.
   ============================================================ */

.pos-counter-page--dedicated {
  --ubz-pos-blue: #0b5cff;
  --ubz-pos-blue-soft: #edf4ff;
  --ubz-pos-text: #172033;
  --ubz-pos-muted: #64748b;
  --ubz-pos-border: #e3e9f2;
  --ubz-pos-surface: #ffffff;
  --ubz-pos-page: #f7f9fc;
  --ubz-pos-green: #168653;
  --ubz-pos-green-soft: #ecfdf5;
  --ubz-pos-orange: #c96a12;
  --ubz-pos-orange-soft: #fff7ed;
  --ubz-pos-red: #b42318;
  --ubz-pos-red-soft: #fef3f2;

  width: 100% !important;
  max-width: 1920px !important;
  min-width: 0 !important;

  margin: 0 auto !important;
  padding: 0 0 112px !important;

  display: grid !important;
  gap: 10px !important;

  color: var(--ubz-pos-text) !important;
  background: var(--ubz-pos-page) !important;
}

.pos-counter-page--dedicated .pos-counter-heading {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 14px 16px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;

  border: 1px solid var(--ubz-pos-border) !important;
  border-radius: 10px !important;

  background: var(--ubz-pos-surface) !important;
  box-shadow: 0 2px 8px rgba(15, 23, 42, .035) !important;
}

.pos-counter-page--dedicated .pos-counter-heading h2 {
  margin: 0 !important;

  color: var(--ubz-pos-text) !important;

  font-size: 1.28rem !important;
  line-height: 1.16 !important;
  font-weight: 800 !important;
  letter-spacing: -.015em !important;
}

.pos-counter-page--dedicated .pos-counter-heading .eyebrow {
  margin: 0 0 3px !important;

  color: var(--ubz-pos-blue) !important;

  font-size: .68rem !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
}

.pos-counter-page--dedicated .pos-counter-heading .muted {
  margin: 4px 0 0 !important;

  color: var(--ubz-pos-muted) !important;

  font-size: .78rem !important;
  line-height: 1.4 !important;
}

.pos-counter-page--dedicated :is(
  .pos-product-stock-section,
  .pos-sale-cart-section,
  .pos-transaction-setup-section,
  .pos-payment-summary-section,
  .pos-summary-confirmation-card,
  .pos-session-control-card,
  .historical-pos-workflow,
  .pos-live-business-performance-card,
  .pos-sales-summary-table-card
) {
  min-width: 0 !important;

  border: 1px solid var(--ubz-pos-border) !important;
  border-radius: 9px !important;

  background: var(--ubz-pos-surface) !important;
  box-shadow: 0 2px 7px rgba(15, 23, 42, .03) !important;
}

.pos-counter-page--dedicated :is(
  .pos-product-stock-section,
  .pos-sale-cart-section,
  .pos-transaction-setup-section,
  .pos-payment-summary-section,
  .pos-summary-confirmation-card,
  .pos-session-control-card,
  .historical-pos-workflow,
  .pos-live-business-performance-card,
  .pos-sales-summary-table-card
) > .section-heading {
  margin: 0 0 8px !important;
}

.pos-counter-page--dedicated .section-heading h3 {
  margin: 2px 0 0 !important;

  color: var(--ubz-pos-text) !important;

  font-size: .92rem !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
}

.pos-counter-page--dedicated .section-heading span {
  color: var(--ubz-pos-muted) !important;

  font-size: .66rem !important;
  font-weight: 750 !important;
  letter-spacing: .045em !important;
}


/* ------------------------------------------------------------
   MODE / ACTION CONTROLS
   Existing buttons only. No duplicate controls are created.
   ------------------------------------------------------------ */

.pos-counter-page--dedicated button.ubz-pos-vnext-mode {
  min-height: 54px !important;
  padding: 10px 13px !important;

  border: 1px solid var(--ubz-pos-border) !important;
  border-radius: 8px !important;

  background: #fff !important;
  color: var(--ubz-pos-text) !important;

  box-shadow: none !important;

  font-size: .76rem !important;
  font-weight: 800 !important;
  text-align: left !important;
}

.pos-counter-page--dedicated button.ubz-pos-vnext-mode-live {
  border-color: #8ab0ff !important;
  background: var(--ubz-pos-blue-soft) !important;
  color: #0a47c7 !important;
}

.pos-counter-page--dedicated button.ubz-pos-vnext-mode-history {
  border-color: #d8e0eb !important;
  background: #f8fafc !important;
}

.pos-counter-page--dedicated button.ubz-pos-vnext-action-refresh {
  border-color: #cbd5e1 !important;
  background: #fff !important;
  color: #334155 !important;
}

.pos-counter-page--dedicated button.ubz-pos-vnext-action-confirm {
  border-color: var(--ubz-pos-blue) !important;
  background: var(--ubz-pos-blue) !important;
  color: #fff !important;
}

.pos-counter-page--dedicated button.ubz-pos-vnext-action-print {
  border-color: #cbd5e1 !important;
  background: #f8fafc !important;
  color: #1e293b !important;
}


/* ------------------------------------------------------------
   PRODUCT CATALOGUE
   ------------------------------------------------------------ */

.pos-counter-page--dedicated .pos-product-stock-section {
  padding: 11px !important;
  gap: 8px !important;

  overflow: hidden !important;
}

.pos-counter-page--dedicated .pos-search-input {
  width: 100% !important;
  min-height: 38px !important;

  padding: 8px 11px !important;

  border: 1px solid #d7dee9 !important;
  border-radius: 7px !important;

  background: #fff !important;
  color: var(--ubz-pos-text) !important;

  box-shadow: none !important;

  font-size: .78rem !important;
}

.pos-counter-page--dedicated .pos-search-input:focus {
  border-color: #8ab0ff !important;
  outline: 2px solid rgba(11, 92, 255, .12) !important;
  outline-offset: 0 !important;
}

.pos-counter-page--dedicated .pos-inventory-load-panel {
  min-width: 0 !important;

  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;

  gap: 7px !important;

  color: var(--ubz-pos-muted) !important;

  font-size: .68rem !important;
}

.pos-counter-page--dedicated .pos-inventory-load-panel button {
  min-height: 32px !important;
  padding: 6px 10px !important;

  border-radius: 6px !important;

  font-size: .7rem !important;
  font-weight: 750 !important;
}

.pos-counter-page--dedicated .pos-drug-list--ten {
  width: 100% !important;
  min-width: 0 !important;

  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  align-items: stretch !important;

  gap: 8px !important;

  min-height: 0 !important;
  height: auto !important;
  max-height: min(62vh, 690px) !important;

  padding: 1px 3px 1px 0 !important;

  overflow-y: auto !important;
  overflow-x: hidden !important;
}

.pos-counter-page--dedicated .pos-product-tile-v16 {
  position: relative !important;

  width: 100% !important;
  min-width: 0 !important;
  min-height: 96px !important;
  height: auto !important;

  margin: 0 !important;
  padding: 10px 42px 10px 10px !important;

  display: grid !important;
  align-content: start !important;
  gap: 6px !important;

  border: 1px solid #e2e8f0 !important;
  border-radius: 8px !important;

  background: #fff !important;
  color: var(--ubz-pos-text) !important;

  box-shadow: none !important;

  text-align: left !important;
}

.pos-counter-page--dedicated .pos-product-tile-v16:hover {
  border-color: #8eb1fa !important;
  box-shadow: 0 3px 10px rgba(15, 23, 42, .055) !important;
}

.pos-counter-page--dedicated .pos-product-tile-v16::after {
  content: "+" !important;

  position: absolute !important;
  top: 9px !important;
  right: 9px !important;

  width: 28px !important;
  height: 28px !important;

  display: grid !important;
  place-items: center !important;

  border-radius: 7px !important;

  background: var(--ubz-pos-blue) !important;
  color: #fff !important;

  font-size: 1rem !important;
  line-height: 1 !important;
  font-weight: 800 !important;

  pointer-events: none !important;
}

.pos-counter-page--dedicated .pos-product-card-name,
.pos-counter-page--dedicated .pos-product-tile-v16 > strong:first-child {
  min-width: 0 !important;

  color: #172033 !important;

  font-size: .79rem !important;
  line-height: 1.24 !important;
  font-weight: 800 !important;

  overflow-wrap: anywhere !important;
}

.pos-counter-page--dedicated .pos-product-card-row {
  min-width: 0 !important;

  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;

  gap: 6px !important;
}

.pos-counter-page--dedicated .pos-product-card-metric {
  min-width: 0 !important;

  display: grid !important;
  gap: 2px !important;
}

.pos-counter-page--dedicated .pos-product-card-metric > span {
  color: var(--ubz-pos-muted) !important;

  font-size: .6rem !important;
  font-weight: 700 !important;
}

.pos-counter-page--dedicated .pos-product-card-price em {
  color: #0a4fcb !important;

  font-size: .72rem !important;
  font-style: normal !important;
  font-weight: 850 !important;
}

.pos-counter-page--dedicated .pos-product-card-stock strong {
  color: var(--ubz-pos-green) !important;

  font-size: .72rem !important;
  font-weight: 850 !important;
}

.pos-counter-page--dedicated .pos-product-card-info-row {
  min-width: 0 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;

  gap: 6px !important;

  color: var(--ubz-pos-muted) !important;

  font-size: .61rem !important;
  line-height: 1.25 !important;
}

.pos-counter-page--dedicated .pos-product-card-line {
  color: var(--ubz-pos-muted) !important;

  font-size: .62rem !important;
  line-height: 1.25 !important;
}

.pos-counter-page--dedicated .pos-product-tile-v16.product-expiry-safe {
  border-left: 3px solid #75c69d !important;
}

.pos-counter-page--dedicated .pos-product-tile-v16.product-expiry-watch,
.pos-counter-page--dedicated .pos-product-tile-v16.product-expiry-warning {
  border-left: 3px solid #f3a65a !important;
  background: #fffdfa !important;
}

.pos-counter-page--dedicated .pos-product-tile-v16.product-expiry-critical,
.pos-counter-page--dedicated .pos-product-tile-v16.product-expiry-expired {
  border-left: 3px solid #e47a70 !important;
  background: #fffafa !important;
}


/* ------------------------------------------------------------
   CART / TRANSACTION / PAYMENT
   ------------------------------------------------------------ */

.pos-counter-page--dedicated :is(
  .pos-sale-cart-section,
  .pos-transaction-setup-section,
  .pos-payment-summary-section,
  .pos-summary-confirmation-card
) {
  padding: 10px !important;
}

.pos-counter-page--dedicated .pos-cart-lines {
  min-width: 0 !important;

  max-height: 270px !important;
  overflow: auto !important;
}

.pos-counter-page--dedicated .pos-cart-table {
  width: 100% !important;
  min-width: 0 !important;

  border-collapse: collapse !important;
}

.pos-counter-page--dedicated .pos-cart-table :is(th, td) {
  padding: 6px 5px !important;

  border-bottom: 1px solid #edf1f6 !important;

  font-size: .67rem !important;
  line-height: 1.3 !important;
}

.pos-counter-page--dedicated .pos-cart-table th {
  color: #64748b !important;

  font-size: .61rem !important;
  font-weight: 800 !important;
  letter-spacing: .03em !important;
}

.pos-counter-page--dedicated .pos-field-grid,
.pos-counter-page--dedicated .pos-meta-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

  gap: 7px !important;
}

.pos-counter-page--dedicated :is(
  .pos-field-grid,
  .pos-meta-grid,
  .pos-transaction-setup-section,
  .pos-payment-summary-section
) label {
  min-width: 0 !important;

  display: grid !important;
  gap: 4px !important;

  color: #475569 !important;

  font-size: .65rem !important;
  font-weight: 750 !important;
}

.pos-counter-page--dedicated :is(
  input,
  select,
  textarea
) {
  max-width: 100% !important;

  border-color: #d8e0eb !important;
  border-radius: 6px !important;

  box-shadow: none !important;
}

.pos-counter-page--dedicated .pos-payment-summary-grid-v17 {
  min-width: 0 !important;

  display: grid !important;
  grid-template-columns: 1fr !important;

  gap: 7px !important;
}

.pos-counter-page--dedicated .pos-payment-summary-column {
  min-width: 0 !important;

  display: grid !important;

  gap: 6px !important;
}

.pos-counter-page--dedicated .pos-summary-field-card {
  min-width: 0 !important;

  padding: 8px !important;

  border: 1px solid #e7ecf3 !important;
  border-radius: 7px !important;

  background: #fafcff !important;

  box-shadow: none !important;
}

.pos-counter-page--dedicated .pos-transaction-completion-actions {
  display: grid !important;
  grid-template-columns: 1fr !important;

  gap: 7px !important;
}

.pos-counter-page--dedicated .pos-transaction-completion-actions button {
  width: 100% !important;
  min-height: 36px !important;

  border-radius: 7px !important;

  font-size: .72rem !important;
  font-weight: 800 !important;
}


/* ------------------------------------------------------------
   PERFORMANCE + RECENT TRANSACTIONS
   ------------------------------------------------------------ */

.pos-counter-page--dedicated .pos-live-business-performance-card {
  padding: 10px !important;
}

.pos-counter-page--dedicated .pos-live-business-performance-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;

  gap: 8px !important;
}

.pos-counter-page--dedicated .pos-live-business-performance-grid > * {
  min-width: 0 !important;

  padding: 8px !important;

  border: 1px solid #e6ebf2 !important;
  border-radius: 7px !important;

  background: #fafcff !important;

  box-shadow: none !important;
}

.pos-counter-page--dedicated .pos-sales-summary-table-card {
  padding: 10px !important;
}

.pos-counter-page--dedicated .pos-sales-summary-table-card .system-table-wrap {
  width: 100% !important;
  max-height: 260px !important;

  overflow: auto !important;
}

.pos-counter-page--dedicated .pos-sales-summary-table-card table {
  width: 100% !important;

  border-collapse: collapse !important;
}

.pos-counter-page--dedicated .pos-sales-summary-table-card :is(th, td) {
  padding: 7px 6px !important;

  border-bottom: 1px solid #edf1f6 !important;

  font-size: .67rem !important;
  line-height: 1.3 !important;
}

.pos-counter-page--dedicated .pos-sales-summary-table-card th {
  color: #64748b !important;

  font-size: .61rem !important;
  font-weight: 800 !important;
  letter-spacing: .03em !important;
}


/* ------------------------------------------------------------
   DESKTOP — primary approved composition
   ------------------------------------------------------------ */

@media (min-width: 1280px) {
  .pos-counter-page--dedicated .pos-operating-cockpit-v2 {
    min-width: 0 !important;

    display: grid !important;

    grid-template-columns:
      minmax(0, 48fr)
      minmax(0, 52fr)
      !important;

    gap: 10px !important;

    align-items: start !important;
  }

  .pos-counter-page--dedicated .pos-product-stock-section {
    min-width: 0 !important;
  }

  .pos-counter-page--dedicated .pos-sale-transaction-section {
    min-width: 0 !important;

    display: grid !important;

    grid-template-columns:
      minmax(0, 1.08fr)
      minmax(300px, .92fr)
      !important;

    grid-template-areas:
      "notice notice"
      "historical historical"
      "session session"
      "cart summary"
      "setup summary"
      "update summary"
      "metrics metrics"
      "recent recent"
      !important;

    gap: 9px !important;

    align-items: start !important;

    padding: 0 !important;

    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;

    overflow: visible !important;
  }

  .pos-counter-page--dedicated .pos-sale-transaction-section > .notice {
    grid-area: notice !important;
  }

  .pos-counter-page--dedicated .pos-sale-transaction-section > .historical-pos-workflow {
    grid-area: historical !important;
  }

  .pos-counter-page--dedicated .pos-sale-transaction-section > .pos-session-control-card {
    grid-area: session !important;
  }

  .pos-counter-page--dedicated .pos-sale-transaction-section > .pos-sale-cart-section {
    grid-area: cart !important;
  }

  .pos-counter-page--dedicated .pos-sale-transaction-section > .pos-transaction-setup-section {
    grid-area: setup !important;
  }

  .pos-counter-page--dedicated .pos-sale-transaction-section > .pos-summary-update-bridge {
    grid-area: update !important;
  }

  .pos-counter-page--dedicated .pos-sale-transaction-section > .pos-payment-summary-section {
    grid-area: summary !important;
  }

  .pos-counter-page--dedicated .pos-sale-transaction-section > .pos-summary-confirmation-card {
    grid-column: 2 !important;
  }

  .pos-counter-page--dedicated .pos-sale-transaction-section > .pos-live-business-performance-card {
    grid-area: metrics !important;
  }

  .pos-counter-page--dedicated .pos-sale-transaction-section > .pos-sales-summary-table-card {
    grid-area: recent !important;
  }
}


/* ------------------------------------------------------------
   TABLET / SMALL LAPTOP
   ------------------------------------------------------------ */

@media (min-width: 768px) and (max-width: 1279px) {
  .pos-counter-page--dedicated .pos-operating-cockpit-v2 {
    display: grid !important;

    grid-template-columns:
      minmax(0, 44fr)
      minmax(0, 56fr)
      !important;

    gap: 9px !important;

    align-items: start !important;
  }

  .pos-counter-page--dedicated .pos-drug-list--ten {
    grid-template-columns: 1fr !important;

    max-height: min(58vh, 650px) !important;
  }

  .pos-counter-page--dedicated .pos-sale-transaction-section {
    min-width: 0 !important;

    display: grid !important;
    grid-template-columns: 1fr !important;

    gap: 8px !important;

    padding: 0 !important;
  }

  .pos-counter-page--dedicated .pos-live-business-performance-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr))
      !important;
  }
}


/* ------------------------------------------------------------
   MOBILE
   ------------------------------------------------------------ */

@media (max-width: 767px) {
  .pos-counter-page--dedicated {
    padding-bottom: 92px !important;

    gap: 8px !important;
  }

  .pos-counter-page--dedicated .pos-counter-heading {
    padding: 11px !important;

    align-items: flex-start !important;
    flex-direction: column !important;
  }

  .pos-counter-page--dedicated .pos-operating-cockpit-v2,
  .pos-counter-page--dedicated .pos-sale-transaction-section {
    display: block !important;
  }

  .pos-counter-page--dedicated .pos-drug-list--ten {
    grid-template-columns: 1fr !important;

    max-height: none !important;

    overflow: visible !important;
  }

  .pos-counter-page--dedicated :is(
    .pos-product-stock-section,
    .pos-sale-cart-section,
    .pos-transaction-setup-section,
    .pos-payment-summary-section,
    .pos-summary-confirmation-card,
    .pos-session-control-card,
    .historical-pos-workflow,
    .pos-live-business-performance-card,
    .pos-sales-summary-table-card
  ) {
    margin-bottom: 8px !important;
  }

  .pos-counter-page--dedicated .pos-field-grid,
  .pos-counter-page--dedicated .pos-meta-grid,
  .pos-counter-page--dedicated .pos-live-business-performance-grid {
    grid-template-columns: 1fr !important;
  }

  .pos-counter-page--dedicated .pos-product-tile-v16 {
    min-height: 92px !important;
  }
}


/* ==============================================================
   UBZ_POS_VNEXT_R2_INTERNATIONAL_COUNTER

   Pharmacy POS presentation only.
   No shared shell, Dock, API, transaction, database or global UI.
   ============================================================== */

.pos-counter-page--dedicated {
  --ubz-r2-ink: #172033;
  --ubz-r2-muted: #667085;
  --ubz-r2-line: #dfe5ec;
  --ubz-r2-soft-line: #edf1f5;
  --ubz-r2-surface: #ffffff;
  --ubz-r2-soft: #f7f9fc;
  --ubz-r2-blue: #2457d6;
  --ubz-r2-blue-soft: #eef4ff;
  --ubz-r2-green: #12734a;
  --ubz-r2-green-soft: #edf9f2;
  --ubz-r2-amber: #9a6700;
  --ubz-r2-amber-soft: #fff8e6;
  --ubz-r2-red: #b42318;
}


/* --------------------------------------------------------------
   1. REMOVE REDUNDANT PHARMACY COUNTER TITLE BLOCK
   -------------------------------------------------------------- */

.pos-counter-page--dedicated
.pos-counter-heading {
  display: none !important;
}

.pos-counter-page--dedicated
.pos-fixed-top-v16 {
  margin-bottom: 8px !important;
}


/* --------------------------------------------------------------
   2. INTERNATIONAL / COMPACT TELLER SESSION
   -------------------------------------------------------------- */

.pos-counter-page--dedicated
.pos-session-control-card {
  padding: 11px 12px !important;

  border:
    1px solid
    var(--ubz-r2-line)
    !important;

  border-radius: 12px !important;

  background:
    var(--ubz-r2-surface)
    !important;

  box-shadow:
    0 2px 8px
    rgba(16, 24, 40, .04)
    !important;

  overflow: visible !important;
}

.pos-counter-page--dedicated
.pos-session-control-card
> .section-heading {
  display: grid !important;

  grid-template-columns:
    minmax(0, 1fr)
    auto !important;

  gap: 10px !important;

  align-items: center !important;

  margin: 0 0 9px !important;

  padding: 0 0 9px !important;

  border-bottom:
    1px solid
    var(--ubz-r2-soft-line)
    !important;
}

.pos-counter-page--dedicated
.pos-session-control-card
> .section-heading
> div
> span {
  display: none !important;
}

.pos-counter-page--dedicated
.pos-session-control-card
> .section-heading
h3 {
  margin: 0 !important;

  color:
    var(--ubz-r2-ink)
    !important;

  font-size: .98rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: -.01em !important;
}

.pos-counter-page--dedicated
.pos-session-control-card
> .section-heading
> small {
  display: inline-flex !important;

  align-items: center !important;

  max-width: 440px !important;

  min-height: 28px !important;

  margin: 0 !important;

  padding: 4px 9px !important;

  border:
    1px solid
    var(--ubz-r2-line)
    !important;

  border-radius: 999px !important;

  background:
    var(--ubz-r2-soft)
    !important;

  color:
    var(--ubz-r2-muted)
    !important;

  font-size: .67rem !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;

  white-space: normal !important;
}

.pos-counter-page--dedicated
.pos-session-control-card[
  data-ubz-session-state="active"
]
> .section-heading
> small {
  border-color: #b7dfc8 !important;
  background:
    var(--ubz-r2-green-soft)
    !important;
  color:
    var(--ubz-r2-green)
    !important;
}

.pos-counter-page--dedicated
.pos-session-control-card[
  data-ubz-session-state="empty"
]
> .section-heading
> small {
  border-color: #efd99a !important;
  background:
    var(--ubz-r2-amber-soft)
    !important;
  color:
    var(--ubz-r2-amber)
    !important;
}

.pos-counter-page--dedicated
.pos-shift-control-grid,
.pos-counter-page--dedicated
.pos-shift-strip-v16 {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap: 8px !important;

  margin: 0 !important;
}

.pos-counter-page--dedicated
.pos-shift-card {
  position: relative !important;

  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap: 8px !important;

  align-content: start !important;

  min-width: 0 !important;

  padding:
    28px 9px 9px
    !important;

  border:
    1px solid
    var(--ubz-r2-soft-line)
    !important;

  border-radius: 9px !important;

  background:
    var(--ubz-r2-soft)
    !important;

  box-shadow: none !important;
}

.pos-counter-page--dedicated
.pos-shift-card::before {
  position: absolute !important;

  top: 8px !important;
  left: 10px !important;

  color:
    var(--ubz-r2-muted)
    !important;

  font-size: .58rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: .075em !important;
}

.pos-counter-page--dedicated
.pos-shift-card--open::before {
  content: "OPENING";
}

.pos-counter-page--dedicated
.pos-shift-card--close::before {
  content: "CLOSING / HANDOVER";
}

.pos-counter-page--dedicated
.pos-shift-card
.pos-shift-field {
  display: grid !important;

  gap: 4px !important;

  min-width: 0 !important;

  margin: 0 !important;
}

.pos-counter-page--dedicated
.pos-shift-card
.pos-shift-field
> span {
  color:
    var(--ubz-r2-muted)
    !important;

  font-size: .65rem !important;
  font-weight: 650 !important;
  line-height: 1.15 !important;
}

.pos-counter-page--dedicated
.pos-shift-card
:is(
  input,
  select
) {
  width: 100% !important;
  min-width: 0 !important;
  height: 35px !important;

  margin: 0 !important;

  padding:
    0 9px
    !important;

  border:
    1px solid
    #d6dde7
    !important;

  border-radius: 7px !important;

  background:
    var(--ubz-r2-surface)
    !important;

  color:
    var(--ubz-r2-ink)
    !important;

  font-size: .72rem !important;
}

.pos-counter-page--dedicated
.pos-shift-card
button {
  grid-column: 1 / -1 !important;

  width: 100% !important;
  min-height: 35px !important;

  margin: 0 !important;

  border-radius: 7px !important;

  font-size: .71rem !important;
  font-weight: 700 !important;
}

.pos-counter-page--dedicated
.pos-shift-card--open
button:not(:disabled) {
  background:
    var(--ubz-r2-blue)
    !important;
}

.pos-counter-page--dedicated
.pos-shift-check {
  grid-column: 1 / -1 !important;

  display: grid !important;

  grid-template-columns:
    auto minmax(0, 1fr)
    !important;

  gap: 7px !important;

  align-items: center !important;

  min-height: 35px !important;

  margin: 0 !important;

  padding:
    6px 8px
    !important;

  border:
    1px solid
    var(--ubz-r2-line)
    !important;

  border-radius: 7px !important;

  background:
    var(--ubz-r2-surface)
    !important;

  color:
    var(--ubz-r2-muted)
    !important;

  font-size: .64rem !important;
  line-height: 1.25 !important;
}

.pos-counter-page--dedicated
.pos-shift-check
input {
  width: 15px !important;
  height: 15px !important;

  padding: 0 !important;
}

.pos-counter-page--dedicated
.pos-session-control-card[
  data-ubz-session-state="empty"
]
.pos-session-control-card
.pos-shift-card--close {
  opacity: .66 !important;
}


/* --------------------------------------------------------------
   3. REMOVE ONLY STOCK-REFRESH SUCCESS TEXT FROM PAYMENT SUMMARY
   -------------------------------------------------------------- */

.pos-counter-page--dedicated
.ubz-pos-vnext-hidden-stock-notice {
  display: none !important;
}


/* --------------------------------------------------------------
   4. PRODUCT CARDS — FIVE REQUIRED ATTRIBUTES
   -------------------------------------------------------------- */

.pos-counter-page--dedicated
.pos-drug-list--ten {
  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap: 8px !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16[
  data-ubz-product-normalized="1"
] {
  position: relative !important;

  display: block !important;

  min-width: 0 !important;
  min-height: 122px !important;
  height: auto !important;

  padding: 0 !important;

  overflow: hidden !important;

  text-align: left !important;

  border:
    1px solid
    var(--ubz-r2-line)
    !important;

  border-radius: 10px !important;

  background:
    var(--ubz-r2-surface)
    !important;

  box-shadow:
    0 1px 4px
    rgba(16, 24, 40, .035)
    !important;

  transform: none !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16[
  data-ubz-product-normalized="1"
]:hover {
  border-color: #b9c8df !important;

  box-shadow:
    0 3px 10px
    rgba(16, 24, 40, .07)
    !important;

  transform: none !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16[
  data-ubz-product-normalized="1"
]
> :not(
  .ubz-pos-vnext-product-specs
) {
  display: none !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-specs {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap: 6px !important;

  width: 100% !important;

  min-width: 0 !important;

  padding:
    9px 10px 10px
    !important;

  pointer-events: none !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-name {
  grid-column: 1 / -1 !important;

  display: grid !important;

  gap: 2px !important;

  min-width: 0 !important;

  margin-bottom: 1px !important;

  padding-bottom: 7px !important;

  border-bottom:
    1px solid
    var(--ubz-r2-soft-line)
    !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-label {
  color:
    #8791a2
    !important;

  font-size: .55rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: .065em !important;
  text-transform: uppercase !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-name
strong {
  display: -webkit-box !important;

  min-width: 0 !important;

  color:
    var(--ubz-r2-ink)
    !important;

  font-size: .76rem !important;
  font-weight: 750 !important;
  line-height: 1.22 !important;

  overflow: hidden !important;

  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-metric {
  display: grid !important;

  gap: 2px !important;

  min-width: 0 !important;

  padding:
    6px 7px
    !important;

  border:
    1px solid
    var(--ubz-r2-soft-line)
    !important;

  border-radius: 7px !important;

  background:
    var(--ubz-r2-soft)
    !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-metric
strong {
  min-width: 0 !important;

  color:
    var(--ubz-r2-ink)
    !important;

  font-size: .68rem !important;
  font-weight: 750 !important;
  line-height: 1.15 !important;

  white-space: nowrap !important;

  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-metric--price
strong {
  color:
    var(--ubz-r2-blue)
    !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-metric--quantity
strong {
  color:
    var(--ubz-r2-green)
    !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-metric--days[
  data-ubz-risk="critical"
]
strong {
  color:
    var(--ubz-r2-red)
    !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-metric--days[
  data-ubz-risk="warning"
]
strong {
  color:
    var(--ubz-r2-amber)
    !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-metric--days[
  data-ubz-risk="safe"
]
strong {
  color:
    var(--ubz-r2-green)
    !important;
}


/* --------------------------------------------------------------
   5. TODAY'S PERFORMANCE
   -------------------------------------------------------------- */

.pos-counter-page--dedicated
.pos-live-business-performance-card {
  padding:
    11px 12px
    !important;

  border:
    1px solid
    var(--ubz-r2-line)
    !important;

  border-radius: 12px !important;

  background:
    var(--ubz-r2-surface)
    !important;

  box-shadow:
    0 2px 8px
    rgba(16, 24, 40, .04)
    !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-card
> .section-heading {
  display: flex !important;

  justify-content: space-between !important;

  gap: 10px !important;

  align-items: center !important;

  margin: 0 0 8px !important;

  padding: 0 !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-card
.section-heading
> div {
  display: grid !important;

  gap: 1px !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-card
.section-heading
> div
> span {
  color:
    var(--ubz-r2-blue)
    !important;

  font-size: .57rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-card
.section-heading
h3 {
  margin: 0 !important;

  color:
    var(--ubz-r2-ink)
    !important;

  font-size: .94rem !important;
  font-weight: 750 !important;
  line-height: 1.2 !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-card
.section-heading
.muted {
  display: none !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-card
.section-heading
.secondary-action {
  min-height: 31px !important;

  padding:
    0 10px
    !important;

  border:
    1px solid
    #cfd8e5
    !important;

  border-radius: 7px !important;

  background:
    var(--ubz-r2-surface)
    !important;

  color:
    var(--ubz-r2-ink)
    !important;

  font-size: .66rem !important;
  font-weight: 700 !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid {
  display: grid !important;

  grid-template-columns:
    repeat(4, minmax(0, 1fr))
    !important;

  gap: 7px !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid
> article {
  display: grid !important;

  gap: 3px !important;

  align-content: center !important;

  min-width: 0 !important;
  min-height: 68px !important;

  padding:
    8px 9px
    !important;

  border:
    1px solid
    var(--ubz-r2-soft-line)
    !important;

  border-radius: 8px !important;

  background:
    var(--ubz-r2-soft)
    !important;

  box-shadow: none !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid
> article
> span {
  color:
    var(--ubz-r2-muted)
    !important;

  font-size: .57rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid
> article
> strong {
  min-width: 0 !important;

  color:
    var(--ubz-r2-ink)
    !important;

  font-size: .9rem !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;

  white-space: nowrap !important;

  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid
> article
> small {
  min-width: 0 !important;

  color:
    var(--ubz-r2-muted)
    !important;

  font-size: .61rem !important;
  line-height: 1.15 !important;

  white-space: nowrap !important;

  overflow: hidden !important;
  text-overflow: ellipsis !important;
}


/* --------------------------------------------------------------
   6. LATEST OPERATOR + RECENT TRANSACTIONS
   -------------------------------------------------------------- */

.pos-counter-page--dedicated
.pos-sales-summary-table-card {
  max-height: 440px !important;

  padding:
    11px 12px
    !important;

  border:
    1px solid
    var(--ubz-r2-line)
    !important;

  border-radius: 12px !important;

  background:
    var(--ubz-r2-surface)
    !important;

  box-shadow:
    0 2px 8px
    rgba(16, 24, 40, .04)
    !important;

  overflow: auto !important;
}

.pos-counter-page--dedicated
.pos-transaction-operator-strip {
  display: grid !important;

  grid-template-columns:
    auto minmax(0, 1fr) auto
    !important;

  gap: 8px !important;

  align-items: center !important;

  min-width: 0 !important;

  margin: 0 0 9px !important;

  padding:
    7px 9px
    !important;

  border:
    1px solid
    var(--ubz-r2-soft-line)
    !important;

  border-radius: 8px !important;

  background:
    var(--ubz-r2-soft)
    !important;
}

.pos-counter-page--dedicated
.pos-transaction-operator-strip
span {
  color:
    var(--ubz-r2-muted)
    !important;

  font-size: .56rem !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

.pos-counter-page--dedicated
.pos-transaction-operator-strip
strong {
  min-width: 0 !important;

  color:
    var(--ubz-r2-ink)
    !important;

  font-size: .69rem !important;
  font-weight: 750 !important;

  white-space: nowrap !important;

  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.pos-counter-page--dedicated
.pos-transaction-operator-strip
small {
  min-width: 0 !important;

  color:
    var(--ubz-r2-muted)
    !important;

  font-size: .61rem !important;

  white-space: nowrap !important;

  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card
> .section-heading {
  display: grid !important;

  grid-template-columns:
    minmax(0, 1fr)
    auto !important;

  gap: 10px !important;

  align-items: center !important;

  margin: 0 0 8px !important;

  padding: 0 0 8px !important;

  border-bottom:
    1px solid
    var(--ubz-r2-soft-line)
    !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card
> .section-heading
span {
  color:
    var(--ubz-r2-blue)
    !important;

  font-size: .57rem !important;
  font-weight: 800 !important;
  letter-spacing: .065em !important;
  text-transform: uppercase !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card
> .section-heading
h3 {
  margin: 1px 0 0 !important;

  color:
    var(--ubz-r2-ink)
    !important;

  font-size: .94rem !important;
  font-weight: 750 !important;
  line-height: 1.15 !important;
}

.pos-counter-page--dedicated
.admin-table-settings-panel {
  margin: 0 !important;
}

.pos-counter-page--dedicated
.admin-table-settings-panel__summary {
  display: flex !important;

  gap: 5px !important;

  align-items: center !important;

  min-height: 30px !important;

  padding:
    5px 9px
    !important;

  border:
    1px solid
    #d4dce7
    !important;

  border-radius: 7px !important;

  background:
    var(--ubz-r2-surface)
    !important;

  cursor: pointer !important;

  list-style: none !important;
}

.pos-counter-page--dedicated
.admin-table-settings-panel__summary
span {
  color:
    var(--ubz-r2-ink)
    !important;

  font-size: .64rem !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.pos-counter-page--dedicated
.admin-table-settings-panel__summary
small {
  color:
    var(--ubz-r2-muted)
    !important;

  font-size: .57rem !important;
}

.pos-counter-page--dedicated
.pos-current-session-table-toolbar {
  display: grid !important;

  grid-template-columns:
    minmax(180px, 1fr)
    minmax(170px, 220px)
    auto !important;

  gap: 7px !important;

  align-items: center !important;

  margin:
    0 0 8px
    !important;
}

.pos-counter-page--dedicated
.pos-current-session-table-toolbar
:is(
  input,
  select
) {
  width: 100% !important;
  min-width: 0 !important;
  height: 34px !important;

  margin: 0 !important;

  padding:
    0 9px
    !important;

  border:
    1px solid
    #d6dde7
    !important;

  border-radius: 7px !important;

  background:
    var(--ubz-r2-surface)
    !important;

  color:
    var(--ubz-r2-ink)
    !important;

  font-size: .67rem !important;
}

.pos-counter-page--dedicated
.pos-current-session-table-toolbar
button {
  min-height: 34px !important;

  padding:
    0 11px
    !important;

  border-radius: 7px !important;

  font-size: .66rem !important;
  font-weight: 700 !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card
table {
  width: 100% !important;

  min-width: 820px !important;

  margin: 0 !important;

  border-collapse:
    separate
    !important;

  border-spacing: 0 !important;

  background:
    var(--ubz-r2-surface)
    !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card
thead
th {
  position: sticky !important;

  top: 0 !important;

  z-index: 2 !important;

  padding:
    7px 8px
    !important;

  border-top:
    1px solid
    var(--ubz-r2-soft-line)
    !important;

  border-bottom:
    1px solid
    #d6dde7
    !important;

  background:
    #f5f7fa
    !important;

  color:
    #536074
    !important;

  font-size: .58rem !important;
  font-weight: 800 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;

  white-space: nowrap !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card
tbody
td {
  padding:
    7px 8px
    !important;

  border-bottom:
    1px solid
    var(--ubz-r2-soft-line)
    !important;

  color:
    var(--ubz-r2-ink)
    !important;

  font-size: .64rem !important;
  line-height: 1.2 !important;

  vertical-align: middle !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card
tbody
tr:hover
td {
  background:
    #fafcff
    !important;
}


/* --------------------------------------------------------------
   7. RESPONSIVE COUNTER BEHAVIOUR
   -------------------------------------------------------------- */

@media (max-width: 1180px) {
  .pos-counter-page--dedicated
  .pos-live-business-performance-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr))
      !important;
  }
}

@media (max-width: 900px) {
  .pos-counter-page--dedicated
  .pos-shift-control-grid,
  .pos-counter-page--dedicated
  .pos-shift-strip-v16 {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }

  .pos-counter-page--dedicated
  .pos-drug-list--ten {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }

  .pos-counter-page--dedicated
  .pos-session-control-card
  > .section-heading {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }

  .pos-counter-page--dedicated
  .pos-session-control-card
  > .section-heading
  > small {
    justify-self: start !important;
  }
}

@media (max-width: 640px) {
  .pos-counter-page--dedicated
  .pos-shift-card {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }

  .pos-counter-page--dedicated
  .pos-shift-card
  button,
  .pos-counter-page--dedicated
  .pos-shift-check {
    grid-column: 1 !important;
  }

  .pos-counter-page--dedicated
  .pos-live-business-performance-grid {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }

  .pos-counter-page--dedicated
  .pos-transaction-operator-strip {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }

  .pos-counter-page--dedicated
  .pos-current-session-table-toolbar {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }

  .pos-counter-page--dedicated
  .pos-sales-summary-table-card
  > .section-heading {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }
}


/* ============================================================
   UBZ_POS_VNEXT_R3_CORRECTED
   Exact-runtime-hook refinement.
   Dedicated Pharmacy POS scope only.
   ============================================================ */

.pos-counter-page--dedicated {
  --r3-bg: #f6f8fb;
  --r3-card: #ffffff;
  --r3-soft: #f8fafc;
  --r3-border: #e1e7ef;
  --r3-border-strong: #cdd6e3;

  --r3-text: #172033;
  --r3-muted: #667085;

  --r3-blue: #175cd3;
  --r3-blue-soft: #eff4ff;

  --r3-green: #067647;
  --r3-green-soft: #ecfdf3;

  --r3-amber: #b54708;
  --r3-amber-soft: #fffaeb;

  --r3-red: #b42318;

  background: var(--r3-bg) !important;
}


/* ------------------------------------------------------------
   COMMON PROFESSIONAL SECTION LANGUAGE
   ------------------------------------------------------------ */

.pos-counter-page--dedicated
:is(
  .pos-product-stock-section,
  .pos-session-control-card,
  .pos-sale-cart-section,
  .pos-transaction-setup-section,
  .pos-payment-summary-section,
  .pos-live-business-performance-card,
  .pos-sales-summary-table-card
) {
  min-width: 0 !important;

  border:
    1px solid
    var(--r3-border)
    !important;

  border-radius: 10px !important;

  background:
    var(--r3-card)
    !important;

  box-shadow:
    0 1px 2px rgba(16, 24, 40, .025),
    0 4px 12px rgba(16, 24, 40, .035)
    !important;
}

.pos-counter-page--dedicated
:is(
  .pos-product-stock-section,
  .pos-session-control-card,
  .pos-sale-cart-section,
  .pos-transaction-setup-section,
  .pos-payment-summary-section,
  .pos-live-business-performance-card,
  .pos-sales-summary-table-card
)
> .section-heading {
  margin: 0 0 9px !important;
  padding: 0 0 8px !important;

  border-bottom:
    1px solid
    var(--r3-border)
    !important;
}

.pos-counter-page--dedicated
.section-heading
span {
  color:
    var(--r3-blue)
    !important;

  font-size: .57rem !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: .075em !important;
  text-transform: uppercase !important;
}

.pos-counter-page--dedicated
.section-heading
h3 {
  margin: 3px 0 0 !important;

  color:
    var(--r3-text)
    !important;

  font-size: .94rem !important;
  line-height: 1.18 !important;
  font-weight: 760 !important;
  letter-spacing: -.01em !important;
}


/* ------------------------------------------------------------
   01 · PRODUCT CATALOGUE
   Uses proven search + inventory controls.
   No pos-product-toolbar dependency.
   ------------------------------------------------------------ */

.pos-counter-page--dedicated
.pos-product-stock-section {
  padding: 12px !important;
}

.pos-counter-page--dedicated
.pos-search-input {
  width: 100% !important;
  min-width: 0 !important;
  height: 39px !important;
  min-height: 39px !important;

  margin: 0 0 7px !important;
  padding: 0 11px !important;

  border:
    1px solid
    var(--r3-border-strong)
    !important;

  border-radius: 7px !important;

  background: #fff !important;
  color: var(--r3-text) !important;

  box-shadow: none !important;

  font-size: .72rem !important;
}

.pos-counter-page--dedicated
.pos-search-input:focus {
  border-color: #84adff !important;

  outline:
    3px solid
    rgba(23, 92, 211, .08)
    !important;

  outline-offset: 0 !important;
}

.pos-counter-page--dedicated
.pos-inventory-load-panel {
  display: flex !important;

  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;

  gap: 6px !important;

  margin: 0 0 8px !important;
  padding: 6px 7px !important;

  border:
    1px solid
    var(--r3-border)
    !important;

  border-radius: 7px !important;

  background:
    var(--r3-soft)
    !important;
}

.pos-counter-page--dedicated
.pos-inventory-load-panel
button {
  min-height: 31px !important;

  margin: 0 !important;
  padding: 0 9px !important;

  border-radius: 6px !important;

  font-size: .64rem !important;
  font-weight: 720 !important;
}

.pos-counter-page--dedicated
.pos-inventory-load-panel
span {
  min-width: 0 !important;

  color:
    var(--r3-muted)
    !important;

  font-size: .6rem !important;
  line-height: 1.2 !important;
}

.pos-counter-page--dedicated
.ubz-r3-duplicate-stock-loading {
  display: none !important;
}

.pos-counter-page--dedicated
.historical-pos-launch {
  display: flex !important;

  justify-content: flex-end !important;

  margin: 0 0 8px !important;
}

.pos-counter-page--dedicated
.historical-pos-toggle {
  min-height: 32px !important;

  margin: 0 !important;
  padding: 0 10px !important;

  border:
    1px solid
    var(--r3-border-strong)
    !important;

  border-radius: 7px !important;

  background: #fff !important;
  color: var(--r3-blue) !important;

  box-shadow: none !important;

  font-size: .63rem !important;
  font-weight: 720 !important;
}

.pos-counter-page--dedicated
.pos-drug-list--ten {
  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap: 7px !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16[
  data-ubz-product-normalized="1"
] {
  min-height: 112px !important;

  border-color:
    var(--r3-border)
    !important;

  border-radius: 8px !important;

  box-shadow:
    0 1px 2px rgba(16, 24, 40, .025)
    !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16[
  data-ubz-product-normalized="1"
]:hover {
  border-color: #9db7e5 !important;

  box-shadow:
    0 3px 10px rgba(16, 24, 40, .055)
    !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-specs {
  gap: 5px !important;

  padding: 8px !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-metric {
  padding: 5px 6px !important;

  border-radius: 6px !important;

  background:
    var(--r3-soft)
    !important;
}


/* ------------------------------------------------------------
   POS SESSION — compact teller workstation
   ------------------------------------------------------------ */

.pos-counter-page--dedicated
.pos-session-control-card {
  padding: 11px !important;
}

.pos-counter-page--dedicated
.pos-session-control-card
> .section-heading {
  display: grid !important;

  grid-template-columns:
    minmax(0, 1fr)
    auto
    !important;

  gap: 8px !important;

  align-items: center !important;
}

.pos-counter-page--dedicated
.pos-session-control-card
> .section-heading
> small {
  max-width: 380px !important;

  padding: 4px 8px !important;

  border:
    1px solid
    var(--r3-border)
    !important;

  border-radius: 999px !important;

  background:
    var(--r3-soft)
    !important;

  color:
    var(--r3-muted)
    !important;

  font-size: .6rem !important;
  line-height: 1.2 !important;
}

.pos-counter-page--dedicated
.pos-shift-control-grid,
.pos-counter-page--dedicated
.pos-shift-strip-v16 {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap: 8px !important;

  margin: 0 !important;
}

.pos-counter-page--dedicated
.pos-shift-card {
  min-width: 0 !important;

  padding: 9px !important;

  border:
    1px solid
    var(--r3-border)
    !important;

  border-radius: 8px !important;

  background:
    var(--r3-soft)
    !important;

  box-shadow: none !important;
}

.pos-counter-page--dedicated
.pos-shift-card--open {
  border-top:
    3px solid
    var(--r3-blue)
    !important;
}

.pos-counter-page--dedicated
.pos-shift-card--close {
  border-top:
    3px solid
    #667085
    !important;
}

.pos-counter-page--dedicated
.pos-shift-field {
  display: grid !important;

  gap: 4px !important;

  margin: 0 0 7px !important;
}

.pos-counter-page--dedicated
.pos-shift-field
> span {
  color:
    var(--r3-muted)
    !important;

  font-size: .6rem !important;
  font-weight: 700 !important;
}

.pos-counter-page--dedicated
.pos-shift-card
:is(
  input,
  select
) {
  width: 100% !important;
  min-width: 0 !important;

  height: 35px !important;

  margin: 0 !important;
  padding: 0 8px !important;

  border:
    1px solid
    var(--r3-border-strong)
    !important;

  border-radius: 6px !important;

  background: #fff !important;

  box-shadow: none !important;

  font-size: .67rem !important;
}

.pos-counter-page--dedicated
.pos-shift-check {
  min-height: 35px !important;

  margin: 0 0 7px !important;
  padding: 6px 7px !important;

  border:
    1px solid
    var(--r3-border)
    !important;

  border-radius: 6px !important;

  background: #fff !important;

  font-size: .59rem !important;
  line-height: 1.25 !important;
}

.pos-counter-page--dedicated
.pos-shift-card
button {
  width: 100% !important;

  min-height: 35px !important;

  border-radius: 6px !important;

  font-size: .65rem !important;
  font-weight: 750 !important;
}


/* ------------------------------------------------------------
   02 · CART
   ------------------------------------------------------------ */

.pos-counter-page--dedicated
.pos-sale-cart-section {
  padding: 11px !important;
}

.pos-counter-page--dedicated
.pos-cart-header-actions {
  display: flex !important;

  align-items: center !important;
  justify-content: space-between !important;

  gap: 7px !important;
}

.pos-counter-page--dedicated
.pos-cart-header-actions
small {
  color:
    var(--r3-muted)
    !important;

  font-size: .61rem !important;
}

.pos-counter-page--dedicated
.pos-cart-header-actions
button {
  min-height: 29px !important;

  padding: 0 8px !important;

  border-radius: 6px !important;

  font-size: .61rem !important;
  font-weight: 700 !important;
}

.pos-counter-page--dedicated
.pos-cart-lines,
.pos-counter-page--dedicated
.pos-sale-cart-section
.system-table-wrap {
  border:
    1px solid
    var(--r3-border)
    !important;

  border-radius: 7px !important;

  overflow: auto !important;
}

.pos-counter-page--dedicated
.pos-cart-table {
  width: 100% !important;

  border-collapse: collapse !important;
}

.pos-counter-page--dedicated
.pos-cart-table
th {
  padding: 6px 7px !important;

  background:
    var(--r3-soft)
    !important;

  color:
    var(--r3-muted)
    !important;

  font-size: .55rem !important;
  font-weight: 800 !important;
  letter-spacing: .045em !important;
  text-transform: uppercase !important;
}

.pos-counter-page--dedicated
.pos-cart-table
td {
  padding: 7px !important;

  border-top:
    1px solid
    var(--r3-border)
    !important;

  color:
    var(--r3-text)
    !important;

  font-size: .63rem !important;

  vertical-align: middle !important;
}

.pos-counter-page--dedicated
.pos-cart-table
td.ubz-r3-cart-empty {
  padding: 22px 12px !important;

  color:
    var(--r3-muted)
    !important;

  text-align: center !important;

  line-height: 1.4 !important;
}


/* ------------------------------------------------------------
   03 · TRANSACTION SETUP
   ------------------------------------------------------------ */

.pos-counter-page--dedicated
.pos-transaction-setup-section {
  padding: 11px !important;
}

.pos-counter-page--dedicated
.pos-transaction-setup-card {
  min-width: 0 !important;

  padding: 8px !important;

  border:
    1px solid
    var(--r3-border)
    !important;

  border-radius: 8px !important;

  background:
    var(--r3-soft)
    !important;

  box-shadow: none !important;
}

.pos-counter-page--dedicated
.pos-transaction-setup-card--two-column {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap: 8px !important;
}

.pos-counter-page--dedicated
.pos-transaction-setup-section
label {
  display: grid !important;

  gap: 4px !important;

  min-width: 0 !important;

  margin: 0 !important;

  color:
    #475467
    !important;

  font-size: .59rem !important;
  font-weight: 720 !important;
  line-height: 1.2 !important;
}

.pos-counter-page--dedicated
.pos-transaction-setup-section
:is(
  input,
  select,
  textarea
) {
  width: 100% !important;
  min-width: 0 !important;

  min-height: 36px !important;

  margin: 0 !important;
  padding: 6px 8px !important;

  border:
    1px solid
    var(--r3-border-strong)
    !important;

  border-radius: 6px !important;

  background: #fff !important;

  color:
    var(--r3-text)
    !important;

  box-shadow: none !important;

  font-size: .66rem !important;
}


/* ------------------------------------------------------------
   04 · PAYMENT SUMMARY
   ------------------------------------------------------------ */

.pos-counter-page--dedicated
.pos-payment-summary-section {
  padding: 11px !important;
}

.pos-counter-page--dedicated
.pos-payment-summary-grid-v17 {
  gap: 7px !important;
}

.pos-counter-page--dedicated
.pos-payment-summary-column {
  gap: 6px !important;
}

.pos-counter-page--dedicated
.pos-summary-field-card {
  min-width: 0 !important;

  padding: 7px 8px !important;

  border:
    1px solid
    var(--r3-border)
    !important;

  border-radius: 7px !important;

  background:
    var(--r3-soft)
    !important;

  box-shadow: none !important;
}

.pos-counter-page--dedicated
.pos-summary-field-card
span {
  color:
    var(--r3-muted)
    !important;

  font-size: .54rem !important;
  font-weight: 760 !important;
  letter-spacing: .035em !important;
  text-transform: uppercase !important;
}

.pos-counter-page--dedicated
.pos-summary-field-card
strong {
  color:
    var(--r3-text)
    !important;

  font-size: .7rem !important;
  font-weight: 800 !important;
}

.pos-counter-page--dedicated
.pos-summary-field-card[
  data-ubz-r3-payment="total"
] {
  border-color:
    var(--r3-blue)
    !important;

  background:
    var(--r3-blue)
    !important;
}

.pos-counter-page--dedicated
.pos-summary-field-card[
  data-ubz-r3-payment="total"
]
:is(
  span,
  strong
) {
  color: #fff !important;
}

.pos-counter-page--dedicated
.pos-summary-field-card[
  data-ubz-r3-payment="customer"
] {
  border-color: #b2ddff !important;

  background: #f0f9ff !important;
}

.pos-counter-page--dedicated
.pos-summary-field-card[
  data-ubz-r3-payment="insurer"
] {
  border-color: #abefc6 !important;

  background:
    var(--r3-green-soft)
    !important;
}

.pos-counter-page--dedicated
.pos-summary-sync-note {
  padding: 7px 8px !important;

  border:
    1px solid
    var(--r3-border)
    !important;

  border-radius: 7px !important;

  background: #fff !important;

  color:
    var(--r3-muted)
    !important;

  font-size: .59rem !important;
}

.pos-counter-page--dedicated
.pos-payment-summary-section
> button {
  width: 100% !important;

  min-height: 40px !important;

  margin-top: 8px !important;

  border:
    1px solid
    var(--r3-blue)
    !important;

  border-radius: 7px !important;

  background:
    var(--r3-blue)
    !important;

  color: #fff !important;

  font-size: .68rem !important;
  font-weight: 800 !important;
}


/* ------------------------------------------------------------
   LIVE OPERATIONS / TODAY'S PERFORMANCE
   ------------------------------------------------------------ */

.pos-counter-page--dedicated
.pos-live-business-performance-card {
  padding: 11px !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid {
  display: grid !important;

  grid-template-columns:
    repeat(4, minmax(0, 1fr))
    !important;

  gap: 7px !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid
> article {
  position: relative !important;

  min-width: 0 !important;
  min-height: 72px !important;

  padding: 9px 9px 8px 11px !important;

  border:
    1px solid
    var(--r3-border)
    !important;

  border-radius: 7px !important;

  background: #fff !important;

  box-shadow: none !important;

  overflow: hidden !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid
> article::before {
  content: "";

  position: absolute;

  top: 0;
  bottom: 0;
  left: 0;

  width: 3px;

  background:
    var(--r3-blue);
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid
> article:nth-child(2)::before {
  background:
    var(--r3-green);
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid
> article:nth-child(3)::before {
  background:
    var(--r3-amber);
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid
> article:nth-child(4)::before {
  background: #667085;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid
> article
> span {
  color:
    var(--r3-muted)
    !important;

  font-size: .53rem !important;
  font-weight: 800 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid
> article
> strong {
  display: block !important;

  min-width: 0 !important;

  margin-top: 3px !important;

  color:
    var(--r3-text)
    !important;

  font-size: .88rem !important;
  font-weight: 820 !important;

  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid
> article
> small {
  display: block !important;

  min-width: 0 !important;

  margin-top: 2px !important;

  color:
    var(--r3-muted)
    !important;

  font-size: .57rem !important;

  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.pos-counter-page--dedicated
.pos-transaction-operator-strip {
  display: grid !important;

  grid-template-columns:
    auto minmax(0, 1fr) auto
    !important;

  gap: 7px !important;

  align-items: center !important;

  margin-top: 7px !important;
  padding: 7px 8px !important;

  border:
    1px solid
    var(--r3-border)
    !important;

  border-radius: 7px !important;

  background:
    var(--r3-soft)
    !important;
}


/* ------------------------------------------------------------
   RECENT TRANSACTIONS
   ------------------------------------------------------------ */

.pos-counter-page--dedicated
.pos-sales-summary-table-card {
  padding: 11px !important;

  max-height: 430px !important;
}

.pos-counter-page--dedicated
.pos-current-session-table-toolbar {
  display: grid !important;

  grid-template-columns:
    minmax(190px, 1fr)
    minmax(150px, 210px)
    auto
    !important;

  gap: 7px !important;

  align-items: center !important;

  margin: 0 0 8px !important;
}

.pos-counter-page--dedicated
.pos-current-session-table-toolbar
:is(
  input,
  select
) {
  width: 100% !important;
  min-width: 0 !important;
  height: 35px !important;

  margin: 0 !important;

  border:
    1px solid
    var(--r3-border-strong)
    !important;

  border-radius: 6px !important;

  background: #fff !important;

  box-shadow: none !important;

  font-size: .63rem !important;
}

.pos-counter-page--dedicated
.pos-current-session-table-toolbar
button {
  min-height: 35px !important;

  padding: 0 10px !important;

  border-radius: 6px !important;

  font-size: .62rem !important;
  font-weight: 720 !important;
}

.pos-counter-page--dedicated
.admin-table-settings-panel__summary {
  min-height: 30px !important;

  padding: 5px 8px !important;

  border:
    1px solid
    var(--r3-border-strong)
    !important;

  border-radius: 6px !important;

  background: #fff !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card
.system-table-wrap {
  max-height: 275px !important;

  border:
    1px solid
    var(--r3-border)
    !important;

  border-radius: 7px !important;

  overflow: auto !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card
table {
  width: 100% !important;

  min-width: 760px !important;

  border-collapse: collapse !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card
thead
th {
  position: sticky !important;

  top: 0 !important;

  z-index: 2 !important;

  padding: 7px !important;

  border-bottom:
    1px solid
    var(--r3-border-strong)
    !important;

  background:
    var(--r3-soft)
    !important;

  color:
    #475467
    !important;

  font-size: .54rem !important;
  font-weight: 800 !important;
  letter-spacing: .045em !important;
  text-transform: uppercase !important;

  white-space: nowrap !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card
tbody
td {
  padding: 7px !important;

  border-bottom:
    1px solid
    var(--r3-border)
    !important;

  color:
    var(--r3-text)
    !important;

  font-size: .62rem !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card
tbody
tr:hover
td {
  background: #fafcff !important;
}


/* ------------------------------------------------------------
   RESPONSIVE
   ------------------------------------------------------------ */

@media (max-width: 1120px) {
  .pos-counter-page--dedicated
  .pos-live-business-performance-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr))
      !important;
  }

  .pos-counter-page--dedicated
  .pos-transaction-setup-card--two-column {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }
}

@media (max-width: 820px) {
  .pos-counter-page--dedicated
  .pos-shift-control-grid,
  .pos-counter-page--dedicated
  .pos-shift-strip-v16 {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }

  .pos-counter-page--dedicated
  .pos-current-session-table-toolbar {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }
}

@media (max-width: 640px) {
  .pos-counter-page--dedicated
  .pos-drug-list--ten {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }

  .pos-counter-page--dedicated
  .pos-live-business-performance-grid {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }

  .pos-counter-page--dedicated
  .pos-session-control-card
  > .section-heading {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }

  .pos-counter-page--dedicated
  .pos-transaction-operator-strip {
    grid-template-columns:
      minmax(0, 1fr)
      !important;
  }
}

/* ==============================================================
   UBZ_POS_VNEXT_R4_REFERENCE_MATCH
   Dedicated Pharmacy POS only.
   ============================================================== */

.pos-counter-page--dedicated {
  --ubz-r4-gap: 10px;
  --ubz-r4-border: #e3e9f2;
  --ubz-r4-border-soft: #edf1f6;
  --ubz-r4-text: #10172d;
  --ubz-r4-muted: #61708a;
  --ubz-r4-blue: #0b5cff;
  --ubz-r4-blue-soft: #eef4ff;
  --ubz-r4-green: #08a64a;
  --ubz-r4-bg: #f8fafc;

  width: 100% !important;
  max-width: 1920px !important;
  min-width: 0 !important;
  gap: var(--ubz-r4-gap) !important;
}

.pos-counter-page--dedicated
.pos-terminal-main-scroll,
.pos-counter-page--dedicated
.pos-operating-cockpit-v2,
.pos-counter-page--dedicated
.pos-sale-transaction-section {
  min-width: 0 !important;
}

.pos-counter-page--dedicated
.pos-counter-heading {
  display: none !important;
}


/* Live / Historical */

.pos-counter-page--dedicated
.ubz-pos-vnext-mode {
  min-height: 58px !important;
  padding: 10px 13px !important;

  border: 1px solid #dbe4f1 !important;
  border-radius: 9px !important;

  background: #ffffff !important;
  color: var(--ubz-r4-text) !important;

  box-shadow:
    0 2px 7px rgba(15, 23, 42, .03)
    !important;

  text-align: left !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-mode-live {
  border-color: #85aaff !important;
  background: var(--ubz-r4-blue-soft) !important;
  color: #074bc7 !important;
}

.pos-counter-page--dedicated
.historical-pos-workflow {
  min-width: 0 !important;
  margin: 0 !important;

  border: 1px solid var(--ubz-r4-border) !important;
  border-radius: 9px !important;

  background: #ffffff !important;

  box-shadow:
    0 2px 7px rgba(15, 23, 42, .03)
    !important;
}

.pos-counter-page--dedicated
.historical-pos-launch {
  min-width: 0 !important;
  padding: 7px !important;
}

.pos-counter-page--dedicated
.historical-pos-toggle {
  min-height: 34px !important;
  padding: 6px 10px !important;

  border: 1px solid #cfdcf7 !important;
  border-radius: 7px !important;

  background: #ffffff !important;
  color: #0b5cff !important;

  font-size: .72rem !important;
  font-weight: 800 !important;
}


/* Core cards */

.pos-counter-page--dedicated :is(
  .pos-product-stock-section,
  .pos-session-control-card,
  .pos-sale-cart-section,
  .pos-transaction-setup-section,
  .pos-summary-confirmation-card,
  .pos-payment-summary-section,
  .pos-live-business-performance-card,
  .pos-sales-summary-table-card
) {
  min-width: 0 !important;

  border: 1px solid var(--ubz-r4-border) !important;
  border-radius: 9px !important;

  background: #ffffff !important;

  box-shadow:
    0 2px 8px rgba(15, 23, 42, .035)
    !important;
}

.pos-counter-page--dedicated
.section-heading h3 {
  color: var(--ubz-r4-text) !important;

  font-size: .82rem !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
}

.pos-counter-page--dedicated
.section-heading span {
  color: #3f5f9a !important;

  font-size: .62rem !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
}


/* Catalogue */

.pos-counter-page--dedicated
.pos-product-stock-section {
  padding: 10px !important;
  gap: 8px !important;
}

.pos-counter-page--dedicated
.pos-search-input {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 34px !important;

  border: 1px solid #dce4ef !important;
  border-radius: 7px !important;

  background: #ffffff !important;

  color: var(--ubz-r4-text) !important;

  font-size: .72rem !important;
  box-shadow: none !important;
}

.pos-counter-page--dedicated
.pos-search-input:focus {
  border-color: #85aaff !important;

  outline: 2px solid rgba(11, 92, 255, .08) !important;
  outline-offset: 0 !important;
}

.pos-counter-page--dedicated
.pos-inventory-load-panel {
  min-width: 0 !important;
  gap: 7px !important;

  border: 0 !important;
  background: transparent !important;
}

.pos-counter-page--dedicated
.pos-inventory-load-panel button {
  min-height: 32px !important;
  padding: 5px 10px !important;

  border: 1px solid #9cb8f8 !important;
  border-radius: 7px !important;

  background: #ffffff !important;
  color: var(--ubz-r4-blue) !important;

  font-size: .68rem !important;
  font-weight: 800 !important;
}

.pos-counter-page--dedicated
.pos-inventory-load-panel span {
  color: #596984 !important;

  font-size: .64rem !important;
  line-height: 1.25 !important;
}

.pos-counter-page--dedicated
.ubz-r3-duplicate-stock-loading {
  display: none !important;
}

.pos-counter-page--dedicated
.pos-drug-list--ten {
  min-width: 0 !important;
  gap: 7px !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16 {
  position: relative !important;

  min-width: 0 !important;
  max-width: 100% !important;

  min-height: 84px !important;
  height: auto !important;
  max-height: none !important;

  padding: 9px 40px 9px 50px !important;

  border: 1px solid #e5eaf2 !important;
  border-radius: 8px !important;

  background: #ffffff !important;
  color: var(--ubz-r4-text) !important;

  box-shadow: none !important;
  text-align: left !important;
  transform: none !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16:hover,
.pos-counter-page--dedicated
.pos-product-tile-v16:focus-visible {
  border-color: #99b7f8 !important;

  background: #fbfdff !important;

  box-shadow:
    0 3px 10px rgba(15, 23, 42, .05)
    !important;

  transform: none !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16::before {
  content: "Rx";

  position: absolute !important;

  top: 12px !important;
  left: 10px !important;

  width: 30px !important;
  height: 38px !important;

  display: grid !important;
  place-items: center !important;

  border: 1px solid #dbe5f4 !important;
  border-radius: 6px !important;

  background: #f3f7ff !important;

  color: #4169b7 !important;

  font-size: .62rem !important;
  font-weight: 900 !important;

  pointer-events: none !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16::after {
  content: "+";

  position: absolute !important;

  top: 50% !important;
  right: 8px !important;

  width: 27px !important;
  height: 27px !important;

  display: grid !important;
  place-items: center !important;

  border: 1px solid #8eb0ff !important;
  border-radius: 6px !important;

  background: #ffffff !important;

  color: var(--ubz-r4-blue) !important;

  font-size: 1rem !important;
  line-height: 1 !important;
  font-weight: 800 !important;

  transform: translateY(-50%) !important;

  pointer-events: none !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16 strong,
.pos-counter-page--dedicated
.pos-product-tile-v16 .pos-product-card-name {
  min-width: 0 !important;

  margin: 0 !important;

  color: #11182d !important;

  font-size: .70rem !important;
  line-height: 1.18 !important;
  font-weight: 850 !important;

  overflow-wrap: anywhere !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16 em,
.pos-counter-page--dedicated
.pos-product-card-price {
  margin: 2px 0 !important;

  color: var(--ubz-r4-blue) !important;

  font-size: .68rem !important;
  line-height: 1.15 !important;
  font-style: normal !important;
  font-weight: 850 !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16 .pos-product-card-line,
.pos-counter-page--dedicated
.pos-product-card-stock {
  color: #41506a !important;

  font-size: .60rem !important;
  line-height: 1.18 !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-specs {
  min-width: 0 !important;

  margin-top: 4px !important;

  gap: 3px 6px !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-product-specs span,
.pos-counter-page--dedicated
.ubz-pos-vnext-product-specs small {
  font-size: .58rem !important;
  line-height: 1.16 !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16.product-expiry-expired {
  border-left: 3px solid #dc2626 !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16.product-expiry-critical {
  border-left: 3px solid #ef4444 !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16.product-expiry-warning {
  border-left: 3px solid #f59e0b !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16.product-expiry-watch {
  border-left: 3px solid #eab308 !important;
}

.pos-counter-page--dedicated
.pos-product-tile-v16.product-expiry-safe {
  border-left: 3px solid #22c55e !important;
}


/* Teller session */

.pos-counter-page--dedicated
.pos-session-control-card {
  padding: 9px !important;
  gap: 7px !important;
}

.pos-counter-page--dedicated
.pos-shift-control-grid,
.pos-counter-page--dedicated
.pos-shift-strip-v16 {
  min-width: 0 !important;
  gap: 7px !important;
}

.pos-counter-page--dedicated
.pos-shift-card {
  min-width: 0 !important;

  padding: 8px !important;

  border: 1px solid var(--ubz-r4-border-soft) !important;
  border-radius: 7px !important;

  background: #fbfcfe !important;

  box-shadow: none !important;
}

.pos-counter-page--dedicated
.pos-shift-card--open {
  border-top: 3px solid var(--ubz-r4-blue) !important;
}

.pos-counter-page--dedicated
.pos-shift-card--close {
  border-top: 3px solid #667085 !important;
}

.pos-counter-page--dedicated
.pos-shift-field {
  min-width: 0 !important;
  gap: 4px !important;
}

.pos-counter-page--dedicated
.pos-shift-field > span {
  color: #52617a !important;

  font-size: .61rem !important;
  font-weight: 750 !important;
}

.pos-counter-page--dedicated
.pos-shift-field :is(
  input,
  select
) {
  min-height: 31px !important;

  border-radius: 6px !important;

  font-size: .67rem !important;
}


/* Cart */

.pos-counter-page--dedicated
.pos-sale-cart-section {
  padding: 9px !important;
}

.pos-counter-page--dedicated
.pos-cart-table {
  width: 100% !important;
  table-layout: auto !important;
  border-radius: 6px !important;
}

.pos-counter-page--dedicated
.pos-cart-table th {
  padding: 6px 7px !important;

  font-size: .58rem !important;
  line-height: 1.15 !important;
}

.pos-counter-page--dedicated
.pos-cart-table td {
  padding: 7px !important;

  font-size: .62rem !important;
  line-height: 1.2 !important;
}

.pos-counter-page--dedicated
.pos-cart-remove-button {
  width: 27px !important;
  min-width: 27px !important;
  height: 27px !important;
  min-height: 27px !important;

  padding: 0 !important;

  border-radius: 6px !important;
}


/* Transaction */

.pos-counter-page--dedicated
.pos-transaction-setup-section {
  padding: 9px !important;
  gap: 8px !important;
}

.pos-counter-page--dedicated
.pos-transaction-setup-section label {
  min-width: 0 !important;
  gap: 4px !important;

  color: #43516a !important;

  font-size: .61rem !important;
  font-weight: 750 !important;
}

.pos-counter-page--dedicated
.pos-transaction-setup-section :is(
  input,
  select
) {
  min-width: 0 !important;
  min-height: 32px !important;

  border: 1px solid #dce4ef !important;
  border-radius: 6px !important;

  background: #ffffff !important;

  font-size: .67rem !important;
}


/* Payment */

.pos-counter-page--dedicated
.pos-payment-summary-section {
  padding: 9px !important;
  gap: 7px !important;
}

.pos-counter-page--dedicated
.pos-payment-summary-grid-v17 {
  min-width: 0 !important;
  gap: 5px !important;
}

.pos-counter-page--dedicated
.pos-payment-summary-column {
  min-width: 0 !important;
  gap: 4px !important;
}

.pos-counter-page--dedicated
.pos-summary-field-card {
  min-width: 0 !important;

  padding: 6px 7px !important;

  border: 0 !important;
  border-bottom: 1px solid #eef2f6 !important;
  border-radius: 0 !important;

  background: transparent !important;

  box-shadow: none !important;
}

.pos-counter-page--dedicated
.pos-summary-field-card span {
  color: #4b5b75 !important;

  font-size: .61rem !important;
  line-height: 1.18 !important;
}

.pos-counter-page--dedicated
.pos-summary-field-card strong {
  color: #11182d !important;

  font-size: .67rem !important;
  line-height: 1.18 !important;
  font-weight: 850 !important;
}

.pos-counter-page--dedicated
[data-ubz-r3-payment="total"],
.pos-counter-page--dedicated
[data-ubz-r3-summary="total"],
.pos-counter-page--dedicated
.pos-summary-total {
  border: 0 !important;
  border-radius: 6px !important;

  background: #edf4ff !important;

  color: var(--ubz-r4-blue) !important;
}

.pos-counter-page--dedicated
[data-ubz-r3-payment="total"] strong,
.pos-counter-page--dedicated
[data-ubz-r3-summary="total"] strong,
.pos-counter-page--dedicated
.pos-summary-total strong {
  color: var(--ubz-r4-blue) !important;

  font-weight: 900 !important;
}

.pos-counter-page--dedicated
.pos-summary-sync-note {
  padding: 6px 7px !important;

  border-radius: 6px !important;

  background: #f8fafc !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-action-confirm {
  min-height: 34px !important;

  border: 1px solid #099743 !important;
  border-radius: 6px !important;

  background: var(--ubz-r4-green) !important;

  color: #ffffff !important;

  font-size: .68rem !important;
  font-weight: 850 !important;
}

.pos-counter-page--dedicated
.ubz-pos-vnext-action-refresh,
.pos-counter-page--dedicated
.ubz-pos-vnext-action-print {
  min-height: 32px !important;

  border: 1px solid #88aaff !important;
  border-radius: 6px !important;

  background: #ffffff !important;

  color: var(--ubz-r4-blue) !important;

  font-size: .66rem !important;
  font-weight: 800 !important;
}


/* Performance */

.pos-counter-page--dedicated
.pos-live-business-performance-card {
  padding: 9px !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid {
  min-width: 0 !important;
  gap: 7px !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid > article {
  min-width: 0 !important;

  padding: 9px !important;

  border: 1px solid #e6ebf2 !important;
  border-radius: 8px !important;

  background: #ffffff !important;

  box-shadow: none !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid > article:nth-child(1) {
  border-top: 3px solid #4384ff !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid > article:nth-child(2) {
  border-top: 3px solid #27b467 !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid > article:nth-child(3) {
  border-top: 3px solid #f59e0b !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid > article:nth-child(4) {
  border-top: 3px solid #8b5cf6 !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid > article strong {
  color: #11182d !important;

  font-size: .80rem !important;
  line-height: 1.15 !important;
}

.pos-counter-page--dedicated
.pos-live-business-performance-grid > article small {
  color: #687791 !important;

  font-size: .57rem !important;
  line-height: 1.2 !important;
}


/* Recent transactions */

.pos-counter-page--dedicated
.pos-sales-summary-table-card {
  padding: 9px !important;
}

.pos-counter-page--dedicated
.pos-current-session-table-toolbar {
  gap: 7px !important;
}

.pos-counter-page--dedicated
.pos-current-session-table-toolbar :is(
  input,
  select,
  button
) {
  min-height: 31px !important;

  border-radius: 6px !important;

  font-size: .63rem !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card
.system-table-wrap {
  max-height: 265px !important;

  overflow: auto !important;

  border-radius: 7px !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card table th {
  padding: 7px !important;

  font-size: .56rem !important;
  line-height: 1.15 !important;
}

.pos-counter-page--dedicated
.pos-sales-summary-table-card table td {
  padding: 7px !important;

  font-size: .60rem !important;
  line-height: 1.2 !important;
}


/* Desktop */

@media (min-width: 1280px) {

  .pos-counter-page--dedicated
  .pos-operating-cockpit-v2 {
    display: grid !important;

    grid-template-columns:
      minmax(0, 48fr)
      minmax(0, 52fr)
      !important;

    gap: var(--ubz-r4-gap) !important;

    align-items: start !important;
  }

  .pos-counter-page--dedicated
  .pos-product-stock-section {
    display: grid !important;

    grid-template-columns:
      minmax(0, 1.25fr)
      minmax(190px, .75fr)
      !important;

    gap: 8px !important;

    align-content: start !important;
  }

  .pos-counter-page--dedicated
  .pos-product-stock-section
  > .section-heading {
    grid-column: 1 / -1 !important;
  }

  .pos-counter-page--dedicated
  .pos-product-stock-section
  > .pos-search-input {
    grid-column: 1 !important;
  }

  .pos-counter-page--dedicated
  .pos-product-stock-section
  > .pos-inventory-load-panel {
    grid-column: 2 !important;
    align-self: stretch !important;
  }

  .pos-counter-page--dedicated
  .pos-product-stock-section
  > .form-error {
    grid-column: 1 / -1 !important;
  }

  .pos-counter-page--dedicated
  .pos-product-stock-section
  > .pos-drug-list--ten {
    grid-column: 1 / -1 !important;
  }

  .pos-counter-page--dedicated
  .pos-drug-list--ten {
    display: grid !important;

    grid-template-columns:
      repeat(2, minmax(0, 1fr))
      !important;

    grid-auto-rows:
      minmax(84px, auto)
      !important;

    gap: 7px !important;

    max-height: none !important;

    overflow: visible !important;
  }

  .pos-counter-page--dedicated
  .pos-sale-transaction-section {
    display: grid !important;

    grid-template-columns:
      minmax(0, 1.16fr)
      minmax(290px, .84fr)
      !important;

    grid-template-areas:
      "history history"
      "session payment"
      "cart    payment"
      "setup   payment"
      "confirm payment"
      "kpis    kpis"
      "recent  recent"
      !important;

    gap: 9px !important;

    align-items: start !important;

    min-width: 0 !important;

    padding: 0 !important;

    border: 0 !important;
    background: transparent !important;

    box-shadow: none !important;
  }

  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .historical-pos-workflow {
    grid-area: history !important;
  }

  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-shift-control-section {
    grid-area: session !important;
  }

  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-sale-cart-section {
    grid-area: cart !important;
  }

  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-transaction-setup-section {
    grid-area: setup !important;
  }

  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-summary-confirmation-card {
    grid-area: confirm !important;
  }

  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-payment-summary-section {
    grid-area: payment !important;
    align-self: stretch !important;
  }

  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-live-business-performance-card {
    grid-area: kpis !important;
  }

  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-sales-summary-table-card {
    grid-area: recent !important;
  }

  .pos-counter-page--dedicated
  .pos-shift-control-grid,
  .pos-counter-page--dedicated
  .pos-shift-strip-v16 {
    grid-template-columns:
      repeat(2, minmax(0, 1fr))
      !important;
  }

  .pos-counter-page--dedicated
  .pos-live-business-performance-grid {
    grid-template-columns:
      repeat(4, minmax(0, 1fr))
      !important;
  }

}


/* Tablet */

@media (min-width: 820px) and (max-width: 1279px) {

  .pos-counter-page--dedicated
  .pos-operating-cockpit-v2 {
    display: grid !important;

    grid-template-columns:
      minmax(0, 44fr)
      minmax(0, 56fr)
      !important;

    gap: 9px !important;
  }

  .pos-counter-page--dedicated
  .pos-drug-list--ten {
    grid-template-columns:
      1fr
      !important;
  }

  .pos-counter-page--dedicated
  .pos-sale-transaction-section {
    display: grid !important;

    grid-template-columns:
      1fr
      !important;

    gap: 8px !important;
  }

  .pos-counter-page--dedicated
  .pos-live-business-performance-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr))
      !important;
  }

}


/* Mobile */

@media (max-width: 819px) {

  .pos-counter-page--dedicated
  .pos-operating-cockpit-v2,
  .pos-counter-page--dedicated
  .pos-sale-transaction-section {
    display: grid !important;

    grid-template-columns:
      1fr
      !important;

    gap: 8px !important;
  }

  .pos-counter-page--dedicated
  .pos-drug-list--ten {
    grid-template-columns:
      1fr
      !important;

    gap: 7px !important;
  }

  .pos-counter-page--dedicated
  .pos-shift-control-grid,
  .pos-counter-page--dedicated
  .pos-shift-strip-v16,
  .pos-counter-page--dedicated
  .pos-live-business-performance-grid {
    grid-template-columns:
      1fr
      !important;
  }

  .pos-counter-page--dedicated
  .pos-product-tile-v16 {
    min-height: 82px !important;
  }

}

/* ==============================================================
   UBZ_POS_VNEXT_R5_SESSION_WORKFLOW

   Dedicated Pharmacy POS only.

   Exact active owners:
   - Historical workflow:
     .pos-mobile-session-addon
   - Live session:
     .pos-shift-control-section

   No Admin shell / Dock / unrelated module selectors.
   ============================================================== */

.pos-counter-page--dedicated {
  --ubz-r5-blue: #2563eb;
  --ubz-r5-blue-soft: #eff6ff;
  --ubz-r5-green: #15803d;
  --ubz-r5-green-soft: #f0fdf4;
  --ubz-r5-border: #dbe3ef;
  --ubz-r5-text: #0f172a;
  --ubz-r5-muted: #64748b;
}


/* ==============================================================
   SESSION WORKFLOW

   Both native session surfaces are removed from normal inline
   workspace flow.

   They remain the original React-controlled components and are
   shown only when the corresponding R5 launcher opens them.
   ============================================================== */

.pos-counter-page--dedicated
.pos-sale-transaction-section
> .pos-mobile-session-addon,
.pos-counter-page--dedicated
.pos-sale-transaction-section
> .pos-shift-control-section {
  display: none !important;
}


/* Historical POS modal owner */

.pos-counter-page--dedicated[data-ubz-r5-modal="historical"]
.pos-sale-transaction-section
> .pos-mobile-session-addon {
  display: block !important;

  position: fixed !important;

  left: 50% !important;
  top: 50% !important;

  width: min(
    820px,
    calc(100vw - 32px)
  ) !important;

  max-width: min(
    820px,
    calc(100vw - 32px)
  ) !important;

  max-height: min(
    86vh,
    780px
  ) !important;

  margin: 0 !important;
  padding: 42px 16px 16px !important;

  overflow-x: hidden !important;
  overflow-y: auto !important;

  transform:
    translate(-50%, -50%)
    !important;

  border: 1px solid #cbd5e1 !important;
  border-radius: 14px !important;

  background: #ffffff !important;

  box-shadow:
    0 0 0 100vmax rgba(15, 23, 42, .45),
    0 28px 70px rgba(15, 23, 42, .22)
    !important;

  z-index: 10060 !important;

  grid-area: unset !important;
}


/* Neutralize previous card treatment inside the historical modal */

.pos-counter-page--dedicated[data-ubz-r5-modal="historical"]
.pos-mobile-session-addon
> .historical-pos-workflow {
  display: block !important;

  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
  border-radius: 0 !important;

  background: #ffffff !important;

  box-shadow: none !important;
}


/* Live POS modal owner */

.pos-counter-page--dedicated[data-ubz-r5-modal="live"]
.pos-sale-transaction-section
> .pos-shift-control-section {
  display: block !important;

  position: fixed !important;

  left: 50% !important;
  top: 50% !important;

  width: min(
    760px,
    calc(100vw - 32px)
  ) !important;

  max-width: min(
    760px,
    calc(100vw - 32px)
  ) !important;

  max-height: min(
    84vh,
    760px
  ) !important;

  margin: 0 !important;
  padding: 42px 16px 16px !important;

  overflow-x: hidden !important;
  overflow-y: auto !important;

  transform:
    translate(-50%, -50%)
    !important;

  border: 1px solid #cbd5e1 !important;
  border-radius: 14px !important;

  background: #ffffff !important;

  box-shadow:
    0 0 0 100vmax rgba(15, 23, 42, .45),
    0 28px 70px rgba(15, 23, 42, .22)
    !important;

  z-index: 10060 !important;

  grid-area: unset !important;
}


/* Modal close */

.pos-counter-page--dedicated
.ubz-r5-modal-close {
  position: absolute !important;

  top: 10px !important;
  right: 10px !important;

  display: inline-flex !important;

  align-items: center !important;
  justify-content: center !important;

  width: 30px !important;
  min-width: 30px !important;

  height: 30px !important;
  min-height: 30px !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 1px solid #cbd5e1 !important;
  border-radius: 8px !important;

  background: #ffffff !important;
  color: #334155 !important;

  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1 !important;

  cursor: pointer !important;

  z-index: 3 !important;
}


.pos-counter-page--dedicated
.ubz-r5-modal-close:hover {
  border-color: #94a3b8 !important;
  background: #f8fafc !important;
}


/* ==============================================================
   TRANSACTION SET-UP LAUNCHERS
   ============================================================== */

.pos-counter-page--dedicated
.ubz-r5-session-launchers {
  grid-column: 1 / -1 !important;

  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap: 7px !important;

  width: 100% !important;

  margin: 0 0 5px !important;
}


.pos-counter-page--dedicated
.ubz-r5-session-launcher {
  min-height: 38px !important;

  margin: 0 !important;

  padding: 7px 10px !important;

  border-radius: 8px !important;

  font-size: .78rem !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;

  box-shadow: none !important;
}


.pos-counter-page--dedicated
.ubz-r5-session-launcher--live {
  border:
    1px solid var(--ubz-r5-blue)
    !important;

  background:
    var(--ubz-r5-blue)
    !important;

  color: #ffffff !important;
}


.pos-counter-page--dedicated
.ubz-r5-session-launcher--historical {
  border: 1px solid #cbd5e1 !important;

  background: #f8fafc !important;

  color: #334155 !important;
}


/* ==============================================================
   TRANSACTION SET-UP
   Exact runtime section itself already carries
   pos-transaction-setup-card--two-column.
   ============================================================== */

.pos-counter-page--dedicated
.pos-transaction-setup-section.pos-transaction-setup-card--two-column {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap: 7px 8px !important;

  align-content: start !important;
  align-items: start !important;

  min-width: 0 !important;

  padding: 10px !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
> .section-heading,
.pos-counter-page--dedicated
.pos-transaction-setup-section
> .ubz-r5-transaction-title,
.pos-counter-page--dedicated
.pos-transaction-setup-section
> .ubz-r5-session-launchers,
.pos-counter-page--dedicated
.pos-transaction-setup-section
> .form-error {
  grid-column: 1 / -1 !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
.section-heading {
  margin-bottom: 1px !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
.section-heading h3,
.pos-counter-page--dedicated
.ubz-r5-transaction-title {
  margin: 0 !important;

  color: #0f172a !important;

  font-size: .88rem !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
label {
  min-width: 0 !important;

  margin: 0 !important;

  gap: 4px !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
:is(
  input,
  select,
  textarea
) {
  width: 100% !important;
  min-width: 0 !important;
}


/* ==============================================================
   PRODUCT CATALOGUE

   Desktop default:
   2 columns x 4 visible rows.
   Additional products remain available by vertical scrolling.
   ============================================================== */

.pos-counter-page--dedicated
.pos-product-stock-section
> .pos-drug-list--ten {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  grid-auto-rows:
    minmax(112px, auto)
    !important;

  gap: 7px !important;

  max-height: 476px !important;

  overflow-x: hidden !important;
  overflow-y: auto !important;

  overscroll-behavior:
    contain
    !important;

  padding-right: 3px !important;

  align-content: start !important;

  scrollbar-gutter:
    stable
    !important;
}


.pos-counter-page--dedicated
.pos-product-tile-v16 {
  min-height: 112px !important;
  height: auto !important;

  padding:
    8px
    40px
    8px
    50px
    !important;

  overflow: hidden !important;
}


/* Hide only the previous VNext-generated product specs after the
   R5 replacement specs have been created. */

.pos-counter-page--dedicated
.pos-product-tile-v16[data-ubz-r5-product-specs="1"]
> .ubz-pos-vnext-product-specs {
  display: none !important;
}


/* R5 visible product attributes */

.pos-counter-page--dedicated
.pos-product-tile-v16
> .ubz-r5-product-specs {
  display: grid !important;

  visibility: visible !important;
  opacity: 1 !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap: 4px 8px !important;

  width: 100% !important;
  min-width: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  pointer-events: none !important;
}


.pos-counter-page--dedicated
.ubz-r5-product-spec {
  display: grid !important;

  grid-template-columns:
    minmax(0, auto)
    minmax(0, 1fr)
    !important;

  gap: 5px !important;

  min-width: 0 !important;

  align-items: baseline !important;
}


.pos-counter-page--dedicated
.ubz-r5-product-spec:first-child {
  grid-column: 1 / -1 !important;
}


.pos-counter-page--dedicated
.ubz-r5-product-spec-label {
  color: #64748b !important;

  font-size: .61rem !important;
  font-weight: 750 !important;
  line-height: 1.1 !important;

  white-space: nowrap !important;
}


.pos-counter-page--dedicated
.ubz-r5-product-spec-value {
  min-width: 0 !important;

  color: #0f172a !important;

  font-size: .69rem !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;

  overflow-wrap: anywhere !important;
}


.pos-counter-page--dedicated
.ubz-r5-product-spec:first-child
.ubz-r5-product-spec-value {
  font-size: .76rem !important;
  font-weight: 900 !important;
}


/* ==============================================================
   SESSION METRICS
   Direct sibling immediately before Payment Summary.
   ============================================================== */

.pos-counter-page--dedicated
.ubz-r5-session-metrics {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap: 7px !important;

  width: 100% !important;

  margin: 0 !important;
}


.pos-counter-page--dedicated
.ubz-r5-session-metric {
  min-width: 0 !important;

  margin: 0 !important;
  padding: 8px 9px !important;

  border: 1px solid #dbe3ef !important;
  border-radius: 9px !important;

  background: #f8fafc !important;

  box-shadow: none !important;
}


.pos-counter-page--dedicated
.ubz-r5-session-metric:first-child {
  border-top:
    3px solid #2563eb
    !important;
}


.pos-counter-page--dedicated
.ubz-r5-session-metric:last-child {
  border-top:
    3px solid #16a34a
    !important;
}


.pos-counter-page--dedicated
.ubz-r5-session-metric-label {
  display: block !important;

  margin: 0 0 3px !important;

  color: #64748b !important;

  font-size: .60rem !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;

  text-transform: uppercase !important;

  letter-spacing: .035em !important;
}


.pos-counter-page--dedicated
.ubz-r5-session-metric-value {
  display: block !important;

  color: #0f172a !important;

  font-size: .98rem !important;
  font-weight: 900 !important;
  line-height: 1.05 !important;
}


.pos-counter-page--dedicated
.ubz-r5-session-metric-detail {
  display: block !important;

  margin-top: 3px !important;

  color: #64748b !important;

  font-size: .57rem !important;
  font-weight: 650 !important;
  line-height: 1.15 !important;
}


/* ==============================================================
   COMPACT PAYMENT SUMMARY
   ============================================================== */

.pos-counter-page--dedicated
.pos-payment-summary-section {
  align-self: start !important;

  padding: 8px !important;

  gap: 5px !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  .pos-payment-summary-grid,
  .pos-payment-summary-grid-v17
) {
  gap: 4px 6px !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-column {
  gap: 3px !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-field-card {
  display: flex !important;

  align-items: center !important;
  justify-content: space-between !important;

  gap: 8px !important;

  min-height: 29px !important;

  margin: 0 !important;

  padding: 4px 7px !important;

  border-radius: 6px !important;

  box-shadow: none !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-field-card
:is(
  span,
  small
) {
  margin: 0 !important;

  font-size: .62rem !important;
  line-height: 1.1 !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-field-card
:is(
  strong,
  em
) {
  margin: 0 !important;

  font-size: .74rem !important;
  line-height: 1.1 !important;

  text-align: right !important;
}


.pos-counter-page--dedicated
.pos-summary-field-card[data-ubz-r5-summary-role="total"] {
  border-color: #93c5fd !important;

  background: #eff6ff !important;
}


.pos-counter-page--dedicated
.pos-summary-field-card[data-ubz-r5-summary-role="total"]
:is(
  strong,
  em
) {
  color: #1d4ed8 !important;

  font-size: .84rem !important;
  font-weight: 950 !important;
}


.pos-counter-page--dedicated
.pos-summary-field-card[data-ubz-r5-summary-role="customer"] {
  border-color: #bfdbfe !important;

  background: #f8fbff !important;
}


.pos-counter-page--dedicated
.pos-summary-field-card[data-ubz-r5-summary-role="insurer"] {
  border-color: #bbf7d0 !important;

  background: #f0fdf4 !important;
}


.pos-counter-page--dedicated
.pos-summary-sync-note {
  min-height: 0 !important;

  margin: 2px 0 !important;

  padding: 5px 6px !important;

  font-size: .59rem !important;
  line-height: 1.15 !important;
}


.pos-counter-page--dedicated
.pos-transaction-completion-actions--summary
button {
  min-height: 34px !important;

  margin: 5px 0 0 !important;

  padding: 6px 10px !important;

  font-size: .73rem !important;
}


/* ==============================================================
   DESKTOP GRID

   No inline Historical or Live Session rows.
   Two session metric cards sit above Payment Summary.
   ============================================================== */

@media (min-width: 1280px) {

  .pos-counter-page--dedicated
  .pos-sale-transaction-section {
    grid-template-areas:
      "cart    metrics"
      "cart    payment"
      "setup   payment"
      "confirm payment"
      "kpis    kpis"
      "recent  recent"
      !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .ubz-r5-session-metrics {
    grid-area: metrics !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-payment-summary-section {
    grid-area: payment !important;
  }

}


/* ==============================================================
   RESPONSIVE
   ============================================================== */

@media (max-width: 1100px) {

  .pos-counter-page--dedicated
  .pos-transaction-setup-section.pos-transaction-setup-card--two-column {
    grid-template-columns:
      1fr
      !important;
  }


  .pos-counter-page--dedicated
  .pos-transaction-setup-section
  > * {
    grid-column: 1 !important;
  }

}


@media (max-width: 819px) {

  .pos-counter-page--dedicated
  .pos-product-stock-section
  > .pos-drug-list--ten {
    grid-template-columns:
      1fr
      !important;

    max-height: 476px !important;
  }

}


@media (max-width: 640px) {

  .pos-counter-page--dedicated
  .ubz-r5-session-launchers,
  .pos-counter-page--dedicated
  .ubz-r5-session-metrics {
    grid-template-columns:
      1fr
      !important;
  }


  .pos-counter-page--dedicated[data-ubz-r5-modal="live"]
  .pos-sale-transaction-section
  > .pos-shift-control-section,
  .pos-counter-page--dedicated[data-ubz-r5-modal="historical"]
  .pos-sale-transaction-section
  > .pos-mobile-session-addon {
    width:
      calc(100vw - 18px)
      !important;

    max-width:
      calc(100vw - 18px)
      !important;

    max-height: 88vh !important;

    padding:
      42px
      11px
      12px
      !important;
  }


  .pos-counter-page--dedicated[data-ubz-r5-modal="live"]
  .pos-shift-control-grid,
  .pos-counter-page--dedicated[data-ubz-r5-modal="historical"]
  .historical-pos-form-grid {
    grid-template-columns:
      1fr
      !important;
  }


  .pos-counter-page--dedicated
  .ubz-r5-product-specs {
    grid-template-columns:
      1fr
      !important;
  }


  .pos-counter-page--dedicated
  .ubz-r5-product-spec {
    grid-column: 1 !important;
  }

}

/* ==============================================================
   UBZ_POS_VNEXT_R5_1_LAYOUT_REFINEMENT

   Dedicated Pharmacy POS Counter only.

   - Session launchers at top of Cart
   - Full-width Transaction Set-Up field grid
   - Six compact catalogue rows
   - Remove Live Operations performance presentation
   - Recent Sales full width below setup/payment in right workspace
   ============================================================== */


/* ==============================================================
   1. SESSION BUTTONS AT TOP OF CART
   ============================================================== */

.pos-counter-page--dedicated
.pos-sale-cart-section
> .ubz-r5-session-launchers {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap: 7px !important;

  width: 100% !important;

  margin:
    0
    0
    8px
    0
    !important;

  padding: 0 !important;

  grid-column:
    1 / -1
    !important;
}


/* Safety: launcher row no longer belongs in Transaction Set-Up. */

.pos-counter-page--dedicated
.pos-transaction-setup-section
> .ubz-r5-session-launchers {
  display: none !important;
}


/* ==============================================================
   2. TRANSACTION SET-UP — USE THE WHOLE PROVIDED SECTION
   ============================================================== */

.pos-counter-page--dedicated
.pos-transaction-setup-section.pos-transaction-setup-card--two-column {
  width: 100% !important;
  max-width: none !important;

  min-width: 0 !important;

  align-self: start !important;

  padding: 10px !important;

  overflow: visible !important;
}


/*
 * Critical correction:
 *
 * The native .pos-field-grid--two is ONE direct child of the
 * two-column section. It must span both parent grid tracks.
 *
 * Without grid-column: 1 / -1 it visually occupies only half of
 * the Transaction Set-Up section.
 */

.pos-counter-page--dedicated
.pos-transaction-setup-section
> .pos-field-grid.pos-field-grid--two {
  grid-column:
    1 / -1
    !important;

  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap:
    7px
    8px
    !important;

  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  align-items: start !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
> .pos-field-grid.pos-field-grid--two
> label {
  width: 100% !important;
  min-width: 0 !important;

  margin: 0 !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
> .pos-field-grid.pos-field-grid--two
:is(
  input,
  select,
  textarea,
  button
) {
  width: 100% !important;
  max-width: 100% !important;

  min-width: 0 !important;
}


/* ==============================================================
   3. PRODUCT SEARCH & STOCK PICK
      SIX VISIBLE COMPACT ROWS
      NO FORCED EMPTY HEIGHT
   ============================================================== */

.pos-counter-page--dedicated
.pos-product-stock-section {
  align-self: start !important;

  height: max-content !important;
  min-height: 0 !important;

  max-height: none !important;

  padding: 9px !important;

  gap: 7px !important;
}


/*
 * 2 columns x 6 visible rows = up to 12 product cards.
 *
 * Row height = 64px
 * Five inter-row gaps = 5 x 6px
 * Visible viewport = 414px
 *
 * Because only max-height is defined, fewer products do not create
 * artificial empty vertical space.
 */

.pos-counter-page--dedicated
.pos-product-stock-section
> .pos-drug-list--ten {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  grid-auto-rows:
    64px
    !important;

  gap: 6px !important;

  width: 100% !important;
  min-width: 0 !important;

  height: auto !important;

  max-height: 414px !important;

  min-height: 0 !important;

  overflow-x: hidden !important;
  overflow-y: auto !important;

  align-content: start !important;

  overscroll-behavior:
    contain
    !important;

  scrollbar-gutter:
    stable
    !important;

  padding-right: 3px !important;
}


.pos-counter-page--dedicated
.pos-product-tile-v16 {
  min-height: 64px !important;
  height: 64px !important;
  max-height: 64px !important;

  padding:
    5px
    36px
    5px
    44px
    !important;

  border-radius: 7px !important;

  overflow: hidden !important;
}


/* Compact decorative medicine marker */

.pos-counter-page--dedicated
.pos-product-tile-v16::before {
  top: 8px !important;
  left: 8px !important;

  width: 27px !important;
  height: 30px !important;

  font-size: .56rem !important;
}


/* Compact add indicator */

.pos-counter-page--dedicated
.pos-product-tile-v16::after {
  right: 6px !important;

  width: 24px !important;
  height: 24px !important;

  font-size: .88rem !important;
}


/* Five visible attributes in three compact visual lines */

.pos-counter-page--dedicated
.pos-product-tile-v16
> .ubz-r5-product-specs {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  grid-template-rows:
    auto
    auto
    auto
    !important;

  gap:
    1px
    6px
    !important;

  width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;

  line-height: 1 !important;

  overflow: hidden !important;
}


.pos-counter-page--dedicated
.ubz-r5-product-spec:first-child {
  grid-column:
    1 / -1
    !important;
}


.pos-counter-page--dedicated
.ubz-r5-product-spec {
  display: flex !important;

  min-width: 0 !important;

  gap: 3px !important;

  align-items: baseline !important;

  overflow: hidden !important;
}


.pos-counter-page--dedicated
.ubz-r5-product-spec-label {
  flex: 0 0 auto !important;

  font-size: .50rem !important;
  line-height: 1 !important;

  white-space: nowrap !important;
}


.pos-counter-page--dedicated
.ubz-r5-product-spec-value {
  min-width: 0 !important;

  font-size: .57rem !important;
  line-height: 1.05 !important;

  white-space: nowrap !important;

  overflow: hidden !important;
  text-overflow: ellipsis !important;
}


.pos-counter-page--dedicated
.ubz-r5-product-spec:first-child
.ubz-r5-product-spec-value {
  display: block !important;

  width: 100% !important;

  font-size: .64rem !important;
  font-weight: 900 !important;

  white-space: nowrap !important;

  overflow: hidden !important;
  text-overflow: ellipsis !important;
}


/* ==============================================================
   4. REMOVE LIVE OPERATIONS / TODAY'S PERFORMANCE
   ============================================================== */

.pos-counter-page--dedicated
.pos-live-business-performance-card,
.pos-counter-page--dedicated
.pos-live-business-performance-grid,
.pos-counter-page--dedicated
.pos-transaction-operator-strip {
  display: none !important;
}


/* ==============================================================
   5. RIGHT WORKSPACE COMPOSITION
      Cart + Payment / Transaction Setup
      Recent Sales below BOTH
   ============================================================== */

@media (min-width: 1280px) {

  .pos-counter-page--dedicated
  .pos-sale-transaction-section {
    display: grid !important;

    grid-template-columns:
      minmax(0, 1.16fr)
      minmax(280px, .84fr)
      !important;

    grid-template-areas:
      "cart    metrics"
      "cart    payment"
      "setup   payment"
      "confirm payment"
      "recent  recent"
      !important;

    gap: 8px !important;

    align-items: start !important;

    min-width: 0 !important;

    padding: 0 !important;

    border: 0 !important;

    background: transparent !important;

    box-shadow: none !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-sale-cart-section {
    grid-area:
      cart
      !important;

    width: 100% !important;
    max-width: none !important;

    min-width: 0 !important;

    align-self: start !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-transaction-setup-section {
    grid-area:
      setup
      !important;

    width: 100% !important;
    max-width: none !important;

    min-width: 0 !important;

    align-self: start !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .ubz-r5-session-metrics {
    grid-area:
      metrics
      !important;

    width: 100% !important;

    align-self: start !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-payment-summary-section {
    grid-area:
      payment
      !important;

    width: 100% !important;
    max-width: none !important;

    min-width: 0 !important;

    align-self: start !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-summary-confirmation-card {
    grid-area:
      confirm
      !important;

    width: 100% !important;
    max-width: none !important;

    min-width: 0 !important;
  }


  /*
   * Recent Sales spans the entire RIGHT POS workspace only.
   *
   * Product Search remains the left 48% workspace, so Recent Sales
   * stays physically beside the Product Search & Stock Pick panel.
   */

  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-sales-summary-table-card {
    grid-area:
      recent
      !important;

    grid-column:
      1 / -1
      !important;

    width: 100% !important;
    max-width: none !important;

    min-width: 0 !important;

    margin: 0 !important;

    align-self: start !important;
  }


  .pos-counter-page--dedicated
  .pos-sales-summary-table-card
  .system-table-wrap {
    width: 100% !important;

    max-height: 280px !important;

    overflow:
      auto
      !important;
  }

}


/* ==============================================================
   MEDIUM WIDTH
   Keep Recent Sales below the transactional cards.
   ============================================================== */

@media (min-width: 820px) and (max-width: 1279px) {

  .pos-counter-page--dedicated
  .pos-sale-transaction-section {
    display: grid !important;

    grid-template-columns:
      1fr
      !important;

    gap: 8px !important;
  }


  .pos-counter-page--dedicated
  .pos-sales-summary-table-card {
    width: 100% !important;
    max-width: none !important;
  }


  .pos-counter-page--dedicated
  .pos-product-stock-section
  > .pos-drug-list--ten {
    grid-template-columns:
      repeat(2, minmax(0, 1fr))
      !important;

    max-height: 414px !important;
  }

}


/* ==============================================================
   MOBILE
   ============================================================== */

@media (max-width: 819px) {

  .pos-counter-page--dedicated
  .pos-transaction-setup-section
  > .pos-field-grid.pos-field-grid--two {
    grid-template-columns:
      1fr
      !important;
  }


  .pos-counter-page--dedicated
  .pos-product-stock-section
  > .pos-drug-list--ten {
    grid-template-columns:
      1fr
      !important;

    grid-auto-rows:
      70px
      !important;

    max-height:
      450px
      !important;
  }


  .pos-counter-page--dedicated
  .pos-product-tile-v16 {
    min-height:
      70px
      !important;

    height:
      70px
      !important;

    max-height:
      70px
      !important;
  }

}


@media (max-width: 640px) {

  .pos-counter-page--dedicated
  .pos-sale-cart-section
  > .ubz-r5-session-launchers {
    grid-template-columns:
      1fr
      !important;
  }

}

/* ==============================================================
   UBZ_POS_VNEXT_R5_2_COMPACT_ALIGNMENT

   Dedicated Pharmacy POS only.

   1. Compact Cart / Transaction Set-Up / Payment typography
   2. Product card ends at actual six-row catalogue viewport
   3. Recent Sales stays below the RIGHT transaction workspace
   ============================================================== */


/* ==============================================================
   CART — REDUCE TYPOGRAPHY
   ============================================================== */

.pos-counter-page--dedicated
.pos-sale-cart-section
:is(
  h2,
  h3,
  h4,
  .section-heading strong
) {
  font-size: .76rem !important;
  line-height: 1.15 !important;
}


.pos-counter-page--dedicated
.pos-sale-cart-section
button {
  font-size: .62rem !important;
  line-height: 1.1 !important;
}


.pos-counter-page--dedicated
.pos-sale-cart-section
.pos-cart-table
th {
  font-size: .56rem !important;
  line-height: 1.1 !important;
}


.pos-counter-page--dedicated
.pos-sale-cart-section
.pos-cart-table
td {
  font-size: .63rem !important;
  line-height: 1.15 !important;
}


.pos-counter-page--dedicated
.pos-sale-cart-section
:is(
  input,
  select
) {
  font-size: .63rem !important;
}


/* ==============================================================
   TRANSACTION SET-UP — REDUCE TYPOGRAPHY
   ============================================================== */

.pos-counter-page--dedicated
.pos-transaction-setup-section
:is(
  h2,
  h3,
  h4,
  .section-heading strong,
  .ubz-r5-transaction-title
) {
  font-size: .76rem !important;
  line-height: 1.15 !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
label {
  font-size: .58rem !important;
  line-height: 1.1 !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
:is(
  input,
  select,
  textarea,
  button
) {
  font-size: .64rem !important;
  line-height: 1.15 !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
:is(
  small,
  .form-hint,
  .form-helper
) {
  font-size: .55rem !important;
}


/* Ensure actual native two-column form uses the whole card. */

.pos-counter-page--dedicated
.pos-transaction-setup-section
> .pos-field-grid.pos-field-grid--two {
  grid-column: 1 / -1 !important;

  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}


/* ==============================================================
   PAYMENT SUMMARY — REDUCE TYPOGRAPHY
   ============================================================== */

.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  h2,
  h3,
  h4,
  .section-heading strong
) {
  font-size: .76rem !important;
  line-height: 1.15 !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-field-card
:is(
  span,
  small
) {
  font-size: .56rem !important;
  line-height: 1.08 !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-field-card
:is(
  strong,
  em
) {
  font-size: .68rem !important;
  line-height: 1.08 !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-field-card[data-ubz-r5-summary-role="total"]
:is(
  strong,
  em
) {
  font-size: .76rem !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-sync-note {
  font-size: .54rem !important;
  line-height: 1.1 !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
button {
  font-size: .64rem !important;
}


/* ==============================================================
   REMOVE PRODUCT SECTION EMPTY SPACE

   The Product Search card must size from its own content.
   It must not stretch to match the taller right-hand workspace.

   Six rows remain the default visible catalogue.
   ============================================================== */

.pos-counter-page--dedicated
.pos-operating-cockpit-v2 {
  align-items: start !important;
  align-content: start !important;
}


.pos-counter-page--dedicated
.pos-operating-cockpit-v2
> .pos-product-stock-section {
  align-self: start !important;

  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;

  block-size: auto !important;
  min-block-size: 0 !important;

  flex: none !important;

  overflow: visible !important;

  margin-bottom: 0 !important;
  padding-bottom: 9px !important;

  box-sizing: border-box !important;
}


/*
 * Six visible rows:
 *
 * 6 x 64px cards
 * + 5 x 6px gaps
 * = 414px maximum default viewport.
 *
 * Fewer products => list shrinks naturally.
 * More products => vertical scrollbar.
 */

.pos-counter-page--dedicated
.pos-product-stock-section
> .pos-drug-list--ten {
  align-self: start !important;

  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  grid-auto-rows:
    64px
    !important;

  gap: 6px !important;

  width: 100% !important;

  height: auto !important;
  min-height: 0 !important;
  max-height: 414px !important;

  flex:
    0
    0
    auto
    !important;

  overflow-x: hidden !important;
  overflow-y: auto !important;

  align-content: start !important;

  margin-bottom: 0 !important;

  overscroll-behavior:
    contain
    !important;

  scrollbar-gutter:
    stable
    !important;
}


.pos-counter-page--dedicated
.pos-product-stock-section
> .pos-drug-list--ten:last-child {
  margin-bottom: 0 !important;
}


/* ==============================================================
   RECENT SALES — RIGHT WORKSPACE

   Desktop:

   LEFT
   Product Search & Stock Pick

   RIGHT
   Cart                | Session Metrics
   Cart                | Payment Summary
   Transaction Set-Up  | Payment Summary
   Confirm             | Payment Summary
   Recent Sales        | Recent Sales

   Recent Sales spans the internal RIGHT workspace only.
   ============================================================== */

@media (min-width: 1280px) {

  .pos-counter-page--dedicated
  .pos-operating-cockpit-v2 {
    display: grid !important;

    grid-template-columns:
      minmax(0, 48fr)
      minmax(0, 52fr)
      !important;

    gap: 8px !important;

    align-items: start !important;
    align-content: start !important;
  }


  .pos-counter-page--dedicated
  .pos-operating-cockpit-v2
  > .pos-product-stock-section {
    grid-column: 1 !important;
    grid-row: 1 !important;

    align-self: start !important;

    height: auto !important;
    min-height: 0 !important;
  }


  .pos-counter-page--dedicated
  .pos-operating-cockpit-v2
  > .pos-sale-transaction-section {
    grid-column: 2 !important;
    grid-row: 1 !important;

    align-self: start !important;

    width: 100% !important;
    min-width: 0 !important;

    display: grid !important;

    grid-template-columns:
      minmax(0, 1.14fr)
      minmax(280px, .86fr)
      !important;

    grid-template-areas:
      "cart    metrics"
      "cart    payment"
      "setup   payment"
      "confirm payment"
      "recent  recent"
      !important;

    gap: 8px !important;

    align-items: start !important;
    align-content: start !important;

    padding: 0 !important;

    border: 0 !important;

    background: transparent !important;

    box-shadow: none !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-sale-cart-section {
    grid-area: cart !important;

    align-self: start !important;

    width: 100% !important;
    min-width: 0 !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .ubz-r5-session-metrics {
    grid-area: metrics !important;

    align-self: start !important;

    width: 100% !important;
    min-width: 0 !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-transaction-setup-section {
    grid-area: setup !important;

    align-self: start !important;

    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-payment-summary-section {
    grid-area: payment !important;

    align-self: start !important;

    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;

    height: auto !important;
    min-height: 0 !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-summary-confirmation-card {
    grid-area: confirm !important;

    align-self: start !important;

    width: 100% !important;
    min-width: 0 !important;
  }


  /*
   * Requested location:
   * directly beneath Transaction Set-Up + Payment Summary.
   *
   * It spans only the two INTERNAL right workspace columns.
   */

  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-sales-summary-table-card.pos-recent-transactions-bottom {
    grid-area: recent !important;

    grid-column:
      1 / -1
      !important;

    position: static !important;

    float: none !important;
    clear: none !important;

    align-self: start !important;

    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;

    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
  }


  .pos-counter-page--dedicated
  .pos-sales-summary-table-card
  .system-table-wrap {
    width: 100% !important;

    max-height: 250px !important;

    overflow:
      auto
      !important;
  }

}


/* ==============================================================
   TABLET
   ============================================================== */

@media (min-width: 820px) and (max-width: 1279px) {

  .pos-counter-page--dedicated
  .pos-operating-cockpit-v2 {
    align-items: start !important;
    align-content: start !important;
  }


  .pos-counter-page--dedicated
  .pos-product-stock-section {
    align-self: start !important;

    height: auto !important;
    min-height: 0 !important;
  }


  .pos-counter-page--dedicated
  .pos-sales-summary-table-card {
    width: 100% !important;
    max-width: none !important;
  }

}


/* ==============================================================
   MOBILE
   ============================================================== */

@media (max-width: 819px) {

  .pos-counter-page--dedicated
  .pos-product-stock-section {
    height: auto !important;
    min-height: 0 !important;
  }


  .pos-counter-page--dedicated
  .pos-product-stock-section
  > .pos-drug-list--ten {
    grid-template-columns:
      1fr
      !important;

    grid-auto-rows:
      70px
      !important;

    max-height:
      450px
      !important;
  }


  .pos-counter-page--dedicated
  .pos-transaction-setup-section
  > .pos-field-grid.pos-field-grid--two {
    grid-template-columns:
      1fr
      !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-cart-section
  .pos-cart-table
  td {
    font-size: .62rem !important;
  }


  .pos-counter-page--dedicated
  .pos-transaction-setup-section
  :is(
    input,
    select,
    textarea,
    button
  ) {
    font-size: .63rem !important;
  }

}

/* ==============================================================
   UBZ_POS_VNEXT_R5_3_FINAL_CLOSEOUT

   Final visual closeout for dedicated Pharmacy POS only.

   1. Compact checkout typography
   2. Product panel ends at catalogue instead of stretching
   3. Recent Sales belongs to right transaction workspace
   ============================================================== */


/* ==============================================================
   1. CART TYPOGRAPHY
   ============================================================== */

.pos-counter-page--dedicated
.pos-sale-cart-section
:is(
  h2,
  h3,
  h4,
  .section-heading strong
) {
  font-size: .70rem !important;
  line-height: 1.12 !important;
}


.pos-counter-page--dedicated
.pos-sale-cart-section
:is(
  label,
  th,
  td,
  span,
  small
) {
  font-size: .56rem !important;
  line-height: 1.15 !important;
}


.pos-counter-page--dedicated
.pos-sale-cart-section
:is(
  button,
  input,
  select
) {
  font-size: .60rem !important;
}


/* ==============================================================
   TRANSACTION SET-UP TYPOGRAPHY
   ============================================================== */

.pos-counter-page--dedicated
.pos-transaction-setup-section
:is(
  h2,
  h3,
  h4,
  .section-heading strong,
  .ubz-r5-transaction-title
) {
  font-size: .70rem !important;
  line-height: 1.12 !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
:is(
  label,
  span,
  small
) {
  font-size: .56rem !important;
  line-height: 1.15 !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
:is(
  button,
  input,
  select,
  textarea
) {
  font-size: .60rem !important;
}


/*
 * Full assigned Transaction Set-Up width.
 */
.pos-counter-page--dedicated
.pos-transaction-setup-section
> .pos-field-grid.pos-field-grid--two {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  grid-column:
    1 / -1
    !important;

  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}


/* ==============================================================
   PAYMENT SUMMARY TYPOGRAPHY
   ============================================================== */

.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  h2,
  h3,
  h4,
  .section-heading strong
) {
  font-size: .70rem !important;
  line-height: 1.12 !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  label,
  span,
  small
) {
  font-size: .56rem !important;
  line-height: 1.15 !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-field-card
:is(
  strong,
  em
) {
  font-size: .66rem !important;
  line-height: 1.12 !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  button,
  input,
  select,
  textarea
) {
  font-size: .60rem !important;
}


/* ==============================================================
   2. PRODUCT SEARCH & STOCK PICK

   CRITICAL:
   remove the inherited 1fr / 100% stretching behavior.

   No flex/grid track may stretch this card to match the height
   of the right-hand transaction workspace.
   ============================================================== */

.pos-counter-page--dedicated
.pos-operating-cockpit-v2 {
  align-items:
    start
    !important;

  align-content:
    start
    !important;

  min-height:
    0
    !important;

  height:
    auto
    !important;
}


.pos-counter-page--dedicated
.pos-operating-cockpit-v2
> .pos-product-stock-section,

.pos-counter-page--dedicated
.pos-product-stock-section {
  display:
    grid
    !important;

  /*
   * This explicitly removes any previous final 1fr track.
   * Children become content-sized implicit rows.
   */
  grid-template-rows:
    none
    !important;

  grid-auto-rows:
    max-content
    !important;

  height:
    max-content
    !important;

  min-height:
    0
    !important;

  max-height:
    none
    !important;

  block-size:
    max-content
    !important;

  min-block-size:
    0
    !important;

  align-self:
    start
    !important;

  align-content:
    start
    !important;

  margin-bottom:
    0
    !important;

  padding-bottom:
    8px
    !important;

  overflow:
    visible
    !important;

  box-sizing:
    border-box
    !important;
}


/*
 * Default catalogue:
 * 2 columns
 * 6 visible rows
 * scroll after row 6
 */
.pos-counter-page--dedicated
.pos-product-stock-section
> .pos-drug-list--ten {
  display:
    grid
    !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  grid-auto-rows:
    64px
    !important;

  gap:
    6px
    !important;

  width:
    100%
    !important;

  height:
    auto
    !important;

  min-height:
    0
    !important;

  /*
   * 6 x 64px
   * + 5 x 6px
   * = 414px
   */
  max-height:
    414px
    !important;

  block-size:
    auto
    !important;

  align-self:
    start
    !important;

  align-content:
    start
    !important;

  overflow-x:
    hidden
    !important;

  overflow-y:
    auto
    !important;

  margin:
    0
    !important;

  padding-bottom:
    0
    !important;

  overscroll-behavior:
    contain
    !important;
}


/*
 * Keep the six-row measurement real.
 * Older tile minimum heights must not expand these rows.
 */
.pos-counter-page--dedicated
.pos-product-stock-section
.pos-drug-list--ten
> .pos-product-tile-v16 {
  height:
    64px
    !important;

  min-height:
    64px
    !important;

  max-height:
    64px
    !important;

  overflow:
    hidden
    !important;
}


/* ==============================================================
   3. DESKTOP WORKSPACE

   LEFT 48%
   Product Search & Stock Pick

   RIGHT 52%
   Cart / Setup / Payment
   Recent Sales directly beneath them
   ============================================================== */

@media (min-width: 1280px) {

  .pos-counter-page--dedicated
  .pos-operating-cockpit-v2 {
    display:
      grid
      !important;

    grid-template-columns:
      minmax(0, 48fr)
      minmax(0, 52fr)
      !important;

    grid-template-areas:
      "products transaction"
      !important;

    gap:
      8px
      !important;

    align-items:
      start
      !important;

    align-content:
      start
      !important;

    height:
      auto
      !important;

    min-height:
      0
      !important;
  }


  .pos-counter-page--dedicated
  .pos-operating-cockpit-v2
  > .pos-product-stock-section {
    grid-area:
      products
      !important;

    align-self:
      start
      !important;

    height:
      max-content
      !important;

    min-height:
      0
      !important;
  }


  .pos-counter-page--dedicated
  .pos-operating-cockpit-v2
  > .pos-sale-transaction-section {
    grid-area:
      transaction
      !important;

    display:
      grid
      !important;

    grid-template-columns:
      minmax(0, 1.14fr)
      minmax(280px, .86fr)
      !important;

    grid-template-areas:
      "cart    metrics"
      "cart    payment"
      "setup   payment"
      "confirm payment"
      "recent  recent"
      !important;

    grid-template-rows:
      auto
      auto
      auto
      auto
      auto
      !important;

    grid-auto-flow:
      row
      !important;

    grid-auto-rows:
      auto
      !important;

    gap:
      8px
      !important;

    align-items:
      start
      !important;

    align-content:
      start
      !important;

    width:
      100%
      !important;

    min-width:
      0
      !important;

    height:
      auto
      !important;

    min-height:
      0
      !important;

    overflow:
      visible
      !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-sale-cart-section {
    grid-area:
      cart
      !important;

    align-self:
      start
      !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .ubz-r5-session-metrics {
    grid-area:
      metrics
      !important;

    align-self:
      start
      !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-transaction-setup-section {
    grid-area:
      setup
      !important;

    width:
      100%
      !important;

    max-width:
      none
      !important;

    min-width:
      0
      !important;

    align-self:
      start
      !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-payment-summary-section {
    grid-area:
      payment
      !important;

    width:
      100%
      !important;

    max-width:
      none
      !important;

    min-width:
      0
      !important;

    height:
      auto
      !important;

    min-height:
      0
      !important;

    align-self:
      start
      !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-summary-confirmation-card {
    grid-area:
      confirm
      !important;

    width:
      100%
      !important;

    min-width:
      0
      !important;

    align-self:
      start
      !important;
  }


  /*
   * Exact native Recent Sales owner.
   *
   * Neutralize old "fullwidth" behavior and constrain it to the
   * RIGHT transaction workspace.
   */
  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-sales-summary-table-card.pos-recent-transactions-bottom.pos-recent-transactions-fullwidth {
    grid-area:
      recent
      !important;

    grid-column:
      1 / -1
      !important;

    grid-row:
      auto
      !important;

    position:
      static
      !important;

    inset:
      auto
      !important;

    top:
      auto
      !important;

    right:
      auto
      !important;

    bottom:
      auto
      !important;

    left:
      auto
      !important;

    transform:
      none
      !important;

    float:
      none
      !important;

    clear:
      none
      !important;

    width:
      100%
      !important;

    max-width:
      none
      !important;

    min-width:
      0
      !important;

    height:
      auto
      !important;

    min-height:
      0
      !important;

    margin:
      0
      !important;

    align-self:
      start
      !important;

    justify-self:
      stretch
      !important;

    box-sizing:
      border-box
      !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-sales-summary-table-card.pos-recent-transactions-bottom.pos-recent-transactions-fullwidth
  .system-table-wrap {
    width:
      100%
      !important;

    max-width:
      100%
      !important;

    max-height:
      250px
      !important;

    margin:
      0
      !important;

    overflow:
      auto
      !important;
  }

}


/* ==============================================================
   KEEP PREVIOUSLY REMOVED LIVE OPERATIONS OUT
   ============================================================== */

.pos-counter-page--dedicated
.pos-live-business-performance-card,

.pos-counter-page--dedicated
.pos-live-business-performance-grid,

.pos-counter-page--dedicated
.pos-transaction-operator-strip {
  display:
    none
    !important;
}


/* ==============================================================
   MOBILE
   ============================================================== */

@media (max-width: 819px) {

  .pos-counter-page--dedicated
  .pos-transaction-setup-section
  > .pos-field-grid.pos-field-grid--two {
    grid-template-columns:
      1fr
      !important;
  }


  .pos-counter-page--dedicated
  .pos-product-stock-section
  > .pos-drug-list--ten {
    grid-template-columns:
      1fr
      !important;

    max-height:
      414px
      !important;
  }

}

/* ============================================================
   UBZ_POS_VNEXT_R5_4_DETERMINISTIC_CLOSEOUT
   ============================================================ */


/* ------------------------------------------------------------
   PRODUCT SEARCH — 7 VISIBLE ROWS
   ------------------------------------------------------------ */

.pos-counter-page--dedicated
.pos-product-stock-section
> .pos-drug-list--ten {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  grid-auto-rows:
    64px
    !important;

  gap:
    6px
    !important;

  /*
   * 7 rows:
   * (7 × 64) + (6 × 6) = 484px
   */
  height:
    484px
    !important;

  min-height:
    484px
    !important;

  max-height:
    484px
    !important;

  overflow-x:
    hidden
    !important;

  overflow-y:
    auto
    !important;

  align-content:
    start
    !important;
}


/* ------------------------------------------------------------
   PRODUCT CARDS

   R5.3 forced a very compact 64px card.
   Make the deterministic data surface own those 64px.
   Native tile remains the actual business button.
   ------------------------------------------------------------ */

.pos-counter-page--dedicated
.pos-product-tile-v16 {
  position:
    relative
    !important;

  height:
    64px
    !important;

  min-height:
    64px
    !important;

  max-height:
    64px
    !important;

  padding:
    0
    !important;

  overflow:
    hidden
    !important;
}


.pos-counter-page--dedicated
.ubz-r5-4-product-data {
  position:
    absolute
    !important;

  inset:
    0
    !important;

  z-index:
    5
    !important;

  display:
    grid
    !important;

  grid-template-rows:
    auto 1fr 1fr
    !important;

  gap:
    2px
    !important;

  padding:
    5px 7px
    !important;

  background:
    #fff
    !important;

  color:
    #172033
    !important;

  box-sizing:
    border-box
    !important;

  text-align:
    left
    !important;

  pointer-events:
    none
    !important;
}


.pos-counter-page--dedicated
.ubz-r5-4-product-data__name {
  display:
    block
    !important;

  min-width:
    0
    !important;

  color:
    #172033
    !important;

  font-size:
    .61rem
    !important;

  font-weight:
    700
    !important;

  line-height:
    1.1
    !important;

  white-space:
    nowrap
    !important;

  overflow:
    hidden
    !important;

  text-overflow:
    ellipsis
    !important;
}


.pos-counter-page--dedicated
.ubz-r5-4-product-data__row {
  display:
    grid
    !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap:
    7px
    !important;

  min-width:
    0
    !important;

  align-items:
    center
    !important;
}


.pos-counter-page--dedicated
.ubz-r5-4-product-data__field {
  display:
    flex
    !important;

  min-width:
    0
    !important;

  gap:
    3px
    !important;

  align-items:
    baseline
    !important;

  color:
    #667085
    !important;

  font-size:
    .49rem
    !important;

  line-height:
    1
    !important;

  white-space:
    nowrap
    !important;

  overflow:
    hidden
    !important;
}


.pos-counter-page--dedicated
.ubz-r5-4-product-data__field
strong {
  min-width:
    0
    !important;

  color:
    #172033
    !important;

  font-size:
    .51rem
    !important;

  overflow:
    hidden
    !important;

  text-overflow:
    ellipsis
    !important;
}


/* ------------------------------------------------------------
   REMOVE LEGACY RECENT-SALES PRESENTATIONS
   ------------------------------------------------------------ */

.pos-counter-page--dedicated
.pos-sales-summary-table-card.pos-recent-transactions-bottom
.admin-table-settings-panel,

.pos-counter-page--dedicated
.pos-sales-summary-table-card.pos-recent-transactions-bottom
> .pos-current-session-table-toolbar,

.pos-counter-page--dedicated
.pos-sales-summary-table-card.pos-recent-transactions-bottom
> .system-table-wrap {
  display:
    none
    !important;
}


/* ------------------------------------------------------------
   EXACT FOUR-COLUMN RECENT SALES TOOLBAR
   ------------------------------------------------------------ */

.pos-counter-page--dedicated
.ubz-r5-4-recent-toolbar {
  display:
    grid
    !important;

  grid-template-columns:
    minmax(180px, 1.4fr)
    minmax(180px, 1.3fr)
    minmax(150px, .8fr)
    minmax(90px, .45fr)
    !important;

  gap:
    7px
    !important;

  width:
    100%
    !important;

  margin:
    7px 0 8px
    !important;
}


.pos-counter-page--dedicated
.ubz-r5-4-recent-toolbar
:is(input, select, button) {
  width:
    100%
    !important;

  min-width:
    0
    !important;

  height:
    32px
    !important;

  margin:
    0
    !important;

  padding:
    0 8px
    !important;

  border-radius:
    7px
    !important;

  box-sizing:
    border-box
    !important;

  font-size:
    .61rem
    !important;
}


/* ------------------------------------------------------------
   ONE DETERMINISTIC RECENT SALES TABLE
   ------------------------------------------------------------ */

.pos-counter-page--dedicated
.ubz-r5-4-recent-table-scroll {
  width:
    100%
    !important;

  max-width:
    100%
    !important;

  max-height:
    270px
    !important;

  overflow:
    auto
    !important;

  border:
    1px solid #e5e9f0
    !important;

  border-radius:
    8px
    !important;

  background:
    #fff
    !important;
}


.pos-counter-page--dedicated
.ubz-r5-4-recent-table {
  width:
    100%
    !important;

  min-width:
    760px
    !important;

  table-layout:
    fixed
    !important;

  border-collapse:
    collapse
    !important;
}


.pos-counter-page--dedicated
.ubz-r5-4-recent-table
:is(th, td) {
  padding:
    6px 7px
    !important;

  border-bottom:
    1px solid #edf0f5
    !important;

  color:
    #273248
    !important;

  font-size:
    .56rem
    !important;

  line-height:
    1.15
    !important;

  white-space:
    nowrap
    !important;

  overflow:
    hidden
    !important;

  text-overflow:
    ellipsis
    !important;

  text-align:
    left
    !important;
}


.pos-counter-page--dedicated
.ubz-r5-4-recent-table
th {
  position:
    sticky
    !important;

  top:
    0
    !important;

  z-index:
    2
    !important;

  background:
    #f7f9fc
    !important;

  color:
    #445069
    !important;

  font-weight:
    700
    !important;
}


/* Time */
.pos-counter-page--dedicated
.ubz-r5-4-recent-table
:is(th, td):nth-child(1) {
  width:
    13%
    !important;
}

/* Sale No */
.pos-counter-page--dedicated
.ubz-r5-4-recent-table
:is(th, td):nth-child(2) {
  width:
    14%
    !important;
}

/* Customer */
.pos-counter-page--dedicated
.ubz-r5-4-recent-table
:is(th, td):nth-child(3) {
  width:
    16%
    !important;
}

/* Product */
.pos-counter-page--dedicated
.ubz-r5-4-recent-table
:is(th, td):nth-child(4) {
  width:
    22%
    !important;
}

/* Payment */
.pos-counter-page--dedicated
.ubz-r5-4-recent-table
:is(th, td):nth-child(5) {
  width:
    11%
    !important;
}

/* Total */
.pos-counter-page--dedicated
.ubz-r5-4-recent-table
:is(th, td):nth-child(6) {
  width:
    12%
    !important;

  text-align:
    right
    !important;
}

/* Action */
.pos-counter-page--dedicated
.ubz-r5-4-recent-table
:is(th, td):nth-child(7) {
  width:
    12%
    !important;

  text-align:
    center
    !important;
}


.pos-counter-page--dedicated
.ubz-r5-4-reprint {
  min-height:
    25px
    !important;

  padding:
    4px 7px
    !important;

  font-size:
    .53rem
    !important;

  white-space:
    nowrap
    !important;
}


.pos-counter-page--dedicated
.ubz-r5-4-recent-status {
  display:
    block
    !important;

  margin-top:
    5px
    !important;

  min-height:
    13px
    !important;

  color:
    #667085
    !important;

  font-size:
    .53rem
    !important;
}


@media (max-width: 1100px) {

  .pos-counter-page--dedicated
  .ubz-r5-4-recent-toolbar {
    grid-template-columns:
      repeat(2, minmax(0, 1fr))
      !important;
  }

}


@media (max-width: 819px) {

  .pos-counter-page--dedicated
  .pos-product-stock-section {
    height:
      auto
      !important;

    min-height:
      0
      !important;
  }


  .pos-counter-page--dedicated
  .pos-product-stock-section
  > .pos-drug-list--ten {
    grid-template-columns:
      1fr
      !important;
  }


  .pos-counter-page--dedicated
  .ubz-r5-4-recent-toolbar {
    grid-template-columns:
      1fr
      !important;
  }

}

/* UBZ_POS_R55_STABLE_OWNER_CSS */

.pos-counter-page--dedicated
.pos-product-tile-v16
> .ubz-r5-4-product-data {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
  z-index: 30 !important;
  pointer-events: none !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.pos-sales-summary-table-card.pos-recent-transactions-bottom
> :not(.section-heading):not(.ubz-r5-4-recent-shell) {
  display: none !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.pos-sales-summary-table-card.pos-recent-transactions-bottom
> .section-heading {
  display: flex !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.pos-sales-summary-table-card.pos-recent-transactions-bottom
> .ubz-r5-4-recent-shell {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  position: relative !important;
  z-index: 5 !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.pos-sales-summary-table-card.pos-recent-transactions-bottom
.admin-table-settings-panel,

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.pos-sales-summary-table-card.pos-recent-transactions-bottom
.pos-current-session-table-toolbar,

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.pos-sales-summary-table-card.pos-recent-transactions-bottom
.system-table-wrap {
  display: none !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.pos-sales-summary-table-card.pos-recent-transactions-bottom
.ubz-r5-4-recent-table-scroll {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  overflow: auto !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.pos-sales-summary-table-card.pos-recent-transactions-bottom
.ubz-r5-4-recent-table {
  display: table !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  table-layout: fixed !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.ubz-r5-4-recent-table thead {
  display: table-header-group !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.ubz-r5-4-recent-table tbody {
  display: table-row-group !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.ubz-r5-4-recent-table tr {
  display: table-row !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.ubz-r5-4-recent-table
:is(th, td) {
  display: table-cell !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.ubz-r5-4-recent-table
:is(th, td):nth-child(1) {
  width: 13% !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.ubz-r5-4-recent-table
:is(th, td):nth-child(2) {
  width: 14% !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.ubz-r5-4-recent-table
:is(th, td):nth-child(3) {
  width: 16% !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.ubz-r5-4-recent-table
:is(th, td):nth-child(4) {
  width: 22% !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.ubz-r5-4-recent-table
:is(th, td):nth-child(5) {
  width: 11% !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.ubz-r5-4-recent-table
:is(th, td):nth-child(6) {
  width: 12% !important;
}

.pos-counter-page--dedicated[data-ubz-r55-stable="1"]
.ubz-r5-4-recent-table
:is(th, td):nth-child(7) {
  width: 12% !important;
}

/* UBZ_POS_R56_SINGLE_VISUAL_OWNER_CSS */


/* ============================================================
   PRODUCT CARD — ONE R5.6 DATA PRESENTATION

   The native product button remains underneath and continues
   to own its original click / quantity behavior.
   ============================================================ */

.pos-counter-page--dedicated
.pos-product-tile-v16 {
  position:
    relative
    !important;
}


.pos-counter-page--dedicated
.pos-product-tile-v16
> .ubz-r56-product-data {
  position:
    absolute
    !important;

  inset:
    4px 34px 4px 32px
    !important;

  z-index:
    80
    !important;

  display:
    grid
    !important;

  grid-template-rows:
    auto auto auto
    !important;

  gap:
    2px
    !important;

  align-content:
    center
    !important;

  min-width:
    0
    !important;

  margin:
    0
    !important;

  padding:
    0
    !important;

  border:
    0
    !important;

  background:
    #ffffff
    !important;

  color:
    #172033
    !important;

  text-align:
    left
    !important;

  visibility:
    visible
    !important;

  opacity:
    1
    !important;

  pointer-events:
    none
    !important;

  box-sizing:
    border-box
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-product-name {
  display:
    block
    !important;

  min-width:
    0
    !important;

  overflow:
    hidden
    !important;

  text-overflow:
    ellipsis
    !important;

  white-space:
    nowrap
    !important;

  color:
    #172033
    !important;

  font-size:
    .62rem
    !important;

  font-weight:
    800
    !important;

  line-height:
    1.08
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-product-row {
  display:
    grid
    !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr))
    !important;

  gap:
    5px
    !important;

  min-width:
    0
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-product-field {
  display:
    flex
    !important;

  align-items:
    baseline
    !important;

  gap:
    3px
    !important;

  min-width:
    0
    !important;

  overflow:
    hidden
    !important;

  color:
    #64748b
    !important;

  font-size:
    .47rem
    !important;

  line-height:
    1.05
    !important;

  white-space:
    nowrap
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-product-field
strong {
  min-width:
    0
    !important;

  overflow:
    hidden
    !important;

  text-overflow:
    ellipsis
    !important;

  color:
    #172033
    !important;

  font-size:
    .50rem
    !important;

  font-weight:
    750
    !important;
}


/* ============================================================
   REMOVE THE COMPETING RECENT TRANSACTIONS VISUAL OWNER

   IMPORTANT:
   The V3.8 business runtime itself remains loaded.
   Only the native Recent Transactions visual card is suppressed.
   ============================================================ */

.pos-counter-page--dedicated
.pos-sales-summary-table-card.pos-recent-transactions-bottom {
  display:
    none
    !important;
}


/* ============================================================
   R5.6 RECENT SALES — UNIQUE VISIBLE OWNER

   This host is OUTSIDE .pos-recent-transactions-bottom,
   preventing the older Recent Sales presentation from owning it.
   ============================================================ */

.pos-counter-page--dedicated
.pos-sale-transaction-section
> .ubz-r56-recent-host {
  grid-area:
    recent
    !important;

  grid-column:
    1 / -1
    !important;

  display:
    grid
    !important;

  gap:
    7px
    !important;

  align-self:
    start
    !important;

  width:
    100%
    !important;

  max-width:
    100%
    !important;

  min-width:
    0
    !important;

  height:
    auto
    !important;

  min-height:
    0
    !important;

  margin:
    0
    !important;

  padding:
    8px
    !important;

  border:
    1px solid #e3e9f2
    !important;

  border-radius:
    9px
    !important;

  background:
    #ffffff
    !important;

  box-shadow:
    none
    !important;

  overflow:
    hidden
    !important;

  box-sizing:
    border-box
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-recent-heading {
  display:
    block
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-eyebrow {
  display:
    block
    !important;

  margin-bottom:
    2px
    !important;

  color:
    #2457a7
    !important;

  font-size:
    .49rem
    !important;

  font-weight:
    900
    !important;

  line-height:
    1
    !important;

  letter-spacing:
    .07em
    !important;

  text-transform:
    uppercase
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-recent-heading
h3 {
  margin:
    0
    !important;

  color:
    #0f172a
    !important;

  font-size:
    .76rem
    !important;

  font-weight:
    800
    !important;

  line-height:
    1.1
    !important;
}


/* ============================================================
   EXACT FOUR-COLUMN TOOLBAR
   ============================================================ */

.pos-counter-page--dedicated
.ubz-r56-recent-toolbar {
  display:
    grid
    !important;

  grid-template-columns:
    minmax(180px, 1.3fr)
    minmax(180px, 1.2fr)
    minmax(150px, .72fr)
    minmax(90px, .38fr)
    !important;

  gap:
    6px
    !important;

  width:
    100%
    !important;

  min-width:
    0
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-recent-toolbar
:is(
  input,
  select,
  button
) {
  width:
    100%
    !important;

  min-width:
    0
    !important;

  height:
    31px
    !important;

  margin:
    0
    !important;

  padding:
    0 8px
    !important;

  border:
    1px solid #ccd6e4
    !important;

  border-radius:
    6px
    !important;

  background:
    #ffffff
    !important;

  color:
    #334155
    !important;

  font-size:
    .56rem
    !important;

  box-sizing:
    border-box
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-recent-toolbar
button {
  cursor:
    pointer
    !important;

  font-weight:
    800
    !important;
}


/* ============================================================
   FIXED SEVEN-COLUMN TABLE
   ============================================================ */

.pos-counter-page--dedicated
.ubz-r56-table-wrap {
  display:
    block
    !important;

  width:
    100%
    !important;

  max-width:
    100%
    !important;

  min-width:
    0
    !important;

  max-height:
    270px
    !important;

  overflow:
    auto
    !important;

  border:
    1px solid #e2e8f0
    !important;

  border-radius:
    7px
    !important;

  background:
    #ffffff
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-table {
  display:
    table
    !important;

  width:
    100%
    !important;

  min-width:
    820px
    !important;

  table-layout:
    fixed
    !important;

  border-collapse:
    collapse
    !important;

  background:
    #ffffff
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-table
thead {
  display:
    table-header-group
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-table
tbody {
  display:
    table-row-group
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-table
tr {
  display:
    table-row
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-table
:is(
  th,
  td
) {
  display:
    table-cell
    !important;

  padding:
    6px 7px
    !important;

  border:
    0
    !important;

  border-bottom:
    1px solid #e8edf4
    !important;

  color:
    #334155
    !important;

  font-size:
    .53rem
    !important;

  line-height:
    1.14
    !important;

  vertical-align:
    middle
    !important;

  overflow:
    hidden
    !important;

  text-overflow:
    ellipsis
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-table
th {
  position:
    sticky
    !important;

  top:
    0
    !important;

  z-index:
    2
    !important;

  background:
    #f8fafc
    !important;

  color:
    #475569
    !important;

  font-size:
    .49rem
    !important;

  font-weight:
    900
    !important;

  letter-spacing:
    .025em
    !important;

  text-transform:
    uppercase
    !important;

  white-space:
    nowrap
    !important;
}


/* Time */
.pos-counter-page--dedicated
.ubz-r56-table
:is(th, td):nth-child(1) {
  width:
    13%
    !important;

  white-space:
    nowrap
    !important;
}


/* Sale No */
.pos-counter-page--dedicated
.ubz-r56-table
:is(th, td):nth-child(2) {
  width:
    15%
    !important;

  white-space:
    nowrap
    !important;
}


/* Customer */
.pos-counter-page--dedicated
.ubz-r56-table
:is(th, td):nth-child(3) {
  width:
    15%
    !important;
}


/* Product */
.pos-counter-page--dedicated
.ubz-r56-table
:is(th, td):nth-child(4) {
  width:
    23%
    !important;

  white-space:
    normal
    !important;

  overflow-wrap:
    anywhere
    !important;
}


/* Payment */
.pos-counter-page--dedicated
.ubz-r56-table
:is(th, td):nth-child(5) {
  width:
    10%
    !important;
}


/* Total */
.pos-counter-page--dedicated
.ubz-r56-table
:is(th, td):nth-child(6) {
  width:
    11%
    !important;

  text-align:
    right
    !important;

  white-space:
    nowrap
    !important;
}


/* Action */
.pos-counter-page--dedicated
.ubz-r56-table
:is(th, td):nth-child(7) {
  width:
    13%
    !important;

  text-align:
    center
    !important;

  white-space:
    nowrap
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-reprint {
  min-height:
    25px
    !important;

  padding:
    3px 7px
    !important;

  border:
    1px solid #cbd5e1
    !important;

  border-radius:
    5px
    !important;

  background:
    #ffffff
    !important;

  color:
    #2457a7
    !important;

  font-size:
    .50rem
    !important;

  font-weight:
    800
    !important;

  cursor:
    pointer
    !important;

  white-space:
    nowrap
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-status {
  display:
    block
    !important;

  min-height:
    12px
    !important;

  color:
    #64748b
    !important;

  font-size:
    .51rem
    !important;

  line-height:
    1.15
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-status[data-error="1"] {
  color:
    #b42318
    !important;
}


@media (max-width: 1100px) {

  .pos-counter-page--dedicated
  .ubz-r56-recent-toolbar {
    grid-template-columns:
      repeat(2, minmax(0, 1fr))
      !important;
  }

}


@media (max-width: 819px) {

  .pos-counter-page--dedicated
  .ubz-r56-recent-toolbar {
    grid-template-columns:
      1fr
      !important;
  }

}

/* UBZ_POS_R57_LAYOUT_POLISH_CSS */


/* ==============================================================
   A. PRODUCT SEARCH HEIGHT

   R5.7 JS calculates:
   --ubz-r57-product-height
   --ubz-r57-list-height
   --ubz-r57-row-height

   Product Search bottom is therefore aligned to the R5.6
   Recent Sales bottom instead of Payment Summary.
   ============================================================== */

@media (min-width: 1280px) {

  .pos-counter-page--dedicated
  .pos-operating-cockpit-v2
  > .pos-product-stock-section {
    height:
      var(
        --ubz-r57-product-height,
        auto
      )
      !important;

    min-height:
      var(
        --ubz-r57-product-height,
        0px
      )
      !important;

    max-height:
      var(
        --ubz-r57-product-height,
        none
      )
      !important;

    align-self:
      start
      !important;

    align-content:
      start
      !important;

    overflow:
      hidden
      !important;

    box-sizing:
      border-box
      !important;
  }


  .pos-counter-page--dedicated
  .pos-product-stock-section
  > .pos-drug-list--ten {
    height:
      var(
        --ubz-r57-list-height,
        484px
      )
      !important;

    min-height:
      var(
        --ubz-r57-list-height,
        484px
      )
      !important;

    max-height:
      var(
        --ubz-r57-list-height,
        484px
      )
      !important;

    grid-auto-rows:
      var(
        --ubz-r57-row-height,
        64px
      )
      !important;

    align-content:
      start
      !important;

    overflow-x:
      hidden
      !important;

    overflow-y:
      auto
      !important;
  }


  .pos-counter-page--dedicated
  .pos-product-stock-section
  .pos-drug-list--ten
  > .pos-product-tile-v16 {
    height:
      var(
        --ubz-r57-row-height,
        64px
      )
      !important;

    min-height:
      var(
        --ubz-r57-row-height,
        64px
      )
      !important;

    max-height:
      var(
        --ubz-r57-row-height,
        64px
      )
      !important;
  }

}


/* ==============================================================
   B. PROFESSIONAL PRODUCT CARD

   Product name remains because the user must know which medicine
   they are selecting.

   Visible labels Price / Available / Expiry / Days are removed.
   Only their actual values remain.
   ============================================================== */

.pos-counter-page--dedicated
.pos-product-tile-v16
> .ubz-r56-product-data {
  inset:
    5px 34px 5px 32px
    !important;

  grid-template-rows:
    auto minmax(0, 1fr)
    !important;

  gap:
    5px
    !important;

  align-content:
    center
    !important;

  padding:
    0
    !important;

  background:
    #ffffff
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-product-name {
  margin:
    0
    !important;

  padding:
    0 1px 3px
    !important;

  border-bottom:
    1px solid #edf1f6
    !important;

  color:
    #172033
    !important;

  font-size:
    .62rem
    !important;

  font-weight:
    800
    !important;

  line-height:
    1.08
    !important;

  letter-spacing:
    .005em
    !important;
}


/*
 * R5.6 created two rows with two fields each.
 * R5.7 makes both rows participate in one clean four-value grid.
 */

.pos-counter-page--dedicated
.ubz-r56-product-data
> .ubz-r56-product-row {
  display:
    contents
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-product-data {
  grid-template-columns:
    repeat(
      4,
      minmax(0, 1fr)
    )
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-product-data
> .ubz-r56-product-name {
  grid-column:
    1 / -1
    !important;
}


/*
 * Remove visible metric titles.
 */
.pos-counter-page--dedicated
.ubz-r56-product-field
> span {
  display:
    none
    !important;
}


/*
 * Actual values only.
 */
.pos-counter-page--dedicated
.ubz-r56-product-field {
  display:
    flex
    !important;

  align-items:
    center
    !important;

  justify-content:
    center
    !important;

  min-width:
    0
    !important;

  height:
    22px
    !important;

  margin:
    0
    !important;

  padding:
    2px 4px
    !important;

  border:
    1px solid #e8edf4
    !important;

  border-radius:
    5px
    !important;

  background:
    #f8fafc
    !important;

  box-sizing:
    border-box
    !important;

  overflow:
    hidden
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-product-field
strong {
  display:
    block
    !important;

  width:
    100%
    !important;

  min-width:
    0
    !important;

  overflow:
    hidden
    !important;

  text-overflow:
    ellipsis
    !important;

  white-space:
    nowrap
    !important;

  color:
    #334155
    !important;

  font-size:
    .49rem
    !important;

  font-weight:
    750
    !important;

  line-height:
    1
    !important;

  text-align:
    center
    !important;
}


/* Make price slightly stronger without adding another title. */

.pos-counter-page--dedicated
.ubz-r56-product-data
.ubz-r56-product-field:first-of-type
strong {
  color:
    #172033
    !important;

  font-weight:
    850
    !important;
}


/* ==============================================================
   C. PAYMENT SUMMARY COMPRESSION

   Outer height is set dynamically by R5.7 JS to exactly the
   Transaction Set-Up height.

   No financial field is removed.
   ============================================================== */

@media (min-width: 1280px) {

  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-payment-summary-section {
    height:
      var(
        --ubz-r57-payment-height,
        auto
      )
      !important;

    min-height:
      var(
        --ubz-r57-payment-height,
        0px
      )
      !important;

    max-height:
      var(
        --ubz-r57-payment-height,
        none
      )
      !important;

    align-self:
      start
      !important;

    padding:
      5px
      !important;

    overflow-x:
      hidden
      !important;

    overflow-y:
      auto
      !important;

    box-sizing:
      border-box
      !important;
  }

}


/* Compact Payment Summary heading. */

.pos-counter-page--dedicated
.pos-payment-summary-section
.section-heading {
  margin:
    0 0 3px
    !important;

  padding:
    0 1px 3px
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  h2,
  h3,
  h4,
  .section-heading strong
) {
  font-size:
    .60rem
    !important;

  line-height:
    1.02
    !important;
}


/* Compact grid / columns. */

.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-payment-summary-grid {
  gap:
    2px
    !important;

  margin:
    0
    !important;

  padding:
    0
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  .pos-payment-summary-column,
  .pos-payment-summary-column--financial,
  .pos-payment-summary-column--operational
) {
  gap:
    2px
    !important;

  margin:
    0
    !important;

  padding:
    0
    !important;
}


/* Compact every summary row without removing information. */

.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-field-card {
  min-height:
    16px
    !important;

  margin:
    0
    !important;

  padding:
    2px 4px
    !important;

  border-radius:
    4px
    !important;

  gap:
    4px
    !important;

  line-height:
    1
    !important;

  box-sizing:
    border-box
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-field-card
:is(
  span,
  small,
  label
) {
  font-size:
    .44rem
    !important;

  line-height:
    1
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-field-card
:is(
  strong,
  em
) {
  font-size:
    .52rem
    !important;

  line-height:
    1
    !important;
}


/* Other text inside Payment Summary. */

.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  span,
  small,
  label
) {
  font-size:
    .46rem
    !important;

  line-height:
    1.02
    !important;
}


/* Inputs and buttons. */

.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  input,
  select,
  textarea
) {
  min-height:
    24px
    !important;

  height:
    24px
    !important;

  padding:
    2px 5px
    !important;

  font-size:
    .49rem
    !important;

  line-height:
    1
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
button {
  min-height:
    27px
    !important;

  height:
    27px
    !important;

  margin-top:
    3px
    !important;

  padding:
    3px 6px
    !important;

  font-size:
    .50rem
    !important;

  line-height:
    1
    !important;
}


/* Reduce supporting notes / bridge rows. */

.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  .pos-summary-sync-note,
  .pos-summary-update-bridge
) {
  margin:
    2px 0 0
    !important;

  padding:
    2px 3px
    !important;

  font-size:
    .43rem
    !important;

  line-height:
    1
    !important;
}


/* ==============================================================
   MOBILE / TABLET

   R5.7 dynamic equal-height rules are desktop only.
   Existing responsive POS behavior remains intact.
   ============================================================== */

@media (max-width: 1279px) {

  .pos-counter-page--dedicated
  .pos-product-stock-section
  > .pos-drug-list--ten {
    grid-auto-rows:
      64px
      !important;
  }

}

/* UBZ_POS_R58_FINAL_PRESENTATION_CSS */


/* ==============================================================
   1. CONSISTENT SECTION HEADING TYPOGRAPHY

   Product Search
   Cart
   Transaction Set-Up
   Payment Summary
   Recent Transactions

   All share one visual heading size.
   ============================================================== */

.pos-counter-page--dedicated
.pos-product-stock-section
.section-heading
:is(h2, h3, h4, strong),

.pos-counter-page--dedicated
.pos-sale-cart-section
.section-heading
:is(h2, h3, h4, strong),

.pos-counter-page--dedicated
.pos-transaction-setup-section
.section-heading
:is(h2, h3, h4, strong),

.pos-counter-page--dedicated
.pos-payment-summary-section
.section-heading
:is(h2, h3, h4, strong),

.pos-counter-page--dedicated
.ubz-r56-recent-heading
h3 {
  font-size:
    .76rem
    !important;

  line-height:
    1.08
    !important;

  font-weight:
    800
    !important;

  letter-spacing:
    0
    !important;
}


/*
 * Keep the step / eyebrow text smaller and consistent.
 */
.pos-counter-page--dedicated
:is(
  .pos-product-stock-section,
  .pos-sale-cart-section,
  .pos-transaction-setup-section,
  .pos-payment-summary-section
)
.section-heading
:is(
  small,
  span:not(.section-heading-title)
),

.pos-counter-page--dedicated
.ubz-r56-eyebrow {
  font-size:
    .49rem
    !important;

  line-height:
    1
    !important;
}


/* ==============================================================
   2. PRODUCT CARD — PROFESSIONAL TWO-BY-TWO VALUE LAYOUT

   The product name remains the identity.
   Labels remain hidden.
   Values are no longer squeezed into four horizontal columns.

        PRODUCT NAME
        [ PRICE      ] [ AVAILABLE ]
        [ EXPIRY     ] [ DAYS      ]

   ============================================================== */


/*
 * Undo R5.7's four-column display-contents layout.
 */
.pos-counter-page--dedicated
.pos-product-tile-v16
> .ubz-r56-product-data {
  display:
    grid
    !important;

  grid-template-columns:
    minmax(0, 1fr)
    !important;

  grid-template-rows:
    auto auto auto
    !important;

  gap:
    3px
    !important;

  align-content:
    center
    !important;

  inset:
    4px 34px 4px 32px
    !important;

  padding:
    0
    !important;

  overflow:
    visible
    !important;

  background:
    #ffffff
    !important;
}


/*
 * Product name owns the full first line.
 */
.pos-counter-page--dedicated
.ubz-r56-product-data
> .ubz-r56-product-name {
  display:
    block
    !important;

  grid-column:
    1
    !important;

  width:
    100%
    !important;

  min-width:
    0
    !important;

  margin:
    0
    !important;

  padding:
    0 1px 2px
    !important;

  border-bottom:
    1px solid #edf1f6
    !important;

  color:
    #172033
    !important;

  font-size:
    .59rem
    !important;

  font-weight:
    850
    !important;

  line-height:
    1.05
    !important;

  white-space:
    nowrap
    !important;

  overflow:
    hidden
    !important;

  text-overflow:
    ellipsis
    !important;
}


/*
 * Restore each native R5.6 value row as a real 2-column grid.
 */
.pos-counter-page--dedicated
.ubz-r56-product-data
> .ubz-r56-product-row {
  display:
    grid
    !important;

  grid-template-columns:
    repeat(
      2,
      minmax(0, 1fr)
    )
    !important;

  gap:
    3px
    !important;

  width:
    100%
    !important;

  min-width:
    0
    !important;

  margin:
    0
    !important;

  padding:
    0
    !important;
}


/*
 * Hide titles Price / Available / Expiry / Days.
 */
.pos-counter-page--dedicated
.ubz-r56-product-field
> span {
  display:
    none
    !important;
}


/*
 * Individual value tiles.
 */
.pos-counter-page--dedicated
.ubz-r56-product-field {
  display:
    flex
    !important;

  align-items:
    center
    !important;

  justify-content:
    flex-start
    !important;

  width:
    100%
    !important;

  min-width:
    0
    !important;

  min-height:
    18px
    !important;

  height:
    18px
    !important;

  margin:
    0
    !important;

  padding:
    1px 5px
    !important;

  border:
    1px solid #e5eaf1
    !important;

  border-radius:
    5px
    !important;

  background:
    #f8fafc
    !important;

  box-sizing:
    border-box
    !important;

  overflow:
    hidden
    !important;
}


/*
 * Value itself.
 *
 * With two columns instead of four, price/date/stock values have
 * enough horizontal space and are no longer overlapping.
 */
.pos-counter-page--dedicated
.ubz-r56-product-field
strong {
  display:
    block
    !important;

  width:
    100%
    !important;

  min-width:
    0
    !important;

  margin:
    0
    !important;

  padding:
    0
    !important;

  color:
    #344054
    !important;

  font-size:
    .49rem
    !important;

  font-weight:
    750
    !important;

  line-height:
    1
    !important;

  white-space:
    nowrap
    !important;

  overflow:
    visible
    !important;

  text-overflow:
    clip
    !important;

  text-align:
    left
    !important;
}


/* Price gets a little more emphasis. */
.pos-counter-page--dedicated
.ubz-r56-product-data
> .ubz-r56-product-row:first-of-type
> .ubz-r56-product-field:first-child
strong {
  color:
    #172033
    !important;

  font-weight:
    850
    !important;
}


/* ==============================================================
   3. PAYMENT SUMMARY — EXACT TRANSACTION SET-UP HEIGHT
   ============================================================== */

@media (min-width: 1280px) {

  .pos-counter-page--dedicated
  .pos-sale-transaction-section
  > .pos-payment-summary-section {
    height:
      var(
        --ubz-r58-payment-height,
        auto
      )
      !important;

    min-height:
      var(
        --ubz-r58-payment-height,
        0px
      )
      !important;

    max-height:
      var(
        --ubz-r58-payment-height,
        none
      )
      !important;

    align-self:
      start
      !important;

    overflow-x:
      hidden
      !important;

    overflow-y:
      auto
      !important;

    padding:
      4px
      !important;

    box-sizing:
      border-box
      !important;
  }

}


/* Tighten heading spacing. */

.pos-counter-page--dedicated
.pos-payment-summary-section
.section-heading {
  margin:
    0 0 2px
    !important;

  padding:
    0 1px 2px
    !important;
}


/* Tighten Payment Summary columns / grid. */

.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  .pos-payment-summary-grid,
  .pos-payment-summary-grid-v17,
  .pos-payment-summary-column,
  .pos-payment-summary-column--financial,
  .pos-payment-summary-column--operational
) {
  gap:
    1px
    !important;

  row-gap:
    1px
    !important;

  margin:
    0
    !important;

  padding:
    0
    !important;
}


/* Financial summary rows. */

.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-field-card {
  min-height:
    14px
    !important;

  height:
    auto
    !important;

  margin:
    0
    !important;

  padding:
    1px 3px
    !important;

  gap:
    3px
    !important;

  border-radius:
    3px
    !important;

  line-height:
    1
    !important;

  box-sizing:
    border-box
    !important;
}


/* General labels. */

.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  label,
  small,
  span
) {
  font-size:
    .46rem
    !important;

  line-height:
    1
    !important;
}


/* General values. */

.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  strong,
  em
) {
  font-size:
    .51rem
    !important;

  line-height:
    1
    !important;
}


/* Inputs / select fields if present. */

.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  input,
  select,
  textarea
) {
  min-height:
    22px
    !important;

  height:
    22px
    !important;

  padding:
    1px 4px
    !important;

  font-size:
    .47rem
    !important;

  line-height:
    1
    !important;
}


/* Payment confirmation button. */

.pos-counter-page--dedicated
.pos-payment-summary-section
button {
  min-height:
    25px
    !important;

  height:
    25px
    !important;

  margin:
    2px 0 0
    !important;

  padding:
    2px 6px
    !important;

  font-size:
    .49rem
    !important;

  line-height:
    1
    !important;
}


/*
 * First density fallback.
 */
.pos-counter-page--dedicated
.pos-payment-summary-section[data-ubz-r58-density="dense"]
.pos-summary-field-card {
  min-height:
    13px
    !important;

  padding:
    1px 2px
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section[data-ubz-r58-density="dense"]
:is(
  label,
  span,
  small
) {
  font-size:
    .43rem
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section[data-ubz-r58-density="dense"]
:is(
  strong,
  em
) {
  font-size:
    .48rem
    !important;
}


/*
 * Second fallback only if the exact-height box still needs
 * additional compression.
 */
.pos-counter-page--dedicated
.pos-payment-summary-section[data-ubz-r58-density="tight"]
.pos-summary-field-card {
  min-height:
    12px
    !important;

  padding:
    0 2px
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section[data-ubz-r58-density="tight"]
:is(
  label,
  span,
  small
) {
  font-size:
    .41rem
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section[data-ubz-r58-density="tight"]
:is(
  strong,
  em
) {
  font-size:
    .46rem
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section[data-ubz-r58-density="tight"]
button {
  min-height:
    23px
    !important;

  height:
    23px
    !important;
}


/* Mobile / tablet retain natural height. */

@media (max-width: 1279px) {

  .pos-counter-page--dedicated
  .pos-payment-summary-section {
    height:
      auto
      !important;

    min-height:
      0
      !important;

    max-height:
      none
      !important;
  }

}

/* UBZ_POS_R59_PRODUCT_PAYMENT_CART_FIT_CSS */


/* ==============================================================
   A. PRODUCT GRID

   Same horizontal and vertical gap.
   ============================================================== */

.pos-counter-page--dedicated
.pos-product-stock-section
> .pos-drug-list--ten {
  column-gap:
    8px
    !important;

  row-gap:
    8px
    !important;

  gap:
    8px
    !important;
}


/* ==============================================================
   B. PRODUCT CARD

   Title first.
   Attributes underneath.
   Taller card.
   Rx removed.
   ============================================================== */

.pos-counter-page--dedicated
.pos-product-tile-v16 {
  position:
    relative
    !important;

  min-height:
    var(
      --ubz-r59-row-height,
      96px
    )
    !important;

  height:
    var(
      --ubz-r59-row-height,
      96px
    )
    !important;

  max-height:
    var(
      --ubz-r59-row-height,
      96px
    )
    !important;

  padding:
    0
    !important;

  border-radius:
    7px
    !important;

  overflow:
    hidden
    !important;

  box-sizing:
    border-box
    !important;
}


/*
 * Remove any Rx visual supplied through the native tile pseudo
 * element after R5.9 marks the tile.
 */
.pos-counter-page--dedicated
.pos-product-tile-v16[data-ubz-r59-rx-clean="1"]::before {
  display:
    none
    !important;

  content:
    none
    !important;
}


/*
 * DOM-based Rx elements are marked by R5.9 JS.
 */
.pos-counter-page--dedicated
.ubz-r59-rx-hidden {
  display:
    none
    !important;
}


/*
 * Expand the approved R5.6 product information presentation into
 * the space released by removal of Rx.
 *
 * Right space is retained for the native + button.
 */
.pos-counter-page--dedicated
.pos-product-tile-v16
> .ubz-r56-product-data {
  position:
    absolute
    !important;

  inset:
    7px 34px 7px 8px
    !important;

  display:
    grid
    !important;

  grid-template-columns:
    minmax(0, 1fr)
    !important;

  grid-template-rows:
    auto auto auto
    !important;

  align-content:
    center
    !important;

  gap:
    5px
    !important;

  min-width:
    0
    !important;

  margin:
    0
    !important;

  padding:
    0
    !important;

  border:
    0
    !important;

  background:
    #ffffff
    !important;

  overflow:
    visible
    !important;

  box-sizing:
    border-box
    !important;

  pointer-events:
    none
    !important;
}


/*
 * PRODUCT TITLE FIRST.
 */
.pos-counter-page--dedicated
.ubz-r56-product-data
> .ubz-r56-product-name {
  display:
    block
    !important;

  width:
    100%
    !important;

  min-width:
    0
    !important;

  margin:
    0
    !important;

  padding:
    0 1px 5px
    !important;

  border-bottom:
    1px solid #e8edf4
    !important;

  color:
    #172033
    !important;

  font-size:
    .59rem
    !important;

  font-weight:
    850
    !important;

  line-height:
    1.12
    !important;

  white-space:
    normal
    !important;

  overflow-wrap:
    anywhere
    !important;

  word-break:
    normal
    !important;

  overflow:
    visible
    !important;
}


/*
 * ATTRIBUTES AFTER TITLE.
 *
 * Each row = two values.
 */
.pos-counter-page--dedicated
.ubz-r56-product-data
> .ubz-r56-product-row {
  display:
    grid
    !important;

  grid-template-columns:
    repeat(
      2,
      minmax(0, 1fr)
    )
    !important;

  gap:
    5px
    !important;

  width:
    100%
    !important;

  min-width:
    0
    !important;

  margin:
    0
    !important;

  padding:
    0
    !important;
}


/*
 * Keep attribute labels hidden, as already approved.
 */
.pos-counter-page--dedicated
.ubz-r56-product-field
> span {
  display:
    none
    !important;
}


/*
 * Attribute value tile.
 */
.pos-counter-page--dedicated
.ubz-r56-product-field {
  display:
    flex
    !important;

  align-items:
    center
    !important;

  justify-content:
    flex-start
    !important;

  width:
    100%
    !important;

  min-width:
    0
    !important;

  min-height:
    21px
    !important;

  height:
    auto
    !important;

  margin:
    0
    !important;

  padding:
    3px 5px
    !important;

  border:
    1px solid #e4eaf2
    !important;

  border-radius:
    5px
    !important;

  background:
    #f8fafc
    !important;

  box-sizing:
    border-box
    !important;

  overflow:
    visible
    !important;
}


.pos-counter-page--dedicated
.ubz-r56-product-field
strong {
  display:
    block
    !important;

  width:
    100%
    !important;

  min-width:
    0
    !important;

  margin:
    0
    !important;

  padding:
    0
    !important;

  color:
    #334155
    !important;

  font-size:
    .49rem
    !important;

  font-weight:
    760
    !important;

  line-height:
    1.08
    !important;

  white-space:
    normal
    !important;

  overflow:
    visible
    !important;

  text-overflow:
    clip
    !important;

  overflow-wrap:
    anywhere
    !important;

  text-align:
    left
    !important;
}


/*
 * Price retains slight emphasis.
 */
.pos-counter-page--dedicated
.ubz-r56-product-data
> .ubz-r56-product-row:first-of-type
> .ubz-r56-product-field:first-child
strong {
  color:
    #172033
    !important;

  font-weight:
    850
    !important;
}


/* ==============================================================
   C. CART

   Dedicated viewport sized for AT LEAST four selected products.

   Rows remain compact.
   Additional lines scroll inside the cart only.
   ============================================================== */

@media (min-width: 1280px) {

  .pos-counter-page--dedicated
  .pos-sale-cart-section {
    min-height:
      272px
      !important;

    height:
      auto
      !important;

    padding:
      7px
      !important;

    box-sizing:
      border-box
      !important;
  }


  .pos-counter-page--dedicated
  .pos-sale-cart-section
  > .system-table-wrap {
    height:
      220px
      !important;

    min-height:
      220px
      !important;

    max-height:
      220px
      !important;

    overflow-x:
      hidden
      !important;

    overflow-y:
      auto
      !important;
  }

}


/*
 * Compact Cart header.
 */
.pos-counter-page--dedicated
.pos-sale-cart-section
.section-heading {
  margin:
    0 0 4px
    !important;

  padding:
    0 0 4px
    !important;
}


.pos-counter-page--dedicated
.pos-sale-cart-section
.pos-cart-header-actions {
  gap:
    5px
    !important;
}


.pos-counter-page--dedicated
.pos-sale-cart-section
.pos-cart-header-actions
small {
  font-size:
    .46rem
    !important;
}


.pos-counter-page--dedicated
.pos-sale-cart-section
.pos-cart-header-actions
button {
  min-height:
    25px
    !important;

  height:
    25px
    !important;

  padding:
    2px 6px
    !important;

  font-size:
    .48rem
    !important;
}


/*
 * Compact native cart table.
 */
.pos-counter-page--dedicated
.pos-cart-table {
  width:
    100%
    !important;

  table-layout:
    fixed
    !important;
}


.pos-counter-page--dedicated
.pos-cart-table
th {
  padding:
    5px 5px
    !important;

  font-size:
    .48rem
    !important;

  line-height:
    1
    !important;
}


.pos-counter-page--dedicated
.pos-cart-table
td {
  padding:
    4px 5px
    !important;

  font-size:
    .50rem
    !important;

  line-height:
    1.05
    !important;

  vertical-align:
    middle
    !important;
}


.pos-counter-page--dedicated
.pos-cart-table
td:first-child
strong {
  display:
    block
    !important;

  margin:
    0 0 2px
    !important;

  font-size:
    .53rem
    !important;

  line-height:
    1.05
    !important;
}


.pos-counter-page--dedicated
.pos-cart-table
td:first-child
small {
  display:
    block
    !important;

  margin:
    1px 0 0
    !important;

  font-size:
    .42rem
    !important;

  line-height:
    1.05
    !important;

  white-space:
    normal
    !important;
}


.pos-counter-page--dedicated
.pos-cart-table
input[type="number"] {
  min-height:
    24px
    !important;

  height:
    24px
    !important;

  padding:
    2px 4px
    !important;

  font-size:
    .48rem
    !important;
}


.pos-counter-page--dedicated
.pos-cart-table
.pos-cart-remove-button {
  min-height:
    24px
    !important;

  height:
    24px
    !important;

  padding:
    2px 5px
    !important;

  font-size:
    .47rem
    !important;
}


/* ==============================================================
   D. TRANSACTION SET-UP

   Save vertical space without reducing functionality.
   ============================================================== */

.pos-counter-page--dedicated
.pos-transaction-setup-section {
  padding:
    7px
    !important;

  height:
    auto
    !important;

  min-height:
    0
    !important;

  box-sizing:
    border-box
    !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
.section-heading {
  margin:
    0 0 5px
    !important;

  padding:
    0 0 4px
    !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
> .pos-field-grid.pos-field-grid--two {
  display:
    grid
    !important;

  grid-template-columns:
    repeat(
      2,
      minmax(0, 1fr)
    )
    !important;

  column-gap:
    7px
    !important;

  row-gap:
    5px
    !important;

  width:
    100%
    !important;

  margin:
    0
    !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
label {
  gap:
    2px
    !important;

  margin:
    0
    !important;

  font-size:
    .46rem
    !important;

  line-height:
    1
    !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
label
> span {
  margin:
    0
    !important;

  font-size:
    .45rem
    !important;

  line-height:
    1
    !important;
}


.pos-counter-page--dedicated
.pos-transaction-setup-section
:is(
  input,
  select,
  textarea
) {
  min-height:
    29px
    !important;

  height:
    29px
    !important;

  margin:
    0
    !important;

  padding:
    3px 6px
    !important;

  font-size:
    .49rem
    !important;

  line-height:
    1
    !important;
}


/*
 * Preserve Update Summary if the native workflow exposes it,
 * while keeping it compact.
 */
.pos-counter-page--dedicated
.pos-summary-update-bridge {
  margin:
    4px 0 0
    !important;

  padding:
    0
    !important;
}


.pos-counter-page--dedicated
.pos-summary-update-bridge
button {
  min-height:
    27px
    !important;

  height:
    27px
    !important;

  padding:
    3px 7px
    !important;

  font-size:
    .48rem
    !important;
}


/* ==============================================================
   E. PAYMENT SUMMARY

   The R5.8 forced Transaction Set-Up height is intentionally
   removed by R5.9 JS.

   Payment Summary now grows naturally until ALL remaining
   information is visible.

   NO vertical scrollbar.
   ============================================================== */

.pos-counter-page--dedicated
.pos-sale-transaction-section
> .pos-payment-summary-section {
  height:
    auto
    !important;

  min-height:
    0
    !important;

  max-height:
    none
    !important;

  overflow:
    visible
    !important;

  overflow-x:
    visible
    !important;

  overflow-y:
    visible
    !important;

  align-self:
    start
    !important;

  padding:
    7px
    !important;

  box-sizing:
    border-box
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
> .pos-summary-confirmation-card {
  height:
    auto
    !important;

  min-height:
    0
    !important;

  max-height:
    none
    !important;

  overflow:
    visible
    !important;
}


/*
 * The three explicitly requested Payment Summary fields only.
 */
.pos-counter-page--dedicated
.pos-payment-summary-section
.ubz-r59-payment-field-hidden {
  display:
    none
    !important;
}


/*
 * R5.8 / native Payment Summary repeats the transaction timestamp
 * in this small note. Hide only that timestamp copy.
 */
.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-sync-note
> small {
  display:
    none
    !important;
}


/*
 * Keep remaining Payment Summary information compact but readable.
 */
.pos-counter-page--dedicated
.pos-payment-summary-section
.section-heading {
  margin:
    0 0 4px
    !important;

  padding:
    0 0 4px
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-sync-note {
  margin:
    0 0 4px
    !important;

  padding:
    5px 6px
    !important;

  min-height:
    30px
    !important;

  box-sizing:
    border-box
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-sync-note
span {
  font-size:
    .45rem
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-sync-note
strong {
  font-size:
    .55rem
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-payment-summary-grid {
  display:
    grid
    !important;

  gap:
    2px
    !important;

  row-gap:
    2px
    !important;

  margin:
    0
    !important;

  padding:
    0
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  .pos-payment-summary-column,
  .pos-payment-summary-column--operational,
  .pos-payment-summary-column--financial
) {
  display:
    grid
    !important;

  gap:
    2px
    !important;

  row-gap:
    2px
    !important;

  margin:
    0
    !important;

  padding:
    0
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-field-card {
  min-height:
    19px
    !important;

  height:
    auto
    !important;

  margin:
    0
    !important;

  padding:
    3px 5px
    !important;

  gap:
    5px
    !important;

  border-radius:
    4px
    !important;

  box-sizing:
    border-box
    !important;

  line-height:
    1
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-field-card
:is(
  span,
  label,
  small
) {
  font-size:
    .44rem
    !important;

  line-height:
    1
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-field-card
:is(
  strong,
  em
) {
  font-size:
    .51rem
    !important;

  line-height:
    1
    !important;
}


.pos-counter-page--dedicated
.pos-payment-summary-section
button {
  min-height:
    29px
    !important;

  height:
    29px
    !important;

  margin:
    4px 0 0
    !important;

  padding:
    3px 7px
    !important;

  font-size:
    .49rem
    !important;
}


/*
 * Explicitly prevent Payment Summary internal scroll ownership.
 */
.pos-counter-page--dedicated
.pos-payment-summary-section
:is(
  .pos-payment-summary-grid,
  .pos-payment-summary-column,
  .pos-summary-confirmation-card
) {
  max-height:
    none
    !important;

  overflow:
    visible
    !important;
}


/* ==============================================================
   RESPONSIVE

   Do not force desktop cart height on smaller widths.
   ============================================================== */

@media (max-width: 1279px) {

  .pos-counter-page--dedicated
  .pos-sale-cart-section
  > .system-table-wrap {
    height:
      auto
      !important;

    min-height:
      0
      !important;

    max-height:
      320px
      !important;
  }


  .pos-counter-page--dedicated
  .pos-product-tile-v16 {
    min-height:
      96px
      !important;

    height:
      96px
      !important;

    max-height:
      96px
      !important;
  }

}

/* UBZ_POS_R510_CLOSEOUT_CSS */


/* ==============================================================
   PAYMENT SUMMARY

   Native source contract:
     operational article 1 = Transaction timestamp
     operational article 2 = Business Date

   Hide those structurally so React replacement cannot restore them.
   ============================================================== */

.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-payment-summary-column--operational
> article:nth-of-type(1),

.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-payment-summary-column--operational
> article:nth-of-type(2),

.pos-counter-page--dedicated
.pos-payment-summary-section
.ubz-r510-payment-meta-hidden {
  display:
    none
    !important;
}


/*
 * Payment Summary also contains a timestamp copy under
 * "Payment Summary / N units in cart".
 */
.pos-counter-page--dedicated
.pos-payment-summary-section
.pos-summary-sync-note
> small {
  display:
    none
    !important;
}


/* ==============================================================
   PRODUCT CARD

   Enforce this exact order:

       PRODUCT NAME
       Price        Available
       Expiry       Days

   ============================================================== */

.pos-counter-page--dedicated
.pos-product-tile-v16
> .ubz-r56-product-data {
  display:
    grid
    !important;

  grid-template-columns:
    minmax(0, 1fr)
    !important;

  grid-template-rows:
    auto auto auto
    !important;

  align-content:
    start
    !important;
}


/*
 * PRODUCT NAME = FIRST BLOCK
 */
.pos-counter-page--dedicated
.pos-product-tile-v16
> .ubz-r56-product-data
> .ubz-r56-product-name {
  grid-row:
    1
    !important;

  order:
    -10
    !important;

  display:
    block
    !important;

  width:
    100%
    !important;

  margin:
    0
    !important;

  padding:
    0 1px 6px
    !important;

  border-bottom:
    1px solid #e8edf4
    !important;
}


/*
 * FIRST ATTRIBUTE ROW
 */
.pos-counter-page--dedicated
.pos-product-tile-v16
> .ubz-r56-product-data
> .ubz-r56-product-row:nth-of-type(1) {
  grid-row:
    2
    !important;

  order:
    0
    !important;
}


/*
 * SECOND ATTRIBUTE ROW
 */
.pos-counter-page--dedicated
.pos-product-tile-v16
> .ubz-r56-product-data
> .ubz-r56-product-row:nth-of-type(2) {
  grid-row:
    3
    !important;

  order:
    1
    !important;
}
