/* Checkout layout. Colours, controls and surfaces come from core/theme.css. */
#search{font-size:1.2rem;min-height:56px;padding:.7rem 1rem;border-radius:var(--radius)}
.layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:1rem;padding:1rem}
@media (max-width:960px){.layout{grid-template-columns:1fr}}
.left,.right{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem;box-shadow:var(--shadow);min-width:0}
.right{align-self:start;position:sticky;top:76px}
.results{list-style:none;margin:.5rem 0;padding:0;border:1px solid var(--line);border-radius:var(--radius-sm);max-height:240px;overflow:auto;background:var(--card)}
.results:empty{display:none}
.results li{padding:.6rem .9rem;display:flex;justify-content:space-between;gap:1rem;cursor:pointer}
.results li.active,.results li:hover{background:var(--accent);color:var(--accent-fg)}
.cart{margin-top:.9rem}
.cart input{width:5.4rem;text-align:right;min-height:36px;padding:.25rem .5rem}
.empty{color:var(--muted);text-align:center;padding:2rem 0}
.totals{display:grid;grid-template-columns:1fr auto;gap:.35rem .8rem;margin:.6rem 0}
.totals dt{color:var(--muted)}
.totals dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.totals .grand{font-size:1.7rem;font-weight:800;color:var(--fg)}
.pay-row{display:flex;gap:.5rem;margin:.4rem 0}.pay-row input,.pay-row select{flex:1;min-width:0}
.right>label{display:grid;gap:.3rem;margin:.4rem 0}
.failed{margin:.5rem 1rem;padding:.7rem .9rem;border:1px solid var(--bad);border-radius:var(--radius-sm);background:var(--bad-soft)}
.failed-row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin:.3rem 0}.failed-row span{flex:1}
.receipt{display:none}
@media print{
  body.pos>*:not(#receipt){display:none!important}
  .receipt{display:block!important;color:#000;background:#fff;font:12px/1.3 monospace;margin:0;padding:2mm}
  .receipt.w58{width:58mm}.receipt.w80{width:80mm}
  .receipt table{width:100%;border-collapse:collapse;box-shadow:none;border:0}.receipt td{padding:1px 0;border:0}
  .receipt .r{text-align:right}.receipt hr{border:0;border-top:1px dashed #000}
  @page{margin:0}
}

/* topbar polish */
.topbar label{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--muted);margin:0}
.topbar select{width:auto;min-height:38px}
.topbar>a{padding:.45rem .8rem;border-radius:var(--radius-sm);font-weight:600;color:var(--fg)}
.topbar>a:hover{background:var(--accent-soft);color:var(--accent);text-decoration:none}
.topbar .hint{font-size:.76rem;padding:.2rem .5rem;border:1px solid var(--line);border-radius:6px;background:var(--bg)}
.topbar>strong::before{content:"S";display:inline-grid;place-items:center;width:30px;height:30px;margin-right:.55rem;border-radius:9px;
  color:#fff;font-weight:800;background:linear-gradient(135deg,#6366f1,#a855f7);vertical-align:middle}
.layout{max-width:1500px;margin:0 auto}
