:root{--primary-50:#eff6ff;--primary-100:#dbeafe;--primary-200:#bfdbfe;--primary-300:#93c5fd;--primary-400:#60a5fa;--primary-500:#3b82f6;--primary-600:#2563eb;--primary-700:#1d4ed8;--primary-800:#1e40af;--primary-900:#1e3a8a;--accent-50:#f0fdfa;--accent-100:#ccfbf1;--accent-200:#99f6e4;--accent-300:#5eead4;--accent-400:#2dd4bf;--accent-500:#14b8a6;--accent-600:#0d9488;--accent-700:#0f766e;--accent-800:#115e59;--accent-900:#134e4a;--neutral-50:#fafaf9;--neutral-100:#f5f5f4;--neutral-200:#e7e5e4;--neutral-300:#d6d3d1;--neutral-400:#a8a29e;--neutral-500:#78716c;--neutral-600:#57534e;--neutral-700:#44403c;--neutral-800:#292524;--neutral-900:#1c1917;--success:#047857;--success-light:#d1fae5;--success-dark:#059669;--warning:#f59e0b;--warning-light:#fef3c7;--warning-dark:#d97706;--error:#dc2626;--error-light:#fee2e2;--error-dark:#dc2626;--info:#3b82f6;--info-light:#dbeafe;--info-dark:#2563eb;--priority-urgent:#dc2626;--priority-high:#f59e0b;--priority-medium:#3b82f6;--priority-low:#6b7280;--status-todo:#9ca3af;--status-in-progress:#3b82f6;--status-review:#8b5cf6;--status-done:#10b981;--status-blocked:#ef4444;--font-sans:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;--font-mono:'JetBrains Mono','Fira Code','SF Mono',Consolas,monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-none:1;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:2;--tracking-tight:-0.025em;--tracking-normal:0;--tracking-wide:0.025em;--space-0:0;--space-px:1px;--space-0-5:0.125rem;--space-1:0.25rem;--space-1-5:0.375rem;--space-2:0.5rem;--space-2-5:0.625rem;--space-3:0.75rem;--space-3-5:0.875rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-9:2.25rem;--space-10:2.5rem;--space-11:2.75rem;--space-12:3rem;--space-14:3.5rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-none:0;--radius-sm:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--radius-full:9999px;--shadow-xs:0 1px 2px 0 rgb(0 0 0 / 0.05);--shadow-sm:0 1px 3px 0 rgb(0 0 0 / 0.1),0 1px 2px -1px rgb(0 0 0 / 0.1);--shadow-md:0 4px 6px -1px rgb(0 0 0 / 0.1),0 2px 4px -2px rgb(0 0 0 / 0.1);--shadow-lg:0 10px 15px -3px rgb(0 0 0 / 0.1),0 4px 6px -4px rgb(0 0 0 / 0.1);--shadow-xl:0 20px 25px -5px rgb(0 0 0 / 0.1),0 8px 10px -6px rgb(0 0 0 / 0.1);--shadow-2xl:0 25px 50px -12px rgb(0 0 0 / 0.25);--shadow-inner:inset 0 2px 4px 0 rgb(0 0 0 / 0.05);--shadow-card:0 1px 3px rgb(0 0 0 / 0.08),0 1px 2px rgb(0 0 0 / 0.04);--shadow-card-hover:0 4px 12px rgb(0 0 0 / 0.1);--shadow-dropdown:0 10px 15px -3px rgb(0 0 0 / 0.1),0 4px 6px -2px rgb(0 0 0 / 0.05);--shadow-modal:0 25px 50px -12px rgb(0 0 0 / 0.25);--shadow-drawer:-4px 0 24px rgb(0 0 0 / 0.12);--transition-fast:150ms ease;--transition-normal:200ms ease;--transition-slow:300ms ease;--transition-slower:500ms ease;--z-dropdown:10;--z-sticky:20;--z-fixed:30;--z-modal-backdrop:40;--z-modal:50;--z-popover:60;--z-tooltip:70}*,*::before,*::after{box-sizing:border-box}html{font-family:var(--font-sans);font-size:16px;line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden;overscroll-behavior-x:none}body{margin:0;background-color:var(--neutral-50);color:var(--neutral-900)}[x-cloak]{display:none !important}input,textarea,select,input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="search"],input[type="tel"],input[type="url"],input[type="date"],input[type="time"],input[type="datetime-local"]{font-size:16px !important;font-family:inherit}input:not([type="checkbox"]):not([type="radio"]),textarea,select,button,[role="button"],.btn,a.btn{min-height:44px;touch-action:manipulation}input[type="checkbox"],input[type="radio"]{width:20px;height:20px;min-width:20px;min-height:20px;cursor:pointer;touch-action:manipulation}label{cursor:pointer;touch-action:manipulation}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.text-4xl{font-size:var(--text-4xl)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);min-height:44px;font-family:inherit;font-size:var(--text-sm);font-weight:var(--font-medium);line-height:1;border:1px solid transparent;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);user-select:none;text-decoration:none}.btn:disabled{opacity:0.5;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}.btn-primary{background:var(--primary-600);color:white}.btn-primary:hover:not(:disabled){background:var(--primary-700);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-secondary{background:white;color:var(--neutral-700);border-color:var(--neutral-300)}.btn-secondary:hover:not(:disabled){background:var(--neutral-50);border-color:var(--neutral-400)}.btn-ghost{background:transparent;color:var(--neutral-600)}.btn-ghost:hover:not(:disabled){background:var(--neutral-100);color:var(--neutral-900)}.btn-danger{background:var(--error);color:white}.btn-danger:hover:not(:disabled){background:var(--error-dark)}.btn-success{background:var(--success);color:white}.btn-success:hover:not(:disabled){background:var(--success-dark)}.btn-sm{padding:var(--space-2) var(--space-3);min-height:36px;font-size:var(--text-xs)}.btn-lg{padding:var(--space-4) var(--space-6);min-height:52px;font-size:var(--text-base)}.btn-icon{padding:var(--space-2);min-width:44px;min-height:44px}.btn-icon-sm{padding:var(--space-1-5);min-width:36px;min-height:36px}.card{background:white;border:1px solid var(--neutral-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);transition:all var(--transition-normal)}.card-interactive:hover{border-color:var(--neutral-300);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.card-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--neutral-100);display:flex;align-items:center;justify-content:space-between}.card-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--neutral-900);margin:0}.card-body{padding:var(--space-5)}.card-footer{padding:var(--space-4) var(--space-5);border-top:1px solid var(--neutral-100);background:var(--neutral-50)}.card-clipped{overflow:hidden}.form-label{display:block;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--neutral-700);margin-bottom:var(--space-1-5)}.form-input{width:100%;padding:var(--space-3) var(--space-4);min-height:44px;font-family:inherit;font-size:16px;color:var(--neutral-900);background:white;border:1px solid var(--neutral-300);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.form-input::placeholder{color:var(--neutral-400)}.form-input:hover:not(:disabled){border-color:var(--neutral-400)}.form-input:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px var(--primary-100)}.form-input:disabled{background:var(--neutral-100);cursor:not-allowed}.form-input-error{border-color:var(--error)}.form-input-error:focus{box-shadow:0 0 0 3px var(--error-light)}.form-helper{font-size:var(--text-sm);color:var(--neutral-500);margin-top:var(--space-1-5)}.form-error{font-size:var(--text-sm);color:var(--error);margin-top:var(--space-1-5)}.form-textarea{min-height:100px;resize:vertical}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right var(--space-3) center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:var(--space-10)}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2-5);font-size:var(--text-xs);font-weight:var(--font-medium);line-height:1;border-radius:var(--radius-full)}.badge-primary{background:var(--primary-100);color:var(--primary-700)}.badge-success{background:var(--success-light);color:var(--success-dark)}.badge-warning{background:var(--warning-light);color:var(--warning-dark)}.badge-error{background:var(--error-light);color:var(--error-dark)}.badge-neutral{background:var(--neutral-100);color:var(--neutral-600)}.badge-urgent{background:#fef2f2;color:var(--priority-urgent)}.badge-high{background:#fffbeb;color:var(--priority-high)}.badge-medium{background:#eff6ff;color:var(--priority-medium)}.badge-low{background:var(--neutral-100);color:var(--priority-low)}.badge-enabled{background:var(--success-light);color:var(--success-dark)}.badge-blocked{background:var(--error-light);color:var(--error-dark)}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--primary-500) 0%,var(--primary-700) 100%);color:white;font-weight:var(--font-semibold);flex-shrink:0;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-xs{width:24px;height:24px;font-size:var(--text-xs)}.avatar-sm{width:32px;height:32px;font-size:var(--text-sm)}.avatar-md{width:40px;height:40px;font-size:var(--text-base)}.avatar-lg{width:48px;height:48px;font-size:var(--text-lg)}.avatar-xl{width:64px;height:64px;font-size:var(--text-xl)}.avatar-group{display:flex}.avatar-group .avatar{border:2px solid white;margin-left:-8px}.avatar-group .avatar:first-child{margin-left:0}.nav{background:white;border-bottom:1px solid var(--neutral-200);padding:var(--space-2) var(--space-3)}@media (min-width:480px){.nav{padding:var(--space-3) var(--space-4)}}@media (min-width:768px){.nav{padding:var(--space-4) var(--space-6)}}.nav-container{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);max-width:1400px;margin:0 auto;width:100%}@media (min-width:640px){.nav-container{gap:var(--space-4)}}.nav-brand{display:flex;align-items:center;gap:var(--space-3);font-weight:var(--font-semibold);font-size:var(--text-lg);color:var(--neutral-900);text-decoration:none}.nav-links{display:flex;align-items:center;gap:var(--space-1)}.nav-link{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);min-height:40px;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--neutral-600);text-decoration:none;border-radius:var(--radius-lg);transition:all var(--transition-fast)}@media (min-width:640px){.nav-link{padding:var(--space-2) var(--space-3);min-height:44px}}.nav-link:hover{background:var(--neutral-100);color:var(--neutral-900)}.nav-link-active{background:var(--primary-50);color:var(--primary-700)}.container{width:100%;max-width:1280px;margin:0 auto;padding-left:var(--space-4);padding-right:var(--space-4)}@media (min-width:640px){.container{padding-left:var(--space-6);padding-right:var(--space-6)}}.stack > * + *{margin-top:var(--space-4)}.stack-sm > * + *{margin-top:var(--space-2)}.stack-lg > * + *{margin-top:var(--space-6)}.stack-xl > * + *{margin-top:var(--space-8)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12) var(--space-6);text-align:center}.empty-state-icon{width:64px;height:64px;color:var(--neutral-300);margin-bottom:var(--space-4)}.empty-state-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--neutral-900);margin:0 0 var(--space-2)}.empty-state-description{font-size:var(--text-sm);color:var(--neutral-500);margin:0 0 var(--space-6);max-width:320px}.skeleton{background:linear-gradient(90deg,var(--neutral-200) 25%,var(--neutral-100) 50%,var(--neutral-200) 75% );background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:var(--radius-md)}@keyframes skeleton-loading{0%{background-position:200% 0}100%{background-position:-200% 0}}.skeleton-text{height:1em;margin-bottom:var(--space-2)}.skeleton-text:last-child{width:60%}.skeleton-avatar{border-radius:var(--radius-full)}.skeleton-card{height:120px}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:white;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);border-left:4px solid var(--neutral-400)}.toast-success{border-left-color:var(--success)}.toast-error{border-left-color:var(--error)}.toast-warning{border-left-color:var(--warning)}.toast-info{border-left-color:var(--info)}:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}:focus:not(:focus-visible){outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes fade-out{from{opacity:1}to{opacity:0}}@keyframes slide-up{from{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slide-down{from{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slide-in-right{from{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slide-out-right{from{transform:translateX(0)}to{transform:translateX(100%)}}@keyframes scale-in{from{transform:scale(0.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.5}}@keyframes bounce{0%,100%{transform:translateY(-5%);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,0.2,1)}}.animate-fade-in{animation:fade-in var(--transition-normal) ease-out}.animate-slide-up{animation:slide-up var(--transition-normal) ease-out}.animate-slide-down{animation:slide-down var(--transition-normal) ease-out}.animate-scale-in{animation:scale-in var(--transition-normal) ease-out}.animate-spin{animation:spin 1s linear infinite}.animate-pulse{animation:pulse 2s cubic-bezier(0.4,0,0.6,1) infinite}.animate-bounce{animation:bounce 1s infinite}.spinner{width:24px;height:24px;border:3px solid var(--neutral-200);border-top-color:var(--primary-600);border-radius:50%;animation:spin 0.8s linear infinite}.spinner-sm{width:16px;height:16px;border-width:2px}.spinner-lg{width:40px;height:40px;border-width:4px}.progress{height:8px;background:var(--neutral-200);border-radius:var(--radius-full);overflow:hidden}.progress-bar{height:100%;background:linear-gradient(90deg,var(--primary-500),var(--accent-500));border-radius:var(--radius-full);transition:width var(--transition-slow)}.progress-sm{height:4px}.progress-lg{height:12px}.dropdown{position:relative;display:inline-block}.dropdown-menu{position:absolute;top:100%;right:0;min-width:200px;background:white;border:1px solid var(--neutral-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-dropdown);padding:var(--space-2);z-index:var(--z-dropdown);opacity:0;visibility:hidden;transform:translateY(-8px);transition:all var(--transition-fast)}.dropdown.open .dropdown-menu,.dropdown:focus-within .dropdown-menu{opacity:1;visibility:visible;transform:translateY(4px)}.dropdown-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2-5) var(--space-3);font-size:var(--text-sm);color:var(--neutral-700);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.dropdown-item:hover{background:var(--neutral-100);color:var(--neutral-900)}.dropdown-item-danger:hover{background:var(--error-light);color:var(--error-dark)}.dropdown-divider{height:1px;background:var(--neutral-100);margin:var(--space-2) 0}[data-tooltip]{position:relative}[data-tooltip]::after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translateX(-50%) translateY(-4px);padding:var(--space-1-5) var(--space-3);background:var(--neutral-900);color:white;font-size:var(--text-xs);font-weight:var(--font-medium);white-space:nowrap;border-radius:var(--radius-md);opacity:0;visibility:hidden;transition:all var(--transition-fast);z-index:var(--z-tooltip);pointer-events:none}[data-tooltip]:hover::after{opacity:1;visibility:visible;transform:translateX(-50%) translateY(-8px)}.alert{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-xl);font-size:var(--text-sm)}.alert-icon{flex-shrink:0;width:20px;height:20px}.alert-info{background:var(--info-light);color:var(--info-dark);border:1px solid var(--primary-200)}.alert-success{background:var(--success-light);color:var(--success-dark);border:1px solid var(--accent-200)}.alert-warning{background:var(--warning-light);color:var(--warning-dark);border:1px solid #fcd34d}.alert-error{background:var(--error-light);color:var(--error-dark);border:1px solid #fca5a5}.switch{position:relative;display:inline-flex;width:44px;height:24px;cursor:pointer}.switch input{opacity:0;width:0;height:0}.switch-track{position:absolute;inset:0;background:var(--neutral-300);border-radius:var(--radius-full);transition:background var(--transition-fast)}.switch input:checked + .switch-track{background:var(--primary-600)}.switch-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;background:white;border-radius:var(--radius-full);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.switch input:checked ~ .switch-thumb{transform:translateX(20px)}.switch input:focus-visible + .switch-track{outline:2px solid var(--primary-500);outline-offset:2px}.divider{height:1px;background:var(--neutral-200);margin:var(--space-4) 0}.divider-vertical{width:1px;height:100%;background:var(--neutral-200);margin:0 var(--space-4)}.divider-with-text{display:flex;align-items:center;gap:var(--space-4);color:var(--neutral-500);font-size:var(--text-sm)}.divider-with-text::before,.divider-with-text::after{content:'';flex:1;height:1px;background:var(--neutral-200)}button:active:not(:disabled),a:active,[role="button"]:active,.task-card:active,.cursor-pointer:active,summary:active,label:active{transform:scale(0.97);transition:transform 0.04s ease}button,a,[role="button"],.task-card,.cursor-pointer,label,summary{-webkit-tap-highlight-color:transparent}@media (prefers-reduced-motion:reduce){button:active:not(:disabled),a:active,[role="button"]:active,.task-card:active,.cursor-pointer:active,summary:active,label:active{transform:none}}.click-spinner{display:inline-block;width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:click-spin 0.6s linear infinite;vertical-align:-0.15em}@keyframes click-spin{to{transform:rotate(360deg)}}