.sidebar-group--sale{--nav-soft:#fff1f2;--nav-line:#fecdd3;--nav-text:#9f1239;--nav-active:#be123c}
.sale-shell{display:grid;gap:10px;min-width:0}
.sale-shell [hidden]{display:none!important}
.sale-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:6px 10px;min-width:0}
.sale-count{font-size:16px;white-space:nowrap}
.sale-totals{color:#4f463e;font-weight:700;white-space:nowrap}
.sale-search{flex:0 1 240px;width:240px;max-width:320px;min-width:0;min-height:38px;padding:6px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;font:inherit}
select.sale-select{width:auto;max-width:220px;min-height:38px;padding:6px 9px;border:1px solid var(--line);border-radius:9px;background:#fff;font:inherit}
.sale-chips{display:flex;flex-wrap:wrap;gap:6px}
.sale-shell button{min-height:38px;border:1px solid var(--line);border-radius:9px;padding:6px 12px;background:var(--card);color:inherit;font:inherit;cursor:pointer}
.sale-shell button.primary{border:0;background:var(--accent);color:#fff;font-weight:700}
.sale-shell button:disabled{cursor:not-allowed;opacity:.5}
.sale-shell button.sale-chip{padding:6px 10px;border-radius:999px;white-space:nowrap}
.sale-shell button.sale-chip[aria-pressed="true"]{border-color:var(--accent);background:var(--accent);color:#fff;font-weight:700}
.sale-chip-count{font-variant-numeric:tabular-nums;opacity:.85}
.sale-notice{margin:0;padding:8px 10px;border-left:4px solid var(--accent2);border-radius:8px;background:#efe5d7;color:#5f5042;font-size:13px;max-width:72ch}
.sale-notice:empty{display:none;margin:0;padding:0}
.sale-push-inline{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;min-width:0;padding:8px 10px;border-left:3px solid var(--accent2);background:var(--card)}
.sale-push-message,.sale-push-scope,.sale-push-summary{margin:0;max-width:72ch;overflow-wrap:anywhere;font-size:13px}
.sale-push-message{font-weight:700}
.sale-push-summary{font-variant-numeric:tabular-nums}
.sale-push-inline .sale-actions:empty{display:none}
.sale-push-inline,.sale-push-inline .sale-actions{max-width:100%;box-sizing:border-box;min-width:0;flex-wrap:wrap}
.sale-push-inline button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.sale-pending{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:8px 10px;border-radius:8px;background:#f7d8d3;color:#8a2f26;font-size:13px}
.sale-empty{margin:0;padding:10px 12px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);max-width:72ch}
.sale-hint{margin:0;color:#8a2f26;font-size:13px}
.sale-hint:empty{display:none}
.sale-badge{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:#eee5d9;color:#654f3b;font-size:12px;font-weight:700;white-space:nowrap;vertical-align:middle}
.sale-group-state .sale-badge{margin-left:0}
.sale-badge--soldout,.sale-badge--skip{background:#e7e3dd;color:#5b544c}
.sale-badge--todo{background:#f7d8d3;color:#8a2f26}
.sale-badge--done{background:#dcefdc;color:#24622f}
.sale-facts{display:flex;flex-wrap:wrap;gap:2px 10px;margin:0;color:#4f463e;font-size:13px}
.sale-qty{font-weight:800}
.sale-prd{color:var(--muted);font-size:12px}
.sale-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:6px}
.sale-thumb{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;border-radius:10px;background:#efe8dd}
.sale-thumb-empty{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:12px}
.sale-thumb .sale-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

.sale-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(230px,100%),1fr));align-items:start;gap:10px}
.sale-card{display:grid;gap:8px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.sale-card-body{display:grid;gap:5px;min-width:0}
.sale-card-title{margin:0;font-size:15px;line-height:1.35;overflow-wrap:anywhere}
.sale-card-spec{margin:0;color:var(--muted);font-size:13px;overflow-wrap:anywhere}
.sale-listings{display:flex;flex-wrap:wrap;gap:4px;margin:0}
.sale-tag{padding:1px 7px;border:1px solid #fecdd3;border-radius:7px;background:#fff1f2;color:#9f1239;font-size:12px;white-space:nowrap}
.sale-card--soldout,.sale-card--skip{background:#f4f0ea;color:#6b635a}
.sale-card--soldout .sale-img,.sale-card--skip .sale-img{filter:grayscale(1);opacity:.6}
.sale-card--unpriced{border-color:#c98a80}

.sale-buyers{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(380px,100%),1fr));align-items:start;gap:10px}
.sale-buyer{display:grid;gap:8px;min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.sale-buyer-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-start;gap:2px 12px}
.sale-buyer-head h3{margin:0;font-size:17px;overflow-wrap:anywhere}
.sale-buyer-total{color:#4f463e;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.sale-group{display:grid;gap:6px;min-width:0;padding-top:8px;border-top:1px solid var(--line)}
.sale-group-title,.sale-group-state{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;margin:0;font-size:13px}
.sale-group-title strong{font-size:14px}
.sale-group-state{gap:6px}
.sale-group--settled{color:#6b635a}
.sale-lines{display:grid;gap:0;margin:0;padding:0;list-style:none}
.sale-line{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:2px 8px;padding:4px 0;border-top:1px dashed var(--line);font-size:13px}
.sale-line-no{flex:0 0 3.2em;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.sale-line-title{flex:1 1 9em;min-width:0;max-width:24em;overflow-wrap:anywhere}
.sale-line-units,.sale-line-amount,.sale-line-expiry{font-variant-numeric:tabular-nums;white-space:nowrap}
.sale-line-expiry{color:var(--muted)}
.sale-shell button.sale-minor{min-height:30px;padding:2px 9px;color:#8a2f26;font-size:12px}

.sale-batches{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));align-items:start;gap:10px}
.sale-batch{display:grid;gap:6px;min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.sale-batch-title{margin:0;font-size:17px;overflow-wrap:anywhere}
.sale-batch-sold{font-weight:700}
.sale-batch--delisted{background:#f4f0ea;color:#6b635a}
.sale-batch-more{min-width:0}
.sale-batch-more>summary{display:inline-flex;align-items:center;min-height:38px;padding:6px 12px;border:1px solid var(--line);border-radius:9px;background:var(--card);font-size:13px;font-weight:700;cursor:pointer}
.sale-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px;margin-top:8px}
.sale-shell button.sale-photo{min-height:0;padding:0;border-radius:10px;overflow:hidden}
.sale-thumb--photo{aspect-ratio:3/4;border-radius:0}
.sale-table{width:100%;margin-top:8px;border-collapse:collapse;font-size:13px}
.sale-table th,.sale-table td{padding:4px 6px;border-top:1px solid var(--line);text-align:left;vertical-align:top}
.sale-table th{border-top:0;color:var(--muted);font-weight:700;white-space:nowrap}
.sale-cell-no,.sale-cell-now{width:1%;white-space:nowrap;font-variant-numeric:tabular-nums}

.sale-dialog-sub{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px;margin:0;color:#4f463e;font-size:13px}
.sale-dialog-sub strong{font-size:15px;overflow-wrap:anywhere}
.sale-dialog-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}
.sale-dialog-row label{min-width:0}
.sale-dialog textarea{font:inherit;resize:vertical}
.sale-dialog--photo{width:min(960px,calc(100vw - 30px))}
.sale-photo-view{display:grid;gap:10px;max-height:calc(100vh - 30px);padding:16px;overflow:auto}
.sale-photo-full{display:block;max-width:100%;height:auto;margin:0 auto;border-radius:10px}

@media(max-width:720px){
  .sale-shell button,.sale-select,.sale-search,.sale-batch-more>summary{min-height:44px}
  .sale-shell button.sale-minor{min-height:44px;padding:6px 12px}
  .sale-shell button.sale-photo{min-height:0}
  .sale-search{flex:1 1 120px;width:auto;max-width:none}
  select.sale-select{flex:0 1 auto;min-width:0;max-width:46%}
  .sale-chips{flex:1 0 100%;flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}
  .sale-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .sale-card{padding:8px}
  .sale-buyers,.sale-batches{grid-template-columns:minmax(0,1fr)}
  .sale-line-title{flex-basis:100%;max-width:none}
}
