.crm-board { padding: 0; }
.kanban[hidden], .statusbar[hidden], .tl[hidden], .tile-order [hidden] { display: none !important; }
.crm-progress { display: grid; gap: 8px; margin: 16px 0; }
.crm-progress details { border: 1px solid var(--line); padding: 10px 14px; border-left: 4px solid #398354; border-radius: 6px; }
.crm-progress details.service { border-left-color: #e9b949; }
.crm-progress summary { cursor: pointer; font-weight: 600; }
.crm-progress p { margin: 10px 0 0; }
.crm-lanes { display: grid; grid-template-columns: repeat(8, minmax(245px, 1fr)); gap: 12px; min-width: 2080px; }
.crm-band { padding: 10px 14px; font-weight: 600; border-radius: 6px; background: #e4f3e9; color: #23613c; }
.crm-band.sales { grid-column: span 6; }
.crm-band.service { grid-column: span 2; background: #fff2c9; color: #755714; }
.crm-band.alternate { grid-column: span 2; background: #eee; color: #555; }
.crm-lane { background: var(--bg); border-radius: 8px; padding: 12px; }
.crm-lane h3 { font-size: 13px; min-height: 38px; }
.crm-card { display: block; padding: 14px; margin: 10px 0; background: var(--card); border: 1px solid var(--line); border-radius: 8px; color: var(--text); }
.crm-card:hover { border-color: var(--green); }
.crm-card small { display: block; margin: 6px 0; color: var(--muted); }
.crm-receipts { display: flex; flex-wrap: wrap; gap: 12px; margin: 12px 0; }
.crm-receipts span::before { content: '○'; margin-right: 5px; }
.crm-receipts .received { color: #237341; }
.crm-receipts .received::before { content: '●'; }
.crm-workflow { padding: 16px; border: 1px solid var(--line); background: var(--card); border-radius: 8px; margin-bottom: 16px; }
.crm-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.crm-workflow select { max-width: 100%; padding: 10px; border: 1px solid var(--line); border-radius: 6px; background: var(--card); color: var(--text); }
.crm-workflow summary { cursor: pointer; padding: 10px 0; }
.crm-workflow label { display: inline-flex; align-items: center; gap: 6px; margin: 6px 14px 6px 0; }
.crm-workflow textarea { display: block; width: 100%; min-height: 80px; margin: 10px 0; }
.crm-history { max-height: 200px; overflow: auto; padding-left: 20px; font-size: 12px; }
.crm-history li { padding: 5px; }
.crm-error { color: #a62b25; margin: 8px 0; }
.crm-call { min-height: 46px; font-weight: 600; }
.tile-order { display: flex; gap: 8px; justify-content: flex-end; align-items: center; margin: 12px 0; }
.tile-item { -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; }
.tile-item.dragging { position: relative; z-index: 10; }
.tile-item.dragging .ico { transform: scale(1.08); box-shadow: 0 6px 12px rgba(0,0,0,.14), 0 18px 36px rgba(0,0,0,.18); }
.app-grid.is-dragging, .app-grid.is-dragging * { cursor: grabbing; }
@media (max-width: 600px) {
  .crm-workflow { padding: 12px; }
  .crm-actions > label { width: 100%; display: block; margin-right: 0; }
  .crm-actions select { width: 100%; display: block; margin-top: 6px; }
  .head .quick { flex-wrap: wrap; }
  .tile-order { flex-wrap: wrap; }
}
/* Paket C: Prüfstatus in der Pipeline */
.crm-board-head { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; justify-content: space-between; }
.crm-board-head p { margin: 0; }
.crm-only-req { display: inline-flex; gap: 6px; align-items: center; font-size: 12.5px; cursor: pointer; }
.crm-card .crm-review { margin-top: 6px; align-self: flex-start; }
/* Pipeline im Stil der bisherigen Kanban-Ansicht, Gruppenstriche über den Spalten */
.crm-board-head { padding: 14px 20px 0; }
.crm-kanban { gap: 20px; }
.crm-group { display: flex; flex-direction: column; gap: 10px; flex: none; }
.crm-group-line { border-top: 4px solid var(--green); padding-top: 6px; margin: 0 2px; }
.crm-group-line span { font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--green); }
.crm-group.lost .crm-group-line { border-top-color: var(--red); }
.crm-group.lost .crm-group-line span { color: var(--red); }
.crm-group.service .crm-group-line { border-top-color: var(--yellow); }
.crm-group.service .crm-group-line span { color: var(--yellow-text); }
.crm-group-cols { display: flex; gap: 12px; align-items: flex-start; }
.crm-kanban .k-card { color: var(--text); text-decoration: none; }
.crm-kanban .k-card .tags { display: flex; flex-wrap: wrap; gap: 4px; }
.crm-kanban .crm-empty { padding: 6px 2px; margin: 0; }
/* Spaltenkopf zweizeilig: Titel immer einzeilig, darunter Anzahl und Summe – alle Spalten gleich hoch */
.crm-kanban .crm-head { display: block; }
.crm-kanban .crm-head h3 { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.crm-head-meta { display: flex; align-items: baseline; gap: 8px; margin-top: 2px; white-space: nowrap; }
.crm-head-meta .sum { margin-left: auto; }
/* Kundenkopf: Schnellaktionen Gewonnen / Archivieren (auch mobil sichtbar) */
.crm-quick { display: inline-flex; gap: 6px; flex-wrap: wrap; }
.crm-quick .crm-won:disabled { background: var(--green-soft); color: var(--green); border-color: #c6e7d3; opacity: 1; }
.crm-quick .btn { white-space: nowrap; }
/* Pipeline auf Tablet und Handy */
@media (max-width: 767px) {
  .crm-board-head { padding: 12px 12px 0; }
  .crm-board-head p { flex: 1 1 100%; }
  .crm-kanban { gap: 16px; }
  .crm-group-line span { position: sticky; left: 0; }
  .crm-kanban .k-card { padding: 12px; gap: 6px; }
  .crm-kanban .k-card .t, .crm-kanban .k-card .s { overflow-wrap: anywhere; }
  .crm-kanban .k-card .tags .badge { white-space: normal; }
  .crm-head-meta { font-size: 12px; }
}
/* Kundenakte: Pipeline in der Kopfleiste */
.cp-pipe { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; min-width: 0; max-width: 100%; }
.cp-stages { display: flex; list-style: none; margin: 0; padding: 2px 0; overflow-x: auto; scrollbar-width: thin; min-width: 0; }
.cp-stages li { flex: none; }
.cp-stages button { position: relative; padding: 6px 14px 6px 20px; margin-left: -6px; background: var(--card); color: var(--muted); font: 600 12.5px Inter, sans-serif; border: 1px solid var(--line); white-space: nowrap; cursor: pointer;
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 50%, calc(100% - 10px) 100%, 0 100%, 10px 50%); }
.cp-stages li:first-child button { margin-left: 0; padding-left: 14px; border-radius: 6px 0 0 6px; clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 50%, calc(100% - 10px) 100%, 0 100%); }
.cp-stages button:hover:not(:disabled):not(.cur):not(.done) { background: var(--bg); color: var(--text); }
.cp-stages button.cur:hover, .cp-stages button.done:hover { filter: brightness(.97); }
.cp-stages button.done { background: #e4f3e9; color: #23613c; }
.cp-stages button.done.service { background: #fff2c9; color: #755714; }
.cp-stages button.cur { background: #398354; color: #fff; }
.cp-stages button.cur.service { background: #e9b949; color: var(--ink); }
.cp-stages button:focus-visible { outline: 2px solid var(--ink); outline-offset: -2px; }
.cp-stages.inactive button { opacity: .55; cursor: default; }
.cp-next { flex: none; }
.cp-receipts { display: inline-flex; gap: 4px; flex: none; }
.cp-receipt { display: inline-flex; align-items: center; border: 1px solid var(--line); background: var(--card); color: var(--muted); border-radius: 999px; padding: 2px 8px; font: 600 11.5px Inter, sans-serif; white-space: nowrap; }
button.cp-receipt { cursor: pointer; }
.cp-receipt.on { background: #e4f3e9; color: #23613c; border-color: #c6e7d3; }
/* Mittlere Breiten: Pipeline in eigener Zeile unter „Kunden / Name“, damit alle Phasen sichtbar bleiben */
@media (max-width: 1600px) and (min-width: 768px) { .cp:has(.cp-pipe) { grid-template-columns: 1fr auto; } .cp:has(.cp-pipe) .cp-mid { grid-column: 1 / -1; grid-row: 2; justify-content: flex-start; } .cp:has(.cp-pipe) .cp-right { grid-column: 2; grid-row: 1; } }
@media (max-width: 767px) { .cp-pipe { flex-wrap: wrap; } .cp-stages { flex: 1 1 100%; } .cp-receipts { display: inline-flex; } }
/* Pipeline: Drag & Drop */
.crm-kanban .k-card { touch-action: auto; }
.k-drag { display: inline-grid; place-items: center; width: 28px; height: 28px; margin: -4px 0 -4px -6px; border-radius: 6px; color: var(--muted); cursor: grab; touch-action: none; }
.k-drag:hover { background: var(--bg); color: var(--text); }
.k-card.k-dragging { opacity: .35; }
.k-ghost { position: fixed; left: 0; top: 0; z-index: 500; pointer-events: none; box-shadow: 0 12px 28px rgba(0,0,0,.18); opacity: .95; }
body.pipe-dragging, body.pipe-dragging * { cursor: grabbing !important; user-select: none; }
.k-col.drop-target { background: var(--yellow-soft); outline: 2px dashed var(--yellow-text); outline-offset: 2px; border-radius: 8px; }
@media (hover: hover) { .crm-kanban .k-card { cursor: grab; } }
/* Dialog beim Verschieben */
.pipe-move .pipe-path { display: flex; align-items: center; gap: 6px; margin: 0; font-size: 13px; color: var(--muted); }
.pipe-move .pipe-path b { color: var(--text); }
.pipe-act-toggle { display: inline-flex !important; align-items: center; gap: 8px; font-weight: 600; }
.pipe-act { display: grid; gap: 6px; }
.pipe-act[hidden] { display: none; }
.pipe-act input, .pipe-act select, .pipe-act textarea, .pipe-loss textarea { width: 100%; box-sizing: border-box; padding: 8px 10px; border: 1px solid var(--line); border-radius: 6px; font: inherit; background: var(--card); color: var(--text); }
.pipe-types { display: flex; flex-wrap: wrap; gap: 6px; }
.pipe-types button { border: 1px solid var(--line); background: var(--card); border-radius: 999px; padding: 5px 12px; font: inherit; font-size: 12.5px; font-weight: 600; color: var(--muted); cursor: pointer; }
.pipe-types button.on { background: var(--ink); color: var(--yellow); border-color: var(--ink); }
.pipe-two { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.pipe-two > div { display: grid; gap: 4px; }
.pipe-loss { border: 1px solid var(--line); border-radius: 6px; padding: 10px; display: grid; gap: 6px; }
.pipe-loss legend { font-weight: 600; font-size: 12px; padding: 0 4px; }
.pipe-loss label { display: flex; gap: 8px; align-items: center; font-weight: 500; }
.pipe-move { display: grid; gap: 9px; }
.pipe-move label, .pipe-move .f-label { font-size: 12px; font-weight: 600; }
.pipe-move .crm-error:empty { display: none; }
/* Abfrage vor Phasenwechsel */
.phase-confirm-text { margin: 0; line-height: 1.6; }
.phase-path { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px; }
#phase-confirm .dialog-body { padding-top: 6px; }
/* Kunde gewonnen / Archivieren in der Kopfleiste neben der Pipeline */
.cp-mid:has(.cp-pipe) { flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.cp-mid .crm-quick { flex: none; padding-left: 12px; border-left: 1px solid var(--line); }
@media (max-width: 767px) { .cp-mid .crm-quick { padding-left: 0; border-left: 0; width: 100%; } .cp-mid .crm-quick .btn { flex: 1; justify-content: center; } }
/* Paket J: Spaltenbreite fest – Chrome berechnet die Breite einer Flex-Gruppe aus dem Karteninhalt statt aus flex-basis,
   dadurch war die Gruppe schmaler als ihre Spalten und „Archiviert“ lief unter „1. Termin/Angebotserstellung“. */
.crm-kanban { --crm-col: 290px; }
.crm-kanban .k-col[data-lane] { flex: 0 0 var(--crm-col); width: var(--crm-col); min-width: 0; }
.crm-group, .crm-group-cols { min-width: max-content; }
@media (max-width: 767px) { .crm-kanban { --crm-col: min(300px, calc(100vw - 48px)); } }
/* Karten: Segment = linker Rand + Chip, Herkunft = Badge oben rechts */
.crm-kanban { --seg-privat: #7cc3ee; --seg-gewerbe: #1f3f8f; --seg-grossgewerbe: #8b5a2b; }
.crm-board-head { --seg-privat: #7cc3ee; --seg-gewerbe: #1f3f8f; --seg-grossgewerbe: #8b5a2b; }
.crm-kanban .k-card.pipe-card { border-left: 4px solid var(--line); }
.pipe-card.seg-privat { border-left-color: var(--seg-privat) !important; }
.pipe-card.seg-gewerbe { border-left-color: var(--seg-gewerbe) !important; }
.pipe-card.seg-grossgewerbe { border-left-color: var(--seg-grossgewerbe) !important; }
.crm-card-top { display: flex; align-items: flex-start; gap: 8px; }
.crm-card-top .t { flex: 1; min-width: 0; }
.crm-card-meta { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.crm-card-meta .amt { margin-left: auto; white-space: nowrap; }
.crm-seg { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; font-weight: 600; color: var(--text); white-space: nowrap; }
.crm-seg::before { content: ''; width: 9px; height: 9px; border-radius: 3px; background: var(--line); flex: none; }
.crm-seg.seg-privat::before { background: var(--seg-privat); }
.crm-seg.seg-gewerbe::before { background: var(--seg-gewerbe); }
.crm-seg.seg-grossgewerbe::before { background: var(--seg-grossgewerbe); }
.crm-seg.seg-none { color: var(--muted); }
.crm-src { flex: none; display: inline-flex; align-items: center; font-size: 10.5px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; padding: 2px 7px; border-radius: 999px; border: 1px solid; white-space: nowrap; }
.crm-src.src-lead { background: var(--green-soft); color: #1f7a43; border-color: #c6e7d3; }
.crm-src.src-eigenlead { background: #f1e9fb; color: #6a3db0; border-color: #dccbf3; }
.crm-src.src-empfehlung { background: var(--blue-soft); color: var(--blue); border-color: #cddcfd; }
.crm-src.src-d2d { background: #fdeee3; color: #b4570f; border-color: #f6d3b8; }
/* Übertragene Kunden: Kürzel alt → neu */
.crm-handover { display: inline-flex; align-items: center; gap: 3px; }
.crm-arrow { color: var(--muted); font-size: 12px; font-weight: 700; }
.mini.old { opacity: .55; }
.crm-moved svg { flex: none; }
.crm-former { margin-top: 4px; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; }
.crm-former .follower { opacity: .85; }
/* Legende und Filter über der Pipeline */
.crm-filters { display: flex; flex-wrap: wrap; gap: 6px 16px; }
.crm-legend { flex: 1 1 100%; display: flex; flex-wrap: wrap; gap: 6px 20px; font-size: 12px; color: var(--muted); }
.crm-legend-box { flex: 1 1 100%; }
.crm-legend-box > summary { list-style: none; display: inline-flex; align-items: center; gap: 5px; cursor: pointer; font-size: 12px; font-weight: 600; color: var(--muted); padding: 2px 0; user-select: none; }
.crm-legend-box > summary::-webkit-details-marker { display: none; }
.crm-legend-box > summary:hover { color: var(--text); }
.crm-legend-box > summary svg { transition: transform .15s; }
.crm-legend-box[open] > summary svg { transform: rotate(90deg); }
.crm-legend-box[open] > summary { margin-bottom: 6px; }
.crm-legend-grp { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; }
.crm-legend-grp > b { color: var(--text); font-weight: 600; }
.crm-legend .crm-seg { font-weight: 500; color: var(--muted); }
.crm-dot { width: 9px; height: 9px; border-radius: 50%; display: inline-block; margin-left: 2px; }
.crm-dot.g { background: var(--green); } .crm-dot.y { background: var(--yellow); } .crm-dot.r { background: var(--red); }
/* Bearbeitungsstand im Spaltenkopf (Odoo-Stil), Segmente anklickbar */
.crm-head .crm-bar { margin: 8px 0 2px; height: 8px; gap: 2px; background: var(--line-2); }
.crm-bar button { flex: 1 1 0; min-width: 6px; height: 100%; padding: 0; border: 0; cursor: pointer; position: relative; border-radius: 0; }
.crm-bar button::before { content: ''; position: absolute; inset: -8px 0; }
.crm-bar button.g { background: var(--green); } .crm-bar button.y { background: var(--yellow); } .crm-bar button.r { background: var(--red); }
.crm-bar button:hover { filter: brightness(.92); }
.crm-bar button:focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; }
.crm-bar.filtered button:not(.on) { opacity: .3; }
.crm-head .crm-bar { overflow: visible; }
.crm-bar button:first-child { border-radius: 999px 0 0 999px; } .crm-bar button:last-child { border-radius: 0 999px 999px 0; } .crm-bar button:only-child { border-radius: 999px; }
.crm-bar-reset { border: 1px solid var(--line); background: var(--card); color: var(--text); border-radius: 999px; font: 600 11px Inter, sans-serif; padding: 1px 8px; cursor: pointer; white-space: nowrap; }
@media (max-width: 767px) {
  .crm-legend { gap: 6px 14px; font-size: 11.5px; }
  .crm-bar-reset { min-height: 28px; }
}
/* 13.10.2026: Karten ohne Segment/kWp – linker Rand nach Bearbeitungsstand (grün geplant · gelb heute · rot überfällig/keine), Sparten-Icons aus der Bedarfsanalyse */
.crm-kanban .k-card.pipe-card.act-g { border-left-color: var(--green); }
.crm-kanban .k-card.pipe-card.act-y { border-left-color: var(--yellow); }
.crm-kanban .k-card.pipe-card.act-r { border-left-color: var(--red); }
.crm-card-sp { display: flex; min-width: 0; }
.crm-sps { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 5px; min-width: 0; }
/* Sparten deutlich: Interesse = farbige Kachel mit Rand, abgeschlossen = kräftig gefüllt + Haken */
.crm-sp { --c: #555; --spbg: #f1f1f1; --on: #fff; position: relative; display: inline-flex; align-items: center; gap: 4px; height: 24px; padding: 0 7px 0 5px; border-radius: 6px; border: 1.5px solid var(--c); background: var(--spbg); color: var(--c); flex: none; font: 700 11.5px/1 Inter, sans-serif; }
.crm-sp b { font-weight: 700; }
.crm-sp.sp-PV { --c: #8a6400; --spbg: #fff1b8; --fill: #f5c400; --on: #1d1d1b; }
.crm-sp.sp-WP { --c: #c2410c; --spbg: #ffe4d6; --fill: #e2551f; }
.crm-sp.sp-Klima { --c: #1d5fd1; --spbg: #dfeaff; --fill: #2874fc; }
.crm-sp.sp-Dach { --c: #7a4a1e; --spbg: #f3e3d0; --fill: #8b5a2b; }
.crm-sp.done { background: var(--fill); border-color: var(--fill); color: var(--on); }
.crm-sp.done::after { display: none; content: '✓'; position: absolute; right: -5px; top: -5px; width: 13px; height: 13px; border-radius: 50%; background: var(--green); color: #fff; font: 700 9px/13px Inter, sans-serif; text-align: center; box-shadow: 0 0 0 1.5px var(--card); }
.crm-legend .crm-sp { height: 20px; padding: 0 4px; }
.crm-legend-sp { display: inline-flex; align-items: center; gap: 4px; }
.crm-after svg { flex: none; }
/* Gruppe Umsetzung (Projektierung / Abgeschlossen): von After Sales gesteuert */
.crm-group.impl .crm-group-line { border-top-color: var(--blue); }
.crm-group.impl .crm-group-line span { color: var(--blue); }
.crm-kanban .k-col.is-locked .crm-head h3 svg { margin-right: 4px; vertical-align: -1px; color: var(--muted); }
.k-col.drop-blocked { outline: 2px dashed var(--red); outline-offset: 2px; border-radius: 8px; cursor: not-allowed; }
/* Drag & Drop: Spalten über die ganze Höhe als Ablagefläche, Einfügemarke beim Umsortieren */
.crm-kanban { align-items: stretch; }
.crm-group-cols { flex: 1; align-items: stretch; }
.crm-kanban .k-col[data-lane] { padding-bottom: 40px; }
.k-insert { height: 4px; margin: -2px 0; border-radius: 4px; background: var(--yellow-text); box-shadow: 0 0 0 2px var(--yellow-soft); }
body.pipe-dragging .crm-kanban { scroll-snap-type: none; }
/* Kundenkopf: Stufen Projektierung / Abgeschlossen nur anzeigend */
.cp-stages .cp-impl { position: relative; display: block; padding: 6px 14px 6px 20px; margin-left: -6px; background: var(--bg); color: var(--muted); font: 600 12.5px Inter, sans-serif; border: 1px solid var(--line); white-space: nowrap; cursor: default;
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 50%, calc(100% - 10px) 100%, 0 100%, 10px 50%); }
.cp-stages .cp-impl.done { background: #e3ecfd; color: #234a9a; }
.cp-stages .cp-impl.cur { background: var(--blue); color: #fff; }
.cp-stages button:disabled { cursor: default; }
/* 13.10.2026: Status je Sparte – unter jeder Sparten-Kachel AB/FP (ab Gewonnen) bzw. Freigabe (ab Prüfung) */
.crm-sps.has-st { align-items: flex-start; gap: 6px 8px; }
.crm-spc { display: inline-flex; flex-direction: column; align-items: center; gap: 4px; flex: none; }
.crm-spst { display: inline-flex; justify-content: center; gap: 3px; }
.crm-st { --st-bg: #eceff1; --st-c: #5f6b73; --st-b: #cfd6db; display: inline-grid; place-items: center; min-width: 20px; height: 20px; padding: 0 3px; box-sizing: border-box; border-radius: 999px; border: 1.5px solid var(--st-b); background: var(--st-bg); color: var(--st-c); font: 700 9px/1 Inter, sans-serif; letter-spacing: .02em; cursor: help; }
.crm-st.g { --st-bg: var(--green); --st-c: #fff; --st-b: var(--green); }
.crm-st.rel { padding: 0 7px; font-size: 9.5px; }
.crm-st.rel.y { --st-bg: var(--yellow); --st-c: var(--ink, #1d1d1b); --st-b: #d9a400; }
.crm-st.rel.r { --st-bg: var(--red); --st-c: #fff; --st-b: var(--red); }
.crm-sp[data-tip] { cursor: help; }
.crm-st:focus-visible, .crm-sp[data-tip]:focus-visible { outline: 2px solid var(--ink, #1d1d1b); outline-offset: 2px; }
.crm-legend .crm-st { cursor: default; margin-right: 2px; }
.crm-tip { position: fixed; z-index: 900; max-width: min(280px, calc(100vw - 16px)); box-sizing: border-box; padding: 7px 10px; border-radius: 6px; background: #1d1d1b; color: #fff; font: 500 12px/1.4 Inter, sans-serif; box-shadow: 0 6px 18px rgba(0,0,0,.22); pointer-events: none; overflow-wrap: anywhere; }
.crm-tip[hidden] { display: none; }
.pipe-gaps { margin: 0; padding: 8px 10px; border-radius: 6px; background: var(--yellow-soft, #fff7d6); color: var(--text); line-height: 1.5; }
.cp-receipts { flex: 0 1 auto; flex-wrap: wrap; min-width: 0; max-width: 100%; }

/* AB/FP-Kreise direkt am Sparten-Icon (statt Haken), darunter Prüfung / Rückfrage / Freigegeben */
.crm-sptop { display: inline-flex; align-items: center; gap: 3px; }
.crm-stdots { display: inline-flex; gap: 2px; }
.crm-stdots .crm-st { min-width: 19px; height: 19px; font-size: 8.5px; }
.crm-spc { display: inline-flex; flex-direction: column; align-items: flex-start; gap: 4px; }

/* Sparte vollständig (AB + FP): grüner Haken über dem Icon statt der Kreise */
.crm-sp.stok::after { display: block !important; content: '✓'; position: absolute; right: -6px; top: -6px; width: 15px; height: 15px; border-radius: 50%; background: var(--green); color: #fff; font: 700 10px/15px Inter, sans-serif; text-align: center; box-shadow: 0 0 0 2px #fff; }

/* Neue Anfrage: Vor-/Nachname, Adresse, Herkunft + „Empfohlen von“ */
.new-zipcity { display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 6px; min-width: 0; }
.new-ref { border: 1px solid var(--line); border-radius: 10px; padding: 8px 12px 10px; margin: 6px 0; display: grid; gap: 6px; min-width: 0; }
.new-ref[hidden], .new-ref [hidden] { display: none; }
.new-ref legend { font-size: 12.5px; font-weight: 700; padding: 0 4px; }
.new-ref-type { display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: 13px; }
.new-ref-type label { display: inline-flex; gap: 6px; align-items: center; cursor: pointer; }
.crm-ref-link { margin-top: 4px; font-size: 12.5px; }
.crm-ref-link a { font-weight: 600; }
