/* PLANIMADE Agency OS – CRM-Tab Styles (passend zum Admin-Dark-Theme) */
.crm-tools { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.crm-tool { background: #060608; border: 1px solid rgba(255,255,255,.08); border-radius: 11px; padding: 16px; }
.crm-tool h3 { margin: 0 0 12px; font-size: 12px; text-transform: uppercase; letter-spacing: .14em; color: #c4b5fd; font-weight: 700; }
.crm-tool .small, .small { font-size: 12px; }

.crm-filterbar { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 16px; }
.crm-filterbar input, .crm-filterbar select { margin: 0; width: auto; flex: 0 0 auto; }
.crm-filterbar input[type=text] { flex: 1 1 180px; }
.crm-filterbar .spacer { flex: 1 1 auto; }

.crm-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.crm-table th { text-align: left; font-size: 10px; text-transform: uppercase; letter-spacing: .12em; color: #71717a; padding: 8px 10px; border-bottom: 1px solid rgba(255,255,255,.1); }
.crm-table td { padding: 10px; border-bottom: 1px solid rgba(255,255,255,.06); vertical-align: middle; }
.crm-table tr:hover td { background: #0d0d12; }
.crm-table .firma { font-weight: 700; color: #fff; }
.crm-table .sub { font-size: 11px; color: #8b8b94; }
.crm-actions { display: flex; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
.crm-actions button { padding: 5px 9px; font-size: 11px; }

.badge { display: inline-block; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; padding: 3px 8px; border-radius: 999px; border: 1px solid; white-space: nowrap; }
.badge.neu { color: #93c5fd; border-color: rgba(147,197,253,.4); background: rgba(147,197,253,.1); }
.badge.kontaktiert { color: #fde68a; border-color: rgba(253,230,138,.4); background: rgba(253,230,138,.1); }
.badge.pitch_gesendet { color: #c4b5fd; border-color: rgba(196,181,253,.4); background: rgba(196,181,253,.1); }
.badge.termin { color: #6ee7b7; border-color: rgba(110,231,183,.4); background: rgba(110,231,183,.1); }
.chip { display: inline-block; font-size: 10px; padding: 2px 6px; border-radius: 5px; background: rgba(255,255,255,.07); color: #a1a1aa; margin: 0 3px 3px 0; text-transform: uppercase; letter-spacing: .04em; }
.crm-warn { color: #fde68a; }
.crm-ok { color: #6ee7b7; }

.calc-line { display: flex; justify-content: space-between; font-size: 13px; padding: 4px 0; color: #c7c7cf; }
.calc-total { display: flex; justify-content: space-between; font-weight: 800; color: #fff; border-top: 1px solid rgba(255,255,255,.12); margin-top: 8px; padding-top: 8px; }

/* Modals */
.crm-modal { position: fixed; inset: 0; z-index: 300; background: rgba(0,0,0,.7); backdrop-filter: blur(6px); display: flex; align-items: flex-start; justify-content: center; padding: 40px 16px; overflow-y: auto; }
.crm-modal[hidden] { display: none; }
.crm-modal-box { width: 100%; max-width: 640px; background: #0a0a0d; border: 1px solid rgba(255,255,255,.12); border-radius: 14px; padding: 24px; }
.crm-modal-box h3 { margin: 0 0 16px; font-size: 14px; text-transform: uppercase; letter-spacing: .16em; color: #fff; }
.crm-row2 { display: flex; gap: 14px; flex-wrap: wrap; }
.crm-row2 > div { flex: 1 1 220px; }
.crm-checks { display: flex; gap: 16px; flex-wrap: wrap; margin: 4px 0 14px; }
.crm-checks label { display: inline-flex; align-items: center; gap: 6px; text-transform: none; letter-spacing: 0; color: #d4d4d8; font-size: 13px; }
.crm-checks input { width: auto; margin: 0; }
.crm-modal-actions { display: flex; gap: 10px; justify-content: flex-end; margin-top: 18px; flex-wrap: wrap; }
.crm-focus { display: flex; gap: 8px; margin-bottom: 14px; flex-wrap: wrap; }
.crm-focus button.active { background: #fff; color: #000; }
#pitch-body, #pitch-subject { font-family: 'JetBrains Mono', ui-monospace, monospace; }
