.metric-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin: 16px 0;
}

/* KLENOD branding and token-driven light/dark theme. */
:root{color-scheme:light;--bg:#F6F8F5;--surface:#FFF;--surface-secondary:#EEF2EF;--text:#17201B;--text-muted:#66726B;--brand:#1F6B4F;--brand-hover:#18543E;--brand-soft:#DDEBE4;--border:#DDE2DE;--text-on-brand:#FFF;--danger:#B85C5C;--danger-hover:#9C4444;--danger-soft:#F5DEDE;--warning:#85621B;--warning-soft:#FFF2BF;--success:#1F6B4F;--success-soft:#DDEBE4;--focus-ring:#4D7C8A;--header-bg:#17201B;--header-surface:#26362D;--header-text:#F3F5F2;--header-muted:#B9C6BE;--input-bg:var(--surface-secondary);--chart-grid:#DDE2DE;--chart-primary:#1F6B4F;--chart-series-blue:#4D7C8A;--chart-series-ochre:#B99452;--chart-series-red:#B85C5C;--chart-series-green:#5C7A65;--chart-series-violet:#76618A;--chart-series-teal:#52706D;--chart-series-lime:#8A8F35;--shadow:0 12px 40px rgba(26,45,34,.07);--ink:var(--text);--muted:var(--text-muted);--line:var(--border);--green:var(--brand);--lime:#C7F36B;--red:var(--danger)}
:root[data-theme=dark]{color-scheme:dark;--bg:#0D1210;--surface:#17201B;--surface-secondary:#1E2A24;--text:#EEF3EF;--text-muted:#B6C2BA;--brand:#71B890;--brand-hover:#8DCCAA;--brand-soft:#254637;--border:#2D3B33;--text-on-brand:#0D1210;--danger:#E28A8A;--danger-hover:#F0A3A3;--danger-soft:#48292A;--warning:#E1C46C;--warning-soft:#463A19;--success:#71B890;--success-soft:#254637;--focus-ring:#92C7D6;--header-bg:#0A0F0D;--header-surface:#1E2A24;--header-text:#EEF3EF;--header-muted:#B6C2BA;--input-bg:#1E2A24;--chart-grid:#2D3B33;--chart-primary:#71B890;--chart-series-blue:#92C7D6;--chart-series-ochre:#D2B671;--chart-series-red:#E28A8A;--chart-series-green:#A7D39B;--chart-series-violet:#B9A5D1;--chart-series-teal:#86BDB3;--chart-series-lime:#C8CF79;--shadow:0 14px 42px rgba(0,0,0,.34)}
html{background:var(--bg)}body{background:var(--bg);color:var(--text)}a{color:var(--brand)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}
header{background:var(--header-bg);color:var(--header-text)}.brand{display:flex;align-items:center;color:var(--header-text);line-height:1}.brand-logo{display:block;background:var(--header-text);mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}.brand-logo-word{width:148px;height:42px;mask-image:url('/static/klenod-logo.svg');-webkit-mask-image:url('/static/klenod-logo.svg')}.brand-logo-mark{display:none;width:28px;height:38px;mask-image:url('/static/klenod-mark.svg');-webkit-mask-image:url('/static/klenod-mark.svg')}
nav a{color:var(--header-muted)}nav a:hover,nav a.active{background:var(--header-surface);color:var(--header-text)}.nav-preferences{display:flex;align-items:center;gap:8px}.ui-language-switch{margin:0}.ui-language-switch select{background:var(--header-surface);color:var(--header-text);border:1px solid var(--border);padding:7px 9px}.theme-toggle{display:inline-grid;place-items:center;min-width:38px;min-height:38px;padding:7px;background:transparent;color:var(--header-text);border:1px solid var(--border);border-radius:8px}.theme-toggle:hover{background:var(--header-surface)}.theme-toggle [data-theme-icon]{font-size:18px;line-height:1}
.hero,.callout{background:var(--brand-soft)}.hero p:not(.eyebrow),.page-title p,.callout p{color:var(--text-muted)}.hero-search,.filters,.stats article,.panel,.login-card{background:var(--surface);border-color:var(--border)}.quality,.metric-row article,.collection-summary,.collection-actions,.empty,.cost-details,.card-card,.set-card,.legal-warning{background:var(--surface-secondary);border-color:var(--border)}input,select,textarea{background:var(--input-bg);color:var(--text);border:1px solid var(--border)}option{background:var(--surface);color:var(--text)}button,.button{background:var(--brand);color:var(--text-on-brand)}button:hover,.button:hover{background:var(--brand-hover)}.button.secondary{background:var(--surface-secondary);color:var(--brand)}table td{border-color:var(--border)}tbody tr:hover{background:var(--surface-secondary)}.population,code{background:var(--header-bg);color:var(--header-text)}.population span,.population small{color:var(--header-muted)}.chart line{stroke:var(--chart-grid)}.chart polyline{stroke:var(--chart-primary)}.chart circle{fill:var(--chart-primary)}.grade>div,.value-bars>span:first-child{background:var(--surface-secondary)}.grade i,.value-bars>span:last-child{background:var(--chart-primary)}.good{color:var(--success)}.bad{color:var(--danger)}.good-bg,.pill.good{background:var(--success-soft)}.bad-bg,.pill.bad,.login-error{background:var(--danger-soft)}.pill.neutral{background:var(--surface-secondary);color:var(--text-muted)}.warning,.warning-bg{color:var(--warning);background:var(--warning-soft)}
@media(max-width:520px){header{align-items:flex-start;flex-wrap:wrap}.brand-logo-word{display:none}.brand-logo-mark{display:block}header>nav{display:flex;width:100%;flex-wrap:wrap}.nav-preferences{margin-left:auto}.theme-toggle{min-width:36px;min-height:36px}}
@media(min-width:521px) and (max-width:1000px){header{height:auto;flex-wrap:wrap;gap:8px;padding:15px 18px}header>nav{width:100%;flex-wrap:wrap;overflow:visible}.nav-preferences{margin-left:auto}}
.metric-row article {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 15px;
  padding: 21px;
  box-shadow: var(--shadow);
}
.metric-row span, .metric-row small { display: block; color: var(--muted); }
.metric-row strong { display: block; font-size: 29px; }
.metric-row abbr { display:inline-grid;place-items:center;width:18px;height:18px;border:1px solid var(--line);border-radius:99px;text-decoration:none;cursor:help;font-size:11px }
.metric-counts { display:flex;gap:18px;flex-wrap:wrap;align-items:center;background:#e8efe9;border-radius:12px;padding:12px 16px;margin-bottom:16px }
.metric-counts a { margin-left:auto }
.language-switch,.metric-control { display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0 }
.sr-only { position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important }
.ui-language-switch { display:inline-flex;align-items:center;margin-left:4px }
.ui-language-switch label { display:inline-flex;align-items:center;gap:5px;color:#b9c6be }
.ui-language-switch select { min-height:40px;padding:7px 28px 7px 9px;background:#26362d;color:#fff;border:1px solid #52635a;border-radius:8px;font-weight:750 }
.ui-language-switch select:focus-visible { outline:3px solid rgba(199,243,107,.6);outline-offset:2px }
.language-choice { display:inline-flex;align-items:center;min-height:40px;padding:7px 11px;border:1px solid #cbd3ce;border-radius:8px;background:#eef1ef;color:#59635d;font-weight:600;text-decoration:none }
.language-choice.active { border-color:var(--green);background:var(--green);color:#fff;font-weight:800;box-shadow:0 0 0 2px rgba(12,107,73,.14) }
.language-choice.inactive:hover,.language-choice.inactive:focus-visible { border-color:#8cb5a6;background:#e3ebe6;color:var(--green) }
.language-choice:focus-visible { outline:3px solid rgba(12,107,73,.25);outline-offset:2px }
.metric-control { padding:12px 16px;background:#f5f7f5;border:1px solid var(--line);border-radius:12px }
.metric-control label { display:flex;gap:10px;align-items:center;font-weight:650 }
.metric-control select { min-width:72px }
.language-badge { display:inline-block;font-size:12px;font-weight:650;background:#edf2ee;border-radius:99px;padding:2px 7px;color:#435148 }
.language-filter { display:flex;align-items:center;gap:8px;flex-wrap:wrap;width:100%;padding:7px 4px 0 }
.language-filter>span,.language-filter small { color:var(--muted);font-size:12px }
.language-filter label { background:#f0f4f1;border-radius:8px;padding:5px 8px;white-space:nowrap }
.language-filter input { min-width:auto;padding:0 }
.filters-wide { max-width:900px;flex-wrap:wrap }
.formulas h2 { margin-top:28px }.formulas h2:first-child{margin-top:0}.formulas p{color:var(--muted)}.formulas p b{color:var(--ink)}
.history-note {
  display: flex;
  flex-direction: column;
  background: #f2f5f2;
  border-radius: 10px;
  padding: 12px 15px;
  margin: 0 0 12px;
}
.history-note span { color: var(--muted); font-size: 13px; }
.grade-controls {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  flex-wrap: wrap;
  background: #f5f7f5;
  border-radius: 12px;
  padding: 12px;
  margin: 18px 0;
}
.grade-checks { display: flex; gap: 7px; flex: 1; flex-wrap: wrap; }
.grade-check { background: #fff; border: 1px solid var(--line); padding: 7px 9px; border-radius: 8px; font-size: 13px; }
.grade-check input { min-width: auto; padding: 0; }
.grade-delta { color: var(--green); font-weight: 700; }
.button.secondary.inline { margin-top: 0; padding: 11px 17px; }
.collection-form { display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:12px;align-items:end }
.collection-form label { display:flex;flex-direction:column;gap:5px;font-weight:650;color:var(--muted) }
.collection-form textarea { min-height:74px;resize:vertical;border:0;border-radius:8px;padding:11px 13px;font:inherit;background:#eef2ef }
.collection-form button { justify-self:start }
.inline-delete { display:flex;gap:8px;align-items:center;flex-wrap:wrap }
.inline-delete label { color:var(--muted);font-size:13px }
.inline-delete input { min-width:auto;padding:0 }
.set-head { display:flex;justify-content:space-between;gap:22px;align-items:flex-end;margin-bottom:18px }
.set-head h1 { font-size:clamp(34px,5vw,54px) }
.set-head p { color:var(--muted);margin:8px 0 0 }
.set-meta { display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;max-width:520px }
.set-meta>span { background:#fff;border:1px solid var(--line);border-radius:99px;padding:6px 10px;color:var(--muted);font-weight:650 }
.value-bars { display:flex;flex-direction:column;gap:9px;margin:16px 0 }
.value-bars span { display:block;max-width:100%;height:13px;border-radius:99px;background:var(--green) }
.value-bars span:first-child { background:#d7e1db }
.form-span { grid-column:1 / -1 }
.form-label { display:block;color:var(--muted);font-weight:650;margin-bottom:6px }
.grader-options { display:flex;gap:8px;flex-wrap:wrap }
.grader-options label { display:inline-flex;flex-direction:row;align-items:center;background:#eef2ef;border-radius:8px;padding:8px 10px;color:var(--ink) }
.grader-options input { min-width:auto;padding:0 }
.cost-editor { border:1px solid var(--line);border-radius:10px;padding:12px }
.cost-row { display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:8px;margin:8px 0 }
.cost-details summary { cursor:pointer;color:var(--green);font-weight:700 }
.cost-details ul { margin:8px 0 0;padding-left:18px }
.cost-details li { margin:4px 0 }
.cost-details li b { margin-left:8px }
.cost-details small { display:block;color:var(--muted) }
.condition-badge,.grader-badge { display:inline-block;border-radius:99px;padding:3px 8px;font-size:12px;font-weight:800;border:1px solid transparent }
.grader-badge { background:#edf2ee;color:#27342d;border-color:#d7e1db }
.condition-mint { background:#d7ecff;color:#165f9e;border-color:#9bc9ef }
.condition-near-mint { background:#e1f4e9;color:#0c6b49;border-color:#9bd0af }
.condition-excellent { background:#fff2bf;color:#6c5600;border-color:#e0c95f }
.condition-good { background:#ffe0a8;color:#7c4b00;border-color:#d8a346 }
.condition-light-played { background:#ffd1b8;color:#8a3d11;border-color:#dc8557 }
.condition-played { background:#f5c4c4;color:#942828;border-color:#d97878 }
.condition-poor,.condition-unknown { background:#e1d7ee;color:#56396f;border-color:#b9a4d2 }
.condition-sealed { background:#eef0f5;color:#36415f;border-color:#c9d0de }
.row-actions { display:flex;gap:9px;align-items:center;flex-wrap:wrap }
.portfolio-chart-controls label { display:flex;gap:8px;align-items:center;font-weight:650;color:var(--muted) }
.distribution-chart { display:grid;grid-template-columns:minmax(160px,240px) 1fr;gap:24px;align-items:center;margin-top:16px }
.pie { width:100%;aspect-ratio:1;border-radius:50%;border:1px solid var(--line);box-shadow:var(--shadow) }
.legend-swatch { display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:8px;vertical-align:-1px }
.legend-table { min-width:0 }
.catalog-set-table td:first-child { display:flex;gap:12px;align-items:center }
.asset-wrap,.asset-placeholder { display:inline-grid;place-items:center;background:#eef2ef;border:1px solid var(--line);color:var(--muted);font-weight:800;overflow:hidden }
.asset-placeholder[hidden] { display:none }
.asset-wrap img { width:100%;height:100%;object-fit:contain;display:block }
.asset-placeholder span { padding:4px }
.set-logo { width:58px;height:42px;border-radius:8px;flex:0 0 auto }
.set-detail-logo { width:180px;min-height:92px;border-radius:10px }
.card-thumb { width:54px;aspect-ratio:245/337;border-radius:7px;vertical-align:middle;margin-right:10px }
.neutral-card-table td:nth-child(2) { display:flex;gap:10px;align-items:center }
.neutral-card-table td:nth-child(2)>span:last-child { overflow-wrap:anywhere }
.catalog-card-link { display:flex;gap:10px;align-items:center;min-width:0 }
.catalog-card-link>span:last-child { overflow-wrap:anywhere }
.card-image-tools { display:inline-flex;align-items:center;gap:7px }
.zoom-source.asset-wrap,.zoom-source.asset-placeholder { display:none }
.image-zoom { width:40px;height:40px;padding:0;background:#edf2ee;color:var(--green);border:1px solid var(--line);font-size:22px }
.catalog-add { margin-top:0!important;white-space:nowrap }
.neutral-card-table td:nth-child(3) { display:flex;align-items:center;gap:8px;flex-wrap:wrap }
.catalog-population-link { display:block;font-weight:700;white-space:normal;max-width:230px }
.catalog-population-missing { max-width:230px;white-space:normal }
.catalog-execution-select { display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-bottom:18px }
.catalog-execution-select label { display:flex;flex-direction:column;gap:5px;color:var(--muted);font-weight:650;min-width:min(100%,360px) }
.catalog-population-grid { display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);gap:24px }
.catalog-population-grid h3 { margin-top:18px }
.catalog-population-metrics { display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 }
.catalog-population-metrics span { padding:7px 9px;background:#f0f3f1;border-radius:7px;font-size:12px }
.catalog-grade-list { display:flex;flex-direction:column }
.catalog-grade-row { display:flex;justify-content:space-between;gap:20px;padding:7px 0;border-bottom:1px solid var(--line) }
.catalog-entries { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px }
.catalog-entries>a { display:flex;flex-direction:column;padding:20px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow) }
.catalog-entries strong { font-size:20px }
.catalog-entries span { color:var(--muted) }
.catalog-search { max-width:none }
.catalog-card-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px }
.catalog-card-result { position:relative;display:grid;grid-template-rows:1fr auto;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff;min-width:0 }
.catalog-card-main { display:grid;grid-template-columns:76px 1fr;gap:12px;min-width:0;color:var(--ink) }
.catalog-card-main>span:last-child { min-width:0;overflow-wrap:anywhere }
.catalog-card-main strong,.catalog-card-main small { display:block }
.catalog-card-main small { color:var(--muted) }
.card-rarity { display:block;color:var(--muted);font-size:12px;margin-top:3px }
.catalog-card-image { width:76px;aspect-ratio:245/337;border-radius:7px }
.catalog-card-actions { display:flex;align-items:center;justify-content:flex-start;gap:8px;min-height:42px;flex-wrap:wrap }
.catalog-cgc-hint { display:block;margin-top:5px;color:var(--green);font-size:12px;font-weight:750 }
.portfolio-chart-controls { max-width:none;align-items:end }
.portfolio-chart-controls label { display:flex;flex:1 1 220px;flex-direction:column;gap:4px;color:var(--muted);font-size:12px;font-weight:700 }
.portfolio-chart-controls select,.portfolio-chart-controls button { width:100%;min-height:42px }
.portfolio-chart-controls button { flex:0 1 210px }
.portfolio-chart-controls + p { margin-top:14px }
.catalog-add-head { display:flex;align-items:flex-start;gap:20px;margin-bottom:22px }
.collection-card-preview { width:140px;aspect-ratio:245/337;border-radius:9px }
.collection-thumb { width:42px;aspect-ratio:245/337;border-radius:6px;flex:0 0 auto }
.collection-card-table td:first-child { display:flex;gap:9px;align-items:flex-start }
.collection-filters { display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:16px }
.collection-filters label { display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:12px;font-weight:700;min-width:0 }
.collection-filters input,.collection-filters select { width:100%;min-width:0;min-height:42px }
.collection-search { grid-column:span 2 }
.filter-actions { display:flex;align-items:end;gap:8px;grid-column:span 2 }
.collection-panel { padding:0 }
.collection-result-head { display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line) }
.collection-result-head span { color:var(--muted);font-size:13px }
.collection-list { display:flex;flex-direction:column }
.collection-row { display:grid;grid-template-columns:48px minmax(260px,1fr) minmax(250px,.75fr);gap:13px;padding:14px 20px;border-bottom:1px solid var(--line);align-items:start }
.collection-row:last-child { border-bottom:0 }
.collection-row:hover { background:#f7faf7 }
.collection-image { width:42px }
.collection-title { display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:16px;font-weight:750 }
.collection-main p { margin:3px 0;color:var(--muted);overflow-wrap:anywhere }
.collection-tags { display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:7px }
.collection-tags>span:not(.condition-badge):not(.grader-badge) { padding:3px 7px;border-radius:7px;background:#f0f3f1;font-size:12px }
.collection-note { font-size:13px;color:var(--ink)!important;margin-top:8px!important;white-space:pre-wrap }
.collection-values { display:flex;flex-direction:column;gap:4px;font-size:13px }
.collection-values>span { display:flex;justify-content:space-between;gap:10px;color:var(--muted) }
.collection-values b { color:var(--ink);text-align:right }
.collection-values .cost-details { color:var(--ink) }
.collection-actions { display:grid;grid-template-columns:1fr;gap:8px;margin-top:7px;padding-top:7px;border-top:1px solid var(--line) }
.collection-action-group { display:flex;align-items:center;gap:10px;min-height:24px;flex-wrap:wrap }
.collection-item-actions { padding-top:7px;border-top:1px dashed var(--line) }
.collection-market-actions:empty { display:none }
.collection-market-actions .population-unavailable { width:auto }
.population-action { font-weight:750 }
.population-unavailable { color:var(--muted);font-size:12px;width:100% }
.delete-link { color:var(--red) }
.status-badge { display:inline-block;padding:3px 7px;border-radius:7px;background:#edf2ee;color:#435148;font-size:11px;font-weight:800 }
.status-for_trade { background:#fff2bf;color:#6c5600 }
.status-sold,.status-traded { background:#eef0f5;color:#5c6477 }
.success-notice { padding:11px 14px;background:#e1f4e9;border:1px solid #9bd0af;border-radius:9px;color:var(--green);font-weight:700 }
.delete-confirm { max-width:720px }
.delete-confirm form>label { display:flex;align-items:flex-start;gap:9px;padding:14px 0 }
.delete-confirm input { flex:0 0 auto;min-width:auto;margin-top:4px }
[hidden] { display:none!important }
.image-lightbox { border:0;border-radius:10px;padding:18px;max-width:min(92vw,620px);background:#fff }
.image-lightbox::backdrop { background:rgba(10,18,13,.82) }
.image-lightbox img { display:block;max-width:100%;max-height:80vh;margin:auto;object-fit:contain }
.image-lightbox p { margin:10px 42px 0 0;color:var(--muted) }
.lightbox-close { position:absolute;right:10px;top:10px;width:40px;height:40px;padding:0;border-radius:50%;font-size:25px }
.snapshot-comparison { margin-top:22px;padding:18px;background:#f2f5f2;border:1px solid var(--line);border-radius:8px }
.snapshot-comparison h3 { margin:0 0 8px;font-size:18px }
.snapshot-comparison p { margin:6px 0 }
.snapshot-delta b { color:var(--green);font-size:20px }
.data-warning { display:block;margin-top:12px;padding:10px 12px;background:#fff2bf;color:#594500;border-radius:8px }
.grade-change-list,.status-list,.recent-list { list-style:none;padding:0;margin:12px 0 0 }
.grade-change-list li,.status-list li,.recent-list li { display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid var(--line) }
.recent-list li { align-items:baseline }
.recent-list li span { color:var(--muted);font-size:13px;text-align:right }
.account-form { display:flex;flex-direction:column;gap:12px;margin-top:16px }
.account-form label { display:flex;flex-direction:column;gap:5px;color:var(--muted);font-weight:650 }
.account-form .confirm-line { flex-direction:row;align-items:flex-start;color:var(--ink) }
.account-form .confirm-line input { min-width:auto;flex:0 0 auto;margin-top:5px }
.delete-button { background:var(--red);margin-top:12px }
.legal { max-width:820px;margin:auto }
.legal h2 { margin-top:28px;font-size:20px }
.legal-warning { margin-top:24px;padding:12px;background:#fff2bf;border-radius:8px }
footer { display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap }
footer nav { display:flex;gap:12px;flex-wrap:wrap }
footer nav a { padding:4px 0;color:var(--green) }
.nav-logout { display:inline-flex;margin:0 }
.nav-logout button { min-height:0;padding:9px 13px;background:transparent;color:#b9c6be;font-weight:400;white-space:nowrap }
.nav-logout button:hover { background:#26362d;color:#fff }
@media (max-width: 900px) { .catalog-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)) } }
@media (max-width: 800px) { .metric-row { grid-template-columns: 1fr 1fr; } }
@media (max-width: 800px) {
  .collection-filters { grid-template-columns:repeat(2,minmax(0,1fr)) }
  .collection-row { grid-template-columns:48px minmax(0,1fr) }
  .collection-values { grid-column:2 }
}
@media (max-width: 520px) { .metric-row,.collection-form { grid-template-columns: 1fr; } }
@media (max-width: 800px) {
  .set-head { align-items:flex-start;flex-direction:column }
  .set-meta { justify-content:flex-start;max-width:none }
}
@media (max-width: 520px) {
  header { gap:12px;flex-wrap:wrap }
  nav { display:flex; width:100%; overflow:visible; flex-wrap:wrap; padding-bottom:3px }
  nav a { min-height:44px; display:inline-flex; align-items:center }
  .hero,.panel { border-radius:12px }
  .hero-search,.filters { flex-direction:column }
  .filters>input,.filters>select,.filters>button,.hero-search input,.hero-search button { width:100%; min-height:44px }
  .language-filter { gap:6px;padding-top:4px }
  .language-filter label { display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:6px 9px;font-size:13px }
  .language-filter label:has(input:checked) { background:#dcebe0;color:var(--green);box-shadow:inset 0 0 0 1px #8cb5a6 }
  .language-filter input { width:auto;min-height:0;flex:0 0 auto }
  .page-title h1,.detail-head h1,.set-head h1 { font-size:32px;overflow-wrap:anywhere }
  .detail-head p,.set-head p,td,td small { overflow-wrap:anywhere; word-break:normal }
  .population { min-width:0 }
  .population strong { font-size:34px }
  .grade { grid-template-columns:90px 1fr 52px; gap:10px }
  .metric-control label { align-items:flex-start;flex-direction:column;width:100% }
  .metric-control select,.metric-control button,.grade-controls select,.grade-controls button,.grade-controls .button { width:100%;min-height:44px }
  .table-wrap { max-width:100%; overflow-x:auto }
  table { min-width:620px }
  td { white-space:normal; vertical-align:top }
  th,td { padding:10px }
  .collection-form input,.collection-form select,.collection-form textarea,.collection-form button { width:100%; min-height:44px }
  .inline-delete button { min-height:44px }
  .cost-row { grid-template-columns:1fr }
  .catalog-entries,.catalog-card-grid { grid-template-columns:1fr }
  .catalog-add-head { flex-direction:column }
  .collection-filters { grid-template-columns:1fr }
  .collection-search,.filter-actions { grid-column:auto }
  .filter-actions { align-items:stretch;flex-direction:column }
  .collection-result-head { align-items:flex-start;flex-direction:column;padding:15px }
  .collection-row { grid-template-columns:42px minmax(0,1fr);padding:13px 15px }
  .collection-values { grid-column:1 / -1 }
  .collection-actions a { min-height:40px;display:inline-flex;align-items:center }
  .ui-language-switch { margin-left:auto }
  .ui-language-switch select { min-height:44px }
  .portfolio-chart-controls { flex-direction:column;align-items:stretch }
  .portfolio-chart-controls label,.portfolio-chart-controls button { width:100%;flex-basis:auto }
  .recent-list li { align-items:flex-start;flex-direction:column;gap:2px }
  .account-form input,.account-form button { width:100%;min-height:44px }
  .account-form .confirm-line input { width:auto;min-height:0 }
  footer { align-items:flex-start;flex-direction:column }
}
@media (max-width: 600px) {
  .catalog-population-grid { grid-template-columns:1fr }
  .catalog-execution-select select,.catalog-execution-select button { width:100%;min-height:44px }
  .mobile-card-table { min-width:0;border-collapse:separate;border-spacing:0 10px }
  .mobile-card-table thead { position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0) }
  .mobile-card-table tbody,.mobile-card-table tr,.mobile-card-table td { display:block;width:100% }
  .mobile-card-table tr { background:#fff;border:1px solid var(--line);border-radius:12px;padding:11px;box-shadow:var(--shadow) }
  .mobile-card-table td { border:0;padding:5px 0;white-space:normal;overflow-wrap:anywhere }
  .mobile-card-table td::before { content:attr(data-label);display:block;color:var(--muted);font-size:11px;text-transform:uppercase;font-weight:800;margin-bottom:1px }
  .set-card-table tr { display:flex;flex-direction:column }
  .set-card-table td:nth-child(2) { order:1;font-weight:800;color:var(--green) }
  .set-card-table td:nth-child(1) { order:2;font-size:16px;font-weight:700 }
  .set-card-table td:nth-child(3) { order:3 }
  .set-card-table td:nth-child(4) { order:4 }
  .collection-card-table tr { display:flex;flex-direction:column }
  .collection-card-table td:nth-child(1) { order:1;font-size:16px;font-weight:700 }
  .collection-card-table td:nth-child(2) { order:2 }
  .collection-card-table td:nth-child(5) { order:3 }
  .collection-card-table td:nth-child(6) { order:4 }
  .collection-card-table td:nth-child(7),.collection-card-table td:nth-child(8) { order:5 }
  .collection-card-table td:nth-child(10) { order:6 }
  .collection-card-table td:nth-child(11),.collection-card-table td:nth-child(12) { order:7 }
  .collection-card-table td:nth-child(3),.collection-card-table td:nth-child(4),.collection-card-table td:nth-child(9) { order:8 }
  .collection-card-table .inline-delete { align-items:flex-start;flex-direction:column }
  .neutral-card-table td:nth-child(1) { font-weight:800;color:var(--green) }
  .neutral-card-table td:nth-child(2) { align-items:flex-start }
  .neutral-card-table td:nth-child(3) { align-items:flex-start;flex-direction:column }
  .distribution-chart { grid-template-columns:1fr }
  .pie { max-width:240px;margin:auto }
}

/* Keep all legacy component rules bound to the KLENOD design tokens. */
.metric-row article,.stats article,.panel,.hero-search,.filters,.login-card{background:var(--surface);border-color:var(--border)}
.metric-counts,.metric-control,.language-filter label,.language-badge,.quality,.collection-summary,.collection-actions,.empty,.cost-details,.card-card,.set-card,.legal-warning{background:var(--surface-secondary);border-color:var(--border);color:var(--text)}
.metric-row span,.metric-row small,.language-filter>span,.language-filter small,.language-badge{color:var(--text-muted)}
.ui-language-switch label{color:var(--header-muted)}.ui-language-switch select{background:var(--header-surface);color:var(--header-text);border-color:var(--border)}
.language-choice{background:var(--surface-secondary);border-color:var(--border);color:var(--text-muted)}.language-choice.active{background:var(--brand);border-color:var(--brand);color:var(--text-on-brand)}.language-choice.inactive:hover,.language-choice.inactive:focus-visible{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}

/* Email confirmation is an account-security state, kept readable at every size. */
.verification-notice{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:0 0 16px;padding:20px;border:1px solid color-mix(in srgb,var(--warning) 45%,var(--border));border-radius:14px;background:var(--warning-soft);color:var(--text)}
.verification-notice h2{font-size:21px}.verification-notice p:last-child{margin-bottom:0;max-width:68ch}.verification-notice .row-actions{align-items:center}.verification-notice form{margin:0}.verification-notice .secondary{margin-top:0}.account-email-panel{display:flex;flex-direction:column;align-items:flex-start}.account-email-panel h2{margin-bottom:8px}.account-email-value{font-weight:750;overflow-wrap:anywhere;margin:0}.email-status{display:inline-block;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:800;background:var(--warning-soft);color:var(--warning);border:1px solid color-mix(in srgb,var(--warning) 45%,var(--border))}.email-status.verified{background:var(--success-soft);color:var(--success);border-color:color-mix(in srgb,var(--success) 40%,var(--border))}.account-resend{margin-top:12px}.account-resend .secondary{margin-top:0}
@media(max-width:520px){.verification-notice{align-items:flex-start;flex-direction:column;padding:16px}.verification-notice .row-actions{width:100%;align-items:stretch;flex-direction:column}.verification-notice .row-actions form,.verification-notice .row-actions a{width:100%}.verification-notice .row-actions button{width:100%}}

/* Theme regressions: component-specific legacy surfaces and badges. */
.collection-filters,.catalog-entries>a,.catalog-card-result,.set-meta>span{background:var(--surface);border-color:var(--border);color:var(--text)}
.catalog-entries>a:hover,.catalog-card-result:hover{background:var(--surface-secondary)}
.catalog-entries>a:focus-visible,.catalog-card-result:focus-within{outline:3px solid var(--focus-ring);outline-offset:2px}
.catalog-entries span,.catalog-card-main,.catalog-card-main small,.catalog-card-result .catalog-population-missing{color:var(--text-muted)}
.catalog-card-main strong,.catalog-card-main a,.catalog-card-result a{color:var(--text)}
.catalog-card-result .button{color:var(--text-on-brand)}.catalog-card-result .catalog-population-link{color:var(--brand)}.catalog-card-result .catalog-market-link{color:var(--brand)}
.collection-row{background:var(--surface);color:var(--text);transition:background-color .15s ease}
.collection-row:hover,.collection-row:focus-within{background:var(--surface-secondary)}
.collection-row:focus-within{outline:3px solid var(--focus-ring);outline-offset:-3px}
.collection-tags>span:not(.condition-badge):not(.grader-badge),.status-badge,.grader-badge{background:var(--surface-secondary);color:var(--text);border-color:var(--border)}.status-for_trade{background:var(--warning-soft);color:var(--warning);border-color:var(--warning)}.status-sold,.status-traded{background:var(--brand-soft);color:var(--brand);border-color:var(--brand)}
.collection-note,.collection-values b,.collection-values .cost-details{color:var(--text)!important}
.condition-mint{background:var(--brand-soft);color:var(--brand);border-color:var(--brand)}.condition-near-mint{background:var(--success-soft);color:var(--success);border-color:var(--success)}.condition-excellent{background:var(--warning-soft);color:var(--warning);border-color:var(--warning)}
@media (prefers-reduced-motion:reduce){.collection-row{transition:none}}
textarea,input,select{background:var(--input-bg);color:var(--text);border-color:var(--border)}textarea::placeholder,input::placeholder{color:var(--text-muted);opacity:1}textarea:disabled,input:disabled,select:disabled{background:var(--surface-secondary);color:var(--text-muted);opacity:1}

/* Final token overrides for legacy shorthand declarations and public CGC details. */
.collection-form textarea{background-color:var(--input-bg);color:var(--text);border:1px solid var(--border)}
.collection-form textarea:focus-visible{background-color:var(--input-bg);color:var(--text)}
.collection-form textarea::placeholder{color:var(--text-muted);opacity:1}
.collection-form textarea:disabled,.collection-form textarea[readonly]{background-color:var(--surface-secondary);color:var(--text-muted)}
textarea::selection{background:var(--brand);color:var(--text-on-brand)}
.snapshot-comparison{background:var(--surface-secondary);color:var(--text);border-color:var(--border)}
.snapshot-comparison p{color:var(--text-muted)}.snapshot-comparison h3,.snapshot-comparison .snapshot-delta{color:var(--text)}
.catalog-population-metrics span{background:var(--surface-secondary);color:var(--text);border:1px solid var(--border)}
.catalog-population-metrics span b{color:var(--text)}
.snapshot-delta b.good,.grade-change-list b.good{color:var(--success)}.snapshot-delta b.bad,.grade-change-list b.bad{color:var(--danger)}.snapshot-delta b.neutral,.grade-change-list b.neutral{color:var(--text-muted)}
.catalog-population .chart{background:var(--surface-secondary);border:1px solid var(--border);border-radius:8px}
.set-card-controls{max-width:none;align-items:end;flex-wrap:wrap}.set-card-controls input{flex:1 1 220px;min-width:0}.set-card-controls select{flex:0 1 210px;min-width:0}.set-card-controls .button{margin-top:0}
@media (max-width:520px){.set-card-controls input,.set-card-controls select,.set-card-controls button,.set-card-controls .button{width:100%;flex-basis:100%}}

/* Feedback is a regular form, never an inline filter row. */
.feedback-form{max-width:760px}.feedback-form form{display:flex;flex-direction:column;gap:14px;margin-top:18px}.feedback-form label{display:flex;flex-direction:column;gap:6px;color:var(--text-muted);font-weight:650}.feedback-form textarea{min-height:130px;resize:vertical;padding:11px 13px;font:inherit}.feedback-form button{align-self:flex-start;min-height:44px}
@media (max-width:520px){.feedback-form button,.feedback-form select,.feedback-form textarea{width:100%;min-height:44px}}

/* Open-beta entry pages keep the existing tokens while using a deliberate layout. */
.public-hero{background:var(--header-bg);padding:clamp(32px,6vw,68px);display:block}
.public-hero-content{max-width:720px}.hero-wordmark{display:block;width:min(300px,72vw);height:58px;margin:0 0 30px;background:var(--header-text);mask:url('/static/klenod-logo.svg') center/contain no-repeat;-webkit-mask:url('/static/klenod-logo.svg') center/contain no-repeat}
.public-hero h1{color:var(--header-text);max-width:620px}.public-hero p:not(.eyebrow){color:var(--header-muted);max-width:680px}.hero-actions{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap;margin-top:28px}.hero-actions .button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin:0}.hero-actions .button.secondary{margin-top:0;background:transparent;color:var(--header-text);border:1px solid color-mix(in srgb,var(--header-text) 45%,transparent)}.hero-actions .button.secondary:hover{background:var(--header-surface)}
.public-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.public-stats article{min-width:0}.public-features{grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch}.public-features .panel{grid-column:span 2;min-width:0}.public-features .panel:nth-last-child(-n+2){grid-column:span 3}.public-info{margin-top:16px}.coming-next ul{margin-bottom:0;padding-left:20px}.coming-next li+li{margin-top:7px}
.login-card{margin:5vh auto}.login-card form{gap:12px}.login-card form button{min-height:46px;margin-top:6px}.form-fields{display:grid;gap:10px}.form-help{margin:0;color:var(--text-muted);font-size:13px}.confirm-line{line-height:1.45}.auth-links{margin:22px 0 0;color:var(--text-muted)}.auth-links hr{border:0;border-top:1px solid var(--border);margin:20px 0}.auth-links p{margin:0}.auth-links a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:800px){.public-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.public-features{grid-template-columns:repeat(2,minmax(0,1fr))}.public-features .panel,.public-features .panel:nth-last-child(-n+2){grid-column:auto}}
@media(max-width:520px){.public-hero{padding:28px 22px}.hero-wordmark{height:42px;margin-bottom:25px}.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions .button{width:100%;min-height:48px}.public-stats,.public-features{grid-template-columns:1fr}.public-features .panel,.public-features .panel:nth-last-child(-n+2){grid-column:auto}.login-card{margin:0 auto;padding:28px 22px}.login-card h1{font-size:clamp(30px,9vw,38px)}}
