:root{--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--bg-footer: #f5f5f5;--bg-tertiary: #e8e8e8;--text-primary: #1a1a1a;--text-secondary: #666666;--text-muted: #999999;--border-color: #e0e0e0;--hover-bg: #f0f0f0;--selected-bg: #e3f2fd;--shadow: 0 2px 8px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .15);--primary: #3b82f6;--primary-hover: #2563eb;--primary-light: #dbeafe;--primary-color: #3b82f6;--accent-color: #8b5cf6;--success: #22c55e;--success-light: #dcfce7;--warning: #f59e0b;--warning-light: #fef3c7;--danger: #ef4444;--danger-light: #fee2e2;--info: #06b6d4;--info-light: #cffafe;--color-warning: #f59e0b;--color-success: #22c55e;--color-danger: #ef4444;--color-primary: #3b82f6;--color-border: #e0e0e0;--color-card: #ffffff;--color-light: #f5f5f5;--color-white: #ffffff;--priority-low: #22c55e;--priority-medium: #f59e0b;--priority-high: #ef4444;--status-pending: #f59e0b;--status-in-progress: #3b82f6;--status-completed: #22c55e;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--transition: .2s ease}[data-theme=dark]{--bg-primary: #1e293b;--bg-secondary: #1e293b;--bg-footer: #0f172a;--bg-tertiary: #334155;--text-primary: #e2e8f0;--text-secondary: #94a3b8;--text-muted: #64748b;--border-color: #475569;--hover-bg: #334155;--shadow: 0 2px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .5);--primary-light: #475569;--success-light: #475569;--warning-light: #475569;--danger-light: #475569;--info-light: #475569;--success: #64748b !important;--warning: #64748b !important;--danger: #64748b !important;--info: #64748b !important;--primary: #64748b !important;--color-warning: #475569;--color-success: #475569;--color-danger: #475569;--color-primary: #475569;--color-border: #475569;--color-card: #334155;--color-light: #475569;--color-white: #1e293b}[data-theme=dark] #app-footer{background-color:#0f172a!important;color:#94a3b8!important;border-top:1px solid #475569!important}[data-theme=dark] select option{background-color:#334155!important;color:#e2e8f0!important}[data-theme=dark] select optgroup{background-color:#1e293b;color:#94a3b8}[data-theme=dark] select{background-color:#334155!important;color:#e2e8f0!important;border-color:#475569!important}[data-theme=dark] select{appearance:auto}[data-theme=dark]{--tw-gray-50: #f8fafc;--tw-gray-100: #f1f5f9;--tw-gray-200: #e2e8f0;--tw-gray-300: #cbd5e1;--tw-gray-400: #94a3b8;--tw-gray-500: #64748b;--tw-gray-600: #475569;--tw-gray-700: #334155;--tw-gray-800: #1e293b;--tw-gray-900: #0f172a}[data-theme=dark] .dark\:bg-gray-700{background-color:#334155!important}[data-theme=dark] .dark\:bg-gray-700\/50{background-color:#33415580!important}[data-theme=dark] .dark\:bg-gray-700\/40{background-color:#33415566!important}[data-theme=dark] .dark\:bg-gray-700\/30{background-color:#3341554d!important}[data-theme=dark] .dark\:bg-gray-900{background-color:#1e293b!important}[data-theme=dark] .dark\:bg-gray-900\/50{background-color:#1e293b80!important}[data-theme=dark] .dark\:bg-gray-900\/80{background-color:#1e293bcc!important}[data-theme=dark] .dark\:bg-gray-800{background-color:#1e293b!important}[data-theme=dark] .dark\:bg-gray-800\/40{background-color:#1e293b66!important}[data-theme=dark] .dark\:text-gray-300{color:#cbd5e1!important}[data-theme=dark] .dark\:text-gray-200{color:#e2e8f0!important}[data-theme=dark] .dark\:border-gray-600{border-color:#475569!important}[data-theme=dark] .dark\:border-gray-700{border-color:#334155!important}[data-theme=dark] .dark\:text-white{color:#e2e8f0!important}[data-theme=dark] .dark\:text-gray-400{color:#94a3b8!important}[data-theme=dark] .dark\:text-gray-500{color:#64748b!important}[data-theme=dark] .dark\:bg-slate-700\/50{background-color:#33415580!important}[data-theme=dark] .dark\:text-slate-300{color:#cbd5e1!important}[data-theme=dark] .dark\:bg-green-800\/40{background-color:#33415580!important}[data-theme=dark] .dark\:text-green-300{color:#94a3b8!important}[data-theme=dark] .dark\:bg-blue-800\/40{background-color:#33415580!important}[data-theme=dark] .dark\:text-blue-300{color:#94a3b8!important}[data-theme=dark] .dark\:bg-orange-800\/40{background-color:#33415580!important}[data-theme=dark] .dark\:text-orange-300{color:#94a3b8!important}[data-theme=dark] .dark\:bg-yellow-800\/40{background-color:#33415580!important}[data-theme=dark] .dark\:text-yellow-300{color:#94a3b8!important}[data-theme=dark] .dark\:bg-gray-600\/40{background-color:#47556966!important}[data-theme=dark] .dark\:bg-red-800\/40{background-color:#33415580!important}[data-theme=dark] .dark\:text-red-300{color:#94a3b8!important}[data-theme=dark] .dark\:bg-blue-900\/30{background-color:#3341554d!important}[data-theme=dark] .dark\:bg-black\/50{background-color:#0009!important}[data-theme=dark] .dark\:hover\:bg-gray-600:hover{background-color:#475569!important}[data-theme=dark] .dark\:hover\:bg-gray-600\/40:hover{background-color:#47556966!important}*{margin:0;padding:0;box-sizing:border-box}span{color:inherit}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:var(--bg-secondary);color:var(--text-primary);line-height:1.6;transition:background-color var(--transition),color var(--transition)}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:600;line-height:1.3;margin-bottom:var(--spacing-sm)}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.125rem}p{color:var(--text-primary);margin-bottom:var(--spacing-md)}a{color:var(--primary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--primary-hover)}.task-description-link{color:#3b82f6!important;text-decoration:underline!important;cursor:pointer!important}.task-description-link:hover{color:#2563eb!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem;font-weight:500;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition);text-decoration:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover)}.btn-secondary{background-color:var(--bg-tertiary);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background-color:var(--border-color)}.btn-success{background-color:var(--success);color:#fff}.btn-success:hover:not(:disabled){background-color:#16a34a}.btn-danger{background-color:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-outline{background-color:transparent;border:1px solid var(--border-color);color:var(--text-primary)}.btn-outline:hover:not(:disabled){background-color:var(--bg-tertiary)}.task-filter-btn.is-active{background:#2563eb;color:#fff;border:1px solid #2563eb;box-shadow:0 0 0 1px #2563eb33}.task-filter-btn.is-active:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem}.btn-lg{padding:var(--spacing-md) var(--spacing-lg);font-size:1rem}.btn-icon{padding:var(--spacing-sm);width:36px;height:36px}.form-group{margin-bottom:var(--spacing-md)}.form-label{display:block;margin-bottom:var(--spacing-xs);font-weight:500;font-size:.875rem;color:var(--text-secondary)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);transition:border-color var(--transition),box-shadow var(--transition)}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.form-textarea{min-height:100px;resize:vertical}.form-error{color:var(--danger);font-size:.75rem;margin-top:var(--spacing-xs)}.card{background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--spacing-lg);transition:background-color var(--transition)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.card-title{font-size:1.125rem;font-weight:600}.badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem;font-weight:500;border-radius:var(--radius-full);color:var(--text-primary)}.badge-primary{background-color:var(--primary-light);color:var(--primary)}.badge-success{background-color:var(--success-light);color:var(--success)}.badge-warning{background-color:var(--warning-light);color:var(--warning)}.badge-danger{background-color:var(--danger-light);color:var(--danger)}.badge-info{background-color:var(--info-light);color:var(--info)}.badge-low{background-color:var(--success-light);color:var(--priority-low)}.badge-medium{background-color:var(--warning-light);color:var(--priority-medium)}.badge-high{background-color:var(--danger-light);color:var(--priority-high)}.badge-pending{background-color:var(--warning-light);color:var(--status-pending)}.badge-in-progress{background-color:var(--info-light);color:var(--status-in-progress)}.badge-completed{background-color:var(--success-light);color:var(--status-completed)}.container{max-width:1200px;margin:0 auto;padding:var(--spacing-lg)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.page-title{font-size:1.5rem;font-weight:600}.grid{display:grid;gap:var(--spacing-lg)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media(max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--text-muted)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-warning{color:var(--warning)}.spinner{width:20px;height:20px;border:2px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.loading-overlay{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl)}.empty-state{text-align:center;padding:var(--spacing-xl);color:var(--text-muted)}.empty-state-icon{font-size:3rem;margin-bottom:var(--spacing-md)}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.modal{background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:500px;width:100%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.modal-title{font-size:1.125rem;font-weight:600}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);padding:0;line-height:1}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:var(--spacing-lg)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--border-color)}.nav{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--bg-primary);border-bottom:1px solid var(--border-color)}.nav-brand{font-size:1.25rem;font-weight:700;color:var(--primary);display:flex;align-items:center;gap:8px;text-decoration:none}.nav-brand-logo{height:160px;width:auto;object-fit:contain}.nav-links{display:flex;gap:var(--spacing-sm);margin-left:var(--spacing-lg)}.nav-link{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition);display:flex;align-items:center;gap:6px}.nav-link .badge{background:var(--danger);color:#fff;font-size:11px;padding:2px 6px;border-radius:10px;font-weight:600}.nav-link .badge.badge-highlight{background:var(--danger);color:#fff;font-size:12px;padding:3px 8px;border-radius:12px;font-weight:700;animation:pulse-badge 2s infinite}@keyframes pulse-badge{0%{transform:scale(1);box-shadow:0 0 #dc2626b3}50%{transform:scale(1.1);box-shadow:0 0 0 4px #dc262600}to{transform:scale(1);box-shadow:0 0 #dc262600}}.nav-link.has-notifications{color:var(--danger);font-weight:600}.nav-link:hover,.nav-link.active{background-color:var(--bg-tertiary);color:var(--text-primary)}.nav-dropdown{position:relative}.nav-dropdown:hover .nav-dropdown-menu{display:block}.nav-dropdown-toggle{cursor:pointer}.nav-dropdown-menu{position:absolute;top:100%;left:0;min-width:180px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;padding:var(--spacing-xs) 0}.nav-dropdown-item{display:block;padding:var(--spacing-sm) var(--spacing-md);color:var(--text-secondary);text-decoration:none;transition:all var(--transition)}.nav-dropdown-item:hover{background-color:var(--hover-bg);color:var(--text-primary)}.nav-actions{margin-left:auto;display:flex;align-items:center;gap:var(--spacing-sm)}.task-card{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px 20px;min-height:72px;background-color:var(--bg-primary);border-radius:12px;border:1px solid var(--border-color);transition:all var(--transition)}.task-card:hover{border-color:var(--primary);box-shadow:var(--shadow)}.task-card--completed{opacity:.7;background-color:var(--bg-secondary)}.task-card--completed:hover{border-color:var(--border-color);box-shadow:none}.task-card__left{display:flex;flex-direction:column;align-items:center;gap:6px;width:40px;flex-shrink:0}.task-card__drag{background:none;border:none;font-size:14px;color:#9ca3af;cursor:grab;padding:2px;line-height:1;transition:color .2s}.task-card__drag:hover{color:#6b7280}.task-card__drag:active{cursor:grabbing}.task-card__checkbox{width:16px;height:16px;cursor:pointer;accent-color:var(--success)}.task-card__favorite{background:none;border:none;font-size:16px;color:#d1d5db;cursor:pointer;padding:2px;line-height:1;transition:color .2s}.task-card__favorite:hover,.task-card__favorite--active{color:#f59e0b}.task-card__content{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:6px}.task-card__header{display:flex;align-items:center;gap:10px;min-width:0}.task-card__title{font-weight:600;font-size:14px;color:var(--text-primary);cursor:pointer;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.task-card__title:hover{color:var(--primary)}.task-card__badges{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;flex-shrink:0}.badge{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;line-height:1;border:1px solid transparent;white-space:nowrap}.badge--priority-low,.badge--low{background:#e8f7ee;color:#1f7a45;border-color:#b7e4c7}.badge--priority-medium,.badge--medium{background:#fff4df;color:#a66300;border-color:#ffd591}.badge--priority-high,.badge--high{background:#fde8e8;color:#c0392b;border-color:#f5b7b1}.badge--status-waiting,.badge--pending{background:#fff7d6;color:#8a6d00;border-color:#ffe58f}.badge--status-in-progress,.badge--in-progress{background:#e6f4ff;color:#0958d9;border-color:#91caff}.badge--status-completed,.badge--completed{background:#e8f7ee;color:#1f7a45;border-color:#b7e4c7}.task-card__meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--text-muted, #9ca3af)}.task-card__meta-item{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;color:var(--text-secondary, #6b7280)}.task-card__meta-item--danger{color:var(--danger)}.task-card__meta-item--time{font-weight:500;color:var(--warning)}[data-theme=dark] .task-card__reaction-btn:hover{background-color:#404040}[data-theme=dark] .task-card__meta-item--reaction:hover{background-color:#1e3a5f}.task-card__reaction-btn{background:none;border:none;font-size:14px;cursor:pointer;padding:2px 4px;border-radius:4px;transition:background-color .2s}.task-card__reaction-btn:hover{background-color:var(--hover-bg)}.task-card__meta-item--reaction{padding:2px 6px;border-radius:4px;background-color:var(--primary-light);transition:background-color .2s}.task-card__meta-item--reaction:hover{background-color:var(--primary-hover);color:#fff}.task-card__reaction-picker{position:absolute;bottom:100%;left:0;margin-bottom:4px;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg);padding:4px;display:flex;gap:4px;z-index:50}.task-card__reaction-option{background:none;border:none;font-size:18px;cursor:pointer;padding:4px;border-radius:4px;transition:background-color .2s}.task-card__reaction-option:hover{background-color:#f3f4f6}.task-card__right{display:flex;align-items:center;gap:12px;flex-wrap:nowrap;flex-shrink:0}.task-card__users{display:flex;align-items:center;gap:8px;min-width:0}.task-card__avatars{display:flex;align-items:center;flex-shrink:0}.task-card__avatars .avatar{margin-left:-6px}.task-card__avatars .avatar:first-child{margin-left:0}.task-card__assign-wrapper{position:relative}.task-card__assign{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:16px;font-size:12px;font-weight:500;cursor:pointer;border:1px solid var(--border-color);background-color:var(--bg-tertiary);color:var(--text-primary);transition:all .2s;min-width:100px;max-width:160px;white-space:nowrap;overflow:hidden}.task-card__assign:hover{background-color:var(--hover-bg)}[data-theme=dark] .task-card__assign:hover{background-color:#404040}.task-card__assign--empty{background-color:var(--primary-light);border-color:var(--primary-light);color:var(--primary)}.task-card__assign--empty:hover{background-color:var(--primary-hover);color:#fff}.task-card__assign-name{overflow:hidden;text-overflow:ellipsis;flex:1;color:var(--text-primary)}.task-card__dropdown{position:absolute;top:100%;left:0;z-index:100;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 6px -1px #0000001a;min-width:220px;margin-top:4px}[data-theme=dark] .task-card__dropdown{box-shadow:0 4px 6px -1px #0006}.task-card__dropdown-search{padding:8px;border-bottom:1px solid var(--border-color)}.task-card__dropdown-search input{width:100%;padding:8px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;box-sizing:border-box;background-color:var(--bg-primary);color:var(--text-primary)}.task-card__dropdown-results{max-height:200px;overflow-y:auto}.task-card__dropdown-loading,.task-card__dropdown-empty,.task-card__dropdown-hint{padding:12px;text-align:center;color:var(--text-secondary);font-size:13px}.task-card__dropdown-item{padding:8px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;color:var(--text-primary)}.task-card__dropdown-item:hover{background-color:var(--hover-bg)}.task-card__dropdown-item-name{font-weight:500;font-size:14px;color:var(--text-primary)}.task-card__dropdown-item-email{font-size:12px;color:var(--text-secondary)}.task-card__dropdown-unassign{padding:8px 12px;border-top:1px solid var(--border-color);cursor:pointer;color:var(--danger);font-size:13px}.task-card__dropdown-unassign:hover{background-color:var(--danger-light)}.task-card__timer{display:flex;align-items:center;flex-shrink:0}.task-card__start,.task-card__stop{padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;border:none;transition:all .2s;white-space:nowrap}.task-card__start{background-color:#22c55e;color:#fff}.task-card__start:hover{background-color:#16a34a}[data-theme=dark] .task-card__start{background-color:#15803d;color:#e2e8f0}[data-theme=dark] .task-card__start:hover{background-color:#166534}.task-card__stop{background-color:#f59e0b;color:#fff}.task-card__stop:hover{background-color:#d97706}[data-theme=dark] .task-card__stop{background-color:#b45309;color:#e2e8f0}[data-theme=dark] .task-card__stop:hover{background-color:#92400e}.task-card__start:disabled,.task-card__stop:disabled{opacity:.6;cursor:not-allowed}.task-card__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.task-card__action{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:6px;border:1px solid;cursor:pointer;transition:all .2s;font-size:14px}.task-card__action--edit{background-color:#f3f4f6;border-color:#e5e7eb;color:#6b7280}.task-card__action--edit:hover{background-color:#e5e7eb;color:#374151}.task-card__action--edit:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .task-card__action--edit{background-color:#1e293b!important;border-color:#475569!important;color:#fff!important}[data-theme=dark] .task-card__action--edit:hover{background-color:#334155!important;color:#fff!important}.task-card__action--delete{background-color:#fee2e2;border-color:#fecaca;color:#ef4444}.task-card__action--delete:hover{background-color:#fecaca;color:#dc2626}.task-card__action--delete:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .task-card__action--delete{background-color:#1e293b!important;border-color:#475569!important;color:#fff!important}[data-theme=dark] .task-card__action--delete:hover{background-color:#334155!important;color:#fff!important}.avatar{width:40px;height:40px;border-radius:50%;background-color:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;border:2px solid white;flex-shrink:0}.two-factor-setup{margin-top:var(--spacing-lg)}.two-factor-status{margin-bottom:var(--spacing-lg)}.status-indicator{margin-bottom:var(--spacing-sm)}.two-factor-info{background-color:var(--bg-secondary);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.two-factor-info h4{margin-bottom:var(--spacing-sm)}.two-factor-info ul{margin:0;padding-left:var(--spacing-lg)}.two-factor-info li{margin-bottom:var(--spacing-xs);color:var(--text-secondary)}.setup-step{margin-bottom:var(--spacing-lg)}.setup-step h4{margin-bottom:var(--spacing-md);color:var(--primary)}.qr-code-container{display:flex;justify-content:center;margin:var(--spacing-lg) 0}.qr-code{width:200px;height:200px;border:2px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-sm);background-color:#fff}.secret-key{text-align:center;margin:var(--spacing-lg) 0;padding:var(--spacing-md);background-color:var(--bg-secondary);border-radius:var(--radius-md)}.secret-text{display:block;font-family:monospace;font-size:1rem;word-break:break-all;padding:var(--spacing-sm);background-color:var(--bg-primary);border-radius:var(--radius-sm);margin-top:var(--spacing-sm)}.verify-form{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.button-group{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-md)}.form-help{display:block;margin-top:var(--spacing-xs);font-size:.875rem;color:var(--text-muted)}.btn-link{background:none;border:none;color:var(--primary);cursor:pointer;text-decoration:underline;padding:0}.btn-link:hover{color:var(--primary-hover)}.task-title{font-weight:600;margin-bottom:var(--spacing-xs);color:var(--text-primary)}.task-item.completed .task-title{text-decoration:line-through;color:var(--text-muted)}.task-item.completed .task-meta,.task-item.completed .badge{opacity:.6}.task-meta{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.75rem;color:var(--text-muted)}.task-actions{display:flex;gap:var(--spacing-xs)}.sortable-task-item{display:flex;align-items:stretch;gap:var(--spacing-xs);cursor:grab}.sortable-task-item:active{cursor:grabbing}.drag-handle{display:flex;align-items:center;justify-content:center;width:24px;cursor:grab;color:var(--text-muted);font-size:14px;border-radius:var(--radius-sm);transition:background-color var(--transition-fast)}.drag-handle:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.sortable-task-content{flex:1;min-width:0}.tasks-drag-hint{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-muted);margin-bottom:8px}.dropdown{position:relative}.dropdown-menu{position:absolute;top:100%;right:0;min-width:180px;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;padding:var(--spacing-xs)}.dropdown-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition);color:var(--text-primary)}.dropdown-item:hover{background-color:var(--bg-tertiary)}.form-group{position:relative}.form-group .dropdown-menu{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;margin-top:4px;background-color:var(--bg-primary);border:1px solid var(--border-color)}.form-group .dropdown-item{flex-direction:column;align-items:flex-start;color:var(--text-primary)}.form-group .dropdown-item:hover{background-color:var(--hover-bg)}.form-group .font-medium{font-weight:500;color:var(--text-primary)}.form-group .text-sm{font-size:.875rem;color:var(--text-secondary)}.mt-xs{margin-top:4px}.toast-container{position:fixed;top:var(--spacing-lg);right:var(--spacing-lg);z-index:2000}.avatar{width:40px;height:40px;border-radius:var(--radius-full);background-color:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;border:2px solid white}.avatar-sm{width:32px;height:32px;font-size:.75rem}.avatar-xs{width:24px;height:24px;font-size:.625rem;border-width:1.5px}.avatar-lg{width:56px;height:56px;font-size:1.25rem}.tabs{display:flex;border-bottom:1px solid var(--border-color);margin-bottom:var(--spacing-lg)}.tab{padding:var(--spacing-sm) var(--spacing-lg);border-bottom:2px solid transparent;color:var(--text-secondary);cursor:pointer;transition:all var(--transition)}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.search-input{position:relative}.search-input input{padding-left:40px}.search-input-icon{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);color:var(--text-muted)}.file-upload{border:2px dashed var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-xl);text-align:center;cursor:pointer;transition:all var(--transition)}.file-upload:hover{border-color:var(--primary);background-color:var(--bg-secondary)}.file-upload.dragging{border-color:var(--primary);background-color:var(--primary-light)}.file-upload-wrapper.dragging{border-color:var(--primary);background-color:var(--primary-light)}.attachment-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background-color:var(--bg-secondary);border-radius:var(--radius-sm)}.attachment-preview{flex-shrink:0}.attachment-preview img{border-radius:var(--radius-sm)}.attachment-icon{font-size:1.25rem}.attachment-info{flex:1;min-width:0;display:flex;flex-direction:column}.attachment-name{font-size:.875rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary);cursor:pointer}.attachment-name:hover{color:var(--primary);text-decoration:underline}.attachment-size{font-size:.75rem;color:var(--text-muted)}.description-edit-mode{display:flex;flex-direction:column;gap:var(--spacing-sm)}.description-view-mode{display:flex;flex-direction:column}.description-view-mode .btn{align-self:flex-start}.file-upload-wrapper{position:relative}.file-input{position:absolute;width:.1px;height:.1px;opacity:0;overflow:hidden;z-index:-1}.file-upload-label{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--bg-secondary);border:1px dashed var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition);font-size:.875rem;color:var(--text-secondary)}.file-upload-label:hover{border-color:var(--primary);color:var(--primary);background-color:var(--primary-light)}.file-upload-icon{font-size:1rem}.selected-files{margin-top:var(--spacing-sm);display:flex;flex-direction:column;gap:var(--spacing-xs)}.selected-file{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--bg-secondary);border-radius:var(--radius-sm);font-size:.875rem}.selected-file .file-preview{flex-shrink:0;margin-right:var(--spacing-sm)}.selected-file .file-details{flex:1;min-width:0;display:flex;flex-direction:column}.selected-file .file-details .file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-weight:500}.selected-file .file-details .file-size{font-size:.75rem;color:var(--text-muted)}.file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.file-remove-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px 6px;font-size:.75rem;border-radius:var(--radius-sm);transition:all var(--transition)}.file-remove-btn:hover{background-color:var(--danger);color:#fff}.comment{display:flex;gap:var(--spacing-md);padding:var(--spacing-md) 0;border-bottom:1px solid var(--border-color)}.comment:last-child{border-bottom:none}.comment-avatar-img{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}.comment-content{flex:1}.comment-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.comment-author{font-weight:500}.comment-date{font-size:.75rem;color:var(--text-muted)}.comment-text{font-size:.875rem}.comment-edited{font-size:.75rem;color:var(--text-muted);font-style:italic}.comment-previous{font-size:.75rem;color:var(--text-muted);margin-top:var(--spacing-xs);padding:var(--spacing-xs);background:var(--bg-secondary);border-radius:var(--radius-sm);border-left:2px solid var(--color-warning)}.comment-actions{display:flex;gap:var(--spacing-xs)}.comment-edit-form{margin-top:var(--spacing-xs)}.comment-edit-form .form-input{width:100%;margin-bottom:var(--spacing-xs)}.comment-edit-actions{display:flex;gap:var(--spacing-xs)}.activity-item{display:flex;gap:var(--spacing-md);padding:var(--spacing-sm) 0}.activity-icon{width:32px;height:32px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:.875rem}.activity-content{flex:1}.activity-text{font-size:.875rem}.activity-time{font-size:.75rem;color:var(--text-muted)}@media(max-width:768px){.container{padding:var(--spacing-md)}.page-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.nav{flex-wrap:wrap}.nav-links{order:3;width:100%;margin-left:0;margin-top:var(--spacing-sm);overflow-x:auto}.modal{margin:var(--spacing-md);max-height:calc(100vh - 2rem)}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);background-color:var(--bg-secondary)}.auth-container{width:100%;max-width:400px}.auth-header{text-align:center;margin-bottom:var(--spacing-lg)}.auth-logo{height:280px;width:auto;object-fit:contain;margin-bottom:var(--spacing-md);display:block;margin-left:auto;margin-right:auto}.auth-header h1{font-size:1.75rem;margin-bottom:var(--spacing-xs)}.auth-header p{color:var(--text-muted)}.auth-form{background-color:var(--bg-primary);padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.auth-form .btn{width:100%;margin-top:var(--spacing-md)}.auth-footer{text-align:center;margin-top:var(--spacing-lg)}.auth-footer p{margin-top:var(--spacing-sm)}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-tertiary{background-color:var(--bg-tertiary)}.rounded{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.font-medium{font-weight:500}.font-bold{font-weight:700}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.w-full{width:100%}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.cursor-pointer{cursor:pointer}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-container{overflow-x:auto;background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.group-table{width:100%;border-collapse:collapse;font-size:.875rem}.group-table thead{background-color:var(--bg-secondary);border-bottom:2px solid var(--border-color)}.group-table th{padding:var(--spacing-md);text-align:left;font-weight:600;color:var(--text-secondary);white-space:nowrap}.group-table td{padding:var(--spacing-md);border-bottom:1px solid var(--border-color);vertical-align:middle}.group-table tbody tr{transition:background-color var(--transition)}.group-table tbody tr:hover{background-color:var(--bg-secondary)}.group-table tbody tr:last-child td{border-bottom:none}.th-drag,.td-drag{width:40px;text-align:center}.th-favorite,.td-favorite{width:50px;text-align:center}.th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.th-sortable:hover{background-color:var(--bg-tertiary)}.sort-header{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.sort-icon{font-size:.75rem;color:var(--text-muted)}.sort-icon.asc,.sort-icon.desc{color:var(--primary)}.th-actions,.td-actions{text-align:right}.drag-handle{display:inline-flex;align-items:center;justify-content:center;cursor:grab;color:var(--text-muted);font-size:1rem;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all var(--transition)}.drag-handle:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.drag-handle:active{cursor:grabbing}.group-row{cursor:default}.group-row.dragging{opacity:.5;background-color:var(--bg-tertiary)}.group-row.drag-over{background-color:var(--primary-light);border-left:3px solid var(--primary)}.favorite-btn{background:none;border:none;font-size:1.25rem;cursor:pointer;color:var(--text-muted);padding:var(--spacing-xs);transition:all var(--transition);line-height:1}.favorite-btn:hover{color:var(--warning);transform:scale(1.1)}.favorite-btn.active{color:var(--warning)}.favorite-row{background-color:#f59e0b0d}.favorite-row:hover{background-color:#f59e0b1a}.group-name-link{font-weight:500;color:var(--text-primary);text-decoration:none}.group-name-link:hover{color:var(--primary)}.group-description{display:block;font-size:.75rem;color:var(--text-muted);margin-top:var(--spacing-xs)}.action-buttons{display:flex;gap:var(--spacing-xs);justify-content:flex-end}@media(max-width:768px){.group-table{font-size:.75rem}.group-table th,.group-table td{padding:var(--spacing-sm)}.hide-mobile,.td-members,.td-tasks{display:none}.th-sortable span.sort-header{flex-direction:column}}@media(max-width:480px){.table-container{border-radius:var(--radius-md)}.action-buttons{flex-direction:column}.action-buttons .btn{width:100%}}.groups-sidebar{width:260px;min-width:260px;max-width:260px;background-color:#f8f8f8;border-right:1px solid #d1d1d1;display:flex;flex-direction:column;height:100%;flex-shrink:0}.group-tree-view{display:flex;flex-direction:column;height:100%;min-width:0;background:#f8f8f8}.groups-sidebar__viewport{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}.tree-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid #d1d1d1;background:#f0f0f0}.tree-header h3{margin:0;font-size:12px;font-weight:600;color:#333;text-transform:uppercase}.tree-add-root-btn{padding:4px 8px;font-size:11px;background:transparent;color:#333;border:1px solid #999;border-radius:2px;cursor:pointer}.tree-add-root-btn:hover{background:#e0e0e0}.tree-content{flex:1;min-height:0;min-width:0;overflow:auto;padding:4px 0}.tree-nodes{padding:0;margin:0}.tree-node-container{-webkit-user-select:none;user-select:none}.tree-node{position:relative}.tree-node__row{display:flex;align-items:center;gap:2px;height:22px;padding:0 8px 0 4px;cursor:pointer;white-space:nowrap}.tree-node__row:hover{background:#e5e5e5}.tree-node.selected .tree-node__row{background:#0078d4;color:#fff}.tree-node__toggle{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:10px;color:#666}.tree-node__toggle--spacer{width:16px}.tree-node__icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;margin-right:2px}.tree-node__label{font-size:13px;color:#333}.tree-node.selected .tree-node__label{color:#fff}.tree-children{margin-left:16px;padding-left:0;border-left:1px solid #ccc}.tree-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:14px;padding:0 4px;font-size:10px;background:#ccc;color:#333;border-radius:7px;margin-left:4px}.tree-node.selected .tree-badge{background:#ffffff4d;color:#fff}.tree-add-btn{width:16px;height:16px;display:none;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:transparent;color:#666;border:none;border-radius:2px;cursor:pointer;margin-left:4px}.tree-node:hover .tree-add-btn{display:flex}.tree-add-btn:hover{background:#0078d4;color:#fff}.drop-indicator{display:flex;align-items:center;gap:4px;padding:2px 8px;background:#0078d4;border-radius:2px}.drop-text{font-size:11px;color:#fff}.tree-loading{display:flex;justify-content:center;padding:20px}.spinner-small{width:16px;height:16px;border:2px solid #ccc;border-top-color:#0078d4;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tree-empty{padding:20px;text-align:center;color:#666;font-size:12px}.tree-empty button{margin-top:8px;padding:6px 12px;background:#0078d4;color:#fff;border:none;border-radius:2px;cursor:pointer;font-size:12px}.tasks-page{display:flex;height:calc(100vh - 60px);overflow:hidden}.tasks-main{flex:1;overflow-y:auto;padding:16px;background:#fff}@media(max-width:768px){.groups-sidebar{width:200px;min-width:200px}}@media(max-width:600px){.groups-sidebar{display:none}}[data-theme=dark] .groups-sidebar{background-color:#1e1e1e;border-right-color:#333}[data-theme=dark] .group-tree-view{background:#1e1e1e}[data-theme=dark] .tree-header{background:#252525;border-bottom-color:#333}[data-theme=dark] .tree-header h3{color:#ccc}[data-theme=dark] .tree-add-root-btn{color:#ccc;border-color:#555}[data-theme=dark] .tree-add-root-btn:hover{background:#333}[data-theme=dark] .tree-node__row:hover{background:#2a2a2a}[data-theme=dark] .tree-node.selected .tree-node__row{background:#0078d4}[data-theme=dark] .tree-node__label{color:#ccc}[data-theme=dark] .tree-node__toggle{color:#888}[data-theme=dark] .tree-children{border-left-color:#444}[data-theme=dark] .tree-badge{background:#444;color:#ccc}[data-theme=dark] .tree-add-btn{color:#888}[data-theme=dark] .tree-add-btn:hover{background:#0078d4}[data-theme=dark] .tree-empty{color:#888}[data-theme=dark] .tasks-main{background:#1e293b}.task-tree-view{display:flex;flex-direction:column;height:100%;background:var(--bg-secondary)}.task-tree-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-color);background:var(--bg-primary)}.task-tree-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary)}.task-tree-actions{display:flex;gap:4px}.task-tree-actions button{padding:4px 8px;font-size:.75rem;background:transparent;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:4px;cursor:pointer}.task-tree-actions button:hover{background:var(--hover-bg)}.task-add-root-btn{padding:6px 12px;font-size:.75rem;background:var(--primary-color);color:#fff;border:none;border-radius:4px;cursor:pointer}.task-tree-content{flex:1;overflow-y:auto;padding:8px 0}.task-tree-nodes{padding:0;margin:0}.task-tree-node-container{-webkit-user-select:none;user-select:none}.task-tree-node{display:flex;align-items:center;gap:8px;padding:6px 12px;cursor:pointer;transition:background .15s;border-left:3px solid transparent}.task-tree-node:hover{background:var(--hover-bg)}.task-tree-node.selected{background:var(--selected-bg);border-left-color:var(--primary-color)}.task-tree-node.level-1{background:#3b82f608}.task-tree-node.level-2{background:#3b82f60f}.task-tree-node.level-3{background:#3b82f617}.task-tree-node.level-4,.task-tree-node.level-4-plus{background:#3b82f61f}.task-expand-btn{width:14px;height:14px;display:flex;align-items:center;justify-content:center;font-size:.5rem;color:var(--text-secondary);flex-shrink:0}.task-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.task-tree-icon{font-size:.75rem;flex-shrink:0}.task-tree-title{flex:1;font-size:.8125rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-tree-title.completed{text-decoration:line-through;color:var(--text-secondary)}.task-priority{font-size:.625rem;color:var(--text-secondary);flex-shrink:0}.task-due-date{font-size:.625rem;padding:2px 6px;background:var(--bg-tertiary);border-radius:3px;color:var(--text-secondary);flex-shrink:0}.task-due-date.overdue{background:#fef2f2;color:#dc2626}.task-tree-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;font-size:.5625rem;font-weight:600;background:var(--accent-color);color:#fff;border-radius:8px;flex-shrink:0}.task-assignee{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.5625rem;font-weight:600;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:50%;flex-shrink:0}.task-add-subtask-btn{width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;background:transparent;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:3px;cursor:pointer;opacity:0;transition:all .15s;flex-shrink:0}.task-tree-node:hover .task-add-subtask-btn{opacity:1}.task-add-subtask-btn:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.task-tree-children{border-left:1px dashed var(--border-color);margin-left:16px}.task-tree-loading{display:flex;justify-content:center;padding:40px}.task-tree-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.task-tree-empty p{color:var(--text-secondary);margin-bottom:16px}.task-tree-empty button{padding:8px 16px;background:var(--primary-color);color:#fff;border:none;border-radius:4px;cursor:pointer}.task-tree-drop-zone-root{padding:12px 16px;margin:4px 8px;border:2px dashed var(--accent-color);border-radius:6px;background:#8b5cf61a;text-align:center;color:var(--accent-color);font-size:.75rem;animation:pulse-border 1s infinite}.task-tree-node.dragging{opacity:.5;background:var(--hover-bg)}.task-tree-node.drop-target{background:#8b5cf626;border-left-color:var(--accent-color);box-shadow:inset 0 0 0 2px var(--accent-color)}.task-drop-indicator{display:flex;align-items:center;gap:8px;padding:4px 8px;margin:2px 0;background:#8b5cf626;border-radius:4px}.task-drop-line{flex:1;height:2px;background:var(--accent-color)}.task-drop-text{font-size:.6875rem;color:var(--accent-color);white-space:nowrap}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--bg-primary);border-radius:8px;padding:24px;width:90%;max-width:480px;max-height:90vh;overflow-y:auto}.modal-content h3{margin:0 0 20px;font-size:1.125rem;color:var(--text-primary)}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:.875rem;font-weight:500;color:var(--text-primary)}.form-group input,.form-group textarea,.form-group select{width:100%;padding:8px 12px;font-size:.875rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--primary-color)}.form-row{display:flex;gap:16px}.form-row .form-group{flex:1}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.modal-actions button{padding:8px 16px;font-size:.875rem;border-radius:4px;cursor:pointer;transition:all .15s}.modal-actions button:not(.primary){background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.modal-actions button:not(.primary):hover{background:var(--hover-bg)}.modal-actions button.primary{background:var(--primary-color);color:#fff;border:none}.modal-actions button.primary:hover{background:var(--primary-hover)}.task-panel-overlay{position:fixed;inset:0;background-color:#00000080;z-index:1000;animation:fadeIn .2s ease}.task-panel{position:fixed;top:0;right:0;width:50vw;max-width:50vw;min-width:520px;height:100vh;background-color:var(--bg-primary);box-shadow:-4px 0 20px #00000026;z-index:1001;display:flex;flex-direction:column;animation:slideInRight .3s ease}.task-panel-content{flex:1;overflow:hidden;padding:0}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:768px){.task-panel{width:100vw;max-width:100vw}}.person-panel-overlay{position:fixed;inset:0;background-color:#00000080;z-index:1000;animation:fadeIn .2s ease}.person-panel{position:fixed;top:0;right:0;width:600px;max-width:90vw;height:100vh;background-color:var(--bg-primary);box-shadow:-4px 0 20px #00000026;z-index:1001;display:flex;flex-direction:column;animation:slideInRight .3s ease}.person-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color);background-color:var(--bg-secondary)}.person-panel-header h2{margin:0;font-size:1.25rem;font-weight:600}.person-panel-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:4px 8px;border-radius:4px;transition:all .2s}.person-panel-close:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.person-panel-content{flex:1;overflow-y:auto;padding:var(--spacing-lg)}.profile-page{max-width:1150px;margin:0 auto;padding:32px 24px 48px}.profile-page__header-card,.profile-page__settings-card{background:var(--bg-primary);border-radius:16px;box-shadow:0 4px 18px #0f172a0f;padding:24px;border:1px solid var(--border-color)}.profile-page__settings-card{margin-top:24px}[data-theme=dark] .profile-page__header-card,[data-theme=dark] .profile-page__settings-card{background:var(--bg-primary);box-shadow:0 4px 18px #0000004d}[data-theme=dark] .profile-header__name{color:var(--text-primary)}[data-theme=dark] .profile-header__email{color:var(--text-secondary)}[data-theme=dark] .profile-header__badge--warning{background:#422006;color:#fbbf24;border-color:#d97706}[data-theme=dark] .profile-photo-card{background:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .profile-photo-card__label{color:var(--text-primary)}[data-theme=dark] .profile-photo-card__hint{color:var(--text-secondary)}[data-theme=dark] .profile-photo-card__preview{background:var(--bg-primary);border-color:#4b5563}[data-theme=dark] .profile-tabs{background:var(--bg-secondary)}[data-theme=dark] .profile-tabs__tab{color:var(--text-secondary)}[data-theme=dark] .profile-tabs__tab:hover{color:var(--text-primary);background:#ffffff1a}[data-theme=dark] .profile-tabs__tab--active{background:var(--bg-primary);color:#60a5fa;box-shadow:0 1px 2px #0000004d}[data-theme=dark] .form-field__label{color:var(--text-primary)}[data-theme=dark] .form-field__input{background:var(--bg-primary);border-color:#4b5563;color:var(--text-primary)}[data-theme=dark] .form-field__input:focus{border-color:#3b82f6}[data-theme=dark] .form-field__input:disabled{background:var(--bg-secondary);color:var(--text-secondary)}[data-theme=dark] .form-field__hint{color:#fbbf24}[data-theme=dark] .form-field__success{color:#4ade80}[data-theme=dark] .form-field__error{color:#f87171}.profile-header{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:start}.profile-header__main{display:flex;align-items:center;gap:20px;min-width:0}.profile-header__avatar img,.profile-header__avatar-placeholder{width:72px;height:72px;border-radius:50%;object-fit:cover;flex-shrink:0}.profile-header__avatar-placeholder{display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px;font-weight:600}.profile-header__identity{min-width:0}.profile-header__name{margin:0 0 6px;font-size:36px;line-height:1.15;font-weight:700;color:#111827}.profile-header__email{margin:0 0 12px;color:#6b7280;font-size:18px}.profile-header__badge{display:inline-flex;align-items:center;min-height:28px;padding:0 12px;border-radius:999px;font-size:13px;font-weight:600;border:1px solid transparent}.profile-header__badge--warning{background:#fff4df;color:#a66300;border-color:#ffd591}.profile-header__actions{flex-shrink:0}.profile-photo-card{border:1px solid #e5e7eb;border-radius:14px;padding:18px;background:#fafafa}.profile-photo-card__label{font-weight:600;margin-bottom:14px;color:#111827}.profile-photo-card__hint{display:block;margin-top:4px;font-size:12px;color:#6b7280;font-weight:400}.profile-photo-card__body{display:flex;align-items:center;gap:16px}.profile-photo-card__preview{width:88px;height:88px;border-radius:50%;border:2px dashed #d1d5db;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fff;flex-shrink:0}.profile-photo-card__preview img{width:100%;height:100%;object-fit:cover}.profile-photo-card__placeholder-icon{display:flex;align-items:center;justify-content:center}.profile-photo-card__buttons{display:flex;flex-direction:column;gap:10px;flex:1}.profile-photo-card__input{display:none}.profile-tabs{display:inline-flex;gap:8px;padding:6px;background:#f3f4f6;border-radius:12px;margin-bottom:24px}.profile-tabs__tab{border:0;background:transparent;padding:10px 16px;border-radius:10px;font-size:14px;font-weight:600;color:#4b5563;cursor:pointer;transition:all .2s ease}.profile-tabs__tab:hover{color:#111827;background:#ffffff80}.profile-tabs__tab--active{background:#fff;color:#2563eb;box-shadow:0 1px 2px #0000000f}.profile-form{display:flex;flex-direction:column;gap:22px}.form-field{display:flex;flex-direction:column;gap:8px}.form-field__label{font-size:14px;font-weight:600;color:#111827}.form-field__input{height:44px;border:1px solid #d1d5db;border-radius:10px;padding:0 14px;font-size:15px;background:#fff;transition:border-color .2s,box-shadow .2s}.form-field__input:focus{outline:none;border-color:#93c5fd;box-shadow:0 0 0 4px #3b82f61f}.form-field__input:disabled{background:#f9fafb;color:#6b7280;cursor:not-allowed}.form-field__helper-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.form-field__hint{font-size:13px;color:#a66300}.form-field__success{font-size:13px;color:#16a34a}.form-field__error{font-size:13px;color:#dc2626;margin-top:4px}.profile-form__actions{display:flex;justify-content:flex-start;margin-top:8px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border-radius:10px;border:1px solid transparent;font-size:14px;font-weight:600;cursor:pointer;transition:.2s ease;text-decoration:none}.btn--primary{background:#4f7df3;color:#fff}.btn--primary:hover{background:#3f6ee8}.btn--primary:disabled{opacity:.6;cursor:not-allowed}.btn--ghost{background:#fff;color:#374151;border-color:#d1d5db}.btn--ghost:hover{background:#f9fafb;border-color:#9ca3af}.btn--ghost:disabled{opacity:.6;cursor:not-allowed}.btn--ghost-danger{background:#fff5f5;color:#c0392b;border-color:#f5c2c7}.btn--ghost-danger:hover{background:#fee2e2;border-color:#f87171}.btn--ghost-danger:disabled{opacity:.6;cursor:not-allowed}[data-theme=dark] .btn--ghost{background:var(--bg-primary);color:var(--text-primary);border-color:#4b5563}[data-theme=dark] .btn--ghost:hover{background:var(--bg-secondary);border-color:#6b7280}[data-theme=dark] .btn--ghost-danger{background:#7f1d1d;color:#fca5a5;border-color:#991b1b}[data-theme=dark] .btn--ghost-danger:hover{background:#991b1b;border-color:#f87171}[data-theme=dark] .btn-outline{background:#334155;color:#e5eefb;border-color:#94a3b8}[data-theme=dark] .btn-outline:hover:not(:disabled){background:#475569;color:#f8fafc;border-color:#cbd5e1}[data-theme=dark] .task-filter-btn.is-active{background:#3b82f6;color:#eff6ff;border-color:#60a5fa;box-shadow:0 0 0 1px #60a5fa59}[data-theme=dark] .task-filter-btn.is-active:hover:not(:disabled){background:#2563eb;color:#fff;border-color:#93c5fd}@media(max-width:900px){.profile-header{grid-template-columns:1fr}.profile-header__actions{width:100%}.profile-photo-card__body{align-items:flex-start;flex-direction:column}.profile-photo-card__buttons,.profile-photo-card__buttons .btn{width:100%}}@media(max-width:640px){.profile-page{padding:20px 16px 32px}.profile-page__header-card,.profile-page__settings-card{padding:20px}.profile-header{gap:24px}.profile-header__main{flex-direction:column;align-items:flex-start;gap:16px}.profile-header__avatar img,.profile-header__avatar-placeholder{width:64px;height:64px;font-size:20px}.profile-header__name{font-size:28px}.profile-header__email{font-size:16px}.profile-tabs{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.profile-tabs__tab{padding:8px 12px;font-size:13px;white-space:nowrap}.form-field__helper-row{flex-direction:column;align-items:flex-start}.form-field__helper-row .btn{width:100%;margin-top:8px}}[data-theme=dark] .cartridge-management{background:var(--bg-primary);min-height:100vh;padding:24px}[data-theme=dark] .cartridge-management h1{color:#e2e8f0}[data-theme=dark] .page-header{background:transparent}[data-theme=dark] .warnings-panel{background:#1e293b;border-color:#475569}[data-theme=dark] .warnings-panel h3{color:#e2e8f0}[data-theme=dark] .warning-item{background:#334155;border-color:#475569;color:#e2e8f0}[data-theme=dark] .tabs-container{background:#1e293b;border-color:#475569}[data-theme=dark] .tab{color:#94a3b8;background:transparent;border-color:#475569}[data-theme=dark] .tab:hover{background:#334155;color:#e2e8f0}[data-theme=dark] .tab.active{background:#334155;color:#e2e8f0;border-color:#3b82f6}[data-theme=dark] .tab-actions{background:#1e293b;border-color:#475569}[data-theme=dark] .filter-input,[data-theme=dark] .filter-select{background:#0f172a;border-color:#475569;color:#e2e8f0}[data-theme=dark] .inventory-table,[data-theme=dark] .history-table,[data-theme=dark] .movements-table,[data-theme=dark] .empty-table,[data-theme=dark] .Printers-table{background:#0f172a;border-color:#334155}[data-theme=dark] .inventory-table th,[data-theme=dark] .history-table th,[data-theme=dark] .movements-table th,[data-theme=dark] .empty-table th,[data-theme=dark] .Printers-table th{background:#1e293b;color:#e2e8f0;border-color:#334155}[data-theme=dark] .inventory-table td,[data-theme=dark] .history-table td,[data-theme=dark] .movements-table td,[data-theme=dark] .empty-table td,[data-theme=dark] .Printers-table td{color:#cbd5e1;border-color:#1e293b;background:#0f172a}[data-theme=dark] .inventory-table tr,[data-theme=dark] .history-table tr,[data-theme=dark] .movements-table tr,[data-theme=dark] .empty-table tr,[data-theme=dark] .Printers-table tr{background:#0f172a}[data-theme=dark] .inventory-table tr:hover,[data-theme=dark] .history-table tr:hover,[data-theme=dark] .movements-table tr:hover,[data-theme=dark] .empty-table tr:hover,[data-theme=dark] .Printers-table tr:hover{background:#1e293b}[data-theme=dark] .empty-state{color:#94a3b8;background:#1e293b}[data-theme=dark] .modal-overlay{background:#000000b3}[data-theme=dark] .modal{background:#1e293b;border-color:#475569}[data-theme=dark] .modal h2{color:#e2e8f0}[data-theme=dark] .form-group label{color:#cbd5e1}[data-theme=dark] .form-group input,[data-theme=dark] .form-group select,[data-theme=dark] .form-group textarea{background:#0f172a;border-color:#475569;color:#e2e8f0}[data-theme=dark] .loading{color:#94a3b8}[data-theme=dark] .status-badge{background:#475569;color:#e2e8f0}[data-theme=dark] .status-badge.status-success{background:#14532d;color:#86efac}[data-theme=dark] .status-badge.status-warning{background:#713f12;color:#fde047}[data-theme=dark] .status-badge.status-info{background:#1e3a8a;color:#93c5fd}[data-theme=dark] .status-badge.status-danger{background:#7f1d1d;color:#fca5a5}[data-theme=dark] .text-danger{color:#fca5a5!important}[data-theme=dark] .text-success{color:#86efac!important}[data-theme=dark] .text-warning{color:#fde047!important}[data-theme=dark] .action-buttons{background:#1e293b}[data-theme=dark] .cartridge-management hr,[data-theme=dark] .cartridge-management .divider,[data-theme=dark] .cartridge-management [style*=border-top],[data-theme=dark] .cartridge-management [style*=border-bottom]{border-color:#334155!important}[data-theme=dark] .email-inbox{background:var(--bg-primary);min-height:100vh;padding:24px}[data-theme=dark] .email-inbox h1{color:#e2e8f0}[data-theme=dark] .email-header{background:transparent}[data-theme=dark] .email-tabs{background:#1e293b;border-color:#334155}[data-theme=dark] .email-tabs .tab{color:#94a3b8;background:transparent;border-color:#334155}[data-theme=dark] .email-tabs .tab:hover{background:#334155;color:#e2e8f0}[data-theme=dark] .email-tabs .tab.active{background:#334155;color:#e2e8f0;border-color:#3b82f6}[data-theme=dark] .email-list{background:#0f172a;border-color:#334155}[data-theme=dark] .email-item{background:#0f172a;border-color:#1e293b;color:#cbd5e1}[data-theme=dark] .email-item:hover{background:#1e293b}[data-theme=dark] .email-item.selected{background:#1e293b;border-color:#3b82f6}[data-theme=dark] .email-item.unread{background:#1e3a5f}[data-theme=dark] .email-item .sender{color:#e2e8f0}[data-theme=dark] .email-item .date{color:#64748b}[data-theme=dark] .email-item .email-subject{color:#e2e8f0}[data-theme=dark] .email-item .email-preview{color:#94a3b8}[data-theme=dark] .email-detail{background:#0f172a;border-color:#334155}[data-theme=dark] .email-detail h2{color:#e2e8f0}[data-theme=dark] .email-detail .email-meta{color:#94a3b8}[data-theme=dark] .email-detail .email-body{color:#cbd5e1;background:#0f172a}[data-theme=dark] .email-detail .email-body *{color:#cbd5e1!important;background-color:transparent!important}[data-theme=dark] .email-detail .email-body p,[data-theme=dark] .email-detail .email-body div,[data-theme=dark] .email-detail .email-body span{color:#cbd5e1!important}[data-theme=dark] .email-detail .email-body h1,[data-theme=dark] .email-detail .email-body h2,[data-theme=dark] .email-detail .email-body h3,[data-theme=dark] .email-detail .email-body h4,[data-theme=dark] .email-detail .email-body h5,[data-theme=dark] .email-detail .email-body h6{color:#e2e8f0!important}[data-theme=dark] .email-detail .email-body a{color:#60a5fa!important;text-decoration:underline}[data-theme=dark] .email-detail .email-body a:hover{color:#93c5fd!important}[data-theme=dark] .email-detail .email-body ul,[data-theme=dark] .email-detail .email-body ol,[data-theme=dark] .email-detail .email-body li{color:#cbd5e1!important}[data-theme=dark] .email-detail .email-body table{border-color:#334155!important;background-color:transparent!important}[data-theme=dark] .email-detail .email-body th,[data-theme=dark] .email-detail .email-body td{border-color:#334155!important;color:#cbd5e1!important;background-color:transparent!important}[data-theme=dark] .email-detail .email-body th{background-color:#1e293b!important;color:#e2e8f0!important}[data-theme=dark] .email-detail .email-body blockquote{border-left-color:#475569!important;color:#94a3b8!important;background-color:#1e293b!important}[data-theme=dark] .email-detail .email-body code{background-color:#1e293b!important;color:#f87171!important;padding:2px 6px;border-radius:4px}[data-theme=dark] .email-detail .email-body pre{background-color:#1e293b!important;color:#cbd5e1!important;border-color:#334155!important;padding:12px;border-radius:6px;overflow-x:auto}[data-theme=dark] .email-detail .email-body pre code{background-color:transparent!important;padding:0}[data-theme=dark] .email-detail .email-body strong,[data-theme=dark] .email-detail .email-body b{color:#e2e8f0!important;font-weight:600}[data-theme=dark] .email-detail .email-body em,[data-theme=dark] .email-detail .email-body i{color:#94a3b8!important;font-style:italic}[data-theme=dark] .email-detail .email-body hr{border-color:#334155!important;background-color:#334155!important}[data-theme=dark] .email-detail .email-body img{opacity:.9}[data-theme=dark] .email-detail .email-body address{color:#94a3b8!important}[data-theme=dark] .email-detail .email-body abbr{color:#60a5fa!important}[data-theme=dark] .email-detail .email-body cite{color:#94a3b8!important}[data-theme=dark] .email-detail .email-body dfn{color:#e2e8f0!important}[data-theme=dark] .email-detail .email-body kbd{background-color:#1e293b!important;color:#cbd5e1!important;border-color:#334155!important}[data-theme=dark] .email-detail .email-body samp{background-color:#1e293b!important;color:#cbd5e1!important}[data-theme=dark] .email-detail .email-body var{color:#94a3b8!important;font-style:italic}[data-theme=dark] .email-detail .email-body ul li::marker,[data-theme=dark] .email-detail .email-body ol li::marker{color:#64748b!important}[data-theme=dark] .email-detail .email-body input,[data-theme=dark] .email-detail .email-body button,[data-theme=dark] .email-detail .email-body textarea,[data-theme=dark] .email-detail .email-body select{background-color:#1e293b!important;color:#cbd5e1!important;border-color:#334155!important}[data-theme=dark] .email-attachments{background:#1e293b!important}[data-theme=dark] .email-attachments h4{color:#94a3b8!important}[data-theme=dark] .email-attachments a{background:#0f172a!important;border-color:#334155!important;color:#e2e8f0!important}[data-theme=dark] .email-attachments a:hover{background:#1e293b!important;border-color:#475569!important}[data-theme=dark] .email-placeholder{background:#0f172a;color:#64748b}[data-theme=dark] .email-inbox .loading,[data-theme=dark] .email-inbox .empty{color:#64748b}[data-theme=dark] .compose-modal{background:#000000b3}[data-theme=dark] .compose-content{background:#1e293b;border-color:#334155}[data-theme=dark] .compose-content h2{color:#e2e8f0}[data-theme=dark] .compose-content .form-group label{color:#cbd5e1}[data-theme=dark] .compose-content .form-input,[data-theme=dark] .compose-content .form-textarea{background:#0f172a;border-color:#334155;color:#e2e8f0}[data-theme=dark] .email-inbox .compose-btn{background:#3b82f6;color:#fff}[data-theme=dark] .email-inbox .delete-btn{background:#dc2626;color:#fff}[data-theme=dark] .email-inbox .reply-btn{background:#3b82f6;color:#fff}[data-theme=dark] .email-inbox .cancel-btn{background:#334155;color:#e2e8f0}[data-theme=dark] .email-inbox .send-btn{background:#3b82f6;color:#fff}[data-theme=dark] .signature-textarea{background-color:#1e293b!important;color:#e2e8f0!important;border-color:#334155!important}[data-theme=dark] .signature-textarea::placeholder{color:#64748b!important}[data-theme=dark] .save-signature-btn{background:#3b82f6;color:#fff}[data-theme=dark] .save-signature-btn:hover:not(:disabled){background:#2563eb}[data-theme=dark] .form-hint{color:#94a3b8!important}[data-theme=dark] .email-inbox .form-group input[type=file]+label{background:#334155;color:#e2e8f0}[data-theme=dark] .email-inbox .compose-content .form-group div[style*=background]{background:#1e293b!important}[data-theme=dark] .chat-page{background:var(--bg-primary);height:100%}[data-theme=dark] .chat-sidebar{background:#1e293b;border-color:#334155}[data-theme=dark] .chat-sidebar h1{color:#e2e8f0}[data-theme=dark] .conversations-list{background:#0f172a}[data-theme=dark] .conversation-item{background:#0f172a;border-color:#1e293b;color:#cbd5e1}[data-theme=dark] .conversation-item:hover{background:#1e293b}[data-theme=dark] .conversation-item.active{background:#1e293b;border-color:#3b82f6}[data-theme=dark] .conversation-name{color:#e2e8f0}[data-theme=dark] .conversation-preview{color:#94a3b8}[data-theme=dark] .chat-main{background:#0f172a;height:100%}[data-theme=dark] .chat-header{background:#1e293b;border-color:#334155}[data-theme=dark] .chat-user-name{color:#e2e8f0}[data-theme=dark] .chat-user-status{color:#94a3b8}[data-theme=dark] .messages-container{background:#0f172a;min-height:0}[data-theme=dark] .message-input-form{background:#1e293b;border-color:#334155;border-top:1px solid #334155}[data-theme=dark] .message.sent .message-content{background:#3b82f6;color:#fff}[data-theme=dark] .message.received .message-content{background:#1e293b;color:#e2e8f0}[data-theme=dark] .message-time{color:#cbd5e1}[data-theme=dark] .message-input{background:#1e293b;border-color:#334155;color:#e2e8f0}[data-theme=dark] .message-input::placeholder{color:#64748b}[data-theme=dark] .message-input-form .send-btn{background:#3b82f6;color:#fff}[data-theme=dark] .no-chat-selected{background:#0f172a;color:#64748b}[data-theme=dark] .new-chat-modal{background:#000000b3}[data-theme=dark] .new-chat-content{background:#1e293b;border-color:#334155}[data-theme=dark] .new-chat-content h2{color:#e2e8f0}[data-theme=dark] .users-list{background:#0f172a}[data-theme=dark] .user-item{background:#0f172a;border-color:#1e293b}[data-theme=dark] .user-item:hover{background:#1e293b}[data-theme=dark] .user-name{color:#e2e8f0}[data-theme=dark] .user-email{color:#94a3b8}[data-theme=dark] .chat-page .settings-btn,[data-theme=dark] .chat-page .new-chat-btn,[data-theme=dark] .chat-page .close-btn{background:#334155;color:#e2e8f0}[data-theme=dark] .chat-page .total-unread-badge,[data-theme=dark] .chat-page .unread-badge{background:#dc2626;color:#fff}[data-theme=dark] .chat-page .loading,[data-theme=dark] .chat-page .empty{color:#64748b}[data-theme=dark] .low-stock{background:#713f124d}
