/* POS-POS · ORDNT visual language
 * Scope: Lab2 only. Geometry and mechanics remain with the real POS CSS.
 * Checkout is explicitly excluded; it retains the commercial interface.
 */
body.ordnt-pos-live {
  --poscore-ink:#172c49;
  --poscore-secondary:#61748e;
  --poscore-blue:#285dff;
  --poscore-soft:#eef3ff;
  --poscore-line:#dee6f0;
  --poscore-white:#fff;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-category-rail {
  background:#f6f8fb!important;
  border-color:var(--poscore-line)!important;
  border-radius:10px;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-stage {
  background:var(--poscore-white);
  border-color:var(--poscore-line);
  border-radius:10px;
}
/* Categories: keep button geometry; make the selected state meaningful. */
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-category-rail .ordnt-sales-category {
  border-color:var(--poscore-line)!important;
  border-radius:10px!important;
  background:var(--poscore-white)!important;
  color:var(--poscore-ink)!important;
  box-shadow:0 1px 2px rgba(16,39,70,.035)!important;
  transition:background-color .14s ease,border-color .14s ease,box-shadow .14s ease;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-category-rail .ordnt-sales-category::after {
  content:none!important;
  display:none!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-category-rail .ordnt-sales-category:hover:not(:disabled) {
  border-color:#b9c9e8!important;
  background:#f8faff!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-category-rail .ordnt-sales-category.active {
  border-color:#93adf6!important;
  background:var(--poscore-soft)!important;
  color:#2252c5!important;
  box-shadow:inset 0 0 0 1px rgba(40,93,255,.09)!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-category-rail .ordnt-sales-category strong {
  color:inherit!important;
  font-weight:800!important;
  line-height:1.24!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-category-rail .ordnt-sales-category span {
  color:var(--poscore-secondary)!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-category-rail .ordnt-sales-category:focus-visible,
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-product:focus-visible {
  outline:3px solid #8cadff!important;
  outline-offset:2px!important;
}
/* Promociones is a destination, not another product category.
   The rail keeps its existing scroll and button actions. */
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-category-rail .ordnt-sales-category.ordnt-pos-promo-category{
  border-color:#a8d8bc!important;
  background:#effaf3!important;
  color:#166444!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-category-rail .ordnt-sales-category.ordnt-pos-promo-category.active{
  border-color:#52ad7c!important;
  background:#e3f5eb!important;
  box-shadow:inset 0 0 0 1px rgba(24,121,72,.12)!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-category-rail .ordnt-sales-category.ordnt-pos-promo-category strong{
  display:inline-flex!important;
  justify-content:center;
  align-items:center;
  gap:6px;
}
body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-category-glyph{
  width:19px;
  height:19px;
  display:inline-grid;
  flex:none;
  place-items:center;
  border-radius:6px;
  background:#d3efde;
  color:#147347;
  font-size:12px;
  font-weight:900;
  animation:ordnt-promo-quiet-highlight 10s ease-in-out infinite;
}
@keyframes ordnt-promo-quiet-highlight{
  0%,84%,100%{box-shadow:0 0 0 0 rgba(40,149,89,0)}
  92%{box-shadow:0 0 0 4px rgba(40,149,89,.12)}
}
@media(min-width:651px){
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-category-rail .ordnt-sales-category.ordnt-pos-promo-category{
    margin-top:clamp(13px,2dvh,23px)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-category-glyph{
    animation:none!important;
  }
}

/* Promotion status is explicit; never show an unexplained % glyph.
   Exact prices still come only from checkout-backed promotion_preview. */
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-products>.ordnt-simple-product.has-offer>strong{
  padding-right:54px;box-sizing:border-box;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-products>.ordnt-simple-product>.ordnt-pos-product-offer-icon{
  position:absolute;top:7px;right:7px;z-index:3;
  display:inline-flex;justify-content:center;align-items:center;
  min-width:44px;max-width:65px;height:22px;padding:0 6px;
  border:1px solid #a8d8bc;border-radius:7px;
  background:#e8f8ee;color:#146d43;
  font-size:10px;font-weight:850;font-style:normal;line-height:1;
  letter-spacing:.01em;pointer-events:none;
}
/* Search row: unchanged controls and dimensions. */
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-stage-search-row {
  background:#f8faff!important;
  border-bottom-color:var(--poscore-line)!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-stage-search {
  border-color:#d9e3f0!important;
  border-radius:10px!important;
  background:var(--poscore-white)!important;
  box-shadow:0 1px 2px rgba(16,39,70,.025);
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-stage-search:focus-within {
  border-color:#94b0f5!important;
  box-shadow:0 0 0 2px rgba(40,93,255,.10);
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-stage-search input {
  color:var(--poscore-ink)!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-stage-tools button.quick {
  border-color:#d5e0f2!important;
  border-radius:10px!important;
  background:var(--poscore-white)!important;
  color:#2856b1!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-stage-tools button.quick:hover {
  border-color:#9bb6f3!important;
  background:var(--poscore-soft)!important;
}
/* Products: no changes to grid, card measurements, pictures or handlers. */
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products {
  background:#f8fafc!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products .ordnt-simple-product {
  border-color:#dce4ee!important;
  border-radius:11px!important;
  background:var(--poscore-white)!important;
  color:var(--poscore-ink)!important;
  box-shadow:0 1px 3px rgba(16,39,70,.06)!important;
  transition:background-color .14s ease,border-color .14s ease,box-shadow .14s ease;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products .ordnt-simple-product.no-photo {
  background:var(--poscore-white)!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products .ordnt-simple-product.has-photo {
  background:#f8fbff!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products .ordnt-simple-product:hover:not(:disabled) {
  border-color:#a4baf2!important;
  background:#fafcff!important;
  box-shadow:0 2px 8px rgba(40,93,255,.085)!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products .ordnt-simple-product:active:not(:disabled) {
  background:var(--poscore-soft)!important;
  box-shadow:inset 0 0 0 1px rgba(40,93,255,.10)!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products .ordnt-simple-product > strong {
  color:var(--poscore-ink)!important;
  font-weight:800!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products .ordnt-simple-product > span:not(.ordnt-pos-product-photo) {
  color:#2454bd!important;
  font-weight:850!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products .ordnt-simple-product > small {
  color:#75869c!important;
  font-weight:750!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products .ordnt-simple-product.sold-out {
  opacity:.57!important;
  background:#f1f3f6!important;
  box-shadow:none!important;
}
/* Ticket: visual cohesion without modifying checkout flows or content. */
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-ticket {
  border-color:var(--poscore-line)!important;
  border-radius:10px!important;
  background:var(--poscore-white)!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-ticket-top {
  border-bottom-color:#e6ebf3!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-pos-ticket-table-symbol {
  border-radius:9px!important;
  background:#edf3ff!important;
  color:#285dba!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-pos-ticket-table-copy strong {
  color:var(--poscore-ink)!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-pos-ticket-table-copy small {
  color:var(--poscore-secondary)!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-fulfillment button {
  border-color:#d9e2ed!important;
  border-radius:9px!important;
  background:var(--poscore-white)!important;
  color:#445c7a!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-fulfillment button.active {
  border-color:#a4baf0!important;
  background:var(--poscore-soft)!important;
  color:#2555be!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-ticket-lines {
  border-top-color:#edf1f6!important;
  border-bottom-color:#e8edf4!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-ticket-lines article {
  border-bottom-color:#edf1f6!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-line-main {
  color:var(--poscore-ink)!important;
  background:transparent!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-line-main strong {
  color:#263d5d!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-line-main small {
  color:#77879d!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-line-main b {
  color:#203957!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-remove {
  border-color:#f0d9d7!important;
  border-radius:8px!important;
  background:#fffafa!important;
  color:#b64b45!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-ticket-actions button {
  border-radius:9px!important;
  background:var(--poscore-white)!important;
  color:#506680!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-ticket-actions button.danger {
  border-color:#efcecb!important;
  color:#b64b45!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-ticket-actions button.active {
  background:var(--poscore-soft)!important;
  color:#2556c1!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-checkout {
  border-radius:10px!important;
  background:#245df1!important;
  box-shadow:0 2px 8px rgba(36,93,241,.14)!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-checkout:hover:not(:disabled) {
  background:#1d52df!important;
}
@media (prefers-reduced-motion: reduce) {
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-sales-category,
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products .ordnt-simple-product {
    transition:none!important;
  }
}


/* Batch point 4: promotion rail gets a tactile, still quiet identity. */
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-category-rail .ordnt-sales-category.ordnt-pos-promo-category{
  min-height:56px!important;
  touch-action:manipulation;
  transition:background-color .14s ease,border-color .14s ease,box-shadow .14s ease,transform .12s ease;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-category-rail .ordnt-sales-category.ordnt-pos-promo-category:active:not(:disabled){
  transform:scale(.985);
  background:#dcf3e6!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-category-rail .ordnt-sales-category.ordnt-pos-promo-category:focus-visible{
  outline:3px solid #79c99b!important;
  outline-offset:2px!important;
}
@media(prefers-reduced-motion:reduce){
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-category-rail .ordnt-sales-category.ordnt-pos-promo-category{
    transition:none!important;
  }
}

/* Approved point 4: deliberately distinct offer destination, not a recolored rail item. */
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-category-rail .ordnt-sales-category.ordnt-pos-promo-category{
  box-sizing:border-box!important;
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto 14px!important;
  align-items:center!important;
  gap:7px!important;
  min-height:69px!important;
  padding:10px 11px!important;
  border:1px solid #94d4b2!important;
  border-radius:12px!important;
  background:linear-gradient(105deg,#eaf8ef 0%,#f5fff9 85%)!important;
  box-shadow:0 3px 11px rgba(19,111,65,.09)!important;
  color:#135c39!important;
  text-align:left!important;
  touch-action:manipulation;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-category-rail .ordnt-sales-category.ordnt-pos-promo-category::before{
  content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;
  border-radius:0 4px 4px 0;background:#27a96e;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-category-rail .ordnt-sales-category.ordnt-pos-promo-category.active{
  border-color:#37a96c!important;
  background:linear-gradient(105deg,#daf4e6,#ebfff4)!important;
  box-shadow:inset 0 0 0 1px rgba(26,147,83,.14),0 3px 12px rgba(17,115,66,.12)!important;
}
body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-label{
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  gap:8px!important;min-width:0;max-width:100%;padding:0!important;
}
body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-category-glyph{
  display:grid!important;place-items:center!important;
  flex:0 0 34px!important;width:34px!important;height:34px!important;
  border-radius:11px!important;
  background:linear-gradient(145deg,#22ac6f,#0d804d)!important;
  box-shadow:0 2px 5px rgba(15,122,74,.19)!important;
  color:#fff!important;
  animation:none!important;
}
body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-category-glyph svg{
  display:block;width:18px;height:18px;
}
body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-copy{
  display:grid!important;min-width:0;gap:2px!important;
  color:#145f3c!important;
}
body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-copy b{
  font-size:12px!important;font-weight:900!important;line-height:1.17;
}
body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-copy small{
  font-size:9px!important;font-weight:600!important;
  color:#4c8869!important;text-transform:none!important;
  white-space:nowrap!important;
}
body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-count{
  display:grid!important;place-items:center!important;
  flex:0 0 auto;min-width:25px;height:23px!important;
  padding:0 5px!important;border-radius:8px!important;
  background:#d0f0df!important;color:#166b43!important;
  font-size:11px!important;font-weight:900!important;
}
body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-chevron{
  display:block;width:13px;height:13px;color:#268956;
  transition:transform .14s ease;
}
body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-category:hover:not(:disabled) .ordnt-pos-promo-chevron{
  transform:translateX(2px);
}
body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-category:active:not(:disabled){
  transform:scale(.987);background:#ddf5e8!important;
}
/* Tablet rail is intentionally narrow: retain its approved column width.
   The icon plus label are the complete destination; count and chevron are
   redundant here and used to clip “Promociones / Ofertas activas”. */
@media (min-width:821px) and (max-width:1366px) and (orientation:landscape) and (any-pointer:coarse){
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-category-rail .ordnt-sales-category.ordnt-pos-promo-category{
    width:100%!important;max-width:100%!important;min-width:0!important;
    grid-template-columns:minmax(0,1fr)!important;
    padding:9px 7px!important;gap:0!important;
  }
  body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-label{
    width:100%;min-width:0;max-width:100%;
    gap:6px!important;justify-content:flex-start!important;
  }
  body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-category-glyph{
    width:27px!important;height:27px!important;flex-basis:27px!important;border-radius:8px!important;
  }
  body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-copy{
    min-width:0;max-width:100%;overflow-wrap:normal;
  }
  body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-copy b{font-size:11px!important}
  body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-copy small{
    font-size:8.5px!important;white-space:normal!important;
  }
  body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-count,
  body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-chevron{display:none!important}
}
@media(prefers-reduced-motion:reduce){
  body.ordnt-pos-live .ordnt-simple-category-rail .ordnt-pos-promo-chevron{
    transition:none!important;transform:none!important;
  }
}

/* ORDNT POS — adaptive product touch targets for iPad and desktop.
   Scope only to the modern catalog, not its configurator, ticket or checkout.
   The grid follows available catalog width (not screen width), with bounded
   heights and names that remain legible at tablet viewing distance. */
@media (min-width: 651px) {
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products {
    grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr))!important;
    grid-auto-rows:clamp(86px,10.5dvh,96px)!important;
    align-content:start!important;
    gap:8px!important;
    padding:9px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products>.ordnt-simple-product {
    box-sizing:border-box!important;
    width:100%!important;
    max-width:210px;
    height:100%!important;
    min-height:0!important;
    padding:10px 11px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:minmax(0,1fr) auto!important;
    align-content:stretch!important;
    align-items:start!important;
    gap:4px 3px!important;
    overflow:hidden!important;
    text-align:left!important;
    touch-action:manipulation;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products>.ordnt-simple-product>strong {
    grid-column:1/-1;
    grid-row:1;
    min-width:0;
    max-width:100%;
    margin:0;
    font-size:13px!important;
    line-height:1.2!important;
    font-weight:800!important;
    white-space:normal!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    overflow-wrap:anywhere;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products>.ordnt-simple-product>span:not(.ordnt-pos-product-photo) {
    grid-column:1;
    grid-row:2;
    align-self:end;
    min-width:0;
    font-size:15px!important;
    line-height:1.15!important;
    font-weight:850!important;
    white-space:nowrap;
    font-variant-numeric:tabular-nums;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products>.ordnt-simple-product>small {
    grid-column:2;
    grid-row:2;
    align-self:end;
    justify-self:end;
    position:static!important;
    margin:0!important;
    font-size:9px!important;
    line-height:1.3!important;
    white-space:nowrap;
  }
}

/* Catalog price promise: exact original/final/saving only when the
   backend provided promotion_preview. Variants and thresholds keep offers
   without inventing an immediately payable price. */
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-products>.ordnt-simple-product>.ordnt-pos-promo-offer{
  color:#16744b!important;
  font-size:clamp(9px,.68vw,11px)!important;
  line-height:1.2!important;
  font-weight:800!important;
  max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;
  white-space:normal!important;text-align:right;
}
@media(min-width:651px){
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-products>.ordnt-simple-product.has-priced-promo{
    grid-template-columns:minmax(0,1fr) minmax(0,auto)!important;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-products>.ordnt-simple-product>.ordnt-pos-promo-price{
    grid-column:1;grid-row:2;
    align-self:end;display:flex!important;flex-direction:column;
    justify-content:flex-end;align-items:flex-start;
    gap:1px;min-width:0;max-width:100%;
    white-space:normal!important;line-height:1.08!important;
    color:#16643d!important;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-products>.ordnt-simple-product>.ordnt-pos-promo-price s{
    color:#7a8aa1;font-size:10px;font-weight:650;
    text-decoration-thickness:1px;white-space:nowrap;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-products>.ordnt-simple-product>.ordnt-pos-promo-price b{
    color:#157346;font-size:clamp(14px,1.05vw,18px);font-weight:900;
    font-variant-numeric:tabular-nums;white-space:nowrap;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-products>.ordnt-simple-product>.ordnt-pos-promo-saving{
    grid-column:2;grid-row:2;align-self:end;justify-self:end;
    max-width:100%;min-width:0;padding:3px 5px!important;
    border:1px solid #caead5;border-radius:6px;
    background:#effaf3;color:#12653f!important;
    font-size:9px!important;font-weight:850!important;
    line-height:1.18!important;text-align:center;
    white-space:normal!important;overflow-wrap:anywhere;
  }
  body.ordnt-pos-live .ordnt-simple-product .ordnt-pos-promo-discount{
    display:block;white-space:normal!important;overflow-wrap:anywhere;
  }
}
@media(max-width:650px){
  body.ordnt-pos-live .ordnt-simple-product>.ordnt-pos-promo-price{
    display:flex!important;flex-wrap:wrap;align-items:baseline;
    gap:4px;min-width:0;white-space:normal!important;
  }
  body.ordnt-pos-live .ordnt-simple-product>.ordnt-pos-promo-price s{
    font-size:10px;color:#7a8aa1;
  }
  body.ordnt-pos-live .ordnt-simple-product>.ordnt-pos-promo-price b{
    font-size:15px;font-weight:900;color:#157346;
  }
  body.ordnt-pos-live .ordnt-simple-product>.ordnt-pos-promo-saving{
    color:#12653f!important;font-size:10px!important;
    font-weight:850;white-space:normal!important;
    overflow-wrap:anywhere;text-align:right;
  }
}
/* Larger legible touch cards at 2K desktop widths; no page scrolling.
   Content scroll stays inside the catalog. Width and height are bounded
   rather than scaling uncontrollably with the monitor dimensions. */
@media (min-width:1400px) and (min-height:780px) {
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products {
    grid-template-columns:repeat(auto-fill,minmax(min(100%,clamp(165px,10.3vw,195px)),1fr))!important;
    grid-auto-rows:clamp(102px,11.5dvh,124px)!important;
    gap:10px!important;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products>.ordnt-simple-product {
    max-width:220px;padding:12px 13px!important;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products>.ordnt-simple-product>strong {
    font-size:clamp(15px,.95vw,17px)!important;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products>.ordnt-simple-product>span:not(.ordnt-pos-product-photo):not(.ordnt-pos-promo-price) {
    font-size:clamp(17px,1.08vw,20px)!important;
  }
}
/* iPad landscape gets legible labels without oversized fixed-width tiles.
   The right-hand ticket and category rail do not move or change size. */
@media (min-width:901px) and (max-width:1366px) and (pointer:coarse) and (orientation:landscape) {
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products {
    grid-auto-rows:clamp(95px,11.2dvh,108px)!important;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products>.ordnt-simple-product>strong {
    font-size:14px!important;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active) .ordnt-simple-products>.ordnt-simple-product>span:not(.ordnt-pos-product-photo):not(.ordnt-pos-promo-price) {
    font-size:16px!important;
  }
}

/* Conditional promotions: price and eligibility each get a dedicated row.
   A catalog base price is NOT a checkout-confirmed discounted price. */
@media(min-width:651px){
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-products>.ordnt-simple-product.has-conditional-offer{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:minmax(0,1fr) auto auto!important;
    row-gap:2px!important;
  }
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-products>.ordnt-simple-product.has-conditional-offer>.ordnt-pos-promo-base-price{
  grid-column:1/-1!important;
  grid-row:2!important;
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:wrap;
  column-gap:6px!important;
  row-gap:0!important;
  min-width:0!important;
  white-space:normal!important;
  font-size:inherit!important;
  line-height:1.15!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-products>.ordnt-simple-product.has-conditional-offer>.ordnt-pos-promo-base-price>small{
  color:#71829a!important;
  font-size:9px!important;
  line-height:1.1!important;
  font-weight:750!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-products>.ordnt-simple-product.has-conditional-offer>.ordnt-pos-promo-base-price>b{
  color:#2454bd!important;
  font-size:clamp(14px,1.05vw,18px)!important;
  font-weight:900!important;
  line-height:1.05!important;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-products>.ordnt-simple-product.has-conditional-offer>.ordnt-pos-promo-offer{
  grid-column:1/-1!important;
  grid-row:3!important;
  justify-self:start!important;
  align-self:end!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  font-size:10px!important;
  line-height:1.15!important;
  color:#157346!important;
  text-align:left!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
@media(max-width:650px){
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-products>.ordnt-simple-product.has-conditional-offer{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:3px!important;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-products>.ordnt-simple-product.has-conditional-offer>strong{
    margin-bottom:auto!important;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-products>.ordnt-simple-product.has-conditional-offer>.ordnt-pos-promo-base-price,
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-products>.ordnt-simple-product.has-conditional-offer>.ordnt-pos-promo-offer{
    position:static!important;
    align-self:flex-start!important;
  }
}


/* Batch point 3: never split an exact price and its savings into competing
   columns in narrow five-across product grids. */
@media(min-width:651px){
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-products>.ordnt-simple-product.has-priced-promo{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:minmax(0,1fr) auto auto!important;
    row-gap:2px!important;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-products>.ordnt-simple-product.has-priced-promo>.ordnt-pos-promo-price{
    grid-column:1!important;
    grid-row:2!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:wrap!important;
    align-items:baseline!important;
    justify-content:flex-start!important;
    gap:5px!important;
    min-width:0!important;
    white-space:normal!important;
  }
  body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
  .ordnt-simple-products>.ordnt-simple-product.has-priced-promo>.ordnt-pos-promo-saving{
    grid-column:1!important;
    grid-row:3!important;
    align-self:end!important;
    justify-self:start!important;
    padding:0!important;
    border:none!important;
    background:transparent!important;
    font-size:10px!important;
    text-align:left!important;
  }
}


/* Approved point 3: real server-calculated original/final price occupies
   dedicated rows; variant descriptions never collide with savings. */
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-products>.ordnt-simple-product.has-priced-promo>.ordnt-pos-promo-saving{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;
  gap:1px!important;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-products>.ordnt-simple-product .ordnt-pos-promo-variant{
  display:block;color:#70829a;font-size:9px!important;font-weight:650;
  white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;
}
body.ordnt-pos-live .ordnt-pos-canonical:not(.ordnt-pos-checkout-active)
.ordnt-simple-products>.ordnt-simple-product>.ordnt-pos-product-offer-icon{
  min-width:44px;max-width:70px;
  background:#dff7e9!important;color:#12663e!important;
  border-color:#8bcfa9!important;font-size:11px!important;
  box-shadow:0 1px 4px rgba(20,115,62,.1);
}


/* POS Universal: one catalog-defined layout for coffee, burgers and restaurants. */
body.ordnt-pos-live .ordnt-pos-modifier-compact-grid {
    grid-template-columns: repeat(auto-fit, minmax(128px, 1fr));
    gap: 8px;
}
body.ordnt-pos-live .ordnt-pos-modifier-removal-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
body.ordnt-pos-live .ordnt-pos-modifier-removal-grid .ordnt-sales-modifier-option {
    min-height: 52px;
    text-align: left;
}
body.ordnt-pos-live .ordnt-pos-modifier-removal-grid .ordnt-sales-modifier-option.active {
    border-width: 2px;
}
.ordnt-pos-universal-profile {
    display: grid;
    gap: 5px;
    padding: 12px;
    border: 1px solid var(--ordnt-border, #dbe4f0);
    border-radius: 12px;
    background: var(--ordnt-surface, #f8fafc);
}
.ordnt-pos-universal-profile span,
.ordnt-pos-universal-profile small { font-size: 12px; opacity: .8; }
.ordnt-pos-universal-profile strong { font-size: 15px; }
