﻿
/* Public marketplace. Shared application tokens keep light and dark themes aligned. */
[hidden] { display:none !important; }
.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; }
.skip-link { position:fixed; left:16px; top:-100px; padding:12px 18px; background:var(--text); color:var(--bg); z-index:10000; }
.skip-link:focus { top:10px; }
#page { outline:none; scroll-margin-top:80px; }
.public-home,.public-discovery { --public-space:clamp(44px,7vw,100px); }
.public-home a:focus-visible,.public-home button:focus-visible,.public-discovery a:focus-visible,.public-discovery button:focus-visible, input:focus-visible,select:focus-visible,summary:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.public-home h1,.public-discovery h1 { font-family:var(--font-display); font-weight:600; letter-spacing:-.045em; }
.public-home h2,.public-discovery h2 { font-family:var(--font-display); font-weight:600; letter-spacing:-.025em; }
.public-home h1 em,.public-home h2 em,.public-discovery h1 em { color:var(--accent); font-style:italic; }
.public-home .eyebrow { font-size:10px; letter-spacing:.16em; color:var(--muted); }
.market-hero { display:grid; grid-template-columns:1.08fr 1fr; gap:clamp(28px,5vw,76px); align-items:center; padding:40px 0 54px; }
.hero-kicker { display:flex; align-items:center; gap:10px; }
.tiny-mark { display:inline-block; width:7px; height:17px; background:var(--accent); transform:skewY(-20deg); }
.market-hero h1 { font-size:clamp(42px,4.9vw,70px); line-height:1.07; margin:24px 0; max-width:650px; }
.market-intro { max-width:470px; font-size:16px; line-height:1.8; color:var(--muted); }
.market-search,.discovery-search { display:flex; align-items:center; gap:12px; border:1px solid var(--hairline-strong); background:var(--card); padding:7px 7px 7px 16px; }
.market-search { margin:28px 0 18px; max-width:550px; }
.market-search > svg,.discovery-search > svg { flex:none; color:var(--muted); }
.market-search input,.discovery-search input { flex:1; min-width:0; width:100%; border:0; outline:0; background:none; padding:10px 0; color:var(--text); font-size:14px; }
.market-search input::placeholder,.discovery-search input::placeholder { color:var(--muted); opacity:1; }
.market-search .btn,.discovery-search .btn { flex:none; }
.hero-quick-links { display:flex; gap:24px; flex-wrap:wrap; font-size:12px; font-weight:500; }
.hero-quick-links a { display:flex; gap:10px; align-items:center; }
.hero-quick-links a:hover,.text-link:hover { color:var(--accent); }
.market-pulse { display:flex; flex-wrap:wrap; gap:8px 18px; font-size:11px; color:var(--muted); border-top:1px solid var(--hairline); padding-top:20px; margin-top:32px; }
.market-pulse > span:first-child { width:100%; font-family:'JetBrains Mono',monospace; text-transform:uppercase; font-size:9px; letter-spacing:.12em; }
.market-pulse .has-live::before { content:''; display:inline-block; width:5px; height:5px; border-radius:50%; background:var(--teal); margin-right:7px; }
.market-pulse strong { color:var(--text); font-weight:600; }
.hero-selection { min-width:0; padding:12px; background:var(--card-2); border:1px solid var(--hairline); }
.hero-loading { aspect-ratio:4/3; margin-bottom:14px; }
.hero-selection > .eyebrow { padding:6px 10px; }
.featured-auction { display:block; }
.featured-caption { display:flex; justify-content:space-between; gap:12px; padding:6px 4px 16px; }
.featured-caption .eyebrow { font-size:9px; }
.featured-image { position:relative; aspect-ratio:4/3; overflow:hidden; background:var(--card); }
.featured-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.featured-auction:hover .featured-image img { transform:scale(1.025); }
.featured-timer { display:flex; align-items:center; gap:7px; position:absolute; left:12px; bottom:12px; background:#10272c; color:#fff; padding:8px 12px; font:11px 'JetBrains Mono',monospace; }
.featured-description { padding:18px 6px 6px; }
.featured-description h2 { font-size:clamp(22px,2.2vw,30px); line-height:1.2; margin:8px 0 18px; }
.featured-price { display:flex; align-items:end; justify-content:space-between; gap:12px; border-top:1px solid var(--hairline-strong); padding-top:16px; }
.featured-price > div { display:grid; gap:4px; }
.featured-price > div > span { color:var(--muted); font-size:11px; }
.featured-price strong { font-size:24px; color:var(--text); font-weight:600; letter-spacing:-.035em; }
.featured-link { display:flex; align-items:center; gap:10px; font-size:11px; font-weight:500; }
.no-product-photo { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:16px; height:100%; color:var(--muted); font-size:11px; background:var(--card-2); }
.hero-empty { min-height:440px; padding:32px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }
.hero-empty > span { font:bold 110px 'Space Grotesk',sans-serif; letter-spacing:-.12em; color:var(--hairline-strong); margin-bottom:30px; }
.hero-empty > span b { color:var(--accent); font-weight:inherit; }
.hero-empty h2 { font-size:38px; margin:14px 0 24px; }
.category-section { border-block:1px solid var(--hairline); padding:26px 0; }
.category-rail { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); }
.category-tile { display:flex; flex-direction:column; align-items:center; gap:7px; padding:10px 6px; text-align:center; border-right:1px solid var(--hairline); }
.category-tile:last-child { border:0; }
.category-tile > svg { margin-bottom:5px; color:var(--accent); }
.category-tile > span { font-size:12px; font-weight:500; }
.category-tile small { font-size:10px; color:var(--muted); }
.category-tile:hover { background:var(--card-2); }
.home-section { padding:var(--public-space) 0; }
.section-heading { display:flex; justify-content:space-between; gap:30px; align-items:end; margin-bottom:30px; }
.section-heading h2,.confidence-copy h2,.home-faq h2 { font-size:clamp(30px,3vw,44px); line-height:1.13; margin-top:12px; }
.text-link { display:inline-flex; align-items:center; gap:14px; background:none; border:0; color:var(--text); font-size:12px; font-weight:500; padding:5px 0; }
.market-tabs { display:flex; gap:26px; border-bottom:1px solid var(--hairline); margin-bottom:26px; }
.market-tabs button { border:0; border-bottom:2px solid transparent; padding:0 0 12px; background:none; color:var(--muted); font-size:12px; }
.market-tabs button.active { border-color:var(--accent); color:var(--text); }
.market-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:26px 18px; }
.product-skeleton { aspect-ratio:3/4; }
.product-card.auction-card { border:1px solid var(--hairline); border-radius:0; transition:border-color .2s; min-width:0; }
.product-card.auction-card:hover { border-color:var(--hairline-strong); background:var(--card); }
.product-card-link { display:block; height:100%; }
.product-image { position:relative; aspect-ratio:4/3; overflow:hidden; background:var(--card-2); }
.product-image img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.product-card:hover img { transform:scale(1.035); }
.product-time { display:flex; align-items:center; gap:6px; position:absolute; right:9px; bottom:9px; padding:6px 8px; color:#fff; background:#10272c; font:10px 'JetBrains Mono',monospace; }
.product-description { padding:16px; }
.product-category { display:flex; justify-content:space-between; gap:6px; align-items:start; font:9px 'JetBrains Mono',monospace; text-transform:uppercase; letter-spacing:.1em; color:var(--muted); }
.verified-seller { display:inline-flex; align-items:center; gap:4px; color:var(--teal); font-size:8px; letter-spacing:0; }
.product-description h3 { margin:10px 0 6px; color:var(--text); font-family:'Inter',sans-serif; font-size:15px; font-weight:500; line-height:1.4; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; min-height:42px; }
.product-location { font-size:11px; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.product-price-row { display:flex; align-items:end; justify-content:space-between; gap:8px; margin-top:20px; }
.product-price-row > div { display:grid; gap:5px; min-width:0; }
.product-price-row > div > span { font-size:10px; color:var(--muted); }
.product-price-row strong { font-size:21px; font-weight:600; letter-spacing:-.035em; line-height:1.1; overflow-wrap:anywhere; }
.product-bids { color:var(--muted); font-size:10px; white-space:nowrap; }
.product-seller { display:flex; justify-content:space-between; gap:10px; border-top:1px solid var(--hairline); padding-top:12px; margin-top:16px; font-size:11px; color:var(--muted); }
.product-seller > span:first-child { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.product-seller > span:last-child { color:var(--accent); }
.journey-section { border-top:1px solid var(--hairline); }
.journey-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; }
.journey-grid article { border-top:1px solid var(--hairline-strong); padding-top:20px; }
.journey-number { font:11px 'JetBrains Mono',monospace; color:var(--accent); }
.journey-grid h3 { font-size:23px; font-weight:600; margin:24px 0 12px; }
.journey-grid p { font-size:13px; color:var(--muted); line-height:1.8; max-width:340px; }
.seller-band { display:grid; grid-template-columns:1.4fr 1fr; gap:36px; background:#102f35; color:#fffaf0; padding:clamp(28px,5vw,68px); }
.seller-band .eyebrow { color:#b8ccca; }
.seller-band h2 { font-size:clamp(32px,3.5vw,50px); line-height:1.13; color:inherit; margin:18px 0 22px; }
.seller-band h2 em { color:#e4be75; }
.seller-band > div > p:not(.eyebrow) { color:#b8ccca; font-size:14px; line-height:1.8; max-width:480px; }
.seller-band .btn { margin-top:28px; background:#e4be75; color:#10272c; }
.seller-note { border-left:1px solid #ffffff24; padding-left:36px; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:left; }
.seller-note-mark { font:bold clamp(90px,10vw,150px) 'Space Grotesk',sans-serif; letter-spacing:-.1em; line-height:1; color:#ffffff18; }
.seller-note-mark > span { color:#e4be75; }
.seller-note > p { margin-top:20px; font-family:var(--font-display); font-size:22px !important; color:#e3ebe6 !important; line-height:1.5; }
.confidence-section { display:grid; grid-template-columns:1fr 1fr; gap:70px; }
.confidence-copy > p:not(.eyebrow) { max-width:400px; color:var(--muted); font-size:14px; line-height:1.8; margin:24px 0; }
.confidence-list article { display:flex; gap:22px; padding:24px 0; border-top:1px solid var(--hairline); }
.confidence-list article > span { font:10px 'JetBrains Mono',monospace; color:var(--accent); padding-top:3px; }
.confidence-list h3 { font-family:'Inter',sans-serif; font-weight:500; font-size:16px; margin-bottom:9px; }
.confidence-list p { color:var(--muted); font-size:13px; line-height:1.8; }
.selling-conditions { border-top:1px solid var(--hairline); }
.selling-conditions .section-heading > p { font-size:13px; line-height:1.8; color:var(--muted); max-width:400px; }
.trial-notice { display:flex; align-items:center; gap:16px; padding:20px 24px; background:var(--card-2); border:1px solid var(--hairline); font-size:12px; line-height:1.7; margin-bottom:18px; color:var(--muted); }
.trial-notice > svg { flex:none; color:var(--accent); }
.trial-notice strong { font-weight:500; color:var(--text); }
.public-plan-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.public-plan { padding:26px; border:1px solid var(--hairline); background:var(--card); }
.public-plan h3 { font-size:25px; margin-top:14px; }
.public-plan-price { font-size:28px; letter-spacing:-.025em; margin:24px 0; }
.public-plan-price span { font-size:12px; color:var(--muted); letter-spacing:0; }
.conditions-note { font-size:11px; line-height:1.8; color:var(--muted); margin-top:18px; }
.home-faq { display:grid; grid-template-columns:1fr 1.2fr; gap:60px; padding-top:24px; }
.home-faq details { border-bottom:1px solid var(--hairline); padding:20px 0; }
.home-faq details:first-child { border-top:1px solid var(--hairline); }
.home-faq summary { display:flex; gap:20px; justify-content:space-between; align-items:center; cursor:pointer; font-size:14px; list-style:none; }
.home-faq summary::-webkit-details-marker { display:none; }
.home-faq summary span { color:var(--accent); font-size:20px; }
.home-faq details[open] summary span { transform:rotate(45deg); }
.home-faq details > p { font-size:13px; color:var(--muted); line-height:1.8; padding-top:16px; max-width:520px; }
.public-footer { margin-top:28px; border-top:1px solid var(--hairline); }
.public-footer-top { display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:30px; padding:48px 0; }
.public-footer-top > div > p:not(.eyebrow) { margin-top:18px; font-size:12px; color:var(--muted); line-height:1.8; }
.public-footer-top > div > a:not(.brand) { display:block; color:var(--muted); font-size:12px; padding:6px 0; }
.public-footer-top > div > a:hover { color:var(--accent); }
.public-footer-top .eyebrow { margin-bottom:14px; }
.public-footer-bottom { display:flex; justify-content:space-between; align-items:center; gap:20px; border-top:1px solid var(--hairline); padding:18px 0; font-size:10px; color:var(--muted); }
.public-footer-bottom button { font-size:10px; }
.public-empty { grid-column:1/-1; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; min-height:280px; padding:40px 20px; border:1px solid var(--hairline); color:var(--muted); }
.public-empty h3 { font:600 27px var(--font-display); color:var(--text); margin:20px 0 10px; }
.public-empty p { font-size:13px; line-height:1.8; max-width:460px; margin-bottom:22px; }
.discovery-heading { padding:30px 0 38px; }
.discovery-heading h1 { font-size:clamp(38px,4.5vw,60px); line-height:1.08; margin:20px 0; }
.discovery-heading > p:last-child { max-width:550px; font-size:14px; line-height:1.8; color:var(--muted); }
.discovery-controls { position:sticky; top:60px; z-index:20; background:var(--bg); padding:12px 0 0; border-bottom:1px solid var(--hairline); }
.discovery-search { max-width:100%; }
.discovery-categories { display:flex; overflow:auto; scrollbar-width:thin; gap:22px; margin-top:14px; }
.feed-category { flex:none; background:none; border:0; border-bottom:2px solid transparent; color:var(--muted); padding:10px 0 13px; font-size:12px; }
.feed-category.active { color:var(--text); border-color:var(--accent); }
.discovery-results-bar { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px; margin:26px 0; scroll-margin-top:210px; }
.discovery-results-bar > p { font-size:12px; color:var(--muted); }
.discovery-results-bar > label { display:flex; align-items:center; gap:12px; font-size:11px; color:var(--muted); }
.discovery-results-bar select { width:auto; min-width:180px; padding:9px 12px; }
.discovery-pagination { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; border-top:1px solid var(--hairline); margin-top:30px; padding:22px 0; color:var(--muted); font-size:12px; }
.discovery-pagination > div { display:flex; align-items:center; gap:18px; }
@media(max-width:1100px) {
  .market-hero { gap:30px; }
  .market-hero h1 { font-size:52px; }
  .market-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .header-inner { gap:14px; }
  .main-nav .nav-link { padding-inline:9px; font-size:10px; }
  .product-price-row { flex-wrap:wrap; }
}
@media(max-width:850px) {
  .market-hero { grid-template-columns:1fr; padding-top:20px; }
  .market-hero h1 { font-size:clamp(42px,7.3vw,60px); max-width:700px; }
  .market-intro { max-width:620px; }
  .market-search { max-width:100%; }
  .hero-selection { max-width:100%; }
  .featured-auction { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
  .featured-caption { grid-column:1/-1; padding-bottom:0; }
  .featured-description { align-self:center; }
  .featured-description h2 { font-size:26px; }
  .featured-price { flex-wrap:wrap; }
  .category-rail { grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px 0; }
  .category-tile:nth-child(4) { border:0; }
  .confidence-section { gap:36px; }
  .public-footer-top { grid-template-columns:repeat(2,minmax(0,1fr)); }
  nav.main-nav { display:none; }
  .hamburger { display:block; }
}
@media(max-width:600px) {
  .public-home,.public-discovery { --public-space:52px; }
  .market-hero { padding:16px 0 30px; gap:30px; }
  .market-hero h1 { font-size:clamp(35px,9.5vw,50px); margin:20px 0; }
  .hero-kicker { font-size:8px !important; letter-spacing:.1em !important; }
  .market-intro { font-size:14px; }
  .market-search { padding-left:10px; gap:8px; margin-top:22px; }
  .market-search .btn { padding:12px 13px; font-size:10px; }
  .market-search .btn > svg { display:none; }
  .market-search > svg { width:16px; }
  .market-search input { font-size:13px; }
  .hero-quick-links { gap:18px; font-size:11px; }
  .market-pulse { margin-top:24px; padding-top:16px; gap:8px 14px; font-size:10px; }
  .featured-auction { gap:10px; }
  .featured-caption .eyebrow { font-size:8px; }
  .featured-image { aspect-ratio:1/1; }
  .featured-timer { left:6px; bottom:6px; padding:5px 7px; font-size:9px; }
  .featured-timer > svg { display:none; }
  .featured-description { padding:0; }
  .featured-description > .eyebrow { font-size:8px; }
  .featured-description h2 { font-size:19px; margin:8px 0 12px; }
  .featured-price { padding-top:10px; gap:10px; }
  .featured-price strong { font-size:19px; }
  .featured-price > div > span { font-size:10px; }
  .featured-link { font-size:10px; gap:7px; }
  .featured-link svg { width:15px; }
  .hero-empty { min-height:270px; padding:22px; }
  .hero-empty > span { font-size:65px; margin-bottom:18px; }
  .hero-empty h2 { font-size:30px; }
  .category-section { padding:18px 0; }
  .category-tile { padding:4px; }
  .category-tile > span { font-size:10px; }
  .category-tile small { font-size:9px; }
  .section-heading { display:block; margin-bottom:24px; }
  .section-heading > .text-link { margin-top:20px; }
  .section-heading h2,.confidence-copy h2,.home-faq h2 { font-size:33px; }
  .market-tabs { gap:22px; }
  .market-tabs button { font-size:11px; }
  .market-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 10px; }
  .product-description { padding:12px 10px; }
  .product-category { font-size:8px; letter-spacing:.04em; flex-wrap:wrap; min-height:13px; }
  .verified-seller { font-size:7px; }
  .product-description h3 { font-size:13px; min-height:36px; }
  .product-location { font-size:10px; }
  .product-price-row { margin-top:14px; gap:8px; }
  .product-price-row strong { font-size:17px; }
  .product-bids { font-size:9px; }
  .product-seller { font-size:9px; margin-top:12px; padding-top:10px; }
  .product-time { right:5px; bottom:5px; padding:4px 6px; font-size:8px; gap:4px; }
  .product-time svg { width:11px; }
  .journey-grid { grid-template-columns:1fr; gap:26px; }
  .journey-grid h3 { margin-top:15px; }
  .journey-grid p { max-width:none; }
  .seller-band { grid-template-columns:1fr; padding:30px 24px; }
  .seller-band h2 { font-size:33px; }
  .seller-note { display:none; }
  .confidence-section,.home-faq { grid-template-columns:1fr; gap:28px; }
  .confidence-copy > p:not(.eyebrow) { margin:20px 0; }
  .confidence-list article { padding:20px 0; }
  .selling-conditions .section-heading > p { margin-top:20px; }
  .public-plan-grid { grid-template-columns:1fr; }
  .public-plan { padding:22px; }
  .trial-notice { padding:16px; align-items:start; }
  .home-faq { padding-top:0; }
  .home-faq summary { font-size:13px; }
  .public-footer-top { gap:28px 18px; padding:34px 0; }
  .public-footer-top > div:first-child { grid-column:1/-1; }
  .public-footer-top .eyebrow { font-size:9px; }
  .public-footer-bottom { flex-wrap:wrap; gap:12px; }
  .public-footer-bottom > span:nth-child(2) { display:none; }
  .discovery-heading { padding:14px 0 24px; }
  .discovery-heading h1 { font-size:39px; }
  .discovery-heading > p:last-child { font-size:13px; }
  .discovery-search { gap:8px; padding-left:12px; }
  .discovery-search .btn { padding:12px; font-size:10px; }
  .discovery-search input { font-size:13px; }
  .discovery-categories { gap:20px; margin-top:6px; }
  .discovery-results-bar { gap:12px; margin:20px 0; }
  .discovery-results-bar > label { width:100%; justify-content:space-between; }
  .discovery-results-bar select { flex:1; max-width:230px; }
  .discovery-pagination > div { width:100%; justify-content:space-between; gap:10px; font-size:10px; }
}
@media(prefers-reduced-motion:reduce) { .featured-image img,.product-image img { transition:none; } }

body:has(.public-home) > main, body:has(.public-discovery) > main { padding-top:0; padding-bottom:0; }
