.customer-timeline{padding:1.5rem 1.5rem 1.5rem 1rem;margin:0;overflow-y:auto;flex:1 1;min-width:0}.customer-timeline-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.customer-timeline-title{font-size:1rem;font-weight:600;color:var(--text-primary,#111827)}.timeline-add-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--accent-primary,#2563eb);color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.timeline-add-btn:hover{background:var(--accent-primary-hover,#1d4ed8)}.timeline-add-btn svg{width:14px;height:14px}.timeline-add-dropdown{position:relative}.timeline-add-menu{position:absolute;top:100%;right:0;margin-top:4px;background:var(--bg-primary,#fff);border:1px solid var(--border-primary,#e5e7eb);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1);min-width:180px;z-index:100;padding:4px}.timeline-add-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;background:transparent;color:var(--text-primary,#111827);font-size:.875rem;text-align:left;cursor:pointer;border-radius:6px;transition:background .1s ease}.timeline-add-menu-item:hover{background:var(--bg-secondary,#f9fafb)}.timeline-add-menu-item svg{width:16px;height:16px;color:var(--text-secondary,#6b7280)}.timeline-track{position:relative;padding:0}.timeline-track:before{content:"";position:absolute;left:18px;top:0;bottom:0;width:2px;background:var(--border-light,#e5e7eb)}.timeline-item{position:relative;padding-bottom:24px}.timeline-item:last-child{padding-bottom:0}.timeline-item[data-side=left],.timeline-item[data-side=right]{width:100%;margin-left:0;padding-left:40px;text-align:left}.timeline-dot{position:absolute;top:4px;width:18px;height:18px;border-radius:50%;background:var(--bg-primary,#fff);border:2px solid var(--border-primary,#d1d5db);display:flex;align-items:center;justify-content:center;z-index:1}.timeline-dot svg{width:10px;height:10px}.timeline-item[data-side=left] .timeline-dot,.timeline-item[data-side=right] .timeline-dot{left:10px}.timeline-group-header[data-type=subscription] .timeline-dot,.timeline-item[data-type=subscription] .timeline-dot{border-color:#8b5cf6;background:#f5f3ff}.timeline-group-header[data-type=subscription] .timeline-dot svg,.timeline-item[data-type=subscription] .timeline-dot svg{color:#8b5cf6}.timeline-item[data-type=cancellation] .timeline-dot{border-color:#ef4444;background:#fef2f2}.timeline-item[data-type=cancellation] .timeline-dot svg{color:#ef4444}.timeline-item[data-type=feedback-benefit] .timeline-dot{border-color:#10b981;background:#ecfdf5}.timeline-item[data-type=feedback-benefit] .timeline-dot svg{color:#10b981}.timeline-item[data-type=feedback-concern] .timeline-dot{border-color:#f59e0b;background:#fffbeb}.timeline-item[data-type=feedback-concern] .timeline-dot svg{color:#f59e0b}.timeline-item[data-type=action] .timeline-dot{border-color:#3b82f6;background:#eff6ff}.timeline-item[data-type=action] .timeline-dot svg{color:#3b82f6}.timeline-item[data-type=issue] .timeline-dot{border-color:#e07020;background:#fff7ed}.timeline-item[data-type=issue] .timeline-dot svg{color:#e07020}.timeline-item[data-type=feature] .timeline-dot{border-color:#6366f1;background:#eef2ff}.timeline-item[data-type=feature] .timeline-dot svg{color:#6366f1}.timeline-item[data-type=conversation] .timeline-dot{border-color:#06b6d4;background:#ecfeff}.timeline-item[data-type=conversation] .timeline-dot svg{color:#06b6d4}.timeline-item[data-type=granola] .timeline-dot{border-color:#f59e0b;background:#fffbeb}.timeline-item[data-type=granola] .timeline-dot svg{color:#f59e0b}.timeline-item[data-type=calendly] .timeline-dot{border-color:#0069ff;background:#e8f0fe}.timeline-item[data-type=calendly] .timeline-dot svg{color:#0069ff}.timeline-item[data-type=bug] .timeline-dot{border-color:#ef4444;background:#fef2f2}.timeline-item[data-type=bug] .timeline-dot svg{color:#ef4444}.timeline-group-header[data-type=posthog-session] .timeline-dot,.timeline-item[data-type=posthog-session] .timeline-dot{border-color:#a855f7;background:#faf5ff}.timeline-group-header[data-type=posthog-session] .timeline-dot svg,.timeline-item[data-type=posthog-session] .timeline-dot svg{color:#a855f7}.timeline-item[data-type=pylon-issue] .timeline-dot,.timeline-item[data-type=pylon-message] .timeline-dot{border-color:#3b82f6;background:#eff6ff}.timeline-item[data-type=pylon-issue] .timeline-dot svg,.timeline-item[data-type=pylon-message] .timeline-dot svg{color:#3b82f6}.timeline-item[data-type=note] .timeline-dot{border-color:#f59e0b;background:#fffbeb}.timeline-item[data-type=note] .timeline-dot svg{color:#f59e0b}.timeline-item[data-type=stage] .timeline-dot{border-color:#14b8a6;background:#f0fdfa}.timeline-item[data-type=stage] .timeline-dot svg{color:#14b8a6}.timeline-item[data-type=platform-context] .timeline-dot{border-color:#6366f1;background:#eef2ff}.timeline-item[data-type=platform-context] .timeline-dot svg{color:#6366f1}.timeline-card{background:var(--bg-primary,#fff);border:1px solid var(--border-light,#e5e7eb);border-radius:8px;padding:12px 14px;transition:box-shadow .15s ease,border-color .15s ease;text-align:left}.timeline-card:hover{border-color:var(--border-primary,#d1d5db);box-shadow:0 2px 8px rgba(0,0,0,.04)}.timeline-card-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.timeline-item[data-side=left] .timeline-card-header{flex-direction:row}.timeline-card-type{display:inline-flex;align-items:center;gap:6px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;padding:3px 8px;border-radius:4px;flex-shrink:0}.timeline-card-date{font-size:.75rem;color:var(--text-muted,#9ca3af);white-space:nowrap}.timeline-card-header .timeline-card-date{flex:1 1}.timeline-card-type.subscription{background:#f5f3ff;color:#7c3aed}.timeline-card-type.cancellation,.timeline-card-type.payment-failed{background:#fef2f2;color:#dc2626}.timeline-card-type.benefit{background:#ecfdf5;color:#059669}.timeline-card-type.concern{background:#fffbeb;color:#d97706}.timeline-card-type.action{background:#eff6ff;color:#2563eb}.timeline-card-type.feature{background:#eef2ff;color:#4f46e5}.timeline-card-type.conversation{background:#ecfeff;color:#0891b2}.timeline-card-type.granola{background:#fffbeb;color:#b45309}.timeline-card-type.calendly{background:#e8f0fe;color:#0069ff}.timeline-card-type.bug{background:#fef2f2;color:#dc2626}.timeline-card-type.posthog{background:#faf5ff;color:#9333ea}.timeline-card-type.platform-context{background:#eef2ff;color:#4f46e5}.timeline-card-type.pylon{background:#ecfeff;color:#0891b2}.timeline-card-type.note{background:#fffbeb;color:#d97706}.timeline-card-type.stage{background:#f0fdfa;color:#0d9488}.timeline-blocker-badge{display:inline-flex;margin-left:4px;color:var(--text-muted,#9ca3af)}.timeline-blocker-badge svg{width:12px;height:12px}.timeline-blocker-badge.solved{color:#2e9e5e}.timeline-blocker-badge.solved svg{fill:#2e9e5e;stroke:#2e9e5e}.timeline-blocker-toggle.is-blocker{color:var(--color-danger,#dc2626)}.timeline-card-title{font-size:.875rem;font-weight:500;color:var(--text-primary,#111827);margin:0 0 2px;line-height:1.4;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.timeline-card-subtitle{font-size:.8125rem;color:var(--text-secondary,#6b7280);margin:0;line-height:1.5}.timeline-card-content{font-size:.8125rem;color:var(--text-secondary,#4b5563);margin-top:4px;line-height:1.5;white-space:pre-line;word-break:break-word}.timeline-card-meta{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}.timeline-card-badge{font-size:.6875rem;font-weight:500;padding:3px 8px;border-radius:4px;background:var(--bg-tertiary,#f3f4f6);color:var(--text-secondary,#6b7280)}.timeline-card-badge,.timeline-card-link{display:inline-flex;align-items:center;gap:4px}.timeline-card-link{font-size:.75rem;color:var(--accent-primary,#2563eb);text-decoration:none}.timeline-card-link:hover{text-decoration:underline}.timeline-card-link svg{width:12px;height:12px}.timeline-card-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s ease;flex-shrink:0}.timeline-item:hover .timeline-card-actions{opacity:1}.timeline-card-action-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;color:var(--text-muted,#9ca3af);border-radius:4px;cursor:pointer;transition:all .1s ease;padding:0}.timeline-card-action-btn:hover{background:var(--bg-tertiary,#f3f4f6);color:var(--text-secondary,#6b7280)}.timeline-card-action-btn.timeline-card-action-delete:hover{background:#fef2f2;color:#ef4444}.timeline-card-action-btn svg{width:13px;height:13px}.timeline-card-editing{border-color:rgba(229,47,114,.35)}.timeline-edit-form{display:flex;flex-direction:column;gap:8px;margin-top:8px}.timeline-edit-input,.timeline-edit-select,.timeline-edit-textarea{font-family:inherit;font-size:.8125rem;padding:8px 10px;border:1px solid var(--border-primary,#d1d5db);border-radius:6px;background:var(--bg-primary,#fff);color:var(--text-primary,#111827);resize:vertical;width:100%;box-sizing:border-box}.timeline-edit-input:focus,.timeline-edit-select:focus,.timeline-edit-textarea:focus{outline:none}.timeline-edit-name-textarea{resize:none;line-height:1.4;min-height:2.4em}.timeline-edit-select{cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.timeline-edit-actions{display:flex;gap:8px;margin-top:8px}.timeline-edit-save{padding:6px 14px;background:var(--accent-primary,#2563eb);color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.timeline-edit-save:hover{background:var(--accent-primary-hover,#1d4ed8)}.timeline-edit-save:disabled{opacity:.6;cursor:not-allowed}.timeline-edit-cancel{padding:6px 14px;background:var(--bg-tertiary,#f3f4f6);color:var(--text-secondary,#6b7280);border:none;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.timeline-edit-cancel:hover{background:var(--bg-secondary,#e5e7eb)}.timeline-card-deleting{border-color:#fca5a5;background:#fef2f2}.timeline-delete-prompt{font-size:.875rem;color:var(--text-primary,#111827);margin:4px 0 0;font-weight:500}.timeline-delete-confirm{padding:6px 14px;background:#ef4444;color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.timeline-delete-confirm:hover{background:#dc2626}.timeline-delete-confirm:disabled{opacity:.6;cursor:not-allowed}.timeline-card-adding{border:1px dashed var(--border-primary,#d1d5db);background:var(--bg-secondary,#f9fafb)}.timeline-card-adding:focus-within{border-style:solid;border-color:rgba(229,47,114,.35);background:var(--bg-primary,#fff)}.timeline-item-adding{padding-bottom:24px}.timeline-add-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.8125rem;font-weight:600;color:var(--text-primary,#111827)}.timeline-add-form-header-actions{display:flex;align-items:center;gap:4px}.timeline-add-form-blocker{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid var(--border-light,#e5e7eb);background:transparent;color:var(--text-muted,#9ca3af);border-radius:4px;cursor:pointer;font-size:.6875rem;font-weight:500;font-family:inherit;transition:all .15s ease}.timeline-add-form-blocker svg{width:12px;height:12px}.timeline-add-form-blocker:hover{color:var(--text-secondary,#6b7280);border-color:var(--border-primary,#d1d5db);background:var(--bg-tertiary,#f3f4f6)}.timeline-add-form-blocker.is-blocker{color:var(--color-danger,#e53e3e);border-color:rgba(229,62,62,.3);background:rgba(229,62,62,.08)}.timeline-add-form-blocker.is-blocker:hover{background:rgba(229,62,62,.15)}.timeline-add-form-link-toggle{display:inline-flex;align-items:center;padding:2px 8px;border:1px solid var(--border-light,#e5e7eb);background:transparent;color:var(--text-muted,#9ca3af);border-radius:4px;cursor:pointer;font-size:.6875rem;white-space:nowrap;transition:all .15s}.timeline-add-form-link-toggle:hover{color:var(--text-secondary,#6b7280);border-color:var(--border-primary,#d1d5db);background:var(--bg-tertiary,#f3f4f6)}.timeline-add-form-link-toggle.is-active{color:var(--color-accent,#3b82f6);border-color:rgba(59,130,246,.3);background:rgba(59,130,246,.08)}.timeline-add-form-link-toggle.is-active:hover{background:rgba(59,130,246,.15)}.inline-link-input-row{display:flex;flex-direction:column;gap:6px}.inline-link-error{font-size:.75rem;color:var(--color-danger,#e53e3e);padding:0 2px}.timeline-add-form-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;color:var(--text-muted,#9ca3af);border-radius:4px;cursor:pointer;padding:0}.timeline-add-form-close:hover{background:var(--bg-tertiary,#f3f4f6);color:var(--text-secondary,#6b7280)}.timeline-add-form-close svg{width:14px;height:14px}.timeline-add-form-assignee-wrapper{position:relative}.timeline-add-form-assignee{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid var(--border-light,#e5e7eb);background:transparent;color:var(--text-muted,#9ca3af);border-radius:4px;cursor:pointer;font-size:.6875rem;font-weight:500;font-family:inherit;transition:all .15s ease;white-space:nowrap}.timeline-add-form-assignee svg{width:12px;height:12px}.timeline-add-form-assignee:hover{color:var(--text-secondary,#6b7280)}.timeline-add-form-assignee.has-assignee,.timeline-add-form-assignee:hover{border-color:var(--border-primary,#d1d5db);background:var(--bg-tertiary,#f3f4f6)}.timeline-add-form-assignee.has-assignee{color:var(--text-primary,#111827)}.timeline-add-form-assignee-av{width:16px;height:16px;border-radius:50%;object-fit:cover;flex-shrink:0}.timeline-add-form-assignee-initials{display:inline-flex;align-items:center;justify-content:center;background:var(--bg-secondary,#e5e7eb);color:var(--text-muted,#9ca3af);font-size:.5rem;font-weight:600}.timeline-add-form-assignee-name{font-size:.6875rem;font-weight:500;color:var(--text-primary,#111827);max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline-add-form-assignee-dropdown{position:absolute;top:100%;right:0;z-index:50;min-width:200px;background:var(--bg-primary,#fff);border:1.5px solid var(--border-primary,#d1d5db);border-radius:8px;box-shadow:var(--shadow-lg,0 10px 15px -3px rgba(0,0,0,.1));padding:.25rem;margin-top:.25rem;max-height:260px;overflow-y:auto}.timeline-add-form-assignee-option{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;border-radius:6px;cursor:pointer;width:100%;background:none;border:none;font-family:inherit;text-align:left;transition:background .1s ease}.timeline-add-form-assignee-option.active,.timeline-add-form-assignee-option:hover{background:var(--bg-tertiary,#f3f4f6)}.timeline-add-form-assignee-option-av{width:22px;height:22px;border-radius:50%;object-fit:cover;flex-shrink:0}.timeline-add-form-assignee-option-name{font-size:.8125rem;color:var(--text-primary,#111827)}.timeline-add-form-assignee-placeholder{color:var(--text-muted,#9ca3af);font-style:italic}.timeline-add-form-assignee-loading{padding:.5rem;font-size:.75rem;color:var(--text-muted,#9ca3af);text-align:center}.timeline-group{position:relative;padding-bottom:12px}.timeline-group[data-side=left],.timeline-group[data-side=right]{width:100%;margin-left:0;padding-left:40px;text-align:left}.timeline-group-header{display:flex;align-items:center;gap:10px;width:100%;padding:4px 0;min-height:18px;background:none;border:none;cursor:pointer;font-family:inherit;text-align:left;color:inherit}.timeline-group[data-side=left] .timeline-group-header{flex-direction:row;text-align:left}.timeline-group-header:hover .timeline-group-date,.timeline-group-header:hover .timeline-group-summary{color:var(--text-secondary,#6b7280)}.timeline-group-header .timeline-dot{position:absolute;top:4px;flex-shrink:0;width:18px;height:18px;border-radius:50%;background:#faf5ff;border:2px solid #a855f7;display:flex;align-items:center;justify-content:center;opacity:.4;transform:scale(.75)}.timeline-group[data-side=left] .timeline-group-header .timeline-dot,.timeline-group[data-side=right] .timeline-group-header .timeline-dot{left:10px}.timeline-group-header .timeline-dot svg{width:10px;height:10px;color:#a855f7}.timeline-group-chevron{display:flex;align-items:center;color:var(--text-muted,#9ca3af);flex-shrink:0;transition:transform .15s ease}.timeline-group-header.expanded .timeline-group-chevron{transform:rotate(90deg)}.timeline-group-chevron svg{width:12px;height:12px}.timeline-group-summary{font-size:.8125rem;color:var(--text-muted,#9ca3af);flex:1 1;min-width:0}.timeline-group-date{font-size:.6875rem;color:var(--text-muted,#9ca3af);opacity:.7;white-space:nowrap;flex-shrink:0}.timeline-group-items{margin-top:4px;padding:4px 0 0}.timeline-group-items .timeline-item-inline{padding-bottom:4px;width:100%}.timeline-group-items .timeline-item-inline .timeline-dot{display:none}.timeline-group-items .timeline-inline-row{padding-left:0}.timeline-item-inline{padding-bottom:12px}.timeline-item-inline[data-side=left] .timeline-inline-row{justify-content:flex-start}.timeline-inline-row{display:flex;align-items:center;gap:10px;padding:4px 0;min-height:18px}.timeline-inline-text{font-size:.75rem;color:var(--text-muted,#9ca3af)}.timeline-inline-date{opacity:.7}.timeline-inline-date,.timeline-inline-link{font-size:.6875rem;color:var(--text-muted,#9ca3af)}.timeline-inline-link{text-decoration:none;display:inline-flex;align-items:center;gap:3px;opacity:0;transition:opacity .15s ease}.timeline-item-inline:hover .timeline-inline-link{opacity:1;color:var(--accent-primary,#2563eb)}.timeline-inline-link svg{width:10px;height:10px}.timeline-item-inline .timeline-dot{opacity:.4;transform:scale(.75)}.timeline-item-inline-prominent .timeline-inline-text{font-size:.8125rem;color:var(--text-secondary,#6b7280)}.timeline-item-inline-prominent .timeline-inline-date{font-size:.75rem;color:var(--text-secondary,#6b7280);opacity:.8}.timeline-item-inline-prominent .timeline-dot{opacity:.6;transform:scale(.85)}.timeline-action-inline{padding-bottom:8px}.timeline-action-inline.timeline-action-done .timeline-dot{opacity:.35}.timeline-action-row{display:flex;align-items:flex-start;gap:8px;padding:3px 0;min-height:22px}.timeline-action-checkbox{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;margin:0;border:none;background:transparent;cursor:pointer;flex-shrink:0;border-radius:3px;transition:all .15s ease;color:var(--text-muted,#9ca3af);position:relative;top:2px}.timeline-action-checkbox:hover{color:var(--text-secondary,#6b7280);background:var(--bg-tertiary,#f3f4f6)}.timeline-action-checkbox.checked{color:#16a34a}.timeline-action-checkbox.checked:hover{color:#15803d;background:rgba(34,197,94,.08)}.timeline-action-checkbox svg{width:14px;height:14px}.timeline-action-title{font-size:.8125rem;font-weight:500;color:var(--text-primary,#111827);line-height:1.3;word-break:break-word;min-width:0}.timeline-action-title.done{color:var(--text-muted,#9ca3af);text-decoration:line-through;font-weight:400}.timeline-action-blocker{flex-shrink:0;color:var(--color-danger,#e53e3e)}.timeline-action-blocker svg{width:12px;height:12px}.timeline-action-date{font-size:.6875rem;color:var(--text-muted,#9ca3af);opacity:.7;white-space:nowrap;flex-shrink:0;margin-left:auto}.timeline-action-actions{display:flex;align-items:center;gap:2px;opacity:0;transition:opacity .15s ease;flex-shrink:0}.timeline-action-inline:hover .timeline-action-actions{opacity:1}.timeline-action-notes{font-size:.75rem;color:var(--text-muted,#9ca3af);line-height:1.4;padding-left:22px;padding-bottom:2px}.timeline-action-done .timeline-action-notes{opacity:.5}.timeline-card.subscription-card{background:linear-gradient(135deg,#f5f3ff,#fdf4ff);border-color:#ddd6fe}.timeline-card.cancellation-card{background:linear-gradient(135deg,#fef2f2,#fff1f2);border-color:#fecaca}.timeline-card.payment-failed-card{position:relative;background:linear-gradient(135deg,#fef2f2,#fff7ed);border-color:#fca5a5;overflow:visible}.timeline-card.payment-failed-card.payment-failed-resolved-card{background:linear-gradient(135deg,#f9fafb,#fff7ed);border-color:#fcd9b5}.timeline-card.payment-failed-card.payment-failed-resolved-card .timeline-card-content{color:#6b7280}.payment-failed-retry-badge{position:absolute;top:-12px;right:-10px;font-size:1.125rem;font-weight:700;color:#fff;background:#dc2626;padding:2px 10px;border-radius:12px;line-height:1.4;box-shadow:0 2px 6px rgba(220,38,38,.35);z-index:2;pointer-events:none}.payment-recovered-badge{margin-left:6px;font-size:.65rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#166534;background:#dcfce7;border:1px solid #86efac;border-radius:999px;padding:1px 6px}.timeline-card.platform-context-card{background:linear-gradient(135deg,#eef2ff,#f0f0ff);border-color:#c7d2fe}.timeline-card.platform-context-card .timeline-card-content{white-space:pre-wrap;word-break:break-word}.subscription-amount{font-size:1.125rem;font-weight:600;color:#7c3aed}.subscription-interval{font-size:.6875rem;font-weight:500;color:var(--text-muted,#9ca3af);background:var(--bg-tertiary,#f3f4f6);padding:2px 6px;border-radius:3px}.timeline-card-title .action-status-badge{flex-shrink:0;vertical-align:middle}.timeline-action-status-selector{flex-shrink:0}.timeline-empty{text-align:center;padding:3rem 2rem;color:var(--text-muted,#9ca3af)}.timeline-empty-icon{width:48px;height:48px;margin:0 auto 1rem;color:var(--border-primary,#d1d5db)}.timeline-empty p{margin:0;font-size:.875rem}.slack-message-card{padding:10px 14px}.slack-message-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.slack-message-avatar{width:28px;height:28px;border-radius:5px;background:var(--bg-tertiary,#f3f4f6);flex-shrink:0;object-fit:cover}.slack-message-avatar-initials{display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#611f69;background:#f3e8f5;line-height:1}.slack-message-author{font-size:.875rem;font-weight:700;color:var(--text-primary,#111827)}.slack-message-channel{font-size:.75rem;color:#611f69;background:#f3e8f5;padding:1px 6px;border-radius:3px;font-weight:500}a.slack-message-time{font-size:.6875rem;color:var(--text-muted,#9ca3af);text-decoration:none!important;flex:1 1}a.slack-message-time:hover{text-decoration:underline!important}.slack-message-body{font-size:.8125rem;color:var(--text-secondary,#4b5563);line-height:1.55;white-space:pre-wrap;word-break:break-word}.timeline-item[data-type=note]:has(.slack-message-card) .timeline-dot{border-color:#611f69;background:#f3e8f5}.timeline-item[data-type=note]:has(.slack-message-card) .timeline-dot svg{color:#611f69}.timeline-note-author-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.timeline-note-avatar-initials{color:var(--text-secondary,#6b7280)!important;background:var(--bg-tertiary,#f3f4f6)!important}.note-author{display:flex;align-items:center;gap:.25rem;font-size:.6875rem;color:var(--text-muted)}.note-author-avatar{width:16px;height:16px;border-radius:4px;background:var(--bg-tertiary,#f3f4f6);flex-shrink:0}.note-author-initials{display:inline-flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:600;color:var(--text-secondary,#6b7280);line-height:1}.note-author-name{font-weight:500}.note-attachments{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.note-attachment{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:var(--bg-tertiary,#f3f4f6);border-radius:4px;font-size:.75rem;color:var(--text-secondary,#6b7280);text-decoration:none;transition:background .15s ease}.note-attachment:hover{background:var(--bg-secondary,#e5e7eb);color:var(--text-primary,#111827)}.note-attachment svg{width:12px;height:12px}.timeline-stage-item{padding-bottom:14px}.stage-achieved-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;background:#f0fdfa;color:#0d9488;font-size:.6875rem;font-weight:600;border-radius:4px}.timeline-item[data-type=stage] .timeline-dot{border-color:var(--stage-dot,#14b8a6);background:var(--stage-bg,#f0fdfa)}.timeline-item[data-type=stage] .timeline-dot svg{color:var(--stage-dot,#14b8a6)}.timeline-stage-row{position:relative;display:flex;align-items:center;width:100%}.timeline-stage-line{flex:1 1;height:2px;background:var(--stage-line,rgba(20,184,166,.18));min-width:20px}.timeline-stage-label{display:inline-flex;align-items:center;gap:6px;padding:4px 14px;margin-right:12px;white-space:nowrap;flex-shrink:0;background:var(--stage-bg,rgba(20,184,166,.06));border-radius:999px;border:1px solid var(--stage-line,rgba(20,184,166,.18))}.timeline-stage-label svg{width:12px;height:12px;color:var(--stage-text,#0d9488);flex-shrink:0}.timeline-stage-name{font-size:.8125rem;font-weight:600;color:var(--stage-text,#0d9488)}.timeline-stage-date{font-size:.6875rem;color:var(--stage-text,#0d9488);opacity:.6;font-weight:500}.timeline-stage-author{font-size:.75rem;color:var(--text-muted,#9ca3af);font-weight:400}.timeline-stage-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s ease}.timeline-stage-item:hover .timeline-stage-actions{opacity:1}.timeline-stage-comment{padding-left:14px;padding-top:6px;font-size:.75rem;color:var(--text-muted,#9ca3af);line-height:1.4;text-align:left}.timeline-stage-deleting .timeline-stage-label{background:#fef2f2;border-color:#fca5a5}.timeline-stage-deleting .timeline-stage-date,.timeline-stage-deleting .timeline-stage-label svg,.timeline-stage-deleting .timeline-stage-name{color:#ef4444}.timeline-stage-deleting .timeline-stage-line{background:#fca5a5}.timeline-stage-delete-actions{display:inline-flex;align-items:center;gap:6px;margin-left:2px}.timeline-stage-delete-confirm{padding:2px 10px;background:#ef4444;color:#fff;border:none;border-radius:999px;font-size:.75rem;font-weight:500;cursor:pointer;transition:background .15s ease;line-height:1.4}.timeline-stage-delete-confirm:hover{background:#dc2626}.timeline-stage-delete-confirm:disabled{opacity:.6;cursor:not-allowed}.timeline-stage-delete-cancel{padding:2px 10px;background:transparent;color:var(--text-muted,#9ca3af);border:1px solid var(--border-primary,#e5e7eb);border-radius:999px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s ease;line-height:1.4}.timeline-stage-delete-cancel:hover{background:var(--bg-tertiary,#f3f4f6);color:var(--text-secondary,#6b7280)}.pylon-thread-toggle{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;font-weight:500;color:var(--accent-primary,#2563eb);background:none;border:none;cursor:pointer;padding:2px 0;transition:color .15s ease;font-family:inherit}.pylon-thread-toggle:hover{color:var(--accent-primary-hover,#1d4ed8)}.pylon-thread-toggle svg{width:12px;height:12px;transition:transform .15s ease}.pylon-thread-wrapper{flex-basis:100%;margin-top:10px;border-top:1px solid var(--border-light,#e5e7eb);padding-top:8px;display:flex;flex-direction:column;gap:6px}.pylon-thread-messages{display:flex;flex-direction:column;gap:6px;max-height:400px;overflow-y:auto}.pylon-thread-empty{margin-top:8px;font-size:.75rem;color:var(--text-muted,#9ca3af);font-style:italic}.pylon-thread-msg{display:flex;gap:8px;padding:8px 10px;border-radius:6px;border-left:3px solid transparent;width:100%;box-sizing:border-box}.pylon-thread-msg-avatar{width:22px;height:22px;border-radius:50%;object-fit:cover;flex-shrink:0;margin-top:2px;display:flex;align-items:center;justify-content:center;font-size:.5625rem;font-weight:600}.pylon-thread-msg-avatar-initials{background:var(--bg-tertiary,#e5e7eb);color:var(--text-muted,#9ca3af)}.pylon-thread-msg-agent .pylon-thread-msg-avatar-initials{background:#dbeafe;color:#3b82f6}.pylon-thread-msg-customer .pylon-thread-msg-avatar-initials{background:var(--bg-tertiary,#e5e7eb);color:var(--text-secondary,#6b7280)}.pylon-thread-msg-content{flex:1 1;min-width:0}.pylon-thread-msg-customer{background:var(--bg-secondary,#f9fafb);border-left-color:var(--border-primary,#d1d5db)}.pylon-thread-msg-agent{background:#eff6ff;border-left-color:#3b82f6}.pylon-thread-msg-private{background:#fffbeb;border-left-color:#f59e0b}.pylon-thread-msg-optimistic{opacity:.7}.pylon-optimistic-error{color:#ef4444;font-size:.75rem;margin-top:.5rem;font-style:italic}.pylon-message-card{display:flex;flex-direction:column;gap:6px}.pylon-msg-header{display:flex;align-items:flex-start;gap:8px}.pylon-msg-avatar{width:22px;height:22px;border-radius:50%;object-fit:cover;flex-shrink:0;margin-top:1px;display:flex;align-items:center;justify-content:center;font-size:.5625rem;font-weight:600}.pylon-msg-avatar-initials{background:var(--bg-tertiary,#e5e7eb);color:var(--text-muted,#9ca3af)}.pylon-msg-header-text{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1 1}.pylon-msg-author{font-size:.8125rem;font-weight:600;color:var(--text-primary,#111827)}.pylon-msg-thread-label{font-size:.6875rem;color:var(--text-muted,#9ca3af);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pylon-msg-body{font-size:.8125rem;line-height:1.5;color:var(--text-secondary,#4b5563);word-break:break-word;position:relative;max-height:calc(1.5em * 6);overflow:hidden}.pylon-msg-body.is-truncated:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1.5em;background:linear-gradient(to bottom,transparent,var(--bg-primary,#fff));pointer-events:none}.pylon-msg-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.pylon-msg-view-thread{display:inline-flex;align-items:center;gap:3px;font-size:.6875rem;font-weight:500;color:var(--accent-primary,#2563eb);background:none;border:none;cursor:pointer;padding:0;font-family:inherit;transition:color .15s ease}.pylon-msg-view-thread:hover{color:var(--accent-primary-hover,#1d4ed8);text-decoration:underline}.pylon-msg-view-thread svg{width:10px;height:10px}.timeline-card-type.pylon-message{background:#eff6ff;color:#3b82f6}.pylon-inline-reply-trigger{width:100%;padding:6px 10px;font-size:.8125rem;color:var(--text-muted,#9ca3af);background:var(--bg-secondary,#f9fafb);border:1px solid var(--border-light,#e5e7eb);border-radius:6px;cursor:pointer;text-align:left;font-family:inherit;transition:border-color .15s ease,color .15s ease;margin-top:4px}.pylon-inline-reply-trigger:hover{border-color:var(--accent-primary,#2563eb);color:var(--text-secondary,#6b7280)}.pylon-inline-reply{display:flex;flex-direction:column;gap:6px;margin-top:4px;border-top:1px dashed var(--border-light,#e5e7eb);padding-top:8px}.pylon-inline-reply-input{width:100%;font-size:.8125rem}.pylon-inline-reply-input.rich-text-editor{border:1px solid var(--border-primary,#e5e7eb);border-radius:6px;background:var(--bg-primary,#fff)}.pylon-inline-reply-input.rich-text-editor:focus-within{border-color:var(--accent-primary,#2563eb);box-shadow:0 0 0 2px rgba(37,99,235,.08)}.pylon-inline-reply-actions{display:flex;align-items:center;gap:.5rem}.pylon-inline-reply-hint{font-size:.6875rem;color:var(--text-muted,#9ca3af);margin-left:auto}.pylon-msg-more-menu{position:relative;margin-left:auto}.pylon-msg-more-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;background:none;cursor:pointer;border-radius:4px;color:var(--text-muted,#9ca3af);padding:0;transition:background .15s ease,color .15s ease}.pylon-msg-more-btn:hover{background:var(--bg-tertiary,#f3f4f6);color:var(--text-secondary,#6b7280)}.pylon-msg-more-btn svg{width:14px;height:14px}.pylon-msg-more-dropdown{position:absolute;right:0;top:100%;z-index:50;min-width:180px;background:var(--bg-primary,#fff);border:1px solid var(--border-primary,#e5e7eb);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.08);padding:4px 0;margin-top:2px}.pylon-msg-more-dropdown button{display:block;width:100%;text-align:left;padding:6px 12px;font-size:.75rem;font-family:inherit;color:var(--text-secondary,#374151);background:none;border:none;cursor:pointer;transition:background .1s ease}.pylon-msg-more-dropdown button:hover{background:var(--bg-secondary,#f9fafb)}.pylon-thread-group{margin-bottom:4px;position:relative}.pylon-thread-group:after{content:"";position:absolute;left:18px;top:0;bottom:0;width:2px;background:#3b82f6;z-index:1}.pylon-thread-group-header-row{display:flex;align-items:center;position:relative;z-index:2}.pylon-thread-group-header-row .pylon-thread-group-header{flex:1 1;min-width:0}.pylon-thread-group[data-side=left] .pylon-thread-group-header .timeline-dot,.pylon-thread-group[data-side=right] .pylon-thread-group-header .timeline-dot{left:-30px;opacity:1;transform:none;color:#3b82f6;border-color:#3b82f6;background:#eff6ff;z-index:2}.pylon-thread-group .pylon-thread-group-header .timeline-dot svg{color:#3b82f6}.pylon-thread-group-title{font-weight:600;color:var(--text-primary,#111827)}.pylon-thread-group-date{flex-shrink:0}.pylon-thread-group-actions{display:flex;align-items:center;gap:.75rem;flex-shrink:0;opacity:0;transition:opacity .15s}.pylon-thread-group-actions:has(.pylon-msg-more-dropdown),.pylon-thread-group:hover .pylon-thread-group-actions{opacity:1}.pylon-thread-group-messages{padding-left:0}.pylon-thread-group-messages .timeline-item{position:relative;padding-left:20px}.pylon-thread-group-messages .timeline-dot{display:none}.pylon-thread-group-messages .pylon-message-card{border-radius:0;border-top:1px solid var(--border-light,#f3f4f6)}.pylon-thread-group-messages .timeline-item:first-child .pylon-message-card{border-top:none}.pylon-thread-msg-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.pylon-thread-msg-author{font-size:.75rem;font-weight:600;color:var(--text-primary,#111827);display:flex;align-items:center;gap:6px}.pylon-thread-msg-private-badge{font-size:.75rem;font-weight:500;color:#d97706;background:#fef3c7;padding:1px 5px;border-radius:3px;text-transform:uppercase;letter-spacing:.03em}.pylon-thread-msg-time{font-size:.6875rem;color:var(--text-muted,#9ca3af);white-space:nowrap;flex-shrink:0}.pylon-compose-form{display:flex;flex-direction:column;gap:8px;padding:4px 0}.pylon-compose-destination{display:flex;align-items:center;gap:4px}.pylon-compose-destination .template-picker-wrapper{margin-left:auto}.pylon-compose-dest-btn{padding:4px 12px;font-size:.75rem;font-weight:500;border:1px solid var(--border-light,#e5e7eb);border-radius:6px;background:var(--bg-primary,#fff);color:var(--text-secondary,#6b7280);cursor:pointer;transition:all .15s ease}.pylon-compose-dest-btn:hover{border-color:var(--border-primary,#d1d5db);color:var(--text-primary,#111827)}.pylon-compose-dest-btn.active{background:var(--accent-primary,#2563eb);border-color:var(--accent-primary,#2563eb);color:#fff}.pylon-compose-footer-edit{display:flex;flex-direction:column;gap:6px;padding:6px 8px;border:1px solid var(--border-light,#e5e7eb);border-radius:6px;background:var(--bg-secondary,#f9fafb)}.pylon-compose-email-picker{display:flex;flex-wrap:wrap;gap:4px}.pylon-compose-email-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;font-size:.7rem;font-weight:400;border:1px solid var(--border-light,#e5e7eb);border-radius:99px;background:var(--bg-primary,#fff);color:var(--text-secondary,#6b7280);cursor:pointer;transition:all .15s ease;font-family:inherit}.pylon-compose-email-chip:hover{border-color:var(--border-primary,#d1d5db);color:var(--text-primary,#111827)}.pylon-compose-email-chip.selected{background:var(--accent-bg,#eff6ff);border-color:var(--accent-border,#bfdbfe);color:var(--text-primary,#111827)}.pylon-compose-email-chip.selected:hover{background:var(--accent-bg-hover,#dbeafe);border-color:var(--accent-border,#bfdbfe);color:var(--text-primary,#111827)}.pylon-compose-email-chip:disabled{opacity:.5;cursor:not-allowed}.pylon-compose-email-tick{font-size:.6rem;color:var(--accent-primary,#2563eb);line-height:1}.pylon-compose-email-add-trigger{font-size:.8rem;font-weight:500;padding:3px 9px;line-height:1}.pylon-compose-email-remove{font-size:.8rem;line-height:1;opacity:.7;margin-left:1px}.pylon-compose-email-add-row{display:inline-flex;gap:4px;align-items:center}.pylon-compose-email-add-input{width:150px;padding:4px 8px;font-size:.7rem;border:1px solid var(--border-light,#e5e7eb);border-radius:6px;background:var(--bg-primary,#fff);color:var(--text-primary,#111827);outline:none;font-family:inherit;transition:border-color .15s ease}.pylon-compose-email-add-input:focus{border-color:var(--accent-primary,#2563eb)}.pylon-compose-email-add-input::placeholder{color:var(--text-muted,#9ca3af)}.pylon-compose-email-add-btn{font-size:.7rem;padding:4px 10px;border:1px solid var(--border-light,#e5e7eb);border-radius:6px;background:var(--bg-primary,#fff);color:var(--text-secondary,#6b7280);cursor:pointer;font-family:inherit;transition:all .15s ease}.pylon-compose-email-add-btn:hover:not(:disabled){border-color:var(--border-primary,#d1d5db);color:var(--text-primary,#111827)}.pylon-compose-email-add-btn:disabled{opacity:.4;cursor:not-allowed}.pylon-compose-done-btn{font-weight:500}.pylon-compose-email-primary{font-size:.6rem;font-weight:500;opacity:.7;text-transform:uppercase;letter-spacing:.02em}.pylon-compose-subject{width:100%;padding:8px 10px;font-size:.8125rem;font-weight:500;border:1px solid var(--border-light,#e5e7eb);border-radius:6px;background:var(--bg-primary,#fff);color:var(--text-primary,#111827);outline:none;transition:border-color .15s ease;box-sizing:border-box}.pylon-compose-subject:focus{border-color:var(--accent-primary,#2563eb)}.pylon-compose-subject::placeholder{color:var(--text-muted,#9ca3af);font-weight:400}.pylon-compose-body{width:100%;padding:8px 10px;font-size:.8125rem;line-height:1.5;border:1px solid var(--border-light,#e5e7eb);border-radius:6px;background:var(--bg-primary,#fff);color:var(--text-primary,#111827);outline:none;resize:vertical;min-height:180px;font-family:inherit;transition:border-color .15s ease;box-sizing:border-box}.pylon-compose-body:focus{border-color:var(--accent-primary,#2563eb)}.pylon-compose-body::placeholder{color:var(--text-muted,#9ca3af)}.pylon-compose-error{font-size:.75rem;color:#dc2626;padding:4px 0}.pylon-compose-actions{display:flex;justify-content:space-between;align-items:center}.pylon-compose-hint{font-size:.6875rem;color:var(--text-muted,#9ca3af);text-align:left}.pylon-compose-hint-clickable{cursor:pointer;background:none;border:none;padding:0;font-family:inherit;text-decoration:underline;-webkit-text-decoration-style:dotted;text-decoration-style:dotted;text-underline-offset:2px;transition:color .15s ease}.pylon-compose-hint-clickable:hover{color:var(--text-secondary,#6b7280)}.pylon-thread-reply{margin-top:8px;padding-top:8px;border-top:1px dashed var(--border-light,#e5e7eb);display:flex;flex-direction:column;gap:6px}.pylon-thread-reply-trigger{width:100%;padding:6px 10px;font-size:.8125rem;color:var(--text-muted,#9ca3af);background:var(--bg-primary,#fff);border:1px solid var(--border-light,#e5e7eb);border-radius:6px;cursor:pointer;text-align:left;transition:border-color .15s,color .15s}.pylon-thread-reply-trigger:hover{border-color:var(--accent-primary,#2563eb);color:var(--text-secondary,#6b7280)}.pylon-thread-reply-input{width:100%;padding:8px 10px;font-size:.8125rem;line-height:1.5;border:1px solid var(--border-light,#e5e7eb);border-radius:6px;background:var(--bg-primary,#fff);color:var(--text-primary,#111827);outline:none;resize:vertical;min-height:48px;font-family:inherit;transition:border-color .15s ease;box-sizing:border-box}.pylon-thread-reply-input:focus{border-color:var(--accent-primary,#2563eb)}.pylon-thread-reply-input::placeholder{color:var(--text-muted,#9ca3af)}.pylon-thread-reply-error{font-size:.75rem;color:#dc2626}.pylon-thread-reply-actions{display:flex;align-items:center;gap:.5rem}.pylon-thread-reply-hint{font-size:.6875rem;color:var(--text-muted,#9ca3af);margin-left:auto}@media (max-width:768px){.customer-timeline{padding:1rem;max-width:100%}.timeline-card-adding{max-width:100%}.timeline-card{padding:10px 12px}.timeline-dot{width:16px;height:16px}.timeline-action-actions,.timeline-card-actions,.timeline-inline-link,.timeline-stage-actions{opacity:1}.calendly-booking-time{white-space:normal}.timeline-stage-label{flex-shrink:1;white-space:nowrap;min-width:0}.timeline-stage-label,.timeline-stage-name{overflow:hidden;text-overflow:ellipsis}.timeline-add-menu{max-width:calc(100vw - 2rem)}.pylon-thread{max-height:300px}.pylon-thread-msg{padding:6px 8px}.pylon-thread-msg-avatar{width:18px;height:18px;font-size:.5rem}.pylon-thread-msg-author{font-size:.6875rem}.pylon-thread-reply-input{min-height:40px;font-size:.75rem}.pylon-thread-reply-actions{flex-wrap:wrap;gap:6px}.pylon-thread-reply-hint{display:none}.pylon-compose-actions{flex-wrap:wrap;gap:6px}.pylon-compose-hint{display:none}.pylon-compose-destination{flex-wrap:wrap}.pylon-compose-dest-btn{flex:1 1;text-align:center}.timeline-card-action-btn{width:32px;height:32px}.timeline-card-action-btn svg{width:15px;height:15px}.timeline-action-checkbox{width:20px;height:20px;padding:3px}}.calendly-no-show-badge{border-radius:4px;background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.calendly-no-show-badge,.calendly-status-canceled{display:inline-flex;align-items:center;gap:4px;font-size:.6875rem;font-weight:600;padding:3px 8px}.calendly-status-canceled{border-radius:4px;background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb;text-decoration:line-through}.calendly-booking-time{display:inline;margin-left:2px;color:var(--text-muted);font-size:.75rem;white-space:nowrap}.calendly-noshow-btn{display:inline-flex;align-items:center;gap:4px;font-size:.6875rem;font-weight:500;padding:3px 10px;border-radius:4px;border:1px solid var(--border-primary,#e5e7eb);background:var(--bg-primary,#fff);color:var(--text-secondary,#6b7280);cursor:pointer;transition:all .15s ease}.calendly-noshow-btn.is-no-show,.calendly-noshow-btn:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.calendly-noshow-btn.is-no-show:hover{background:#f0fdf4;border-color:#bbf7d0;color:#16a34a}.timeline-item[data-type=calendly] .timeline-card:has(.calendly-no-show-badge){border-left:3px solid #dc2626}.conversation-calendly-status{display:flex;align-items:center;gap:8px;margin-top:6px;flex-wrap:wrap}.source-calendly{background:#e8f0fe;color:#0069ff}.granola-preview{font-size:.8125rem;color:var(--text-secondary,#6b7280);line-height:1.5;margin-top:6px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.granola-tabs{display:flex;align-items:center;gap:6px;margin-top:10px}.granola-view-link{margin-left:auto}.granola-tab-btn{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;font-weight:500;color:var(--text-secondary,#6b7280);background:var(--bg-secondary,#f3f4f6);border:1px solid var(--border-light,#e5e7eb);border-radius:6px;cursor:pointer;padding:4px 10px;transition:all .15s ease;font-family:inherit}.granola-tab-btn svg{width:12px;height:12px}.granola-tab-btn:hover{color:var(--accent-primary,#2563eb);border-color:var(--accent-primary,#2563eb);background:var(--bg-primary,#fff)}.granola-tab-btn.active{color:#b45309;border-color:#f59e0b;background:#fffbeb}.granola-expanded-content{margin-top:10px;border-top:1px solid var(--border-light,#e5e7eb);padding-top:10px;max-height:500px;overflow-y:auto}.granola-notes-content{font-size:.8125rem;color:var(--text-primary,#374151);line-height:1.6;white-space:pre-line;word-break:break-word}.granola-transcript-content{font-size:.8125rem;color:var(--text-secondary,#6b7280);line-height:1.5;word-break:break-word}.granola-transcript-line{margin:0;padding:3px 0}.inline-item-actions-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.375rem}@keyframes timeline-highlight-flash{0%{background:transparent}15%{background:rgba(229,47,114,.12)}to{background:transparent}}.timeline-item-highlighted>.timeline-card{animation:timeline-highlight-flash 1.5s ease-out}.linear-status-badge{background:#e8f0fe;color:#1a56db}.bug-completed .timeline-card{opacity:.55}.bug-completed .timeline-card:hover{opacity:.85}.bug-completed .timeline-card-title{text-decoration:line-through}.bug-completed .linear-status-badge{background:#dcfce7;color:#16a34a}@keyframes timeline-skeleton-pulse{0%{opacity:.6}50%{opacity:.3}to{opacity:.6}}.timeline-skeleton{position:relative;padding:0}.timeline-skeleton:before{content:"";position:absolute;left:18px;top:0;bottom:0;width:2px;background:var(--border-light,#e5e7eb);opacity:.5}.timeline-skeleton-item{position:relative;padding-bottom:24px;padding-left:40px;animation:timeline-skeleton-pulse 1.5s ease-in-out infinite;will-change:opacity}.timeline-skeleton-item:nth-child(2){animation-delay:.15s}.timeline-skeleton-item:nth-child(3){animation-delay:.3s}.timeline-skeleton-item:nth-child(4){animation-delay:.45s}.timeline-skeleton-item:nth-child(5){animation-delay:.6s}.timeline-skeleton-item:last-child{padding-bottom:0}.timeline-skeleton-dot{position:absolute;top:4px;left:10px;width:18px;height:18px;border-radius:50%;background:var(--border-light,#e5e7eb)}.timeline-skeleton-card{background:var(--bg-secondary,#f9fafb);border:1px solid var(--border-light,#e5e7eb);border-radius:10px;padding:14px 16px}.timeline-skeleton-line{height:10px;border-radius:4px;background:var(--border-light,#e5e7eb)}.timeline-skeleton-line-short{width:40%;margin-bottom:10px}.timeline-skeleton-line-long{width:80%;margin-bottom:6px}.timeline-skeleton-line-medium{width:60%}.timeline-show-more{position:relative;padding-left:40px;padding-top:8px;padding-bottom:8px}.timeline-show-more-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;width:100%;justify-content:center;background:var(--bg-secondary,#f9fafb);color:var(--text-secondary,#6b7280);border:1px solid var(--border-light,#e5e7eb);border-radius:8px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease}.timeline-show-more-btn:hover{background:var(--bg-tertiary,#f3f4f6);color:var(--text-primary,#111827);border-color:var(--border-primary,#d1d5db)}.snippet-picker-wrapper{position:relative}.snippet-picker{position:absolute;bottom:100%;left:0;right:0;max-height:240px;overflow-y:auto;background:var(--bg-primary,#fff);border:1px solid var(--border-primary,#e5e7eb);border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.12);z-index:50;padding:4px;margin-bottom:4px}.snippet-picker-item{display:flex;flex-direction:column;gap:2px;width:100%;padding:.5rem .625rem;border:none;background:none;cursor:pointer;border-radius:6px;text-align:left;transition:background .1s}.snippet-picker-item:hover{background:var(--bg-secondary,#f3f4f6)}.snippet-picker-item.selected{background:var(--accent-light,#dbeafe);outline:2px solid var(--accent,#3b82f6);outline-offset:-2px}.snippet-picker-name{font-size:.8rem;font-weight:600;color:var(--text-primary,#1a1a1a);line-height:1.3}.snippet-picker-preview{font-size:.7rem;color:var(--text-tertiary,#6b7280);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.snippet-picker-empty{padding:.75rem;text-align:center;font-size:.75rem;color:var(--text-tertiary,#6b7280)}.rich-text-editor{position:relative}.rich-text-editor .ProseMirror{outline:none;padding:8px 10px;font-size:.8125rem;line-height:1.5;color:var(--text-primary);min-height:inherit;max-height:320px;overflow-y:auto}.rich-text-editor .ProseMirror p.is-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--text-tertiary);pointer-events:none;height:0}.rich-text-editor .ProseMirror p{margin:0}.rich-text-editor .ProseMirror p+p{margin-top:.35em}.rich-text-editor .ProseMirror strong{font-weight:600}.rich-text-editor .ProseMirror em{font-style:italic}.rich-text-editor .ProseMirror a{color:var(--accent-primary,#2563eb);text-decoration:underline;cursor:pointer}.rich-text-editor .ProseMirror ol,.rich-text-editor .ProseMirror ul{margin:4px 0;padding-left:20px}.rich-text-editor .ProseMirror ul{list-style:disc}.rich-text-editor .ProseMirror ol{list-style:decimal}.rich-text-editor .ProseMirror li,.rich-text-editor .ProseMirror li p{margin:0}.rich-text-editor .ProseMirror img{max-width:100%;border-radius:4px;margin:4px 0;display:block}.rte-upload-placeholder{display:inline-block;padding:2px 8px;font-size:.7rem;color:var(--text-tertiary,#9ca3af);background:var(--bg-secondary,#f3f4f6);border-radius:4px;margin:2px 0}.rte-toolbar{display:flex;align-items:center;gap:2px;padding:2px 4px;min-height:24px}.rte-toolbar-toggle{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:4px;background:transparent;color:var(--text-tertiary,#9ca3af);cursor:pointer;flex-shrink:0;transition:color .15s,background .15s}.rte-toolbar-toggle:hover{background:var(--bg-secondary,#f3f4f6);color:var(--text-secondary,#6b7280)}.rte-toolbar-buttons{display:flex;align-items:center;gap:1px;overflow:hidden}.rte-toolbar-sep{display:block;width:1px;height:16px;background:var(--border-primary,#e5e7eb);margin:0 3px;flex-shrink:0}.rte-toolbar-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:5px;background:transparent;color:var(--text-secondary,#6b7280);font-size:.8125rem;cursor:pointer;transition:background .1s,color .1s;flex-shrink:0}.rte-toolbar-btn-italic{font-style:italic}.rte-toolbar-btn:hover{background:var(--bg-secondary,#f3f4f6);color:var(--text-primary,#111827)}.rte-toolbar-btn.is-active{background:var(--bg-tertiary,#e5e7eb);color:var(--text-primary,#111827);font-weight:600}.rte-toolbar-btn.is-active:hover{background:var(--bg-tertiary,#d1d5db);color:var(--text-primary,#111827)}.rte-toolbar-link-input{display:flex;align-items:center;gap:2px}.rte-link-url-input{border:none;outline:none;background:transparent;font-size:.72rem;color:var(--text-primary,#111827);padding:3px 5px;width:150px}.rte-link-url-input::placeholder{color:var(--text-tertiary,#9ca3af)}.rte-toolbar-link-apply{color:var(--accent-primary,#2563eb)}.rte-toolbar-link-apply,.rte-toolbar-link-remove{border:none;background:none;font-size:.72rem;cursor:pointer;padding:2px 4px}.rte-toolbar-link-remove{color:var(--text-tertiary,#9ca3af)}.rte-toolbar-link-remove:hover{color:var(--danger,#ef4444)}.pylon-compose-body.rich-text-editor{border:1px solid var(--border-primary,#e5e7eb);border-radius:8px;background:var(--bg-primary,#fff)}.pylon-compose-body.rich-text-editor:focus-within{border-color:var(--accent-primary,#2563eb);box-shadow:0 0 0 2px rgba(37,99,235,.08)}.pylon-thread-reply-input.rich-text-editor{border:1px solid var(--border-primary,#e5e7eb);border-radius:8px;background:var(--bg-primary,#fff)}.pylon-thread-reply-input.rich-text-editor:focus-within{border-color:var(--accent-primary,#2563eb);box-shadow:0 0 0 2px rgba(37,99,235,.08)}.snippet-content-editor.rich-text-editor{border:1px solid var(--border-primary,#e5e7eb);border-radius:8px;background:var(--bg-primary,#fff)}.snippet-content-editor.rich-text-editor:focus-within{border-color:var(--accent-primary,#2563eb);box-shadow:0 0 0 2px rgba(37,99,235,.08)}.template-picker-wrapper{position:relative}.template-picker-trigger{display:inline-flex;align-items:center;justify-content:center;padding:.3rem;color:var(--text-tertiary);background:transparent;border:1px solid transparent;border-radius:5px;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}.template-picker-trigger:hover{background:var(--bg-secondary);border-color:var(--border-primary);color:var(--text-primary)}.template-picker-trigger:disabled{opacity:.5;cursor:not-allowed}.template-picker-dropdown{position:absolute;min-width:220px;max-width:320px;max-height:240px;overflow-y:auto;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.12);z-index:100;padding:.25rem}.template-picker-item{display:flex;flex-direction:column;gap:.1rem;width:100%;padding:.5rem .6rem;text-align:left;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:background-color .1s}.template-picker-item:hover{background:var(--bg-secondary)}.template-picker-item-name{font-size:.78rem;font-weight:600;color:var(--text-primary)}.template-picker-item-subject{font-size:.7rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.template-picker-empty{padding:.75rem .6rem;font-size:.72rem;color:var(--text-tertiary);text-align:center;line-height:1.4}.main-content-full-height{overflow:hidden!important}.messages-view{flex:1 1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.messages-inbox{display:grid;grid-template-columns:400px 1fr;grid-template-rows:1fr;flex:1 1;min-height:0;border:1px solid var(--border-primary);border-radius:12px;overflow:hidden;background:var(--bg-primary)}.messages-inbox.no-selection{grid-template-columns:1fr}.messages-header-row{display:flex;align-items:center;gap:.75rem;padding:0 0 .75rem;flex-wrap:wrap}.messages-header-row .expandable-search{flex-shrink:0}.messages-direction-toggle{display:flex;background:var(--bg-tertiary);border-radius:8px;padding:2px;gap:1px}.messages-direction-toggle button{display:flex;align-items:center;gap:.3rem;padding:.35rem .75rem;font-size:.75rem;font-weight:500;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.messages-direction-toggle button svg{width:12px;height:12px;flex-shrink:0}.messages-direction-toggle button:hover{color:var(--text-secondary)}.messages-direction-toggle button.active{background:var(--bg-primary);color:var(--text-primary);box-shadow:var(--shadow-sm)}.messages-header-filters{display:flex;align-items:center;gap:.5rem;margin-left:auto}.messages-header-filters .filter-dropdown-trigger{font-size:.75rem}.messages-compose-btn{display:flex;align-items:center;gap:.35rem;padding:.35rem .75rem;font-size:.75rem;font-weight:500;border:1px solid var(--border-primary);background:var(--bg-primary);color:var(--text-secondary);border-radius:8px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.messages-compose-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.messages-compose-btn svg{width:12px;height:12px}.messages-list-pane{display:flex;flex-direction:column;min-height:0;max-height:100%;border-right:1px solid var(--border-primary);overflow:hidden}.messages-inbox.no-selection .messages-list-pane{border-right:none}.messages-list-scroll{flex:1 1;overflow-y:auto;overflow-x:hidden}.messages-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:3rem 1.5rem;text-align:center;color:var(--text-muted)}.messages-list-empty svg{width:32px;height:32px;opacity:.4}.messages-list-empty p{font-size:.8125rem;margin:0}.message-row{display:flex;flex-direction:column;gap:.25rem;padding:.75rem 1rem;border-bottom:1px solid var(--border-light);cursor:pointer;transition:background .1s ease;position:relative}.message-row:hover{background:var(--bg-tertiary)}.message-row.selected{background:var(--accent-primary-light)}.message-row.selected:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent-primary);border-radius:0 2px 2px 0}.message-row-top{display:flex;align-items:center;gap:.5rem;min-width:0}.message-row-sender{font-size:.8125rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1;min-width:0}.message-row-time{font-size:.6875rem;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.message-row-subject{font-size:.8125rem;font-weight:500;color:var(--text-primary)}.message-row-preview,.message-row-subject{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-row-preview{font-size:.75rem;color:var(--text-muted);line-height:1.4}.message-row-meta{display:flex;align-items:center;gap:.5rem;margin-top:.125rem}.message-row-state{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.125rem .375rem;border-radius:4px;background:var(--bg-tertiary);color:var(--text-muted)}.message-row-state.state-open{background:#dbeafe;color:#1d4ed8}.message-row-state.state-waiting{background:#fef3c7;color:#92400e}.message-row-state.state-closed{background:#d1fae5;color:#065f46}.message-row-source{text-transform:lowercase}.message-row-count,.message-row-source{font-size:.625rem;color:var(--text-muted)}.message-row-avatars{display:flex;align-items:center;flex-shrink:0}.message-row-avatar{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--bg-primary);object-fit:cover;display:flex;align-items:center;justify-content:center;font-size:.5rem;font-weight:600;color:var(--text-muted);background:var(--bg-tertiary)}.message-row-avatar+.message-row-avatar{margin-left:-6px}.message-row-avatar-initials{background:var(--bg-tertiary);color:var(--text-muted)}.message-row.selected .message-row-avatar{border-color:var(--accent-primary-light)}.filter-option-avatar{width:18px;height:18px;border-radius:50%;object-fit:cover;display:inline-flex;align-items:center;justify-content:center;font-size:.5625rem;font-weight:600;flex-shrink:0;vertical-align:middle;margin-right:.25rem}.filter-option-avatar,.filter-option-initials{color:var(--text-muted);background:var(--bg-tertiary)}.messages-thread-pane{display:flex;flex-direction:column;min-height:0;max-height:100%;overflow:hidden}.messages-thread-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:3rem 1.5rem;text-align:center;color:var(--text-muted);flex:1 1}.messages-thread-empty svg{width:40px;height:40px;opacity:.3}.messages-thread-empty p{font-size:.875rem;margin:0}.messages-thread-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-light);gap:1rem}.messages-customer-card{display:flex;flex-direction:column;gap:.25rem;min-width:0;flex:1 1}.messages-customer-card-top{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.messages-customer-card-top .messages-view-profile-btn{margin-left:auto}.messages-customer-name{font-size:.9375rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.messages-customer-company{font-size:.75rem;color:var(--text-muted)}.messages-customer-plan{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.125rem .375rem;border-radius:4px;background:var(--bg-tertiary);color:var(--text-secondary)}.messages-customer-oneliner{font-size:.75rem;color:var(--text-secondary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.messages-view-profile-btn{font-size:.75rem;font-weight:500;color:var(--accent-primary);background:none;border:none;cursor:pointer;padding:0;transition:opacity .15s ease;white-space:nowrap}.messages-view-profile-btn:hover{opacity:.8;text-decoration:underline}.messages-thread-close-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:var(--bg-tertiary);border-radius:6px;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:all .15s ease}.messages-thread-close-btn:hover{background:var(--border-primary);color:var(--text-primary)}.messages-thread-title-bar{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border-bottom:1px solid var(--border-light);background:var(--bg-tertiary)}.messages-thread-title{font-size:.8125rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1}.messages-thread-title-bar .message-row-state{flex-shrink:0}.messages-thread-link{font-size:.6875rem;color:var(--text-muted);text-decoration:none;flex-shrink:0;display:flex;align-items:center;gap:.25rem;transition:color .15s ease}.messages-thread-link:hover{color:var(--accent-primary)}.messages-thread-link svg{width:11px;height:11px}.messages-close-issue-btn{display:flex;align-items:center;gap:.3rem;padding:.25rem .5rem;font-size:.6875rem;font-weight:500;color:var(--text-muted);background:transparent;border:1px solid var(--border-subtle);border-radius:4px;cursor:pointer;flex-shrink:0;transition:all .15s ease}.messages-close-issue-btn:hover:not(:disabled){color:var(--success-color,#22c55e);border-color:var(--success-color,#22c55e)}.messages-close-issue-btn:disabled{opacity:.5;cursor:not-allowed}.messages-close-issue-btn svg{width:12px;height:12px}.messages-thread-body,.messages-thread-body .pylon-thread-wrapper{flex:1 1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.messages-thread-body .pylon-thread-messages{flex:1 1;overflow-y:auto;padding:1rem 1.25rem;min-height:0;max-height:none}.messages-thread-body .pylon-thread-reply{border-top:1px solid var(--border-light);padding:.75rem 1.25rem}@keyframes timeline-highlight-pulse{0%{box-shadow:0 0 0 0 rgba(229,47,114,.3)}50%{box-shadow:0 0 0 6px rgba(229,47,114,.1)}to{box-shadow:0 0 0 0 rgba(229,47,114,0)}}.timeline-item.highlight-event{animation:timeline-highlight-pulse 1.5s ease-in-out 2}.timeline-item.highlight-event>.timeline-card{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:8px}@media (max-width:768px){.messages-inbox{grid-template-columns:1fr;border:none;border-radius:0}.messages-list-pane{border-right:none}.messages-inbox.has-selection .messages-list-pane{display:none}.messages-thread-pane{border:1px solid var(--border-primary);border-radius:12px}.messages-header-filters{margin-left:0;width:100%;overflow-x:auto;gap:.5rem}.messages-header-row{gap:.5rem}.messages-header-row .list-filters-collapsible{flex-basis:100%}.messages-direction-toggle{flex:1 1;min-width:0}.messages-compose-btn span{display:none}}.compose-message-modal{background:var(--bg-primary);border-radius:12px;box-shadow:var(--shadow-xl);width:min(600px,95vw);max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:modalSlideUp .2s ease}.compose-message-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-light)}.compose-message-header h3{font-size:.9375rem;font-weight:600;margin:0;color:var(--text-primary)}.compose-message-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:var(--bg-tertiary);border-radius:6px;color:var(--text-muted);cursor:pointer;transition:all .15s ease}.compose-message-close:hover{background:var(--border-primary);color:var(--text-primary)}.compose-message-label{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;width:2rem}.compose-message-customer-picker{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.5rem}.compose-message-customer-search{width:100%;padding:.5rem .75rem;border:1px solid var(--border-primary);border-radius:8px;font-size:.8125rem;color:var(--text-primary);background:var(--bg-primary);outline:none;transition:border-color .15s ease}.compose-message-customer-search:focus{border-color:var(--accent-primary)}.compose-message-customer-results{display:flex;flex-direction:column;border:1px solid var(--border-primary);border-radius:8px;overflow:hidden;max-height:260px;overflow-y:auto}.compose-message-customer-option{display:flex;flex-direction:column;gap:.125rem;padding:.5rem .75rem;border:none;background:var(--bg-primary);text-align:left;cursor:pointer;transition:background .1s ease;border-bottom:1px solid var(--border-light)}.compose-message-customer-option:last-child{border-bottom:none}.compose-message-customer-option:hover{background:var(--bg-tertiary)}.compose-message-customer-option-name{font-size:.8125rem;font-weight:500;color:var(--text-primary)}.compose-message-customer-option-email{font-size:.6875rem;color:var(--text-muted)}.compose-message-customer-empty{padding:1rem;text-align:center;font-size:.8125rem;color:var(--text-muted)}.compose-message-to-row{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-bottom:1px solid var(--border-light)}.compose-message-to-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;background:var(--bg-tertiary);border-radius:6px;font-size:.8125rem;font-weight:500;color:var(--text-primary)}.compose-message-to-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:.875rem;padding:0;border-radius:4px;transition:all .1s ease}.compose-message-to-remove:hover{background:var(--border-primary);color:var(--text-primary)}.compose-message-toolbar{display:flex;align-items:center;gap:.5rem;padding:.5rem 1.25rem;border-bottom:1px solid var(--border-light)}.compose-message-dest-toggle{display:flex;background:var(--bg-tertiary);border-radius:6px;padding:2px;gap:1px}.compose-message-dest-btn{padding:.3rem .625rem;font-size:.6875rem;font-weight:500;border:none;background:transparent;color:var(--text-muted);border-radius:4px;cursor:pointer;transition:all .15s ease}.compose-message-dest-btn:hover{color:var(--text-secondary)}.compose-message-dest-btn.active{background:var(--bg-primary);color:var(--text-primary);box-shadow:var(--shadow-sm)}.compose-message-subject{width:100%;padding:.625rem 1.25rem;border:none;border-bottom:1px solid var(--border-light);font-size:.875rem;font-weight:500;color:var(--text-primary);background:transparent;outline:none}.compose-message-subject::placeholder{color:var(--text-placeholder)}.compose-message-body-wrapper{flex:1 1;min-height:0;overflow-y:auto;padding:0 1.25rem}.compose-message-body-wrapper .ProseMirror{min-height:180px;padding:.75rem 0}.compose-message-error{padding:.375rem 1.25rem;font-size:.75rem;color:var(--accent-danger)}.compose-message-email-picker{flex-wrap:wrap;gap:.375rem}.compose-message-email-picker,.compose-message-footer{display:flex;padding:.75rem 1.25rem;border-top:1px solid var(--border-light)}.compose-message-footer{align-items:center;justify-content:space-between;gap:.5rem}.compose-message-recipients-btn{font-size:.75rem;color:var(--text-muted);background:none;border:none;cursor:pointer;padding:0;text-align:left;flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .15s ease}.compose-message-recipients-btn:hover{color:var(--accent-primary)}.compose-message-hint{font-size:.75rem;color:var(--text-muted);flex:1 1}.file-upload-zone{display:flex;flex-direction:column;gap:.5rem}.file-upload-dropzone{display:flex;align-items:center;gap:.5rem;padding:.5rem .625rem;border:1px dashed var(--border-light);border-radius:6px;cursor:pointer;transition:all .15s ease;background:transparent}.file-upload-dropzone.dragging,.file-upload-dropzone:hover{border-color:var(--accent-primary);background:var(--accent-primary-light)}.file-upload-dropzone.dragging{box-shadow:0 0 0 3px rgba(37,99,235,.1)}.file-upload-dropzone.disabled{opacity:.5;cursor:not-allowed}.file-upload-dropzone.disabled:hover{border-color:var(--border-light);background:transparent}.file-upload-icon{flex-shrink:0;color:var(--text-muted);font-size:.9rem}.file-upload-text{font-size:.75rem;color:var(--text-muted)}.file-upload-text strong{color:var(--accent-primary);font-weight:600}.file-upload-input{display:none}.file-upload-progress{display:flex;align-items:center;gap:.5rem;padding:.375rem .625rem;background:var(--bg-tertiary);border-radius:6px;font-size:.75rem;color:var(--text-muted);animation:fadeIn .2s ease}.file-upload-progress-bar{flex:1 1;height:3px;background:var(--border-light);border-radius:2px;overflow:hidden}.file-upload-progress-fill{height:100%;background:var(--accent-primary);border-radius:2px;transition:width .3s ease}.file-upload-attachments{display:flex;flex-direction:column;gap:.25rem}.file-upload-attachment{display:flex;align-items:center;gap:.375rem;padding:.25rem .5rem;background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:4px;font-size:.75rem;animation:fadeIn .2s ease}.file-upload-attachment-icon{flex-shrink:0;font-size:.8rem}.file-upload-attachment-name{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.file-upload-attachment-name a{color:var(--accent-primary);text-decoration:none}.file-upload-attachment-name a:hover{text-decoration:underline}.file-upload-attachment-remove{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;background:transparent;border:none;border-radius:3px;font-size:.8rem;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:all .15s ease;padding:0}.file-upload-attachment-remove:hover{background:rgba(239,68,68,.1);color:var(--accent-danger)}.file-upload-error{font-size:.75rem;color:var(--accent-danger);padding:.25rem 0;animation:fadeIn .2s ease}.attachment-list{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap;align-items:flex-end}.attachment-thumbnail-btn{all:unset;cursor:pointer;display:block;border-radius:6px;overflow:hidden;border:1px solid var(--border-primary,#ebebeb);transition:border-color .15s ease,box-shadow .15s ease;max-width:200px}.attachment-thumbnail-btn:hover{border-color:var(--border-focus,#e52f72);box-shadow:var(--shadow-md,0 2px 8px rgba(0,0,0,.04))}.attachment-thumbnail-btn:focus-visible{outline:2px solid var(--border-focus,#e52f72);outline-offset:2px}.attachment-thumbnail-img{display:block;max-height:120px;max-width:200px;width:auto;height:auto;object-fit:cover}.attachment-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:var(--bg-tertiary,#f3f4f6);border-radius:4px;font-size:.75rem;color:var(--text-secondary,#6b7280);text-decoration:none;transition:background .15s ease}.attachment-chip:hover{background:var(--bg-secondary,#e5e7eb);color:var(--text-primary,#111827)}.attachment-chip svg{width:12px;height:12px}.lightbox-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.85);animation:lightbox-fade-in .15s ease}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}.lightbox-image-container{position:relative;display:flex;align-items:center;justify-content:center;max-width:90vw;max-height:85vh}.lightbox-image{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.lightbox-filename{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);color:hsla(0,0%,100%,.7);font-size:.8rem;max-width:60vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.lightbox-btn{all:unset;cursor:pointer;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:hsla(0,0%,100%,.12);color:#fff;transition:background .15s ease}.lightbox-btn:hover{background:hsla(0,0%,100%,.25)}.lightbox-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}.lightbox-btn svg{width:20px;height:20px}.lightbox-close{position:fixed;top:16px;right:16px}.lightbox-download{position:fixed;top:16px;right:68px}.lightbox-nav-next,.lightbox-nav-prev{position:fixed;top:50%;transform:translateY(-50%)}.lightbox-nav-prev{left:16px}.lightbox-nav-next{right:16px}.lightbox-counter{position:fixed;top:24px;left:50%;transform:translateX(-50%);color:hsla(0,0%,100%,.7);font-size:.85rem;pointer-events:none}@media (max-width:640px){.attachment-thumbnail-img{max-height:80px;max-width:140px}.lightbox-image{max-width:95vw;max-height:80vh}.lightbox-nav-next,.lightbox-nav-prev{width:36px;height:36px}}