/* Type 1 DB Dashboard v0.26 — Reverse / Physical Characteristics layer */
.span-12 { grid-column: span 12; }
.version-pill {
  display:inline-flex; align-items:center; margin-left:7px; padding:1px 6px;
  border:1px solid var(--line); border-radius:999px; color:#e8c887; font-size:10px;
  font-weight:800; letter-spacing:.04em; vertical-align:1px; background:var(--accent-soft);
}
.physical-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.physical-summary-card {
  border:1px solid var(--line-soft); border-radius:11px; padding:12px;
  background:rgba(255,255,255,.018);
}
.physical-summary-value { font-size:23px; font-weight:850; letter-spacing:-.04em; }
.physical-summary-label { color:var(--muted); font-size:10px; margin-top:2px; }
.physical-family-list { display:flex; flex-direction:column; gap:9px; }
.physical-family-row { display:grid; grid-template-columns:minmax(130px,1.25fr) minmax(100px,2.6fr) auto; gap:10px; align-items:center; font-size:12px; }
.physical-family-name { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.physical-family-track { height:8px; background:#0d141e; border-radius:999px; overflow:hidden; border:1px solid rgba(255,255,255,.025); }
.physical-family-fill { height:100%; border-radius:inherit; background:linear-gradient(90deg,#8f80bd,#c4b7e9); }
.physical-family-count { color:var(--muted); font-variant-numeric:tabular-nums; }
.physical-badge {
  display:inline-flex; align-items:center; gap:5px; border:1px solid rgba(112,189,145,.35);
  color:#a9ddb9; background:rgba(112,189,145,.09); border-radius:999px; padding:3px 7px;
  font-size:10px; font-weight:800; white-space:nowrap;
}
.mini-tag.physical-evidence-tag { color:#bdb2ea; border-color:rgba(169,152,218,.42); background:rgba(169,152,218,.08); }
.physical-evidence-block {
  margin:11px 0 4px; padding:11px; border:1px solid rgba(169,152,218,.28);
  border-radius:10px; background:rgba(169,152,218,.055);
}
.physical-evidence-block summary {
  cursor:pointer; list-style:none; display:flex; align-items:center; justify-content:space-between; gap:12px;
  font-size:11px; font-weight:800; color:#ded8f3;
}
.physical-evidence-block summary::-webkit-details-marker { display:none; }
.physical-evidence-block summary::after { content:'+'; color:var(--muted); font-size:16px; line-height:1; }
.physical-evidence-block[open] summary::after { content:'−'; }
.physical-evidence-body { margin-top:11px; display:flex; flex-direction:column; gap:10px; }
.physical-group { border-top:1px solid rgba(255,255,255,.06); padding-top:9px; }
.physical-group:first-child { border-top:0; padding-top:0; }
.physical-group-title { text-transform:uppercase; letter-spacing:.08em; color:var(--muted); font-size:9px; font-weight:850; margin-bottom:6px; }
.physical-chip-row { display:flex; flex-wrap:wrap; gap:5px; }
.physical-mark-chip {
  display:inline-flex; border:1px solid rgba(169,152,218,.28); border-radius:999px;
  background:rgba(169,152,218,.07); padding:3px 7px; font-size:10px; color:#d8d0ef;
}
.physical-detail-list { margin:0; padding-left:17px; color:var(--muted); font-size:10px; }
.physical-detail-list li + li { margin-top:3px; }
.physical-source { font-size:10px; color:var(--muted); }
.physical-source a { font-weight:700; }
.physical-method-note {
  border-left:3px solid var(--purple); padding:9px 11px; border-radius:0 9px 9px 0;
  background:rgba(169,152,218,.07); color:#d9d4e8; font-size:11px;
}
.physical-toolbar { display:flex; flex-wrap:wrap; align-items:end; gap:10px; margin-bottom:14px; }
.physical-toolbar label { display:flex; flex-direction:column; gap:5px; color:var(--muted); font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
.physical-toolbar .physical-search { flex:1 1 320px; }
.physical-toolbar input, .physical-toolbar select { width:100%; }
.physical-record-list { display:flex; flex-direction:column; gap:10px; }
.physical-record {
  border:1px solid var(--line-soft); border-radius:12px; padding:13px;
  background:rgba(255,255,255,.018);
}
.physical-record-head { display:flex; justify-content:space-between; align-items:start; gap:12px; }
.physical-record-id { font-size:10px; color:var(--muted); font-weight:850; letter-spacing:.04em; }
.physical-record-title { font-size:13px; font-weight:780; margin-top:3px; line-height:1.3; }
.physical-record-meta { display:flex; gap:5px; flex-wrap:wrap; margin-top:8px; }
.physical-record-body { margin-top:10px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px 14px; }
.physical-record-section { min-width:0; }
.physical-record-section strong { display:block; font-size:9px; text-transform:uppercase; letter-spacing:.08em; color:var(--muted); margin-bottom:4px; }
.physical-record-section span, .physical-record-section li { font-size:10px; color:#d7e0eb; }
.physical-record-section ul { margin:0; padding-left:16px; }
.physical-empty-note { color:var(--muted); font-size:11px; }
.physical-dictionary-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.physical-dictionary-card { border:1px solid var(--line-soft); border-radius:11px; padding:11px; background:rgba(255,255,255,.018); }
.physical-dictionary-name { font-size:12px; font-weight:800; }
.physical-dictionary-meta { color:var(--muted); font-size:10px; margin-top:3px; }
.physical-dictionary-count { margin-top:8px; font-size:10px; color:#cfc5ee; }

@media (max-width:900px) {
  .physical-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .physical-record-body { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .span-12 { grid-column:auto; }
  .physical-dictionary-grid { grid-template-columns:1fr; }
  .physical-family-row { grid-template-columns:100px minmax(70px,1fr) auto; }
}
