/* General */ body { background-color: #F3F4F6; font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; color: #111827; } .main-container { display: flex; min-height: 100vh; } /* Sidebar */ .sidebar { width: 260px; background-color: #FFFFFF; border-right: 1px solid #E5E7EB; padding: 24px; display: flex; flex-direction: column; } .sidebar .logo { font-weight: 700; font-size: 1.5rem; color: #4F46E5; margin-bottom: 2rem; } .sidebar .nav-link { color: #374151; font-size: 1rem; padding: 0.75rem 1rem; border-radius: 0.5rem; display: flex; align-items: center; margin-bottom: 0.5rem; transition: all 0.2s ease-in-out; } .sidebar .nav-link .icon { margin-right: 0.75rem; width: 24px; height: 24px; } .sidebar .nav-link.active, .sidebar .nav-link:hover { background-color: #EEF2FF; color: #4F46E5; } /* Main Content */ .main-content { flex-grow: 1; padding: 32px 56px; } .header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 2.5rem; } .header h1 { font-size: 2rem; font-weight: 700; } /* Kanban Board */ .kanban-board { display: flex; gap: 2rem; width: 100%; overflow-x: auto; padding-bottom: 1.5rem; } .kanban-column { flex: 1 0 320px; background-color: #F9FAFB; border-radius: 0.75rem; padding: 1.5rem; box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05); } .kanban-column h2 { font-size: 1.25rem; font-weight: 600; margin-bottom: 1.5rem; padding-bottom: 1rem; border-bottom: 1px solid #E5E7EB; display: flex; align-items: center; } .kanban-column .count { margin-left: 0.75rem; background-color: #E5E7EB; color: #4B5563; font-size: 0.875rem; font-weight: 600; padding: 4px 10px; border-radius: 9999px; } .kanban-cards { min-height: 200px; display: flex; flex-direction: column; gap: 1.5rem; } .kanban-card { background-color: #FFFFFF; border-radius: 0.75rem; padding: 1.5rem; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); cursor: grab; border-left: 4px solid transparent; transition: all 0.2s ease-in-out; } .kanban-card:hover { transform: translateY(-2px); box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); } .kanban-card:active { cursor: grabbing; background-color: #F3F4F6; } .kanban-card.dragging { opacity: 0.6; transform: rotate(3deg); } .kanban-card .card-title { font-weight: 600; font-size: 1.125rem; margin-bottom: 0.5rem; } .kanban-card .card-subtitle { font-size: 0.875rem; color: #6B7280; margin-bottom: 1rem; } .kanban-card .card-footer { display: flex; justify-content: space-between; align-items: center; font-size: 0.875rem; color: #9CA3AF; } .kanban-card .tag { padding: 4px 12px; border-radius: 9999px; font-weight: 600; font-size: 0.75rem; } .tag-prospect { background-color: #DBEAFE; color: #2563EB; } .tag-deal { background-color: #D1FAE5; color: #059669; } .kanban-column.drag-over { background-color: #EEF2FF; border: 2px dashed #C7D2FE; } /* Forms */ .form-control:focus { border-color: #4F46E5; box-shadow: 0 0 0 0.25rem rgba(79, 70, 229, 0.25); } /* Modals */ .modal-content { border-radius: 0.75rem; } /* Calendar */ .event-marker { width: 8px; height: 8px; border-radius: 50%; background-color: #4F46E5; position: absolute; top: 5px; right: 5px; } .jsCalendar-cell { position: relative; } /* Chat Modal */ .chat-container { display: flex; flex-direction: column; height: 450px; } .chat-messages { flex-grow: 1; overflow-y: auto; padding: 1.5rem; display: flex; flex-direction: column; gap: 1rem; } .message { padding: 0.75rem 1.25rem; border-radius: 1.25rem; max-width: 80%; line-height: 1.5; } .message p { margin: 0; } .message .timestamp { font-size: 0.75rem; color: #9CA3AF; margin-top: 0.25rem; display: block; } .message.received { background-color: #F3F4F6; align-self: flex-start; } .message.sent { background-color: #4F46E5; color: #FFFFFF; align-self: flex-end; } .message.sent .timestamp { color: #E0E7FF; } .chat-input { display: flex; padding: 1.5rem; border-top: 1px solid #E5E7EB; } .chat-input input { flex-grow: 1; border-right: 0; border-top-right-radius: 0; border-bottom-right-radius: 0; } .chat-input button { border-top-left-radius: 0; border-bottom-left-radius: 0; }