34318-vm/assets/css/custom.css
Flatlogic Bot 64b701287d v1
2025-09-23 20:48:22 +00:00

273 lines
4.7 KiB
CSS

/* 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;
}