@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--primary: #86d6ff;--primary-light: #d1fdff;--primary-dark: #68a8cc;--primary-transparent: rgba(134, 214, 255, .1);--primary-50: #f0f9ff;--primary-100: #e0f2fe;--primary-200: #bae6fd;--primary-300: #7dd3fc;--primary-400: #38bdf8;--primary-500: #0ea5e9;--primary-600: #0284c7;--primary-700: #0369a1;--primary-800: #075985;--primary-900: #0c4a6e;--secondary: #d1fdff;--secondary-light: #e5feff;--secondary-dark: #a5cad0;--accent: #86d6ff;--accent-light: #a8e0ff;--accent-dark: #68a8cc;--success: #86d6ff;--warning: #d1fdff;--error: #0e1b36;--info: #86d6ff;--gray-50: #e2e2e2;--gray-100: #e2e2e2;--gray-200: #d1d1d1;--gray-300: #bcbcbc;--gray-400: #a0a0a0;--gray-500: #76777c;--gray-600: #5a5b5f;--gray-700: #3e3f44;--gray-800: #232429;--gray-900: #0e1b36;--surface-light: #e2e2e2;--surface-light-hover: #d1d1d1;--surface-dark: #0e1b36;--surface-dark-hover: #152442;--text-light: #e2e2e2;--text-light-secondary: #bcbcbc;--text-dark: #0e1b36;--text-dark-secondary: #3e3f44;--blue-dark: #0056b3;--blue-light: #4dabf7;--blue-primary: #0088ff;--white: #ffffff;--black-light: #1a1a1a;--black-medium: #121212;--gray-dark: #333333;--spacing-xxs: .125rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--spacing-4xl: 5rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--border-thin: 1px;--border-medium: 2px;--border-thick: 3px;--z-dropdown: 200;--z-modal: 1000;--z-tooltip: 1010;--z-notification: 1020;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--duration-instant: .1s;--duration-fast: .2s;--duration-normal: .3s;--duration-slow: .4s;--duration-slower: .5s;--input-height-sm: 32px;--input-height-md: 40px;--input-height-lg: 48px;--task-border-left: var(--primary);--task-border-expired: #e53935;--task-border-upcoming: #f57c00;--wip-exceeded: #ef4444;--backdrop-opacity: .5;--backdrop-blur: blur(4px);--surface-elevation-1: var(--shadow-sm);--surface-elevation-2: var(--shadow-md);--surface-elevation-3: var(--shadow-lg);--focus-ring: 0 0 0 2px var(--primary-500);--focus-ring-offset: 0 0 0 2px white;--form-bg: #ffffff;--form-bg-secondary: #f9f9fb;--form-bg-tertiary: #f5f5f5;--border-color: rgba(118, 119, 124, .2);--border-color-focus: #86d6ff;--border-color-secondary: #76777c;--text-placeholder: #76777c;--text-muted: #76777c;--text-disabled: #76777c;--bg-disabled: #e2e2e2;--bg-hover-light: rgba(14, 27, 54, .1);--bg-accent: #d1fdff;--bg-accent-hover: #86d6ff;--shadow-color: rgba(14, 27, 54, .15);--shadow-color-light: rgba(14, 27, 54, .1);--overlay-bg: rgba(14, 27, 54, .5);--overlay-bg-dark: rgba(14, 27, 54, .7);--delete-color: #e53935;--delete-color-hover: #d32f2f;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,Poppins,Roboto,sans-serif}:focus-visible{outline:none;box-shadow:var(--focus-ring-offset),var(--focus-ring)}body{margin:0;display:flex;min-width:320px;min-height:100vh;background-color:#ecdedef1;background-image:radial-gradient(circle at 20% 20%,rgba(0,170,255,.05) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(0,255,98,.05) 0%,transparent 50%);color:#516899}a{font-weight:500;color:#000;text-decoration:inherit;transition:color .2s ease}a:hover{color:#68a8cc}h1{font-size:2.2rem;line-height:1.1;color:#0e1b36;font-weight:700;margin-bottom:1.5rem}button{border-radius:.375rem;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#e2e2e2;color:#0e1b36;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0e1b360d}button:hover{border-color:#86d6ff;background-color:#d1d1d1}button:focus,button:focus-visible{outline:3px solid rgba(134,214,255,.3)}@media (max-width: 768px){h1{font-size:1.8rem;margin-bottom:1rem}button{padding:.5em 1em;font-size:.9em}body{padding:0 .5rem}}@media (prefers-color-scheme: dark){:root{--surface-light: #121825;--surface-light-hover: #1a2944;--text-dark: #e2e2e2;--text-dark-secondary: #bcbcbc;--form-bg: #1a1f2b;--form-bg-secondary: #1a2944;--form-bg-tertiary: #2a3a54;--bg-accent: #152442;--bg-accent-hover: #1a2944;--text-placeholder: #9ca3af;--overlay-bg: rgba(0, 0, 0, .5);--overlay-bg-dark: rgba(0, 0, 0, .7)}body{background-color:#0e1b36;background-image:radial-gradient(circle at 20% 20%,rgba(0,170,255,.03) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(0,255,98,.03) 0%,transparent 50%);color:#a0a0a0}a{color:#86d6ff}a:hover{color:#d1fdff}h1{color:#e2e2e2}button{background-color:#1a2944;color:#e2e2e2;border-color:#232429;box-shadow:0 1px 2px #0003}button:hover{border-color:#86d6ff;background-color:#152442}button:focus,button:focus-visible{outline:3px solid rgba(134,214,255,.2)}input,select,textarea{background-color:#1a2944;color:#e2e2e2;border-color:#3e3f44}input:focus,select:focus,textarea:focus{border-color:#86d6ff;outline:none}::placeholder{color:#76777c}}@media (hover: none){button:hover,a:hover,.menu-item:hover{transform:none}button:active,a:active,.menu-item:active{transform:translateY(-2px);border-color:#86d6ff}a,button,.nav-link,.menu-item{padding:.7em 1.3em}}.language-switcher{position:relative;display:inline-block;margin-right:15px;z-index:200}.language-switcher-button{display:flex;align-items:center;font-weight:500;color:var(--gray-700);padding:.5rem .75rem;border-radius:.375rem;background:transparent;border:none;cursor:pointer;transition:all .2s ease;font-size:.9rem;min-width:100px;justify-content:space-between}.language-switcher-button:hover{background-color:#86d6ff33;color:#86d6ff}.dropdown-arrow{font-size:10px;margin-left:8px;transition:transform .2s}.current-language{font-weight:500}.language-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background-color:#fff;border:1px solid #ccc;border-radius:.375rem;box-shadow:0 2px 10px #0000001a;width:auto;min-width:140px;max-height:300px;overflow-y:auto;z-index:201;display:grid;grid-template-columns:1fr;animation:dropdownFadeIn .2s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.language-dropdown button{display:block;width:100%;text-align:left;background:none;border:none;border-bottom:1px solid #eee;padding:8px 16px;cursor:pointer;font-size:14px;transition:background-color .2s;color:var(--gray-700)}.language-dropdown button:last-child{border-bottom:none}.language-dropdown button:hover{background-color:#86d6ff33;color:#86d6ff}.language-dropdown button.active{background-color:#86d6ff1a;font-weight:700;color:#86d6ff}.header-left,.header-right{display:flex;align-items:center}@media (max-width: 768px){.language-switcher{margin-right:10px}.language-switcher-button{padding:.4rem .6rem;font-size:.85rem;min-width:80px}.language-dropdown{max-height:250px;width:200px;right:-20px}@media (max-width: 480px){.language-dropdown{width:240px;grid-template-columns:1fr 1fr;right:-50px}}}@media (prefers-color-scheme: dark){.language-switcher-button{color:var(--gray-300)}.language-switcher-button:hover{background-color:#86d6ff26;color:var(--primary)}.language-dropdown{background-color:var(--surface-dark);border-color:var(--gray-800)}.language-dropdown button{color:var(--gray-300);border-bottom-color:var(--gray-800)}.language-dropdown button:hover{background-color:#86d6ff26;color:var(--primary)}.language-dropdown button.active{background-color:#86d6ff1a;color:var(--primary)}}.home-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:#f5f5f5}.auth-container{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:2rem;width:400px;max-width:90%}.auth-container h1{text-align:center;margin-bottom:2rem;color:#333}.tabs{display:flex;margin-bottom:2rem}.tabs button{flex:1;background:none;border:none;padding:10px;font-size:16px;cursor:pointer;border-bottom:2px solid #ddd;transition:all .3s}.tabs button.active{border-bottom-color:#007bff;color:#007bff}.form-group{margin-bottom:1.5rem}.auth-container .form-group input{width:100%;padding:12px 14px;border:1px solid #ddd;border-radius:4px;font-size:16px;background:#fff;color:#333;box-sizing:border-box;display:block;line-height:1.2;font-family:inherit;appearance:none;-webkit-appearance:none;-moz-appearance:none}.auth-container .form-group input:-webkit-autofill,.auth-container .form-group input:-webkit-autofill:hover,.auth-container .form-group input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px #fff inset;box-shadow:0 0 0 1000px #fff inset;-webkit-text-fill-color:#333;caret-color:#333}.auth-container .form-group input:focus{border-color:#007bff;outline:none}.recaptcha-wrapper{margin-top:10px;display:flex;justify-content:flex-start;padding:0 12px;align-items:center;min-height:78px}.recaptcha-wrapper>div{box-sizing:border-box;transform:none!important;max-width:420px;transition:none!important;opacity:1!important}.recaptcha-wrapper.loading,.recaptcha-inner{position:relative}.captcha-spinner-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#ffffffb3;border:1px solid #e0e0e0;border-radius:4px;z-index:2}.recaptcha-wrapper.hidden{height:0;min-height:0;overflow:hidden;padding:0 12px}.recaptcha-wrapper.hidden>div{opacity:0!important;pointer-events:none}@media (max-width: 420px){.recaptcha-wrapper{padding:0 8px}}button[type=submit]{width:100%;padding:12px;background-color:#007bff;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}button[type=submit]:hover{background-color:#0056b3}button[type=submit]:disabled{background-color:#ccc;cursor:not-allowed}.auth-button{width:100%;padding:12px 14px;background-color:#007bff;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:4px}.auth-container .auth-button{min-height:48px;line-height:1.2}.shared-submit{margin-top:4px}.auth-button:hover{background-color:#0056b3}.auth-button:disabled{background-color:#ccc;cursor:not-allowed}.error-message{color:#dc3545;margin-bottom:1rem;font-size:14px}.verification-form{text-align:center}.verification-form h2{margin-bottom:1rem}.verification-form p{margin-bottom:2rem;color:#666}.resend-link{margin-top:1rem;font-size:14px}.resend-link span{color:#007bff;cursor:pointer;text-decoration:underline}.loading-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite;margin-right:8px;vertical-align:middle}.long-loading-message{font-size:.8rem;margin-top:8px;color:#888;animation:pulse 1.5s infinite}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.task-details-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--overlay-bg);z-index:var(--z-modal);animation:overlay-appear var(--duration-fast) ease-out}.task-details-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:95%;max-width:900px;max-height:85vh;background-color:var(--surface-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);z-index:calc(var(--z-modal) + 1);overflow-y:auto;animation:panel-appear var(--duration-normal) ease-out;display:grid;grid-template-columns:1fr 200px;grid-template-rows:auto 1fr auto;grid-template-areas:"header header" "main labels" "users users"}@keyframes overlay-appear{0%{opacity:0}to{opacity:1}}@keyframes panel-appear{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.task-details-panel::-webkit-scrollbar{width:6px}.task-details-panel::-webkit-scrollbar-track{background:transparent}.task-details-panel::-webkit-scrollbar-thumb{background-color:var(--gray-500);border-radius:var(--radius-full)}.task-details-panel.loading{display:flex;justify-content:center;align-items:center;height:200px}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg) var(--spacing-xl);border-bottom:var(--border-thin) solid var(--gray-500);background-color:var(--bg-accent);border-radius:var(--radius-xl) var(--radius-xl) 0 0;grid-area:header}.panel-header h3{margin:0;font-size:var(--text-lg);font-weight:600;flex:1;color:var(--text-dark)}.panel-actions{display:flex;align-items:center;gap:var(--spacing-md)}.assign-user-icon{background:none;border:none;width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-dark);border-radius:var(--radius-md);padding:0;transition:all var(--transition-fast)}.assign-user-icon:hover{background-color:var(--bg-accent-hover);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-color-light)}.assign-user-icon svg{width:18px;height:18px}.close-panel-btn{background:none;border:none;font-size:24px;line-height:1;cursor:pointer;color:var(--text-dark);padding:0 5px;transition:all var(--transition-fast)}.close-panel-btn:hover{color:var(--gray-500);transform:scale(1.1)}.assign-user-dropdown{background-color:var(--bg-accent);border-bottom:var(--border-thin) solid var(--gray-500);padding:var(--spacing-md) var(--spacing-xl);animation:dropdown-appear var(--duration-normal) ease-out}@keyframes dropdown-appear{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.dropdown-header h4{margin:0;font-size:15px;font-weight:600;color:var(--text-dark)}.close-dropdown{background:none;border:none;font-size:16px;cursor:pointer;color:var(--text-dark);transition:color var(--transition-fast)}.close-dropdown:hover{color:var(--gray-500)}.assign-user-dropdown select{width:100%;padding:10px 12px;border:var(--border-thin) solid var(--border-color-secondary);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);font-size:var(--text-sm);background-color:var(--surface-light);color:var(--text-dark);transition:all var(--transition-fast)}.assign-user-dropdown select:focus{border-color:var(--border-color-focus);outline:none;box-shadow:0 0 0 3px #86d6ff40}.assign-btn{background-color:var(--bg-accent-hover);color:var(--text-dark);border:none;padding:10px 18px;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:600;transition:all var(--transition-fast)}.assign-btn:hover{background-color:var(--bg-accent);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-color-light)}.assign-btn:disabled{background-color:var(--gray-500);color:var(--surface-light);cursor:not-allowed;transform:none;box-shadow:none}.assigned-users-bar{display:flex;align-items:center;padding:var(--spacing-md) var(--spacing-xl);background-color:var(--bg-accent);border-top:var(--border-thin) solid var(--gray-500);grid-area:users}.assigned-users-bar span{font-size:var(--text-base);font-weight:500;color:var(--text-dark);margin-right:var(--spacing-sm)}.avatar-list{display:flex;flex-wrap:wrap;gap:10px}.avatar-item{position:relative}.avatar-item .user-avatar{width:34px;height:34px;border-radius:var(--radius-full);overflow:hidden;border:var(--border-medium) solid var(--surface-light);box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.avatar-item .user-avatar:hover{transform:scale(1.1);box-shadow:var(--shadow-md)}.avatar-item .remove-user-btn{position:absolute;top:-4px;right:-4px;width:14px;height:14px;background-color:var(--text-dark);color:var(--surface-light);border:none;border-radius:var(--radius-full);font-size:10px;line-height:0;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:all var(--transition-fast);padding:0}.avatar-item:hover .remove-user-btn{opacity:1}.avatar-preview{width:100%;height:100%;object-fit:cover}.subtasks-section{padding:var(--spacing-xl)}.subtasks-section h4{margin:0 0 var(--spacing-lg) 0;font-size:var(--text-lg);font-weight:600;color:var(--text-dark)}.add-subtask-form{display:flex;margin-bottom:var(--spacing-xl)}.subtask-input{flex-grow:1;padding:var(--spacing-sm) var(--spacing-md);border:var(--border-thin) solid var(--border-color-secondary);border-radius:var(--radius-md) 0 0 var(--radius-md);font-size:var(--text-sm);background-color:var(--surface-light);color:var(--text-dark);transition:all var(--transition-fast)}.subtask-input:focus{outline:none;border-color:var(--border-color-focus);box-shadow:0 0 0 3px #86d6ff40}.add-subtask-btn{background-color:var(--bg-accent-hover);color:var(--text-dark);border:none;padding:var(--spacing-sm) var(--spacing-xl);border-radius:0 var(--radius-md) var(--radius-md) 0;cursor:pointer;font-weight:600;transition:all var(--transition-fast)}.add-subtask-btn:hover{background-color:var(--bg-accent)}.add-subtask-btn:disabled{background-color:var(--gray-500);color:var(--surface-light);cursor:not-allowed}.subtasks-list{margin-top:var(--spacing-sm);max-height:40vh;overflow-y:auto}.subtask-item{display:flex;flex-direction:column;padding:var(--spacing-md);background-color:var(--bg-accent);border-radius:var(--radius-md);margin-bottom:10px;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.subtask-item:hover{background-color:var(--bg-accent-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.subtask-header{display:flex;align-items:center;width:100%;position:relative}.subtask-checkbox{margin-left:1px;width:16px;height:18px;cursor:pointer;accent-color:var(--text-dark);flex:0 0 auto}.subtask-item label{flex-grow:1;margin:0 0 0 var(--spacing-xs);cursor:pointer;padding:2px 0;font-size:var(--text-sm);color:var(--text-dark);transition:all var(--transition-fast);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subtask-item label.completed{text-decoration:line-through;color:var(--gray-500)}.subtask-actions{display:flex;align-items:center;gap:var(--spacing-xs);margin-left:auto;flex-shrink:0}.description-toggle-btn{background:none;border:none;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-dark);transition:all var(--transition-fast)}.description-toggle-btn:hover{background-color:var(--bg-hover-light);transform:scale(1.1)}.delete-subtask-btn{background:none;border:none;font-size:18px;cursor:pointer;color:var(--text-dark);width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.delete-subtask-btn:hover{background-color:var(--bg-hover-light);color:var(--delete-color);transform:scale(1.1)}.subtask-description-container{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:var(--border-thin) dashed var(--gray-500);animation:description-appear var(--duration-normal) ease-out}@keyframes description-appear{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.description-display{background-color:#ffffff80;border-radius:var(--radius-md);padding:var(--spacing-sm)}.description-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.description-header h5{margin:0;font-size:var(--text-sm);font-weight:600;color:var(--text-dark)}.edit-description-btn{background:none;border:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-dark);transition:all var(--transition-fast);padding:0}.edit-description-btn:hover{background-color:var(--bg-hover-light);transform:scale(1.1)}.edit-description-btn svg{width:14px;height:14px}.description-content{margin:0;font-size:var(--text-sm);line-height:1.5;color:var(--text-dark);word-break:break-word}.empty-description{margin:0;font-size:var(--text-sm);font-style:italic;color:var(--text-muted)}.description-edit-form{display:flex;flex-direction:column;gap:10px}.description-textarea{width:100%;padding:10px var(--spacing-sm);border:var(--border-thin) solid var(--border-color-secondary);border-radius:var(--radius-md);font-size:var(--text-sm);background-color:var(--surface-light);color:var(--text-dark);resize:vertical;min-height:80px;transition:all var(--transition-fast)}.description-textarea:focus{outline:none;border-color:var(--border-color-focus);box-shadow:0 0 0 3px #86d6ff40}.description-edit-actions{display:flex;justify-content:flex-end;gap:10px}.save-description-btn,.cancel-edit-btn{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-xs);font-weight:600;transition:all var(--transition-fast)}.save-description-btn{background-color:var(--bg-accent-hover);color:var(--text-dark);border:none}.save-description-btn:hover{background-color:var(--bg-accent);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-color-light)}.cancel-edit-btn{background-color:var(--surface-light);color:var(--text-dark);border:var(--border-thin) solid var(--border-color-secondary)}.cancel-edit-btn:hover{background-color:var(--bg-accent);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-color-light)}.no-subtasks{padding:30px;color:var(--text-muted);font-style:italic;text-align:center;background-color:var(--bg-accent);border-radius:var(--radius-md);border:var(--border-thin) dashed var(--text-muted)}.success-message{position:fixed;bottom:20px;right:20px;padding:var(--spacing-md) var(--spacing-xl);background-color:var(--bg-accent-hover);color:var(--text-dark);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:message-appear var(--duration-normal) ease-out;z-index:var(--z-tooltip)}@keyframes message-appear{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.delete-confirmation-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--overlay-bg-dark);z-index:var(--z-tooltip);display:flex;justify-content:center;align-items:center;opacity:1;animation:overlay-appear var(--duration-normal) ease-out forwards;will-change:opacity;visibility:visible!important}.delete-confirmation-dialog{background-color:var(--surface-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:var(--spacing-xl) 24px;width:90%;max-width:400px;visibility:visible!important;transform:translateY(0);opacity:1;animation:dialog-appear var(--duration-normal) ease-out forwards;will-change:transform,opacity}@keyframes dialog-appear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.delete-confirmation-dialog h4{margin:0 0 var(--spacing-lg) 0;font-size:var(--text-lg);font-weight:600;color:var(--text-dark)}.delete-confirmation-dialog p{margin:0 0 var(--spacing-xl) 0;font-size:var(--text-sm);line-height:1.6;color:var(--text-dark)}.delete-confirmation-dialog strong{color:var(--text-dark);font-weight:600}.confirmation-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md)}.confirmation-actions button{padding:10px 18px;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.cancel-btn{background-color:var(--surface-light);color:var(--text-dark);border:var(--border-thin) solid var(--border-color-secondary)}.cancel-btn:hover{background-color:var(--bg-accent);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-color-light)}.confirm-btn{background-color:var(--delete-color);color:var(--surface-light);border:none}.confirm-btn:hover{background-color:var(--delete-color-hover);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-color-light)}.subtask-item.expanded{background-color:var(--bg-accent-hover)}.subtasks-list::-webkit-scrollbar{width:6px}.subtasks-list::-webkit-scrollbar-track{background:transparent}.subtasks-list::-webkit-scrollbar-thumb{background-color:var(--gray-500);border-radius:var(--radius-full)}.dark-bg-with-text{width:auto;padding:2px var(--spacing-xs);background-color:var(--bg-accent);border:var(--border-thin) solid var(--bg-accent-hover);color:var(--text-dark);display:flex;align-items:center;gap:5px}.dark-bg-with-text:hover{background-color:var(--bg-accent-hover)}.arrow-icon{font-size:10px;transition:transform var(--transition-fast)}.arrow-icon.rotated{transform:rotate(180deg)}.button-text{font-size:var(--text-xs);font-weight:500}.task-labels-section{grid-area:labels;padding:var(--spacing-md);min-height:200px;background-color:var(--form-bg-tertiary);height:100%;border-left:var(--border-thin) solid var(--gray-500);overflow-y:auto}.task-labels-section h4{margin:0 0 var(--spacing-sm) 0;font-size:var(--text-sm);color:var(--text-dark);font-weight:600}.task-labels{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);align-items:center}.labels-container{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.label{display:inline-flex;align-items:center;padding:4px var(--spacing-xs);border-radius:var(--radius-xl);font-size:var(--text-xs);-webkit-user-select:none;user-select:none}.add-label-button{padding:2px var(--spacing-xs);border:var(--border-thin) dashed #ccc;border-radius:var(--radius-xl);background:none;cursor:pointer;color:#666;font-size:var(--text-xs);transition:all var(--transition-fast)}.add-label-button:hover{background-color:var(--form-bg-tertiary);border-color:#999}.label-picker{position:absolute;background-color:var(--form-bg);border:var(--border-thin) solid #ddd;border-radius:var(--radius-sm);padding:var(--spacing-xs) 0;box-shadow:var(--shadow-md);z-index:var(--z-modal);min-width:150px}.label-picker div{padding:6px var(--spacing-sm);cursor:pointer;display:flex;align-items:center;gap:var(--spacing-xs);transition:background-color var(--transition-fast)}.label-picker div:hover{background-color:var(--form-bg-tertiary)}.task-details-main,.task-labels-section{overflow-y:auto;max-height:calc(85vh - 100px)}.title-edit-form{display:flex;flex-direction:column;width:100%;gap:10px}.title-input{padding:var(--spacing-xs) var(--spacing-sm);border:var(--border-thin) solid var(--border-color-secondary);border-radius:var(--radius-md);font-size:var(--text-base);font-weight:600;background-color:var(--surface-light);color:var(--text-dark);width:100%}.title-input:focus{outline:none;border-color:var(--border-color-focus);box-shadow:0 0 0 3px #86d6ff40}.title-edit-actions{display:flex;justify-content:flex-end;gap:10px}.save-title-btn,.cancel-title-btn{padding:6px var(--spacing-sm);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-xs);font-weight:600;transition:all var(--transition-fast)}.save-title-btn{background-color:var(--bg-accent-hover);color:var(--text-dark);border:none}.save-title-btn:hover{background-color:var(--bg-accent);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-color-light)}.save-title-btn:disabled{background-color:var(--gray-500);color:var(--surface-light);cursor:not-allowed;transform:none;box-shadow:none}.cancel-title-btn{background-color:var(--surface-light);color:var(--text-dark);border:var(--border-thin) solid var(--border-color-secondary)}.cancel-title-btn:hover{background-color:var(--bg-accent);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-color-light)}.edit-title-btn{background:none;border:none;width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-dark);border-radius:var(--radius-md);padding:0;transition:all var(--transition-fast)}.edit-title-btn:hover{background-color:var(--bg-accent-hover);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-color-light)}.edit-title-btn svg{width:18px;height:18px}.task-description-section .description-header{display:flex;justify-content:center;align-items:center;margin-bottom:var(--spacing-xs);position:relative}.task-description-section .description-header h4{margin:0;text-align:center}.task-description-section .description-header .edit-description-btn{position:absolute;right:0}.task-parent-section{margin-top:20px;padding:15px;background-color:var(--primary-transparent);border-radius:var(--radius-lg)}.task-parent-section h4{margin-top:0;margin-bottom:10px}.current-parent-task{display:flex;align-items:center;justify-content:space-between;background-color:#86d6ff33;padding:10px;border-radius:var(--radius-sm);margin-bottom:10px}.no-parent{color:var(--text-muted);font-style:italic;margin-bottom:15px}.assign-parent-btn{background-color:var(--text-dark);color:var(--form-bg);border:none;border-radius:var(--radius-sm);padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;font-size:var(--text-xs);transition:background-color var(--transition-fast);margin:5px 0}.assign-parent-btn:hover{background-color:var(--surface-dark-hover)}.remove-parent-btn{color:var(--delete-color);background:none;border:var(--border-thin) solid var(--delete-color);border-radius:var(--radius-sm);padding:5px var(--spacing-xs);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast)}.remove-parent-btn:hover{background-color:var(--delete-color);color:var(--form-bg)}.parent-selector{margin-top:10px;padding:10px;background-color:var(--form-bg);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.parent-selector select{width:100%;padding:var(--spacing-xs);margin-bottom:10px;border:var(--border-thin) solid #d1d1d1;border-radius:var(--radius-sm)}.parent-selector-actions{display:flex;justify-content:flex-end;gap:10px}.confirm-parent-btn,.cancel-parent-btn{padding:6px var(--spacing-sm);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-xs);border:none}.confirm-parent-btn{background-color:var(--text-dark);color:var(--form-bg)}.cancel-parent-btn{background-color:var(--surface-light);color:var(--text-dark)}.child-tasks-section{margin-top:15px}.child-tasks-section h5{margin-bottom:10px;color:var(--text-dark)}.child-tasks-list{list-style-type:none;padding-left:0}.child-task-item{background-color:#86d6ff26;padding:var(--spacing-xs) var(--spacing-sm);margin-bottom:5px;border-radius:var(--radius-sm);font-size:var(--text-xs)}.task-deadline-section{padding:var(--spacing-lg) var(--spacing-xl);border-bottom:var(--border-thin) solid var(--gray-500);background-color:var(--primary-transparent)}.deadline-header{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.deadline-icon{color:var(--text-dark)}.deadline-content{font-size:var(--text-base);font-weight:500;color:var(--text-dark);padding:6px var(--spacing-sm);background-color:#ffffff80;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:space-between}.deadline-content.expired{color:var(--delete-color);background-color:#e539351a}.expired-tag{background-color:var(--delete-color);color:var(--form-bg);padding:2px var(--spacing-xs);border-radius:var(--radius-xl);font-size:var(--text-xs);font-weight:600}.empty-deadline{margin:0;font-size:var(--text-sm);font-style:italic;color:var(--text-muted)}.deadline-content.upcoming{color:var(--task-border-upcoming);background-color:#f57c001a}.upcoming-tag{background-color:var(--task-border-upcoming);color:var(--form-bg);padding:2px var(--spacing-xs);border-radius:var(--radius-xl);font-size:var(--text-xs);font-weight:600;margin-left:var(--spacing-xs)}.column-history-section{margin-top:15px;padding-top:15px;border-top:var(--border-thin) solid #e0e0e0}.column-history-content{margin-bottom:20px}.column-history-list{list-style:none;padding:0;margin:0 0 15px}.column-history-item{display:flex;align-items:center;margin-bottom:var(--spacing-xs)}.column-name{display:flex;flex-direction:column;font-size:var(--text-sm)}.column-time{font-size:var(--text-xs);color:#666;margin-top:2px}.column-history-arrow{margin:0 10px;color:#888;font-weight:700}.column-history-current{font-weight:700;color:#4285f4}.column-history-start{font-style:italic}.history-pagination{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.history-nav-btn{padding:4px 10px;background-color:#f0f0f0;border:var(--border-thin) solid #ddd;border-radius:var(--radius-sm);cursor:pointer}.history-nav-btn:disabled{opacity:.5;cursor:not-allowed}.history-page-info{font-size:var(--text-sm)}.column-time-stats{margin-top:15px;border-top:var(--border-thin) solid #eee;padding-top:10px}.column-time-stats h5{margin-top:0;margin-bottom:10px}.time-spent-list{list-style:none;padding:0;margin:0}.time-spent-item{display:flex;justify-content:space-between;margin-bottom:5px;padding:5px;background-color:#f9f9f9;border-radius:var(--radius-sm)}.time-value{font-weight:700}@media (max-width: 768px){.task-details-panel{width:95%;max-width:none;grid-template-columns:1fr;grid-template-areas:"header" "main" "labels"}.task-labels-section{border-left:none;border-top:var(--border-thin) solid var(--gray-500);min-height:150px}.add-subtask-form{flex-direction:column}.subtask-input{border-radius:var(--radius-md);margin-bottom:var(--spacing-xs)}.add-subtask-btn{border-radius:var(--radius-md)}.description-edit-actions{flex-direction:column}.save-description-btn,.cancel-edit-btn{width:100%}}@media (prefers-color-scheme: dark){.history-nav-btn{background-color:#2a2a2a;border-color:#444;color:#eee}.time-spent-item{background-color:#2a2a2a}.column-time{color:#aaa}}h3,h4,label{color:var(--text-dark)}.history-timeline-btn{background:none;border:none;width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-dark);border-radius:var(--radius-md);padding:0;transition:all var(--transition-fast)}.history-timeline-btn:hover{background-color:var(--bg-accent-hover);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-color-light)}.history-timeline-btn.active{background-color:var(--bg-accent);color:var(--text-dark)}.history-timeline-btn svg{width:18px;height:18px}.history-timeline-view{padding:var(--spacing-xl)}.history-timeline-view .task-deadline-section{padding:0 0 var(--spacing-lg) 0;border-bottom:var(--border-thin) solid var(--gray-500);margin-bottom:var(--spacing-lg)}.history-timeline-view .column-history-section{margin-top:0;padding-top:0;border-top:none}.timeline-container{position:relative;padding:20px 0;margin:20px 0}.timeline-line{position:absolute;left:20px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,#4285f4,#34a853);border-radius:1px}.timeline-item{position:relative;display:flex;align-items:flex-start;margin-bottom:24px;animation:timeline-item-appear .5s ease-out forwards;opacity:0;transform:translate(-20px)}.timeline-item:nth-child(1){animation-delay:.1s}.timeline-item:nth-child(2){animation-delay:.2s}.timeline-item:nth-child(3){animation-delay:.3s}.timeline-item:nth-child(4){animation-delay:.4s}@keyframes timeline-item-appear{to{opacity:1;transform:translate(0)}}.timeline-marker{position:relative;z-index:2;margin-right:20px}.timeline-dot{width:12px;height:12px;border-radius:50%;background-color:#4285f4;border:3px solid #fff;box-shadow:0 0 0 3px #4285f4;transition:all .3s ease}.timeline-current .timeline-dot{background-color:#34a853;box-shadow:0 0 0 3px #34a853,0 0 20px #34a8534d;animation:pulse-current 2s infinite}.timeline-start .timeline-dot{background-color:#ea4335;box-shadow:0 0 0 3px #ea4335}@keyframes pulse-current{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.timeline-content{flex:1;background-color:var(--bg-accent);padding:16px 20px;border-radius:12px;box-shadow:0 2px 8px #0000001a;border-left:4px solid #4285f4;transition:all .3s ease;position:relative}.timeline-content:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.timeline-current .timeline-content{border-left-color:#34a853;background-color:#34a8530d}.timeline-start .timeline-content{border-left-color:#ea4335;background-color:#ea43350d}.timeline-column-name{font-weight:600;font-size:16px;color:var(--text-dark);margin-bottom:8px;display:flex;align-items:center;gap:10px}.current-badge,.start-badge{font-size:11px;font-weight:700;padding:4px 8px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.current-badge{background-color:#34a853;color:#fff;animation:badge-glow 2s infinite alternate}.start-badge{background-color:#ea4335;color:#fff}@keyframes badge-glow{0%{box-shadow:0 0 5px #34a85380}to{box-shadow:0 0 15px #34a853cc}}.timeline-date{font-size:13px;color:#666;margin-bottom:6px}.timeline-duration{font-size:12px;font-weight:500;color:#4285f4;background-color:#4285f41a;padding:4px 8px;border-radius:6px;display:inline-block}.history-progress{margin:20px 0;text-align:center}.progress-bar{width:100%;height:6px;background-color:#e0e0e0;border-radius:3px;overflow:hidden;margin-bottom:8px}.progress-fill{height:100%;background:linear-gradient(90deg,#4285f4,#34a853);border-radius:3px;transition:width .5s ease}.progress-text{font-size:12px;color:#666}.history-navigation{display:flex;justify-content:space-between;align-items:center;margin:24px 0;padding:16px;background-color:var(--bg-accent);border-radius:12px}.nav-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background-color:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;color:var(--text-dark);transition:all .3s ease}.nav-btn:hover:not(:disabled){background-color:#4285f4;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #4285f44d}.nav-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.page-indicators{display:flex;gap:8px;align-items:center}.page-dot{width:10px;height:10px;border-radius:50%;background-color:#ddd;border:none;cursor:pointer;transition:all .3s ease}.page-dot.active{background-color:#4285f4;transform:scale(1.3)}.page-dot:hover{background-color:#4285f4;transform:scale(1.2)}.column-time-stats{margin-top:30px;padding:24px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:16px;border:1px solid #dee2e6}.column-time-stats h5{margin:0 0 20px;font-size:18px;font-weight:600;color:var(--text-dark);text-align:center}.loading-stats{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px;color:#666}.loading-spinner{width:20px;height:20px;border:2px solid #e0e0e0;border-top:2px solid #4285f4;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.time-stats-container{display:flex;flex-direction:column;gap:16px}.time-stat-item{background-color:#fff;padding:16px;border-radius:12px;box-shadow:0 2px 4px #0000000d;transition:all .3s ease}.time-stat-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.stat-column-name{font-weight:600;color:var(--text-dark)}.stat-time{font-weight:700;color:#4285f4;font-size:14px}.stat-bar-container{height:8px;background-color:#f0f0f0;border-radius:4px;overflow:hidden}.stat-bar{height:100%;background:linear-gradient(90deg,#4285f4,#34a853);border-radius:4px;animation:stat-bar-grow 1s ease-out forwards;transform-origin:left;transform:scaleX(0)}@keyframes stat-bar-grow{to{transform:scaleX(1)}}.no-history,.no-stats{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center;color:#666}.no-history svg,.no-stats svg{opacity:.3;margin-bottom:16px}.no-history p,.no-stats p{font-weight:600;margin:0 0 8px}.no-history span{font-size:14px;opacity:.7}@media (max-width: 768px){.timeline-container{padding:16px 0}.timeline-line{left:16px}.timeline-marker{margin-right:16px}.timeline-content{padding:12px 16px}.history-navigation{flex-direction:column;gap:16px}.page-indicators{order:-1}.nav-btn{width:100%;justify-content:center}}.parent-child-btn{background:none;border:none;width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-dark);border-radius:var(--radius-md);padding:0;transition:all var(--transition-fast)}.parent-child-btn:hover{background-color:var(--bg-accent-hover);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-color-light)}.parent-child-btn.active{background-color:var(--bg-accent);color:var(--text-dark)}.parent-child-btn svg{width:18px;height:18px}.relationships-view{padding:var(--spacing-xl)}.section-header{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.assignment-icon,.parent-icon,.child-icon{color:var(--text-dark)}.section-header h4{margin:0;font-size:var(--text-lg);font-weight:600;color:var(--text-dark)}.user-assignment-section{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background-color:var(--primary-transparent);border-radius:var(--radius-lg);border:var(--border-thin) solid var(--gray-500)}.current-assignments{margin-bottom:var(--spacing-lg)}.current-assignments h5{margin:0 0 var(--spacing-sm) 0;font-size:var(--text-base);color:var(--text-dark)}.assigned-users-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-md)}.assigned-user-card{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:#fffc;border-radius:var(--radius-md);border:var(--border-thin) solid var(--border-color-secondary);transition:all var(--transition-fast)}.assigned-user-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.assigned-user-card .user-avatar{width:32px;height:32px;border-radius:var(--radius-full);overflow:hidden;border:var(--border-medium) solid var(--surface-light);flex-shrink:0}.user-name{flex:1;font-weight:500;color:var(--text-dark)}.remove-user-btn-card{width:24px;height:24px;background-color:var(--delete-color);color:var(--surface-light);border:none;border-radius:var(--radius-full);font-size:16px;line-height:0;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);padding:0;flex-shrink:0}.remove-user-btn-card:hover{background-color:var(--delete-color-hover);transform:scale(1.1)}.add-assignment h5{margin:0 0 var(--spacing-sm) 0;font-size:var(--text-base);color:var(--text-dark)}.assignment-controls{display:flex;gap:var(--spacing-sm)}.user-select{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:var(--border-thin) solid var(--border-color-secondary);border-radius:var(--radius-md);font-size:var(--text-sm);background-color:var(--surface-light);color:var(--text-dark);transition:all var(--transition-fast)}.user-select:focus{border-color:var(--border-color-focus);outline:none;box-shadow:0 0 0 3px #86d6ff40}.assign-btn-relationships{background-color:var(--bg-accent-hover);color:var(--text-dark);border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);cursor:pointer;font-weight:600;transition:all var(--transition-fast);white-space:nowrap}.assign-btn-relationships:hover{background-color:var(--bg-accent);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-color-light)}.assign-btn-relationships:disabled{background-color:var(--gray-500);color:var(--surface-light);cursor:not-allowed;transform:none;box-shadow:none}.parent-task-section{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background-color:var(--primary-transparent);border-radius:var(--radius-lg);border:var(--border-thin) solid var(--gray-500)}.current-parent-card{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background-color:#86d6ff33;border-radius:var(--radius-md);margin-bottom:var(--spacing-md);border:var(--border-thin) solid rgba(134,214,255,.3)}.parent-info{display:flex;flex-direction:column;gap:4px}.parent-info strong{color:var(--text-dark);font-weight:600}.parent-id,.child-id{font-size:var(--text-xs);color:var(--text-muted);font-family:monospace}.no-parent-card,.no-children-card{padding:var(--spacing-lg);text-align:center;color:var(--text-muted);font-style:italic;background-color:#ffffff80;border-radius:var(--radius-md);border:var(--border-thin) dashed var(--text-muted);margin-bottom:var(--spacing-md)}.manage-parent-btn{background-color:var(--text-dark);color:var(--surface-light);border:none;border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);cursor:pointer;font-size:var(--text-sm);font-weight:600;transition:all var(--transition-fast);width:100%}.manage-parent-btn:hover{background-color:var(--surface-dark-hover);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-color-light)}.parent-selector-card{margin-top:var(--spacing-md);padding:var(--spacing-md);background-color:#fffc;border-radius:var(--radius-md);border:var(--border-thin) solid var(--border-color-secondary)}.parent-selector-card h5{margin:0 0 var(--spacing-sm) 0;font-size:var(--text-sm);color:var(--text-dark)}.parent-select{width:100%;padding:var(--spacing-sm);margin-bottom:var(--spacing-sm);border:var(--border-thin) solid var(--border-color-secondary);border-radius:var(--radius-md);font-size:var(--text-sm);background-color:var(--surface-light);color:var(--text-dark)}.parent-select:focus{border-color:var(--border-color-focus);outline:none;box-shadow:0 0 0 3px #86d6ff40}.parent-selector-actions{display:flex;gap:var(--spacing-sm)}.confirm-parent-btn,.cancel-parent-btn{flex:1;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:600;transition:all var(--transition-fast)}.confirm-parent-btn{background-color:var(--text-dark);color:var(--surface-light);border:none}.confirm-parent-btn:hover{background-color:var(--surface-dark-hover)}.confirm-parent-btn:disabled{background-color:var(--gray-500);cursor:not-allowed}.cancel-parent-btn{background-color:var(--surface-light);color:var(--text-dark);border:var(--border-thin) solid var(--border-color-secondary)}.cancel-parent-btn:hover{background-color:var(--bg-accent)}.child-tasks-section{padding:var(--spacing-lg);background-color:var(--primary-transparent);border-radius:var(--radius-lg);border:var(--border-thin) solid var(--gray-500)}.child-tasks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-md)}.child-task-card{padding:var(--spacing-md);background-color:#fffc;border-radius:var(--radius-md);border:var(--border-thin) solid var(--border-color-secondary);transition:all var(--transition-fast)}.child-task-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.child-task-info{display:flex;flex-direction:column;gap:4px}.child-task-info strong{color:var(--text-dark);font-weight:600;margin-bottom:4px}.status-badge{align-self:flex-start;padding:2px var(--spacing-xs);border-radius:var(--radius-xl);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;margin-top:4px}.status-badge.todo{background-color:#9ca3af33;color:#6b7280}.status-badge.in-progress{background-color:#3b82f633;color:#3b82f6}.status-badge.done{background-color:#22c55e33;color:#22c55e}@media (max-width: 768px){.assignment-controls{flex-direction:column}.user-select{margin-bottom:var(--spacing-sm)}.assigned-users-grid,.child-tasks-grid{grid-template-columns:1fr}.parent-selector-actions{flex-direction:column}.current-parent-card{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}}.task-labels{position:relative;width:100%}.labels-container{display:flex;flex-wrap:wrap;align-items:center;max-width:100%;overflow-wrap:break-word;gap:6px}.label{padding:2px 8px;border-radius:12px;font-size:12px;display:inline-flex;align-items:center;position:relative;color:#000;background-color:#0000000d;max-width:calc(100% - 10px);overflow:hidden}.label-color-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.label-text{margin-left:5px;font-size:11px;margin-right:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px;color:#000!important}.label .label-text{color:#000!important;opacity:1}.label:hover .label-text{opacity:1}.remove-label-button{margin-left:4px;border:none;background:none;cursor:pointer;padding:0 4px;opacity:0;transition:opacity .2s ease}.label:hover .remove-label-button{opacity:1}.label-section{margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #eee}.section-title{font-size:12px;color:#666;margin-bottom:5px;font-weight:600}@media (prefers-color-scheme: dark){.label{background-color:#ffffff1a}.label:hover{background-color:#ffffff26}.section-title{color:#aaa}.label-picker{background-color:#1a2944;border-color:#444}.label-option:hover{background-color:#2a3a54}}[data-tooltip]{position:relative}[data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:4px 8px;background-color:#333;color:#fff;border-radius:4px;font-size:11px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;pointer-events:none;z-index:1000}[data-tooltip]:hover:before{opacity:1;visibility:visible}.remove-label-button{margin-left:4px;border:none;background:none;color:#000;cursor:pointer;padding:0 4px}.add-label-button{border:1px dashed #76777c;background:none;cursor:pointer;padding:2px 8px;font-size:12px;border-radius:12px;margin-right:4px}.label-picker{background-color:#fff;border:1px solid #ddd;border-radius:4px;padding:8px;z-index:1000;box-shadow:0 2px 8px #00000026;min-width:200px}.label-picker-header{border-bottom:1px solid #eee;padding-bottom:8px;margin-bottom:8px;font-weight:700}.label-option{padding:4px 8px;cursor:pointer;display:flex;align-items:center;gap:8px}.label-option:hover{background-color:#f5f5f5}.color-dot{width:12px;height:12px;border-radius:50%}.color-dot.custom{border:1px dashed #ccc;background:transparent}.custom-label-option{padding:8px 8px 4px;cursor:pointer;display:flex;align-items:center;gap:8px;margin-top:8px;border-top:1px solid #eee}.custom-label-form{margin-top:10px;padding:10px;border:1px solid #ddd;border-radius:4px;background-color:#f9f9f9}.form-group{margin-bottom:8px}.form-group label{display:block;margin-bottom:4px}.form-group input[type=text]{width:100%;padding:6px;border-radius:4px;border:1px solid #ccc}.form-group input[type=color]{width:100%;height:30px;border:none;border-radius:4px;cursor:pointer}.form-actions{display:flex;gap:8px}.add-button{padding:6px 12px;background-color:#86d6ff;color:#0e1b36;border:none;border-radius:4px;cursor:pointer;font-weight:600}.add-button.disabled{background-color:#ccc;cursor:not-allowed}.cancel-button{padding:6px 12px;background-color:#e2e2e2;color:#0e1b36;border:1px solid #76777c;border-radius:4px;cursor:pointer}.task-details-panel{z-index:1000}.label-picker{position:absolute;max-width:250px;width:max-content;z-index:2000;max-height:300px;overflow-y:auto}.animated{animation-duration:.2s;animation-fill-mode:both}.fadeIn{animation-name:fadeIn}.task{background-color:var(--surface-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-md) var(--spacing-md) var(--spacing-sm);margin-bottom:var(--spacing-lg);width:fit-content;min-width:0px;max-width:100%;cursor:pointer;position:relative;transition:all var(--transition-normal);transform-origin:center;will-change:transform,box-shadow;word-break:break-word;display:flex;flex-direction:column;align-items:stretch;border-left:var(--border-thick) solid var(--task-border-left);animation:taskAppear var(--duration-normal) ease-out}.task:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background-color:var(--primary-light)}.task.dragging{opacity:.4;transform:rotate(1deg) scale(1.02);box-shadow:var(--shadow-lg)}.task.user-drag-over{background-color:var(--primary-transparent);border:var(--border-medium) dashed var(--primary);box-shadow:0 0 8px #86d6ff4d;transform:scale(1.03)}.task:before{content:"";position:absolute;top:0;right:0;height:100%;width:30%;background:linear-gradient(to left,var(--surface-light) 0%,transparent 100%);opacity:0;transition:opacity var(--duration-normal) ease;pointer-events:none;border-radius:0 var(--radius-lg) var(--radius-lg) 0}.task:hover:before{opacity:.6;background:linear-gradient(to left,var(--primary-light) 0%,transparent 100%)}.task-content{display:flex;align-items:center;width:100%;color:var(--text-dark);justify-content:flex-start;font-size:var(--text-sm);line-height:1.3}.task-title{flex:0 1 auto;margin-right:var(--spacing-xs);max-width:100%}.task .delete-btn{background:none;border:none;color:var(--gray-500);font-size:var(--text-base);cursor:pointer;padding:var(--spacing-xs);line-height:1;position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);border-radius:var(--radius-full);width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);z-index:5;visibility:visible;opacity:1}.task .delete-btn:hover{color:var(--primary);background-color:var(--primary-transparent)}.task-info-container{display:flex;align-items:center;margin-left:auto;margin-right:18px;gap:var(--spacing-sm);flex-shrink:0}.task-avatar{position:relative;min-width:32px;height:32px;display:flex;align-items:center;justify-content:center}.task-avatar img{width:32px;height:32px;border-radius:var(--radius-full);object-fit:cover;border:var(--border-thin) solid var(--primary-light)}.avatar-count{position:absolute;bottom:-5px;right:-5px;background-color:var(--primary);color:var(--text-dark);font-size:10px;height:16px;width:16px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-weight:700}.task-labels-preview{display:flex;flex-direction:column;gap:3px;align-self:center}.task-label-pill{display:flex;align-items:center;width:12px;height:12px;border-radius:var(--radius-full);background-color:transparent;padding:0}.label-dot{width:12px;height:12px;border-radius:var(--radius-full);margin:0}.task-label-count{font-size:9px;background-color:var(--surface-light);color:var(--text-dark);border-radius:var(--radius-sm);padding:1px 3px;margin-top:2px;width:fit-content;text-align:center}.task.deadline-expired{border-left:var(--border-thick) solid var(--task-border-expired)}.task.deadline-upcoming{border-left:var(--border-thick) solid var(--task-border-upcoming)}.deadline-indicator{display:flex;align-items:center;margin-top:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--text-xs);width:fit-content}.deadline-indicator.expired{background-color:#e539351a;color:var(--task-border-expired)}.deadline-indicator.upcoming{background-color:#f57c001a;color:var(--task-border-upcoming)}.deadline-icon{margin-right:var(--spacing-xs)}.task-footer{position:relative;width:100%;display:flex;justify-content:center;margin-top:var(--spacing-sm);z-index:10}.description-dropdown-btn{background-color:var(--surface-light);border:var(--border-thin) solid var(--gray-300);border-radius:0 0 var(--radius-sm) var(--radius-sm);padding:2px var(--spacing-md);font-size:var(--text-xs);cursor:pointer;box-shadow:var(--shadow-sm);transition:all var(--transition-fast);white-space:nowrap}.description-dropdown-btn:hover{background-color:var(--primary-light)}.assignment-error{position:absolute;background-color:#f8d7da;border:var(--border-thin) solid rgba(245,198,203,1);color:#721c24;padding:5px var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--text-xs);z-index:100;top:-30px;left:0;right:0;margin:0 auto;max-width:250px;text-align:center;box-shadow:var(--shadow-sm);animation:fadeInDown var(--duration-normal) ease-in-out}.subtask-warning{position:absolute;bottom:-.75rem;left:0;right:0;background-color:#fff8dcf2;border:var(--border-thin) solid #ffd700;border-radius:var(--radius-lg);padding:var(--spacing-sm) var(--spacing-sm);font-size:var(--text-xs);box-shadow:var(--shadow-sm);z-index:5;transform:translateY(100%);width:calc(100% - 6px);margin-left:3px;display:flex;align-items:center}.delete-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;background-color:rgba(14,27,54,var(--backdrop-opacity));z-index:var(--z-modal);animation:fadeIn var(--duration-fast) ease-out}.delete-modal{background-color:var(--surface-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:var(--spacing-xl);width:300px;text-align:center;animation:modalAppear var(--duration-normal) ease-out}.delete-modal p{color:var(--text-dark);margin-bottom:var(--spacing-md);font-size:var(--text-sm)}.confirmation-buttons{display:flex;justify-content:center;gap:var(--spacing-sm)}.confirm-delete-btn,.cancel-delete-btn{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;cursor:pointer;border:none;transition:all var(--transition-fast)}.confirm-delete-btn{background-color:var(--wip-exceeded);color:#fff}.confirm-delete-btn:hover{background-color:#dc2626;transform:translateY(-1px)}.cancel-delete-btn{background-color:var(--primary-light);color:var(--text-dark)}.cancel-delete-btn:hover{background-color:var(--primary);transform:translateY(-1px)}.description-popover{position:absolute;z-index:var(--z-modal);background-color:var(--white);border:var(--border-thin) solid var(--gray-300);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--spacing-md);overflow-y:auto;pointer-events:auto;opacity:0;transition:opacity var(--transition-fast)}.description-popover-arrow{position:absolute;width:0;height:0;top:-8px;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:8px solid var(--white);transform:translate(-50%)}.popover-section{margin-bottom:var(--spacing-md)}.popover-section:last-child{margin-bottom:0}.popover-section-title{font-size:var(--text-sm);font-weight:600;margin:0 0 var(--spacing-sm) 0;color:var(--text-dark);border-bottom:var(--border-thin) solid var(--primary-light);padding-bottom:var(--spacing-xs)}.subtasks-preview-list{list-style:none;padding:0;margin:0}.subtask-preview-item{display:flex;align-items:center;padding:var(--spacing-xs) 0;border-bottom:var(--border-thin) dashed rgba(118,119,124,.3)}.subtask-preview-item:last-child{border-bottom:none}.subtask-preview-item.completed .subtask-title{text-decoration:line-through;color:var(--gray-500)}.subtask-checkbox{display:inline-flex;justify-content:center;align-items:center;width:16px;height:16px;border:var(--border-thin) solid var(--gray-500);border-radius:var(--radius-sm);margin-right:var(--spacing-sm);background-color:var(--surface-light);color:var(--text-dark)}.subtask-checkbox.checked{background-color:var(--primary);border-color:var(--primary)}.empty-subtasks,.empty-description{color:var(--gray-500);font-style:italic;margin:0;font-size:var(--text-xs)}@keyframes taskAppear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes modalAppear{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.showing-task-relationships .task{position:relative!important;z-index:100!important}.task.dragging{opacity:.8!important;background-color:var(--primary-transparent)!important;outline:var(--border-medium) solid var(--primary)!important;box-shadow:0 0 15px #86d6ff4d!important}#root .xarrow{filter:drop-shadow(0 0 3px rgba(134,214,255,.6));pointer-events:none!important}#root .xarrow[data-type=child] path{stroke-width:3}#root .xarrow[data-type=parent] path{stroke-dasharray:6,3;animation:dash 1s linear infinite}@keyframes dash{to{stroke-dashoffset:-9}}@media (prefers-color-scheme: dark){.task{background-color:var(--surface-dark);border-left-color:var(--primary);box-shadow:var(--shadow-md)}.task-content{color:var(--text-light)}.task:hover{background-color:var(--primary-transparent)}.task:before{background:linear-gradient(to left,var(--surface-dark) 0%,transparent 100%)}.task:hover:before{background:linear-gradient(to left,var(--primary-transparent) 0%,transparent 100%)}.task-label-pill{background-color:#ffffff1a}.task-label-count{background-color:var(--surface-dark-hover);color:var(--text-light)}.delete-modal{background-color:var(--surface-dark)}.delete-modal p{color:var(--text-light)}.cancel-delete-btn{background-color:var(--gray-500);color:var(--text-light)}.cancel-delete-btn:hover{background-color:var(--primary);color:var(--text-dark)}.description-dropdown-btn{background-color:var(--surface-dark);color:var(--text-light);border-color:var(--gray-500)}.description-dropdown-btn:hover{background-color:var(--primary-transparent)}.description-popover{background-color:var(--surface-dark-hover);border-color:var(--gray-500);color:var(--text-light)}.description-popover-arrow{border-bottom-color:var(--surface-dark-hover)}.task.deadline-expired{border-left-color:#ff5252}.task.deadline-upcoming{border-left-color:#ffab40}.deadline-indicator.expired{background-color:#ff525233;color:#ff5252}.deadline-indicator.upcoming{background-color:#ffab4033;color:#ffab40}}.board{display:flex;gap:1rem;overflow-x:auto;min-height:70vh;padding:1rem}.board-grid{padding:1rem;width:100%;overflow-x:auto}.kanban-table{width:100%;border-collapse:separate;border-spacing:.5rem}:root{--column-count: 3}.grid-corner{background-color:#76777c;border-radius:4px;min-width:120px;padding:.75rem}.grid-column-header{background-color:#86d6ff4d;padding:.75rem;border-radius:4px;font-weight:700;text-align:left;min-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#0e1b36}.grid-column-header .column-title{display:flex;align-items:center}.grid-column-header .column-drag-handle{margin-right:.5rem}.grid-column-header .column-actions{display:flex;gap:.5rem;align-items:center;justify-content:flex-end;margin-top:.25rem}.delete-column-btn{background:none;border:none;color:#76777c;cursor:pointer;font-size:1.2rem;line-height:1;padding:.25rem;min-width:auto}.delete-column-btn:hover{color:#86d6ff}.grid-row-header{background-color:#86d6ff4d;padding:.75rem;border-radius:4px;font-weight:700;min-width:120px;color:#0e1b36}.grid-row-header .row-title{flex:1;margin-right:.5rem}.grid-row-header .row-actions{display:flex;gap:.5rem;align-items:center;justify-content:flex-end;margin-top:.25rem}.grid-cell{background-color:#e0d2d2;padding:.5rem;border-radius:4px;min-height:50px;min-width:80px;height:fit-content;width:fit-content;max-width:200px;vertical-align:top}.add-task-placeholder{display:inline-flex;align-items:center;gap:6px;margin-top:6px;background:transparent;border:1px dashed rgba(118,119,124,.4);color:#76777c;border-radius:6px;font-size:12px;padding:6px 8px;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.add-task-placeholder:hover{background:#86d6ff1a;border-color:#86d6ff99;color:#0e1b36}.wip-limit{font-size:.8rem;color:#76777c}.wip-limit.exceeded{color:#0e1b36;font-weight:700}.wip-limit.exceeded .add-column-btn,.wip-limit.exceeded .add-row-btn{background:none;border:1px dashed rgba(118,119,124,.5);color:#76777c;cursor:pointer;font-size:.9rem;line-height:1;padding:.15rem .4rem;min-width:auto;border-radius:6px;transition:background .2s ease,border-color .2s ease,color .2s ease}.wip-limit.exceeded .add-column-btn:hover,.wip-limit.exceeded .add-row-btn:hover{background:#86d6ff1a;border-color:#86d6ff99;color:#0e1b36}.task-count{font-size:.8rem;background-color:#76777c;padding:.1rem .3rem;border-radius:3px;color:#e2e2e2}.delete-row-btn{background:none;border:none;color:#76777c;cursor:pointer;font-size:1.2rem;line-height:1;padding:.25rem;min-width:auto}.delete-row-btn:hover{color:#86d6ff}.board-loading,.board-error{display:flex;justify-content:center;align-items:center;height:50vh;font-size:1.2rem;color:#76777c}.board-error{color:#0e1b36}@media (max-width: 768px){.board{padding:10px 0;gap:10px}.kanban-table{border-spacing:.25rem}}@media (prefers-color-scheme: dark){.grid-corner{background-color:#1b1b1d}.grid-column-header,.grid-row-header{background-color:#000;color:#fff}.grid-cell{background-color:#121825}.add-task-placeholder{border-color:#9ca3af66;color:#9ca3af}.add-task-placeholder:hover{background:#4cc9f014;border-color:#4cc9f080;color:#e2e2e2}.add-column-btn,.add-row-btn{border-color:#9ca3af80;color:#9ca3af}.add-column-btn:hover,.add-row-btn:hover{background:#4cc9f014;border-color:#4cc9f080;color:#f0f4f8}.task-count{background-color:#3a3b3f;color:#e2e2e2}.wip-limit{color:#e2e2e2}.wip-limit.exceeded,.delete-row-btn:hover{color:#d1fdff}}.column-title{display:flex;align-items:center;width:100%;position:relative}.column-name-input{background-color:#fff;border:1px solid #86d6ff;border-radius:4px;padding:.25rem .5rem;font-size:inherit;font-weight:inherit;color:#0e1b36;width:calc(100% - 1.5rem);box-sizing:border-box}.column-name-input:focus{outline:none;border-color:#d1fdff;box-shadow:0 0 0 2px #86d6ff4d}.column-title span:not(.column-drag-handle){flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (prefers-color-scheme: dark){.column-name-input{background-color:#1a2944;border-color:#86d6ff;color:#e2e2e2}.column-name-input:focus{border-color:#d1fdff}}.row-title{display:flex;align-items:center;width:100%;position:relative}.row-name-input{background-color:#fff;border:1px solid #86d6ff;border-radius:4px;padding:.25rem .5rem;font-size:inherit;font-weight:inherit;color:#0e1b36;width:calc(100% - 1.5rem);box-sizing:border-box}.row-name-input:focus{outline:none;border-color:#d1fdff;box-shadow:0 0 0 2px #86d6ff4d}.row-title span:not(.row-drag-handle){flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-content{display:flex;align-items:center;width:100%;position:relative}.task-title-input{background-color:#fff;border:1px solid #86d6ff;border-radius:4px;padding:.25rem .5rem;font-size:inherit;font-weight:inherit;color:#0e1b36;width:calc(100% - 2rem);box-sizing:border-box;max-width:100%}.task-title-input:focus{outline:none;border-color:#d1fdff;box-shadow:0 0 0 2px #86d6ff4d}.task-title{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (prefers-color-scheme: dark){.row-name-input,.task-title-input{background-color:#1a2944;border-color:#86d6ff;color:#e2e2e2}.row-name-input:focus,.task-title-input:focus{border-color:#d1fdff}}.wip-exceeded{background-color:#ff00001a;border-color:red}.wip-exceeded-cell{background-color:#ff00001a;border:1px solid #ff0000}.exceeded{color:red;font-weight:700}.grid-column-header.wip-exceeded .column-title,.grid-row-header.wip-exceeded .row-title{color:red}.grid-cell{transition:background-color .3s ease}.task-count{margin-right:5px}.wip-limit.exceeded{margin-left:5px;padding:2px 5px;border-radius:3px;background-color:#ff00001a}.loading-spinner{display:inline-block;width:20px;height:20px;border:3px solid rgba(118,119,124,.3);border-radius:50%;border-top-color:#76777c;animation:spin 1s ease-in-out infinite;margin-right:10px}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{display:inline;vertical-align:middle}.confirmation-toast{width:600px;padding:12px!important;border-radius:6px;box-shadow:0 4px 12px #00000026}.toast-confirm{text-align:center}.toast-confirm p{margin-bottom:12px;font-weight:500}.toast-buttons{display:flex;justify-content:center;gap:12px}.toast-buttons button{padding:6px 16px;border-radius:4px;border:none;cursor:pointer;font-weight:500;transition:all .2s}.confirm-button{background-color:#d32f2f;color:#fff}.confirm-button:hover{background-color:#b71c1c}.cancel-button{background-color:#e0e0e0;color:#424242}.cancel-button:hover{background-color:#bdbdbd}.language-switcher-container{position:absolute;top:20px;right:20px;z-index:100}.form-container{width:350px;background:#fff;border-radius:16px;padding:20px;box-shadow:0 10px 30px #0e1b3626;position:relative;border:1px solid rgba(134,214,255,.2);overflow:hidden;transition:all .3s cubic-bezier(.25,.8,.25,1);animation:formAppear .4s cubic-bezier(.25,.8,.25,1);margin-left:auto;margin-right:auto}html.dark .form-container{background:#1a1f2b;border:1px solid rgba(58,134,255,.15);box-shadow:0 10px 30px #00000040}.form-container:hover{box-shadow:0 14px 28px #0e1b362e}html.dark .form-container:hover{box-shadow:0 15px 35px #3a86ff33}.form-container:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,#3a86ff,#4cc9f0);animation:gradientShift 6s linear infinite}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(14,27,54,.08)}html.dark .form-header{border-bottom:1px solid rgba(255,255,255,.08)}.form-header h3{margin:0;font-size:18px;color:#0e1b36;font-weight:600;position:relative;padding-left:5px}html.dark .form-header h3{color:#f0f4f8}.form-header h3:before{content:"";position:absolute;left:-5px;top:50%;transform:translateY(-50%);width:4px;height:18px;background:linear-gradient(135deg,#3a86ff,#4cc9f0);border-radius:2px}.form-group{margin-bottom:20px;position:relative}.form-group label{display:block;margin-bottom:8px;font-size:14px;color:#0e1b36;font-weight:500;transition:all .2s ease}html.dark .form-group label{color:#e2e8f0}.help-text{font-size:12px;color:#76777c;margin-left:4px;font-weight:400;opacity:.8;transition:opacity .2s ease}html.dark .help-text{color:#9ca3af}.form-group:hover .help-text{opacity:1}.form-group input,.form-group select{width:100%;padding:14px;border:1px solid rgba(118,119,124,.2);border-radius:10px;font-size:14px;background-color:#f9f9fb;color:#0e1b36;transition:all .3s ease;box-shadow:0 2px 4px #0e1b3605}html.dark .form-group input,html.dark .form-group select{background-color:#273045;border:1px solid rgba(255,255,255,.1);color:#f0f4f8;box-shadow:0 2px 4px #0000001a}.form-group input:focus,.form-group select:focus{border-color:#3a86ff;outline:none;box-shadow:0 0 0 3px #3a86ff26;background-color:#fff}html.dark .form-group input:focus,html.dark .form-group select:focus{border-color:#4cc9f0;box-shadow:0 0 0 4px #4cc9f033;background-color:#1e293b}.form-group input:hover,.form-group select:hover{border-color:#3a86ff80}html.dark .form-group input:hover,html.dark .form-group select:hover{border-color:#4cc9f099}.form-group input:disabled,.form-group select:disabled{opacity:.7;cursor:not-allowed;background-color:#f0f0f2}html.dark .form-group input:disabled,html.dark .form-group select:disabled{background-color:#1a2236;opacity:.6}.error-message{background-color:#f8717114;color:#ef4444;padding:12px 16px;border-radius:10px;margin-bottom:20px;font-size:13px;border-left:3px solid #ef4444;animation:errorShake .4s cubic-bezier(.36,.07,.19,.97) both;transform:translateZ(0)}html.dark .error-message{background-color:#dc262626;color:#f87171}.form-actions{display:flex;justify-content:flex-start;gap:12px;margin-top:16px}.form-actions button,.toggle-form-btn{background:linear-gradient(135deg,#3a86ff,#4cc9f0);color:#fff;border:none;border-radius:10px;padding:12px 20px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;box-shadow:0 4px 15px #3a86ff40}.form-actions button:hover,.toggle-form-btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px #3a86ff4d;background:linear-gradient(135deg,#4cc9f0,#3a86ff)}html.dark .form-actions button:hover,html.dark .toggle-form-btn:hover{box-shadow:0 8px 20px #4cc9f04d}.form-actions button:active,.toggle-form-btn:active{transform:translateY(1px);box-shadow:0 2px 10px #3a86ff33}.form-actions button:before,.toggle-form-btn:before{content:"";position:absolute;top:50%;left:50%;width:150%;height:150%;background:radial-gradient(circle,rgba(255,255,255,.3) 0%,transparent 70%);transform:translate(-50%,-50%) scale(0);transition:transform .5s ease}.form-actions button:hover:before,.toggle-form-btn:hover:before{transform:translate(-50%,-50%) scale(1)}.form-actions button:disabled{background:#e2e2e2;color:#76777c;cursor:not-allowed;transform:none;box-shadow:none}html.dark .form-actions button:disabled{background:#1a2236;color:#64748b}.tab-container{display:flex;margin-bottom:20px;border-bottom:1px solid rgba(14,27,54,.08);position:relative}html.dark .tab-container{border-bottom:1px solid rgba(255,255,255,.08)}.tab-btn{padding:10px 18px;background:transparent;border:none;color:#76777c;margin-right:12px;cursor:pointer;font-weight:500;position:relative;transition:all .3s ease}html.dark .tab-btn{color:#9ca3af}.tab-btn:after{content:"";position:absolute;bottom:-1px;left:0;width:0;height:2px;background:linear-gradient(90deg,#3a86ff,#4cc9f0);transition:width .3s ease}.tab-btn.active{color:#0e1b36;font-weight:600}html.dark .tab-btn.active{color:#f0f4f8}.tab-btn.active:after{width:100%}.tab-btn:disabled{opacity:.5;cursor:not-allowed}.toggle-form-btn{padding:12px 20px;border-radius:10px;margin:12px 0;width:fit-content;font-weight:600;display:flex;align-items:center;gap:8px}.toggle-form-btn span{font-size:18px;line-height:1;transition:transform .3s ease}.toggle-form-btn:hover span{transform:rotate(90deg)}.add-task-container{padding:20px;background:linear-gradient(135deg,#3a86ff0d,#4cc9f01a);border-radius:16px;margin:16px 0;transition:all .3s ease;box-shadow:0 6px 20px #0e1b360f;border:1px solid rgba(58,134,255,.2);animation:fadeIn .4s ease}html.dark .add-task-container{background:linear-gradient(135deg,#3a86ff1a,#4cc9f026);box-shadow:0 6px 20px #0003;border:1px solid rgba(76,201,240,.2)}.add-task-container:hover{box-shadow:0 10px 30px #3a86ff26;transform:translateY(-3px)}html.dark .add-task-container:hover{box-shadow:0 10px 30px #4cc9f033}.add-task-container h3{margin-top:0;margin-bottom:16px;font-size:16px;color:#0e1b36;display:flex;align-items:center;gap:8px}html.dark .add-task-container h3{color:#f0f4f8}.add-task-container h3:before{content:"+";width:22px;height:22px;background:linear-gradient(135deg,#3a86ff,#4cc9f0);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700}.add-task-form-group{display:flex;gap:12px}.add-task-form-group input{flex:1;border-radius:10px;transition:all .3s ease}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0e1b3680;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fadeIn .3s ease}html.dark .modal-overlay{background-color:#000000b3}@keyframes formAppear{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.form-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);max-width:420px;width:92vw;z-index:1001}@keyframes errorShake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-3px,0,0)}40%,60%{transform:translate3d(3px,0,0)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.add-column-container,.add-row-container{margin:12px 0}@media (max-width: 768px){.form-container{width:100%;max-width:100%;border-radius:12px;padding:16px;margin:0 auto}.form-header h3{font-size:16px}.form-group label{font-size:13px}.form-group input,.form-group select{padding:12px;font-size:13px}.form-actions{flex-direction:column;gap:8px}.form-actions button,.toggle-form-btn{width:100%;padding:10px 16px}.tab-container{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:5px;margin-bottom:15px}.tab-btn{padding:8px 14px;white-space:nowrap}.add-task-form-group{flex-direction:column}.modal-overlay{padding:10px}.form-modal{width:96vw;max-width:520px}}@media (prefers-color-scheme: dark){html:not(.light) .form-container{background:#1a1f2b;border:1px solid rgba(58,134,255,.15);box-shadow:0 10px 30px #00000040}html:not(.light) .form-container:hover{box-shadow:0 15px 35px #3a86ff33}html:not(.light) .form-header{border-bottom:1px solid rgba(255,255,255,.08)}html:not(.light) .form-header h3{color:#f0f4f8}html:not(.light) .form-group label{color:#e2e8f0}html:not(.light) .help-text{color:#9ca3af}html:not(.light) .form-group input,html:not(.light) .form-group select{background-color:#273045;border:1px solid rgba(255,255,255,.1);color:#f0f4f8;box-shadow:0 2px 4px #0000001a}html:not(.light) .form-group input:focus,html:not(.light) .form-group select:focus{border-color:#4cc9f0;box-shadow:0 0 0 4px #4cc9f033;background-color:#1e293b}html:not(.light) .form-group input:hover,html:not(.light) .form-group select:hover{border-color:#4cc9f099}html:not(.light) .form-group input:disabled,html:not(.light) .form-group select:disabled{background-color:#1a2236;opacity:.6}html:not(.light) .error-message{background-color:#dc262626;color:#f87171}html:not(.light) .form-actions button:hover,html:not(.light) .toggle-form-btn:hover{box-shadow:0 8px 20px #4cc9f04d}html:not(.light) .form-actions button:disabled{background:#1a2236;color:#64748b}html:not(.light) .tab-container{border-bottom:1px solid rgba(255,255,255,.08)}html:not(.light) .tab-btn{color:#9ca3af}html:not(.light) .tab-btn.active{color:#f0f4f8}html:not(.light) .add-task-container{background:linear-gradient(135deg,#3a86ff1a,#4cc9f026);box-shadow:0 6px 20px #0003;border:1px solid rgba(76,201,240,.2)}html:not(.light) .add-task-container:hover{box-shadow:0 10px 30px #4cc9f033}html:not(.light) .add-task-container h3{color:#f0f4f8}html:not(.light) .modal-overlay{background-color:#000000b3}}.container{max-width:1000px;margin:0 auto}.controls{display:flex;flex-direction:column;max-width:1000px;margin:0 auto 40px;background:var(--surface-light);border-radius:.75rem;padding:1.5rem;border:1px solid var(--gray-200);box-shadow:0 4px 6px -1px #0e1b361a,0 2px 4px -1px #0e1b360f;transition:transform .3s ease,box-shadow .3s ease}.controls:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0e1b361a,0 4px 6px -2px #0e1b360d}.main-controls{display:flex;width:100%;gap:15px}input,input[type=password]{padding:.6em 1.2em;background:var(--gray-50);border:1px solid var(--gray-300);border-radius:.375rem;flex-grow:1;font-size:1em;color:var(--text-dark);transition:all .3s ease;font-family:inherit}input:focus,input[type=password]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #86d6ff4d}.users-container{background:var(--surface-light);border-radius:.75rem;border:1px solid var(--gray-200);box-shadow:0 4px 6px -1px #0e1b361a,0 2px 4px -1px #0e1b360f;overflow:hidden;margin-bottom:40px;transition:transform .3s ease,box-shadow .3s ease}.users-container:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0e1b361a,0 4px 6px -2px #0e1b360d}.users-header{display:grid;grid-template-columns:50px 50px 370px 430px 85px;padding:1rem;background:var(--gray-100);font-weight:600;border-bottom:1px solid var(--gray-200);color:var(--gray-700)}.users-list{max-height:500px;overflow-y:auto}.user-item{display:grid;grid-template-columns:50px 50px 370px 430px 85px;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--gray-200);transition:all .3s ease;animation:fadeIn .4s ease-out}.user-item:hover{background:var(--gray-100)}.user-actions{display:flex;justify-content:center}.delete-user-btn{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--gray-100);color:var(--gray-700);font-size:18px;cursor:pointer;transition:all .3s ease;border:1px solid var(--gray-300);padding:0}.delete-user-btn:hover{background:var(--error);color:var(--text-light);transform:scale(1.1);border-color:transparent}.navigation{display:flex;justify-content:center}.back-btn{display:inline-block;padding:.6em 1.2em;background:var(--surface-light);color:var(--text-dark);text-decoration:none;border-radius:.375rem;border:1px solid var(--gray-300);transition:all .3s ease;font-weight:500}.back-btn:hover{background:var(--gray-100);color:var(--primary-dark);border-color:var(--primary);transform:translateY(-2px)}.avatar-preview{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--gray-300);transition:all .3s ease}.avatar-preview:hover{border-color:var(--primary);box-shadow:0 0 0 2px #86d6ff4d}.upload-avatar-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:.4em .6em;font-size:.35rem;background-color:#fffc;border:1px solid var(--gray-300);border-radius:.375rem;cursor:pointer;color:var(--text-dark);transition:all .2s ease;display:none;text-align:center;font-weight:500;z-index:1;white-space:nowrap;width:60%;opacity:.8}.user-avatar{position:relative;display:flex;align-items:center;justify-content:center}.user-avatar:hover .upload-avatar-btn{display:block}.upload-avatar-btn:hover{background-color:var(--primary-transparent);color:var(--primary-dark);border-color:var(--primary);opacity:1}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){#root{padding:1rem}.app-title{font-size:2rem}.main-controls{flex-direction:column}.users-header,.user-item{grid-template-columns:50px 50px 1fr 2fr 50px;font-size:.875rem;padding:.5rem}.upload-avatar-btn{font-size:.7rem;padding:.3em .5em}}@media (prefers-color-scheme: dark){.controls,.users-container{background-color:var(--surface-dark);border-color:var(--gray-700)}.users-header{background-color:var(--surface-dark-hover);border-color:var(--gray-700);color:var(--text-light)}.user-item{border-color:var(--gray-700);color:var(--text-light)}.user-item:hover{background-color:var(--surface-dark-hover)}input,input[type=password]{background-color:var(--surface-dark-hover);border-color:var(--gray-700);color:var(--text-light)}.avatar-preview{border-color:var(--gray-600)}.upload-avatar-btn{background-color:#1e1e1ecc;border-color:var(--gray-700);color:var(--text-light)}.upload-avatar-btn:hover{background-color:var(--primary-transparent);color:var(--primary-light);border-color:var(--primary)}.delete-user-btn{background-color:var(--surface-dark-hover);color:var(--text-light);border-color:var(--gray-700)}.back-btn{background-color:var(--surface-dark);color:var(--text-light);border-color:var(--gray-700)}.back-btn:hover{background-color:var(--surface-dark-hover);color:var(--primary-light)}}.bench-container{position:fixed;top:0;left:0;height:100vh;display:flex;transition:transform .3s ease;z-index:100}.bench-container.open{transform:translate(0)}.bench-container:not(.open){transform:translate(-200px)}.bench-container.open+.content-container{margin-left:200px;transition:margin-left .3s ease}.bench-toggle{position:absolute;right:-30px;top:50%;width:30px;height:60px;background-color:#86d6ff;color:#0e1b36;border:none;border-radius:0 5px 5px 0;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;box-shadow:2px 0 5px #0e1b3633}.bench{width:200px;height:100%;background-color:#e2e2e2;box-shadow:2px 0 10px #0e1b361a;padding:15px;overflow-y:auto;display:flex;flex-direction:column}.bench h3{margin-top:0;padding-bottom:10px;border-bottom:1px solid #d1d1d1;color:#0e1b36}.user-list{display:flex;flex-direction:column;gap:10px;padding-top:10px}.user-card{display:flex;align-items:center;padding:10px;background-color:#86d6ff4d;border-radius:5px;box-shadow:0 1px 3px #0e1b361a;cursor:grab;transition:all .2s}.user-card:hover{box-shadow:0 3px 6px #0e1b3633}.user-card:active{cursor:grabbing}.user-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;margin-right:10px;background-color:#86d6ff}.avatar{width:100%;height:100%;object-fit:cover}.user-info{flex:1}.user-name{font-weight:500;color:#0e1b36}.user-role{font-size:.8rem;color:#76777c}.loading,.error{padding:15px;text-align:center;color:#76777c}.error{color:#0e1b36}@media (prefers-color-scheme: dark){.bench{background-color:#0e1b36}.bench h3{border-bottom-color:#232429;color:#e2e2e2}.user-card{background-color:#152442}.user-name{color:#e2e2e2}.avatar{background-color:#86d6ff}}.user-wip-limit{margin-top:5px;font-size:.8rem;display:flex;align-items:center}.wip-limit-display{display:flex;align-items:center;cursor:pointer;padding:2px;border-radius:3px}.wip-limit-display:hover{background-color:#0000000d}.edit-wip-btn{background:none;border:none;font-size:14px;cursor:pointer;margin-left:5px;color:#666}.edit-wip-btn:hover{color:#007bff}.wip-limit-editor{display:flex;align-items:center}.wip-limit-editor input{width:40px;text-align:center;border:1px solid #ccc;border-radius:3px;padding:2px}.save-wip-btn,.cancel-wip-btn{background:none;border:none;padding:0 3px;font-size:14px;cursor:pointer;margin-left:3px}.save-wip-btn{color:#28a745}.save-wip-btn:hover{color:#218838}.cancel-wip-btn{color:#dc3545}.cancel-wip-btn:hover{color:#c82333}.user-task-count{margin-top:3px;font-size:.75rem;color:#666}.user-task-count.limit-reached{color:#dc3545;font-weight:700}.chat-container{position:fixed;bottom:20px;right:20px;z-index:1000;font-family:var(--font-family)}.chat-toggle-button{width:50px;height:50px;border-radius:50%;background-color:var(--primary);border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 8px #0003;transition:all .3s ease;position:relative}.chat-toggle-button:hover{background-color:var(--primary-dark);transform:translateY(-2px);box-shadow:0 6px 12px #0000004d}.chat-toggle-button svg{width:24px;height:24px}.unread-badge{position:absolute;top:-5px;right:-5px;background-color:var(--error);color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.chat-panel{width:350px;height:450px;background-color:#fff;border-radius:8px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 12px #00000026;animation:slide-in .3s ease}@keyframes slide-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-header{padding:12px 16px;background-color:var(--primary);color:#fff;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(0,0,0,.1)}.chat-header h3{margin:0;font-size:16px;font-weight:600}.chat-controls{display:flex;align-items:center;gap:8px}.close-chat-btn{background:none;border:none;color:#fff;font-size:20px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:transform .2s}.close-chat-btn:hover{transform:scale(1.2)}.chat-messages{flex:1;padding:16px;overflow-y:auto;background-color:#f5f5f5;display:flex;flex-direction:column;gap:8px}.chat-message{padding:10px 12px;border-radius:8px;max-width:80%;word-break:break-word}.system-message{align-self:center;background-color:#f0f0f0;color:#555;font-style:italic;font-size:12px;padding:6px 12px;border-radius:12px;margin:4px 0;max-width:90%}.system-content{text-align:center}.own-message{align-self:flex-end;background-color:var(--primary-light);color:var(--text-dark);border-radius:16px 16px 4px}.other-message{align-self:flex-start;background-color:#fff;color:var(--text-dark);border-radius:16px 16px 16px 4px;box-shadow:0 1px 2px #0000001a}.message-header{display:flex;justify-content:space-between;margin-bottom:4px;font-size:12px}.message-sender{font-weight:600;color:var(--primary-dark)}.message-room,.message-private{font-weight:400;font-style:italic;opacity:.7}.message-time{color:#888}.message-content{font-size:14px;line-height:1.4}.chat-input-container{padding:12px;display:flex;gap:8px;background-color:#fff;border-top:1px solid #eee}.chat-input{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:20px;resize:none;min-height:40px;max-height:100px;font-family:inherit;font-size:14px}.chat-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #86d6ff40}.send-button{background-color:var(--primary);color:#fff;border:none;border-radius:20px;padding:8px 16px;font-weight:600;cursor:pointer;transition:all .2s}.send-button:hover{background-color:var(--primary-dark);transform:translateY(-2px)}.send-button:disabled{background-color:#ccc;cursor:not-allowed;transform:none}.no-messages{display:flex;justify-content:center;align-items:center;height:100%;color:#888;font-style:italic}.message-type-select,.room-select,.recipient-input,.leave-room-btn{border:none;background-color:#fff3;color:#000;padding:4px 8px;border-radius:4px;font-size:12px}.message-type-select:focus,.room-select:focus,.recipient-input:focus{outline:none;background-color:#ffffff4d}.recipient-input::placeholder{color:#ffffffb3}.leave-room-btn{cursor:pointer;background-color:#ffffff4d;transition:background-color .2s}.leave-room-btn:hover{background-color:#fff6}.dark-mode .chat-panel{background-color:var(--surface-dark);border:1px solid var(--gray-700)}.dark-mode .chat-messages{background-color:var(--surface-dark-hover)}.dark-mode .chat-input-container{background-color:var(--surface-dark);border-top-color:var(--gray-700)}.dark-mode .chat-input{background-color:var(--surface-dark-hover);border-color:var(--gray-700);color:var(--text-light)}.dark-mode .other-message{background-color:var(--surface-dark-hover);color:var(--text-light)}.dark-mode .system-message{background-color:#ffffff0d;color:var(--text-light-secondary)}.dark-mode .own-message{background-color:var(--primary-dark);color:#fff}@media (max-width: 768px){.chat-panel{width:300px;height:400px;bottom:70px;right:10px}.chat-toggle-button{width:45px;height:45px}}#root{max-width:1440px;margin:0 auto;padding:0;width:100%}.app-container{display:flex;flex-direction:column;min-height:100vh}.app-header{position:sticky;top:0;z-index:100;background-color:var(--surface-light);padding:1rem 2rem;margin-bottom:2rem;box-shadow:0 2px 10px #0e1b361a;display:flex;justify-content:space-between;align-items:center;border-radius:.75rem;transition:padding .3s ease,box-shadow .3s ease}.app-header.sticky{box-shadow:0 4px 12px #0e1b3626;padding:.75rem 2rem}.app-header a{text-decoration:none;display:flex;align-items:center;gap:1rem}.app-logo{height:4em;will-change:filter;transition:filter .3s}.app-logo:hover{filter:drop-shadow(0 0 1em #86d6ff)}.app-logo.react:hover{filter:drop-shadow(0 0 1em rgba(134,214,255,.8))}.app-title{font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,#000,#838d8d);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.5rem;letter-spacing:-.025em;margin:0}.app-subtitle{color:#76777c;font-size:1.1rem;margin-top:.5rem;display:none}.header-nav{display:flex;gap:1rem;align-items:center}.nav-link{display:flex;align-items:center;font-weight:500;color:var(--gray-700);padding:.5rem .75rem;border-radius:.375rem;background:transparent;border:none;cursor:pointer;transition:all .2s ease;font-size:.9rem}.nav-link:hover{background-color:#86d6ff33;color:#86d6ff}.nav-link svg{margin-right:.5rem}.content-container{flex:1;display:flex;flex-direction:column;padding-bottom:2rem}.app-footer{margin-top:auto;background-color:var(--surface-light);padding:1.5rem 2rem;border-top:1px solid var(--gray-200);border-radius:.75rem}.footer-content{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto}.footer-info{color:var(--gray-600);font-size:.9rem}.footer-links{display:flex;gap:1.5rem}.footer-link{color:var(--gray-600);text-decoration:none;font-size:.9rem;transition:color .2s ease}.footer-link:hover{color:var(--primary)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){.app-logo.spin{animation:logo-spin infinite 20s linear}}.card{padding:2rem;border-radius:.75rem;background-color:#e2e2e2;box-shadow:0 4px 6px -1px #0e1b361a,0 2px 4px -1px #0e1b360f;transition:transform .3s ease,box-shadow .3s ease}.card:hover{transform:translateY(-5px);box-shadow:0 10px 15px -3px #0e1b361a,0 4px 6px -2px #0e1b360d}.read-the-docs{color:#76777c;margin-top:2rem;font-size:.9rem}.menu-controls{display:flex;justify-content:center;gap:1rem;margin-bottom:2rem;padding:1rem;background:#e2e2e2;border-radius:.75rem;box-shadow:0 2px 4px #0e1b361a}.menu-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.75rem;border-radius:.5rem;cursor:pointer;transition:all .2s ease;color:#0e1b36;text-decoration:none}.menu-item:hover{background:#86d6ff33;color:#86d6ff;transform:translateY(-2px)}.menu-item svg{width:1.5rem;height:1.5rem}.menu-item span{font-size:.875rem;font-weight:500}@media (max-width: 768px){.app-header{flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem}.app-header.sticky{padding:.75rem 1rem}.header-nav{width:100%;overflow-x:auto;padding-bottom:.5rem}.menu-controls{flex-wrap:wrap;justify-content:space-around;padding:.75rem}.menu-item{padding:.5rem;min-width:80px}.footer-content{flex-direction:column;gap:1rem;align-items:flex-start}.footer-links{flex-wrap:wrap;gap:1rem}}@media (prefers-color-scheme: dark){.app-header{background-color:var(--surface-dark);box-shadow:0 2px 10px #0003}.app-title{background:linear-gradient(135deg,#fff,#a0a0a0);-webkit-background-clip:text;background-clip:text}.app-subtitle{color:var(--gray-400)}.nav-link{color:var(--gray-300)}.nav-link:hover{background-color:#86d6ff26;color:var(--primary)}.app-footer{background-color:var(--surface-dark);border-top-color:var(--gray-800)}.footer-info,.footer-link{color:var(--gray-400)}.footer-link:hover{color:var(--primary)}.card{background-color:var(--surface-dark);box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003}.card:hover{box-shadow:0 10px 15px -3px #0000004d,0 4px 6px -2px #0003}.read-the-docs{color:var(--gray-400)}.menu-controls{background:var(--surface-dark);box-shadow:0 2px 4px #0003}.menu-item{color:var(--text-light)}.menu-item:hover{background:#86d6ff26;color:var(--primary)}}:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: hsl(6, 78%, 57%);--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-container-width: fit-content;--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-padding: 14px;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-toast-shadow: 0px 4px 12px rgba(0, 0, 0, .1);--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;width:var(--toastify-container-width);box-sizing:border-box;color:#fff;display:flex;flex-direction:column}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y: 0;position:relative;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;display:flex;flex:1 auto;align-items:center;word-break:break-word}@media only screen and (max-width: 480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width: 100%;margin-bottom:0;border-radius:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{margin-inline-end:10px;width:22px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;position:absolute;top:6px;right:6px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:1;opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{position:absolute;overflow:hidden;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
