/* ARDAT POS v3.5.3 Unified Fiscal C - RC3 UX overlay sobre v3.5.2.1 */
body.pos353-menu-mode{overflow:auto;background:#030914;color:#fff;}
.pos353-menu-shell{min-height:100vh;padding:28px;background:radial-gradient(circle at top,#0e274a 0,#06111f 56%,#030914 100%);color:#fff;}
.pos353-menu-top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:22px;flex-wrap:wrap;}
.pos353-brand{display:flex;align-items:center;gap:14px}.pos353-brand img{width:58px;height:58px;border-radius:16px;box-shadow:0 10px 24px rgba(0,0,0,.24)}.pos353-brand h1{font-size:30px;line-height:1;margin:0;font-weight:900;letter-spacing:-.035em}.pos353-brand p{margin:6px 0 0;color:#bbd9ef}.pos353-menu-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.pos353-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(80,145,190,.4);background:rgba(17,36,62,.86);padding:10px 14px;border-radius:16px;color:#e8f7ff;font-weight:800}.pos353-chip small{display:block;color:#9fc1d8;font-size:10px;text-transform:uppercase;line-height:1.1}.pos353-main-card{border:1px solid rgba(80,145,190,.35);border-radius:26px;background:linear-gradient(155deg,rgba(20,45,75,.94),rgba(11,25,43,.96));box-shadow:0 20px 44px rgba(0,0,0,.24);padding:24px}.pos353-main-card h2{font-size:32px;line-height:1;margin:0 0 10px}.pos353-main-card p{margin:0;color:#b7d5ec;max-width:960px}.pos353-main-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px;margin-top:20px}.pos353-main-tile{border:2px solid rgba(54,176,255,.38);border-radius:22px;background:rgba(243,247,251,.98);color:#12304d;padding:18px 16px;display:grid;place-items:center;text-align:center;gap:10px;min-height:142px;font-weight:900;box-shadow:0 12px 24px rgba(0,0,0,.15);cursor:pointer}.pos353-main-tile:hover{transform:translateY(-2px);border-color:#29d8a5}.pos353-main-tile .emoji{font-size:42px;line-height:1}.pos353-main-tile b{font-size:18px;line-height:1.1}.pos353-main-tile span:last-child{font-size:13px;color:#4f6c87;font-weight:800;line-height:1.2}
/* icon action buttons: evita desbordes en POS/Catálogo */
.card-actions-three,.pos-actions,.compact-actions,.public-card-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}.card-actions-three .btn,.pos-actions .btn,.compact-actions .btn,.public-card-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:0;min-width:0;min-height:46px;padding:10px;border-radius:14px;overflow:hidden}.card-actions-three .btn span:last-child,.pos-actions .btn span:last-child,.compact-actions .btn span:last-child,.public-card-actions .btn span:last-child{display:none!important}.card-actions-three .btn .action-ico,.pos-actions .btn .action-ico,.compact-actions .btn .action-ico,.public-card-actions .btn .action-ico{font-size:18px;min-width:auto}
/* Carrito proporcional: overlay no bloqueante y scroll real */
.drawer-mask{background:rgba(0,0,0,.36)!important;pointer-events:none!important}.cart-drawer,.cart-drawer.v2{z-index:90!important;width:min(760px,98vw)!important;height:100dvh!important;display:grid!important;grid-template-rows:auto minmax(260px,1.05fr) auto auto!important;gap:12px;overflow:hidden!important;padding:16px!important}.cart-head{padding:10px 2px 4px!important;min-height:64px}.cart-lines{max-height:none!important;min-height:260px!important;overflow-y:auto!important;overscroll-behavior:contain;padding:2px 6px 2px 0!important}.cart-line.v2{grid-template-columns:minmax(0,1fr) 128px!important;align-items:start}.cart-line-main{gap:8px!important}.cart-line-controls{display:grid!important;grid-template-columns:90px 120px minmax(160px,1fr)!important;gap:8px!important;align-items:end!important}.cart-line-controls label{min-width:0}.cart-line-controls input{width:100%!important}.cart-line-side{justify-items:stretch!important;align-content:start!important}.cart-line-side b{text-align:right;font-size:18px}.cart-payment.card{margin:0!important;max-height:33vh;overflow:auto;border-radius:18px!important}.cart-payment .form-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.cart-payment .field{min-width:0}.cart-summary{margin:0!important;border-radius:18px!important}.cart-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.cart-summary-grid>div{min-height:54px!important;align-items:center}.cart-total-row{grid-column:1 / -1!important}.cart-actions{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;gap:10px!important;position:sticky;bottom:0;background:linear-gradient(180deg,rgba(8,23,41,.72),#081729 45%);padding-top:10px}.cart-actions .btn{min-height:52px}
.product-card h3,.catalog-card h3,.pos-card h3{font-size:15px;line-height:1.18;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.pos-card .price,.catalog-card .price,.public-card-price strong{font-size:18px}
@media(max-width:760px){.pos353-menu-shell{padding:18px}.pos353-main-card{padding:18px}.pos353-main-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pos353-main-tile{min-height:126px;padding:14px}.cart-drawer,.cart-drawer.v2{width:100vw!important}.cart-line.v2{grid-template-columns:1fr!important}.cart-line-controls{grid-template-columns:1fr 1fr!important}.cart-line-controls .btn{grid-column:1 / -1}.cart-payment .form-grid.compact{grid-template-columns:1fr!important}.cart-summary-grid{grid-template-columns:1fr!important}.cart-actions{grid-template-columns:1fr!important}}

/* Final merge v3.5.3: conserva el scroll del sidebar recuperado en RC2/RC3 sin duplicar el router del menu. */
.sidebar{
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  min-height:100dvh!important;
}
.sidebar .brand,
.sidebar-card{
  flex:0 0 auto!important;
}
.sidebar .nav{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-right:5px!important;
  scroll-behavior:smooth!important;
  overscroll-behavior:contain!important;
}
.sidebar .nav::-webkit-scrollbar,
.cart-drawer::-webkit-scrollbar,
.cart-lines::-webkit-scrollbar,
.cart-payment::-webkit-scrollbar{
  width:9px;
  height:9px;
}
.sidebar .nav::-webkit-scrollbar-thumb,
.cart-drawer::-webkit-scrollbar-thumb,
.cart-lines::-webkit-scrollbar-thumb,
.cart-payment::-webkit-scrollbar-thumb{
  background:rgba(88,154,218,.55);
  border-radius:999px;
}
.sidebar .nav::-webkit-scrollbar-track,
.cart-drawer::-webkit-scrollbar-track,
.cart-lines::-webkit-scrollbar-track,
.cart-payment::-webkit-scrollbar-track{
  background:rgba(255,255,255,.04);
  border-radius:999px;
}
.nav-btn{
  min-height:64px!important;
}
.cart-fab{
  z-index:9300!important;
}
.drawer-mask{
  z-index:9400!important;
}
.cart-drawer,
.cart-drawer.v2{
  z-index:9600!important;
  max-height:100dvh!important;
}

/* Hotfix v3.5.3-r2: carrito proporcional y area Cliente/Pago util. */
.cart-drawer,
.cart-drawer.v2{
  display:flex!important;
  flex-direction:column!important;
  width:min(820px,98vw)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:16px!important;
}
.cart-head{flex:0 0 auto!important;}
.cart-lines{
  flex:1 1 230px!important;
  min-height:150px!important;
  max-height:34dvh!important;
}
.cart-empty{min-height:170px!important;}
.cart-payment.card{
  flex:0 0 auto!important;
  max-height:none!important;
  min-height:224px!important;
  overflow:visible!important;
  padding:14px!important;
}
.cart-payment .form-grid.compact{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:12px!important;
}
.cart-payment .field input,
.cart-payment .field select{
  min-height:44px!important;
}
.cart-summary{
  flex:0 0 auto!important;
  padding:14px!important;
}
.cart-summary-grid>div{
  min-height:48px!important;
  padding:9px 11px!important;
}
.cart-summary-grid .cart-total-row{
  min-height:58px!important;
}
.cart-actions{
  flex:0 0 auto!important;
  padding:12px 14px 14px!important;
}
.pos-search-row{
  grid-template-columns:minmax(0,1fr) auto auto auto!important;
}
@media(max-width:900px){
  .pos-search-row{grid-template-columns:1fr!important;}
  .cart-drawer,.cart-drawer.v2{width:100vw!important;}
  .cart-lines{max-height:28dvh!important;min-height:130px!important;}
  .cart-payment.card{min-height:auto!important;}
  .cart-payment .form-grid.compact{grid-template-columns:1fr!important;}
}
