/* Retail shopping entry points. Scoped to avoid changing buyer/admin tables. */
.retail-inventory .inventory-help-link { color:#fff; border-color:#fff; }
.retail-inventory .inventory-help-link:hover,
.retail-inventory .inventory-help-link:focus-visible { color:#14141a; background:#fff; }
.retail-stone-name, .retail-total-label, .retail-stone-details { display:none; }
.inventory-budget, .inventory-filter-label-short { display:none; }
.retail-filters { border:1px solid var(--line); border-radius:8px; margin:16px 0; }
.retail-filters summary { cursor:pointer; padding:16px; font-size:1rem; font-weight:600; }
.retail-filters .inv-toolbar { margin:0; border:0; }
.retail-media-label { display:none; }
.retail-cart-actions { display:flex; flex-direction:column; gap:16px; min-width:260px; }
.retail-cart-actions > .btn-primary { order:-1; min-height:48px; }
.retail-cart-secondary { text-align:center; font-size:0.95rem; padding:8px; }
.retail-home .hero { padding:64px 0 40px; min-height:0; }
.retail-home .hero-sub { max-width:620px; }
.retail-shapes { padding:32px 0; }
.retail-shapes h2 { margin:0 0 8px; }
.retail-shapes p { font-size:1rem; max-width:680px; }
.retail-shape-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-top:20px; }
.retail-shape-grid a { display:flex; flex-direction:column; align-items:center; gap:12px; padding:16px; border:1px solid var(--line); border-radius:8px; text-decoration:none; }
.retail-shape-grid img { object-fit:contain; width:100%; height:110px; }
.retail-shape-grid span { font-size:1rem; font-weight:600; }
.retail-shapes .retail-shape-note { font-size:0.875rem; color:var(--muted); }
@media(max-width:800px) {
 .retail-inventory .inventory-controls { display:grid; grid-template-columns:minmax(0,1fr) 92px; align-items:end; gap:8px; margin:12px 0; }
 .retail-inventory .inventory-filter-label-long { display:none; }
 .retail-inventory .inventory-filter-label-short { display:inline; }
 .retail-inventory .inventory-budget { display:flex; align-items:end; gap:6px; min-width:0; }
 .retail-inventory .inventory-budget label { display:flex; flex-direction:column; gap:5px; min-width:0; flex:1; font-size:13px; font-weight:600; }
 .retail-inventory .inventory-budget input { width:100%; min-width:0; box-sizing:border-box; min-height:44px; border:1px solid var(--line); border-radius:6px; padding:8px; font:16px Inter,sans-serif; }
 .retail-inventory .inventory-budget .btn { min-height:44px; padding:8px; font-size:12px; letter-spacing:0; }
 .retail-inventory .inventory-controls .retail-filters { margin:0; }
 .retail-inventory .inventory-controls .retail-filters summary { padding:12px 8px; min-height:44px; box-sizing:border-box; font-size:13px; }
 .retail-inventory .inventory-controls .retail-filters[open] { grid-column:1/-1; }
 .retail-inventory .page-header { padding:24px 0 16px; }
 .retail-inventory .page-header h1 { font-size:2rem; line-height:1.1; margin:8px 0; }
 .retail-inventory .page-header p { font-size:1rem; line-height:1.45; }
 .retail-inventory .inventory-section { padding-top:12px; }
 .retail-inventory .shape-filter-panel { padding:0; margin:0 0 12px; border:0; }
 .retail-inventory .shape-filter-heading { display:none; }
 .retail-inventory .shape-chip-row { display:flex; flex-wrap:nowrap; overflow-x:auto; gap:8px; padding:4px 0; }
 .retail-inventory .shape-chip { flex:0 0 72px; padding:8px 4px; min-height:44px; gap:4px; font-size:0.875rem; }
 .retail-inventory .shape-icon-well { width:48px; height:40px; }
 .retail-inventory .shape-photo { max-height:40px; }
 .retail-inventory .quick-specs { display:none; }
 .retail-inventory .inv-meta { margin:12px 0; font-size:0.875rem; }
 .retail-inventory .cart-status-bar { padding:10px; margin:10px 0; }
 .retail-inventory .cart-status-bar span { display:none; }
 .retail-inventory .inv-sort-tip { display:none; }
 .retail-inventory .retail-media-label { display:block; position:absolute; bottom:10px; left:10px; padding:5px 9px; border-radius:4px; background:#191919; color:#fff; font-size:0.875rem; }
 .retail-inventory .inv-table td[data-label="Cut"], .retail-inventory .inv-table td[data-label="Price/ct"] { display:none; }
 .retail-inventory .inv-table td[data-label="Total"] { grid-column:1/-1; width:100%; }
 .retail-inventory .inv-table td[data-label="Total"]::before { content:"Stone total"; }
 .retail-inventory .inv-table td[data-label="Video"] .video-thumb { object-fit:contain; background:#fff; }
 .retail-home .hero { padding:32px 0 24px; }
 .retail-home .hero h1 { font-size:2.65rem; line-height:1.05; }
 .retail-home .hero-eyebrow { font-size:0.875rem; letter-spacing:0.04em; }
 .retail-home .hero-sub { font-size:1rem; line-height:1.5; margin:16px auto; }
 .retail-home .hero-trust { margin-top:20px; gap:10px; }
 .retail-home .hero-trust li { font-size:0.75rem; }
 .retail-shape-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .retail-shape-grid a { padding:12px 8px; }
 .retail-shapes { padding:24px 0; }
 .retail-cart-actions { width:100%; min-width:0; }
}
@media(max-width:800px) {
 .retail-inventory .cart-status-bar.is-empty { display:none; }
 .retail-inventory .cart-status-bar { flex-direction:row; align-items:center; }
 .retail-inventory .cart-status-bar .btn { width:auto; min-width:0; }
 .retail-inventory .shape-chip::after { display:none; }
 .retail-inventory .shape-chip { min-height:80px; }
 .retail-inventory .shape-filter-panel { background:none; box-shadow:none; }
 .retail-inventory .inv-meta { line-height:1.4; }
}
@media(max-width:800px) {
 .retail-inventory .inv-scroll-hint { display:none; }
}
.retail-home .hero .container { padding-top:0; padding-bottom:0; }
@media(max-width:800px) {
 .retail-home .hero-trust { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .retail-home .hero-trust li { padding:8px 6px; border-radius:4px; font-size:0.75rem; letter-spacing:0; }
 .retail-home .hero-eyebrow { padding:0; border:0; border-radius:0; }
 .retail-inventory .shape-chip.is-active > span:last-child::after { display:none; }
 .retail-cart .page-hero.compact { padding:24px 0 8px; }
 .retail-cart > .section { padding:16px 0 32px; }
 .retail-cart .inv-table td[data-label="Price/ct"] { display:none; }
 .retail-cart .inv-table td[data-label="Total"] { grid-column:1/-1; width:100%; }
}

.retail-inventory .inv-video-frame { overflow:visible; margin-bottom:48px; }
.retail-inventory .inv-media-help { position:absolute; top:100%; left:0; right:0; margin:8px 0; padding:0 8px; font-size:13px; line-height:1.4; text-align:center; }
.retail-inventory .inv-media-help a { text-decoration:underline; }

@media(max-width:800px) {
 .retail-inventory .page-header .breadcrumb { display:none; }
 .retail-inventory .page-header { padding:16px 0; }
 .retail-inventory .inv-table td[data-label="Total"] {
  order:-2; white-space:normal; padding:14px; gap:5px;
 }
 .retail-inventory .inv-table td[data-label="Total"]::before { content:none; }
 .retail-inventory .retail-stone-name { display:block; font-size:1.05rem; line-height:1.35; font-weight:600; }
 .retail-inventory .retail-total-label { display:block; font-size:0.8rem; color:#59534a; }
 .retail-inventory .inv-table td[data-label="Total"] strong { font-size:1.35rem; line-height:1.25; }
 .retail-inventory .retail-stone-details {
  display:inline-flex; align-items:center; min-height:44px; font-size:1rem;
  color:#14141a; font-weight:600; text-decoration:underline; text-underline-offset:3px;
 }
 .retail-inventory .retail-stone-details:focus-visible { outline:2px solid #14141a; outline-offset:2px; }
 .retail-inventory .retail-filters input,
 .retail-inventory .retail-filters select { font-size:16px; }
}
@media(max-width:360px) {
 .retail-inventory .site-header .brand { font-size:14px; letter-spacing:.02em; gap:6px; }
 .retail-inventory .site-header .nav { padding-left:12px; padding-right:12px; gap:8px; }
 .retail-inventory .site-header .nav-cta { gap:6px; }
}
