:root{--color-bg-primary: #0a0a0f;--color-bg-secondary: #13131a;--color-bg-tertiary: #1a1a24;--color-surface: rgba(255, 255, 255, .03);--color-surface-hover: rgba(255, 255, 255, .05);--color-border: rgba(255, 255, 255, .06);--color-border-hover: rgba(255, 255, 255, .12);--color-text-primary: #e5e5e8;--color-text-secondary: #9090a0;--color-text-tertiary: #606070;--color-accent: #8b5cf6;--color-accent-dim: rgba(139, 92, 246, .1);--color-success: #4ade80;--color-warning: #fbbf24;--color-error: #f87171;--priority-low: #4ade80;--priority-medium: #60a5fa;--priority-high: #fbbf24;--priority-urgent: #f87171;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 2px 4px 0 rgba(0, 0, 0, .08);--transition: .15s ease;--font-family: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{margin:0;font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:1.6;color:var(--color-text-primary);background:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;width:100%}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-border-hover)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:1.2;letter-spacing:-.01em}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}button{font-family:inherit;font-size:inherit;border:none;background:none;cursor:pointer;color:inherit}input,textarea,select{font-family:inherit;font-size:inherit;border:none;background:none;color:inherit}input:focus,textarea:focus,select:focus{outline:none}:focus-visible{outline:1px solid var(--color-accent);outline-offset:2px}::selection{background:var(--color-accent-dim);color:var(--color-text-primary)}::placeholder{color:var(--color-text-tertiary)}.task-input-container{margin-bottom:var(--spacing-xl)}.task-input-trigger{width:100%;padding:var(--spacing-lg);background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition)}.task-input-trigger:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-surface-hover)}.task-input-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);overflow:hidden}.task-input-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.task-input-header h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.task-input-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--color-text-secondary);transition:all var(--transition)}.task-input-close:hover{color:var(--color-text-primary)}.task-input-field{width:100%;padding:var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);margin-bottom:var(--spacing-md);transition:all var(--transition)}.task-input-field:focus{border-color:var(--color-accent)}.task-input-textarea{resize:vertical;min-height:80px;font-family:inherit;line-height:1.5}.task-input-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.task-input-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.task-input-group label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.task-input-select{padding:var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition)}.task-input-select:focus{border-color:var(--color-accent)}.task-input-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.task-input-btn{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);transition:all var(--transition);cursor:pointer}.task-input-btn:disabled{opacity:.5;cursor:not-allowed}.task-input-btn-cancel{background:var(--color-surface);color:var(--color-text-secondary)}.task-input-btn-cancel:hover:not(:disabled){color:var(--color-text-primary)}.task-input-btn-submit{background:var(--color-accent);color:#fff}.task-input-btn-submit:hover:not(:disabled){opacity:.9}@media (max-width: 640px){.task-input-row{grid-template-columns:1fr}}.filter-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-lg);height:fit-content;position:sticky;top:var(--spacing-lg)}.filter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.filter-header-title{display:flex;align-items:center;gap:var(--spacing-sm)}.filter-header-title svg{color:var(--color-accent);font-size:var(--font-size-base)}.filter-header-title h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.filter-reset-btn{padding:var(--spacing-xs) var(--spacing-md);background:transparent;color:var(--color-accent);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);transition:all var(--transition);text-transform:uppercase;letter-spacing:.05em}.filter-reset-btn:hover{border-color:var(--color-accent)}.filter-section{margin-bottom:var(--spacing-lg)}.filter-section:last-child{margin-bottom:0}.filter-label{display:block;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.05em}.filter-search{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition)}.filter-search:focus-within{border-color:var(--color-accent)}.filter-search svg:first-child{color:var(--color-text-tertiary);flex-shrink:0;font-size:var(--font-size-sm)}.filter-search input{flex:1;background:transparent;color:var(--color-text-primary);width:100%}.filter-search-clear{padding:4px;color:var(--color-text-tertiary);border-radius:var(--radius-sm);transition:all var(--transition);flex-shrink:0}.filter-search-clear:hover{color:var(--color-text-primary)}.filter-chips{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.filter-chip{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);transition:all var(--transition);cursor:pointer}.filter-chip:hover{border-color:var(--color-border-hover)}.filter-chip.active{color:#fff;background:var(--color-accent);border-color:var(--color-accent)}.filter-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;-webkit-user-select:none;user-select:none;padding:var(--spacing-sm)}.filter-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent)}.filter-checkbox span{font-size:var(--font-size-sm);color:var(--color-text-primary)}.filter-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition);font-size:var(--font-size-sm)}.filter-select:focus{border-color:var(--color-accent)}.filter-select option{background:var(--color-bg-secondary);color:var(--color-text-primary)}@media (max-width: 1024px){.filter-panel{position:static;margin-bottom:var(--spacing-xl)}}.task-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-md);display:flex;gap:var(--spacing-md);transition:all var(--transition);cursor:grab}.task-card:hover{background:var(--color-surface-hover);border-color:var(--color-border-hover)}.task-card:active{cursor:grabbing}.task-card.completed{opacity:.5}.task-card.completed .task-title,.task-card.completed .task-description{text-decoration:line-through;color:var(--color-text-tertiary)}.task-card-drag-handle{display:flex;align-items:flex-start;color:var(--color-text-tertiary);padding-top:2px;cursor:grab;font-size:var(--font-size-sm)}.task-card-drag-handle:active{cursor:grabbing}.task-card-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-md)}.task-card-header{display:flex;gap:var(--spacing-md);align-items:flex-start}.task-checkbox{width:20px;height:20px;min-width:20px;border:1px solid var(--color-border);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition);margin-top:2px}.task-checkbox:hover{border-color:var(--color-accent)}.task-checkbox.checked{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.task-card-info{flex:1;min-width:0}.task-title{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin:0;word-wrap:break-word;line-height:1.4}.task-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:var(--spacing-xs) 0 0;line-height:1.5;word-wrap:break-word}.task-card-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm)}.task-priority-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:3px 10px;border-radius:var(--radius-full);color:var(--color-bg-primary);white-space:nowrap}.task-actions{display:flex;gap:var(--spacing-xs);opacity:0;transition:opacity var(--transition)}.task-card:hover .task-actions{opacity:1}.task-action-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--color-text-secondary);transition:all var(--transition)}.task-action-btn:hover{color:var(--color-text-primary)}.task-action-delete:hover{color:var(--color-error)}.category-column{display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;height:fit-content;max-height:calc(100vh - 200px)}.category-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.category-header-content{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.category-icon{display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg)}.category-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.category-count{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.count-pending{color:var(--color-text-primary);background:var(--color-surface-hover);padding:2px 8px;border-radius:var(--radius-full)}.count-completed{color:var(--color-text-tertiary)}.category-tasks{padding:var(--spacing-lg);overflow-y:auto;overflow-x:hidden;flex:1;min-height:200px;transition:background var(--transition)}.category-tasks.drag-over{background:var(--color-surface-hover)}.category-empty{display:flex;align-items:center;justify-content:center;min-height:150px;color:var(--color-text-tertiary);font-size:var(--font-size-sm)}@media (max-width: 1024px){.category-column{max-height:none}}.app{min-height:100vh;padding:var(--spacing-2xl) var(--spacing-xl);max-width:1600px;margin:0 auto}.app-header{text-align:center;margin-bottom:var(--spacing-2xl)}.app-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin:0 0 var(--spacing-sm);letter-spacing:-.02em;color:var(--color-text-primary)}.app-subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin:0;font-weight:var(--font-weight-normal);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.app-subtitle svg{color:var(--color-accent);font-size:var(--font-size-base)}.app-main{display:grid;grid-template-columns:280px 1fr;gap:var(--spacing-2xl);align-items:start}.app-sidebar{position:relative}.app-content{min-width:0}.app-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg);align-items:start}@media (max-width: 1024px){.app-main,.app-columns{grid-template-columns:1fr}}@media (max-width: 640px){.app{padding:var(--spacing-xl) var(--spacing-md)}.app-title{font-size:var(--font-size-2xl)}.app-subtitle{font-size:var(--font-size-base)}}
