/* ================================================================
   Portfolio Holdings Module — holdings.css
   Append to app.css or link separately.
   All module-specific classes prefixed hld-
   ================================================================ */

/* ── Table: always-visible scrollbars + CSS sticky header ───── */
#hld-table-wrap {
  overflow: scroll;
  max-height: calc(100vh - 360px);
  min-height: 200px;
}

#hld-table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--surface-raised);
}

/* Legacy JS clone (no longer used) */
#hld-sticky-clone {
  display: none;
}

/* ── Summary strip ───────────────────────────────────────────── */
.hld-summary {
  display: flex;
  align-items: stretch;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  margin-bottom: var(--sp-5);
  overflow: hidden;
}

/* ── Editable cells ──────────────────────────────────────────── */
.hld-editable {
  cursor: pointer;
  border-bottom: 1px dashed var(--stone-mid);
  padding-bottom: 1px;
  transition: border-color var(--t-base), color var(--t-base);
  color: var(--cream-muted);
  display: inline-block;
  max-width: 160px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: middle;
}

.hld-editable:hover {
  border-color: var(--gold-muted);
  color: var(--cream);
}

/* ── Badges ──────────────────────────────────────────────────── */
.hld-badge {
  display: inline-block;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.06em;
  padding: 2px 7px;
  border-radius: 10px;
  border: 1px solid currentColor;
  white-space: nowrap;
  line-height: 1.5;
}

/* Asset type badges */
.hld-asset-senior-debt      { color: #4a90c4; }
.hld-asset-mezzanine-debt   { color: #9b72cb; }
.hld-asset-preferred-equity { color: #4aafaf; }
.hld-asset-common-equity    { color: #5A9E70; }
.hld-asset-warrants-options { color: var(--gold); }

/* Risk rating badges */
.hld-risk-outperforming  { color: #5A9E70; }
.hld-risk-performing     { color: #4a90c4; }
.hld-risk-watch_list     { color: var(--gold); }
.hld-risk-special_mention { color: #C0534A; }

/* ── Active Holdings toggle ───────────────────────────────────── */
.hld-active-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 5px 12px;
  border-radius: var(--radius);
  border: 1px solid var(--border-strong);
  background: transparent;
  color: var(--stone-light);
  cursor: pointer;
  transition: all var(--t-base);
}

.hld-active-btn:hover {
  border-color: var(--gold-muted);
  color: var(--cream-muted);
}

.hld-active-btn-on {
  border-color: rgba(90, 158, 112, 0.5);
  background: rgba(90, 158, 112, 0.12);
  color: #5A9E70;
}

.hld-active-btn-on:hover {
  border-color: rgba(90, 158, 112, 0.75);
  background: rgba(90, 158, 112, 0.18);
  color: #5A9E70;
}

/* ── Quarter tag ─────────────────────────────────────────────── */
.hld-quarter-tag {
  display: inline-block;
  font-size: var(--text-2xs);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--stone-light);
  padding: 2px 8px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--surface);
}
