/* Shared collector tasks and reading components; family coin geometry stays owned by its family. */
:root { --reading-size: 1rem; --secondary-size: .875rem; --credit-size: .75rem; --focus-color: #bb7c24; }
.site-menu-toggle { display:none; min-width:44px; min-height:44px; border:1px solid currentColor; border-radius:8px; background:transparent; color:inherit; padding:8px 14px; font:inherit; }
[hidden] { display:none !important; }
:focus-visible { outline:3px solid var(--focus-color); outline-offset:4px; }
.value-provenance { padding:18px 22px; border:1px solid #d2dcd7; border-left:4px solid #286a59; border-radius:10px; background:#f4f8f5; color:#253f35; font-size:1rem; line-height:1.65; margin:20px 0; }
.value-provenance p { margin:8px 0 0; max-width:75ch; }
.guide-page { max-width:1020px; margin:0 auto; padding:clamp(24px,5vw,72px); }
.guide-page h1 { font-size:clamp(2rem,5vw,3.6rem); line-height:1.12; letter-spacing:-.03em; }
.guide-page .article-body { max-width:70ch; font-size:1.125rem; line-height:1.85; }
.guide-page .article-body section { margin:48px 0; scroll-margin-top:24px; }
.guide-contents { display:flex; flex-wrap:wrap; gap:10px 22px; padding:22px 0; border-block:1px solid #d8ded9; }
.guide-contents a { min-height:44px; display:flex; align-items:center; font-size:1rem; }
.guide-exercise { padding:24px; border-radius:14px; background:#ecf2ec; }
.guide-exercise summary { cursor:pointer; padding:12px 0; font-weight:700; }
.guide-next { margin-top:40px; border-top:1px solid #d8ded9; padding-top:24px; }
.guide-outcome { margin:24px 0; padding:20px 24px; border-left:4px solid #326c57; background:#edf3ed; font-size:1rem; }
.guide-outcome p { margin:8px 0 0; }
.guide-learning-path ol { padding:0; list-style:none; }
.guide-learning-path li { min-width:0; }
.guide-learning-path li>a { display:block; }
.collector-home {
  --home-serif: Georgia, 'Songti SC', 'Noto Serif CJK SC', serif;
  --home-gold: #e6c476;
  background: var(--paper);
  color: var(--catalog-ink, var(--green-dark));
}
.collector-home-hero { display: grid; grid-template-columns: 1fr 1.08fr; align-items: center; gap: clamp(24px, 3.5vw, 52px); max-width: 1320px; padding: 32px 24px 24px; margin: auto; }
.collector-home-copy { min-width: 0; }
.collector-home .eyebrow { color: var(--copper); font-size: .875rem; line-height: 1.5; letter-spacing: .035em; margin: 0; }
.collector-home h1 { color: inherit; font: 600 clamp(40px, 4.2vw, 60px)/1.12 var(--home-serif); letter-spacing: -.035em; margin: 12px 0 16px; max-width: none; }
html[lang^='zh'] .collector-home h1 { font-size: clamp(44px, 4.8vw, 68px); line-height: 1.18; letter-spacing: -.025em; }
.collector-home .lede { font-size: 1.0625rem; line-height: 1.7; max-width: 52ch; color: var(--catalog-muted); margin: 0; }
.collector-home .hero-search { margin: 22px 0 12px; width: 100%; max-width: none; min-height: 52px; display: flex; align-items: stretch; background: var(--surface); border: 1px solid var(--catalog-line); border-radius: 8px; padding: 0; box-shadow: none; }
.collector-home .hero-search:focus-within { outline: 2px solid var(--focus-color); outline-offset: 3px; }
.collector-home .hero-search input { flex: 1; min-width: 0; width: 100%; border: 0; padding: 12px 8px; font: inherit; font-size: .9375rem; background: transparent; color: inherit; box-shadow: none; }
.collector-home .hero-search input:focus-visible { outline: none; }
.collector-home .hero-search button { display: grid; place-items: center; flex: 0 0 52px; min-width: 48px; min-height: 50px; padding: 12px; border: 0; border-radius: 0 7px 7px 0; background: var(--green-dark); color: var(--surface); cursor: pointer; }
.collector-home .hero-search svg { display: block; width: 23px; height: 23px; }
.home-search-symbol { display: grid; place-items: center; padding-left: 14px; color: var(--muted); }
.collector-home-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.collector-home-actions a { display: flex; align-items: center; justify-content: center; gap: 14px; min-width: 0; min-height: 52px; padding: 12px; border: 1px solid transparent; border-radius: 8px; font-size: 1rem; line-height: 1.4; font-weight: 650; text-decoration: none; }
.collector-home-actions .home-explore-coins { background: var(--green-dark); color: var(--surface); }
.collector-home-actions .home-explore-bullion { background: var(--home-gold); color: var(--green-dark); }
.collector-home-actions a:hover { border-color: currentColor; box-shadow: 0 3px 12px #183a3412; }
.collector-home-learning-link { display: inline-flex; align-items: center; min-height: 44px; margin-top: 4px; font-size: .9375rem; font-weight: 600; text-decoration: none; }
.collector-home-showcase { position: relative; min-width: 0; isolation: isolate; }
.collector-home-showcase::before { content: ''; position: absolute; z-index: -1; inset: -4% -1%; background: url('/assets/card-backgrounds/quiet-engraving/guilloche.webp') center/contain no-repeat; opacity: .075; pointer-events: none; }
.home-specimen-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 22px 12px; padding: 0; margin: 0; list-style: none; }
.home-specimen-grid > li { grid-column: span 2; min-width: 0; }
.home-specimen-grid > li:nth-child(4) { grid-column: 2 / span 2; }
.home-specimen-grid > li:nth-child(5) { grid-column: 4 / span 2; }
.home-specimen-grid a { display: block; color: inherit; text-decoration: none; border-radius: 8px; }
.home-specimen-grid a:hover figcaption { text-decoration: underline; text-underline-offset: 4px; }
.home-specimen-grid figure { margin: 0; }
.home-specimen-art { display: grid; place-items: center; width: 100%; aspect-ratio: 1; }
.home-specimen-grid img { display: block; width: min(100%, 156px); height: auto; max-height: 156px; aspect-ratio: 1; object-fit: contain; mix-blend-mode: normal; filter: drop-shadow(0 5px 4px #183a341c); }
.home-specimen-grid [data-home-specimen='lincoln'] img { border-radius: 50%; }
.home-specimen-grid figcaption { margin-top: 10px; font-size: .8125rem; line-height: 1.5; text-align: center; overflow-wrap: anywhere; }
.home-showcase-caption { display: flex; align-items: center; justify-content: center; gap: 12px; margin: 24px 0 0; color: var(--catalog-muted); text-align: center; font-size: .8125rem; line-height: 1.6; }
.home-showcase-caption::before, .home-showcase-caption::after { content: ''; flex: 0 1 36px; border-top: 1px solid var(--line); }
.collector-home .section { max-width: 1320px; margin: 0 auto; padding: 28px 24px 32px; }
.collector-home .section-heading { display: flex; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: 12px 24px; margin-bottom: 22px; }
.collector-home .section h2 { margin: 8px 0 0; color: inherit; font: 600 clamp(26px, 3vw, 40px)/1.28 var(--home-serif); letter-spacing: -.025em; }
.collector-home .section-heading > a { flex-shrink: 0; min-height: 44px; display: inline-flex; align-items: center; font-size: .9375rem; color: inherit; text-decoration: none; }
.collector-country-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
.collector-country-grid a { padding: 24px; border: 1px solid var(--catalog-line); border-radius: var(--catalog-radius); background: var(--surface); display: flex; flex-direction: column; gap: 20px; text-decoration: none; transition: transform .15s; }
.collector-country-grid a:hover { transform: translateY(-3px); border-color: var(--green); }
.collector-country-grid small { color: var(--catalog-muted); font-weight: 700; font-size: .875rem; }
.collector-country-grid strong { font-size: 1.2rem; }
.collector-country-grid span { font-size: .875rem; }
.collector-learning-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.collector-learning-grid a { text-decoration: none; border-top: 2px solid var(--line); padding: 24px 0; }
.collector-learning-grid h3 { font-size: 1.35rem; margin: 12px 0; }
.collector-learning-grid p { font-size: 1rem; line-height: 1.7; color: var(--catalog-muted); }
.collector-learning-grid span { display: inline-block; margin-top: 16px; font-weight: 650; }
.collector-featured-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.collector-featured-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; background: var(--surface); color: inherit; border: 1px solid var(--catalog-line); border-radius: var(--catalog-radius); text-decoration: none; }
.collector-home [data-home-featured='panda'] { --card-landscape: url('/assets/card-backgrounds/natural-a/mist-bamboo.webp'); }
.collector-featured-card:hover { border-color: var(--green); }
.collector-featured-card .catalog-card-art { aspect-ratio: 1.65; padding: 20px 16px 0; }
.collector-featured-card img { display: block; width: 58%; height: auto; aspect-ratio: 1; object-fit: contain; margin: 0; border-radius: 50%; mix-blend-mode: normal; }
.collector-featured-card .catalog-card-copy { padding: 16px 20px 20px; }
.collector-featured-card h3 { color: inherit; margin: 0 0 8px; font-size: 1.25rem; line-height: 1.4; }
.home-featured-meta { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 16px; margin-top: auto; font-size: .875rem; }
.home-featured-meta small { color: var(--catalog-muted); font-size: inherit; }
.home-featured-meta .catalog-card-cta { font-weight: 650; }

.table-scroll,.sml-annual-register .table-scroll { overflow-x:auto; max-width:100%; }
.sml-annual-register { padding-block:40px; }
.sml-annual-register td,.sml-annual-register th { padding:12px 16px; text-align:left; border-bottom:1px solid #d3dbd5; font-size:.875rem; }
.sml-annual-register h2 { margin-bottom:16px; }
.search-result { display:flex; padding:24px; margin:12px 0; border:1px solid #d3dcd5; border-radius:12px; text-decoration:none; background:#fff; }
.search-result strong { display:block; font-size:1.35rem; margin:6px 0; }
.search-result p { max-width:70ch; font-size:1rem; line-height:1.6; }
@media(max-width:960px) { .collector-home-hero { grid-template-columns:1fr; } .collector-country-grid { grid-template-columns:repeat(3,1fr); } }
@media(max-width:760px) {
 .site-menu-toggle { display:block; }
 header .main-nav,header .primary-nav,header .bv2-primary-nav,header .global-nav { display:flex; flex-wrap:wrap; width:100%; height:auto; gap:8px 20px; grid-column:1/-1; order:10; padding:12px 0; }
 header :is(.main-nav,.primary-nav,.bv2-primary-nav,.global-nav) a { font-size:1rem; min-height:44px; display:inline-flex; align-items:center; }
 .topbar,.site-header,.bv2-header__bar { flex-wrap:wrap; height:auto; min-height:68px; gap:12px; }
 .bv2-header { height:auto; }
 .collector-home-hero { padding:32px 20px; }
 .collector-country-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .collector-country-grid a { padding:18px; }
 .collector-learning-grid { grid-template-columns:1fr; gap:4px; }
 .collector-home .section-heading { gap:8px 16px; }
 .guide-page { padding:24px 20px; }
 .value-provenance { padding:16px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .collector-country-grid a { transition:none; } }

.bullion-discovery form { display:flex; flex-wrap:wrap; gap:18px; align-items:end; margin:28px 0; }
.bullion-discovery fieldset { display:flex; flex-wrap:wrap; gap:12px; border:1px solid #c5d1cb; border-radius:12px; padding:14px 18px; }
.bullion-discovery legend { font-weight:700; padding:0 6px; }
.bullion-discovery label { display:inline-flex; align-items:center; gap:8px; min-height:44px; cursor:pointer; }
.bullion-discovery input { width:18px; height:18px; accent-color:#245e48; }
.bullion-discovery button { padding:12px 18px; min-height:44px; border:1px solid #789381; border-radius:8px; background:white; }
.bullion-directory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin-top:24px; }
.bullion-directory-grid>a { display:block; background:white; border:1px solid #d7dfd8; border-radius:16px; padding:26px; color:#19332a; text-decoration:none; }
.bullion-directory-grid img { display:block; margin:0 auto 24px; max-width:100%; height:180px; object-fit:contain; }
.bullion-directory-grid h3 { font-size:1.35rem; margin:12px 0; }
.bullion-directory-grid p { font-size:1rem; line-height:1.65; margin:12px 0; }
.bullion-directory-grid small { font-size:.875rem; line-height:1.6; }
.bullion-directory-grid span { display:block; margin-top:20px; font-weight:700; }
@media(max-width:960px){.bullion-directory-grid {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.bullion-directory-grid {grid-template-columns:1fr}.bullion-discovery fieldset {width:100%}}
.collector-save-tools,.saved-toolbar,.comparison-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:20px auto;max-width:1160px;padding:12px 20px}.collector-save-tools{border-block:1px solid #dce2dd;font-size:14px}.collector-save-tools button,.saved-toolbar button,.saved-record-list button,.comparison-controls select,[data-import-preview] button{min-height:44px;border:1px solid #becbc2;background:#fff;border-radius:8px;padding:8px 14px;color:#234436;font:inherit}.collector-save-tools [aria-pressed=true]{background:#e0eee4}.saved-record-list{list-style:none;padding:0}.saved-record-list li{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid #dce2dd;overflow-wrap:anywhere}.bullion-comparison{max-width:1160px;margin:64px auto;padding:32px;background:#f4f7f3;border:1px solid #dbe3d9;border-radius:20px}.bullion-comparison h2{font:600 clamp(26px,3vw,38px)/1.2 Georgia,serif}.comparison-controls{padding:0}.comparison-controls label{display:grid;gap:8px}.comparison-pictures{display:grid;grid-template-columns:1fr 1fr;gap:16px;text-align:center}.comparison-pictures img{max-width:100%;object-fit:contain}.comparison-pictures figure{margin:20px 0}.comparison-pictures figcaption{font-size:14px}.bullion-comparison table{width:100%;border-collapse:collapse;min-width:500px}.bullion-comparison th,.bullion-comparison td{padding:14px;text-align:left;border-bottom:1px solid #d5ddd2;font-size:16px}.comparison-difference{background:#e4eddc}.bullion-comparison caption{text-align:left;padding:12px;font-size:14px}.issue-identification{padding:24px;background:#f1f5ef;border-left:4px solid #536f49;margin:24px 0}.issue-identification dl{display:flex;flex-wrap:wrap;gap:24px}.issue-identification dd{margin:4px 0;font-weight:600}.collector-updates{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.collector-updates article{border-top:2px solid #9eae98;padding-top:16px}.collector-updates time{color:#59675e;font-size:14px}.collector-updates h3{font-size:20px}.collector-updates p{font-size:16px}.guide-page p,.guide-page li{font-size:18px;line-height:1.75}
@media(max-width:760px){.bullion-comparison{margin:32px 16px;padding:20px}.collector-updates{grid-template-columns:1fr}.collector-save-tools{margin:16px}.guide-page p,.guide-page li{font-size:17px}.saved-record-list li{align-items:start}.saved-toolbar input{max-width:100%}}
.saved-link{font-size:14px;font-weight:650;padding:12px 8px}
@media(max-width:760px){.topbar{display:flex;align-items:center;padding:14px 18px;gap:10px}.topbar .brand{flex:1;min-width:220px}.topbar .site-menu-toggle{width:auto;flex:0 0 auto;order:0}.topbar .saved-link{order:1}.topbar .language-switcher{order:2;width:auto;flex:0 0 auto;margin-left:auto}.topbar .main-nav{order:3}.topbar .brand small{font-size:12px}.site-header .header-tools{grid-column:1/-1}.site-header .prototype-flag{display:none}}
.country-reference-details>summary{font-size:20px;font-weight:650;cursor:pointer;min-height:44px;padding:20px;border:1px solid #ccd7cf;border-radius:10px}.country-reference-details[open]>summary{background:#ecf2eb}.country-reference-details>.section{padding-inline:0}.directory-catalog-card-types{font-size:14px;line-height:1.6}


/* Global-home composition only; catalog heroes and other shells stay owned by
   their existing contracts. Preserve Saved inside the expanded mobile menu. */
body:has(.collector-home) .topbar .brand small { display: none; }
body:has(.collector-home) .topbar .brand strong { font-family: Georgia, 'Songti SC', serif; font-weight: 500; }
@media(max-width:960px) {
  .collector-home-showcase { width: 100%; max-width: 590px; margin: 0 auto; }
  .home-specimen-grid img { width: min(100%, 145px); max-height: 145px; }
}
@media(max-width:760px) {
  .collector-home-hero { gap: 16px; padding: 26px 20px 18px; }
  .collector-home h1, html[lang^='zh'] .collector-home h1 { font-size: clamp(32px, 8vw, 46px); line-height: 1.2; margin: 12px 0; }
  .collector-home .eyebrow { font-size: .8125rem; }
  .collector-home .lede { font-size: .9375rem; line-height: 1.7; }
  .collector-home .hero-search { margin-top: 18px; }
  .collector-home .hero-search input { font-size: .875rem; }
  .collector-home-actions { gap: 10px; }
  .collector-home-actions a { gap: 10px; min-height: 48px; padding: 10px 8px; font-size: .9375rem; }
  .collector-home-learning-link { min-height: 44px; margin: 0; }
  .home-specimen-grid { gap: 14px 10px; }
  .home-specimen-grid img { width: min(100%, 110px); max-height: 110px; }
  .home-specimen-grid figcaption { font-size: .6875rem; margin-top: 7px; line-height: 1.45; }
  .home-showcase-caption { gap: 8px; margin-top: 18px; font-size: .75rem; }
  .home-showcase-caption::before, .home-showcase-caption::after { flex-basis: 16px; }
  .collector-home .section { padding: 24px 18px; }
  .collector-home .section h2 { font-size: clamp(25px, 6.5vw, 32px); }
  .collector-home .section-heading { margin-bottom: 16px; }
  .collector-home .section-heading > a { min-height: 36px; font-size: .8125rem; }
  .collector-featured-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .collector-featured-card .catalog-card-art { aspect-ratio: 1.2; padding: 12px 8px 0; }
  .collector-featured-card img { width: 75%; }
  .collector-featured-card .catalog-card-copy { padding: 12px 14px 16px; }
  .collector-featured-card h3 { font-size: 1.0625rem; }
  .home-featured-meta { gap: 6px; font-size: .75rem; }
  .home-featured-meta .catalog-card-cta { display: inline-flex; align-items: center; min-height: 30px; }
  body:has(.collector-home) .topbar { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 6px; min-height: 68px; padding: 10px 16px; }
  body:has(.collector-home) .topbar .brand { min-width: 0; gap: 8px; grid-column: 1; grid-row: 1; }
  body:has(.collector-home) .topbar .brand-mark { width: 30px; height: 30px; flex: 0 0 30px; }
  body:has(.collector-home) .topbar .brand strong { font-size: clamp(16px, 4.6vw, 20px); white-space: nowrap; }
  body:has(.collector-home) .topbar .language-switcher { grid-column: 3; grid-row: 1; order: 0; margin: 0; padding: 0; border: 0; background: transparent; }
  body:has(.collector-home) .topbar .language-switcher a { display: grid; place-items: center; min-width: 44px; min-height: 44px; padding: 6px; font-size: 0; background: transparent; }
  body:has(.collector-home) .topbar .language-switcher a::after { font-size: 13px; }
  body:has(.collector-home) .topbar .language-switcher a[lang='en']::after { content: 'EN'; }
  body:has(.collector-home) .topbar .language-switcher a[lang='zh-CN']::after { content: '中文'; }
  body:has(.collector-home) .topbar .language-switcher a[aria-current] { display: none; }
  body:has(.collector-home) .topbar .site-menu-toggle { grid-column: 2; grid-row: 1; order: 0; padding: 8px; font-size: .8125rem; }
  body:has(.collector-home) .topbar .main-nav { grid-column: 1 / -1; grid-row: 2; order: 0; }
  body:has(.collector-home) .topbar .saved-link { display: none; grid-column: 1 / -1; grid-row: 3; }
  body:has(.collector-home) .topbar:has(.site-menu-toggle[aria-expanded='true']) .saved-link { display: inline-flex; }
}
@media(max-width:360px) {
  .collector-home-hero { padding-inline: 16px; }
  .collector-home .section { padding-inline: 16px; }
  .collector-home-actions a { font-size: .8125rem; gap: 6px; }
  .home-specimen-grid { column-gap: 6px; }
  .home-specimen-grid figcaption { font-size: .625rem; }
}
@media(prefers-reduced-motion:reduce) {
  .collector-home a { transition: none; }
  .collector-home a:hover { transform: none; }
}
@media(forced-colors:active) {
  .collector-home-showcase::before { display: none; }
  .collector-home-actions a, .collector-featured-card { background: Canvas; color: CanvasText; border: 1px solid CanvasText; }
  .collector-home .hero-search button { background: ButtonFace; color: ButtonText; border: 1px solid ButtonText; }
  .collector-featured-card .catalog-card-art { background: Canvas; }
}
