:root{--primary:#0f5ffe;--primary-foreground:#fff;--secondary:#333;--secondary-foreground:#fff;--destructive:#a62911;--destructive-foreground:#fff;--background:#f5f5f5;--foreground:#333;--card:#fff;--card-foreground:#111;--muted:#f2f3f0;--muted-foreground:#5b5f66;--popover:#fff;--popover-foreground:#111;--accent:#e5eeff;--accent-foreground:#0f5ffe;--border:#e1e2e5;--input:#9da4b3;--ring:#e1e2e5;--sidebar:#fff;--sidebar-accent:#333;--sidebar-accent-foreground:#f5f5f5;--sidebar-foreground:#5b5f66;--sidebar-primary:#0f5ffe;--sidebar-primary-foreground:#026;--sidebar-ring:#e1e2e5;--sidebar-border:#e1e2e5;--color-info:#c9d6f0;--color-info-foreground:#013;--color-success:#ddf0c9;--color-success-foreground:#1a3300;--color-warning:#f5e6d7;--color-warning-foreground:#630;--color-error:#f5d7f3;--color-error-foreground:#66005e;--status-todo:#9ca3af;--status-in-progress:#3b82f6;--status-in-review:#eab308;--status-done:#22c55e;--priority-high:#ef4444;--priority-medium:#f59e0b;--priority-low:#3b82f6;--font-primary:"Roboto",sans-serif;--font-secondary:"Roboto Mono",monospace;--radius-none:0px;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-full:999px;--shadow-sm:0 1px 2px rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--background);color:var(--foreground);font-family:var(--font-primary);line-height:1.5;min-height:100vh}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:inherit}img{display:block;max-width:100%}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--input)}.sr-only{height:1px;margin:-1px;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0}.sr-only,.truncate{overflow:hidden;white-space:nowrap}.truncate{text-overflow:ellipsis}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.skeleton{animation:skeleton-pulse 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--muted) 25%,var(--border) 50%,var(--muted) 75%);background-size:200% 100%;border-radius:var(--radius-md)}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pulse-dot{animation:pulse 2s ease-in-out infinite;background-color:var(--status-done);border-radius:50%;height:8px;width:8px}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:transform .2s ease,opacity .2s ease}.slide-enter-from{opacity:0;transform:translateY(-10px)}.slide-leave-to{opacity:0;transform:translateY(10px)}.toast-container[data-v-4ca5d271]{display:flex;flex-direction:column;gap:8px;max-width:400px;position:fixed;right:16px;top:16px;z-index:100}.toast[data-v-4ca5d271]{animation:slideIn-4ca5d271 .2s ease;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);font-size:14px;padding:12px 16px}.toast--error[data-v-4ca5d271]{background:var(--color-error);color:var(--color-error-foreground)}.toast--success[data-v-4ca5d271]{background:var(--color-success);color:var(--color-success-foreground)}.toast--warning[data-v-4ca5d271]{background:var(--color-warning);color:var(--color-warning-foreground)}@keyframes slideIn-4ca5d271{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.app-button[data-v-e78525c3]{align-items:center;border:1px solid transparent;border-radius:var(--radius-md);display:inline-flex;font-weight:500;gap:8px;justify-content:center;line-height:1;transition:background-color .15s,border-color .15s,opacity .15s;white-space:nowrap}.app-button[data-v-e78525c3]:disabled{cursor:not-allowed;opacity:.5}.app-button--sm[data-v-e78525c3]{font-size:13px;padding:6px 12px}.app-button--md[data-v-e78525c3]{font-size:14px;padding:8px 16px}.app-button--lg[data-v-e78525c3]{font-size:16px;padding:12px 24px}.app-button--default[data-v-e78525c3]{background-color:var(--primary);color:var(--primary-foreground)}.app-button--default[data-v-e78525c3]:hover:not(:disabled){opacity:.9}.app-button--secondary[data-v-e78525c3]{background-color:var(--secondary);color:var(--secondary-foreground)}.app-button--secondary[data-v-e78525c3]:hover:not(:disabled){opacity:.9}.app-button--destructive[data-v-e78525c3]{background-color:var(--destructive);color:var(--destructive-foreground)}.app-button--destructive[data-v-e78525c3]:hover:not(:disabled){opacity:.9}.app-button--outline[data-v-e78525c3]{background-color:transparent;border-color:var(--border);color:var(--foreground)}.app-button--outline[data-v-e78525c3]:hover:not(:disabled){background-color:var(--muted)}.app-button--ghost[data-v-e78525c3]{background-color:transparent;color:var(--foreground)}.app-button--ghost[data-v-e78525c3]:hover:not(:disabled){background-color:var(--muted)}.app-button__spinner[data-v-e78525c3]{animation:spin-e78525c3 .6s linear infinite;border:2px solid;border-radius:50%;border-right:2px solid transparent;height:14px;width:14px}@keyframes spin-e78525c3{to{transform:rotate(1turn)}}.error-page[data-v-571f7148]{align-items:center;background-color:var(--background);display:flex;justify-content:center;min-height:100vh;padding:24px}.error-card[data-v-571f7148]{max-width:480px;text-align:center}.error-card__logo[data-v-571f7148]{display:inline-flex;margin-bottom:32px}.error-card__code[data-v-571f7148]{color:var(--muted-foreground);font-size:80px;font-weight:800;line-height:1;margin-bottom:16px}.error-card__message[data-v-571f7148]{color:var(--foreground);font-size:24px;font-weight:600;margin-bottom:8px}.error-card__description[data-v-571f7148]{color:var(--muted-foreground);font-size:14px;line-height:1.5;margin-bottom:32px}.error-card__actions[data-v-571f7148]{align-items:center;display:flex;flex-direction:column;gap:12px}.error-card__link[data-v-571f7148]{background:none;border:none;color:var(--primary);cursor:pointer;font-size:14px}.error-card__link[data-v-571f7148]:hover{text-decoration:underline}
