    /* ── ALTS PAGE ── */
    .alts-page { padding: 0; }
    .alts-page-title { font-size: 20px; font-weight: 600; color: var(--text-primary); margin-bottom: 4px; }
    .alts-page-sub { font-size: 12px; color: var(--text-tertiary); margin-bottom: 20px; line-height: 1.5; }
    .alts-card {
      background: var(--bg); border: 0.5px solid var(--border);
      border-radius: var(--radius-lg); margin-bottom: 12px; overflow: hidden;
    }
    .alts-card-hdr {
      display: flex; align-items: center; gap: 10px;
      padding: 1rem 1.25rem; border-bottom: 0.5px solid var(--border);
    }
    .alts-card-icon {
      width: 28px; height: 28px; border-radius: 6px;
      background: var(--blue-bg); color: var(--blue-mid);
      display: flex; align-items: center; justify-content: center; flex-shrink: 0;
    }
    .alts-card-title { font-size: 14px; font-weight: 500; color: var(--text-primary); }
    .alts-card-sub { font-size: 11px; color: var(--text-tertiary); margin-top: 1px; }
    .alts-empty {
      display: flex; flex-direction: column; align-items: center;
      padding: 2rem 1.25rem; gap: 8px; text-align: center;
    }
    .alts-empty-icon { color: var(--text-tertiary); opacity: 0.5; margin-bottom: 4px; }
    .alts-empty-text { font-size: 13px; font-weight: 500; color: var(--text-secondary); }
    .alts-empty-hint { font-size: 11px; color: var(--text-tertiary); line-height: 1.6; max-width: 400px; }
    .alts-coming-soon {
      display: flex; align-items: flex-start; gap: 7px;
      padding: 12px 1.25rem; border-radius: var(--radius-lg);
      border: 0.5px solid var(--border); background: var(--bg-subtle);
      font-size: 10.5px; color: var(--text-tertiary); line-height: 1.6;
      margin-top: 4px;
    }

    /* ── ALTS V1 ── */
    .alts-v1-page { padding: 0; display: flex; flex-direction: column; gap: 0; }
    .alts-v1-summary {
      display: flex; align-items: center; justify-content: space-between;
      padding: 1rem 1.25rem; background: var(--bg);
      border: 0.5px solid var(--border); border-radius: var(--radius-lg);
      margin-bottom: 12px;
    }
    .alts-v1-summary--loading { color: var(--text-tertiary); font-size: 12px; }
    .alts-v1-summary-stats { display: flex; gap: 24px; align-items: center; }
    .alts-v1-stat { display: flex; flex-direction: column; gap: 2px; }
    .alts-v1-stat-val { font-size: 15px; font-weight: 600; color: var(--text-primary); }
    .alts-v1-stat-lbl { font-size: 10px; color: var(--text-tertiary); text-transform: uppercase; letter-spacing: 0.04em; }
    /* .alts-v1-add-btn removed — migrated to .btn .btn--primary */
    .alts-v1-body { display: flex; gap: 12px; align-items: flex-start; }
    .alts-v1-list-col { flex: 0 0 340px; min-width: 0; }
    .alts-v1-detail-col { flex: 1; min-width: 0; }

    /* List */
    .alts-v1-list-wrap {
      background: var(--bg); border: 0.5px solid var(--border);
      border-radius: var(--radius-lg); overflow: hidden;
    }
    .alts-v1-list { display: flex; flex-direction: column; }
    .alts-v1-list-empty { padding: 2.5rem 1.25rem; text-align: center; }
    .alts-v1-row {
      display: flex; align-items: center; justify-content: space-between;
      padding: 0.75rem 1rem; border-bottom: 0.5px solid var(--border);
      cursor: pointer; transition: background 0.1s;
    }
    .alts-v1-row:last-child { border-bottom: none; }
    .alts-v1-row:hover { background: var(--bg-subtle); }
    .alts-v1-row--sel { background: var(--blue-bg); }
    .alts-v1-row--sel:hover { background: var(--blue-bg); }
    .alts-v1-row-main { flex: 1; min-width: 0; }
    .alts-v1-row-name { font-size: 13px; font-weight: 500; color: var(--text-primary); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-bottom: 4px; }
    .alts-v1-row-tags { display: flex; flex-wrap: wrap; gap: 4px; }
    .alts-v1-row-right { text-align: right; flex-shrink: 0; margin-left: 10px; }
    .alts-v1-row-val { font-size: 13px; font-weight: 600; color: var(--text-primary); }
    .alts-v1-row-sub { font-size: 10px; color: var(--text-tertiary); margin-top: 2px; }

    /* Tags / badges */
    .alts-tag {
      display: inline-block; font-size: 9.5px; font-weight: 500;
      padding: 2px 6px; border-radius: 4px; line-height: 1.4;
    }
    .alts-tag--type { background: var(--blue-bg); color: var(--blue-mid); }
    .alts-tag--liq  { background: var(--bg-secondary); color: var(--text-secondary); }
    .alts-tag--in_line { background: var(--green-bg); color: var(--green-mid); }
    .alts-tag--watch { background: var(--amber-bg); color: var(--amber-mid); }
    .alts-tag--needs_attention { background: var(--red-bg); color: var(--red-mid); }
    .alts-tag--status-active { background: var(--green-bg); color: var(--green-mid); }
    .alts-tag--status-exited { background: var(--bg-secondary); color: var(--text-tertiary); }
    .alts-tag--stale {
      background: var(--amber-bg); color: var(--amber-mid);
      border: 1px dashed var(--amber-mid);
      padding: 1px 5px;  /* -1px to account for border */
    }

    /* Alts V2 — auto-flag banner */
    .alts-v1-autoflag-banner {
      display: flex; align-items: center; gap: 10px;
      margin: 0 0 0.9rem 0;
      padding: 0.65rem 0.9rem;
      background: var(--amber-bg);
      border: 0.5px solid var(--amber-mid);
      border-radius: var(--radius-md);
      color: var(--amber-mid);
      font-size: 12px;
      line-height: 1.45;
    }
    .alts-v1-autoflag-banner strong { color: var(--text-primary); font-weight: 600; }
    .alts-v1-autoflag-banner > div { flex: 1; }
    .alts-v1-autoflag-dismiss {
      background: transparent; border: 0; color: var(--text-tertiary);
      font-size: 18px; line-height: 1; cursor: pointer; padding: 2px 6px;
      border-radius: 4px;
    }
    .alts-v1-autoflag-dismiss:hover { background: rgba(0,0,0,0.08); color: var(--text-primary); }

    /* Alts V3 — CSV import controls + result banner */
    .alts-v1-summary-actions { display: flex; align-items: center; gap: 10px; }
    .alts-v1-template-link {
      background: transparent; border: 0; cursor: pointer;
      font: inherit; font-size: 11px; color: var(--text-tertiary);
      text-decoration: underline; text-underline-offset: 2px;
      padding: 4px 2px;
    }
    .alts-v1-template-link:hover { color: var(--blue-mid); }
    .alts-v1-import-banner {
      display: flex; align-items: center; gap: 10px;
      margin: 0 0 0.9rem 0;
      padding: 0.65rem 0.9rem;
      background: var(--green-bg, #eafaf1);
      border: 0.5px solid var(--green-mid);
      border-radius: var(--radius-md);
      color: var(--green-mid);
      font-size: 12px; line-height: 1.45;
    }
    .alts-v1-import-banner strong { color: var(--text-primary); font-weight: 600; }
    .alts-v1-import-banner > div { flex: 1; }
    .alts-v1-import-banner--err {
      background: var(--red-bg, #fdecec);
      border-color: var(--red-mid);
      color: var(--red-mid);
    }

    /* Alts V2 — auto-flag marker on list row */
    .alts-v1-auto-mark {
      display: inline-block;
      margin-left: 6px;
      padding: 1px 5px;
      font-size: 8.5px;
      font-weight: 700;
      letter-spacing: 0.04em;
      background: var(--blue-bg);
      color: var(--blue-mid);
      border-radius: 3px;
      vertical-align: 1px;
    }

    /* Alts V2 — auto-flag note in detail panel */
    .alts-v1-autoflag-note {
      margin: 0 1.25rem 0.5rem;
      padding: 0.55rem 0.75rem;
      background: var(--blue-bg);
      border-left: 3px solid var(--blue-mid);
      border-radius: var(--radius-sm);
      font-size: 11.5px;
      color: var(--text-secondary);
      line-height: 1.5;
    }
    .alts-v1-autoflag-note strong { color: var(--text-primary); font-weight: 600; }

    /* Alts V2 — valuation-date "45d ago" sublabel */
    .alts-v1-fld-sub {
      font-size: 11px; font-weight: 400; color: var(--text-tertiary); margin-left: 4px;
    }

    /* Empty state shared */
    .alts-v1-empty-ico {
      width: 44px; height: 44px; color: var(--text-tertiary);
      opacity: 0.5; margin-bottom: 12px;
    }
    .alts-v1-empty-title { font-size: var(--font-base); font-weight: 600; color: var(--text-primary); margin-bottom: 6px; }
    .alts-v1-empty-hint { font-size: var(--font-sm); color: var(--text-tertiary); line-height: 1.55; max-width: 300px; margin: 0 auto; }

    /* Detail panel */
    .alts-v1-detail-empty {
      background: var(--bg); border: 0.5px solid var(--border);
      border-radius: var(--radius-lg); padding: 3rem 1.5rem;
      text-align: center;
    }
    .alts-v1-detail {
      background: var(--bg); border: 0.5px solid var(--border);
      border-radius: var(--radius-lg); overflow: hidden;
    }
    .alts-v1-detail-hdr {
      display: flex; align-items: flex-start; justify-content: space-between;
      padding: 1rem 1.25rem; border-bottom: 0.5px solid var(--border);
    }
    .alts-v1-detail-name { font-size: 15px; font-weight: 600; color: var(--text-primary); margin-bottom: 2px; }
    .alts-v1-detail-sub { font-size: 11px; color: var(--text-tertiary); }
    .alts-v1-detail-btns { display: flex; gap: 6px; flex-shrink: 0; margin-left: 10px; }
    .alts-v1-badge-row { display: flex; gap: 6px; padding: 0.6rem 1.25rem; border-bottom: 0.5px solid var(--border); }
    .alts-v1-sec {
      font-size: var(--font-xs); font-weight: 600; text-transform: uppercase;
      letter-spacing: 0.06em; color: var(--text-tertiary);
      padding: 0.75rem 1.25rem 0.25rem;
    }
    .alts-v1-fields {
      display: grid; grid-template-columns: 1fr 1fr;
      gap: 0; padding: 0 1.25rem 0.75rem;
    }
    .alts-v1-fld { padding: 0.4rem 0; }
    .alts-v1-fld-lbl { font-size: 10px; color: var(--text-tertiary); margin-bottom: 2px; }
    .alts-v1-fld-val { font-size: 13px; color: var(--text-primary); font-weight: 500; }
    .alts-v1-notes { font-size: 12px; color: var(--text-secondary); line-height: 1.6; padding: 0 1.25rem 1rem; }

    /* Alts V3 — performance metrics (DPI / RVPI / TVPI / unfunded) */
    .alts-v1-metrics {
      display: grid; grid-template-columns: 1fr 1fr 1fr 1fr;
      gap: 8px; padding: 0 1.25rem 0.75rem;
    }
    @media (max-width: 720px) { .alts-v1-metrics { grid-template-columns: 1fr 1fr; } }
    .alts-v1-metric {
      background: var(--bg-secondary);
      border: 0.5px solid var(--border);
      border-radius: var(--radius-md, 8px);
      padding: 0.6rem 0.7rem;
    }
    .alts-v1-metric-val {
      font-size: 18px; font-weight: 700; color: var(--text-primary);
      font-variant-numeric: tabular-nums; line-height: 1.1;
    }
    .alts-v1-metric-lbl {
      font-size: 10px; font-weight: 600; color: var(--text-secondary);
      text-transform: uppercase; letter-spacing: 0.04em; margin-top: 3px;
    }
    .alts-v1-metric-sub { font-size: 9px; color: var(--text-tertiary); margin-top: 1px; }
    .alts-v1-metrics-hint {
      font-size: 11px; color: var(--text-tertiary); line-height: 1.5;
      padding: 0 1.25rem 0.75rem;
    }

    /* .alts-v1-btn-edit / .alts-v1-btn-del removed — migrated to .btn .btn--secondary/--danger .btn--sm
       (the .alts-v1-btn-edit / .alts-v1-btn-del classes remain on the buttons as JS query selectors) */

    /* Form panel */
    .alts-v1-form {
      background: var(--bg); border: 0.5px solid var(--border);
      border-radius: var(--radius-lg); display: flex; flex-direction: column;
      max-height: 82vh; overflow: hidden;
    }
    .alts-v1-form-top {
      display: flex; align-items: center; justify-content: space-between;
      padding: 1rem 1.25rem; border-bottom: 0.5px solid var(--border); flex-shrink: 0;
    }
    .alts-v1-form-title { font-size: 14px; font-weight: 600; color: var(--text-primary); }
    .alts-v1-form-body { flex: 1; overflow-y: auto; padding: 0.5rem 0; }
    .alts-v1-form-sec {
      font-size: var(--font-xs); font-weight: 600; text-transform: uppercase;
      letter-spacing: 0.06em; color: var(--text-tertiary);
      padding: 0.75rem 1.25rem 0.2rem;
    }
    .alts-v1-fr { padding: 0.3rem 1.25rem; }
    .alts-v1-fr-lbl { font-size: 10px; color: var(--text-secondary); margin-bottom: 3px; display: block; }
    .alts-v1-inp {
      width: 100%; font-size: 12px; color: var(--text-primary);
      background: var(--bg-secondary); border: 0.5px solid var(--border-md);
      border-radius: var(--radius-md); padding: 6px 9px;
      box-sizing: border-box; outline: none;
    }
    .alts-v1-inp:focus { border-color: var(--blue-mid); }
    .alts-v1-ta { resize: vertical; min-height: 72px; font-family: inherit; }
    .alts-v1-form-foot {
      display: flex; align-items: center; justify-content: flex-end; gap: 8px;
      padding: 0.75rem 1.25rem; border-top: 0.5px solid var(--border); flex-shrink: 0;
    }
    .alts-v1-form-err { font-size: 11px; color: var(--red-mid); flex: 1; }
    /* .alts-v1-btn-cancel / .alts-v1-btn-save removed — migrated to .btn .btn--secondary / .btn .btn--primary */

    /* ── Alts Ingestion — upload zone + queue panel (Stage 3 Sub-part 2) ─── */
    .alts-ingest-upload-section { margin-bottom: 16px; }
    .alts-ingest-toggle-btn {
      width: 100%; padding: 10px 14px; font-size: var(--font-sm); font-weight: 600;
      color: var(--text-primary); background: var(--bg-card);
      border: 0.5px solid var(--border); border-radius: var(--radius-md);
      cursor: pointer; text-align: center;
    }
    .alts-ingest-toggle-btn:hover { background: var(--bg-hover); }
    .alts-ingest-expanded-content { display: none; margin-top: 8px; }
    .alts-ingest-upload-section.alts-ingest-expanded .alts-ingest-expanded-content { display: block; }
    .alts-ingest-upload-zone {
      border: 1.5px dashed var(--border-dark); border-radius: var(--radius-md);
      padding: 24px; text-align: center; cursor: pointer; background: var(--bg-subtle);
      transition: border-color 0.15s, background 0.15s;
    }
    .alts-ingest-upload-zone.alts-ingest-dragover {
      border-color: var(--blue-accent); background: var(--blue-bg);
    }
    .alts-ingest-upload-hint { font-size: var(--font-sm); color: var(--text-primary); }
    .alts-ingest-browse-btn {
      margin-top: 8px; padding: 6px 14px; font-size: var(--font-xs);
      color: var(--text-primary); background: var(--bg-card);
      border: 0.5px solid var(--border); border-radius: var(--radius-sm); cursor: pointer;
    }
    .alts-ingest-upload-types { font-size: var(--font-xs); color: var(--text-tertiary); margin-top: 6px; }
    .alts-ingest-chips-container { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
    .alts-ingest-file-chip {
      display: inline-flex; align-items: center; gap: 6px; padding: 4px 8px;
      font-size: var(--font-xs); color: var(--text-primary);
      background: var(--bg-secondary); border: 0.5px solid var(--border);
      border-radius: var(--radius-sm);
    }
    .alts-ingest-chip-x {
      background: none; border: none; cursor: pointer; color: var(--text-tertiary);
      font-size: 14px; line-height: 1; padding: 0 2px;
    }
    .alts-ingest-chip-x:hover { color: var(--danger); }
    .alts-ingest-process-btn {
      margin-top: 10px; padding: 8px 16px; font-size: var(--font-sm); font-weight: 600;
      color: #fff; background: var(--accent); border: none;
      border-radius: var(--radius-md); cursor: pointer;
    }
    .alts-ingest-process-btn:disabled { opacity: 0.5; cursor: not-allowed; }
    .alts-ingest-queue-panel { margin-bottom: 16px; }
    /* Collapsible header */
    .alts-ingest-queue-header {
      display: flex; align-items: center; gap: 8px; width: 100%;
      padding: 0 0 8px; background: none; border: none; cursor: pointer;
      font-size: var(--font-sm); font-weight: 600; color: var(--text-primary);
      text-align: left;
    }
    .alts-ingest-queue-header:hover .alts-queue-title-text { color: var(--text-primary); }
    .alts-queue-title-text { flex: 1; }
    .alts-queue-count {
      display: inline-flex; align-items: center; justify-content: center;
      min-width: 20px; height: 20px; padding: 0 6px;
      font-size: 11px; font-weight: 700; border-radius: 10px;
      background: var(--bg-hover); color: var(--text-secondary);
    }
    .alts-queue-chevron { font-size: 9px; color: var(--text-tertiary); flex-shrink: 0; }
    /* Scrollable list */
    .alts-ingest-queue-list { max-height: 380px; overflow-y: auto; }
    .alts-ingest-queue-list.alts-queue-hidden { display: none; }
    /* × dismiss button */
    .alts-ingest-card-dismiss {
      position: absolute; top: 6px; right: 8px;
      width: 18px; height: 18px; line-height: 18px; padding: 0; text-align: center;
      font-size: 14px; font-weight: 400; color: var(--text-tertiary);
      background: none; border: none; cursor: pointer; border-radius: var(--radius-sm);
      opacity: 0; transition: opacity 0.1s;
    }
    .alts-ingest-card:hover .alts-ingest-card-dismiss { opacity: 1; }
    .alts-ingest-card-dismiss:hover { background: var(--bg-hover); color: var(--text-primary); }
    .alts-ingest-card--confirming { border-color: var(--border-dark); }
    .alts-ingest-dismiss-confirm {
      display: flex; align-items: center; flex-wrap: wrap; gap: 6px; margin-top: 8px;
      font-size: 11px; color: var(--text-secondary);
    }
    .alts-ingest-dismiss-confirm span { flex: 1; min-width: 140px; }
    .alts-ingest-dismiss-cancel {
      padding: 2px 8px; font-size: 11px; font-weight: 500;
      color: var(--text-secondary); background: var(--bg-secondary);
      border: 0.5px solid var(--border); border-radius: 20px; cursor: pointer;
    }
    .alts-ingest-dismiss-cancel:hover { background: var(--bg-hover); }
    .alts-ingest-dismiss-delete {
      padding: 2px 8px; font-size: 11px; font-weight: 600;
      color: #fff; background: var(--danger);
      border: none; border-radius: 20px; cursor: pointer;
    }
    .alts-ingest-action-btn--verified {
      color: var(--green); border-color: var(--green);
    }
    .alts-ingest-card {
      position: relative; /* needed for absolute dismiss button */
      display: flex; align-items: flex-start; gap: 10px; padding: 12px 14px;
      margin-bottom: 8px; background: var(--bg-card);
      border: 0.5px solid var(--border); border-left: 3px solid var(--border-dark);
      border-radius: var(--radius-md);
    }
    .alts-ingest-card.status-needs-review { border-left-color: var(--amber-accent); }
    .alts-ingest-card.status-confirmed    { border-left-color: var(--green); }
    .alts-ingest-card.status-processing   { border-left-color: var(--blue-accent); }
    .alts-ingest-card.status-queued       { border-left-color: var(--border-dark); }
    .alts-ingest-card.status-failed       { border-left-color: var(--danger); }
    .alts-ingest-card-icon { font-size: 16px; line-height: 1.3; flex-shrink: 0; }
    .alts-ingest-card-body { flex: 1; min-width: 0; }
    .alts-ingest-card-title {
      font-size: var(--font-sm); font-weight: 600; color: var(--text-primary);
      overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    }
    .alts-ingest-card-sub { font-size: var(--font-xs); color: var(--text-tertiary); margin-top: 2px; }
    .alts-ingest-card-action { flex-shrink: 0; }
    .alts-ingest-action-btn {
      padding: 6px 12px; font-size: var(--font-xs); font-weight: 600;
      color: var(--text-primary); background: var(--bg-card);
      border: 0.5px solid var(--border); border-radius: var(--radius-sm); cursor: pointer;
    }
    .alts-ingest-action-btn:hover:not(:disabled) { background: var(--bg-hover); }
    .alts-ingest-action-btn:disabled { opacity: 0.6; cursor: default; }
    .alts-ingest-action-btn--primary { color: #fff; background: var(--accent); border-color: var(--accent); }
    .alts-ingest-action-btn--dismiss { color: var(--danger); }
    .alts-ingest-action-btn--atlas { color: #7C3AED; border-color: #7C3AED; }
    .alts-ingest-action-btn--atlas:hover:not(:disabled) { background: #7C3AED18; }
    .alts-ingest-badge {
      display: inline-flex; align-items: center; justify-content: center;
      min-width: 16px; height: 16px; padding: 0 4px; margin-left: 6px;
      font-size: 10px; font-weight: 700; color: #fff;
      background: var(--danger); border-radius: 8px;
    }
    @keyframes alts-ingest-pulse {
      0%, 100% { opacity: 1; }
      50%      { opacity: 0.4; }
    }
    .alts-ingest-pulse { animation: alts-ingest-pulse 1.5s ease-in-out infinite; }

    /* ── Alts Ingestion — review screen (Stage 3 Sub-part 3) ─────────────── */
    .alts-ingest-review-grid {
      display: grid; grid-template-columns: 1fr 320px; gap: 16px; margin-bottom: 16px;
    }
    .alts-ingest-left-col { min-width: 0; }
    .alts-ingest-right-col { position: sticky; top: 16px; align-self: start; }
    @media (max-width: 768px) {
      .alts-ingest-review-grid { grid-template-columns: 1fr; }
      .alts-ingest-right-col { position: static; }
    }
    .alts-ingest-review-header {
      padding-bottom: 10px; margin-bottom: 12px; border-bottom: 0.5px solid var(--border);
    }
    .alts-ingest-review-type {
      font-size: var(--font-xs); text-transform: uppercase; letter-spacing: 0.04em;
      color: var(--text-tertiary);
    }
    .alts-ingest-review-name {
      font-size: var(--font-lg); font-weight: 600; color: var(--text-primary); margin: 2px 0 6px;
    }
    .alts-ingest-confidence { display: flex; align-items: center; gap: 4px; }
    .alts-ingest-confidence-dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; }
    .alts-ingest-confidence-dot.filled { background: var(--blue-text); }
    .alts-ingest-confidence-dot.empty  { background: var(--border); }
    .alts-ingest-confidence-label { font-size: var(--font-xs); color: var(--text-tertiary); margin-left: 4px; }
    .alts-ingest-verify-badge {
      margin-left: 8px; padding: 2px 8px; font-size: 10px; font-weight: 700;
      color: var(--amber-text); background: var(--amber-bg);
      border: 0.5px solid var(--amber-accent); border-radius: 10px;
    }
    .alts-ingest-verified-badge {
      padding: 2px 8px; font-size: 10px; font-weight: 700;
      color: var(--green-text); background: var(--green-bg); border-radius: 10px;
    }
    .alts-ingest-flags {
      padding: 8px 10px; margin-bottom: 12px;
      background: var(--amber-bg); border: 0.5px solid var(--amber-accent);
      border-radius: var(--radius-md);
    }
    .alts-ingest-flag { font-size: var(--font-xs); color: var(--amber-text); margin: 2px 0; }
    .alts-ingest-review-section { margin-bottom: 14px; }
    .alts-ingest-review-section-title {
      font-size: var(--font-xs); font-weight: 600; text-transform: uppercase;
      letter-spacing: 0.03em; color: var(--text-tertiary); margin-bottom: 4px;
    }
    .alts-ingest-field-row {
      display: flex; align-items: center; gap: 8px;
      padding: 6px 0; border-bottom: 0.5px solid var(--border);
    }
    .alts-ingest-field-label { flex: 0 0 38%; font-size: var(--font-xs); color: var(--text-tertiary); }
    .alts-ingest-field-value { flex: 1; font-size: var(--font-sm); color: var(--text-primary); min-width: 0; }
    .alts-ingest-field-empty { color: var(--text-tertiary); font-style: italic; }
    .alts-ingest-field-edit {
      background: none; border: none; cursor: pointer; font-size: 12px; padding: 2px; flex-shrink: 0;
    }
    .alts-ingest-field-input {
      flex: 1; padding: 3px 6px; font-size: var(--font-sm); color: var(--text-primary);
      background: var(--bg-card); border: 0.5px solid var(--blue-accent); border-radius: var(--radius-sm);
    }
    .alts-ingest-edited-badge {
      display: inline-block; padding: 1px 6px; font-size: 9px; font-weight: 700;
      color: #fff; background: var(--green); border-radius: 8px; vertical-align: middle;
    }
    .alts-ingest-cf-table { width: 100%; border-collapse: collapse; font-size: var(--font-xs); }
    .alts-ingest-cf-table th {
      text-align: left; padding: 4px 6px; color: var(--text-tertiary); font-weight: 600;
      border-bottom: 0.5px solid var(--border);
    }
    .alts-ingest-cf-table td {
      padding: 4px 6px; color: var(--text-primary); border-bottom: 0.5px solid var(--border);
    }
    .alts-ingest-cf-conf {
      padding: 1px 6px; border-radius: 8px; font-size: 9px; font-weight: 600; text-transform: capitalize;
    }
    .alts-ingest-cf-conf--high   { background: var(--green-bg); color: var(--green-text); }
    .alts-ingest-cf-conf--medium { background: var(--amber-bg); color: var(--amber-text); }
    .alts-ingest-cf-conf--low    { background: var(--red-bg);   color: var(--red-text); }
    .alts-ingest-link {
      background: none; border: none; cursor: pointer; padding: 0;
      font-size: var(--font-xs); color: var(--link); text-decoration: underline;
    }
    .alts-ingest-chat-thread { margin: 6px 0; }
    .alts-ingest-chat-bubble {
      max-width: 85%; padding: 6px 10px; margin: 4px 0;
      font-size: var(--font-xs); border-radius: var(--radius-md); line-height: 1.4;
    }
    .alts-ingest-chat-bubble.user {
      background: var(--blue-bg); color: var(--blue-text); margin-right: auto;
    }
    .alts-ingest-chat-bubble.assistant {
      background: var(--bg-secondary); color: var(--text-primary); margin-left: auto;
    }
    .alts-ingest-chat-bubble--error { background: var(--red-bg); color: var(--red-text); }
    .alts-ingest-chat-input-row { display: flex; gap: 6px; margin-top: 6px; }
    .alts-ingest-chat-input {
      flex: 1; padding: 6px 8px; font-size: var(--font-xs); font-family: inherit;
      color: var(--text-primary); background: var(--bg-card);
      border: 0.5px solid var(--border); border-radius: var(--radius-sm); resize: vertical;
    }
    .alts-ingest-chat-send {
      align-self: flex-end; padding: 6px 14px; font-size: var(--font-xs); font-weight: 600;
      color: #fff; background: var(--accent); border: none; border-radius: var(--radius-sm); cursor: pointer;
    }
    .alts-ingest-chat-send:disabled { opacity: 0.5; cursor: not-allowed; }
    .alts-ingest-chat-turns { font-size: 10px; color: var(--text-tertiary); margin-top: 4px; }
    .alts-ingest-chat-limit { font-size: var(--font-xs); color: var(--text-tertiary); margin-top: 6px; }
    .alts-ingest-action-bar {
      display: flex; justify-content: space-between; align-items: center; gap: 8px;
      margin-top: 14px; padding-top: 12px; border-top: 0.5px solid var(--border);
    }
    .alts-ingest-confirm-inline {
      margin-top: 14px; padding: 12px; font-size: var(--font-sm); color: var(--amber-text);
      background: var(--amber-bg); border: 0.5px solid var(--amber-accent); border-radius: var(--radius-md);
    }
    .alts-ingest-confirm-btns { display: flex; gap: 8px; margin-top: 10px; }
    .alts-ingest-source-panel {
      padding: 16px; text-align: center; background: var(--bg-subtle);
      border: 0.5px solid var(--border); border-radius: var(--radius-md);
    }
    .alts-ingest-source-icon { font-size: 28px; }
    .alts-ingest-source-name {
      font-size: var(--font-sm); font-weight: 600; color: var(--text-primary); margin: 6px 0;
      overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    }
    .alts-ingest-source-hint { font-size: var(--font-xs); color: var(--text-tertiary); margin-bottom: 10px; }
    .alts-ingest-source-note { font-size: 10px; color: var(--text-tertiary); margin-top: 8px; }

    /* Verification badge on alt_holdings detail cards (block layout — the
       sub-part-3 badge classes are inline pills for the review header). */
    .alts-v1-detail .alts-ingest-verify-badge {
      display: block; margin: 14px 0 0; padding: 10px 12px;
      font-size: var(--font-xs); line-height: 1.5; border-radius: var(--radius-md);
    }
    .alts-v1-detail .alts-ingest-verified-badge {
      display: block; margin: 14px 0 0; padding: 8px 12px;
      font-size: var(--font-xs); border-radius: var(--radius-md);
    }
    .alts-ingest-verify-text { font-weight: 600; }
    .alts-ingest-verify-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
    .alts-ingest-verify-actions button {
      padding: 4px 10px; font-size: var(--font-xs); font-weight: 600;
      color: var(--text-primary); background: var(--bg-card);
      border: 0.5px solid var(--border); border-radius: var(--radius-sm); cursor: pointer;
    }
    .alts-ingest-verify-actions button:disabled { opacity: 0.6; cursor: default; }
    .alts-ingest-verify-confirm-text { flex: 1 1 100%; font-weight: 400; margin-bottom: 2px; }

    /* ── Alts Ingestion — match detection banner ──────────────────────────── */
    .alts-match-banner {
      display: flex; align-items: flex-start; gap: 10px; margin: 10px 0 4px;
      padding: 12px 14px; border-radius: var(--radius-md);
      border: 0.5px solid var(--border); font-size: var(--font-sm);
    }
    .alts-match-banner--checking {
      color: var(--text-secondary); background: var(--bg-subtle);
      align-items: center;
    }
    .alts-match-banner--matched {
      background: #EEF2FF; border-color: #818CF8; color: var(--text-primary);
    }
    @media (prefers-color-scheme: dark) {
      .alts-match-banner--matched { background: #1E1B4B; border-color: #6366F1; }
    }
    .alts-match-spinner {
      width: 14px; height: 14px; border-radius: 50%; flex-shrink: 0;
      border: 2px solid var(--border-dark); border-top-color: var(--text-tertiary);
      animation: alts-spin 0.7s linear infinite;
    }
    @keyframes alts-spin { to { transform: rotate(360deg); } }
    .alts-match-banner-icon { font-size: 18px; flex-shrink: 0; line-height: 1; }
    .alts-match-banner-body { flex: 1; min-width: 0; }
    .alts-match-banner-title { font-weight: 600; margin-bottom: 3px; }
    .alts-match-banner-sub { font-size: var(--font-xs); color: var(--text-secondary); margin-bottom: 8px; }
    .alts-match-banner-btns { display: flex; flex-wrap: wrap; gap: 8px; }
    .alts-match-btn {
      padding: 5px 12px; font-size: var(--font-xs); font-weight: 600;
      border-radius: var(--radius-sm); cursor: pointer; border: 0.5px solid transparent;
    }
    .alts-match-btn--primary {
      background: #6366F1; color: #fff; border-color: #4F46E5;
    }
    .alts-match-btn--primary:hover { background: #4F46E5; }
    .alts-match-btn--secondary {
      background: var(--bg-card); color: var(--text-primary); border-color: var(--border);
    }
    .alts-match-btn--secondary:hover { border-color: var(--border-dark); }

    /* ── Alts Ingestion — Stage 4 polish ─────────────────────────────────── */
    .alts-ingest-upload-zone {
      background: linear-gradient(180deg, var(--bg-card), var(--bg-subtle));
    }
    .alts-ingest-upload-hint { font-size: var(--font-md); font-weight: 600; }
    .alts-ingest-upload-hint::before {
      content: '📄'; display: block; font-size: 32px; margin-bottom: 6px;
    }
    .alts-ingest-toggle-btn { font-weight: 600; }
    .alts-ingest-toggle-btn:hover { border-color: var(--border-dark); }
    .alts-ingest-file-chip { box-shadow: var(--card-shadow); }
    .alts-ingest-chip-x {
      width: 22px; height: 22px; display: inline-flex; align-items: center;
      justify-content: center; border-radius: var(--radius-sm); flex-shrink: 0;
    }
    .alts-ingest-chip-x:hover { background: var(--bg-hover); }
    /* Queue cards */
    .alts-ingest-card { border-left-width: 4px; align-items: center; flex-wrap: wrap; transition: background 0.12s; }
    .alts-ingest-card:hover { background: var(--bg-hover); }
    .alts-ingest-status-pill {
      display: inline-flex; align-items: center; justify-content: center;
      width: 30px; height: 30px; border-radius: var(--radius-sm); flex-shrink: 0;
    }
    .alts-ingest-status-pill.status-needs-review { background: var(--amber-bg); }
    .alts-ingest-status-pill.status-confirmed    { background: var(--green-bg); }
    .alts-ingest-status-pill.status-processing   { background: var(--blue-bg); }
    .alts-ingest-status-pill.status-queued       { background: var(--bg-secondary); }
    .alts-ingest-status-pill.status-failed       { background: var(--red-bg); }
    .alts-ingest-card-warn { font-size: var(--font-xs); color: var(--amber-text); margin-top: 3px; }
    .alts-ingest-card-meta { font-size: 10px; color: var(--text-tertiary); margin-top: 3px; }
    .alts-ingest-empty {
      padding: 28px 16px; text-align: center;
      font-size: var(--font-sm); color: var(--text-tertiary);
    }
    /* Review — instrument-type pill */
    .alts-ingest-type-pill {
      display: inline-block; padding: 2px 10px; border-radius: 10px;
      font-size: var(--font-xs); font-weight: 700; text-transform: capitalize;
    }
    .alts-ingest-type-pill.type-pill--blue   { background: var(--blue-bg);      color: var(--blue-text); }
    .alts-ingest-type-pill.type-pill--amber  { background: var(--amber-bg);     color: var(--amber-text); }
    .alts-ingest-type-pill.type-pill--purple { background: var(--purple-bg);    color: var(--purple-text); }
    .alts-ingest-type-pill.type-pill--gray   { background: var(--bg-secondary); color: var(--text-tertiary); }
    /* Review — larger confidence dots + striped field rows */
    .alts-ingest-confidence-dot { width: 12px; height: 12px; }
    .alts-ingest-field-row:nth-child(even) { background: var(--bg-subtle); }
    .alts-ingest-chat-bubble { max-width: 80%; }
    /* Verification badges — coloured left-border accent */
    .alts-v1-detail .alts-ingest-verify-badge   { border-left: 3px solid var(--amber-accent); }
    .alts-v1-detail .alts-ingest-verified-badge { border-left: 3px solid var(--green); }

    /* ── Alt Holding Detail Drawer (Stage 5C) ─────────────────────────────── */
    .alts-detail-drawer { display: flex; flex-direction: column; height: 100%; }

    /* Header — matches .alts-v1-detail-hdr proportions */
    .alts-detail-header { padding: 14px 1.25rem 0; border-bottom: 0.5px solid var(--border); background: var(--bg); }
    .alts-detail-header-top { display: flex; align-items: flex-start; gap: 10px; padding-bottom: 12px; }
    .alts-detail-back-btn {
      display: inline-flex; align-items: center; gap: 5px; padding: 4px 10px;
      font-size: 12px; font-weight: 500; color: var(--text-secondary);
      background: var(--bg-secondary); border: 0.5px solid var(--border-md);
      border-radius: 20px; cursor: pointer; flex-shrink: 0; margin-top: 2px;
      transition: background 0.12s, color 0.12s;
    }
    .alts-detail-back-btn:hover { background: var(--bg-hover); color: var(--text-primary); }
    .alts-detail-delete-btn {
      flex-shrink: 0; margin-top: 2px; padding: 4px 10px;
      font-size: 12px; font-weight: 500; color: var(--danger);
      background: none; border: 0.5px solid var(--danger);
      border-radius: 20px; cursor: pointer; opacity: 0.7;
      transition: opacity 0.12s, background 0.12s;
    }
    .alts-detail-delete-btn:hover { opacity: 1; background: rgba(239,68,68,0.08); }
    .alts-detail-delete-confirm {
      display: flex; align-items: center; flex-wrap: wrap; gap: 8px;
      padding: 8px 0 10px; font-size: 12px; color: var(--danger);
    }
    .alts-detail-delete-confirm span { flex: 1; min-width: 180px; }
    .alts-detail-delete-cancel-btn {
      padding: 3px 10px; font-size: 12px; font-weight: 500;
      color: var(--text-secondary); background: var(--bg-secondary);
      border: 0.5px solid var(--border-md); border-radius: 20px; cursor: pointer;
    }
    .alts-detail-delete-cancel-btn:hover { background: var(--bg-hover); }
    .alts-detail-delete-confirm-btn {
      padding: 3px 10px; font-size: 12px; font-weight: 600;
      color: #fff; background: var(--danger);
      border: none; border-radius: 20px; cursor: pointer;
    }
    .alts-detail-delete-confirm-btn:disabled { opacity: 0.6; cursor: default; }
    .alts-detail-title-wrap { flex: 1; min-width: 0; }
    .alts-detail-name { font-size: 15px; font-weight: 600; color: var(--text-primary); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .alts-detail-sub  { font-size: 11px; color: var(--text-tertiary); margin-top: 2px; }
    .alts-detail-stale-note {
      font-size: 11px; color: var(--amber-text); background: var(--amber-bg);
      padding: 3px 10px; border-radius: 20px; margin-bottom: 10px; display: inline-block;
    }

    /* Tab bar — flush with header, uses .am-tab pills already defined */
    .alts-detail-tab-bar { margin: 0; padding: 10px 0 0; border-bottom: none; }
    .alts-tab-dot {
      display: inline-block; width: 6px; height: 6px; border-radius: 50%;
      background: var(--amber-accent); margin-left: 4px; vertical-align: middle; position: relative; top: -1px;
    }

    /* Panels scroll area — tight padding so cards breathe naturally */
    .alts-detail-panels { flex: 1; overflow-y: auto; }
    /* Override only active panels to flex — hidden panels stay display:none from .am-tab-panel rule */
    .alts-detail-panels .am-tab-panel { padding: 12px; flex-direction: column; gap: 10px; }
    .alts-detail-panels .am-tab-panel.am-tab-active { display: flex; }

    /* Card body + footer — reusable inside .alts-v1-detail */
    .alts-detail-card-body { padding: 0 1.25rem 0.75rem; }
    .alts-detail-card-body .alts-v1-fr { margin-bottom: 6px; }
    .alts-detail-update-form-title {
      font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em;
      color: var(--text-tertiary); padding: 0.75rem 0 0.25rem;
    }
    .alts-detail-card-footer {
      display: flex; align-items: center; gap: 8px; justify-content: flex-end;
      padding: 10px 1.25rem;
      border-top: 0.5px solid var(--border);
      background: var(--bg-secondary);
      border-radius: 0 0 var(--radius-lg) var(--radius-lg);
    }
    .alts-detail-update-err { font-size: 12px; color: var(--red-mid); margin-top: 6px; }

    /* Pending diff review panel — sits above the card */
    .alts-snapshot-diff-panel {
      background: var(--bg-secondary); border: 0.5px solid var(--border-md);
      border-radius: var(--radius-lg); overflow: hidden;
    }
    .alts-snapshot-diff-panel--nochange { border-color: var(--border); }
    .alts-snapshot-diff-title {
      font-size: 12px; font-weight: 600; color: var(--text-primary);
      padding: 10px 1.25rem; border-bottom: 0.5px solid var(--border);
    }
    .alts-snapshot-diff-hint  { font-size: 12px; color: var(--text-secondary); padding: 0 1.25rem 10px; }
    .alts-snapshot-diff-table { width: 100%; border-collapse: collapse; font-size: 12px; margin: 0 0 0; }
    .alts-snapshot-diff-table thead th {
      text-align: left; color: var(--text-tertiary); font-weight: 500;
      padding: 6px 1.25rem; background: var(--bg); border-bottom: 0.5px solid var(--border);
    }
    .alts-snapshot-diff-table thead th:first-child { padding-left: 1.25rem; }
    .alts-snapshot-diff-table tbody tr:nth-child(even) { background: var(--bg-hover); }
    .alts-snapshot-diff-table td { padding: 6px 8px 6px 0; vertical-align: middle; }
    .alts-snapshot-diff-table td:first-child { padding-left: 1.25rem; }
    .alts-diff-tbl-field { color: var(--text-secondary); font-weight: 500; }
    .alts-diff-tbl-old   { color: var(--text-tertiary); }
    .alts-diff-tbl-new   { font-weight: 600; color: var(--text-primary); }
    .alts-diff-tbl-new--up   { color: var(--green-mid); }
    .alts-diff-tbl-new--down { color: var(--red-mid); }
    .alts-diff-tbl-delta { color: var(--text-tertiary); font-size: 11px; }
    .alts-snapshot-diff-actions {
      display: flex; gap: 8px; justify-content: flex-end;
      padding: 10px 1.25rem; border-top: 0.5px solid var(--border);
      background: var(--bg-secondary);
    }

    /* Snapshot list rows inside the History card */
    .alts-snapshot-list { display: flex; flex-direction: column; }
    .alts-snapshot-list-row {
      padding: 10px 1.25rem; border-top: 0.5px solid var(--border); font-size: 12px;
    }
    .alts-snapshot-list-row:first-child { border-top: none; }
    .alts-snapshot-list-row-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 5px; }
    .alts-snapshot-type-badge {
      display: inline-block; padding: 2px 8px; border-radius: 20px; font-size: 10px; font-weight: 600;
      background: var(--bg-secondary); color: var(--text-secondary); border: 0.5px solid var(--border);
    }
    .alts-snapshot-type-badge--manual_edit     { background: rgba(24,95,165,0.08); color: var(--blue-mid); border-color: rgba(24,95,165,0.2); }
    .alts-snapshot-type-badge--document_import { background: var(--amber-bg); color: var(--amber-text); border-color: var(--amber-mid); }
    .alts-snapshot-type-badge--atlas_update    { background: var(--bg-secondary); color: var(--text-secondary); }
    .alts-snapshot-type-badge--evergreen_sync  { background: var(--bg-secondary); color: var(--green-mid); }
    .alts-snapshot-date   { color: var(--text-tertiary); font-size: 11px; }
    .alts-snapshot-source { color: var(--text-secondary); margin-bottom: 4px; }
    .alts-snapshot-notes  { color: var(--text-tertiary); font-style: italic; margin-top: 4px; }
    .alts-snapshot-diff-chips { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 5px; }
    .alts-snapshot-diff-chip {
      display: inline-block; padding: 2px 8px; border-radius: 20px; font-size: 10px; font-weight: 500;
      background: var(--bg-secondary); color: var(--text-secondary); border: 0.5px solid var(--border);
    }

    /* History chart */
    .alts-history-metric-toggles { display: flex; flex-wrap: wrap; gap: 6px; padding: 10px 1.25rem 0; }
    .alts-history-metric-toggle {
      padding: 3px 12px; border-radius: 20px; font-size: 11px; font-weight: 500;
      border: 0.5px solid var(--border-md); background: var(--bg); color: var(--text-secondary); cursor: pointer;
      transition: background 0.12s, color 0.12s, border-color 0.12s;
    }
    .alts-history-metric-toggle:hover { background: var(--bg-hover); color: var(--text-primary); }
    .alts-history-metric-toggle.active { background: var(--blue-mid); border-color: var(--blue-mid); color: #fff; box-shadow: 0 1px 2px rgba(24,95,165,0.2); }
    .alts-history-chart-container { height: 180px; padding: 12px 1.25rem 4px; position: relative; }

    /* Documents tab */
    .alts-detail-docs-hint  { font-size: 13px; color: var(--text-secondary); line-height: 1.6; }
    .alts-detail-docs-sub   { font-size: 11px; color: var(--text-tertiary); margin-top: 8px; }

    /* Compliance tab */
    .alts-compliance-log { display: flex; flex-direction: column; }
    .alts-compliance-row { padding: 10px 1.25rem; border-top: 0.5px solid var(--border); }
    .alts-compliance-row:first-child { border-top: none; }
    .alts-compliance-action { font-size: 12px; font-weight: 500; color: var(--text-primary); margin-bottom: 2px; }
    .alts-compliance-meta   { font-size: 11px; color: var(--text-tertiary); }

    /* Shared empty state */
    .alts-empty-state { font-size: 13px; color: var(--text-tertiary); text-align: center; }

    /* Chart expand button — top-right corner of .alts-history-chart-container */
    .alts-chart-expand-btn {
      position: absolute; top: 8px; right: 20px; z-index: 2;
      display: flex; align-items: center; justify-content: center;
      width: 24px; height: 24px; border-radius: 6px;
      border: 0.5px solid var(--border-md); background: var(--bg);
      color: var(--text-tertiary); cursor: pointer; opacity: 0.7;
      transition: opacity 0.15s, background 0.15s, color 0.15s;
    }
    .alts-chart-expand-btn:hover { opacity: 1; background: var(--bg-hover); color: var(--text-primary); }

    /* Expanded chart modal */
    .alts-chart-modal-overlay {
      position: fixed; inset: 0; z-index: 9000;
      background: rgba(10,20,40,0.45); backdrop-filter: blur(4px);
      display: flex; align-items: center; justify-content: center;
      padding: 24px;
      animation: alts-modal-fade 0.18s ease;
    }
    @keyframes alts-modal-fade { from { opacity: 0 } to { opacity: 1 } }
    .alts-chart-modal {
      background: var(--bg); border: 0.5px solid var(--border-md);
      border-radius: 12px; box-shadow: 0 24px 64px rgba(0,0,0,0.18), 0 4px 16px rgba(0,0,0,0.08);
      width: 100%; max-width: 760px; overflow: hidden;
      animation: alts-modal-up 0.22s cubic-bezier(0.16,1,0.3,1);
    }
    @keyframes alts-modal-up { from { transform: translateY(10px); opacity: 0 } to { transform: translateY(0); opacity: 1 } }
    .alts-chart-modal-header {
      display: flex; align-items: center; justify-content: space-between;
      padding: 16px 20px; border-bottom: 0.5px solid var(--border);
    }
    .alts-chart-modal-title { font-size: 14px; font-weight: 600; color: var(--text-primary); }
    .alts-chart-modal-close {
      width: 28px; height: 28px; border-radius: 6px; border: none;
      background: var(--bg-secondary); color: var(--text-secondary);
      font-size: 16px; cursor: pointer; display: flex;
      align-items: center; justify-content: center;
      transition: background 0.12s, color 0.12s;
    }
    .alts-chart-modal-close:hover { background: var(--bg-hover); color: var(--text-primary); }
    .alts-chart-modal-toggles { display: flex; flex-wrap: wrap; gap: 6px; padding: 12px 20px 0; }
    .alts-chart-modal-toggle {
      padding: 3px 12px; border-radius: 20px; font-size: 11px; font-weight: 500;
      border: 0.5px solid var(--border-md); background: var(--bg); color: var(--text-secondary);
      cursor: pointer; transition: background 0.12s, color 0.12s, border-color 0.12s;
    }
    .alts-chart-modal-toggle:hover { background: var(--bg-hover); color: var(--text-primary); }
    .alts-chart-modal-toggle.active { background: var(--blue-mid); border-color: var(--blue-mid); color: #fff; }
    .alts-chart-modal-canvas-wrap { height: 340px; padding: 16px 20px 20px; }

    /* Queue-card inline delete confirm + edit banner */
    .alts-ingest-card-delete {
      flex-basis: 100%; margin-top: 8px; padding: 8px 10px;
      font-size: var(--font-xs); color: var(--amber-text);
      background: var(--amber-bg); border-radius: var(--radius-sm); line-height: 1.5;
    }
    .alts-ingest-card-delete--error { color: var(--red-text); background: var(--red-bg); }
    .alts-ingest-card-delete .alts-ingest-confirm-btns { margin-top: 8px; }
    .alts-ingest-edit-banner {
      padding: 8px 10px; margin-bottom: 12px; font-size: var(--font-xs); line-height: 1.5;
      color: var(--blue-text); background: var(--blue-bg);
      border: 0.5px solid var(--blue-accent); border-radius: var(--radius-md);
    }

