/* Shared purchase availability and owner controls, using UpQuest's existing tokens. */
.sales-admin [hidden], .sales-availability[hidden], .sales-availability [hidden], .sales-page [hidden] { display:none !important; }
.sales-heading, .sales-control, .sales-history-toolbar, .sales-summary { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1rem; }
.sales-heading { margin-bottom:1rem; }
.sales-actions { display:flex; flex-wrap:wrap; gap:.6rem; }
.sales-heading h2 { margin:.2rem 0 0; }
.sales-eyebrow { margin:0; color:var(--subtle,#b6a68d); text-transform:uppercase; letter-spacing:.1em; font-size:.72rem; }
.sales-note { font-size:.87rem; color:var(--muted,#c8baa4); line-height:1.65; overflow-wrap:anywhere; }
.sales-control { justify-content:flex-start; border-bottom:1px solid var(--line); padding-bottom:1rem; }
.sales-toggle { display:inline-flex; align-items:center; gap:.65rem; cursor:pointer; font-weight:600; min-height:44px; position:relative; }
.sales-toggle input { position:absolute; width:2.8rem; height:1.6rem; opacity:0; margin:0; }
.sales-switch { display:inline-block; width:2.8rem; height:1.6rem; border:1px solid var(--steel,#a8834c); border-radius:2rem; background:#30291f; position:relative; flex:none; pointer-events:none; }
.sales-switch::after { content:""; position:absolute; width:1.1rem; height:1.1rem; border-radius:50%; top:.18rem; left:.2rem; background:#c8baa4; }
.sales-toggle input:checked + .sales-switch { background:#745526; border-color:var(--gold,#f0cf82); }
.sales-toggle input:checked + .sales-switch::after { left:1.43rem; background:#ffe6b2; }
.sales-toggle input:focus-visible + .sales-switch { outline:2px solid var(--focus,#ffe3a0); outline-offset:4px; }
.sales-toggle:has(input:disabled) { cursor:default; opacity:.65; }
.sales-feedback { margin:.8rem 0; color:var(--gold,#f0cf82); min-height:1.5rem; font-size:.9rem; }
.sales-feedback[data-error="true"] { color:var(--error-text,#ffd0d4); }
.sales-summary { align-items:flex-start; margin-top:1.25rem; gap:1rem 2rem; }
.sales-total { display:block; font-size:clamp(1.9rem,5vw,2.6rem); color:var(--gold,#f0cf82); line-height:1.25; font-variant-numeric:tabular-nums; }
.sales-badge { display:inline-block; padding:.35rem .65rem; border:1px solid var(--line-strong,#675130); border-radius:20px; background:var(--surface-low,#18130e); color:var(--gold,#f0cf82); font-size:.84rem; }
.sales-badge[data-state="open"] { border-color:var(--ok-border,#2f6b45); color:var(--ok-text,#c2f7d3); background:var(--ok-bg,#0f2419); }
.sales-badge[data-state="unavailable"] { border-color:var(--error-border,#83313b); color:var(--error-text,#ffd0d4); }
.sales-progress { appearance:none; width:100%; height:.65rem; border:0; border-radius:1rem; overflow:hidden; background:#393022; accent-color:var(--gold,#f0cf82); }
.sales-progress::-webkit-progress-bar { background:#393022; }
.sales-progress::-webkit-progress-value { background:var(--grad-buy,linear-gradient(90deg,#a8834c,#f0cf82)); }
.sales-progress::-moz-progress-bar { background:var(--gold,#f0cf82); }
.sales-details-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; margin:1.25rem 0; border-top:1px solid var(--line); padding-top:.25rem; }
.sales-admin h3 { color:var(--gold,#f0cf82); font-size:.95rem; margin:1.1rem 0 .4rem; }
.sales-reasons { color:var(--muted,#c8baa4); font-size:.85rem; line-height:1.6; padding-left:1.1rem; }
.sales-history { border-top:1px solid var(--line); padding-top:1rem; }
.sales-history summary { cursor:pointer; color:var(--gold,#f0cf82); font-weight:600; }
.sales-history-toolbar { margin:1rem 0; }
.sales-history-toolbar select { color:var(--text); background:var(--field,#140f0b); border:1px solid var(--line-strong); border-radius:5px; padding:.5rem; margin-left:.5rem; }
.sales-table-scroll { overflow-x:auto; max-width:100%; }
.sales-table { width:100%; border-collapse:collapse; font-size:.85rem; }
.sales-table th,.sales-table td { padding:.65rem .5rem; text-align:right; border-bottom:1px solid var(--line); font-variant-numeric:tabular-nums; }
.sales-table th { color:var(--muted); font-weight:500; white-space:nowrap; }
.sales-table td:first-child,.sales-table th:first-child { text-align:left; }
.sales-table td:nth-child(2) { overflow-wrap:anywhere; }
.sales-table tr[data-current="true"] { background:#e6b8570b; }
.sales-admin .btn:disabled { cursor:wait; opacity:.6; }
.sales-table .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.sales-availability { border:1px solid var(--line-strong,#675130); border-radius:10px; background:linear-gradient(145deg,#251d13,#15110d); padding:1.2rem 1.4rem; margin:1.3rem 0; text-align:left; }
.sales-availability h2,.sales-availability h3 { font-size:1.15rem; margin:0 0 .5rem; color:var(--gold,#f0cf82); }
.sales-availability p { margin:.5rem 0; }
.sales-availability-link { margin:.75rem 0; font-size:.85rem; text-align:left; }
.sales-availability-link a { color:var(--link); text-decoration:underline; text-underline-offset:3px; }
.sales-availability[data-state="open"] { border-color:var(--ok-border,#2f6b45); }
.sales-availability .sales-note a { color:var(--link); text-decoration:underline; }
.sales-page { padding:3rem 0 4rem; }
.sales-page .container { max-width:980px; }
.sales-page h1 { font-size:clamp(1.8rem,5vw,2.8rem); margin:.5rem 0; }
.sales-products { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:1rem; margin:1.5rem 0; }
.sales-product { border:1px solid var(--line-strong); border-radius:10px; padding:1.25rem; background:var(--surface-low); display:flex; flex-direction:column; align-items:flex-start; }
.sales-product h2 { font-size:1.15rem; color:var(--gold); margin:0 0 .5rem; }
.sales-product p { font-size:.9rem; color:var(--muted); margin:0 0 1.2rem; flex:1; }
.sales-product .btn { min-height:44px; width:100%; }
.sales-product form { width:100%; }
.sales-product button:disabled { background:#393225; color:var(--muted); border-color:var(--line-strong); box-shadow:none; cursor:default; opacity:.8; }
.sales-product [aria-disabled="true"] { opacity:.65; }
.sales-page-footer { border-top:1px solid var(--line); margin-top:2rem; padding-top:1rem; display:flex; flex-wrap:wrap; gap:1rem; color:var(--muted); font-size:.85rem; }
@media(max-width:620px) { .sales-details-grid { grid-template-columns:1fr; gap:0; } .sales-summary { display:block; } .sales-summary > div + div { margin-top:1rem; } .sales-heading > .btn { padding:.5rem .7rem; } .sales-table { font-size:.78rem; } .sales-table th,.sales-table td { padding:.6rem .3rem; } .sales-availability { padding:1rem; } .sales-history-toolbar { gap:.6rem; } }
