/* ==========================================================================
   ARKENSTONE — PIPELINE.CSS
   Shared styles for Sales Pipeline & Creative Hub kanban boards + modals.
   ========================================================================== */

/* ── Nav visibility: Sales is role/perm/admin-gated; Creative is open to all ── */
.nav-sales { display: none; }

body.role-sales .nav-sales,
body.perm-sales .nav-sales,
body.is-admin   .nav-sales { display: flex; }

.nav-creative { display: flex; }

/* ── View header ── */
.pipe-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 12px;
    gap: 12px;
}
.pipe-title {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--color-ink);
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
}
.pipe-title i { color: var(--gold); }

/* ── Pipeline toolbar ── */
.pipeline-toolbar {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 0 24px 14px;
    flex-wrap: wrap;
}
.ptb-group {
    display: flex;
    align-items: center;
    gap: 6px;
}
.ptb-label {
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--color-muted, #888);
    margin-right: 2px;
}
.ptb-btn {
    font-size: 0.78rem;
    font-weight: 500;
    padding: 4px 11px;
    border-radius: 20px;
    border: 1px solid var(--color-border, rgba(0,0,0,0.12));
    background: transparent;
    color: var(--color-ink);
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
}
.ptb-btn:hover { background: rgba(0,0,0,0.05); }
.ptb-btn.ptb-active {
    background: var(--gold, #B8892A);
    border-color: var(--gold, #B8892A);
    color: #fff;
}
.ptb-select {
    font-size: 0.78rem;
    padding: 4px 8px;
    border-radius: 20px;
    border: 1px solid var(--color-border, rgba(0,0,0,0.12));
    background: transparent;
    color: var(--color-ink);
    cursor: pointer;
    outline: none;
}
.ptb-select:focus { border-color: var(--gold, #B8892A); }

/* ── Kanban board ── */
.kanban-board {
    display: flex;
    gap: 14px;
    padding: 0 24px 32px;
    overflow-x: auto;
    min-height: calc(100vh - 140px);
    align-items: flex-start;
}
.kanban-board::-webkit-scrollbar { height: 6px; }
.kanban-board::-webkit-scrollbar-track { background: transparent; }
.kanban-board::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.15); border-radius: 3px; }

/* 4-column creative hub: equal columns */
.kanban-board-4col { gap: 16px; }
.kanban-board-4col .kanban-col {
    flex: 1 1 0;
    min-width: 220px;
}

/* ── Kanban column ── */
.kanban-col {
    flex: 0 0 240px;
    display: flex;
    flex-direction: column;
    background: var(--color-surface, #faf9f7);
    border-radius: 12px;
    border: 1px solid var(--color-border, rgba(0,0,0,0.09));
    overflow: hidden;
    min-height: 200px;
}
.kanban-col.drag-over {
    outline: 2px dashed var(--gold);
    outline-offset: -2px;
}

/* ── Column header ── */
.kanban-col-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px 8px;
    border-bottom: 2px solid var(--col-color, #ccc);
    background: var(--color-bg, #fff);
}
.kanban-col-title {
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--color-ink);
}
.kanban-col-count {
    background: var(--col-color, #ccc);
    color: #fff;
    font-size: 0.7rem;
    font-weight: 700;
    border-radius: 10px;
    padding: 1px 7px;
    min-width: 22px;
    text-align: center;
}

/* ── Column body ── */
.kanban-col-body {
    flex: 1;
    padding: 10px 10px 6px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-height: 60px;
}

/* ── Add button at column bottom ── */
.kanban-col-add {
    margin: 6px 10px 10px;
    background: transparent;
    border: 1px dashed var(--color-border, rgba(0,0,0,0.15));
    border-radius: 8px;
    padding: 7px;
    font-size: 0.78rem;
    color: var(--color-ink-muted, #888);
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}
.kanban-col-add:hover {
    background: rgba(0,0,0,0.04);
    color: var(--color-ink);
}

/* ── Kanban card ── */
.kanban-card {
    background: var(--color-bg, #fff);
    border-radius: 9px;
    padding: 10px 12px;
    border: 1px solid var(--color-border, rgba(0,0,0,0.09));
    cursor: pointer;
    transition: box-shadow 0.15s, transform 0.1s;
    position: relative;
    user-select: none;
}
.kanban-card:hover {
    box-shadow: 0 3px 12px rgba(0,0,0,0.1);
    transform: translateY(-1px);
}
.kanban-card.dragging { opacity: 0.4; }

/* ── Card pieces ── */
.kcard-name, .kcard-title {
    font-size: 0.84rem;
    font-weight: 600;
    color: var(--color-ink);
    line-height: 1.3;
    margin-bottom: 5px;
}
.kcard-client {
    font-size: 0.75rem;
    color: var(--color-ink-muted, #888);
    margin-bottom: 6px;
}
.kcard-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 6px;
}
.kcard-value {
    font-size: 0.72rem;
    font-weight: 600;
    color: #1D5C38;
    background: rgba(29,92,56,0.08);
    padding: 2px 7px;
    border-radius: 8px;
}
.kcard-type {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 2px 7px;
    border-radius: 6px;
    background: rgba(0,0,0,0.07);
    color: var(--color-ink);
}
.kcard-type.type-reel     { background: rgba(123,75,148,0.12); color: #7B4B94; }
.kcard-type.type-post     { background: rgba(44,95,138,0.12);  color: #2C5F8A; }
.kcard-type.type-story    { background: rgba(180,106,0,0.12);  color: #B26A00; }
.kcard-type.type-ad       { background: rgba(192,57,43,0.12);  color: #c0392b; }
.kcard-type.type-campaign { background: rgba(29,92,56,0.12);   color: #1D5C38; }

.kcard-platform {
    font-size: 0.69rem;
    color: var(--color-ink-muted);
    display: flex;
    align-items: center;
    gap: 3px;
}
.kcard-due {
    font-size: 0.7rem;
    color: var(--color-ink-muted);
}
.kcard-due.overdue { color: #c0392b; font-weight: 600; }
.kcard-project-link {
    font-size: 0.69rem;
    color: var(--gold);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 110px;
}
.kcard-converted-badge {
    font-size: 0.68rem;
    font-weight: 600;
    color: #1D5C38;
    background: rgba(29,92,56,0.1);
    border-radius: 6px;
    padding: 2px 6px;
    display: inline-flex;
    align-items: center;
    gap: 3px;
}

/* ── Kanban modal overlay ── */
.kmodal-overlay {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 9100;
    background: rgba(0,0,0,0.45);
    align-items: center;
    justify-content: center;
}
.kmodal-overlay.open { display: flex; }

.kmodal-box {
    background: var(--color-bg, #fff);
    border-radius: 14px;
    width: min(520px, 95vw);
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 20px 60px rgba(0,0,0,0.25);
    display: flex;
    flex-direction: column;
}
.kmodal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 22px 14px;
    border-bottom: 1px solid var(--color-border, rgba(0,0,0,0.09));
}
.kmodal-title {
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-ink);
    margin: 0;
}
.kmodal-close {
    background: none;
    border: none;
    font-size: 1.3rem;
    color: var(--color-ink-muted);
    cursor: pointer;
    line-height: 1;
    padding: 2px 6px;
    border-radius: 6px;
}
.kmodal-close:hover { background: rgba(0,0,0,0.06); }

.kmodal-body {
    padding: 20px 22px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.kmodal-foot {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 22px;
    border-top: 1px solid var(--color-border, rgba(0,0,0,0.09));
}

/* ── Form rows ── */
.kmodal-field { display: flex; flex-direction: column; gap: 5px; }
.kmodal-label {
    font-size: 0.74rem;
    font-weight: 600;
    color: var(--color-ink-muted);
    letter-spacing: 0.03em;
    text-transform: uppercase;
}
.kmodal-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }

.kmodal-input,
.kmodal-select,
.kmodal-textarea {
    width: 100%;
    padding: 8px 10px;
    border: 1px solid var(--color-border, rgba(0,0,0,0.15));
    border-radius: 8px;
    font-size: 0.84rem;
    font-family: inherit;
    color: var(--color-ink);
    background: var(--color-bg);
    box-sizing: border-box;
    transition: border-color 0.15s;
}
.kmodal-input:focus,
.kmodal-select:focus,
.kmodal-textarea:focus {
    outline: none;
    border-color: var(--gold);
}
.kmodal-textarea { resize: vertical; min-height: 70px; }

.kmodal-delete {
    background: none;
    border: 1px solid rgba(192,57,43,0.3);
    color: #c0392b;
    border-radius: 8px;
    padding: 7px 14px;
    font-size: 0.82rem;
    cursor: pointer;
    transition: background 0.15s;
}
.kmodal-delete:hover { background: rgba(192,57,43,0.08); }

.kmodal-convert-btn {
    background: rgba(29,92,56,0.08);
    border: 1px solid rgba(29,92,56,0.25);
    color: #1D5C38;
    border-radius: 8px;
    padding: 7px 14px;
    font-size: 0.82rem;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 5px;
    transition: background 0.15s;
}
.kmodal-convert-btn:hover { background: rgba(29,92,56,0.15); }
.kmodal-convert-btn:disabled { opacity: 0.5; cursor: default; }

/* ── Project search in Creative modal ── */
.kmodal-proj-search { position: relative; }
.kmodal-proj-results {
    position: absolute;
    top: calc(100% + 4px);
    left: 0; right: 0;
    background: var(--color-bg);
    border: 1px solid var(--color-border, rgba(0,0,0,0.12));
    border-radius: 8px;
    max-height: 180px;
    overflow-y: auto;
    z-index: 10;
    box-shadow: 0 4px 16px rgba(0,0,0,0.12);
}
.kmodal-proj-result {
    padding: 8px 12px;
    font-size: 0.82rem;
    cursor: pointer;
    color: var(--color-ink);
}
.kmodal-proj-result:hover { background: rgba(0,0,0,0.05); }
.kmodal-proj-clear {
    position: absolute;
    right: 8px; top: 50%;
    transform: translateY(-50%);
    background: none; border: none;
    font-size: 0.85rem;
    color: var(--color-ink-muted);
    cursor: pointer;
    padding: 2px 4px;
}

/* ══════════════════════════════════════════════════════════════════════════
   KANBAN CARD ENHANCEMENTS — thumbnails + task progress
   ══════════════════════════════════════════════════════════════════════════ */

/* Thumbnail */
.kcard-thumb-wrap {
    margin: -10px -12px 10px;
    border-radius: 8px 8px 0 0;
    overflow: hidden;
    height: 130px;
    background: var(--color-surface-page);
}
.kcard-thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .3s ease;
}
.kanban-card:hover .kcard-thumb { transform: scale(1.03); }

/* Badges row (type + platform) */
.kcard-badges {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 5px;
    flex-wrap: wrap;
}

/* Task progress row */
.kcard-task-row {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 6px 0 4px;
}
.kcard-task-bar {
    flex: 1;
    height: 4px;
    border-radius: 2px;
    background: var(--color-border-rule);
    overflow: hidden;
}
.kcard-task-fill {
    height: 100%;
    border-radius: 2px;
    background: var(--color-gold, #c9a84c);
    transition: width .3s ease;
}
.kcard-task-fill.all-done { background: #3aaa6a; }
.kcard-task-count {
    font-size: 10px;
    font-weight: 600;
    color: var(--color-ink-muted);
    white-space: nowrap;
    min-width: 24px;
    text-align: right;
}
.kcard-task-count.all-done { color: #3aaa6a; }

/* ══════════════════════════════════════════════════════════════════════════
   MODAL ENHANCEMENTS — thumbnail section + tasks + AI assist
   ══════════════════════════════════════════════════════════════════════════ */

/* AI button in modal header */
.cm-ai-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 11px;
    border-radius: 7px;
    font-size: 12px;
    font-weight: 600;
    border: 1px solid var(--color-gold, #c9a84c);
    background: rgba(201,168,76,.08);
    color: var(--color-gold, #c9a84c);
    cursor: pointer;
    transition: background .15s;
    white-space: nowrap;
}
.cm-ai-btn:hover { background: rgba(201,168,76,.18); }
.cm-ai-btn i { font-size: 13px; }

/* AI status bar */
.cm-ai-bar {
    padding: 8px 20px;
    background: rgba(201,168,76,.07);
    border-bottom: 1px solid rgba(201,168,76,.15);
    font-size: 12.5px;
    color: var(--color-ink-secondary);
    display: flex;
    align-items: center;
    gap: 7px;
}
.cm-ai-bar i { font-size: 14px; }
@keyframes cm-spin { to { transform: rotate(360deg); } }
.cm-spin { display: inline-block; animation: cm-spin .7s linear infinite; }

/* Thumbnail section */
.cm-thumb-section {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--color-border-rule);
}
.cm-thumb-preview {
    width: 112px;
    height: 76px;
    border-radius: 8px;
    border: 1px dashed var(--color-border-rule);
    background: var(--color-surface-page);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    flex-shrink: 0;
    overflow: hidden;
}
.cm-thumb-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.cm-thumb-placeholder-icon { font-size: 22px; color: var(--color-ink-faint, rgba(255,255,255,.2)); }
.cm-thumb-placeholder-text { font-size: 10px; color: var(--color-ink-faint, rgba(255,255,255,.2)); }
.cm-thumb-actions {
    display: flex;
    flex-direction: column;
    gap: 7px;
}
.cm-thumb-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 11px;
    border-radius: 6px;
    font-size: 12px;
    border: 1px solid var(--color-border-rule);
    background: var(--color-surface-page);
    color: var(--color-ink-secondary);
    cursor: pointer;
    transition: border-color .15s, color .15s;
}
.cm-thumb-btn:hover { border-color: var(--gold, #c9a84c); color: var(--gold, #c9a84c); }
.cm-thumb-remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    font-size: 12px;
    border: 1px solid var(--color-border-rule);
    background: none;
    color: #c0392b;
    cursor: pointer;
}
.cm-thumb-remove:hover { background: rgba(192,57,43,.08); }

/* Tasks section */
.cm-tasks-section {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid var(--color-border-rule);
}
.cm-tasks-head {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
}
.cm-tasks-label {
    font-size: 12px;
    font-weight: 600;
    color: var(--color-ink-secondary);
    text-transform: uppercase;
    letter-spacing: .05em;
    display: flex;
    align-items: center;
    gap: 5px;
}
.cm-tasks-count {
    font-size: 11px;
    font-weight: 600;
    color: var(--color-gold, #c9a84c);
    background: rgba(201,168,76,.1);
    padding: 1px 7px;
    border-radius: 20px;
}
.cm-task-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 8px;
    max-height: 220px;
    overflow-y: auto;
}
.cm-task-empty {
    font-size: 12px;
    color: var(--color-ink-faint, rgba(255,255,255,.25));
    padding: 6px 0;
    text-align: center;
}
.cm-task-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 5px 8px;
    border-radius: 7px;
    background: var(--color-surface-page);
    border: 1px solid transparent;
    transition: border-color .12s;
}
.cm-task-item:hover { border-color: var(--color-border-rule); }
.cm-task-item.done .cm-task-text {
    text-decoration: line-through;
    color: var(--color-ink-faint, rgba(255,255,255,.3));
}
.cm-task-check {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    color: var(--color-ink-muted);
    font-size: 15px;
    display: flex;
    align-items: center;
    flex-shrink: 0;
    transition: color .12s;
}
.cm-task-item.done .cm-task-check { color: #3aaa6a; }
.cm-task-check:hover { color: #3aaa6a; }
.cm-task-text {
    flex: 1;
    font-size: 13px;
    color: var(--color-ink-primary);
    line-height: 1.4;
}
.cm-task-del {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    color: var(--color-ink-faint, rgba(255,255,255,.2));
    font-size: 11px;
    display: flex;
    align-items: center;
    opacity: 0;
    transition: opacity .12s, color .12s;
}
.cm-task-item:hover .cm-task-del { opacity: 1; }
.cm-task-del:hover { color: #c0392b; }

/* Add-task row */
.cm-task-add-row {
    display: flex;
    gap: 6px;
}
.cm-task-input {
    flex: 1;
    padding: 6px 10px;
    border-radius: 7px;
    border: 1px solid var(--color-border-rule);
    background: var(--color-surface-page);
    color: var(--color-ink-primary);
    font-size: 13px;
    font-family: var(--font-body);
    outline: none;
    transition: border-color .15s;
}
.cm-task-input:focus { border-color: var(--gold, #c9a84c); }
.cm-task-add-btn {
    width: 32px;
    height: 32px;
    border-radius: 7px;
    border: 1px solid var(--color-border-rule);
    background: var(--color-surface-page);
    color: var(--color-ink-muted);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    transition: border-color .15s, color .15s;
    flex-shrink: 0;
}
.cm-task-add-btn:hover { border-color: var(--gold, #c9a84c); color: var(--gold, #c9a84c); }

/* ── Lead Modal: Remarks (contact notes) ── */
.kmodal-remarks-section { border-top: 1px solid var(--color-border-rule); padding-top: 14px; margin-top: 4px; }
.kmodal-remarks-log {
    max-height: 220px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 10px;
}
.lm-remarks-empty { font-size: 12px; color: var(--color-ink-muted); margin: 0 0 8px; }
.lm-remark-item {
    background: var(--color-surface-raised, rgba(255,255,255,.04));
    border: 1px solid var(--color-border-rule);
    border-radius: 7px;
    padding: 8px 10px;
}
.lm-remark-meta {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 4px;
}
.lm-remark-author { font-size: 11px; font-weight: 600; color: var(--color-gold, #c9a84c); }
.lm-remark-time   { font-size: 10px; color: var(--color-ink-muted); flex: 1; }
.lm-remark-del {
    background: none;
    border: none;
    cursor: pointer;
    color: var(--color-ink-muted);
    font-size: 11px;
    padding: 0 2px;
    line-height: 1;
    opacity: .6;
    transition: opacity .15s, color .15s;
}
.lm-remark-del:hover { opacity: 1; color: #c0392b; }
.lm-remark-text { font-size: 12px; color: var(--color-ink-base); white-space: pre-wrap; line-height: 1.5; }

/* ══════════════════════════════════════════════════════════════════════════
   SALES LEAD CARD — redesigned layout
   ══════════════════════════════════════════════════════════════════════════ */
.kcard-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 6px;
    margin-bottom: 4px;
}
.kcard-contact {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--color-ink);
    line-height: 1.3;
    flex: 1;
}
.kcard-service {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--color-gold, #c9a84c);
    margin-bottom: 3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.kcard-location {
    font-size: 0.72rem;
    color: var(--color-ink-muted);
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    gap: 3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.kcard-location i { font-size: 10px; flex-shrink: 0; }
.kcard-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    margin-top: 6px;
    border-top: 1px solid var(--color-border-rule, rgba(0,0,0,0.06));
    padding-top: 5px;
}
.kcard-budget {
    font-size: 0.7rem;
    font-weight: 600;
    color: #1D5C38;
    background: rgba(29,92,56,0.08);
    padding: 2px 7px;
    border-radius: 8px;
    white-space: nowrap;
}
.kcard-budget.kcard-budget-tbd {
    color: var(--color-ink-faint, #aaa);
    background: rgba(0,0,0,0.04);
}
.kcard-footer-right {
    display: flex;
    align-items: center;
    gap: 5px;
    flex-shrink: 0;
}
.kcard-age {
    font-size: 0.65rem;
    color: var(--color-ink-faint, #aaa);
    white-space: nowrap;
}
.kcard-proj-link {
    font-size: 0.65rem;
    font-weight: 600;
    color: #1D5C38;
    background: rgba(29,92,56,0.08);
    padding: 2px 6px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    gap: 3px;
    text-decoration: none;
}
.kcard-proj-link:hover { background: rgba(29,92,56,0.16); }

/* Platform badges */
.kcard-platform {
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    padding: 2px 6px;
    border-radius: 5px;
    flex-shrink: 0;
}
.kcard-platform-fb   { background: rgba(24,119,242,0.13); color: #1877F2; }
.kcard-platform-ig   { background: rgba(195,42,163,0.13); color: #C32AA3; }
.kcard-platform-meta { background: rgba(24,119,242,0.10); color: #1877F2; }

/* ── Lead card temperature accent ───────────────────────────────────────── */
.kanban-card[class*="kcard-heat-"] {
    border-left-width: 3px;
    padding-left: 10px;
}
/* New — neutral grey */
.kcard-heat-new {
    border-left-color: #9ca3af;
    background: var(--color-bg, #fff);
}
/* Active (Contacted / Qualified) — cool blue */
.kcard-heat-active {
    border-left-color: #3b82f6;
    background: rgba(59,130,246,0.03);
}
/* Hot (Meeting / Proposal) — amber */
.kcard-heat-hot {
    border-left-color: #f59e0b;
    background: rgba(245,158,11,0.04);
}
/* Won — green */
.kcard-heat-won {
    border-left-color: #22c55e;
    background: rgba(34,197,94,0.04);
}
/* Dead (Lost) — muted red */
.kcard-heat-dead {
    border-left-color: #ef4444;
    background: rgba(239,68,68,0.03);
}

/* ══════════════════════════════════════════════════════════════════════════
   LEAD MODAL — wider box + section labels + inbox row
   ══════════════════════════════════════════════════════════════════════════ */
#leadModal .kmodal-box {
    width: min(640px, 97vw);
}
.kmodal-section-label {
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-gold, #c9a84c);
    border-bottom: 1px solid var(--color-border-rule, rgba(0,0,0,0.07));
    padding-bottom: 4px;
    margin-bottom: -4px;
}
.kmodal-label-hint {
    font-size: 0.68rem;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
    color: var(--color-ink-faint, #aaa);
}
.kmodal-inbox-row {
    display: flex;
    gap: 6px;
    align-items: center;
}
.kmodal-inbox-row .kmodal-input { flex: 1; }
.kmodal-inbox-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 8px;
    background: rgba(24,119,242,0.1);
    color: #1877F2;
    font-size: 16px;
    text-decoration: none;
    flex-shrink: 0;
    transition: background .15s;
}
.kmodal-inbox-btn:hover { background: rgba(24,119,242,0.2); }
.kmodal-add-note-btn {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-top: 6px;
    padding: 7px 14px;
    background: rgba(201,168,76,.1);
    border: 1px solid rgba(201,168,76,.3);
    border-radius: 8px;
    color: var(--color-gold, #c9a84c);
    font-size: 0.82rem;
    font-weight: 600;
    cursor: pointer;
    width: 100%;
    justify-content: center;
    transition: background .15s;
}
.kmodal-add-note-btn:hover { background: rgba(201,168,76,.2); }
