:root{--c57-red:#a92d1b;--c57-red-dark:#822113;--c57-ink:#172033;--c57-muted:#657083;--c57-line:#e4e8ef;--c57-bg:#f4f6f9;--c57-green:#19863a}
.cashier-page{background:var(--c57-bg)!important;color:var(--c57-ink)}
.cashier-page .connection-pill{display:none!important}
.cashier57-header{height:72px;display:flex;align-items:center;gap:24px;padding:0 22px;background:linear-gradient(90deg,var(--c57-red),var(--c57-red-dark));color:#fff;position:sticky;top:0;z-index:80;box-shadow:0 2px 12px #0002}
.cashier57-brand{display:flex;align-items:center;gap:12px;font-size:1.35rem;white-space:nowrap}.cashier57-logo{display:grid;place-items:center;width:44px;height:44px;border-radius:10px;background:#fff2;font-size:1.5rem}
.cashier57-nav{display:flex;height:100%;align-items:stretch;flex:1}.cashier57-navbtn{border:0;background:transparent;color:#fff;padding:0 18px;font-weight:800;font-size:1rem;cursor:pointer}.cashier57-navbtn:hover{background:#fff1}
.cashier57-user{display:flex;align-items:center;gap:12px;white-space:nowrap}.cashier57-online{background:#e8f7ec;color:#167133;border-radius:999px;padding:7px 12px;font-weight:800}.cashier57-exit{border:1px solid #fff8;background:#fff;color:var(--c57-red-dark);border-radius:9px;padding:9px 14px;font-weight:800;cursor:pointer}.cashier57-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;margin-left:5px;padding:0 6px;border-radius:999px;background:#fff;color:var(--c57-red);font-size:.78rem}
.cashier57-alert{position:fixed;top:82px;right:20px;z-index:200;display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;width:min(520px,calc(100% - 40px));padding:16px 18px;border:3px solid #f59e0b;border-radius:16px;background:#fff8dc;box-shadow:0 18px 45px #0003;animation:c57pulse 1.2s infinite}.cashier57-alert[hidden]{display:none}.cashier57-alert div{display:grid;gap:3px}.cashier57-alert button{border:0;border-radius:9px;padding:10px 12px;font-weight:800;cursor:pointer}.cashier57-alert button:first-of-type{background:var(--c57-red);color:#fff}.cashier57-alert button:last-of-type{background:transparent;font-size:1.4rem}@keyframes c57pulse{50%{border-color:#dc2626;transform:translateY(-2px)}}
.cashier57-main{width:min(1760px,100%);margin:auto;padding:18px 20px 50px}.cashier57-pos{display:grid;grid-template-columns:190px minmax(460px,1fr) minmax(390px,480px);gap:16px;min-height:calc(100vh - 110px);align-items:stretch}
.cashier57-categories,.cashier57-catalog,.cashier57-cart{background:#fff;border:1px solid var(--c57-line);border-radius:16px;box-shadow:0 5px 18px #26354b0d}
.cashier57-categories{padding:14px;display:flex;flex-direction:column}.cashier57-categories h2{margin:4px 8px 12px}.cashier57-categories .category-tabs{display:flex!important;flex-direction:column;gap:5px;overflow:visible!important}.cashier57-categories .category-tabs .btn{width:100%;min-height:52px;text-align:left;justify-content:flex-start;border:0!important;background:transparent!important;color:var(--c57-ink)!important;border-radius:10px!important;font-size:1rem;font-weight:750}.cashier57-categories .category-tabs .btn.active{background:var(--c57-red)!important;color:#fff!important}.cashier57-openorders{margin-top:auto;border:1px solid #efb4aa;background:#fff7f5;color:var(--c57-red);padding:13px;border-radius:11px;font-weight:850;cursor:pointer}.cashier57-openorders span{float:right;background:var(--c57-red);color:#fff;border-radius:999px;padding:2px 8px}
.cashier57-catalog{padding:14px;overflow:hidden}.cashier57-search{height:50px;border:1px solid var(--c57-line);border-radius:11px;display:flex;align-items:center;gap:10px;padding:0 14px;margin-bottom:14px}.cashier57-search span{font-size:1.5rem}.cashier57-search input{border:0!important;outline:0;width:100%;font-size:1rem;background:transparent}.cashier57-catalog .products{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(155px,1fr))!important;gap:12px!important;align-content:start}.cashier57-catalog .product{min-height:164px!important;padding:0!important;border:1px solid var(--c57-line)!important;border-radius:12px!important;overflow:hidden;box-shadow:none!important;cursor:pointer;transition:.15s}.cashier57-catalog .product:hover{transform:translateY(-2px);border-color:#d16b5d!important;box-shadow:0 8px 18px #8c2c1b18!important}.cashier57-catalog .product img{height:94px!important;width:100%;object-fit:cover}.cashier57-catalog .product .pad{padding:10px!important;min-height:68px;display:flex;flex-direction:column}.cashier57-catalog .product h3{font-size:.98rem;margin:0 0 6px;line-height:1.15;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cashier57-catalog .product .price{margin-top:auto!important;text-align:right;color:var(--c57-red)!important;font-size:1.05rem!important;font-weight:900}
.cashier57-cart{padding:16px;display:grid;grid-template-rows:auto auto minmax(150px,1fr) auto auto;position:sticky;top:90px;max-height:calc(100vh - 108px)}.cashier57-carthead{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--c57-line);padding-bottom:12px}.cashier57-carthead h2{margin:2px 0 0}.cashier57-carthead small{color:var(--c57-red);font-weight:900}.cashier57-carthead button{border:0;background:#fff0f0;color:#a11;padding:9px;border-radius:9px;cursor:pointer}.cashier57-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:12px 0}.cashier57-meta label{font-size:.72rem;font-weight:800;color:var(--c57-muted)}.cashier57-meta input{width:100%;margin-top:4px;border:1px solid var(--c57-line);padding:9px;border-radius:8px;min-width:0}.cashier57-cartitems{overflow:auto;padding-right:3px}.cashier57-cartitems>p{color:var(--c57-muted);text-align:center;padding:45px 0}.cashier57-cart .cart-row-v28{padding:12px 0}.cashier57-cart .qty-controls{gap:5px}.cashier57-cart .qty-controls button{width:34px;height:34px;border-radius:50%;padding:0}.cashier57-total{display:flex;justify-content:space-between;align-items:center;border-top:2px solid var(--c57-line);padding:15px 2px;font-size:1.15rem}.cashier57-total strong{font-size:1.65rem;color:var(--c57-red)}.cashier57-pay{min-height:64px;border:0;border-radius:11px;background:var(--c57-green);color:#fff;font-size:1.25rem;font-weight:900;cursor:pointer}.cashier57-pay:disabled{background:#aab3bf;cursor:not-allowed}
.cashier57-main .cashier-dashboard{margin-top:22px!important}.cashier57-main .cashier-section{border-radius:16px!important;box-shadow:none!important;border:1px solid var(--c57-line)!important}.payment-box{width:min(760px,100%)!important;border-radius:18px!important}.payment-quote-grid{grid-template-columns:150px 160px 1fr auto!important}.payment-custom{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--c57-line);border-radius:12px;margin:12px 0}.payment-custom button{height:44px}.payment-modal .paymentConfirm{min-height:60px}
@media(max-width:1200px){.cashier57-pos{grid-template-columns:150px 1fr 390px}.cashier57-navbtn{padding:0 10px}.cashier57-user b{display:none}.cashier57-catalog .products{grid-template-columns:repeat(auto-fill,minmax(135px,1fr))!important}}
@media(max-width:900px){.cashier57-header{gap:8px;padding:0 10px}.cashier57-navbtn{font-size:.85rem;padding:0 7px}.cashier57-user .cashier57-online{display:none}.cashier57-main{padding:10px}.cashier57-pos{grid-template-columns:1fr}.cashier57-categories{position:sticky;top:72px;z-index:20;padding:8px}.cashier57-categories h2{display:none}.cashier57-categories .category-tabs{flex-direction:row!important;overflow:auto!important}.cashier57-categories .category-tabs .btn{width:auto;white-space:nowrap;min-height:44px}.cashier57-openorders{display:none}.cashier57-cart{position:relative;top:auto;max-height:none}.payment-quote-grid{grid-template-columns:1fr 1fr!important}.payment-quote-grid .person-share,.payment-quote-grid button{grid-column:1/-1}}
@media(max-width:600px){.cashier57-brand strong{display:none}.cashier57-navbtn:nth-child(2),.cashier57-navbtn:nth-child(4){display:none}.cashier57-user{margin-left:auto}.cashier57-main{padding:6px}.cashier57-pos{gap:8px}.cashier57-catalog .products{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cashier57-meta{grid-template-columns:1fr}.cashier57-alert{right:8px;top:78px;width:calc(100% - 16px);grid-template-columns:1fr auto}.cashier57-alert button:last-child{display:none}.payment-custom{grid-template-columns:1fr}}

.recent-receipts-scroll{max-height:218px;overflow-y:auto;overscroll-behavior:contain;padding:4px 8px 4px 2px;grid-template-columns:1fr}
.recent-receipts-scroll{height:210px!important;max-height:210px!important;overflow-y:scroll!important;overscroll-behavior:contain;padding:0 8px 0 2px;grid-template-columns:1fr;display:block!important}.recent-receipts-scroll .pending-card{padding:10px 12px}
.recent-receipts-scroll .receipt-row{box-sizing:border-box!important;height:42px!important;min-height:42px!important;padding:0 10px!important;margin:0!important;width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-bottom:1px solid #e5e7eb;background:#fff;text-align:left;font:inherit;color:inherit;cursor:pointer}
.recent-receipts-scroll .receipt-row:last-child{border-bottom:0}

/* Layout: Ultimi scontrini = 5 righe, poi scroll.
   Specificita' volutamente superiore alla regola globale
   .cashier-page .pending-grid { height:auto!important; ... } in cashier.css. */
.cashier-page #recentReceipts.pending-grid.recent-receipts-scroll{
  box-sizing:border-box!important;
  display:block!important;
  height:210px!important;
  min-height:210px!important;
  max-height:210px!important;
  overflow-x:hidden!important;
  overflow-y:scroll!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable;
}
.cashier-page #recentReceipts .receipt-row{
  box-sizing:border-box!important;
  height:42px!important;
  min-height:42px!important;
  max-height:42px!important;
  flex:0 0 42px!important;
}
