/* Card detail dialog and score table (engine/card_detail.js), shared by the Themes pages and the workbench. */
.score-breakdown{width:100%;border-collapse:collapse;font-size:13px;margin:10px 0}
.score-breakdown td{padding:3px 4px;vertical-align:top}
.score-breakdown td:last-child,.score-total td{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.score-group th{text-align:left;font-weight:400;font-size:11px;line-height:1.4;color:var(--muted);padding:10px 4px 3px;border-bottom:1px solid var(--line)}
.score-total th{text-align:left;padding:8px 4px 0;border-top:1px solid var(--line)}.score-total{font-weight:700}
.source-tag{display:inline-block;padding:0 5px;margin-right:2px;border:1px solid var(--line);border-radius:var(--radius-sm);font:10px/1.6 var(--font-mono);text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}
.source-llm,.source-manual{border-color:var(--warn-line);color:var(--warn)}
.source-parser,.source-labels{border-color:var(--positive-line);color:var(--positive)}
.source-decks{border-color:var(--accent-line);color:var(--accent)}
.card-detail-note{margin:4px 0;font-size:12px;color:var(--muted)}

dialog.card-detail{width:min(820px,calc(100% - 24px));max-height:90dvh;overflow:auto;padding:28px;border:1px solid var(--accent-line);border-radius:var(--radius-md);background:var(--surface);color:var(--text);box-shadow:var(--overlay-shadow)}
dialog.card-detail::backdrop{background:var(--scrim);backdrop-filter:blur(3px)}
.card-detail-close{position:absolute;right:12px;top:12px;width:44px;height:44px;padding:0;font-size:24px;line-height:1;background:var(--soft);border-radius:50%;z-index:1}
.card-detail-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start;margin-bottom:16px}
.card-detail-image{width:100%;height:auto;border-radius:var(--radius-md);aspect-ratio:488/680}
.card-detail h2{font:500 26px/1.2 var(--font-display);margin:5px 44px 8px 0}
.card-detail-meta{margin:0 0 8px;color:var(--muted);font-size:12px}
.card-detail-rationale{margin:8px 0;font-size:13px;line-height:1.55;color:var(--muted)}.card-detail-rationale .source-tag{margin-left:6px}
.card-detail-oracle{white-space:pre-line;font-size:13px;line-height:1.65}
.card-detail-links{display:flex;flex-wrap:wrap;gap:14px;margin:14px 0 0;font-size:13px}
@media(max-width:600px){
  dialog.card-detail{padding:18px 14px}
  .card-detail-grid{display:block}
  .card-detail-image{float:left;width:100px;margin:0 12px 8px 0}
  .card-detail h2{font-size:20px;margin-right:36px}
  .card-detail-main .score-breakdown{clear:both}
}
