/* scene-specific styles: investor group (overview, find-investors, investor-profile, directory).
   Everything here is prefixed dm-investor-; the frame, rows, tiles and tags come from core.css. */

/* shared: a name with a line under it (row, header, card) */
.dm-investor-who { flex: 1; min-width: 0; line-height: 1.25; }
.dm-investor-prof .dm-kpi { padding: 10px 12px; line-height: 1.25; }
.dm-investor-prof .dm-kpi b { font-size: 1.22rem; }
.dm-investor-who b { display: block; color: var(--ink); font-weight: 550; font-size: 0.78rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dm-investor-who small { display: block; color: var(--faint); font-size: 0.64rem; margin-top: 1px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dm-investor-score { color: var(--ink); font-weight: 650; min-width: 34px; }
.dm-investor-score i { font-style: normal; color: var(--faint); font-weight: 400; font-size: 0.66rem; }

/* --- find-investors --------------------------------------------------------- */
.dm-investor-find .dm-field { padding: 6px 2px; border-bottom: 1px solid var(--line-soft); }
.dm-investor-find .dm-field:last-of-type { border-bottom: 0; }
.dm-investor-find .dm-field b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
.dm-investor-actions { display: flex; align-items: center; gap: 12px; margin-top: 14px; }
.dm-investor-actions .dm-note { margin: 0; }
.dm-investor-find { position: relative; grid-template-columns: 0.85fr 1.15fr; }
.dm-investor-inv { padding: 6px 9px; }
.dm-investor-reasons { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 6px; margin-top: 3px; }
.dm-investor-reasons small { display: inline; margin: 0; flex: none; max-width: 42%; }
.dm-investor-reasons .dm-tag { font-size: 0.6rem; padding: 0 7px; max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
.dm-investor-find .dm-toast { position: absolute; left: 32px; bottom: 32px; z-index: 5; }
[dir="rtl"] .dm-investor-find .dm-toast { left: auto; right: 32px; }
:is(.split-visual, .flow-step) .dm-investor-find .dm-toast, [dir="rtl"] .split-visual .dm-investor-find .dm-toast { position: static; margin-top: 2px; }

/* --- investor-profile ------------------------------------------------------- */
.dm-investor-prof { display: grid; gap: 12px; }
.dm-investor-head { display: flex; align-items: center; gap: 10px; padding: 2px 2px 4px; opacity: 0; transform: translateY(8px); transition: opacity 0.45s ease, transform 0.5s var(--ease-out); }
.dm-investor-head.in { opacity: 1; transform: none; }
.dm-investor-head .dm-avatar { width: 34px; height: 34px; font-size: 0.74rem; }
.dm-investor-head .dm-investor-who b { font-family: var(--font-display); font-size: 0.98rem; font-weight: 650; }
.dm-investor-head .dm-investor-who small { font-size: 0.7rem; }
.dm-investor-profgrid { display: grid; grid-template-columns: 1.15fr 1.2fr 1fr; gap: 12px; }
.dm-investor-line { margin: 0 0 6px; color: var(--muted); font-size: 0.74rem; line-height: 1.45; min-height: 1.45em; }
.dm-investor-line:last-child { margin-bottom: 0; }
.dm-investor-path { display: flex; align-items: flex-start; width: 100%; box-sizing: border-box; border-radius: 10px; padding: 5px 10px; margin-bottom: 5px; line-height: 1.3; }
.dm-investor-path i { margin-top: 2px; }
.dm-investor-path:last-child { margin-bottom: 0; }
.dm-investor-path i { display: grid; place-items: center; flex: none; opacity: 0; transform: scale(0.5); transition: opacity 0.3s, transform 0.35s var(--ease-spring); }
.dm-investor-path.on i { opacity: 1; transform: scale(1); }
.dm-investor-path span { min-width: 0; }
.dm-investor-prof .dm-row.rise { padding: 7px 9px; }

/* --- directory ------------------------------------------------------------- */
.dm-investor-dir { display: grid; grid-template-columns: 178px 1fr; gap: 16px; align-items: start; }
.dm-investor-filters { gap: 12px; }
.dm-investor-group h6 { margin-bottom: 6px; }
.dm-investor-group .dm-chip { transition: border-color 0.25s, background 0.25s, color 0.25s; }
.dm-investor-results { min-width: 0; }
.dm-investor-countline { display: flex; align-items: baseline; gap: 6px; margin-bottom: 10px; padding: 0 2px; }
.dm-investor-countline b { font-family: var(--font-display); font-size: 1.05rem; font-weight: 700; color: var(--ink); font-variant-numeric: tabular-nums; }
.dm-investor-countline span { color: var(--faint); font-size: 0.72rem; }
.dm-investor-sort { margin-left: auto; }
[dir="rtl"] .dm-investor-sort { margin-left: 0; margin-right: auto; }
.dm-investor-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.dm-investor-card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.015) 55%);
  border: 1px solid var(--line-soft); border-radius: 12px; padding: 10px 12px; min-width: 0;
  opacity: 0; transform: translateY(8px); transition: opacity 0.4s ease, transform 0.45s var(--ease-out);
}
.dm-investor-card.in { opacity: 1; transform: none; }
.dm-investor-cardhead { display: flex; align-items: center; gap: 8px; }
.dm-investor-cheque { display: flex; align-items: baseline; gap: 6px; margin-top: 8px; }
.dm-investor-cheque span { flex: none; color: var(--faint); font-size: 0.62rem; text-transform: uppercase; letter-spacing: 0.06em; font-weight: 600; }
.dm-investor-cheque b { color: var(--ink); font-size: 0.74rem; font-variant-numeric: tabular-nums; white-space: nowrap; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.dm-investor-tags { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 7px; }
.dm-investor-tags .dm-tag { font-size: 0.62rem; padding: 1px 8px; }

/* --- split column (560px), hero column and phone widths ----------------------- */
:is(.split-visual, .flow-step) .dm-investor-profgrid { grid-template-columns: 1fr 1fr; }
:is(.split-visual, .flow-step) .dm-investor-profgrid .dm-panel:first-child { grid-column: 1 / -1; }
:is(.split-visual, .flow-step) .dm-investor-find { grid-template-columns: 1fr; }
:is(.split-visual, .flow-step) .dm-investor-dir, .page-hero-visual .dm-investor-dir { grid-template-columns: 1fr; }
:is(.split-visual, .flow-step) .dm-investor-filters, .page-hero-visual .dm-investor-filters { flex-direction: row; flex-wrap: wrap; gap: 10px 18px; }
:is(.split-visual, .flow-step) .dm-investor-cards, .page-hero-visual .dm-investor-cards { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 860px) {
  .dm-investor-find { grid-template-columns: 1fr; }
  .dm-investor-profgrid { grid-template-columns: 1fr; }
  .dm-investor-dir { grid-template-columns: 1fr; }
  .dm-investor-filters { flex-direction: row; flex-wrap: wrap; gap: 10px 18px; }
  .dm-investor-cards { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
  .dm-investor-prof .dm-kpi span { font-size: 0.56rem; letter-spacing: 0.04em; }
  .dm-investor-head { display: grid; grid-template-columns: auto 1fr; }
  .dm-investor-head .dm-badge { grid-column: 2; justify-self: start; }
  .dm-investor-reasons small { max-width: 100%; }
  .dm-investor-find .dm-toast, [dir="rtl"] .dm-investor-find .dm-toast { position: static; margin-top: 2px; }
  .dm-investor-cards { grid-template-columns: 1fr 1fr; }
  .dm-investor-cardhead .dm-avatar { width: 22px; height: 22px; font-size: 0.56rem; }
  .dm-investor-cheque { flex-direction: column; align-items: flex-start; gap: 1px; }
  .dm-investor-sort { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .dm-investor-head, .dm-investor-card, .dm-investor-path i { opacity: 1; transform: none; transition: none; }
}

/* Half-width columns (split and hero): show the one panel the copy is about
   (find-investors ran to 704px beside 300px of text when every panel stacked). */
:is(.split-visual, .flow-step) .dm-investor-find > .dm-panel:first-child, :is(.split-visual, .flow-step) .dm-investor-find .dm-cursor { display: none; }
:is(.split-visual, .flow-step) .dm-investor-find .dm-investor-inv:nth-of-type(n+6) { display: none; }
