/* Warm, editorial surfaces with compact controls and readable market data. */
:root { --bg:#faf9f5; --surface:#fff; --surface-2:#f1f2ec; --border:#dfe3db; --text:#243a32; --text-2:#53615a; --text-muted:#657166; }
[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; }
button,a,input,select,summary { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid #98703b;outline-offset:3px; }
button:disabled { opacity:.45;cursor:not-allowed; }
header { background:white;padding:20px 32px; }
.site-title { font-size:1.55rem; }
.site-tagline { color:#786039;font-size:.63rem; }
#app { padding:0 32px 40px;max-width:1400px; }
.primary-nav { display:flex;gap:30px;border-bottom:1px solid var(--border); }
.primary-nav a { color:var(--text-2);padding:18px 0 14px;font-size:.88rem;text-decoration:none;border-bottom:3px solid transparent; }
.primary-nav a[aria-current] { color:var(--green);border-bottom-color:var(--green);font-weight:600; }
.explorer-top { display:flex;justify-content:space-between;align-items:center;gap:24px;padding:32px 0 28px; }
.eyebrow { font-size:.65rem;color:#806638;letter-spacing:.15em;font-weight:600;margin-bottom:8px; }
#page-heading { font:600 2rem/1.2 'Bitter',Georgia,serif;color:#254f3d; }
#page-description { color:var(--text-2);font-size:.86rem;margin-top:9px; }
.quick-search { position:relative;flex:0 1 360px;min-width:250px; }
body[data-view=sales] .quick-search { display:none; }
.quick-search label,.overview-breed-label,.directory-filters label,.directory-query { display:flex;flex-direction:column;gap:7px;font-size:.73rem;font-weight:600;color:var(--text-2); }
.quick-search input,.overview-toolbar select,#directory-form input,#directory-form select { width:100%;height:44px;padding:10px 13px;border:1px solid #cbd3c9;border-radius:7px;background:white;color:var(--text);font:400 .88rem 'DM Sans',sans-serif; }
#quick-popover { position:absolute;top:100%;margin-top:6px;right:0;width:min(500px,calc(100vw - 40px));z-index:80;background:white;border:1px solid var(--border);border-radius:9px;box-shadow:0 14px 40px #243a3224;overflow:hidden; }
#quick-results { list-style:none;max-height:370px;overflow:auto; }
#quick-results li { padding:13px 16px;border-bottom:1px solid #edf0e9;cursor:pointer; }
#quick-results li[aria-selected=true],#quick-results li:hover { background:#edf3ed; }
#quick-results span { display:block;font-size:.86rem;font-weight:600; }
#quick-results small { display:block;font-size:.72rem;color:var(--text-2);margin-top:4px; }
#quick-all { display:block;padding:14px 16px;font-size:.8rem;color:var(--green);font-weight:600; }
.overview-toolbar { display:flex;align-items:end;gap:18px;background:white;border:1px solid var(--border);padding:16px 20px;border-radius:10px; }
.overview-breed-label { min-width:170px; }
.overview-toolbar .date-presets { gap:6px;align-self:end;padding-bottom:3px; }
.date-preset-btn { min-height:38px;border-radius:6px;font-size:.78rem; }
.date-preset-btn.active { background:#eef3ea;color:#294e39;border-color:#a9b99e; }
#market-more-filters { margin-left:auto;position:relative; }
summary { cursor:pointer;font-size:.8rem;font-weight:600;color:var(--text-2);padding:10px 0; }
#market-more-filters .date-filter-bar { position:absolute;right:0;top:100%;min-width:330px;z-index:20;border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #243a3218;background:white;padding:18px; }
.date-inputs { flex-wrap:wrap; }
.market-filter-summary { padding:12px 0 0;font-size:.75rem;color:var(--text-2); }
.collection-freshness { text-align:left;padding:5px 0 18px;font-size:.7rem;color:var(--text-2); }
body[data-view=overview] #landing-tabs { display:none; }
body[data-view=analytics] .overview-toolbar,body[data-view=analytics] #market-filter-summary,body[data-view=analytics] #collection-freshness { display:none; }
body[data-view=analytics] #reporting-coverage { display:none; }
.reporting-period-label { min-width:220px; }
.reporting-coverage { font-size:.73rem;color:var(--text-2);line-height:1.6;margin:6px 0; }
.reporting-scope { font-size:.78rem;color:var(--text-2);margin:-6px 0 18px; }
.leaderboard-grid > div { min-width:0; }
body[data-view=analytics] .landing-tab-btn[data-panel=overview] { display:none; }
.landing-tabs { padding:0;background:transparent;margin-bottom:22px; }
.landing-section { padding:24px 0;border-bottom:1px solid var(--border); }
.landing-section-title { color:var(--text);font-size:1.05rem;margin-bottom:16px; }
.stats-grid.landing-stats { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px; }
.stat-card { background:white;border-radius:10px;padding:20px;min-width:0; }
.stat-value { font-variant-numeric:tabular-nums;line-height:1.2; }
.stat-label { color:var(--text-2);letter-spacing:.06em;line-height:1.5; }
.stat-sub { color:var(--text-2);line-height:1.6;overflow-wrap:anywhere; }
.market-highlights { margin-top:18px; }
.market-highlights summary { padding:12px 0; }
.highlights-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px; }
.highlights-grid .stat-card:nth-last-child(-n+2) { background:#f0f3eb; }
.stat-card--muted { opacity:1; }
table { background:white; }
th { color:var(--text-2); }
td { font-variant-numeric:tabular-nums; }
.table-wrap,.table-container { border-radius:9px; }
#directory-form { padding:20px;background:white;border:1px solid var(--border);border-radius:10px; }
.directory-filter-details summary { display:none; }
.directory-filters { display:flex;gap:14px;align-items:end;margin-top:16px; }
.directory-filters label { flex:1;min-width:0; }
.directory-filters button { min-height:44px; }
.directory-caption { display:flex;justify-content:space-between;font-size:.77rem;color:var(--text-2);padding:20px 0 12px; }
#directory-results { background:white;border:1px solid var(--border);border-radius:10px;overflow:hidden; }
.sale-row { display:flex;align-items:center;gap:24px;padding:22px 24px;border-bottom:1px solid var(--border); }
.sale-row:last-child { border-bottom:0; }
.sale-row:hover { background:#f8faf5; }
.sale-date { width:76px;flex-shrink:0;border-right:1px solid var(--border);padding-right:18px;color:#6c755f;font-size:.8rem; }
.sale-date span,.sale-date strong { display:block; }
.sale-date strong { font-size:.9rem;color:var(--text);margin-top:4px; }
.sale-row-copy { flex:1;min-width:0; }
.sale-row h3 { font-size:.95rem;font-weight:600;line-height:1.45; }
.sale-row h3 a { text-decoration:none;color:#28583f;overflow-wrap:anywhere; }
.sale-row h3 a:hover { text-decoration:underline; }
.sale-row p { font-size:.77rem;color:var(--text-2);margin-top:4px; }
.sale-tags { display:flex;gap:5px;flex-wrap:wrap;margin-top:9px; }
.sale-tags span { background:#eef3e9;padding:3px 8px;border-radius:4px;font-size:.66rem;color:#45623f; }
.sale-row-action { flex-shrink:0;color:var(--green);font-size:.78rem;text-decoration:none;font-weight:600;padding:12px 0 12px 12px; }
#directory-pagination { display:flex;align-items:center;justify-content:center;gap:24px;padding:24px;font-size:.8rem; }
.directory-empty { text-align:center;padding:50px 20px; }
.directory-empty p { margin:10px 0 20px;color:var(--text-2); }
.back-bar,.sale-name-bar,.sale-meta-bar { padding-left:0;padding-right:0; }
.back-bar { border:0;background:transparent; }
.sale-name-bar h1 { font-size:1.75rem; }
footer { background:white; }
@media(max-width:900px) {
  .explorer-top { align-items:start; }
  #page-heading { font-size:1.65rem; }
  .overview-toolbar { flex-wrap:wrap; }
  .directory-filters { flex-wrap:wrap; }
  .directory-filters label { flex:1 1 40%; }
  .stats-grid.landing-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .highlights-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
  header { padding:16px; }
  .header-inner { flex-wrap:wrap;gap:12px; }
  .site-title { font-size:1.3rem; }
  .site-tagline { font-size:.55rem; }
  #app { padding:0 16px 24px; }
  .primary-nav { gap:18px;overflow:auto; }
  .primary-nav a { font-size:.72rem;white-space:nowrap; }
  .primary-nav .pro-badge { display:none; }
  .explorer-top { display:block;padding:24px 0 20px; }
  .quick-search { margin-top:20px;min-width:0;width:100%; }
  #quick-popover { width:100%; }
  .overview-toolbar { padding:14px;gap:10px;align-items:center; }
  .overview-breed-label { flex:1;min-width:140px; }
  .reporting-period-label { flex-basis:100%;order:-1; }
  .overview-toolbar .date-presets { order:3;width:100%;display:flex;flex-wrap:wrap; }
  #market-more-filters .date-filter-bar { min-width:280px; }
  .directory-filter-details summary { display:list-item; }
  #directory-form { padding:16px; }
  .directory-filters { margin-top:4px; }
  .directory-filters button { width:100%; }
  .sale-row { padding:18px 16px;gap:14px;flex-wrap:wrap; }
  .sale-date { width:62px;padding-right:8px; }
  .sale-row-action { padding:0;margin-left:76px; }
  .sale-row-copy { flex-basis:calc(100% - 80px); }
  .sale-row h3 { font-size:.87rem; }
  .stat-card { padding:16px; }
  .stat-value { font-size:1.4rem; }
  .stat-label { font-size:.6rem; }
  .highlights-grid { grid-template-columns:1fr; }
  .landing-tabs { overflow:auto; }
  .landing-tab-btn { white-space:nowrap; }
  .directory-caption { gap:12px; }
}
