/* Kite CRM — extras on top of the shared Kite UI kit */
.crm-board { align-items: start; }
.crm-card { cursor: grab; }
.crm-card.dragging { opacity: .45; }
.crm-card a { color: inherit; text-decoration: none; }
.col.over { border-color: var(--accent); background: var(--accent-soft); }
.crm-drop-won h5, .crm-drop-lost h5 { justify-content: center; }
.crm-drop-won { border-style: dashed; border-color: color-mix(in srgb, var(--good) 45%, transparent); }
.crm-drop-lost { border-style: dashed; border-color: color-mix(in srgb, var(--bad) 45%, transparent); }
.crm-tl { display: flex; flex-direction: column; gap: .7rem; max-height: 60vh; overflow-y: auto; padding-right: .3rem; }
.crm-tl-row { display: flex; gap: .6rem; align-items: flex-start; font-size: .82rem; }
.crm-tl-ic { flex-shrink: 0; width: 1.9rem; height: 1.9rem; border-radius: 50%; display: grid; place-items: center; background: var(--inner); color: var(--accent); }
.crm-week { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: .5rem; }
.crm-day { padding: .6rem; min-height: 9rem; }
.crm-day h5 { font-size: .72rem; text-transform: uppercase; letter-spacing: .04em; margin: 0 0 .5rem; }
.crm-day.today { border-color: var(--accent); box-shadow: 0 0 0 1px var(--accent); }
.crm-ev { font-size: .74rem; padding: .35rem .45rem; border-radius: 7px; background: var(--accent-soft); margin-bottom: .35rem; cursor: pointer; border-left: 3px solid var(--accent); }
.crm-ev.done { opacity: .55; text-decoration: line-through; border-left-color: var(--good); }
.crm-ev.late { border-left-color: var(--bad); background: color-mix(in srgb, var(--bad) 8%, transparent); }
@media (max-width: 900px) { .crm-week { grid-template-columns: 1fr; } .crm-day { min-height: 0; } }
@media (max-width: 640px) { .crm-board { grid-auto-columns: 82vw; } }
