@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";
:root{--font-primary:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--shadow-sm:0 1px 3px #0000001f;--shadow-md:0 4px 12px #00000026;--shadow-lg:0 8px 30px #0003;--shadow-xl:0 20px 50px #00000040;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1)}[data-theme=light]{--bg-primary:#f8f9fc;--bg-secondary:#fff;--bg-tertiary:#f1f3f8;--bg-elevated:#fff;--bg-hover:#6366f10f;--bg-active:#6366f11a;--bg-overlay:#0006;--bg-glass:#ffffffb3;--border-primary:#e2e5f1;--border-secondary:#edf0f7;--border-accent:#6366f14d;--text-primary:#1a1d2e;--text-secondary:#5a5e78;--text-tertiary:#8b8fa8;--text-inverse:#fff;--accent-primary:#6366f1;--accent-hover:#5558e6;--accent-gradient:linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #a855f7 100%);--accent-gradient-subtle:linear-gradient(135deg, #6366f114 0%, #8b5cf614 100%);--success:#22c55e;--warning:#f59e0b;--danger:#ef4444;--info:#3b82f6;--card-bg:#fff;--card-border:#e8ebf4;--column-bg:#f1f3f8;--input-bg:#f5f7fb;--input-border:#dde1ee;--input-focus:#6366f166;--scrollbar-track:#f1f3f8;--scrollbar-thumb:#c8cce0}[data-theme=dark]{--bg-primary:#0f1117;--bg-secondary:#181a24;--bg-tertiary:#1e2030;--bg-elevated:#222438;--bg-hover:#6366f114;--bg-active:#6366f126;--bg-overlay:#0009;--bg-glass:#181a24cc;--border-primary:#2a2d42;--border-secondary:#23253a;--border-accent:#6366f14d;--text-primary:#e8eaf4;--text-secondary:#9a9dba;--text-tertiary:#6b6e8a;--text-inverse:#0f1117;--accent-primary:#818cf8;--accent-hover:#6d78f2;--accent-gradient:linear-gradient(135deg, #818cf8 0%, #a78bfa 50%, #c084fc 100%);--accent-gradient-subtle:linear-gradient(135deg, #818cf81a 0%, #a78bfa1a 100%);--success:#34d399;--warning:#fbbf24;--danger:#f87171;--info:#60a5fa;--card-bg:#1e2030;--card-border:#2a2d42;--column-bg:#181a24;--input-bg:#1e2030;--input-border:#2a2d42;--input-focus:#818cf880;--scrollbar-track:#181a24;--scrollbar-thumb:#3a3d56}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-primary);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;transition:background-color var(--transition-base), color var(--transition-base);line-height:1.6}a{color:var(--accent-primary);text-decoration:none}button{cursor:pointer;font-family:inherit;font-size:inherit;background:0 0;border:none}input,textarea,select{font-family:inherit;font-size:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-primary)}.btn{border-radius:var(--radius-md);letter-spacing:.01em;transition:all var(--transition-fast);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:.875rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 2px 8px #6366f14d}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 16px #6366f166}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-primary)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--accent-primary)}.btn-ghost{color:var(--text-secondary);padding:8px 12px}.btn-ghost:hover{color:var(--accent-primary);background:var(--bg-hover)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{opacity:.9;transform:translateY(-1px)}.btn-sm{padding:6px 12px;font-size:.8rem}.btn-icon{border-radius:var(--radius-sm);padding:8px}.input,.textarea,.select{background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;padding:10px 14px}.input:focus,.textarea:focus,.select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--input-focus)}.input::placeholder,.textarea::placeholder{color:var(--text-tertiary)}.textarea{resize:vertical;min-height:80px}.label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:.8rem;font-weight:600;display:block}.badge{letter-spacing:.04em;text-transform:uppercase;border-radius:50px;align-items:center;gap:4px;padding:3px 10px;font-size:.7rem;font-weight:700;display:inline-flex}.badge-success{color:var(--success);background:#22c55e26}.badge-warning{color:var(--warning);background:#f59e0b26}.badge-danger{color:var(--danger);background:#ef444426}.badge-info{color:var(--info);background:#3b82f626}.surface{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);transition:box-shadow var(--transition-fast), transform var(--transition-fast)}.surface-elevated,.surface:hover{box-shadow:var(--shadow-md)}.overlay{background:var(--bg-overlay);-webkit-backdrop-filter:blur(8px);z-index:1000;animation:fadeIn var(--transition-fast) ease-out;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-height:90vh;animation:slideUp var(--transition-base) ease-out;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border-secondary);justify-content:space-between;align-items:center;padding:24px 28px 16px;display:flex}.modal-body{padding:24px 28px}.modal-footer{border-top:1px solid var(--border-secondary);justify-content:flex-end;gap:12px;padding:16px 28px 24px;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn var(--transition-base) ease-out}.animate-slide-up{animation:slideUp var(--transition-base) ease-out}.animate-slide-down{animation:slideDown var(--transition-base) ease-out}.skeleton{background:linear-gradient(90deg, var(--bg-tertiary) 25%, var(--bg-hover) 50%, var(--bg-tertiary) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.5s infinite shimmer}.kanban-container{align-items:flex-start;gap:16px;min-height:calc(100vh - 140px);padding:20px;display:flex;overflow-x:auto}.kanban-column{background:var(--column-bg);border:1px solid var(--border-secondary);border-radius:var(--radius-lg);flex-direction:column;min-width:320px;max-width:320px;max-height:calc(100vh - 160px);display:flex}.kanban-column-header{border-bottom:1px solid var(--border-secondary);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px;display:flex}.kanban-column-title{text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:8px;font-size:.85rem;font-weight:700;display:flex}.kanban-column-count{background:var(--bg-active);color:var(--accent-primary);border-radius:50px;padding:2px 8px;font-size:.7rem;font-weight:700}.kanban-column-body{flex-direction:column;flex:1;gap:10px;padding:12px;display:flex;overflow-y:auto}.kanban-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);cursor:grab;transition:all var(--transition-fast);padding:14px;position:relative}.kanban-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-accent);transform:translateY(-2px)}.kanban-card:active{cursor:grabbing}.kanban-card-identifier{color:var(--accent-primary);letter-spacing:.03em;font-family:Courier New,monospace;font-size:.7rem;font-weight:700}.kanban-card-title{color:var(--text-primary);margin:6px 0;font-size:.9rem;font-weight:600;line-height:1.3}.kanban-card-meta{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.kanban-card-footer{border-top:1px solid var(--border-secondary);justify-content:space-between;align-items:center;margin-top:12px;padding-top:10px;display:flex}.kanban-card-avatar{background:var(--accent-gradient);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.65rem;font-weight:700;display:flex}.complexity-bar{border-radius:var(--radius-md) 0 0 var(--radius-md);width:3px;position:absolute;top:0;bottom:0;left:0}.auth-container{background:var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-xl);width:100%;max-width:440px;box-shadow:var(--shadow-xl);animation:slideUp var(--transition-slow) ease-out;padding:40px}.auth-logo{text-align:center;margin-bottom:32px}.auth-logo h1{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800}.auth-logo p{color:var(--text-tertiary);margin-top:6px;font-size:.9rem}.auth-form{flex-direction:column;gap:18px;display:flex}.auth-divider{color:var(--text-tertiary);align-items:center;gap:16px;font-size:.8rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border-primary);flex:1;height:1px}.auth-toggle{text-align:center;color:var(--text-secondary);margin-top:20px;font-size:.85rem}.auth-toggle button{color:var(--accent-primary);margin-left:4px;font-weight:600}.auth-toggle button:hover{text-decoration:underline}.navbar{background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-secondary);z-index:100;justify-content:space-between;align-items:center;height:60px;padding:0 24px;display:flex;position:sticky;top:0}.navbar-brand{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.2rem;font-weight:800}.navbar-actions{align-items:center;gap:12px;display:flex}.board-header{border-bottom:1px solid var(--border-secondary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;display:flex}.board-title{font-size:1.3rem;font-weight:700}.board-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-bar{background:var(--bg-tertiary);border-bottom:1px solid var(--border-secondary);animation:slideDown var(--transition-fast) ease-out;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 24px;display:flex}.filter-bar .input,.filter-bar .select{max-width:200px;padding:7px 12px;font-size:.82rem}.boards-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;padding:24px;display:grid}.board-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);padding:24px;position:relative;overflow:hidden}.board-card:before{content:"";background:var(--accent-gradient);opacity:0;height:4px;transition:opacity var(--transition-fast);position:absolute;top:0;left:0;right:0}.board-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-accent);transform:translateY(-4px)}.board-card:hover:before{opacity:1}.board-card-title{margin-bottom:8px;font-size:1.1rem;font-weight:700}.board-card-desc{color:var(--text-secondary);margin-bottom:16px;font-size:.85rem;line-height:1.5}.board-card-stats{color:var(--text-tertiary);gap:16px;font-size:.78rem;display:flex}.tabs{background:var(--bg-tertiary);border-radius:var(--radius-md);gap:4px;padding:4px;display:flex}.tab{border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition-fast);padding:8px 16px;font-size:.82rem;font-weight:600}.tab:hover{color:var(--text-primary);background:var(--bg-hover)}.tab-active{background:var(--accent-primary);color:#fff;box-shadow:var(--shadow-sm)}.empty-state{text-align:center;color:var(--text-tertiary);flex-direction:column;justify-content:center;align-items:center;padding:60px 24px;display:flex}.empty-state-icon{opacity:.4;width:64px;height:64px;margin-bottom:16px}.empty-state h3{color:var(--text-secondary);margin-bottom:8px;font-size:1.1rem}.empty-state p{max-width:360px;font-size:.85rem}@media (max-width:768px){.kanban-container{gap:12px;padding:12px}.kanban-column{min-width:280px;max-width:280px}.modal{max-width:calc(100vw - 24px);margin:12px}.auth-card{padding:28px 20px}.boards-grid{grid-template-columns:1fr;padding:16px}.board-header{padding:12px 16px}.board-actions{justify-content:flex-end;width:100%}.filter-bar{padding:10px 16px}.filter-bar .input,.filter-bar .select{flex:1;max-width:100%}.navbar{padding:0 16px}}
