/* Shop revamp (2026-11-11). New file. Mobile first; every control is at least 44 px tall. Reuses the .sg tokens where present. */
:root{--rv-ink:#16151a;--rv-muted:#4f4d46;--rv-paper:#f4f1e8;--rv-card:#faf8f1;--rv-line:#cecbbd;--rv-pink:#c8106e;--rv-lime:#b6ff3b;--rv-purple:#6b3fd0;--rv-cyan:#aef2ff;--rv-night:#0b0a10}
.rv{color:var(--rv-ink);margin:0 0 32px;min-width:0}
.rv *,.rv *::before,.rv *::after{box-sizing:border-box}
.rv-h{font:400 clamp(24px,5.5vw,34px)/1.1 Georgia,serif;letter-spacing:-.02em;margin:0 0 12px}
.rv-sub{font-size:15px;line-height:1.5;margin:0 0 14px;max-width:620px}
.rv-note{font-size:12px;line-height:1.5;color:var(--rv-muted);margin:8px 0}
.rv-btn,.rv-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;font-family:inherit;font-weight:700;font-size:14px;line-height:1.2;text-decoration:none;text-underline-offset:3px;cursor:pointer}
.rv-btn{border:2px solid var(--rv-ink);background:var(--rv-ink);color:#fff}
.rv-link{border:0;background:transparent;color:inherit;text-decoration:underline;padding:10px 6px}
.rv-btn:focus-visible,.rv-link:focus-visible,.rv-opt:focus-visible,.rv-vibe:focus-visible,.rv-size summary:focus-visible,.rv-size input:focus-visible,.rv-size select:focus-visible{outline:3px solid var(--rv-pink);outline-offset:3px}
/* hero */
.shop-hero h1 em{font-style:italic;color:var(--rv-pink,#c8106e)}
.shop-hero .c-actions .rv-cta-quiet{font-size:14px}
body.cl-shop .shop-hero h1 em{margin-left:0}
@media(max-width:700px){
  body.cl-shop .shop-hero .c-lead{display:block;font-size:15px;line-height:1.45;margin:4px 0 10px}
  body.cl-shop .shop-hero .c-actions{display:flex;margin:0}
  body.cl-shop .shop-hero .c-actions .c-button{min-height:48px;width:100%;justify-content:center}
  body.cl-shop .shop-hero .rv-cta-quiet{display:none}
}
/* the earlier chip row duplicates this section */
body .gs-lanes,body nav.sg.gs-lanes{display:none!important}
/* vibe row */
.rv-vibes{list-style:none;margin:0 0 20px;padding:0;display:grid;grid-template-columns:1fr;gap:10px}
.rv-vibe{display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center;min-height:64px;padding:10px 14px;border:2px solid var(--rv-ink);background:var(--rv-card);color:var(--rv-ink);text-decoration:none}
.rv-vibe strong{font-size:16px;grid-column:1}
.rv-vibe span{font-size:13px;line-height:1.35;color:var(--rv-muted);grid-column:1}
.rv-vibe em{grid-column:2;grid-row:1 / span 2;font-style:normal;font-size:12px;font-weight:700;white-space:nowrap}
@media(hover:hover){.rv-vibe:hover{background:var(--rv-ink);color:#fff}.rv-vibe:hover span{color:#ddd}}
/* drop shelf */
.rv-drop{display:grid;grid-template-columns:1fr;gap:14px;margin:0 0 26px;scroll-margin-top:12px}
.rv-drop-card{border:2px solid var(--rv-ink);padding:16px;background:var(--rv-card);min-width:0}
.rv-tag{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;margin:0 0 10px;background:var(--rv-ink);color:#fff}
.rv-drop-card h3{font:400 26px/1.1 Georgia,serif;margin:0 0 8px;letter-spacing:-.02em}
.rv-drop-card p{font-size:15px;line-height:1.5;margin:0 0 10px}
.rv-cards,#rv-esa-live{list-style:none;margin:10px 0 12px;padding:0;display:grid;grid-template-columns:1fr;gap:10px}
.rv-card{display:flex;flex-direction:row;border:1px solid var(--rv-line);background:#fff;min-width:0}
.rv-card img{width:96px;height:96px;object-fit:cover;flex:0 0 96px;background:#eee}
.rv-card-body{display:flex;flex-direction:column;gap:3px;padding:8px 10px;min-width:0;align-items:flex-start}
.rv-card-title{margin:0;font-size:14px;font-weight:700;line-height:1.3}
.rv-card-price{margin:0;font-size:13px;color:var(--rv-muted)}
.rv-card-why{margin:0;font-size:12px;line-height:1.4;color:var(--rv-muted)}
.rv-card .rv-btn{min-height:44px;padding:8px 12px;font-size:13px;margin-top:2px}
/* coming drop: neon on night */
.rv-coming{background:var(--rv-night);color:#f6f3ff;border-color:var(--rv-pink)}
.rv-coming .rv-tag{background:var(--rv-lime);color:var(--rv-night)}
.rv-coming h3{color:#fff}
.rv-artist{font:700 13px/1.2 ui-monospace,Consolas,monospace;letter-spacing:.12em;color:var(--rv-cyan);margin:0 0 4px}
.rv-sub-title{font-size:15px;font-style:italic;color:#d9d2ff;margin:0 0 12px}
.rv-drafts{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.rv-drafts figure{margin:0}
.rv-drafts img{display:block;width:100%;height:auto;border:2px solid var(--rv-pink);background:#16151a}
.rv-drafts li:nth-child(2) img{border-color:var(--rv-lime)}
.rv-drafts figcaption{font-size:12px;line-height:1.4;color:#d9d2ff;margin-top:4px}
.rv-coming .rv-fine{font-size:13px;color:#d9d2ff}
.rv-coming .rv-btn{background:#fff;color:var(--rv-night);border-color:#fff}
.rv-coming .rv-link{color:#fff}
.rv-coming .rv-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
/* nerd quiz */
.rv-quiz{border:2px solid var(--rv-ink);padding:16px;background:var(--rv-card);margin:0 0 20px;scroll-margin-top:12px}
.rv-stage{display:flex;flex-direction:column;gap:6px}
.rv-progress{margin:0;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--rv-muted)}
.rv-q{font:400 22px/1.2 Georgia,serif;margin:0 0 6px;outline:none}
.rv-opts{display:flex;flex-direction:column;gap:8px}
.rv-opt{display:flex;align-items:center;width:100%;min-height:52px;padding:10px 14px;text-align:left;font-family:inherit;font-size:15px;line-height:1.35;border:2px solid var(--rv-ink);background:#fff;color:var(--rv-ink);cursor:pointer}
@media(hover:hover){.rv-opt:hover{background:var(--rv-ink);color:#fff}}
.rv-verdict{font-size:16px;line-height:1.5;margin:0 0 6px}
.rv-result-lead{font-size:13px;font-weight:700;margin:10px 0 0}
.rv-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.rv-gift{margin:0 0 20px}
.rv-gift details.gs-picker{border-width:2px}
/* size helper (inside a product view) */
.rv-size{border:1px dashed #817d71;background:#faf8f1;margin:10px 0}
.rv-size summary{min-height:44px;display:flex;align-items:center;padding:0 12px;font-weight:700;font-size:14px;cursor:pointer}
.rv-size-body{padding:0 12px 12px;display:flex;flex-direction:column;gap:8px}
.rv-size-how{font-size:13px;line-height:1.5;margin:0}
.rv-size-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.rv-size-row label{flex:1 0 100%;font-size:13px;font-weight:700}
.rv-size-row input{min-height:44px;width:7.5em;padding:0 10px;font-size:16px;border:1px solid #817d71;background:#fff}
.rv-size-row select{min-height:44px;padding:0 8px;font-size:15px;border:1px solid #817d71;background:#fff}
.rv-size-msg{font-size:13px;line-height:1.5;margin:0}
.rv-size-msg .rv-btn{margin-top:6px;display:flex;width:fit-content}
@media(min-width:820px){
  .rv-vibes{grid-template-columns:repeat(3,1fr)}
  .rv-drop{grid-template-columns:1fr 1fr;align-items:start}
  #rv-esa-live,.rv-cards{grid-template-columns:1fr}
  .rv-quiz .rv-cards{grid-template-columns:repeat(3,1fr)}
  .rv-quiz .rv-card{flex-direction:column}
  .rv-quiz .rv-card img{width:100%;height:auto;aspect-ratio:1;flex:none}
  .rv-opts{display:grid;grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){.rv *{transition:none!important;animation:none!important}}

/* tee strip under the H1 (static fallback, upgraded by JS) */
.rv-strip{margin:6px 0 10px}
.rv-strip-h{margin:0 0 6px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--rv-muted)}
.rv-strip-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.rv-sc{display:flex;flex-direction:column;gap:3px;min-width:0}
.rv-sc-link{display:block;color:inherit;text-decoration:none;min-height:44px}
.rv-sc-link img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;background:#e9e6dc}
.rv-sc-name{display:block;font-size:12px;line-height:1.25;font-weight:700;margin-top:4px;overflow-wrap:anywhere}
.rv-sc-price{font-size:12px;color:var(--rv-muted);min-height:1.2em}
.rv-sc .rv-btn{min-height:44px;padding:8px 6px;font-size:12px;width:100%}
.rv-textlink{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;font-weight:700;font-size:14px;color:inherit;text-underline-offset:3px}
.rv-trust{font-size:13px;line-height:1.45;color:var(--rv-muted);margin:6px 0 0}
body.cl-shop .shop-hero .c-actions{align-items:center;gap:6px 16px;flex-wrap:wrap}
@media(min-width:820px){.rv-strip-list{max-width:620px}}
.rv-gift[hidden]{display:none}
.rv-sc .rv-btn{margin-top:auto}
