/* Quick Sale uses Portal's shared Workflow surface, typography, line and shadow tokens.
   No edge handle. The modal owns its scrolling; it never repositions Work Order. */
html.qs-open { overflow: hidden; }
#gc-quick-sale-drawer {
  --qs-surface: var(--white, #fff);
  --qs-soft: var(--v1-soft, #f4f7fb);
  --qs-line: var(--v1-line, var(--line, #d7e1eb));
  --qs-ink: var(--v1-ink, var(--ink, #152a40));
  --qs-muted: var(--v1-muted, var(--muted, #536a80));
  box-sizing: border-box; position: fixed; inset: 0 0 0 auto;
  width: min(540px, 100vw); height: 100dvh; max-width: 100vw; max-height: 100dvh;
  margin: 0; padding: 0; border: 0; border-left: 1px solid var(--qs-line);
  border-radius: 16px 0 0 16px; background: var(--qs-surface); color: var(--qs-ink);
  box-shadow: var(--gc-drawer-shadow, -20px 0 52px rgba(5,18,32,.2));
  font-family: inherit; overflow: hidden;
}
#gc-quick-sale-drawer[open] { animation: qs-enter 160ms ease-out; }
#gc-quick-sale-drawer::backdrop { background: rgba(4,14,25,.58); }
#gc-quick-sale-drawer.qs-expanded { width: 100vw; border-radius: 0; border-left: 0; }
#gc-quick-sale-drawer *, #gc-quick-sale-drawer *::before, #gc-quick-sale-drawer *::after { box-sizing: border-box; }
#gc-quick-sale-drawer .qs-shell {
  height: 100%; min-height: 0; display: flex; flex-direction: column;
  padding-top: env(safe-area-inset-top, 0px); padding-bottom: env(safe-area-inset-bottom, 0px);
}
#gc-quick-sale-drawer .qs-head {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  flex: 0 0 auto; padding: 16px 20px; border-bottom: 1px solid var(--qs-line);
  background: var(--qs-surface);
}
#gc-quick-sale-drawer h2 { font-size: 1.25rem; line-height: 1.3; margin: 2px 0 0; }
#gc-quick-sale-drawer h3 { font-size: .95rem; margin: 0; }
#gc-quick-sale-drawer .qs-kicker { margin: 0; color: var(--qs-muted); font-size: .73rem; font-weight: 700; }
#gc-quick-sale-drawer .qs-head-actions, #gc-quick-sale-drawer .qs-inline-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
#gc-quick-sale-drawer :is(button, input, select) { font: inherit; }
#gc-quick-sale-drawer button { cursor: pointer; }
#gc-quick-sale-drawer button:disabled { cursor: not-allowed; opacity: .55; }
#gc-quick-sale-drawer :is(button, input, select):focus-visible {
  outline: 3px solid var(--v1-blue, var(--blue, #1165c4)); outline-offset: 2px;
}
#gc-quick-sale-drawer :is(input:not([type="checkbox"]), select) {
  width: 100%; max-width: 100%; min-width: 0; min-height: 42px; padding: 9px 10px;
  color: var(--qs-ink); background: var(--qs-surface); border: 1px solid var(--qs-line); border-radius: 8px;
}
#gc-quick-sale-drawer :is(.secondary-button, .primary-button, .icon-button) { min-height: 42px; }
#gc-quick-sale-drawer .text-button { min-height: 32px; padding: 5px 6px; font-size: .78rem; }
#gc-quick-sale-drawer .icon-button { min-width: 42px; font-size: 1.5rem; }
#gc-quick-sale-drawer label { display: grid; gap: 6px; font-size: .77rem; font-weight: 650; color: var(--qs-ink); }
#gc-quick-sale-drawer .qs-customer {
  flex: 0 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 10px;
  padding: 12px 20px; border-bottom: 1px solid var(--qs-line); background: var(--qs-soft);
}
#gc-quick-sale-drawer .qs-customer>div:first-child { min-width: 0; }
#gc-quick-sale-drawer .qs-customer strong { font-size: .9rem; overflow-wrap: anywhere; }
#gc-quick-sale-drawer .qs-customer span { display: block; font-size: .73rem; color: var(--qs-muted); margin-top: 4px; }
#gc-quick-sale-drawer .qs-customer .qs-inline-actions { justify-content: flex-end; max-width: 46%; }
#gc-quick-sale-drawer .qs-lookup { flex: 0 1 auto; min-height: 100px; max-height: 35dvh; overflow-y: auto; padding: 12px 20px; border-bottom: 1px solid var(--qs-line); }
#gc-quick-sale-drawer .qs-search-row { display: flex; align-items: center; gap: 8px; margin-top: 6px; }
#gc-quick-sale-drawer .qs-search-row input { flex: 1; }
#gc-quick-sale-drawer .qs-search-row button { white-space: nowrap; font-size: .8rem; }
#gc-quick-sale-drawer .qs-main { flex: 1 1 auto; min-height: 0; min-width: 0; padding: 0; overflow: auto; overscroll-behavior: contain; }
#gc-quick-sale-drawer .qs-catalog { padding: 16px 20px 8px; }
#gc-quick-sale-drawer .qs-filters { display: flex; gap: 6px; margin-top: 10px; }
#gc-quick-sale-drawer .qs-filters button { min-height: 32px; padding: 5px 12px; font-size: .77rem; border-radius: 20px; }
#gc-quick-sale-drawer .qs-filters button[aria-pressed="true"] { border-color: var(--v1-blue, var(--blue, #1165c4)); color: var(--v1-blue, var(--blue, #1165c4)); }
#gc-quick-sale-drawer .qs-results { max-height: 210px; overflow: auto; margin-top: 10px; }
.qs-result {
  width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 14px;
  padding: 12px 2px; border: 0; border-bottom: 1px solid var(--v1-line, var(--line, #d7e1eb));
  text-align: left; background: transparent; color: var(--v1-ink, var(--ink, #152a40)); font: inherit; cursor: pointer;
}
.qs-result>span:first-child { min-width: 0; }
.qs-result>span:last-child { flex-shrink: 0; text-align: right; }
.qs-result strong { font-size: .82rem; overflow-wrap: anywhere; }
.qs-result small { display: block; color: var(--v1-muted, var(--muted, #536a80)); font-size: .71rem; margin-top: 4px; overflow-wrap: anywhere; }
.qs-result:hover:not(:disabled) { background: var(--v1-soft, #f4f7fb); }
#gc-quick-sale-drawer .qs-cart { padding: 14px 20px 20px; min-width: 0; }
#gc-quick-sale-drawer .qs-section-head { display: flex; align-items: center; gap: 8px; border-bottom: 1px solid var(--qs-line); padding-bottom: 8px; }
#gc-quick-sale-drawer .qs-section-head h3 { margin-right: auto; white-space: nowrap; }
#gc-quick-sale-drawer .qs-section-head h3 span { color: var(--qs-muted); font-size: .76rem; }
#gc-quick-sale-drawer .qs-line { display: grid; grid-template-columns: minmax(0,1fr) 62px 78px; align-items: center; gap: 10px; padding: 13px 0; border-bottom: 1px solid var(--qs-line); }
#gc-quick-sale-drawer .qs-line>div:first-child { min-width: 0; }
#gc-quick-sale-drawer .qs-line strong { font-size: .83rem; overflow-wrap: anywhere; }
#gc-quick-sale-drawer .qs-line small { display: block; font-size: .7rem; color: var(--qs-muted); margin-top: 4px; }
#gc-quick-sale-drawer .qs-quantity { font-size: .66rem; text-align: center; gap: 4px; }
#gc-quick-sale-drawer .qs-quantity input { padding: 6px; min-height: 36px; text-align: center; }
#gc-quick-sale-drawer .qs-line-total { text-align: right; }
#gc-quick-sale-drawer .qs-line-total button { display: block; margin-left: auto; }
#gc-quick-sale-drawer .qs-empty { padding: 24px 10px 12px; text-align: center; font-size: .85rem; }
#gc-quick-sale-drawer .qs-empty p, #gc-quick-sale-drawer .qs-muted { color: var(--qs-muted); font-size: .78rem; line-height: 1.5; }
#gc-quick-sale-drawer .qs-checkout {
  flex: 0 0 auto; padding: 12px 20px 14px; border-top: 1px solid var(--qs-line);
  background: var(--qs-soft); box-shadow: 0 -5px 18px rgba(5,18,32,.04);
}
#gc-quick-sale-drawer .qs-totals { display: grid; gap: 4px; font-size: .79rem; }
#gc-quick-sale-drawer .qs-totals>div { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
#gc-quick-sale-drawer .qs-grand { margin-top: 4px; padding-top: 6px; border-top: 1px solid var(--qs-line); font-size: 1.1rem; }
#gc-quick-sale-drawer .qs-grand strong { font-size: 1.45rem; }
#gc-quick-sale-drawer .qs-payment-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 10px; margin-top: 10px; }
#gc-quick-sale-drawer .qs-guidance { font-size: .72rem; color: var(--qs-muted); line-height: 1.4; margin-top: 7px; }
#gc-quick-sale-drawer .qs-attestation { display: flex; align-items: center; gap: 8px; font-size: .72rem; font-weight: 400; margin: 9px 0; min-height: 26px; }
#gc-quick-sale-drawer .qs-attestation input { width: 17px; height: 17px; margin: 0; flex: 0 0 auto; }
#gc-quick-sale-drawer .qs-complete { width: 100%; min-height: 44px; }
#gc-quick-sale-drawer .qs-status { flex: 0 0 auto; padding: 8px 20px; font-size: .76rem; line-height: 1.4; max-height: 100px; overflow: auto; overflow-wrap: anywhere; }
#gc-quick-sale-drawer .qs-status:empty { display: none; }
#gc-quick-sale-drawer .qs-error { color: var(--red, #bc263b); }
#gc-quick-sale-drawer .qs-recovery, #gc-quick-sale-drawer .qs-clear-confirm { padding: 12px 0; font-size: .78rem; line-height: 1.4; }
#gc-quick-sale-drawer .qs-receipt { flex: 1; min-height: 0; overflow: auto; padding: 26px 24px; text-align: center; }
#gc-quick-sale-drawer .qs-receipt h3 { font-size: 1.3rem; margin: 12px 0; }
#gc-quick-sale-drawer .qs-receipt p { font-size: .83rem; color: var(--qs-muted); }
#gc-quick-sale-drawer .qs-success { font-size: 2rem; color: var(--green, #148766); }
#gc-quick-sale-drawer .qs-receipt-lines { display: grid; gap: 12px; margin: 28px 0; font-size: .84rem; text-align: left; }
#gc-quick-sale-drawer .qs-receipt-lines>div { display: flex; align-items: start; justify-content: space-between; gap: 16px; }
#gc-quick-sale-drawer .qs-receipt-lines span { overflow-wrap: anywhere; }
#gc-quick-sale-drawer .qs-receipt-actions { display: flex; justify-content: center; gap: 10px; margin-top: 28px; }
@media (min-width: 1000px) {
  #gc-quick-sale-drawer.qs-expanded .qs-main { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); overflow: hidden; }
  #gc-quick-sale-drawer.qs-expanded .qs-catalog, #gc-quick-sale-drawer.qs-expanded .qs-cart { overflow: auto; min-height: 0; padding: 24px; }
  #gc-quick-sale-drawer.qs-expanded .qs-catalog { border-right: 1px solid var(--qs-line); }
  #gc-quick-sale-drawer.qs-expanded .qs-results { max-height: none; }
  #gc-quick-sale-drawer.qs-expanded .qs-checkout { display: grid; grid-template-columns: 230px minmax(260px,1fr) minmax(260px,1fr); column-gap: 24px; align-items: start; }
  #gc-quick-sale-drawer.qs-expanded .qs-totals { grid-row: 1 / 4; }
  #gc-quick-sale-drawer.qs-expanded .qs-payment-grid { grid-column: 2; margin: 0; }
  #gc-quick-sale-drawer.qs-expanded .qs-guidance { grid-column: 2; }
  #gc-quick-sale-drawer.qs-expanded .qs-attestation { grid-column: 3; grid-row: 1; }
  #gc-quick-sale-drawer.qs-expanded .qs-complete { grid-column: 3; grid-row: 2 / 4; }
  #gc-quick-sale-drawer.qs-expanded .qs-recovery { grid-column: 2 / 4; }
  #gc-quick-sale-drawer.qs-expanded .qs-receipt { max-width: 700px; width: 100%; align-self: center; }
}
@media (max-width: 600px) {
  #gc-quick-sale-drawer { width: 100vw; border: 0; border-radius: 0; }
  #gc-quick-sale-drawer .qs-head { padding: 12px 14px; }
  #gc-quick-sale-drawer :is(.qs-customer,.qs-lookup,.qs-catalog,.qs-cart,.qs-checkout,.qs-status) { padding-left: 14px; padding-right: 14px; }
  #gc-quick-sale-drawer .qs-line { grid-template-columns: minmax(0,1fr) 58px 68px; gap: 8px; }
}
/* A software keyboard/short landscape viewport must not hide checkout offscreen.
   Relax the pinned region only when the viewport cannot fit both regions. */
@media (max-height: 600px) {
  #gc-quick-sale-drawer .qs-shell { overflow-y: auto; overscroll-behavior: contain; }
  #gc-quick-sale-drawer .qs-main { flex: 0 0 auto; overflow: visible; }
  #gc-quick-sale-drawer .qs-lookup { max-height: 200px; flex: 0 0 auto; }
  #gc-quick-sale-drawer .qs-checkout { position: relative; }
  #gc-quick-sale-drawer.qs-expanded .qs-main { display: block; }
}
@keyframes qs-enter { from { transform: translateX(24px); opacity: .5; } to { transform: translateX(0); opacity: 1; } }
@media (prefers-reduced-motion: reduce) { #gc-quick-sale-drawer[open] { animation: none; } }

/* Dedicated POS and editable sale lines. Shared Portal surface tokens remain authoritative. */
#gc-quick-sale-drawer{width:min(1040px,100vw)}
#gc-quick-sale-drawer .qs-workspace{display:grid;grid-template-columns:minmax(0,1fr) 380px;flex:1;min-height:0;min-width:0;overflow:hidden}
#gc-quick-sale-drawer .qs-sale-panel{min-width:0;overflow-y:auto;overscroll-behavior:contain}
#gc-quick-sale-drawer .qs-pos-panel{display:flex;flex-direction:column;min-width:0;min-height:0;border-left:1px solid var(--qs-line);background:var(--qs-soft)}
#gc-quick-sale-drawer .qs-pos-head{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--qs-line)}
#gc-quick-sale-drawer .qs-pos-head h3{font-size:1.1rem;letter-spacing:.02em}
#gc-quick-sale-drawer .qs-payment-state{font-size:.68rem;padding:5px 8px;border:1px solid var(--qs-line);border-radius:30px;background:var(--qs-surface)}
#gc-quick-sale-drawer .qs-pos-scroll{padding:20px;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}
#gc-quick-sale-drawer .qs-amount-due{display:grid;gap:5px;padding:0 0 14px;position:sticky;top:-16px;z-index:2;background:var(--qs-soft)}
#gc-quick-sale-drawer .qs-amount-due>span{font-size:.8rem;color:var(--qs-muted)}
#gc-quick-sale-drawer .qs-amount-due>strong{font-size:2.4rem;line-height:1.2;letter-spacing:-.03em}
#gc-quick-sale-drawer .qs-amount-due small{color:var(--qs-muted);font-size:.73rem}
#gc-quick-sale-drawer .qs-payment-label{font-size:.8rem;margin:24px 0 10px}
#gc-quick-sale-drawer .qs-tender-tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#gc-quick-sale-drawer .qs-tender{display:grid;gap:4px;text-align:left;min-height:65px;padding:12px;border:1px solid var(--qs-line);border-radius:10px;background:var(--qs-surface);color:var(--qs-ink)}
#gc-quick-sale-drawer .qs-primary-tenders .qs-tender{min-height:78px;text-align:center;align-content:center;border-width:2px}
#gc-quick-sale-drawer .qs-primary-tenders .qs-tender strong{font-size:1.05rem}
#gc-quick-sale-drawer .qs-primary-tenders .qs-tender[aria-pressed=true]{background:var(--v1-blue,#1165c4);border-color:var(--v1-blue,#1165c4);color:#fff;box-shadow:0 4px 12px rgba(17,101,196,.2)}
#gc-quick-sale-drawer .qs-primary-tenders .qs-tender[aria-pressed=true] small{color:#fff}
#gc-quick-sale-drawer .qs-other-tenders{margin-top:12px}
#gc-quick-sale-drawer .qs-other-tenders summary{min-height:48px;display:flex;align-items:center;cursor:pointer;font-size:.78rem;font-weight:700;color:var(--qs-muted)}
#gc-quick-sale-drawer .qs-other-tenders .qs-tender-tiles{margin:6px 0 10px}
#gc-quick-sale-drawer .qs-tender strong{font-size:.83rem}
#gc-quick-sale-drawer .qs-tender small{font-size:.64rem;color:var(--qs-muted);font-weight:400}
#gc-quick-sale-drawer .qs-tender[aria-pressed=true]{border-color:var(--v1-blue);box-shadow:inset 0 0 0 1px var(--v1-blue)}
#gc-quick-sale-drawer .qs-card-architecture{padding:14px 12px;border:1px solid var(--qs-line);border-radius:12px;background:var(--qs-surface);margin-top:14px}
#gc-quick-sale-drawer .qs-card-unavailable{border-color:var(--amber,#d99418);background:var(--qs-surface)}
#gc-quick-sale-drawer .qs-card-provider{display:grid;gap:5px;margin-bottom:12px}
#gc-quick-sale-drawer .qs-card-provider strong{font-size:.85rem}
#gc-quick-sale-drawer .qs-card-provider span{font-size:.7rem;color:var(--amber,var(--qs-muted))}
#gc-quick-sale-drawer .qs-card-architecture>small{font-size:.65rem;color:var(--qs-muted)}
#gc-quick-sale-drawer .qs-card-route{display:flex;flex-wrap:wrap;gap:5px;font-size:.61rem;margin:8px 0}
#gc-quick-sale-drawer .qs-card-route span{border:1px solid var(--qs-line);border-radius:5px;padding:5px}
#gc-quick-sale-drawer .qs-card-route span+span:before{content:'→ ';color:var(--qs-muted)}
#gc-quick-sale-drawer .qs-card-architecture p{font-size:.72rem;line-height:1.5;color:var(--qs-muted)}
#gc-quick-sale-drawer .qs-card-meta{display:flex;justify-content:space-between;gap:12px;font-size:.67rem;padding-top:8px;border-top:1px solid var(--qs-line)}
#gc-quick-sale-drawer .qs-card-total{display:grid;gap:4px;padding:12px;border-radius:9px;background:var(--qs-soft)}
#gc-quick-sale-drawer .qs-card-total span{font-size:.7rem;color:var(--qs-muted)}
#gc-quick-sale-drawer .qs-card-total strong{font-size:1.5rem;font-variant-numeric:tabular-nums}
#gc-quick-sale-drawer .qs-cash-entry{display:grid;grid-template-columns:1fr;gap:8px;align-items:end;margin-top:14px}
#gc-quick-sale-drawer .qs-cash-entry input{min-height:52px;font-size:1.2rem;font-weight:750;text-align:right;font-variant-numeric:tabular-nums}
#gc-quick-sale-drawer .qs-cash-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px}
#gc-quick-sale-drawer .qs-cash-presets button{min-height:48px;padding:8px 5px;font-size:.78rem;font-weight:750}
#gc-quick-sale-drawer .qs-keypad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px}
#gc-quick-sale-drawer .qs-keypad button{min-height:48px;font-size:1rem;font-weight:750;touch-action:manipulation}
#gc-quick-sale-drawer .qs-keypad button[data-qs-cash-key="clear"],#gc-quick-sale-drawer .qs-keypad button[data-qs-cash-key="backspace"]{font-size:.78rem}
#gc-quick-sale-drawer .qs-keypad button[data-qs-cash-key="backspace"]{grid-column:1/-1}
#gc-quick-sale-drawer .qs-change{font-size:1rem;padding:12px;margin-top:10px;font-weight:800;border-radius:8px;background:var(--qs-surface);font-variant-numeric:tabular-nums}
#gc-quick-sale-drawer .qs-reference{margin-top:18px}
#gc-quick-sale-drawer .qs-attestation{margin-top:18px;align-items:flex-start;line-height:1.5}
#gc-quick-sale-drawer .qs-attestation input{margin-top:2px}
#gc-quick-sale-drawer .qs-pos-action{padding:14px 20px 18px;border-top:1px solid var(--qs-line);background:var(--qs-soft);flex-shrink:0}
#gc-quick-sale-drawer .qs-pos-action small{display:block;text-align:center;margin-top:8px;color:var(--qs-muted);font-size:.65rem}
#gc-quick-sale-drawer .qs-complete{min-height:48px}
#gc-quick-sale-drawer .qs-cart-hint{font-size:.72rem;color:var(--qs-muted);margin:10px 0}
#gc-quick-sale-drawer .qs-line{display:block;padding:15px 0}
#gc-quick-sale-drawer .qs-line-row{display:grid;grid-template-columns:minmax(135px,1fr) 45px 78px 90px 78px;gap:8px;align-items:start}
#gc-quick-sale-drawer .qs-item-name{display:block;border:0;background:transparent;color:var(--qs-ink);padding:0;text-align:left;min-height:44px;width:100%}
#gc-quick-sale-drawer .qs-item-name strong{line-height:1.4}
#gc-quick-sale-drawer .qs-cell-label{display:block;font-size:.61rem;color:var(--qs-muted);margin-bottom:5px}
#gc-quick-sale-drawer .qs-value-button{background:transparent;border:1px dashed var(--qs-line);border-radius:6px;padding:5px 6px;min-height:34px;color:var(--qs-ink);font-size:.76rem;max-width:100%;overflow-wrap:anywhere}
#gc-quick-sale-drawer .qs-value-button:hover:not(:disabled){background:var(--qs-soft);border-color:var(--v1-blue)}
#gc-quick-sale-drawer .qs-line-discount .qs-value-button{font-size:.67rem}
#gc-quick-sale-drawer .qs-sale-price{color:var(--v1-blue)!important}
#gc-quick-sale-drawer .qs-line-editor{margin:14px 0 0;padding:15px;background:var(--qs-soft);border:1px solid var(--qs-line);border-radius:10px}
#gc-quick-sale-drawer .qs-editor-heading{display:flex;flex-wrap:wrap;gap:7px;justify-content:space-between;align-items:center;margin-bottom:14px}
#gc-quick-sale-drawer .qs-editor-heading h4{font-size:.84rem;margin:0}
#gc-quick-sale-drawer .qs-editor-heading span{font-size:.65rem;color:var(--qs-muted)}
#gc-quick-sale-drawer .qs-editor-grid{display:grid;grid-template-columns:70px 1fr 1.1fr 1fr;gap:9px}
#gc-quick-sale-drawer .qs-editor-grid label{font-size:.69rem}
#gc-quick-sale-drawer .qs-editor-hint{font-size:.69rem;color:var(--qs-muted);line-height:1.5;margin:10px 0}
#gc-quick-sale-drawer .qs-editor-error{font-size:.73rem;color:var(--red);line-height:1.45}
#gc-quick-sale-drawer .qs-editor-error:empty{display:none}
#gc-quick-sale-drawer .qs-editor-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;align-items:center}
#gc-quick-sale-drawer .qs-editor-actions button{font-size:.72rem}
#gc-quick-sale-drawer .qs-mobile-tabs{display:none}
#gc-quick-sale-drawer .qs-receipt-lines small{display:block;color:var(--qs-muted);font-size:.72rem;margin-top:6px}
#gc-quick-sale-drawer.qs-expanded .qs-workspace{grid-template-columns:minmax(0,1fr) 420px}
#gc-quick-sale-drawer.qs-expanded .qs-catalog,#gc-quick-sale-drawer.qs-expanded .qs-cart{padding:20px 26px;overflow:visible;border:0}
#gc-quick-sale-drawer.qs-expanded .qs-results{max-height:230px}
@media(min-width:1500px){#gc-quick-sale-drawer.qs-expanded .qs-sale-panel{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(480px,1.2fr);grid-template-rows:auto minmax(0,1fr)}#gc-quick-sale-drawer.qs-expanded .qs-customer,#gc-quick-sale-drawer.qs-expanded .qs-lookup{grid-column:1 / -1}#gc-quick-sale-drawer.qs-expanded .qs-catalog,#gc-quick-sale-drawer.qs-expanded .qs-cart{overflow:auto}#gc-quick-sale-drawer.qs-expanded .qs-results{max-height:none}}
@media(max-width:940px){#gc-quick-sale-drawer .qs-workspace{grid-template-columns:minmax(0,1fr) 340px}#gc-quick-sale-drawer .qs-line-row{grid-template-columns:minmax(100px,1fr) 40px 76px 72px}#gc-quick-sale-drawer .qs-line-discount{grid-column:1 / 4;grid-row:2}#gc-quick-sale-drawer .qs-line-total{grid-column:4;grid-row:1 / 3}#gc-quick-sale-drawer .qs-editor-grid{grid-template-columns:1fr 1fr}}
@media(max-width:780px){
 #gc-quick-sale-drawer .qs-mobile-tabs{display:flex;gap:8px;flex-shrink:0;padding:10px 14px;border-bottom:1px solid var(--qs-line)}
 #gc-quick-sale-drawer .qs-mobile-tabs button{flex:1;min-height:42px;padding:8px;background:var(--qs-soft);border:1px solid var(--qs-line);border-radius:8px;color:var(--qs-ink);font-size:.85rem}
 #gc-quick-sale-drawer .qs-mobile-tabs button[aria-pressed=true]{border-color:var(--v1-blue);color:var(--v1-blue)}
 #gc-quick-sale-drawer .qs-workspace,#gc-quick-sale-drawer.qs-expanded .qs-workspace{display:flex;flex-direction:column;overflow:hidden;flex:1}
 #gc-quick-sale-drawer[data-mobile-panel=sale] .qs-pos-panel{display:none}
 #gc-quick-sale-drawer[data-mobile-panel=pos] .qs-sale-panel{display:none}
 #gc-quick-sale-drawer .qs-pos-panel,#gc-quick-sale-drawer .qs-sale-panel{flex:1;min-height:0;border:0}
 #gc-quick-sale-drawer .qs-results,#gc-quick-sale-drawer.qs-expanded .qs-results{max-height:175px}
 #gc-quick-sale-drawer .qs-line-row{grid-template-columns:minmax(94px,1fr) 40px 68px 72px}
 #gc-quick-sale-drawer .qs-value-button{min-height:40px}
 #gc-quick-sale-drawer .qs-editor-grid{grid-template-columns:1fr 1fr}
 #gc-quick-sale-drawer .qs-card-route{font-size:.72rem}
}
@media(max-height:600px){#gc-quick-sale-drawer .qs-shell{overflow:hidden}#gc-quick-sale-drawer .qs-pos-head{padding:10px 16px}#gc-quick-sale-drawer .qs-pos-action{padding:8px 14px}#gc-quick-sale-drawer .qs-pos-action small{display:none}#gc-quick-sale-drawer .qs-pos-scroll{padding:14px}#gc-quick-sale-drawer .qs-mobile-tabs{padding:4px 14px}#gc-quick-sale-drawer .qs-status{max-height:64px}}

/* Counter touchscreen layout: keep the due amount visible and make tender entry direct. */
@media (min-width: 781px) and (max-width: 1120px) {
  #gc-quick-sale-drawer .qs-value-button,
  #gc-quick-sale-drawer .qs-filters button,
  #gc-quick-sale-drawer .qs-other-tenders summary { min-height: 48px; }
}

/* Keep cash entry, change and confirmation together on the 1024x768 register.
   Total Due stays pinned while focus scrolls tender controls; the shared Portal
   scroll surface has 16px padding. Preserve 48px counter touch targets. */
#gc-quick-sale-drawer .qs-cash-entry{grid-template-columns:minmax(0,1fr) 48px}
#gc-quick-sale-drawer .qs-cash-backspace{min-height:52px;padding:0;font-size:1.1rem}
#gc-quick-sale-drawer .qs-cash-controls{display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:8px;margin-top:8px}
#gc-quick-sale-drawer .qs-cash-controls .qs-keypad{grid-column:1;grid-row:1;margin:0}
#gc-quick-sale-drawer .qs-cash-controls .qs-cash-presets{grid-column:2;grid-row:1;display:flex;flex-direction:column;gap:7px;margin:0}
@media (min-width:781px) and (max-height:850px){
 #gc-quick-sale-drawer .qs-head{padding:10px 20px}
 #gc-quick-sale-drawer .qs-pos-head{padding:8px 16px}
 #gc-quick-sale-drawer .qs-pos-head h3{font-size:.9rem}
 #gc-quick-sale-drawer .qs-pos-scroll{padding:12px 16px}
 #gc-quick-sale-drawer .qs-amount-due{position:sticky;top:-16px;padding-bottom:8px;gap:2px}
 #gc-quick-sale-drawer .qs-amount-due>strong{font-size:2rem}
 #gc-quick-sale-drawer .qs-pos-scroll>.qs-totals{grid-template-columns:repeat(3,minmax(0,1fr));font-size:.69rem;padding-bottom:8px}
 #gc-quick-sale-drawer .qs-pos-scroll>.qs-totals>div{display:grid;gap:2px}
 #gc-quick-sale-drawer .qs-payment-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0}
 #gc-quick-sale-drawer .qs-primary-tenders .qs-tender{min-height:52px;padding:6px}
 #gc-quick-sale-drawer .qs-other-tenders{margin-top:0}
 #gc-quick-sale-drawer .qs-other-tenders summary{min-height:48px}
 #gc-quick-sale-drawer .qs-cash-entry{margin-top:8px;gap:8px}
 #gc-quick-sale-drawer .qs-cash-entry input,#gc-quick-sale-drawer .qs-cash-backspace{min-height:48px}
 #gc-quick-sale-drawer .qs-keypad button,#gc-quick-sale-drawer .qs-cash-presets button{min-height:48px}
 #gc-quick-sale-drawer .qs-keypad{gap:6px}
 #gc-quick-sale-drawer .qs-change{padding:8px 10px;margin-top:8px}
 #gc-quick-sale-drawer .qs-attestation{margin:8px 0;min-height:32px}
 #gc-quick-sale-drawer .qs-pos-action{padding:10px 16px}
 #gc-quick-sale-drawer .qs-pos-action small{margin-top:5px}
}

@media (min-width:781px) and (max-height:850px){
 #gc-quick-sale-drawer .qs-head{padding:8px 16px}
 #gc-quick-sale-drawer .qs-pos-head{padding:6px 16px}
 #gc-quick-sale-drawer .qs-pos-scroll{padding:10px 16px}
 #gc-quick-sale-drawer .qs-amount-due small,#gc-quick-sale-drawer .qs-pos-action small{display:none}
 #gc-quick-sale-drawer .qs-attestation{margin:6px 0}
}

.qs-multi-item-offer{display:grid;gap:6px;margin:12px 0;padding:11px;border:1px solid var(--qs-line,#dce5ee);border-radius:10px;background:var(--qs-soft,#f5f8fb)}
.qs-multi-item-offer button{justify-self:start;min-height:38px}
.qs-multi-item-offer small{color:var(--qs-muted,#61778b);font-size:11px;line-height:1.45}

.qs-custom-service{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:13px;border:1px solid var(--qs-line,#dce5ee);border-radius:10px;background:var(--qs-soft,#f5f8fb)}
.qs-custom-service>strong,.qs-custom-service>p,.qs-custom-service .qs-editor-error{grid-column:1/-1;margin:0}
.qs-custom-service label{display:grid;gap:5px;font-size:11px;font-weight:700}
.qs-custom-service input{width:100%;box-sizing:border-box;min-height:40px;padding:8px;border:1px solid var(--qs-line,#dce5ee);border-radius:8px;background:var(--qs-surface,#fff);color:inherit}
.qs-custom-service .qs-editor-error{color:#b53b3b}
@media(max-width:600px){.qs-custom-service{grid-template-columns:1fr}}

/* Keep the full tender path visible at desktop and counter heights. */
@media(min-width:781px) and (min-height:700px) {
 #gc-quick-sale-drawer .qs-pos-scroll{overflow:hidden;padding:8px 14px}
 #gc-quick-sale-drawer .qs-amount-due{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px;padding:0 0 5px;margin:0}
 #gc-quick-sale-drawer .qs-amount-due>strong{font-size:1.7rem;grid-column:2;grid-row:1/3}
 #gc-quick-sale-drawer .qs-amount-due small{display:none}
 #gc-quick-sale-drawer .qs-pos-scroll>.qs-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:5px 0;border-top:1px solid var(--qs-line);font-size:.68rem}
 #gc-quick-sale-drawer .qs-pos-scroll>.qs-totals>div{display:grid;gap:2px;min-width:0}
 #gc-quick-sale-drawer .qs-pos-scroll>.qs-totals strong{white-space:nowrap}
 #gc-quick-sale-drawer .qs-payment-label{margin:5px 0;font-size:.72rem}
 #gc-quick-sale-drawer .qs-primary-tenders .qs-tender{min-height:48px;padding:6px}
 #gc-quick-sale-drawer .qs-other-tenders{margin:3px 0}
 #gc-quick-sale-drawer .qs-other-tenders summary{min-height:34px;padding:5px 0}
 #gc-quick-sale-drawer .qs-cash-entry{margin-top:5px}
 #gc-quick-sale-drawer .qs-cash-entry input,#gc-quick-sale-drawer .qs-cash-backspace{min-height:44px}
 #gc-quick-sale-drawer .qs-cash-controls{margin-top:5px}
 #gc-quick-sale-drawer .qs-keypad button{min-height:44px}
 #gc-quick-sale-drawer .qs-keypad{gap:4px}
 #gc-quick-sale-drawer .qs-cash-presets{display:none}
 #gc-quick-sale-drawer .qs-cash-controls{grid-template-columns:minmax(0,1fr)}
 #gc-quick-sale-drawer .qs-change{padding:5px 8px;margin-top:5px;min-height:32px}
 #gc-quick-sale-drawer .qs-attestation{margin:5px 0;min-height:28px}
 #gc-quick-sale-drawer .qs-pos-action{padding:7px 14px}
 #gc-quick-sale-drawer .qs-pos-action small{display:none}
}
@media(min-width:781px) {
 html[data-gc-pos-workstation="gotcracked-pos"] #gc-quick-sale-drawer {
   width:100vw!important;max-width:100vw!important;border-radius:0!important;border-left:0!important;
 }
 html[data-gc-pos-workstation="gotcracked-pos"] #gc-quick-sale-drawer .qs-workspace {
   grid-template-columns:minmax(0,1fr) 390px!important;
 }
}

/* Audited No Sale control stays inside the POS action area without squeezing tender buttons. */
.qs-no-sale-action{display:flex;align-items:end;gap:8px;flex-wrap:wrap;margin-top:10px;border-top:1px solid var(--border-color,#d3dce7);padding-top:10px}
.qs-no-sale-action label{display:grid;gap:4px;flex:1 1 150px;min-width:0;font-size:12px;font-weight:700}
.qs-no-sale-action select{width:100%;min-height:40px}
.qs-no-sale-action button{flex:0 1 auto;min-height:40px;white-space:normal}
@media(max-width:500px){.qs-no-sale-action button{flex:1 1 100%}}

.qs-no-sale-action[hidden]{display:none}
