Changed around line 1
+ :root {
+ --primary-color: #4a6fa5;
+ --secondary-color: #166088;
+ --background-color: #f8f9fa;
+ --card-color: #ffffff;
+ --text-color: #333333;
+ --border-color: #e0e0e0;
+ --shadow-color: rgba(0, 0, 0, 0.1);
+ --success-color: #4caf50;
+ --warning-color: #ff9800;
+ --danger-color: #f44336;
+ --low-priority: #8bc34a;
+ --medium-priority: #ffc107;
+ --high-priority: #ff9800;
+ --critical-priority: #f44336;
+ }
+
+ [data-theme="blue"] {
+ --primary-color: #4a6fa5;
+ --secondary-color: #166088;
+ }
+
+ [data-theme="green"] {
+ --primary-color: #4a8c5e;
+ --secondary-color: #2e5e3a;
+ }
+
+ [data-theme="purple"] {
+ --primary-color: #6a4a8c;
+ --secondary-color: #4e2e5e;
+ }
+
+ [data-theme="red"] {
+ --primary-color: #8c4a4a;
+ --secondary-color: #5e2e2e;
+ }
+
+ * {
+ margin: 0;
+ padding: 0;
+ box-sizing: border-box;
+ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
+ }
+
+ body {
+ background-color: var(--background-color);
+ color: var(--text-color);
+ min-height: 100vh;
+ transition: background-color 0.3s, color 0.3s;
+ }
+
+ .app-header {
+ background-color: var(--primary-color);
+ color: white;
+ padding: 1rem;
+ box-shadow: 0 2px 5px var(--shadow-color);
+ }
+
+ .header-content {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ max-width: 1200px;
+ margin: 0 auto;
+ }
+
+ .board-actions {
+ display: flex;
+ align-items: center;
+ gap: 1rem;
+ }
+
+ .new-board-btn {
+ background-color: white;
+ color: var(--primary-color);
+ border: none;
+ padding: 0.5rem 1rem;
+ border-radius: 4px;
+ cursor: pointer;
+ font-weight: bold;
+ transition: all 0.2s;
+ }
+
+ .new-board-btn:hover {
+ background-color: #f0f0f0;
+ }
+
+ .board-selector select {
+ padding: 0.5rem;
+ border-radius: 4px;
+ border: 1px solid var(--border-color);
+ background-color: white;
+ color: var(--text-color);
+ }
+
+ .toolbar {
+ background-color: var(--card-color);
+ padding: 0.5rem 1rem;
+ box-shadow: 0 2px 5px var(--shadow-color);
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ }
+
+ .left-tools, .right-tools {
+ display: flex;
+ gap: 0.5rem;
+ }
+
+ .settings-btn, .theme-btn, .export-btn, .import-btn {
+ background: none;
+ border: none;
+ cursor: pointer;
+ font-size: 1.2rem;
+ padding: 0.5rem;
+ border-radius: 4px;
+ transition: background-color 0.2s;
+ }
+
+ .settings-btn:hover, .theme-btn:hover, .export-btn:hover, .import-btn:hover {
+ background-color: rgba(0, 0, 0, 0.1);
+ }
+
+ .kanban-container {
+ max-width: 1200px;
+ margin: 1rem auto;
+ padding: 0 1rem;
+ }
+
+ .columns-container {
+ display: flex;
+ gap: 1rem;
+ overflow-x: auto;
+ padding-bottom: 1rem;
+ }
+
+ .column {
+ background-color: var(--card-color);
+ border-radius: 8px;
+ box-shadow: 0 2px 5px var(--shadow-color);
+ min-width: 300px;
+ flex: 1;
+ padding: 1rem;
+ transition: transform 0.2s;
+ }
+
+ .column h2 {
+ margin-bottom: 1rem;
+ font-size: 1.2rem;
+ color: var(--secondary-color);
+ }
+
+ .add-card-btn {
+ background-color: rgba(0, 0, 0, 0.05);
+ padding: 0.5rem;
+ border-radius: 4px;
+ cursor: pointer;
+ margin-bottom: 1rem;
+ text-align: center;
+ color: var(--secondary-color);
+ transition: background-color 0.2s;
+ }
+
+ .add-card-btn:hover {
+ background-color: rgba(0, 0, 0, 0.1);
+ }
+
+ .cards-container {
+ min-height: 100px;
+ display: flex;
+ flex-direction: column;
+ gap: 0.5rem;
+ }
+
+ .card {
+ background-color: var(--card-color);
+ border-radius: 6px;
+ padding: 0.75rem;
+ box-shadow: 0 1px 3px var(--shadow-color);
+ cursor: grab;
+ transition: transform 0.2s, box-shadow 0.2s;
+ border-left: 4px solid var(--border-color);
+ }
+
+ .card.dragging {
+ opacity: 0.5;
+ transform: scale(1.02);
+ box-shadow: 0 5px 15px var(--shadow-color);
+ }
+
+ .card-title {
+ font-weight: bold;
+ margin-bottom: 0.5rem;
+ }
+
+ .card-description {
+ font-size: 0.9rem;
+ color: #666;
+ margin-bottom: 0.5rem;
+ }
+
+ .card-footer {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ font-size: 0.8rem;
+ }
+
+ .card-due-date {
+ color: var(--secondary-color);
+ }
+
+ .card-priority {
+ padding: 0.2rem 0.4rem;
+ border-radius: 3px;
+ font-size: 0.7rem;
+ font-weight: bold;
+ }
+
+ .priority-low {
+ background-color: var(--low-priority);
+ color: white;
+ }
+
+ .priority-medium {
+ background-color: var(--medium-priority);
+ color: black;
+ }
+
+ .priority-high {
+ background-color: var(--high-priority);
+ color: white;
+ }
+
+ .priority-critical {
+ background-color: var(--critical-priority);
+ color: white;
+ }
+
+ .card-labels {
+ display: flex;
+ gap: 0.3rem;
+ flex-wrap: wrap;
+ margin-top: 0.5rem;
+ }
+
+ .label {
+ padding: 0.2rem 0.4rem;
+ border-radius: 3px;
+ font-size: 0.7rem;
+ background-color: #e0e0e0;
+ }
+
+ .modal-overlay {
+ position: fixed;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ background-color: rgba(0, 0, 0, 0.5);
+ display: none;
+ z-index: 1000;
+ }
+
+ .card-modal, .settings-modal {
+ position: fixed;
+ top: 50%;
+ left: 50%;
+ transform: translate(-50%, -50%);
+ background-color: var(--card-color);
+ border-radius: 8px;
+ box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2);
+ width: 90%;
+ max-width: 600px;
+ max-height: 90vh;
+ overflow-y: auto;
+ display: none;
+ z-index: 1001;
+ }
+
+ .modal-header {
+ padding: 1rem;
+ border-bottom: 1px solid var(--border-color);
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ }
+
+ .close-modal {
+ background: none;
+ border: none;
+ font-size: 1.5rem;
+ cursor: pointer;
+ color: #666;
+ }
+
+ .modal-content {
+ padding: 1rem;
+ }
+
+ .card-title-section input {
+ width: 100%;
+ padding: 0.5rem;
+ margin-bottom: 1rem;
+ border: 1px solid var(--border-color);
+ border-radius: 4px;
+ font-size: 1rem;
+ }
+
+ .card-description-section textarea {
+ width: 100%;
+ min-height: 100px;
+ padding: 0.5rem;
+ margin-bottom: 1rem;
+ border: 1px solid var(--border-color);
+ border-radius: 4px;
+ resize: vertical;
+ }
+
+ .card-details {
+ display: grid;
+ grid-template-columns: 1fr 1fr;
+ gap: 1rem;
+ }
+
+ .detail-row {
+ margin-bottom: 1rem;
+ }
+
+ .detail-row label {
+ display: block;
+ margin-bottom: 0.3rem;
+ font-size: 0.9rem;
+ color: #666;
+ }
+
+ .detail-row input, .detail-row select {
+ width: 100%;
+ padding: 0.5rem;
+ border: 1px solid var(--border-color);
+ border-radius: 4px;
+ }
+
+ .labels-container {
+ display: flex;
+ flex-wrap: wrap;
+ gap: 0.3rem;
+ align-items: center;
+ }
+
+ .labels-container input {
+ flex: 1;
+ min-width: 100px;
+ }
+
+ .add-label-btn {
+ background-color: var(--primary-color);
+ color: white;
+ border: none;
+ border-radius: 4px;
+ width: 30px;
+ height: 30px;
+ cursor: pointer;
+ }
+
+ .modal-footer {
+ padding: 1rem;
+ border-top: 1px solid var(--border-color);
+ display: flex;
+ justify-content: flex-end;
+ gap: 0.5rem;
+ }
+
+ .save-card-btn, .save-settings-btn {
+ background-color: var(--primary-color);
+ color: white;
+ border: none;
+ padding: 0.5rem 1rem;
+ border-radius: 4px;
+ cursor: pointer;
+ }
+
+ .delete-card-btn {
+ background-color: var(--danger-color);
+ color: white;
+ border: none;
+ padding: 0.5rem 1rem;
+ border-radius: 4px;
+ cursor: pointer;
+ }
+
+ @media (max-width: 768px) {
+ .columns-container {
+ flex-direction: column;
+ }
+
+ .column {
+ min-width: auto;
+ }
+
+ .card-details {
+ grid-template-columns: 1fr;
+ }
+ }
+
+ /* Animation classes */
+ @keyframes fadeIn {
+ from { opacity: 0; }
+ to { opacity: 1; }
+ }
+
+ @keyframes slideUp {
+ from { transform: translateY(20px); opacity: 0; }
+ to { transform: translateY(0); opacity: 1; }
+ }
+
+ .fade-in {
+ animation: fadeIn 0.3s ease-out;
+ }
+
+ .slide-up {
+ animation: slideUp 0.3s ease-out;
+ }