/* ORDNT POS moderno: composición del punto de venta operativo.
 * Reutiliza la UI y el motor reales de /pos; no se copian sales-view.js,
 * sales-view.css ni los servicios de órdenes y pagos.
 * Las categorías preceden a Artículos y el Ticket queda a la derecha.
 */
/* Fit the physical POS viewport; only products, ticket items and operational lists scroll. */
body.ordnt-pos-live{height:100dvh;min-height:0;overflow:hidden}
body.ordnt-pos-live .ordnt-pos-canonical{height:100dvh;min-height:0;overflow:hidden}
body.ordnt-pos-live .ordnt-simple-polotab-layout{min-height:0;overflow:hidden}
body.ordnt-pos-live .ordnt-simple-stage{min-height:0;overflow:hidden}
/* Captura de importe: usa toda la altura de la columna CENTRAL. Los métodos
   a la izquierda y el ticket a la derecha permanecen visibles e inmóviles. */
body.ordnt-pos-live .ordnt-pos-canonical[data-pos-inline-amount] .ordnt-simple-stage{
  min-height:0;height:100%;width:100%;overflow:hidden;
}
body.ordnt-pos-live .ordnt-pos-canonical[data-pos-inline-amount] .ordnt-pos-pay-flow.keypad-active{
  height:100%;min-height:0;grid-template-rows:minmax(0,1fr);
}
body.ordnt-pos-live .ordnt-pos-canonical[data-pos-inline-amount] .ordnt-pos-inline-keypad-full{
  height:100%;min-height:0;padding:clamp(12px,1.4vw,22px);
  gap:clamp(7px,1vh,13px);
}
body.ordnt-pos-live .ordnt-pos-canonical[data-pos-inline-amount] .ordnt-pos-inline-keypad-keys{
  min-height:0;gap:clamp(7px,1vw,13px);
}
body.ordnt-pos-live .ordnt-pos-canonical[data-pos-inline-amount] .ordnt-pos-inline-keypad-keys button{
  font-size:clamp(26px,3vw,46px);border-radius:13px;
}
@media (min-width: 651px) {
  body.ordnt-pos-live .ordnt-simple-polotab-layout:not(.ordnt-pos-workspace-mode):not(.ordnt-pos-cash-mode) {
    grid-template-columns: minmax(106px, 12%) minmax(0, 1fr) minmax(220px, 25%) !important;
    grid-template-areas: "categories articles ticket" !important;
    gap: 7px;
  }
  body.ordnt-pos-live .ordnt-simple-polotab-layout > .ordnt-simple-ticket {
    grid-area: ticket;
    min-width: 0;
  }
  body.ordnt-pos-live .ordnt-simple-polotab-layout > .ordnt-simple-category-rail {
    grid-area: categories;
    min-width: 0;
  }
  body.ordnt-pos-live .ordnt-simple-polotab-layout > .ordnt-simple-stage {
    grid-area: articles;
    min-width: 0;
  }
  /* Deliberadamente más específico que la regla desktop de /pos (23% / 77%).
   Mesas y Pedidos deben ser el área de trabajo principal; Ticket lateral. */
  body.ordnt-pos-live .ordnt-simple-pos.ordnt-pos-canonical .ordnt-simple-polotab-layout.ordnt-pos-workspace-mode:not(.ordnt-pos-cash-mode) {
    grid-template-columns: minmax(0, 75fr) minmax(220px, 25fr) !important;
    grid-template-areas: "workspace ticket" !important;
    gap: 7px;
  }
  body.ordnt-pos-live .ordnt-simple-polotab-layout.ordnt-pos-workspace-mode:not(.ordnt-pos-cash-mode) > .ordnt-pos-workspace-pane {
    grid-area: workspace;
    min-width: 0;
  }
  /* Caja conserva su composición real y el ticket oculto. */
  body.ordnt-pos-live .ordnt-simple-polotab-layout.ordnt-pos-cash-mode {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas: none !important;
  }
}
@media (min-width: 651px) and (max-width: 900px) {
  body.ordnt-pos-live .ordnt-simple-polotab-layout:not(.ordnt-pos-workspace-mode):not(.ordnt-pos-cash-mode) {
    grid-template-columns: minmax(86px, 13%) minmax(0, 1fr) minmax(190px, 25%) !important;
    gap: 5px;
  }
  body.ordnt-pos-live .ordnt-simple-pos.ordnt-pos-canonical .ordnt-simple-polotab-layout.ordnt-pos-workspace-mode:not(.ordnt-pos-cash-mode) {
    grid-template-columns: minmax(0, 75fr) minmax(190px, 25fr) !important;
    gap: 5px;
  }
}
/* Fase 3: barra equilibrada del POS real, sin navegación duplicada.
 * Izquierda Productos / Mesas / Pedidos; ORDNT centrado;
 * derecha Caja operativa única y usuario.
 */
body.ordnt-pos-live .ordnt-pos-topbar {
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  gap: 10px !important;
  padding-inline: 12px !important;
}
body.ordnt-pos-live .ordnt-pos-topbar .ordnt-pos-topbar-start {
  grid-column: 1;
  min-width: 0;
  justify-self: start;
}
body.ordnt-pos-live .ordnt-pos-topbar .ordnt-simple-topnav {
  grid-column: 3;
  min-width: 0;
  justify-self: end;
  justify-content: flex-end;
  gap: 0;
}
body.ordnt-pos-live .ordnt-pos-topbar-start > .ordnt-pos-nav-group {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 3px;
  padding: 0;
  border: 0;
  background: transparent;
}
body.ordnt-pos-live .ordnt-pos-topbar-start .ordnt-simple-topnav-button {
  display: flex !important;
  min-height: 42px !important;
  height: 42px !important;
  min-width: 0;
  align-items: center;
  gap: 7px !important;
  padding: 0 12px !important;
  border: 1px solid transparent !important;
  border-radius: 11px !important;
  background: transparent !important;
  color: #52657f !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  white-space: nowrap;
}
body.ordnt-pos-live .ordnt-pos-topbar-start .ordnt-simple-topnav-button > svg {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}
body.ordnt-pos-live .ordnt-pos-topbar-start .ordnt-simple-topnav-button.active {
  color: #205df0 !important;
  background: #edf2ff !important;
}
body.ordnt-pos-live .ordnt-pos-topbar-start .ordnt-simple-topnav-button:hover {
  background: #f2f6ff !important;
}
body.ordnt-pos-live .ordnt-simple-topnav > .ordnt-pos-register-control {
  flex: 0 1 auto;
  max-width: 190px;
  min-width: 0;
  margin-right: 2px;
}
body.ordnt-pos-live .ordnt-pos-topbar .ordnt-simple-user-area {
  flex: 0 0 auto;
  margin-left: 7px;
  padding-left: 9px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-topbar-start > .ordnt-pos-nav-group {
  display: none !important;
}
@media (max-width: 1000px) {
  body.ordnt-pos-live .ordnt-pos-topbar-start .ordnt-simple-topnav-button {
    gap: 5px !important;
    padding-inline: 8px !important;
    font-size: 10.5px !important;
  }
  body.ordnt-pos-live .ordnt-simple-topnav > .ordnt-pos-register-control {
    max-width: 135px;
  }
}
@media (max-width: 790px) {
  body.ordnt-pos-live .ordnt-pos-topbar {
    gap: 5px !important;
    padding-inline: 6px !important;
  }
  body.ordnt-pos-live .ordnt-pos-topbar-start .ordnt-simple-topnav-button {
    width: 35px !important;
    min-width: 35px !important;
    padding: 0 6px !important;
    justify-content: center;
  }
  body.ordnt-pos-live .ordnt-pos-topbar-start .ordnt-simple-topnav-button > span {
    display: none !important;
  }
  body.ordnt-pos-live .ordnt-pos-topbar-start > .ordnt-pos-nav-group {
    gap: 1px;
  }
  body.ordnt-pos-live .ordnt-simple-topnav > .ordnt-pos-register-control {
    max-width: 105px;
  }
  body.ordnt-pos-live .ordnt-pos-topbar .ordnt-simple-user-area {
    margin-left: 4px;
    padding-left: 5px;
  }
}
@media (max-width: 540px) {
  body.ordnt-pos-live .ordnt-pos-topbar-start .ordnt-simple-topnav-button {
    width: 31px !important;
    min-width: 31px !important;
    min-height: 37px !important;
    height: 37px !important;
    padding-inline: 4px !important;
  }
  body.ordnt-pos-live .ordnt-simple-topnav > .ordnt-pos-register-control {
    width: 38px !important;
    min-width: 38px !important;
  }
}

/* Fase 5 — claridad visual de iconos del POS Lab.
 * Ajuste solo de POS; sin tocar espaciado de columnas ni navegación. */
@media (min-width: 1200px) {
  body.ordnt-pos-live .ordnt-pos-topbar-start .ordnt-simple-topnav-button > svg {
    width: 20px !important;
    height: 20px !important;
    flex: 0 0 20px !important;
  }
  body.ordnt-pos-live .ordnt-simple-topnav > .ordnt-pos-register-control .ordnt-pos-register-control-icon > svg {
    width: 20px !important;
    height: 20px !important;
  }
}
@media (min-width: 651px) and (max-width: 1199px) {
  body.ordnt-pos-live .ordnt-pos-topbar-start .ordnt-simple-topnav-button > svg {
    width: 17px !important;
    height: 17px !important;
    flex: 0 0 17px !important;
  }
}



/* POS brand and confirmation on screen switches without obstructing POS controls. */
body.ordnt-pos-live .ordnt-simple-brand-final{display:inline-flex!important;align-items:center;justify-content:center;gap:7px!important}
body.ordnt-pos-live .ordnt-simple-brand-pos{display:inline-flex;border-left:1px solid #cbd7e7;padding-left:9px;color:#375b81;font-size:11px;font-weight:850;letter-spacing:.12em}


/* Unified checkout v1: retain categories / work area / right-hand ticket.
   Compact standard payments to fit a landscape iPad without whole-page scroll. */
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-head{
  padding:8px 14px 7px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-body{
  padding:10px 16px;
  gap:9px;
  min-height:0;
  overflow-y:auto; /* fallback only for genuinely long terminal lists */
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-group{
  gap:7px;
  padding-bottom:9px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.amount-choices{
  grid-template-columns:repeat(3,minmax(0,1fr));
  max-width:none;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.amount-choices button{
  min-height:64px;
  padding:7px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.amount-choices button strong{
  font-size:clamp(15px,1.55vw,20px);
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-config-note{
  margin:0;color:#546c88;font-size:12px;line-height:1.35;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.cash-choices button{
  min-height:65px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.tip-choices button{
  min-height:50px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-footer{
  gap:6px;
  padding:9px 16px 10px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-submit{
  min-height:52px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-summary .ordnt-pos-pay-cash-received strong{
  color:#154a74;
  font-size:19px;
  font-weight:900;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-part{
  min-height:104px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-checkout-split{
  border-style:dashed;
}
@media(max-width:900px){
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-body{padding:8px 10px;gap:7px}
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.amount-choices{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.amount-choices button{min-height:57px}
}


/* ORDNT POS · Compact checkout v2: the existing right-hand ticket stays fixed.
   The method workspace uses the full height instead of repeating the ticket total. */
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-flow.is-method{
  grid-template-rows:minmax(0,1fr) auto;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-flow.is-split{
  grid-template-rows:minmax(0,1fr);
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-flow.is-start{
  grid-template-rows:minmax(0,1fr) auto;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-body{
  gap:8px;
  padding:10px 15px;
  overflow-y:auto;
  overscroll-behavior:contain;
  align-content:start;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-group{
  gap:6px;
  padding-bottom:8px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-group-head>strong{
  font-size:14px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options{
  gap:6px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.tip-choices{
  grid-template-columns:repeat(auto-fit,minmax(66px,1fr));
  max-width:none;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.tip-choices button{
  min-height:47px;
  gap:2px;
  padding:5px 4px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.tip-choices button span{
  font-size:12px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.tip-choices button strong{
  font-size:13px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.amount-choices{
  grid-template-columns:repeat(3,minmax(0,1fr));
  max-width:none;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.amount-choices button{
  min-height:61px;
  gap:2px;
  padding:6px 4px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.amount-choices button strong{
  font-size:clamp(15px,1.4vw,20px);
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.currency-choice{
  max-width:none;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.currency-choice button{
  min-height:39px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-group-head.received{
  margin-top:0;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.cash-choices{
  grid-template-columns:repeat(4,minmax(0,1fr));
  max-width:none;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.cash-choices button{
  min-height:66px;
  gap:2px;
  padding:5px 3px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.cash-choices button strong{
  font-size:clamp(14px,1.35vw,19px);
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-footer{
  gap:5px;
  padding:8px 14px 10px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement.has-cash{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement>div{
  display:grid;
  min-width:0;
  gap:3px;
  align-content:center;
  padding:6px 8px;
  border:1px solid #dce6f2;
  border-radius:9px;
  background:#f5f8fc;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement>div>span{
  font-size:11px;
  color:#57718e;
  font-weight:750;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement>div>strong{
  min-width:0;
  font-size:clamp(15px,1.7vw,22px);
  line-height:1.2;
  font-weight:900;
  color:#153e6a;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement .ordnt-pos-pay-change-result.has-change{
  background:#e8f8ef;
  border-color:#c9e7d5;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement .ordnt-pos-pay-change-result.has-change strong{
  color:#147348;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-remaining-note{
  margin:0;
  color:#597591;
  font-size:12px;
  text-align:right;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-conversion{
  justify-self:end;
  color:#74869a;
  font-size:10px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-submit{
  min-height:51px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-split-heading{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
  padding:5px 0 9px;
  border-bottom:1px solid #dce6f2;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-split-heading strong{
  font-size:21px;
  color:#153c67;
  font-weight:900;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-split-heading span{
  font-size:15px;
  color:#365f89;
  font-weight:850;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-parts{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-part{
  min-height:102px;
  padding:12px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-checkout-split{
  border-style:solid;
  border-color:#a5bfdf;
  background:#ecf3fc;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-checkout-split strong{
  color:#194e88;
}
@media (max-width:1000px){
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-body{padding:8px 10px;gap:6px}
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.cash-choices button{min-height:60px}
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.cash-choices button strong{font-size:14px}
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement>div{padding:6px 5px}
}
@media(max-width:700px){
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.cash-choices{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-height:710px) and (min-width:701px){
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-body{padding:6px 12px;gap:5px}
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-group{gap:4px;padding-bottom:5px}
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.tip-choices button{min-height:39px}
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.amount-choices button{min-height:52px}
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.cash-choices button{min-height:52px}
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-footer{padding:5px 12px 7px}
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-submit{min-height:45px}
}


/* Checkout Lab2: a single amount selector and one compact cash toolbar.
   Shell grid remains Métodos | Cobrar | Ticket, with no whole-page scroll.
   Only an unusually long terminal list gets its own scrolling region. */
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-amount{
  padding-bottom:8px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-cash-toolbar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:6px 10px;
  min-height:36px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-cash-toolbar>strong{
  font-size:clamp(14px,1.2vw,17px);
  font-weight:850;
  color:#29425e;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-currency-switch{
  display:inline-grid;
  grid-template-columns:repeat(2,minmax(52px,1fr));
  gap:4px;
  padding:3px;
  border:1px solid #d6e2f0;
  background:#edf3fa;
  border-radius:10px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-currency-switch button{
  min-width:52px;
  min-height:34px;
  padding:4px 7px;
  border:1px solid transparent;
  border-radius:7px;
  color:#3b5877;
  background:transparent;
  font-family:inherit;
  font-size:12px;
  font-weight:800;
  line-height:1.2;
  cursor:pointer;
  touch-action:manipulation;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-currency-switch button.active{
  border-color:#adcaf0;
  color:#1757b0;
  background:white;
  box-shadow:0 1px 3px rgba(22,73,135,.12);
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-currency-switch button:focus-visible{
  outline:2px solid #1769d8;
  outline-offset:2px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-progress{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:6px 12px;
  padding:12px 14px;
  border:1px solid #cce5d7;
  border-radius:10px;
  background:#ecf8f0;
  color:#23704a;
  font-size:clamp(13px,1.15vw,16px);
  font-weight:850;
  font-variant-numeric:tabular-nums;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-progress strong{
  color:#126c40;
  font-weight:900;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.terminal-choices{
  max-height:min(26vh,190px);
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement.has-cash{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.17fr);
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement>div>span{
  font-size:12px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement .ordnt-pos-pay-change-result.has-change{
  border-color:#9bd4b4;
  background:#e3f7e9;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement .ordnt-pos-pay-change-result>strong{
  font-size:clamp(16px,1.5vw,23px);
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-checkout-split{
  border-width:2px;
  font-weight:850;
}
@media(max-height:710px) and (min-width:701px){
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-cash-toolbar{min-height:32px}
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-currency-switch button{min-height:31px}
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-progress{padding:8px 12px}
}
@media(max-width:700px){
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement.has-cash{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement.has-cash .ordnt-pos-pay-change-result{
    grid-column:1 / -1;
  }
}


/* ORDNT checkout final wireframe: one account total, touch-ready choices and
   a fixed settlement. The real right-hand ticket stays in its original column. */
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-simple-category-rail{
  display:flex;flex-direction:column;overflow-y:auto;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-simple-category-rail>.ordnt-pos-checkout-split{
  flex-shrink:0;margin-top:auto;position:sticky;bottom:0;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-checkout-split:disabled{
  opacity:.55;cursor:not-allowed;
}
/* The right-hand ticket is authoritative for the account total.
   Display the exchange policy only for cash, without a second total hero. */
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-exchange-note{
  margin:0;
  padding:7px 11px;
  border:1px solid #dce6f2;
  border-radius:9px;
  background:#f5f8fd;
  color:#41617f;
  font:750 clamp(12px,1.05vw,14px)/1.3 Inter,system-ui,sans-serif;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.tip-choices{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.tip-choices button{
  min-height:64px;padding:5px 2px;align-content:center;gap:4px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.tip-choices button span{
  font-size:clamp(11px,1.05vw,13px);text-align:center;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.tip-choices button strong{
  font-size:clamp(11px,1.05vw,15px);text-align:center;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-amount .ordnt-pos-pay-group-head{
  margin-bottom:2px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement.has-cash{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-settlement>div{
  min-height:48px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-change-delivery{
  display:flex;align-items:center;justify-content:space-between;gap:7px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-change-delivery>span{
  color:#55718e;font-size:12px;font-weight:800;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-change-delivery .change-choices{
  display:grid;grid-template-columns:repeat(2,62px);gap:5px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-change-delivery .change-choices button{
  min-height:38px;padding:5px 7px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-method-note{
  margin:0;font-size:13px;font-weight:750;color:#416487;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-simple-ticket-lines article{
  grid-template-columns:minmax(0,1fr)!important;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .poscore-readonly-line{
  width:100%;cursor:default;
}
/* No mostrar controles de mesa/servicio inactivos mientras se cobra.
   Siguen disponibles intactos al regresar al catálogo. */
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-simple-ticket-top,
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-simple-fulfillment{
  display:none;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-checkout-total strong{
  font-size:clamp(14px,1.6vw,19px);
}
@media(max-height:710px) and (min-width:701px){
 body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.tip-choices button{min-height:49px}
 body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.amount-choices button{min-height:50px}
 body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.cash-choices button{min-height:52px}
}
@media(max-width:780px){
 body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-options.tip-choices{
  grid-template-columns:repeat(auto-fit,minmax(65px,1fr));
 }
}

/* ORDNT POS owns feedback entry in the user menu. The existing feedback dialog
   remains mounted and is opened by its native trigger, preserving screenshot
   capture and automatic page context without covering cashier controls. */
body.ordnt-pos-live .ordnt-beta-feedback-trigger{display:none!important}


/* ORDNT POS 1.0 — Dividir cuenta: independent item allocation within
   the existing central checkout stage. Ticket always remains on the right. */
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-pay-flow.is-item-split{
  display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0;height:100%;overflow:hidden;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .is-item-split .ordnt-pos-pay-body{
  min-height:0;display:flex;flex-direction:column;gap:9px;overflow:hidden;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-instructions{
  flex:none;margin:0;color:#526985;font-size:clamp(12px,1vw,14px);line-height:1.35;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-picker{
  min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;
  display:grid;align-content:start;gap:7px;padding:2px 5px 7px 2px;
  scrollbar-width:thin;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-row{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;
  padding:10px 12px;border:1px solid #dde7f3;border-radius:11px;background:#fff;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-details{
  min-width:0;display:grid;gap:3px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-details strong{
  font-size:clamp(14px,1.2vw,17px);font-weight:800;color:#1b3452;overflow-wrap:anywhere;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-details small,
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-details span{
  color:#587089;font-size:clamp(12px,.95vw,13px);
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-counter{
  display:grid;grid-template-columns:42px minmax(24px,auto) 42px;gap:5px;align-items:center;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-counter button{
  min-height:44px;min-width:42px;border:1px solid #b4d0f0;border-radius:9px;
  background:#f0f6ff;color:#1356ac;font-size:21px;font-weight:850;cursor:pointer;touch-action:manipulation;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-counter button:disabled{
  cursor:not-allowed;opacity:.4;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-counter strong{
  text-align:center;font-size:18px;font-variant-numeric:tabular-nums;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-split-footer{
  gap:7px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-split-totals{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-split-totals>div{
  display:grid;gap:4px;padding:8px 10px;border:1px solid #dce7f3;
  border-radius:10px;background:#f2f7fc;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-split-totals span{
  color:#54708d;font-size:12px;font-weight:700;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-split-totals strong{
  color:#18456e;font-size:clamp(18px,1.6vw,23px);font-variant-numeric:tabular-nums;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-edit{
  min-height:40px;margin-bottom:5px;padding:7px 10px;border:1px solid #d6e4f2;
  border-radius:9px;background:white;color:#245c9e;font:750 13px Inter,system-ui,sans-serif;
}
@media(max-width:790px){
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-row{padding:8px;gap:7px}
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-counter{
    grid-template-columns:38px 22px 38px;gap:3px;
  }
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-counter button{
    min-width:38px;min-height:42px;
  }
}


/* POS 1.0: multiple itemized bills, fixed checkout viewport and touch targets. */
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-count-options,
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-account-tabs{
  display:flex;align-items:stretch;gap:6px;flex:0 0 auto;
  width:100%;min-width:0;overflow-x:auto;scrollbar-width:thin;
  overscroll-behavior-inline:contain;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-count-options button,
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-account-tabs button{
  flex:1 0 auto;min-width:78px;min-height:42px;padding:7px 10px;
  border:1px solid #b6cce6;border-radius:9px;background:#fff;color:#285173;
  font:750 clamp(11px,1vw,13px) Inter,system-ui,sans-serif;
  white-space:nowrap;cursor:pointer;touch-action:manipulation;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-count-options button.active,
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-account-tabs button.active{
  border-color:#1769f7;background:#eaf3ff;color:#1356ac;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-share{
  width:max-content;max-width:100%;min-height:34px;margin-top:4px;
  border:1px solid #c7d9ed;border-radius:8px;padding:5px 9px;
  background:#f7fafe;color:#2b5687;font:750 11px Inter,system-ui,sans-serif;
  cursor:pointer;touch-action:manipulation;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-share.active{
  background:#e8f5f2;color:#12685c;border-color:#94d2c6;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-share:disabled{
  opacity:.5;cursor:not-allowed;
}
body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-split-totals{
  grid-template-columns:repeat(auto-fit,minmax(94px,1fr));
  max-height:min(17vh,120px);overflow-y:auto;overscroll-behavior:contain;
}
@media(max-height:720px){
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-instructions{
    font-size:11px;line-height:1.2;
  }
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-count-options button,
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-account-tabs button{
    min-height:38px;
  }
  body.ordnt-pos-live .ordnt-pos-checkout-active .ordnt-pos-item-split-totals>div{
    padding:5px 7px;
  }
}

/* Cash refunds use physical MXN/USD; stay within the POS viewport. */
.ordnt-sales-refund-physical{display:grid;gap:7px;min-width:0;padding:9px 10px;border:1px solid #cadcf0;border-radius:10px;background:#f8fbff}
.ordnt-sales-refund-physical label{min-width:0}
.ordnt-sales-refund-physical p{margin:0;font-size:12px;line-height:1.35;color:#365a79}
