:root{--grocery-green:#123f35;--grocery-leaf:#4f9957;--grocery-orange:#e77c2f;--grocery-cream:#fff7e8}
.login-shell{background:radial-gradient(circle at 12% 10%,#3d745c 0,transparent 35%),radial-gradient(circle at 92% 86%,#9b5b2f 0,transparent 30%),#123f35}
.login-card{border:1px solid #ffffff33}.login-store-logo.rangebot-logo{width:min(390px,100%);height:auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.login-card h1 span{color:var(--grocery-orange)}
.grocery-store-logo{grid-template-columns:1fr!important;align-items:start!important}.grocery-store-logo img{width:100%!important;height:auto!important;max-height:66px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;filter:drop-shadow(0 6px 12px #0006)!important}.grocery-store-logo span{padding-left:4px}.sidebar nav button.active{box-shadow:inset 4px 0 var(--grocery-orange)}
.department-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));align-items:stretch;gap:8px;min-width:0;min-height:0;overflow:hidden!important;padding:2px;margin:0}.category-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:40px;gap:7px;min-width:0;overflow:hidden!important;padding:2px;margin:0}.department-grid button,.category-grid button{width:100%;min-width:0;min-height:0!important;height:100%!important;padding:6px 8px;border:2px solid transparent;border-radius:9px;font-size:10px;font-weight:900;line-height:1.08;text-align:center;white-space:normal;overflow:hidden;box-shadow:inset 0 -2px 0 #0002,0 3px 8px #12303310}.department-grid button{background:var(--department-color,#123f35);color:var(--department-text,#fff);font-size:11px}.category-grid button{padding:8px 9px;font-size:11px}.department-grid button.active,.category-grid button.active{border-color:#fff;outline:2px solid var(--ink);transform:none}.category-grid button:after{display:none}.category-grid[hidden]{display:none!important}
.catalog-panel,#view-pos .catalog-panel{height:calc(100vh - 157px);min-height:0;display:grid;grid-template-rows:37px minmax(0,1fr);gap:9px;overflow:hidden}.catalog-panel .search-row{min-height:0}.department-browser-screen{min-height:0;display:grid;grid-template-rows:42px minmax(0,1fr);gap:8px}.browse-screen-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 3px}.browse-screen-heading .eyebrow{margin:0 0 3px}.browse-screen-heading strong{font-size:17px}.browse-screen-heading small{color:var(--muted);font-size:10px}.product-browser-screen{min-height:0;display:grid;grid-template-rows:34px auto minmax(0,1fr) 38px;gap:7px;overflow:hidden}.product-browser-screen.categories-hidden{grid-template-rows:34px 0 minmax(0,1fr) 38px}.browse-back-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.browse-back-row button{padding:7px 10px;font-size:10px}.browse-back-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--grocery-green)}#view-pos .department-grid{height:100%!important;max-height:none;overflow:hidden!important}#view-pos .category-grid{height:auto!important;max-height:none;overflow:hidden!important}.product-grid,#view-pos .product-grid{height:auto!important;min-height:0;max-height:none;grid-template-columns:repeat(auto-fill,minmax(138px,1fr));grid-auto-rows:82px;align-content:start;overflow-x:hidden;overflow-y:auto;padding:3px 3px 10px}.product-card,#view-pos .product-card{min-height:82px!important;height:82px!important;padding:6px 8px 6px 10px!important;gap:2px!important;border-left-width:5px!important}.product-card-name{display:-webkit-box!important;min-height:24px!important;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:11px!important}.product-card-brand{overflow:hidden;color:var(--muted);font-size:7px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.product-card-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px;align-items:baseline}.product-card-upc{overflow:hidden;font-size:8px;font-weight:800;text-align:center;text-overflow:ellipsis;white-space:nowrap}.product-card .price{font-size:12px!important;color:var(--ink)!important}.product-card-requirement{overflow:hidden;font-size:7px;font-weight:900;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.product-card-unit{color:var(--muted);font-size:8px}.catalog-pager{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:0;padding:5px 2px 0;border-top:1px solid var(--line);color:var(--muted);font-size:10px}.catalog-pager button{padding:7px 11px}.catalog-pager button[hidden]{display:none}
.grocery-tender-row{grid-template-columns:.72fr 1.35fr}.discount-summary-row{color:var(--grocery-green);font-weight:850}.discount-summary-row[hidden]{display:none!important}.sale-panel .cart{margin:6px 0;overflow-x:hidden}.sale-panel .cart-line{grid-template-columns:minmax(0,1fr) 45px 52px 18px;gap:4px;min-height:30px;padding:2px 0}.sale-panel .cart-line-copy{min-width:0}.sale-panel .cart-line-copy>b{display:block;overflow:hidden;font-size:9.5px;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.sale-panel .cart-line small{overflow:hidden;margin-top:1px;font-size:7.5px;line-height:1;text-overflow:ellipsis;white-space:nowrap}.sale-panel .cart-line input{height:24px;padding:2px;border-radius:7px;font-size:9px;text-align:center}.sale-panel .cart-line-total{font-size:9px;text-align:right;white-space:nowrap}.sale-panel .cart-line button{padding:1px;font-size:14px}.sale-panel .totals{padding-top:5px}.sale-panel .totals>div{padding:3px 0;font-size:11px}.sale-panel .totals .grand{margin-top:3px;padding-top:6px;font-size:19px}.cart-line.weighted input{border-color:#d69245;background:#fff8e9}.cart-line .cart-unit{font-size:7.5px;color:var(--muted)}

.top-actions>.kiosk-button,.top-actions>.customer-approval-button,.top-actions>.web-orders-button,.top-actions>.gift-card-top-button{display:flex;flex:0 0 148px;width:148px;height:42px;min-height:42px;align-items:center;justify-content:center;gap:5px;padding:7px;border-radius:9px;font-size:9px;font-weight:900;line-height:1.08;text-align:center;white-space:nowrap}.top-actions>.kiosk-button b,.top-actions>.customer-approval-button b,.top-actions>.web-orders-button b{flex:0 0 auto}.gift-card-top-button{background:#5747a6;color:#fff;border:1px solid #7769c1}.top-actions{gap:6px}@media(max-width:1400px){.top-actions .staff-chip{display:none}}
.grocery-member-gate{display:grid;grid-template-columns:minmax(0,1fr) 142px;gap:5px 9px;align-items:center;padding-bottom:6px}.grocery-member-gate>div:first-child{min-width:0}.grocery-member-gate>div:first-child small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.verification-actions{display:grid;grid-template-columns:1fr;gap:4px;min-width:142px}.verification-actions button{padding:6px 8px;font-size:9px;white-space:nowrap}.verification-actions #age-override-btn{background:#fff0dc;color:#8b4e08;border:1px solid #efc98f}.verification-actions #age-override-btn.active{background:#8b4e08;color:#fff;border-color:#8b4e08;box-shadow:0 0 0 3px #f3c88066}.verification-status-line{grid-column:1/-1;height:24px;min-height:24px;display:flex;align-items:center;overflow:hidden;padding:4px 7px;border-radius:7px;background:#edf3f1;color:var(--muted);font-size:8px;font-weight:900;text-overflow:ellipsis;text-transform:uppercase;letter-spacing:.045em;white-space:nowrap}.verification-status-line.required{background:#fff0dc;color:#8b4e08}.verification-status-line.verified{background:#e1f5e8;color:#14653b}.verification-status-line.medical{background:#f0e9fa;color:#67429c}
.grocery-action-dialog{width:min(500px,calc(100vw - 26px));display:grid;gap:13px}.grocery-action-dialog h3,.grocery-action-dialog p{margin:0}.weight-preview{display:flex;align-items:center;justify-content:space-between;padding:15px;border-radius:11px;background:var(--paper)}.weight-preview strong{font-size:26px;color:var(--grocery-orange)}.attestation-check{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;padding:14px;border:1px solid #e6b7a4;border-radius:11px;background:#fff3ed}.attestation-check input{width:20px;height:20px;margin:0;accent-color:#b9483c}.discount-type-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.discount-type-buttons label{display:block}.discount-type-buttons input{position:absolute;opacity:0}.discount-type-buttons span{display:block;padding:12px;border:1px solid var(--line);border-radius:9px;text-align:center;font-weight:900}.discount-type-buttons input:checked+span{border-color:var(--grocery-green);background:#e4f1e9;color:var(--grocery-green)}
.rangebot-logo{object-fit:contain!important;background:transparent!important}
html[data-theme="dark"]{--grocery-cream:#252d29}.department-grid button.active,.category-grid button.active{outline-color:var(--ink)}html[data-theme="dark"] .attestation-check{background:#3a2824;border-color:#7d5146}html[data-theme="dark"] .discount-type-buttons input:checked+span{background:#253d34;color:#a8e2bd}html[data-theme="dark"] .verification-status-line{background:#25322f}html[data-theme="dark"] .verification-status-line.required{background:#4a3825;color:#ffd9a3}html[data-theme="dark"] .verification-status-line.verified{background:#214137;color:#9af1cf}html[data-theme="dark"] .verification-status-line.medical{background:#392e49;color:#d5bafa}html[data-theme="dark"] .verification-actions #age-override-btn{background:#4a3825;color:#ffd9a3;border-color:#715333}
@media(max-width:1180px) and (min-width:701px){.top-actions>.kiosk-button,.top-actions>.customer-approval-button,.top-actions>.web-orders-button,.top-actions>.gift-card-top-button{display:flex;flex-basis:120px;width:120px;font-size:8px}.top-actions{gap:5px}}
@media(max-width:1100px) and (min-width:701px){.pos-grid{grid-template-columns:minmax(0,1.45fr) minmax(310px,.8fr);gap:14px}.catalog-panel,.sale-panel{height:calc(100vh - 157px);min-height:0}.product-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));max-height:none}.grocery-store-logo span{display:none!important}.view{padding:18px}.panel{padding:15px}}
@media(max-width:700px){.catalog-panel{height:auto;min-height:560px;grid-template-rows:37px minmax(0,1fr)}.department-browser-screen{grid-template-rows:56px minmax(0,1fr)}.department-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(7,minmax(48px,1fr));overflow:visible!important}.browse-screen-heading{align-items:flex-start}.browse-screen-heading small{max-width:130px;text-align:right}.product-browser-screen{grid-template-rows:34px auto minmax(180px,1fr) 36px}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:38px;max-height:none!important}.pos-grid{display:grid;grid-template-rows:auto minmax(310px,44dvh);height:auto}.sale-panel{height:calc(44dvh - 12px);min-height:310px!important;overflow:hidden}.product-grid{grid-template-columns:1fr;grid-auto-rows:88px;max-height:none}.product-card{height:88px!important;min-height:88px!important}.grocery-member-gate{grid-template-columns:1fr auto}.verification-actions{min-width:148px}.grocery-tender-row{grid-template-columns:.75fr .75fr 1.2fr}.cart-line{grid-template-columns:1fr 68px 64px 24px}.utility-suite{display:none}}
@media(max-width:700px){.grocery-tender-row{grid-template-columns:1fr 1.5fr}}

/* v2.3: finger-sized register controls, ticket gift cards, and RangeBOT identity */
.utility-suite{top:7px;right:10px;width:198px;min-height:90px;gap:5px;padding:7px 8px 6px;border-radius:12px}
.utility-suite .utility-controls{width:100%;gap:7px}
.utility-suite .utility-controls button{flex:1 1 0;min-width:0;min-height:43px;padding:8px 10px;border-radius:8px;font-size:12px}
.utility-brand{gap:2px}.utility-brand img{width:122px;height:25px}.utility-brand small{font-size:8px;line-height:1.05;letter-spacing:.018em}
.top-actions{padding-right:208px}
.grocery-store-logo img{filter:drop-shadow(0 6px 12px #0006)!important}
.grocery-store-logo span{display:block!important;width:100%;padding:0!important;color:#fff!important;font-size:15px!important;font-weight:950!important;letter-spacing:.075em!important;line-height:1.1!important;text-align:center;white-space:nowrap}
.verification-actions{gap:7px;min-width:152px}.verification-actions button{min-height:44px;padding:9px 10px;font-size:10px;line-height:1.1}
.grocery-tender-row{align-items:stretch}.grocery-tender-row button{min-height:54px;padding-top:12px!important;padding-bottom:12px!important}.grocery-tender-row #checkout-btn{font-size:16px!important}
.gift-card-ticket-dialog label{display:grid;gap:6px;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.gift-card-ticket-dialog input{font-size:19px;font-weight:850;letter-spacing:.04em;text-transform:none}.gift-card-ticket-dialog .payment-submit{min-height:50px}.gift-card-cart-line{border-left:4px solid #7769c1;padding-left:7px!important}.gift-card-cart-line .cart-line-copy small{color:#6558a5}.gift-card-activation{display:grid;gap:1.5mm;margin-top:2mm;padding:2.5mm;border:1px solid #111;border-radius:2mm}.gift-card-activation>strong{text-align:center;font-size:9pt;text-transform:uppercase}.gift-card-activation>div{display:grid;grid-template-columns:1fr auto;gap:2mm;font-size:8pt}.gift-card-activation>div b{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em}
html[data-theme="dark"] .gift-card-cart-line .cart-line-copy small{color:#c5baff}
@media(max-width:1180px) and (min-width:701px){.top-actions{padding-right:204px}.top-actions>.kiosk-button,.top-actions>.customer-approval-button,.top-actions>.web-orders-button,.top-actions>.gift-card-top-button{flex-basis:124px;width:124px;min-height:44px;height:44px;font-size:8.3px}}
@media(max-width:700px){.utility-suite{display:grid;position:fixed;top:7px;right:7px;bottom:auto;width:176px;min-height:84px}.utility-brand img{width:108px;height:22px}.top-actions{padding-right:0}.grocery-store-logo span{display:none!important}}

/* v2.3.3: visible global search results and balanced top-bar touch controls */
.product-browser-screen.categories-hidden{grid-template-rows:34px minmax(0,1fr) 38px}
.utility-suite{top:10px;right:10px;width:174px;min-height:78px;gap:3px;padding:5px 7px 4px;border-radius:11px}
.utility-suite .utility-controls{width:100%;gap:6px}
.utility-suite .utility-controls button{flex:1 1 0;min-width:0;min-height:35px;padding:6px 8px;border-radius:7px;font-size:11px}
.utility-brand{gap:1px}.utility-brand img{width:105px;height:21px}.utility-brand small{font-size:7.1px;line-height:1;letter-spacing:.016em}
.top-actions{padding-right:182px}
.top-actions>.kiosk-button,.top-actions>.customer-approval-button,.top-actions>.web-orders-button,.top-actions>.gift-card-top-button{height:48px;min-height:48px}
@media(max-width:1180px) and (min-width:701px){.top-actions{padding-right:180px}.top-actions>.kiosk-button,.top-actions>.customer-approval-button,.top-actions>.web-orders-button,.top-actions>.gift-card-top-button{flex-basis:124px;width:124px;min-height:48px;height:48px;font-size:8.3px}}
@media(max-width:700px){.utility-suite{top:9px;right:7px;width:158px;min-height:74px}.utility-brand img{width:96px;height:19px}}

/* v2.4: larger sub-department controls contained within the catalog frame */
.category-grid{grid-auto-rows:48px;gap:8px;align-content:start;box-sizing:border-box}
.category-grid button{box-sizing:border-box;padding:7px 9px;font-size:12px;line-height:1.12;overflow-wrap:anywhere}
@media(max-width:700px){.category-grid{grid-auto-rows:44px;gap:7px}.category-grid button{font-size:11px}}

/* Receipt-specific horizontal mark: crisp on screen, PDF, and thermal print. */
#receipt .receipt-logo{display:block;width:68mm;max-width:100%;height:auto;margin:0 auto 3mm;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;filter:none}

/* v2.5: touch-sized search clearing and cart quantity editing. */
.search-row .search-clear-button{flex:0 0 auto;min-width:62px;border:1px solid color-mix(in srgb,var(--teal) 36%,var(--line));white-space:nowrap}
.sale-panel .cart-line{grid-template-columns:minmax(0,1fr) 68px 54px 20px}
.sale-panel .cart-line .cart-quantity-button{width:100%;min-width:0;min-height:36px;padding:7px 5px!important;border:1px solid color-mix(in srgb,var(--teal) 42%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--teal) 11%,var(--panel));color:var(--teal-dark);font-size:9.5px!important;font-weight:950;line-height:1;text-align:center;white-space:nowrap}
.sale-panel .cart-line .cart-quantity-button:hover,.sale-panel .cart-line .cart-quantity-button:focus-visible{background:color-mix(in srgb,var(--teal) 20%,var(--panel));box-shadow:0 0 0 2px color-mix(in srgb,var(--teal) 24%,transparent)}
.quantity-dialog-card label{display:grid;gap:6px;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.quantity-dialog-card #quantity-value{min-height:58px;font-size:27px;font-weight:950;text-align:center}.quantity-dialog-card>.primary{min-height:50px}
html[data-theme="dark"] .sale-panel .cart-line .cart-quantity-button{background:#243c3b;border-color:#4d7774;color:#a6eee5}
@media(max-width:700px){.search-row .search-clear-button{min-width:58px}.sale-panel .cart-line{grid-template-columns:minmax(0,1fr) 72px 58px 22px}.sale-panel .cart-line .cart-quantity-button{min-height:34px;font-size:9.5px!important}}

/* v2.6: RangeBOT premium register visual system. */
:root{
  --grocery-forest:#0b493a;
  --grocery-forest-deep:#07342c;
  --grocery-mint:#13b77d;
  --grocery-orange:#f18a32;
  --grocery-violet:#6557c9;
  --grocery-surface:#ffffff;
  --grocery-surface-soft:#f3f6f4;
  --grocery-border:#d1ddd7;
  --grocery-border-strong:#b8c9c1;
  --ink:#112822;
  --muted:#5f716a;
  --paper:#eaf0ed;
  --panel:#ffffff;
  --line:#d1ddd7;
  --teal:#13ad79;
  --teal-dark:#087052;
  --shadow:0 12px 30px rgba(8,48,38,.10),0 2px 6px rgba(8,48,38,.06);
}
body{
  background:
    radial-gradient(circle at 22% -12%,rgba(19,183,125,.12),transparent 30%),
    linear-gradient(145deg,#edf3f0 0%,#e7eeeb 100%);
}
button,.button{transition:background-color .16s ease,box-shadow .16s ease,transform .16s ease}
button:focus-visible,.button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--grocery-mint) 42%,transparent);outline-offset:2px}
button:active:not(:disabled),.button:active{transform:translateY(1px)}

.login-shell{
  background:
    radial-gradient(circle at 18% 10%,rgba(40,176,126,.30),transparent 32%),
    radial-gradient(circle at 88% 82%,rgba(241,138,50,.18),transparent 28%),
    linear-gradient(145deg,#061f1b 0%,#0a392f 54%,#0b2b29 100%);
}
.login-card{
  border:1px solid rgba(255,255,255,.72);
  border-radius:24px;
  background:linear-gradient(160deg,#ffffff 0%,#f8fbf9 100%);
  box-shadow:0 34px 90px rgba(0,16,13,.46),inset 0 1px 0 #fff;
}
.login-card h1{letter-spacing:-.045em}.login-card h1 span{color:var(--grocery-mint)}
#pin{border-color:var(--grocery-border-strong);background:#fff;box-shadow:inset 0 2px 5px rgba(7,52,44,.05)}
.demo-pins span{background:var(--grocery-surface-soft);border-color:var(--grocery-border)}

.primary{
  border:1px solid #087251;
  background:linear-gradient(145deg,#19be83 0%,#0b8c65 100%);
  box-shadow:0 8px 18px rgba(8,112,82,.22),inset 0 1px 0 rgba(255,255,255,.28);
  text-shadow:0 1px 1px rgba(0,0,0,.12);
}
.primary:hover:not(:disabled){background:linear-gradient(145deg,#20c98c 0%,#097b59 100%);box-shadow:0 10px 22px rgba(8,112,82,.28),inset 0 1px 0 rgba(255,255,255,.32)}
.soft{border:1px solid #bad6ca;background:linear-gradient(180deg,#eef8f3 0%,#dfefe8 100%);color:#08674c;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.soft:hover{border-color:#8fbca9;background:#d9eee5}
.primary:disabled{filter:saturate(.55);box-shadow:none;text-shadow:none}

.sidebar{
  border-right:1px solid rgba(255,255,255,.09);
  background:
    radial-gradient(circle at 50% -8%,rgba(46,190,139,.20),transparent 24%),
    linear-gradient(180deg,#0a3c32 0%,#082e28 48%,#071f1c 100%);
  box-shadow:8px 0 26px rgba(3,33,27,.13);
}
.grocery-store-logo{border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:15px}
.grocery-store-logo img{filter:drop-shadow(0 7px 14px rgba(0,0,0,.32))!important}
.grocery-store-logo span{color:#e8f7f0!important;font-weight:900;letter-spacing:.15em}
.sidebar nav{gap:6px}
.sidebar nav button{
  min-height:44px;
  border:1px solid transparent;
  border-radius:9px;
  color:#c5ddd4;
  font-weight:800;
}
.sidebar nav button span{display:grid;width:29px;height:29px;place-items:center;border-radius:7px;background:rgba(255,255,255,.07);font-size:17px}
.sidebar nav button:hover{border-color:rgba(255,255,255,.10);background:rgba(255,255,255,.07);color:#fff}
.sidebar nav button.active{
  border-color:rgba(255,255,255,.15);
  background:linear-gradient(90deg,rgba(27,188,132,.26),rgba(255,255,255,.08));
  box-shadow:inset 4px 0 var(--grocery-orange),0 8px 18px rgba(0,0,0,.12);
  color:#fff;
}
.sidebar nav button.active span{background:rgba(255,255,255,.14);color:#fff}
.sidebar-foot{padding-top:14px;border-top:1px solid rgba(255,255,255,.10)}

.topbar{
  border-bottom:1px solid var(--grocery-border);
  background:color-mix(in srgb,#ffffff 94%,transparent);
  box-shadow:0 8px 26px rgba(9,49,40,.07);
  backdrop-filter:blur(16px);
}
.topbar h2{color:var(--ink);font-weight:900;letter-spacing:-.035em}
.topbar .eyebrow{color:var(--teal-dark)}
.top-actions{gap:7px}
.top-actions>.kiosk-button,.top-actions>.customer-approval-button,.top-actions>.web-orders-button,.top-actions>.gift-card-top-button{
  border:1px solid rgba(9,49,40,.18);
  box-shadow:0 7px 16px rgba(8,48,38,.12),inset 0 1px 0 rgba(255,255,255,.28);
  letter-spacing:.015em;
  text-shadow:0 1px 1px rgba(0,0,0,.10);
}
.top-actions>.gift-card-top-button{border-color:#5144a8;background:linear-gradient(145deg,#7869df 0%,#5546b5 100%);color:#fff}
.top-actions>.kiosk-button{border-color:#b96524;background:linear-gradient(145deg,#f5a04d 0%,#dd7421 100%);color:#241307}
.top-actions>.customer-approval-button{border-color:#087153;background:linear-gradient(145deg,#24bf89 0%,#0b8b65 100%);color:#fff}
.top-actions>.web-orders-button{border-color:#123e42;background:linear-gradient(145deg,#1c5355 0%,#102f33 100%);color:#fff}
.top-actions>button:hover{filter:brightness(1.06);box-shadow:0 9px 20px rgba(8,48,38,.18),inset 0 1px 0 rgba(255,255,255,.32)}
.top-actions button b{border:1px solid rgba(255,255,255,.25);box-shadow:0 2px 6px rgba(0,0,0,.14)}

.utility-suite{
  border-color:var(--grocery-border-strong);
  background:color-mix(in srgb,#ffffff 94%,transparent);
  box-shadow:0 9px 24px rgba(8,48,38,.13),inset 0 1px 0 rgba(255,255,255,.84);
  backdrop-filter:blur(14px);
}
.utility-suite .utility-controls button{border:1px solid #1a3d35;background:linear-gradient(180deg,#173d34,#0d2f29);box-shadow:inset 0 1px 0 rgba(255,255,255,.13)}
.utility-suite .utility-controls button:hover{background:#225246}
.utility-brand small{color:#465f56;font-weight:850}

.view{background:transparent}
.panel,.metric,.compact-item,.member-card,.dialog-card{
  border-color:var(--grocery-border);
  background:linear-gradient(180deg,#ffffff 0%,#fbfdfc 100%);
  box-shadow:var(--shadow);
}
.panel{border-radius:14px}
#view-pos .catalog-panel,#view-pos .sale-panel{
  border:1px solid var(--grocery-border-strong);
  border-top:3px solid var(--grocery-forest);
  border-bottom:1px solid var(--grocery-border-strong);
  box-shadow:0 14px 32px rgba(8,48,38,.11),0 2px 5px rgba(8,48,38,.05),inset 0 1px 0 #fff;
}

.search-row input{
  min-width:0;
  border:1px solid var(--grocery-border-strong);
  background:#fff;
  box-shadow:inset 0 2px 5px rgba(8,48,38,.055);
}
.search-row input::placeholder{color:#75877f}
.search-row input:focus{border-color:var(--grocery-mint);box-shadow:0 0 0 3px rgba(19,183,125,.15),inset 0 2px 5px rgba(8,48,38,.04)}
.search-row .search-clear-button{border-color:#b7c8c0;background:linear-gradient(180deg,#f8faf9,#e8eeeb);color:#485d54}
.search-row .search-clear-button:hover{border-color:#91a99e;background:#e2eae6}

.browse-screen-heading{
  box-sizing:border-box;
  border:1px solid var(--grocery-border);
  border-radius:9px;
  padding:5px 9px;
  background:linear-gradient(90deg,#f1f7f4 0%,#f8faf9 100%);
  box-shadow:inset 4px 0 var(--grocery-mint);
}
.browse-screen-heading .eyebrow{color:var(--teal-dark)}
.browse-screen-heading strong{color:var(--ink);font-weight:900;letter-spacing:-.02em}
.department-grid button,.category-grid button{
  border-color:rgba(5,40,33,.17);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.30),inset 0 -2px 0 rgba(0,0,0,.16),0 5px 12px rgba(8,48,38,.12);
  text-shadow:0 1px 1px rgba(0,0,0,.14);
}
.department-grid button{
  background:linear-gradient(145deg,color-mix(in srgb,var(--department-color,#123f35) 84%,#fff),var(--department-color,#123f35));
  letter-spacing:.01em;
}
.department-grid button:hover,.category-grid button:hover{border-color:rgba(255,255,255,.75);filter:saturate(1.08) brightness(1.04);transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.38),inset 0 -2px 0 rgba(0,0,0,.14),0 8px 16px rgba(8,48,38,.16)}
.department-grid button.active,.category-grid button.active{border-color:#fff;outline:2px solid var(--grocery-forest);box-shadow:0 0 0 1px var(--grocery-forest),0 7px 16px rgba(8,48,38,.18)}
.browse-back-row{border-bottom:1px solid var(--grocery-border);padding-bottom:5px}
.browse-back-row strong{font-weight:900;color:var(--grocery-forest)}
.catalog-pager{border-color:var(--grocery-border-strong)}

.product-card,#view-pos .product-card{
  border-top:1px solid var(--grocery-border);
  border-right:1px solid var(--grocery-border);
  border-bottom:1px solid var(--grocery-border);
  background:linear-gradient(155deg,#ffffff 0%,#f6faf8 100%);
  box-shadow:0 3px 9px rgba(8,48,38,.075),inset 0 1px 0 #fff;
}
.product-card:hover,#view-pos .product-card:hover{border-top-color:color-mix(in srgb,var(--category-color,#13ad79) 48%,var(--grocery-border));border-right-color:color-mix(in srgb,var(--category-color,#13ad79) 48%,var(--grocery-border));border-bottom-color:color-mix(in srgb,var(--category-color,#13ad79) 48%,var(--grocery-border));box-shadow:0 8px 18px color-mix(in srgb,var(--category-color,#13ad79) 17%,transparent);transform:translateY(-1px)}
.product-card-name{color:var(--ink);font-weight:900;letter-spacing:-.01em}
.product-card-upc{color:#52665d;font-variant-numeric:tabular-nums}
.product-card .price{font-variant-numeric:tabular-nums;font-weight:950}
.product-card-requirement{border-color:var(--grocery-border);color:var(--teal-dark)}

.grocery-member-gate{
  border:1px solid var(--grocery-border);
  border-left:4px solid var(--grocery-mint);
  border-radius:10px;
  padding:9px;
  background:linear-gradient(145deg,#f3f8f5 0%,#edf5f1 100%);
  box-shadow:inset 0 1px 0 #fff;
}
.verification-actions button{border-radius:7px}
.verification-actions #age-override-btn{border-color:#d7a064;background:linear-gradient(180deg,#fff5e8,#fce5c7);color:#855014}
.verification-status-line{border:1px solid var(--grocery-border);font-weight:850}
.sale-panel .cart.empty{
  border:1px dashed #b1c6bc;
  background:
    linear-gradient(rgba(255,255,255,.70),rgba(255,255,255,.70)),
    repeating-linear-gradient(135deg,#edf4f0 0,#edf4f0 8px,#f8faf9 8px,#f8faf9 16px);
}
.sale-panel .cart-line{border-color:var(--grocery-border)}
.sale-panel .cart-line:hover{background:color-mix(in srgb,var(--grocery-mint) 5%,transparent)}
.sale-panel .cart-line .cart-quantity-button{border-color:#9bc5b5;background:linear-gradient(180deg,#e9f6f0,#dcefe7);box-shadow:inset 0 1px 0 #fff;color:#075d45}
.sale-panel .totals{
  border:1px solid var(--grocery-border);
  border-radius:10px;
  padding:7px 9px 8px;
  background:linear-gradient(145deg,#f4f7f5,#edf3f0);
  box-shadow:inset 0 1px 0 #fff;
}
.sale-panel .totals>div{padding:3px 2px}.sale-panel .totals b{font-variant-numeric:tabular-nums}
.sale-panel .totals .grand{
  margin-top:5px;
  border:0;
  border-radius:8px;
  padding:8px 10px;
  background:linear-gradient(135deg,var(--grocery-forest),var(--grocery-forest-deep));
  box-shadow:0 5px 13px rgba(7,52,44,.20),inset 0 1px 0 rgba(255,255,255,.14);
  color:#fff;
}
.grocery-tender-row #discount-btn{border-color:#df9f61;background:linear-gradient(180deg,#fff4e7,#fbe3c5);color:#824b14}
.grocery-tender-row #checkout-btn{min-height:46px;border-color:#076849;background:linear-gradient(145deg,#1cc488,#09835f);font-weight:950;letter-spacing:.01em}

.metric{border-top:3px solid var(--grocery-mint)}
.metric strong{color:var(--grocery-forest);font-weight:950;letter-spacing:-.035em}
.panel-head{border-bottom:1px solid var(--grocery-border);padding-bottom:12px}
.panel-head h3,.panel h3{font-weight:900;letter-spacing:-.025em}
.table-wrap{border:1px solid var(--grocery-border);border-radius:10px;background:var(--grocery-surface);box-shadow:inset 0 1px 3px rgba(8,48,38,.04)}
table thead{position:sticky;top:0;z-index:1;background:#eaf2ee}
th{color:#4e665c;border-color:var(--grocery-border-strong);font-weight:950}
tbody tr{transition:background-color .14s ease}tbody tr:hover{background:#f0f7f3}
td{border-color:#e2eae6}
.dialog-card{border:1px solid var(--grocery-border-strong);box-shadow:0 34px 90px rgba(0,20,16,.38),inset 0 1px 0 #fff}
.dialog-close{border:1px solid var(--grocery-border);background:#edf3f0;color:#29473c}

html[data-theme="dark"]{
  --grocery-surface:#15231f;
  --grocery-surface-soft:#1b2b26;
  --grocery-border:#344941;
  --grocery-border-strong:#486158;
  --ink:#eef8f3;
  --muted:#adbbb5;
  --paper:#0d1613;
  --panel:#15231f;
  --line:#344941;
  --teal:#47d6a7;
  --teal-dark:#8ce9c9;
  --shadow:0 14px 34px rgba(0,0,0,.34),0 2px 7px rgba(0,0,0,.25);
}
html[data-theme="dark"] body{background:radial-gradient(circle at 20% -10%,rgba(35,166,119,.12),transparent 30%),linear-gradient(145deg,#0d1613,#101c18)}
html[data-theme="dark"] .login-card,html[data-theme="dark"] .panel,html[data-theme="dark"] .metric,html[data-theme="dark"] .compact-item,html[data-theme="dark"] .member-card,html[data-theme="dark"] .dialog-card{border-color:var(--grocery-border);background:linear-gradient(180deg,#182722 0%,#14211d 100%);box-shadow:var(--shadow)}
html[data-theme="dark"] .topbar{border-color:var(--grocery-border);background:color-mix(in srgb,#14211d 94%,transparent);box-shadow:0 9px 26px rgba(0,0,0,.28)}
html[data-theme="dark"] .utility-suite{border-color:var(--grocery-border-strong);background:color-mix(in srgb,#182722 94%,transparent);box-shadow:0 9px 24px rgba(0,0,0,.34)}
html[data-theme="dark"] .utility-brand small{color:#bdcbc5}
html[data-theme="dark"] .soft{border-color:#49645b;background:linear-gradient(180deg,#29443a,#20372f);color:#a8efd6;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
html[data-theme="dark"] .soft:hover{border-color:#668378;background:#315044}
html[data-theme="dark"] #view-pos .catalog-panel,html[data-theme="dark"] #view-pos .sale-panel{border-color:var(--grocery-border-strong);border-top-color:#3fd19e;background:linear-gradient(180deg,#182722 0%,#14211d 100%);box-shadow:0 16px 36px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.04)}
html[data-theme="dark"] .search-row input{border-color:#4a625a;background:#1d302a;box-shadow:inset 0 2px 5px rgba(0,0,0,.22);color:#f5fbf8}
html[data-theme="dark"] .search-row input::placeholder{color:#9aaba4}
html[data-theme="dark"] .search-row .search-clear-button{border-color:#566c64;background:linear-gradient(180deg,#2b3b35,#24322d);color:#d1ddd8}
html[data-theme="dark"] .browse-screen-heading,html[data-theme="dark"] .grocery-member-gate{border-color:var(--grocery-border);background:linear-gradient(145deg,#1d302a,#182822);box-shadow:inset 4px 0 #3fd19e}
html[data-theme="dark"] .browse-back-row{border-color:var(--grocery-border)}
html[data-theme="dark"] .browse-back-row strong{color:#85e5c3}
html[data-theme="dark"] .product-card,html[data-theme="dark"] #view-pos .product-card{border-top-color:var(--grocery-border);border-right-color:var(--grocery-border);border-bottom-color:var(--grocery-border);background:linear-gradient(155deg,#1b2b26,#15231f);box-shadow:0 4px 10px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.035)}
html[data-theme="dark"] .product-card-upc{color:#bdcac5}
html[data-theme="dark"] .sale-panel .cart.empty{border-color:#496158;background:linear-gradient(rgba(20,33,29,.84),rgba(20,33,29,.84)),repeating-linear-gradient(135deg,#1e302a 0,#1e302a 8px,#14211d 8px,#14211d 16px);color:#b7c5bf}
html[data-theme="dark"] .sale-panel .cart-line:hover{background:rgba(71,214,167,.06)}
html[data-theme="dark"] .sale-panel .cart-line .cart-quantity-button{border-color:#4d7868;background:linear-gradient(180deg,#29483d,#203a32);box-shadow:inset 0 1px 0 rgba(255,255,255,.05);color:#b1f3dd}
html[data-theme="dark"] .sale-panel .totals{border-color:var(--grocery-border);background:linear-gradient(145deg,#1d2d27,#17251f);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
html[data-theme="dark"] .sale-panel .totals .grand{background:linear-gradient(135deg,#136c52,#0b493a);color:#fff}
html[data-theme="dark"] .grocery-tender-row #discount-btn{border-color:#7c603f;background:linear-gradient(180deg,#4a3825,#3b2e21);color:#ffd39c}
html[data-theme="dark"] .verification-actions #age-override-btn{border-color:#7c603f;background:linear-gradient(180deg,#4a3825,#3b2e21);color:#ffd39c}
html[data-theme="dark"] .table-wrap{border-color:var(--grocery-border);background:#14211d}
html[data-theme="dark"] table thead{background:#20342d}html[data-theme="dark"] th{color:#c1cec8;border-color:var(--grocery-border-strong)}html[data-theme="dark"] td{border-color:#2d4039}html[data-theme="dark"] tbody tr:hover{background:#1d302a}
html[data-theme="dark"] .metric strong{color:#8ce9c9}
html[data-theme="dark"] .panel-head{border-color:var(--grocery-border)}
html[data-theme="dark"] .dialog-close{border-color:#4a625a;background:#24362f;color:#edf7f2}

@media(max-width:700px){
  .login-card{border-radius:19px;padding:30px 24px}
  .panel{border-radius:12px}
  #view-pos .catalog-panel,#view-pos .sale-panel{box-shadow:0 10px 24px rgba(8,48,38,.12)}
  .browse-screen-heading{padding:5px 8px}
  .grocery-member-gate{padding:8px}
  .department-grid button,.category-grid button{box-shadow:inset 0 1px 0 rgba(255,255,255,.26),inset 0 -2px 0 rgba(0,0,0,.14),0 3px 8px rgba(8,48,38,.11)}
}
@media(prefers-reduced-motion:reduce){button,.button,tbody tr{transition:none!important}}

/* v2.6.1: responsive containment and guaranteed dark-control contrast. */
html[data-theme="dark"] .search-row .search-clear-button{border-color:#566c64!important;color:#d1ddd8!important}
html[data-theme="dark"] .verification-actions #age-override-btn{border-color:#7c603f!important;color:#ffd39c!important}
@media(max-width:900px) and (min-width:701px){
  .topbar>div:first-child{display:none}
  .top-actions{display:grid;width:100%;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding-right:180px}
  .top-actions>.kiosk-button,.top-actions>.customer-approval-button,.top-actions>.web-orders-button,.top-actions>.gift-card-top-button{width:100%;min-width:0;max-width:none;flex:none}
}
@media(max-width:1050px) and (min-width:701px){
  .sidebar{overflow:hidden}
  .sidebar nav{min-width:0}
  .sidebar nav button,.sidebar nav button:not(.active){min-width:0;gap:0;padding:10px 6px;font-size:0}
}
@media(max-width:700px){
  body{overflow-x:hidden}
  .grocery-store-logo{display:none!important}
  .topbar{display:block;min-height:184px;padding:9px 12px 10px;overflow:visible}
  .topbar>div:first-child{min-height:76px;padding:8px 166px 4px 2px}
  .topbar h2{font-size:22px}
  .top-actions{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:0}
  .top-actions>.kiosk-button,.top-actions>.customer-approval-button,.top-actions>.web-orders-button,.top-actions>.gift-card-top-button{
    position:static!important;
    inset:auto!important;
    width:100%;
    min-width:0;
    max-width:none;
    height:45px;
    min-height:45px;
    flex:none;
    padding:6px 7px;
    overflow:hidden;
    white-space:normal;
    font-size:8.5px;
  }
  .pos-grid{grid-template-rows:auto minmax(520px,calc(100dvh - 92px))}
  .sale-panel{height:calc(100dvh - 92px);min-height:520px!important;max-height:none}
  .sidebar{overflow:hidden}
  .sidebar nav{width:100%;height:56px;min-width:0}
  .sidebar nav button,.sidebar nav button:not(.active){min-width:0;padding:7px;gap:0}
}

/* v2.7: visible cart quantities and touch-first quantity keypad. */
.sale-panel .cart-line{grid-template-columns:minmax(0,1fr) 58px 54px 20px;min-height:52px}
.sale-panel .cart-line .cart-quantity-button{display:grid;width:58px;min-height:50px;grid-template-rows:auto 1fr;align-content:center;gap:1px;padding:4px 3px 3px!important;border-radius:9px;line-height:1;white-space:normal}
.cart-quantity-label{align-self:start;font-size:7px;font-weight:900;letter-spacing:.055em;line-height:1;text-transform:uppercase;transform:translateY(-1px)}
.cart-quantity-value{align-self:center;font-size:18px;font-weight:950;line-height:1;font-variant-numeric:tabular-nums}
.quantity-dialog-card{width:min(390px,calc(100vw - 24px));gap:9px;padding:22px;border-radius:15px}
.quantity-dialog-card .eyebrow{margin:0}
.quantity-dialog-card h3{overflow:hidden;margin:0;padding-right:36px;font-size:20px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}
.quantity-dialog-card #quantity-unit-note{min-height:15px;font-size:11px}
.quantity-display-row{display:grid;grid-template-columns:minmax(0,1fr) 74px;gap:8px;align-items:end}
.quantity-display-row label{display:grid;gap:5px}
.quantity-display-row label>span{font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.quantity-dialog-card #quantity-value{height:54px;min-height:54px;padding:6px 10px;border:2px solid var(--grocery-border-strong);border-radius:9px;background:var(--grocery-surface-soft);font-size:29px;font-weight:950;text-align:center;font-variant-numeric:tabular-nums;caret-color:transparent}
.quantity-clear-key{height:54px;min-height:54px;padding:8px!important;font-size:10px!important;text-transform:uppercase}
.quantity-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:2px 0}
.quantity-keypad button{height:48px;border:1px solid var(--grocery-border-strong);border-radius:9px;background:linear-gradient(180deg,#fff,#edf3f0);box-shadow:0 3px 8px rgba(8,48,38,.09),inset 0 1px 0 #fff;color:var(--ink);font-size:21px;font-weight:900;font-variant-numeric:tabular-nums}
.quantity-keypad button:hover,.quantity-keypad button:focus-visible{border-color:#7dbca3;background:#e0f1e9}
.quantity-keypad button:active{background:#cde8dd;box-shadow:inset 0 2px 5px rgba(8,48,38,.14)}
.quantity-keypad button:disabled{opacity:.24;cursor:not-allowed;box-shadow:none}
.quantity-update-button{height:49px;min-height:49px!important;font-size:15px;font-weight:950}
html[data-theme="dark"] .quantity-dialog-card #quantity-value{border-color:#4d685e;background:#1d302a;color:#f4fbf8}
html[data-theme="dark"] .quantity-keypad button{border-color:#49645b;background:linear-gradient(180deg,#2a4038,#20342d);box-shadow:0 3px 8px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.05);color:#f1f8f5}
html[data-theme="dark"] .quantity-keypad button:hover,html[data-theme="dark"] .quantity-keypad button:focus-visible{border-color:#68a58d;background:#315044}
@media(max-width:700px){
  .sale-panel .cart-line{grid-template-columns:minmax(0,1fr) 60px 58px 22px}
  .sale-panel .cart-line .cart-quantity-button{width:60px;min-height:50px}
  .quantity-dialog-card{width:min(380px,calc(100vw - 18px));padding:19px}
  .quantity-keypad button{height:50px}
}

/* v2.8: compact register verification and closeout proportions. */
#view-pos .sale-panel{padding:14px 16px 15px}
.grocery-member-gate{
  grid-template-columns:minmax(0,1fr) 132px;
  gap:4px 6px;
  padding:6px 7px;
}
.grocery-member-gate .eyebrow{margin:0 0 2px;font-size:9px;line-height:1.05}
.grocery-member-gate #selected-member-name{font-size:15px;line-height:1.05}
.grocery-member-gate>div:first-child small{margin-top:2px;font-size:9px;line-height:1.05}
.verification-actions{min-width:132px;gap:4px}
#view-pos .verification-actions button{
  height:34px;
  min-height:34px;
  padding:5px 7px;
  font-size:9px;
  line-height:1;
}
.verification-status-line{
  height:20px;
  min-height:20px;
  padding:3px 6px;
  font-size:7px;
  letter-spacing:.035em;
}
.sale-panel .cart{margin:5px 0}
.sale-panel .totals{padding:4px 7px 5px;border-radius:8px}
.sale-panel .totals>div{padding:2px 1px;font-size:10px}
.sale-panel .totals .grand{
  min-height:31px;
  margin-top:3px;
  padding:5px 8px;
  border-radius:7px;
  font-size:17px;
}
.grocery-tender-row{gap:6px;margin-top:7px}
#view-pos .grocery-tender-row button{
  height:42px;
  min-height:42px!important;
  padding:7px 9px!important;
  font-size:11px!important;
}
#view-pos .grocery-tender-row #checkout-btn{font-size:14px!important}
.department-grid button{
  padding:5px 6px;
  font-size:clamp(8.75px,.76vw,10px);
  line-height:1.08;
  text-wrap:balance;
}
.top-actions>.kiosk-button,
.top-actions>.customer-approval-button,
.top-actions>.web-orders-button,
.top-actions>.gift-card-top-button{
  font-size:8px;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.top-actions button b{letter-spacing:0}
@media(max-width:900px) and (min-width:701px){
  .department-grid button{
    padding:4px 3px;
    font-size:7.5px;
    line-height:1.08;
    overflow-wrap:anywhere;
  }
  .top-actions>.kiosk-button,
  .top-actions>.customer-approval-button,
  .top-actions>.web-orders-button,
  .top-actions>.gift-card-top-button{
    padding:5px 4px;
    font-size:7px;
    line-height:1.05;
    white-space:normal;
  }
  .top-actions button b{min-width:18px;height:18px;padding:0 4px;font-size:8px}
}
@media(max-width:700px){
  #view-pos .sale-panel{padding:10px 12px 12px}
  .grocery-member-gate{grid-template-columns:minmax(0,1fr) 126px;padding:6px}
  .verification-actions{min-width:126px}
  .department-grid button{font-size:9px;padding:5px}
  .top-actions>.kiosk-button,
  .top-actions>.customer-approval-button,
  .top-actions>.web-orders-button,
  .top-actions>.gift-card-top-button{font-size:8px;letter-spacing:.035em}
}

/* v2.9: compact square cart quantities and contained top-action labels. */
.sale-panel .cart-line{
  grid-template-columns:minmax(0,1fr) 34px 50px 20px;
  min-height:38px;
}
.sale-panel .cart-line .cart-quantity-button{
  width:34px;
  height:34px;
  min-height:34px;
  grid-template-rows:auto 1fr;
  gap:0;
  overflow:hidden;
  padding:2px!important;
  border-radius:7px;
}
.cart-quantity-label{
  width:100%;
  min-width:0;
  overflow:hidden;
  font-size:4.5px;
  letter-spacing:0;
  text-align:center;
  transform:none;
}
.cart-quantity-value{width:100%;min-width:0;overflow:hidden;font-size:13px;text-align:center}
.top-actions>.kiosk-button,
.top-actions>.customer-approval-button,
.top-actions>.web-orders-button,
.top-actions>.gift-card-top-button{
  overflow:hidden;
  line-height:1.05;
  text-wrap:balance;
  white-space:normal;
}
@media(max-width:700px){
  .sale-panel .cart-line{grid-template-columns:minmax(0,1fr) 34px 52px 22px;min-height:38px}
  .sale-panel .cart-line .cart-quantity-button{width:34px;height:34px;min-height:34px}
}
