.app-header[data-v-6cc807fe]{position:fixed;top:0;left:0;right:0;height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:#1f2937;border-bottom:1px solid rgba(255,255,255,.1);z-index:1030}.header-left[data-v-6cc807fe]{display:flex;align-items:center;gap:16px}.sidebar-toggle[data-v-6cc807fe]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;background:transparent;border:none;color:#9ca3af;cursor:pointer;transition:all .1s ease}.sidebar-toggle[data-v-6cc807fe]:hover{background:#374151;color:#fff}.logo[data-v-6cc807fe]{display:flex;align-items:center;gap:8px;text-decoration:none}.logo .logo-icon[data-v-6cc807fe]{width:28px;height:28px;color:#e24329}.logo .logo-text[data-v-6cc807fe]{font-size:16px;font-weight:600;color:#fff}.nav-links[data-v-6cc807fe]{display:flex;align-items:center;gap:4px;margin-left:16px}.nav-link[data-v-6cc807fe]{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:13px;color:#d1d5db;text-decoration:none;border-radius:6px;transition:all .1s ease}.nav-link svg[data-v-6cc807fe]{opacity:.7}.nav-link[data-v-6cc807fe]:hover{background:#374151;color:#fff}.nav-link:hover svg[data-v-6cc807fe]{opacity:1}.nav-link.router-link-active[data-v-6cc807fe]{background:#6366f126;color:#fff}.nav-link.router-link-active svg[data-v-6cc807fe]{opacity:1}.header-center[data-v-6cc807fe]{flex:1;max-width:480px;margin:0 24px}.search-box[data-v-6cc807fe]{position:relative;display:flex;align-items:center}.search-icon[data-v-6cc807fe]{position:absolute;left:12px;color:#9ca3af;pointer-events:none}.search-input[data-v-6cc807fe]{width:100%;padding:8px 36px;font-size:13px;color:#fff;background:#ffffff14;border:1px solid transparent;border-radius:6px;transition:all .1s ease}.search-input[data-v-6cc807fe]::placeholder{color:#9ca3af}.search-input[data-v-6cc807fe]:hover{background:#ffffff1f}.search-input[data-v-6cc807fe]:focus{outline:none;background:#ffffff26;border-color:#6366f1}.search-shortcut[data-v-6cc807fe]{position:absolute;right:12px;padding:2px 6px;font-size:11px;color:#9ca3af;background:#ffffff1a;border-radius:4px}.header-right[data-v-6cc807fe]{display:flex;align-items:center;gap:8px}.header-btn[data-v-6cc807fe]{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;background:transparent;border:none;color:#9ca3af;cursor:pointer;transition:all .1s ease}.header-btn[data-v-6cc807fe]:hover{background:#374151;color:#fff}.badge-count[data-v-6cc807fe]{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:600;color:#fff;background:#ef4444;border-radius:9999px;display:flex;align-items:center;justify-content:center}.user-dropdown[data-v-6cc807fe]{position:relative;margin-left:8px}.user-btn[data-v-6cc807fe]{display:flex;align-items:center;gap:8px;padding:4px;background:transparent;border:none;cursor:pointer;border-radius:6px;transition:all .1s ease}.user-btn[data-v-6cc807fe]:hover{background:#374151}.user-btn .chevron[data-v-6cc807fe]{color:#9ca3af;transition:transform .1s ease}.user-btn .chevron.rotated[data-v-6cc807fe]{transform:rotate(180deg)}.avatar[data-v-6cc807fe]{display:flex;align-items:center;justify-content:center;border-radius:9999px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-weight:600;overflow:hidden;flex-shrink:0;position:relative}.avatar img[data-v-6cc807fe]{width:100%;height:100%;object-fit:cover}.avatar.avatar-md[data-v-6cc807fe]{width:28px;height:28px;font-size:13px}.avatar.avatar-lg[data-v-6cc807fe]{width:40px;height:40px;font-size:16px}.dropdown-menu[data-v-6cc807fe]{position:absolute;top:calc(100% + 8px);right:0;min-width:240px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 15px -3px #00000014,0 4px 6px -2px #0000000a;overflow:hidden;z-index:1000}.dropdown-header[data-v-6cc807fe]{padding:16px;background:#f9fafb}.user-info[data-v-6cc807fe]{display:flex;align-items:center;gap:12px}.user-details[data-v-6cc807fe]{flex:1;min-width:0}.user-name[data-v-6cc807fe]{font-weight:600;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email[data-v-6cc807fe]{font-size:13px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-divider[data-v-6cc807fe]{height:1px;background:#e5e7eb}.dropdown-item[data-v-6cc807fe]{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;font-size:14px;color:#1f2937;text-decoration:none;background:transparent;border:none;cursor:pointer;transition:background .1s ease}.dropdown-item svg[data-v-6cc807fe]{color:#6b7280}.dropdown-item[data-v-6cc807fe]:hover{background:#f9fafb}.dropdown-item.danger[data-v-6cc807fe]{color:#ef4444}.dropdown-item.danger svg[data-v-6cc807fe]{color:#ef4444}.dropdown-item.danger[data-v-6cc807fe]:hover{background:#fee2e2}.dropdown-item.disabled[data-v-6cc807fe]{color:#9ca3af;cursor:not-allowed}.dropdown-item.disabled svg[data-v-6cc807fe]{color:#9ca3af}.dropdown-item.disabled[data-v-6cc807fe]:hover{background:transparent}.dropdown-item .coming-soon[data-v-6cc807fe]{margin-left:auto;font-size:11px;color:#9ca3af;background:#f3f4f6;padding:2px 6px;border-radius:4px}.create-dropdown[data-v-6cc807fe]{position:relative}.create-dropdown .header-btn.active[data-v-6cc807fe]{background:#f3f4f6;color:#6366f1}.create-dropdown .create-menu[data-v-6cc807fe]{min-width:200px;padding:8px 0}.auth-btn[data-v-6cc807fe]{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;font-size:13px;font-weight:500;border-radius:6px;text-decoration:none;transition:all .1s ease;white-space:nowrap}.auth-btn-secondary[data-v-6cc807fe]{color:#6b7280;background:transparent;border:1px solid #e5e7eb}.auth-btn-secondary[data-v-6cc807fe]:hover{color:#1f2937;border-color:#6b7280;background:#f3f4f6}.auth-btn-primary[data-v-6cc807fe]{color:#fff;background:#6366f1;border:1px solid #6366f1;margin-left:8px}.auth-btn-primary[data-v-6cc807fe]:hover{background:#3e41ee;border-color:#3e41ee}.dropdown-enter-active[data-v-6cc807fe],.dropdown-leave-active[data-v-6cc807fe]{transition:all .15s ease}.dropdown-enter-from[data-v-6cc807fe],.dropdown-leave-to[data-v-6cc807fe]{opacity:0;transform:translateY(-8px)}.admin-item[data-v-6cc807fe]{color:#9f7aea!important}.admin-item[data-v-6cc807fe]:hover{background:#9f7aea1a!important}.nav-icon[data-v-f587f4d7]{width:16px;height:16px;flex-shrink:0}.app-sidebar[data-v-e72e8dc6]{display:flex;flex-direction:column;background:#1f2937;overflow:hidden;transition:width .2s ease}.sidebar-nav[data-v-e72e8dc6]{flex:1;padding:12px;overflow-y:auto;overflow-x:hidden}.sidebar-nav[data-v-e72e8dc6]::-webkit-scrollbar{width:6px}.sidebar-nav[data-v-e72e8dc6]::-webkit-scrollbar-track{background:transparent}.sidebar-nav[data-v-e72e8dc6]::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.sidebar-nav[data-v-e72e8dc6]::-webkit-scrollbar-thumb:hover{background:#fff3}.nav-section[data-v-e72e8dc6]{margin-bottom:16px}.nav-section[data-v-e72e8dc6]:last-child{margin-bottom:0}.nav-section-title[data-v-e72e8dc6]{padding:8px 12px;font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.nav-item[data-v-e72e8dc6]{display:flex;align-items:center;gap:12px;padding:8px 12px;font-size:13px;color:#d1d5db;text-decoration:none;border-radius:6px;transition:all .1s ease;white-space:nowrap}.nav-item[data-v-e72e8dc6]:hover{background:#374151;color:#fff}.nav-item.active[data-v-e72e8dc6]{background:#6366f126;color:#fff}.nav-item.active .nav-icon[data-v-e72e8dc6]{color:#6366f1}.collapsed .nav-item[data-v-e72e8dc6]{justify-content:center;padding:8px}.nav-context[data-v-e72e8dc6]{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1)}.context-header[data-v-e72e8dc6]{display:flex;align-items:center;gap:12px;padding:8px 12px;text-decoration:none;border-radius:6px;transition:background .1s ease}.context-header[data-v-e72e8dc6]:hover{background:#374151}.collapsed .context-header[data-v-e72e8dc6]{justify-content:center;padding:8px}.context-avatar[data-v-e72e8dc6]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-weight:600;font-size:13px;border-radius:6px;flex-shrink:0}.context-info[data-v-e72e8dc6]{min-width:0;overflow:hidden}.context-name[data-v-e72e8dc6]{font-size:13px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.context-path[data-v-e72e8dc6]{font-size:11px;color:#9ca3af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-icon[data-v-e72e8dc6]{width:16px;height:16px;flex-shrink:0;opacity:.8}.nav-label[data-v-e72e8dc6]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.nav-badge[data-v-e72e8dc6]{padding:2px 6px;font-size:11px;font-weight:500;color:#fff;background:#4b5563;border-radius:9999px}.nav-badge.badge-warning[data-v-e72e8dc6]{background:#f59e0b;color:#111827}.nav-badge.badge-danger[data-v-e72e8dc6]{background:#ef4444}.nav-badge.badge-success[data-v-e72e8dc6]{background:#22c55e}.sidebar-footer[data-v-e72e8dc6]{padding:12px;border-top:1px solid rgba(255,255,255,.1)}.collapse-btn[data-v-e72e8dc6]{display:flex;align-items:center;justify-content:center;width:100%;height:32px;background:transparent;border:none;color:#9ca3af;cursor:pointer;border-radius:6px;transition:all .1s ease}.collapse-btn[data-v-e72e8dc6]:hover{background:#374151;color:#fff}.collapse-btn svg[data-v-e72e8dc6]{width:16px;height:16px;transition:transform .2s ease}.collapse-btn svg.rotated[data-v-e72e8dc6]{transform:rotate(180deg)}.collapsed .nav-section-title[data-v-e72e8dc6]{display:none}.hidden[data-v-e72e8dc6]{transform:translate(-100%)}select.form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M3 4.5L6 7.5L9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}#app{min-height:100vh}.app-layout{display:flex;min-height:calc(100vh - 52px);padding-top:52px}.app-main{flex:1;margin-left:240px;transition:margin-left .2s ease;background:#f9fafb;min-height:calc(100vh - 52px)}.sidebar-collapsed .app-main{margin-left:64px}.sidebar-hidden .app-main{margin-left:0}@media (max-width: 768px){.app-main{margin-left:0}}:root{--gl-color-neutral-0: #fff;--gl-color-neutral-10: #fbfafd;--gl-color-neutral-50: #f0f0f2;--gl-color-neutral-100: #dcdcde;--gl-color-neutral-200: #bfbfc3;--gl-color-neutral-300: #999;--gl-color-neutral-400: #868686;--gl-color-neutral-500: #737278;--gl-color-neutral-600: #626167;--gl-color-neutral-700: #525156;--gl-color-neutral-800: #3d3c40;--gl-color-neutral-900: #1f1e24;--gl-color-neutral-950: #0a090d;--gl-color-blue-50: #e9f3fc;--gl-color-blue-100: #cbe2f9;--gl-color-blue-200: #9dc5f2;--gl-color-blue-300: #63a6e9;--gl-color-blue-400: #428fdc;--gl-color-blue-500: #1f75cb;--gl-color-blue-600: #1068bf;--gl-color-blue-700: #0b5cad;--gl-color-blue-800: #064787;--gl-color-blue-900: #033464;--gl-color-blue-950: #002850;--gl-color-green-50: #ecf4ee;--gl-color-green-100: #c3e6cd;--gl-color-green-200: #91d4a8;--gl-color-green-300: #52b87a;--gl-color-green-400: #2da160;--gl-color-green-500: #108548;--gl-color-green-600: #217645;--gl-color-green-700: #24663b;--gl-color-green-800: #0d532a;--gl-color-green-900: #0a4020;--gl-color-green-950: #072b15;--gl-color-red-50: #fcf1ef;--gl-color-red-100: #fdd4cd;--gl-color-red-200: #fcb5aa;--gl-color-red-300: #f57f6c;--gl-color-red-400: #ec5941;--gl-color-red-500: #dd2b0e;--gl-color-red-600: #c91c00;--gl-color-red-700: #ae1800;--gl-color-red-800: #8d1300;--gl-color-red-900: #660e00;--gl-color-red-950: #4d0a00;--gl-color-orange-50: #fdf1dd;--gl-color-orange-100: #f5d9a8;--gl-color-orange-200: #e9be74;--gl-color-orange-300: #d99530;--gl-color-orange-400: #c17d10;--gl-color-orange-500: #ab6100;--gl-color-orange-600: #9e5a00;--gl-color-orange-700: #8f4700;--gl-color-orange-800: #703800;--gl-color-orange-900: #5c2900;--gl-color-orange-950: #421f00;--gl-font-family-default: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--gl-font-family-monospace: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--gl-font-size-100: .75rem;--gl-font-size-200: .8125rem;--gl-font-size-300: .875rem;--gl-font-size-400: 1rem;--gl-font-size-500: 1.125rem;--gl-font-size-600: 1.3125rem;--gl-font-size-700: 1.5rem;--gl-font-size-800: 1.75rem;--gl-font-size-sm: var(--gl-font-size-100);--gl-font-size-md: var(--gl-font-size-300);--gl-font-size-lg: var(--gl-font-size-400);--gl-line-height-12: .75rem;--gl-line-height-16: 1rem;--gl-line-height-20: 1.25rem;--gl-line-height-24: 1.5rem;--gl-line-height-28: 1.75rem;--gl-line-height-32: 2rem;--gl-line-height-heading: 1.25;--gl-spacing-0: 0;--gl-spacing-1: .125rem;--gl-spacing-2: .25rem;--gl-spacing-3: .5rem;--gl-spacing-4: .75rem;--gl-spacing-5: 1rem;--gl-spacing-6: 1.5rem;--gl-spacing-7: 2rem;--gl-spacing-8: 2.5rem;--gl-spacing-9: 3rem;--gl-spacing-10: 3.5rem;--gl-spacing-11: 4rem;--gl-spacing-12: 5rem;--gl-border-radius-none: 0;--gl-border-radius-xs: 1px;--gl-border-radius-sm: .125rem;--gl-border-radius-md: .25rem;--gl-border-radius-base: .25rem;--gl-border-radius-lg: .5rem;--gl-border-radius-xl: .75rem;--gl-border-radius-2xl: 1rem;--gl-border-radius-full: 9999px;--gl-border-color-default: var(--gl-color-neutral-100);--gl-border-color-subtle: #ececef;--gl-border-color-strong: var(--gl-color-neutral-200);--gl-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--gl-shadow-md: 0 2px 8px rgba(0, 0, 0, .08), 0 0 2px rgba(0, 0, 0, .08);--gl-shadow-lg: 0 4px 12px rgba(0, 0, 0, .15);--gl-shadow-xl: 0 8px 16px rgba(0, 0, 0, .15);--gl-shadow-focus: 0 0 0 3px rgba(31, 117, 203, .25);--gl-button-default-background: var(--gl-color-neutral-0);--gl-button-default-background-hover: var(--gl-color-neutral-50);--gl-button-default-background-active: var(--gl-color-neutral-100);--gl-button-default-border: var(--gl-color-neutral-200);--gl-button-default-border-hover: var(--gl-color-neutral-400);--gl-button-confirm-background: var(--gl-color-blue-500);--gl-button-confirm-background-hover: var(--gl-color-blue-600);--gl-button-confirm-background-active: var(--gl-color-blue-700);--gl-button-confirm-border: var(--gl-color-blue-600);--gl-link-color: var(--gl-color-blue-500);--gl-link-color-hover: var(--gl-color-blue-600);--gl-action-selected-background: var(--gl-color-blue-50);--gl-action-selected-border: var(--gl-color-blue-500);--gl-header-height: 52px;--gl-sidebar-width: 240px;--gl-content-max-width: 1280px;--gl-project-sidebar-width: 290px;--gl-background-color-default: var(--gl-color-neutral-0);--gl-background-color-subtle: var(--gl-color-neutral-10);--gl-text-color-default: var(--gl-color-neutral-950);--gl-text-secondary: var(--gl-color-neutral-600)}@media (prefers-color-scheme: dark){:root.gl-dark,.gl-dark{--gl-color-neutral-0: #1f1e24;--gl-color-neutral-10: #252329;--gl-color-neutral-50: #303030;--gl-color-neutral-100: #404040;--gl-color-neutral-200: #505050;--gl-color-neutral-300: #707070;--gl-color-neutral-400: #909090;--gl-color-neutral-500: #a0a0a0;--gl-color-neutral-600: #b0b0b0;--gl-color-neutral-700: #c0c0c0;--gl-color-neutral-800: #d0d0d0;--gl-color-neutral-900: #e0e0e0;--gl-color-neutral-950: #f0f0f0;--gl-border-color-default: var(--gl-color-neutral-100);--gl-border-color-subtle: #363636}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:14px;line-height:1.5;color:#1f2937;background-color:#f9fafb}a{color:#6366f1;text-decoration:none;transition:color .1s ease}a:hover{color:#3438ed}.app-layout{display:flex;min-height:100vh;padding-top:52px}.app-sidebar{position:fixed;top:52px;left:0;bottom:0;width:240px;background:#1f2937;border-right:1px solid rgba(255,255,255,.1);overflow-y:auto;z-index:1020;transition:width .2s ease,transform .2s ease}.app-sidebar.collapsed{width:64px}.app-sidebar.hidden{transform:translate(-100%)}.project-page-layout{margin-left:64px}.app-main{flex:1;min-height:calc(100vh - 52px);transition:margin-left .2s ease}.app-main.sidebar-hidden{margin-left:0}.page-container{max-width:1400px;margin:0 auto;padding:24px}.page-narrow{max-width:720px}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:16px}.page-header h1{font-size:24px;font-weight:600;color:#1f2937;margin:0}.page-header .page-actions{display:flex;gap:12px}.page-description{color:#6b7280;margin-bottom:24px;font-size:15px}.card{background:#fff;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000a;overflow:hidden}.card-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.card-header h2,.card-header h3{font-size:16px;font-weight:600;margin:0}.card-body{padding:20px}.card-footer{padding:16px 20px;border-top:1px solid #e5e7eb;background:#f9fafb}.stats-card{padding:20px;text-align:center;border-right:1px solid #e5e7eb}.stats-card:last-child{border-right:none}.stats-card .stats-number{font-size:30px;font-weight:700;color:#1f2937;line-height:1}.stats-card .stats-label{font-size:13px;color:#6b7280;margin-top:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:500;line-height:1.5;border-radius:6px;border:1px solid transparent;cursor:pointer;transition:all .1s ease;white-space:nowrap;text-decoration:none}.btn:focus{outline:none;box-shadow:0 0 0 3px #6366f133}.btn:disabled{opacity:.5;cursor:not-allowed}.btn svg{width:16px;height:16px}.btn-primary{background:#6366f1;color:#fff}.btn-primary:hover:not(:disabled){background:#3e41ee}.btn-success{background:#22c55e;color:#fff}.btn-success:hover:not(:disabled){background:#1ca24d}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#ec1e1e}.btn-secondary{background:#fff;border-color:#e5e7eb;color:#1f2937}.btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.btn-outline{background:transparent;border-color:#e5e7eb;color:#1f2937}.btn-outline:hover:not(:disabled){background:#f9fafb}.btn-ghost{background:transparent;color:#6b7280}.btn-ghost:hover:not(:disabled){background:#f3f4f6;color:#1f2937}.btn-link{background:transparent;color:#6366f1;padding:0}.btn-link:hover:not(:disabled){color:#3438ed}.btn-sm{padding:4px 12px;font-size:13px}.btn-sm svg{width:14px;height:14px}.btn-lg{padding:12px 24px;font-size:16px}.btn-icon{width:36px;height:36px;padding:0}.btn-icon.btn-sm{width:28px;height:28px}.form-group{margin-bottom:20px}.form-label{display:block;font-size:13px;font-weight:600;color:#1f2937;margin-bottom:8px}.form-hint{font-size:13px;color:#6b7280;margin-top:4px}.form-control{width:100%;padding:8px 12px;font-size:14px;line-height:1.5;color:#1f2937;background:#fff;border:1px solid #e5e7eb;border-radius:6px;transition:border-color .1s ease,box-shadow .1s ease}.form-control:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f133}.form-control::placeholder{color:#9ca3af}.form-control:disabled{background:#f3f4f6;cursor:not-allowed}textarea.form-control{min-height:100px;resize:vertical}select.form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M3 4.5L6 7.5L9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.form-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer}.form-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#6366f1}.form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:20px;border-top:1px solid #e5e7eb;margin-top:24px}.table-container{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px 16px;text-align:left;border-bottom:1px solid #e5e7eb}.table th{font-size:13px;font-weight:600;color:#6b7280;background:#f9fafb;text-transform:uppercase;letter-spacing:.5px}.table td{font-size:14px;color:#1f2937}.table tbody tr{transition:background .1s ease}.table tbody tr:hover{background:#f9fafb}.badge{display:inline-flex;align-items:center;padding:4px 8px;font-size:11px;font-weight:500;border-radius:9999px;line-height:1}.badge-success{background:#dcfce7;color:#1a9a49}.badge-danger{background:#fee2e2;color:#eb1515}.badge-warning{background:#fef3c7;color:#ac6f07}.badge-info{background:#dbeafe;color:#0b63f3}.badge-secondary{background:#f3f4f6;color:#4b5563}.badge-primary{background:#6366f11a;color:#6366f1}.label{display:inline-flex;align-items:center;padding:4px 8px;font-size:11px;font-weight:500;border-radius:4px;background:#f3f4f6;color:#4b5563}.status-dot{display:inline-flex;align-items:center;gap:8px}.status-dot:before{content:"";width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-success:before{background:#22c55e}.status-danger:before{background:#ef4444}.status-warning:before{background:#f59e0b}.status-info:before{background:#3b82f6}.status-pending:before{background:#9ca3af}.status-running:before{background:#3b82f6;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.pipeline-status{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%}.pipeline-status.success{background:#22c55e;color:#fff}.pipeline-status.failed{background:#ef4444;color:#fff}.pipeline-status.pending{background:#9ca3af;color:#fff}.pipeline-status.running{background:#3b82f6;color:#fff}.alert{display:flex;gap:12px;padding:16px;border-radius:6px;margin-bottom:16px}.alert .alert-icon{flex-shrink:0;width:20px;height:20px}.alert .alert-content{flex:1}.alert .alert-title{font-weight:600;margin-bottom:4px}.alert-success{background:#dcfce7;border:1px solid rgba(34,197,94,.2);color:#136e34}.alert-danger{background:#fee2e2;border:1px solid rgba(239,68,68,.2);color:#bd1010}.alert-warning{background:#fef3c7;border:1px solid rgba(245,158,11,.2);color:#7b4f05}.alert-info{background:#dbeafe;border:1px solid rgba(59,130,246,.2);color:#094fc2}.tabs{display:flex;gap:4px;border-bottom:1px solid #e5e7eb;margin-bottom:20px}.tab-item{position:relative;padding:12px 16px;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:color .1s ease;border-bottom:2px solid transparent;margin-bottom:-1px}.tab-item:hover{color:#1f2937}.tab-item.active{color:#6366f1;border-bottom-color:#6366f1}.empty-state{text-align:center;padding:48px 24px}.empty-state .empty-icon{width:64px;height:64px;margin:0 auto 16px;color:#9ca3af}.empty-state h3{font-size:18px;font-weight:600;color:#1f2937;margin-bottom:8px}.empty-state p{color:#6b7280;margin-bottom:20px;max-width:400px;margin-left:auto;margin-right:auto}.loading{display:flex;align-items:center;justify-content:center;padding:32px}.spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#6366f1;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}code{font-family:JetBrains Mono,Fira Code,Consolas,Monaco,monospace;font-size:.875em;background:#f3f4f6;padding:2px 6px;border-radius:4px}pre{font-family:JetBrains Mono,Fira Code,Consolas,Monaco,monospace;font-size:13px;background:#111827;color:#f3f4f6;padding:16px;border-radius:6px;overflow-x:auto}pre code{background:transparent;padding:0;color:inherit}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-weight:600}.avatar-sm{width:24px;height:24px;font-size:11px}.avatar-md{width:32px;height:32px;font-size:13px}.avatar-lg{width:40px;height:40px;font-size:14px}.avatar-xl{width:64px;height:64px;font-size:18px}.dropdown{position:relative}.dropdown-menu{position:absolute;top:100%;right:0;min-width:180px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 10px 15px -3px #00000014,0 4px 6px -2px #0000000a;padding:8px 0;z-index:1000}.dropdown-menu .dropdown-item{display:flex;align-items:center;gap:8px;padding:8px 16px;font-size:14px;color:#1f2937;cursor:pointer;transition:background .1s ease}.dropdown-menu .dropdown-item:hover{background:#f9fafb}.dropdown-menu .dropdown-item.danger{color:#ef4444}.dropdown-menu .dropdown-divider{height:1px;background:#e5e7eb;margin:8px 0}.banner{padding:16px 20px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-radius:8px;margin-bottom:24px}.banner h3{font-size:16px;font-weight:600;margin-bottom:8px}.banner p{opacity:.9;margin-bottom:16px}.banner .btn{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3)}.banner .btn:hover{background:#ffffff4d}.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.flex{display:flex}.inline-flex{display:inline-flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.flex-1{flex:1}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-5{gap:20px}.gap-6{gap:24px}.gap-sm{gap:8px}.gap-md{gap:16px}.gap-lg{gap:24px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:#1f2937}.text-secondary{color:#6b7280}.text-muted{color:#9ca3af}.text-success{color:#22c55e}.text-danger{color:#ef4444}.text-warning{color:#f59e0b}.text-link{color:#6366f1}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-mono{font-family:JetBrains Mono,monospace}.text-xs{font-size:11px}.text-sm{font-size:13px}.text-base{font-size:14px}.text-lg{font-size:16px}.text-xl{font-size:18px}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-0{margin:0}.mt-0{margin-top:0}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-5{margin-top:20px}.mt-6{margin-top:24px}.mt-sm{margin-top:8px}.mt-md{margin-top:16px}.mt-lg{margin-top:24px}.mb-0{margin-bottom:0}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-5{margin-bottom:20px}.mb-6{margin-bottom:24px}.mb-sm{margin-bottom:8px}.mb-md{margin-bottom:16px}.mb-lg{margin-bottom:24px}.ml-auto{margin-left:auto}.mr-auto{margin-right:auto}.mx-auto{margin-left:auto;margin-right:auto}.p-0{padding:0}.p-4{padding:16px}.p-5{padding:20px}.p-6{padding:24px}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.rounded{border-radius:6px}.rounded-lg{border-radius:8px}.rounded-full{border-radius:9999px}.shadow-sm{box-shadow:0 1px 3px #00000014,0 1px 2px #0000000f}.shadow-md{box-shadow:0 4px 6px -1px #00000014,0 2px 4px -1px #0000000a}.shadow-lg{box-shadow:0 10px 15px -3px #00000014,0 4px 6px -2px #0000000a}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}.divider{height:1px;background:#e5e7eb;margin:16px 0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content,.modal{background:var(--gl-background-color-default)!important;color:var(--gl-text-color-default);border-radius:8px;box-shadow:0 4px 24px #0003}.modal-content .modal-header,.modal-content .modal-body,.modal-content .modal-footer,.modal .modal-header,.modal .modal-body,.modal .modal-footer,.modal-content .modal-header h1,.modal-content .modal-header h2,.modal-content .modal-header h3,.modal-content .modal-header h4,.modal-content .modal-header h5,.modal-content .modal-header h6,.modal-content .modal-body h1,.modal-content .modal-body h2,.modal-content .modal-body h3,.modal-content .modal-body h4,.modal-content .modal-body h5,.modal-content .modal-body h6,.modal-content .modal-footer h1,.modal-content .modal-footer h2,.modal-content .modal-footer h3,.modal-content .modal-footer h4,.modal-content .modal-footer h5,.modal-content .modal-footer h6,.modal .modal-header h1,.modal .modal-header h2,.modal .modal-header h3,.modal .modal-header h4,.modal .modal-header h5,.modal .modal-header h6,.modal .modal-body h1,.modal .modal-body h2,.modal .modal-body h3,.modal .modal-body h4,.modal .modal-body h5,.modal .modal-body h6,.modal .modal-footer h1,.modal .modal-footer h2,.modal .modal-footer h3,.modal .modal-footer h4,.modal .modal-footer h5,.modal .modal-footer h6{color:var(--gl-text-color-default)}.modal-content input,.modal-content textarea,.modal-content select,.modal input,.modal textarea,.modal select{background:var(--gl-background-color-default);color:var(--gl-text-color-default);border-color:var(--gl-border-color-default)}.modal-content,.modal{color:var(--gl-text-color-default)!important}.modal-content input.form-control,.modal-content textarea.form-control,.modal-content select.form-control,.modal input.form-control,.modal textarea.form-control,.modal select.form-control{background:var(--gl-background-color-default)!important;color:var(--gl-text-color-default)!important;border-color:var(--gl-border-color-default)!important}.modal-content input.form-control::placeholder,.modal-content textarea.form-control::placeholder,.modal-content select.form-control::placeholder,.modal input.form-control::placeholder,.modal textarea.form-control::placeholder,.modal select.form-control::placeholder{color:var(--gl-text-secondary)!important;opacity:.6}.modal-content label,.modal-content .form-label,.modal label,.modal .form-label{color:var(--gl-text-color-default)!important}.modal-content .text-muted,.modal-content .form-hint,.modal .text-muted,.modal .form-hint{color:var(--gl-text-secondary)!important}.modal-content h1,.modal-content h2,.modal-content h3,.modal-content h4,.modal-content h5,.modal-content h6,.modal-content .modal-header h1,.modal-content .modal-header h2,.modal-content .modal-header h3,.modal-content .modal-header h4,.modal-content .modal-header h5,.modal-content .modal-header h6,.modal h1,.modal h2,.modal h3,.modal h4,.modal h5,.modal h6,.modal .modal-header h1,.modal .modal-header h2,.modal .modal-header h3,.modal .modal-header h4,.modal .modal-header h5,.modal .modal-header h6{color:var(--gl-text-color-default)!important}
