:root{--primary: #f97316;--primary-hover: #e05a0e;--primary-20: #fa7d35;--primary-50: #fcae81;--primary-60: #fdbe9a;--primary-light: #fff7ed;--sidebar-active-bg: #fbdfcd;--sidebar-active-icon-bg: #f8ccac;--sidebar-active-text: #f97316;--secondary: #1c1c1c;--secondary-button: linear-gradient(135deg, #475569 0%, #334155 100%);--dark-button: #111827;--bg: #ffffff;--sidebar-bg: #fff;--topbar-bg: #fff;--subbar-bg: #ffffff;--bg-secondary: #f5f5f5;--bg-secondary-light: #fcf9f9;--card: #ffffff;--text: #0f172a;--text-secondary: #475569;--muted: #64748b;--line: #e2e8f0;--line-light: #f1f5f9;--content-card-bg: #F7F7F6;--buttonbg: #202635;--buttonsecondbg: #24262b;--accent: #ef4444;--accent-light: #fef2f2;--success: #22c55e;--warning: #f59e0b;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--radius-sm: 6px;--radius: 8px;--radius-lg: 12px;--transition: .15s ease}*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);padding:0;color:var(--text);min-height:100vh;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{width:100%;display:flex}.app-shell{width:100%;min-height:100vh;margin:0;padding:0;background:var(--bg)}.sidebar{width:260px;background:var(--sidebar-bg, #f7f6f9);padding:10px 16px;border-right:1px solid var(--line);margin:0;height:100vh;overflow:hidden;display:flex;flex-direction:column;transition:none;position:fixed;top:0;left:0;z-index:2000}.sidebar-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-top:8px;margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.sidebar-scroll::-webkit-scrollbar{width:4px}.sidebar-scroll::-webkit-scrollbar-track{background:transparent}.sidebar-scroll::-webkit-scrollbar-thumb{background:var(--line);border-radius:2px}.sidebar-scroll::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.content{display:flex;align-items:flex-start;padding:0;background:var(--bg);margin-left:260px;width:calc(100% - 260px);transition:none}.app-shell.collapsed .content{margin-left:72px;width:calc(100% - 72px)}.content-frame{width:100%;height:100vh;display:flex;flex-direction:column;overflow:hidden}.topbar{background:var(--topbar-bg);border-bottom:1px solid var(--line);padding:10px 24px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;flex-shrink:0;height:65px;box-sizing:border-box}.welcome{display:flex;align-items:center;gap:12px}.expand-btn{width:36px;height:36px;border-radius:var(--radius);border:1px solid var(--line);background:var(--card);display:grid;place-items:center;cursor:pointer;transition:all var(--transition)}.expand-btn:hover{background:var(--bg-secondary);border-color:var(--text-secondary)}.expand-btn svg{width:18px;height:18px;color:var(--text-secondary)}.collapsed .expand-btn{width:28px;height:28px}.collapsed .expand-btn svg{width:14px;height:14px}.welcome-label{font-size:13px;font-weight:500;color:var(--muted);margin-bottom:2px}.welcome-name{font-size:20px;font-weight:600;color:var(--text);line-height:1.3}.topbar-actions{display:flex;align-items:center;gap:12px}.topbar-search{display:grid;grid-template-columns:18px 1fr auto;gap:10px;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:8px 14px;min-width:240px;color:var(--muted);cursor:pointer;transition:all var(--transition);font-family:inherit;font-size:inherit;text-align:left}.topbar-search:hover{border-color:var(--text-secondary);background:var(--card)}.topbar-search .search-icon svg{width:16px;height:16px;color:var(--muted)}.topbar-search .search-text{font-size:14px}.topbar-search .search-key{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);padding:2px 8px;font-size:12px;font-weight:500;color:var(--muted)}.topbar-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius);border:1px solid var(--line);background:var(--card);font-size:14px;font-weight:500;color:var(--text);cursor:pointer;transition:all var(--transition)}.topbar-btn:hover{background:var(--bg);border-color:var(--text-secondary)}.topbar-btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:auto}.topbar-btn:disabled:hover{background:transparent;border-color:var(--border)}.topbar-btn svg{width:16px;height:16px;color:var(--text-secondary)}.topbar-btn-chevron{margin-left:2px;transition:transform var(--transition)}.topbar-btn.disabled,.topbar-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.manage-dropdown-wrapper{position:relative}.manage-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md),0 20px 40px #0000001a;z-index:1000;padding:6px;animation:manageDropdownFadeIn .15s ease-out}@keyframes manageDropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.manage-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:transparent;border:none;border-radius:var(--radius);font-size:14px;color:var(--text);cursor:pointer;transition:all var(--transition);text-align:left}.manage-dropdown-item:hover{background:var(--bg-secondary)}.manage-dropdown-item.active{background:var(--primary-light);color:var(--primary)}.manage-dropdown-item svg{color:var(--muted);flex-shrink:0}.manage-dropdown-item:hover svg,.manage-dropdown-item.active svg{color:var(--text)}.manage-dropdown-item.active svg{color:var(--primary)}.icon-btn{width:38px;height:38px;border-radius:var(--radius);border:1px solid var(--line);background:var(--card);display:grid;place-items:center;cursor:pointer;transition:all var(--transition)}.icon-btn:hover{background:var(--bg);border-color:var(--text-secondary)}.icon-btn svg{width:18px;height:18px;color:var(--text-secondary)}.icon-btn.disabled{opacity:.5;cursor:not-allowed}.icon-btn.disabled:hover{background:var(--card);border-color:var(--line)}.subbar{background:var(--subbar-bg);border-bottom:1px solid var(--line);padding:10px 24px;display:grid;grid-template-columns:1fr auto;overflow:visible;gap:24px;align-items:center;flex-shrink:0}.subbar-title{font-size:18px;display:flex;align-items:center;gap:8px}.subbar-title .muted{color:var(--muted);font-weight:500}.subbar-title .slash{color:var(--line)}.subbar-title .strong{font-weight:600;color:var(--text)}.subbar-title-wrapper{display:flex;flex-direction:column;gap:4px}.subbar-section-label{display:flex;align-items:center;gap:8px}.subbar-section-label .strong{font-size:15px;font-weight:600;color:#111827;text-transform:none;letter-spacing:normal}.subbar-section-label svg{color:#ea580c;flex-shrink:0}.subbar-subtitle{font-size:13px;font-weight:400;color:var(--muted)}.pipeline-category-tabs{display:flex;gap:10px;margin-top:14px}.subbar:has(.pipeline-category-tabs){align-items:flex-start}.subbar:has(.pipeline-category-tabs) .subbar-actions{margin-top:2px}.pipeline-category-tab{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;background:#f9fafb;border:1px solid #f0f0ef;border-radius:8px;font-size:12.5px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease;white-space:nowrap}.pipeline-category-tab:hover{border-color:#e5e7eb;background:#f3f4f6}.pipeline-category-tab.active{background:#fff7ed;border-color:#fed7aa;color:#111827}.pipeline-category-tab-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;flex-shrink:0}.pipeline-category-tab-icon.promotion{background:#6b728014;color:#9ca3af}.pipeline-category-tab.active .pipeline-category-tab-icon.promotion{background:var(--primary, #f97316);color:#fff}.pipeline-category-tab-icon.env-action,.pipeline-category-tab-icon.operational{background:#6b728014;color:#9ca3af}.pipeline-category-tab.active .pipeline-category-tab-icon{background:var(--primary, #f97316);color:#fff}.subbar-actions{display:flex;align-items:center;gap:10px}.subbar-actions .stage-save-btn,.subbar-actions .stage-test-btn,.subbar-actions .stage-export-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition);border:1px solid var(--line)}.subbar-actions .stage-save-btn{background:var(--card);color:var(--text)}.subbar-actions .stage-save-btn:hover:not(:disabled){background:var(--card-hover);border-color:var(--primary)}.subbar-actions .stage-test-btn{background:var(--primary);color:#fff;border-color:var(--primary)}.subbar-actions .stage-test-btn:hover:not(:disabled){background:var(--primary-20);border-color:var(--primary-20)}.subbar-actions .stage-export-btn{background:var(--bg);color:var(--text-secondary);border:1px solid var(--line)}.subbar-actions .stage-export-btn.icon-only{padding:8px;gap:0}.subbar-actions .stage-export-btn:hover{background:var(--card);color:var(--text);border-color:var(--text-secondary)}.subbar-actions .stage-save-btn:disabled,.subbar-actions .stage-test-btn:disabled{opacity:.6;cursor:not-allowed}.subbar-actions .stage-save-btn svg,.subbar-actions .stage-test-btn svg{width:16px;height:16px}.subbar-actions .stage-export-btn svg{width:18px;height:18px}.artifact-component-selector-wrapper{position:relative}.artifact-component-selector{display:flex;align-items:center;gap:8px;padding:8px 14px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition);min-width:180px}.artifact-component-selector:hover{border-color:var(--primary);box-shadow:0 0 0 3px #f95d031a}.artifact-component-selector .artifact-component-icon{width:16px;height:16px;color:var(--primary);flex-shrink:0}.artifact-component-selector-text{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.artifact-component-selector .artifact-component-chevron{width:16px;height:16px;color:var(--muted);flex-shrink:0}.artifact-component-dropdown{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);min-width:240px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-md);max-height:320px;overflow:hidden;z-index:100;display:flex;flex-direction:column}.artifact-component-search{padding:10px 12px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px;background:var(--bg-secondary-light);flex-shrink:0}.artifact-component-search .search-icon{width:16px;height:16px;color:var(--muted);flex-shrink:0}.artifact-component-search input{flex:1;border:none;background:transparent;font-size:13px;color:var(--text);outline:none}.artifact-component-search input::placeholder{color:var(--muted)}.artifact-component-search .clear-search{width:18px;height:18px;border-radius:50%;border:none;background:var(--line);color:var(--muted);font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.artifact-component-search .clear-search:hover{background:var(--muted);color:var(--card)}.artifact-component-list{overflow-y:auto;flex:1;max-height:260px}.artifact-component-dropdown-item{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;transition:background var(--transition)}.artifact-component-dropdown-item:hover{background:var(--bg-secondary-light)}.artifact-component-dropdown-item.active{background:#f95d0314}.artifact-component-dropdown-icon{width:28px;height:28px;border-radius:6px;background:var(--primary-50);color:var(--secondary);font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.artifact-component-dropdown-icon.all{background:var(--line);color:var(--muted)}.artifact-component-dropdown-icon.all svg{width:14px;height:14px}.artifact-component-dropdown-name{flex:1;font-size:13px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.artifact-component-check{color:var(--primary);flex-shrink:0}.artifact-component-list .no-results{padding:16px;text-align:center;color:var(--muted);font-size:13px}.create-project-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#000;color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition)}.create-project-btn:hover{background:#222}.add-user-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--primary, #ea580c);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition)}.add-user-btn:hover{opacity:.9}.add-user-btn svg{flex-shrink:0}.configure-fields-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition)}.configure-fields-btn:hover{background:#f9fafb;border-color:#9ca3af}.configure-fields-btn svg{flex-shrink:0;width:16px;height:16px}.create-component-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition)}.create-component-btn:hover{background:var(--primary-hover)}.create-component-btn svg{flex-shrink:0}.create-environment-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition)}.create-environment-btn:hover{background:var(--primary-20)}.create-environment-btn svg{flex-shrink:0}.create-stage-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition)}.create-stage-btn:hover{background:var(--primary-20)}.create-stage-btn svg{flex-shrink:0}.create-bitbucket-stage-btn{background:#2684ff}.create-bitbucket-stage-btn:hover{background:#0065ff}.create-release-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition)}.create-release-btn:hover{background:var(--primary-20)}.create-release-btn svg{flex-shrink:0}.create-release-btn:disabled{opacity:.6;cursor:not-allowed}.create-release-btn-wrapper{position:relative;display:inline-flex}.create-release-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);padding:8px 12px;background:#1f2937;color:#fff;font-size:12px;font-weight:500;white-space:nowrap;border-radius:6px;opacity:0;visibility:hidden;transition:all .2s ease;z-index:100;box-shadow:0 4px 12px #00000026}.create-release-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1f2937}.create-release-btn-wrapper:hover .create-release-tooltip{opacity:1;visibility:visible}.subbar-refresh-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0;border-radius:var(--radius);cursor:pointer;transition:all var(--transition)}.subbar-refresh-btn:hover{background:#e2e8f0;color:#334155}.subbar-refresh-btn svg{flex-shrink:0}.subbar-sync-s3-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#fff;color:var(--text);border:1px solid var(--line);border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition)}.subbar-sync-s3-btn:hover{background:#f8fafc;border-color:var(--primary);color:var(--primary)}.subbar-sync-s3-btn:disabled{opacity:.6;cursor:not-allowed}.subbar-sync-s3-btn.syncing{color:var(--primary)}.subbar-sync-s3-btn svg{flex-shrink:0}.subbar-sync-s3-btn svg.spinning{animation:spin 1s linear infinite}.add-credential-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease}.add-credential-btn:hover{background:var(--primary-20)}.add-credential-btn svg{flex-shrink:0}.add-environment-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease}.add-environment-btn:hover{background:var(--primary-20)}.add-environment-btn svg{flex-shrink:0}.refresh-approvals-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#1a1a1a;color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease}.refresh-approvals-btn:hover{background:#333}.refresh-approvals-btn:active{background:#000;transform:scale(.98)}.refresh-approvals-btn svg{flex-shrink:0}.approvals-filter-wrapper{position:relative}.approvals-subbar-filter{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:var(--radius);font-size:13px;color:#475569;cursor:pointer;transition:all .15s ease;min-width:130px}.approvals-subbar-filter:hover{background:#f1f5f9;border-color:#cbd5e1}.approvals-subbar-filter.active{background:var(--primary-light, #fff7ed);border-color:var(--primary);color:#1a1a1a}.approvals-subbar-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:150px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 10px 40px #0000001f;z-index:200;padding:6px;animation:approvalDropdownIn .15s ease}@keyframes approvalDropdownIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.approvals-subbar-option{padding:10px 12px;font-size:13px;color:#334155;border-radius:6px;cursor:pointer;transition:all .1s ease}.approvals-subbar-option:hover{background:#f1f5f9}.approvals-subbar-option.selected{background:var(--primary-light, #fff7ed);color:#1a1a1a;font-weight:500}.components-container-wrapper{display:flex;width:100%;border-radius:12px;overflow:hidden;position:relative;height:calc(100vh - 170px);min-height:500px;padding:0}.components-main-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;min-width:0;padding:8px 12px}.components-container-wrapper.with-drawer .components-main-content{flex:1;position:relative}.components-container-wrapper.with-drawer .components-main-content:after{content:"";position:absolute;inset:0;background:#0000004d;pointer-events:none;z-index:30;animation:components-fade-in .2s ease}@keyframes components-fade-in{0%{opacity:0}to{opacity:1}}.components-container-wrapper .components-page{height:100%}.components-container-wrapper .components-container{height:100%;display:flex;flex-direction:column;border:none;border-radius:0;box-shadow:none}.components-container-wrapper .components-table-wrapper{flex:1;height:auto}.back-to-projects-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;color:#374151;border:1px solid #e5e7eb;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition)}.back-to-projects-btn:hover{background:#f9fafb;border-color:#d1d5db}.back-to-projects-btn svg{width:16px;height:16px}.manage-roles-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition)}.manage-roles-btn:hover{background:#f3f4f6;border-color:#9ca3af}.sync-bitbucket-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--buttonbg);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition)}.sync-bitbucket-btn:hover:not(:disabled){background:#222}.sync-bitbucket-btn:disabled{background:#666;cursor:not-allowed;opacity:.7}.sync-bitbucket-btn svg{width:16px;height:16px}.sync-bitbucket-btn svg.spinning{animation:spin 1s linear infinite}.export-yaml-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;background:var(--bg);color:var(--text-secondary);border:1px solid var(--line);border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition)}.export-yaml-btn.icon-only{padding:8px;gap:0}.export-yaml-btn:hover:not(:disabled){background:var(--card);color:var(--text);border-color:var(--text-secondary)}.export-yaml-btn:disabled{background:var(--bg);color:var(--text-secondary);cursor:not-allowed;opacity:.5}.export-yaml-btn svg{width:18px;height:18px}.export-yaml-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.export-yaml-modal{background:#fff;border-radius:12px;width:90%;max-width:700px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040}.export-yaml-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb}.export-yaml-modal-header h3{margin:0;font-size:18px;font-weight:600}.export-yaml-modal-close{background:none;border:none;padding:4px;cursor:pointer;color:#6b7280;border-radius:4px;transition:all .2s}.export-yaml-modal-close:hover{background:#f3f4f6;color:#374151}.export-yaml-modal-body{padding:20px;overflow-y:auto}.export-yaml-pipeline-id{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px}.export-yaml-pipeline-id .pipeline-id-label{font-size:13px;font-weight:500;color:#64748b}.export-yaml-pipeline-id .pipeline-id-value{font-family:SF Mono,Monaco,Fira Code,monospace;font-size:13px;font-weight:600;color:var(--primary, #f95d03);background:#fff7ed;padding:4px 8px;border-radius:4px;border:1px solid rgba(249,93,3,.2)}.export-yaml-pipeline-id .pipeline-id-copy-btn{display:flex;align-items:center;justify-content:center;padding:4px;background:transparent;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;transition:all .15s ease}.export-yaml-pipeline-id .pipeline-id-copy-btn:hover{background:#e2e8f0;color:#475569}.export-yaml-pipeline-id .pipeline-id-copy-btn.copied{color:#10b981}.export-yaml-instructions{margin:0 0 16px;font-size:14px;color:#4b5563;line-height:1.5}.export-yaml-instructions code{background:#f3f4f6;padding:2px 6px;border-radius:4px;font-family:Fira Code,Monaco,monospace;font-size:12px;color:#1f2937}.export-yaml-content{position:relative;background:#1f2937;border-radius:8px;overflow:hidden}.export-yaml-content pre{margin:0;padding:16px;font-family:Fira Code,Monaco,monospace;font-size:13px;line-height:1.6;color:#e5e7eb;overflow-x:auto;white-space:pre}.export-yaml-copy-btn{position:absolute;top:8px;right:8px;padding:6px 12px;background:#374151;color:#fff;border:none;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.export-yaml-copy-btn:hover{background:#4b5563}.artifacts-last-synced{font-size:12px;color:#6b7280;background:#f3f4f6;padding:6px 12px;border-radius:var(--radius)}.sync-artifacts-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--primary, #f95d03);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition)}.sync-artifacts-btn:hover:not(:disabled){background:var(--primary-hover, #e54d00)}.sync-artifacts-btn:disabled{background:var(--primary-50, #fcae81);cursor:not-allowed;opacity:.7}.sync-artifacts-btn svg{width:16px;height:16px}.sync-artifacts-btn svg.spinning{animation:spin 1s linear infinite}.components-warning-wrapper{position:relative}.components-warning-btn{position:relative;display:flex;align-items:center;justify-content:center;padding:6px;background:transparent;border:none;cursor:pointer;transition:all var(--transition)}.components-warning-btn:hover{opacity:.8}.components-warning-btn svg{width:20px;height:20px;stroke:#d97706;fill:#fef3c7}.warning-count{position:absolute;top:-4px;right:-4px;background:#dc2626;color:#fff;font-size:10px;font-weight:600;padding:1px 5px;border-radius:10px;min-width:16px;text-align:center;line-height:1.4}.components-warning-dropdown{position:absolute;top:calc(100% + 8px);left:0;width:320px;background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius);box-shadow:0 10px 25px #00000026;z-index:100}.warning-dropdown-header{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fef3c7;border-bottom:1px solid #fcd34d;font-size:13px;font-weight:600;color:#92400e;border-radius:var(--radius) var(--radius) 0 0}.warning-dropdown-header svg{stroke:#d97706;flex-shrink:0}.warning-dropdown-content{padding:12px 16px;max-height:250px;overflow-y:auto}.warning-description{font-size:12px;color:#6b7280;margin:0 0 10px;line-height:1.4}.warning-list{margin:0;padding:0;list-style:none}.warning-list li{padding:6px 10px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;margin-bottom:6px;font-size:13px;font-weight:500;color:#374151}.warning-list li:last-child{margin-bottom:0}.warning-hint{margin:12px 0 0;font-size:11px;color:#9ca3af;line-height:1.4}.warning-hint code{background:#f3f4f6;padding:2px 4px;border-radius:3px;font-size:10px;color:#6b7280}.warning-dropdown-close{width:100%;padding:10px;background:#f9fafb;border:none;border-top:1px solid #e5e7eb;font-size:12px;font-weight:500;color:#6b7280;cursor:pointer;border-radius:0 0 var(--radius) var(--radius);transition:all var(--transition)}.warning-dropdown-close:hover{background:#f3f4f6;color:#374151}.environments-warning-wrapper{position:relative}.environments-warning-btn{position:relative;display:flex;align-items:center;justify-content:center;padding:6px;background:transparent;border:none;cursor:pointer;transition:all var(--transition)}.environments-warning-btn:hover{opacity:.8}.environments-warning-btn svg{width:20px;height:20px;stroke:#d97706;fill:#fef3c7}.environments-warning-btn .warning-count{position:absolute;top:-2px;right:-2px;background:#d97706;color:#fff;font-size:10px;font-weight:600;padding:2px 5px;border-radius:10px;min-width:16px;text-align:center;line-height:1.4}.environments-warning-dropdown{position:absolute;top:calc(100% + 8px);left:0;width:320px;background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius);box-shadow:0 4px 12px #0000001a;z-index:100}.environments-sync-result{display:flex;align-items:center;gap:12px;padding:8px 14px;border-radius:var(--radius);font-size:13px;font-weight:500;animation:fadeIn .2s ease}.environments-sync-result.success{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.environments-sync-result.error{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.environments-sync-result.info{background:#f0f9ff;color:#0369a1;border:1px solid #bae6fd}.environments-sync-result .sync-details{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:400}.environments-sync-result .sync-stat{padding:2px 6px;background:#0000000f;border-radius:4px}.segmented{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);padding:3px;gap:2px}.segment{padding:6px 14px;font-size:13px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--muted);cursor:pointer;transition:all var(--transition)}.segment:hover{color:var(--text)}.segment.active{background:var(--card);color:var(--text);font-weight:600;box-shadow:var(--shadow-sm)}.refresh-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;background:var(--dark-button);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.refresh-btn:hover{background:#333}.refresh-btn:active{background:#000;transform:scale(.98)}.refresh-btn svg{flex-shrink:0}.sprint-insights-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:8px;background:linear-gradient(135deg,var(--primary) 0%,#e85d04 100%);color:#fff;border:none;border-radius:var(--radius);cursor:pointer;transition:all .2s ease}.sprint-insights-btn:hover:not(:disabled){background:linear-gradient(135deg,#e85d04 0%,var(--primary) 100%);transform:translateY(-1px);box-shadow:0 4px 12px #f973164d}.sprint-insights-btn:active:not(:disabled){transform:scale(.98)}.sprint-insights-btn:disabled{opacity:.5;cursor:not-allowed}.sprint-insights-btn svg{flex-shrink:0}.sprint-insights-btn-text{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);background:#1a1a1a;color:#fff;padding:8px 12px;border-radius:8px;font-size:12px;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s ease;box-shadow:0 4px 12px #00000026;pointer-events:none}.sprint-insights-btn-text:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1a1a1a}.sprint-insights-btn:hover:not(:disabled) .sprint-insights-btn-text{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.sprint-insights-backdrop{position:fixed;inset:195px 0 0;background:#0000004d;z-index:999;animation:fadeIn .2s ease}.sprint-insights-drawer{position:fixed;top:195px;right:0;width:480px;max-width:90vw;height:calc(100vh - 195px);background:#fff;box-shadow:-4px 0 24px #00000026;z-index:1000;display:flex;flex-direction:column;animation:slideInRight .3s ease;border-top-left-radius:0;border-left:1px solid #e2e8f0}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.sprint-insights-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#1a1a1a,#2d2d2d)}.sprint-insights-title{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:600;color:#fff}.sprint-insights-title svg{color:var(--primary)}.sprint-insights-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border:none;border-radius:8px;font-size:24px;color:#fff;cursor:pointer;transition:all .15s ease}.sprint-insights-close:hover{background:#fff3}.sprint-insights-sprint-info{padding:16px 24px;background:#f8fafc;border-bottom:1px solid var(--line)}.sprint-insights-sprint-name{font-size:16px;font-weight:600;color:var(--text);margin-bottom:4px}.sprint-insights-sprint-dates{font-size:13px;color:var(--muted)}.sprint-insights-body{flex:1;overflow-y:auto;padding:20px 24px}.sprint-insights-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px}.sprint-insights-card{background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:16px;text-align:center}.sprint-insights-card.completed{background:#f0fdf4;border-color:#bbf7d0}.sprint-insights-card.in-progress{background:#eff6ff;border-color:#bfdbfe}.sprint-insights-card.todo{background:#f8fafc;border-color:#e2e8f0}.sprint-insights-card-value{font-size:28px;font-weight:700;color:var(--text);line-height:1;margin-bottom:4px}.sprint-insights-card.completed .sprint-insights-card-value{color:#16a34a}.sprint-insights-card.in-progress .sprint-insights-card-value{color:#2563eb}.sprint-insights-card-label{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.sprint-insights-section{margin-bottom:24px}.sprint-insights-section-title{font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;display:flex;align-items:center;gap:8px}.sprint-insights-section-title:after{content:"";flex:1;height:1px;background:var(--line)}.sprint-insights-progress{background:#f1f5f9;border-radius:12px;padding:16px}.sprint-insights-progress-bar{height:12px;background:#e2e8f0;border-radius:6px;overflow:hidden;margin-bottom:8px}.sprint-insights-progress-fill{height:100%;background:linear-gradient(90deg,#22c55e,#16a34a);border-radius:6px;transition:width .5s ease}.sprint-insights-progress-text{font-size:14px;font-weight:600;color:var(--text);text-align:center}.sprint-insights-type-list{display:flex;flex-direction:column;gap:8px}.sprint-insights-type-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#f8fafc;border-radius:8px}.sprint-insights-type-name{font-size:14px;color:var(--text)}.sprint-insights-type-count{font-size:14px;font-weight:600;color:var(--primary);background:var(--primary-light);padding:2px 10px;border-radius:12px}.sprint-insights-contributors{display:flex;flex-direction:column;gap:16px}.sprint-insights-contributor{background:#f8fafc;border-radius:12px;padding:14px}.sprint-insights-contributor-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.sprint-insights-contributor-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:#fff}.sprint-insights-contributor-info{flex:1}.sprint-insights-contributor-name{font-size:14px;font-weight:600;color:var(--text)}.sprint-insights-contributor-stats{font-size:12px;color:var(--muted)}.sprint-insights-contributor-bar{height:6px;background:#e2e8f0;border-radius:3px;display:flex;overflow:hidden}.sprint-insights-contributor-bar-completed{height:100%;background:#22c55e;transition:width .3s ease}.sprint-insights-contributor-bar-progress{height:100%;background:#3b82f6;transition:width .3s ease}.sprint-insights-dev-stats{display:flex;flex-direction:column;gap:12px}.sprint-insights-dev-stat{display:flex;align-items:center;gap:14px;padding:14px 16px;background:#f8fafc;border-radius:10px}.sprint-insights-dev-stat svg{color:var(--primary)}.sprint-insights-dev-stat-info{flex:1}.sprint-insights-dev-stat-value{font-size:20px;font-weight:700;color:var(--text)}.sprint-insights-dev-stat-label{font-size:12px;color:var(--muted)}.sprint-insights-status-list{display:flex;flex-direction:column;gap:10px}.sprint-insights-status-item{display:flex;align-items:center;gap:12px}.sprint-insights-status-info{display:flex;align-items:center;gap:8px;min-width:120px}.sprint-insights-status-dot{width:10px;height:10px;border-radius:50%}.sprint-insights-status-name{font-size:13px;color:var(--text)}.sprint-insights-status-bar-wrapper{flex:1;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.sprint-insights-status-bar{height:100%;border-radius:4px;transition:width .3s ease}.sprint-insights-status-count{font-size:13px;font-weight:600;color:var(--text);min-width:24px;text-align:right}.project-selector-wrapper{position:relative}.project-selector{display:flex;align-items:center;gap:8px;padding:8px 14px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition);min-width:200px}.project-selector:hover:not(:disabled){border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.project-selector:disabled{opacity:.5;cursor:not-allowed}.project-selector .project-icon{width:16px;height:16px;color:var(--muted);flex-shrink:0}.project-selector-text{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-selector .project-chevron{width:16px;height:16px;color:var(--muted);flex-shrink:0}.project-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-md);max-height:350px;overflow:hidden;z-index:100;display:flex;flex-direction:column}.project-search{padding:10px 12px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px;background:var(--bg-secondary-light);flex-shrink:0}.project-search .search-icon{width:16px;height:16px;color:var(--muted);flex-shrink:0}.project-search input{flex:1;border:none;background:transparent;outline:none;font-size:13px;color:var(--text);padding:0}.project-search .clear-search{width:20px;height:20px;border:none;background:transparent;color:var(--muted);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all var(--transition);padding:0;line-height:1}.project-search .clear-search:hover{background:var(--line-light);color:var(--text)}.project-list{overflow-y:auto;max-height:250px}.project-dropdown-item{padding:10px 14px;cursor:pointer;transition:background var(--transition);border-bottom:1px solid var(--line-light)}.project-dropdown-item:last-child{border-bottom:none}.project-dropdown-item:hover{background:var(--bg)}.project-dropdown-item.active{background:var(--primary-light)}.project-dropdown-item.active .project-dropdown-key{color:var(--primary);font-weight:600}.project-dropdown-key{font-size:13px;font-weight:600;color:var(--text);margin-bottom:2px}.project-dropdown-name{font-size:12px;color:var(--muted)}.no-results{padding:20px 14px;text-align:center;color:var(--muted);font-size:13px}.sprint-selector-wrapper{position:relative}.sprint-selector{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:var(--radius);border:1px solid var(--line);background:var(--card);font-size:14px;font-weight:500;color:var(--text);cursor:pointer;transition:all var(--transition);min-width:200px}.sprint-selector:hover:not(:disabled){background:var(--bg);border-color:var(--text-secondary)}.sprint-selector:disabled{opacity:.5;cursor:not-allowed}.sprint-selector .sprint-icon{width:16px;height:16px;color:var(--text-secondary);flex-shrink:0}.sprint-selector-text{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sprint-selector .sprint-chevron{width:16px;height:16px;color:var(--muted);flex-shrink:0}.sprint-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-md);max-height:350px;overflow:hidden;z-index:100;display:flex;flex-direction:column}.sprint-search{padding:10px 12px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px;background:var(--bg-secondary-light);flex-shrink:0}.sprint-search .search-icon{width:16px;height:16px;color:var(--muted);flex-shrink:0}.sprint-search input{flex:1;border:none;background:transparent;outline:none;font-size:13px;color:var(--text);padding:0}.sprint-search input::placeholder{color:var(--muted)}.sprint-search .clear-search{width:20px;height:20px;border:none;background:transparent;color:var(--muted);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all var(--transition);padding:0;line-height:1}.sprint-search .clear-search:hover{background:var(--line-light);color:var(--text)}.sprint-list{overflow-y:auto;max-height:250px}.sprint-dropdown-item{padding:10px 14px;cursor:pointer;transition:background var(--transition);border-bottom:1px solid var(--line-light);display:flex;align-items:center;justify-content:space-between;gap:12px}.sprint-dropdown-item:last-child{border-bottom:none}.sprint-dropdown-item:hover{background:var(--bg)}.sprint-dropdown-item.active{background:var(--primary-light)}.sprint-dropdown-item.active .sprint-dropdown-name{color:var(--primary);font-weight:600}.sprint-dropdown-name{font-size:13px;font-weight:500;color:var(--text);flex:1}.sprint-dropdown-meta{display:flex;align-items:center;gap:8px}.sprint-state{font-size:11px;font-weight:600;padding:3px 8px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.sprint-state.active{background:#e8f5e9;color:#2e7d32}.sprint-state.future{background:#e3f2fd;color:#1565c0}.sprint-state.closed{background:#f5f5f5;color:#616161}.pill-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius);border:1px solid var(--line);background:var(--card);font-size:14px;font-weight:500;color:var(--text);cursor:pointer;transition:all var(--transition)}.pill-btn:hover{background:var(--bg);border-color:var(--text-secondary)}.pill-btn svg{width:16px;height:16px;color:var(--text-secondary)}.primary-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius);border:0;background:var(--primary);color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:all var(--transition)}.primary-btn:hover{background:var(--primary-hover)}.primary-btn .plus{font-size:18px;font-weight:400;line-height:1}.content-card{width:100%;background:var(--content-card-bg);border:0;border-radius:0;min-height:0;padding:10px;flex:1;overflow-y:auto}.content-card-canvas{background:#f0f2f5;background-image:radial-gradient(circle at 1px 1px,#d1d5db 1px,transparent 0);background-size:20px 20px;padding:20px;display:flex;flex-direction:column;overflow:hidden}.content-card-full{padding:0;overflow:hidden}.content-title{margin:0 0 6px;font-size:22px;font-weight:600;color:var(--text)}.content-subtitle{margin:0 0 18px;color:var(--muted);font-size:14px}.content-blank{height:420px;border-radius:var(--radius-lg);border:1px dashed var(--line-light);background:var(--card);display:flex;align-items:center;justify-content:center;color:var(--muted);transition:border-color var(--transition)}.content-blank:hover{border-color:var(--line)}.operations-placeholder{height:100%;min-height:420px;display:flex;align-items:center;justify-content:center;background:var(--card);border-radius:var(--radius-lg);border:1px dashed var(--line-light)}.operations-placeholder-content{text-align:center;color:var(--muted)}.operations-placeholder-content svg{margin-bottom:16px;color:var(--line)}.operations-placeholder-content h3{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--text)}.operations-placeholder-content p{margin:0;font-size:14px}.gitops-page{padding:32px;display:flex;flex-direction:column;gap:24px;max-width:720px}.gitops-section{background:#fff;border:1px solid #e9eef5;border-radius:12px;padding:20px 24px;display:flex;flex-direction:column;gap:12px}.gitops-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.gitops-section-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#0f172a}.gitops-section-title svg{color:#64748b}.gitops-section-desc{margin:0;font-size:13px;color:#64748b;line-height:1.5}.gitops-sync-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#334155;font-size:13px;font-weight:500;cursor:pointer;transition:background .12s,border-color .12s;white-space:nowrap}.gitops-sync-btn:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.gitops-sync-btn:disabled{opacity:.6;cursor:not-allowed}.gitops-sync-result{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;font-size:13px;font-weight:500}.gitops-sync-result--success{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.gitops-sync-result--info{background:#f0f9ff;color:#0369a1;border:1px solid #bae6fd}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{width:100%;height:auto;border-right:0;border-bottom:1px solid var(--line)}.content-card{min-height:420px;padding:16px}.content{padding:0}.topbar,.subbar{grid-template-columns:1fr;padding:16px}.topbar-actions,.subbar-actions{flex-wrap:wrap;justify-content:flex-start;gap:8px}.topbar-search{min-width:0;width:100%}.footer{margin-top:16px}}.org-card-wrapper{padding-bottom:0;margin-bottom:0;margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px;flex-shrink:0;overflow:visible;height:55px;box-sizing:border-box;display:flex;align-items:center;position:relative}.org-card{background:var(--card);border-radius:var(--radius-lg);padding:8px;display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:8px;transition:all .2s ease;overflow:visible;width:100%;position:relative}.org-card:hover{background:var(--card)}.org-logo{width:36px;height:36px;border-radius:var(--radius);display:grid;place-items:center;transition:all .2s ease;overflow:hidden}.org-logo img{width:100%;height:100%;object-fit:contain}.org-name{font-weight:600;font-size:14px;line-height:1.3;color:var(--text)}.org-caption{font-size:10px;color:var(--muted);font-weight:400;margin-top:2px;letter-spacing:.2px;opacity:.8}.sidebar.collapsed .org-caption{display:none}.org-sub{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:12px;margin-top:2px}.org-sub svg{width:14px;height:14px;color:var(--muted)}.org-toggle{width:28px;height:28px;border-radius:50%;border:1px solid var(--line);background:var(--card);display:grid;place-items:center;cursor:pointer;transition:all var(--transition);position:static;transform:none;z-index:auto;box-shadow:none;margin-left:4px;justify-self:end}.org-toggle:hover{background:var(--line-light);border-color:var(--text-secondary);box-shadow:0 2px 8px #0000001f}.org-toggle svg{width:14px;height:14px;color:var(--text-secondary);transition:transform var(--transition)}.search{margin-top:12px;background:var(--bg-secondary);border-radius:var(--radius);border:1px solid var(--line);padding:8px 12px;display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:8px;color:var(--muted);cursor:pointer;transition:all var(--transition)}.search:hover{border-color:var(--text-secondary);background:var(--card)}.search-icon svg{width:16px;height:16px;color:var(--muted)}.search-text{font-size:13px}.search-key{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);padding:2px 6px;font-size:11px;font-weight:500;color:var(--muted)}.divider{height:1px;background:var(--line);margin:16px 0}.section-label{font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);font-weight:600;margin:20px 0 8px 8px;display:flex;align-items:center;gap:10px}.section-label:after{content:"";flex:1;height:1px;background:linear-gradient(to right,var(--line),transparent)}.nav{display:grid;flex:1;overflow:visible;align-content:start;gap:0}.nav-item{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:2px;padding:2px;border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;transition:all .2s ease;border:1px solid transparent;min-height:36px;position:relative}.nav-item:hover{background:var(--bg-secondary);color:var(--text)}.nav-item:hover .nav-icon{background:var(--line-light)}.nav-item .nav-icon{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);transition:all .2s ease;margin-left:2px}.nav-item .nav-icon svg{width:16px;height:16px}.nav-item .nav-text{font-size:14px;font-weight:500}.nav-item.active{background:linear-gradient(to right,var(--sidebar-active-bg),rgba(255,241,236,.6),transparent);border:1px solid transparent;color:var(--sidebar-active-text);position:relative}.nav-item.active:before{content:"";position:absolute;left:-12px;top:50%;transform:translateY(-50%);width:3px;height:16px;background:var(--sidebar-active-text);border-radius:4px;pointer-events:none}.nav-item.active .nav-icon{background:var(--sidebar-active-icon-bg)}.nav-item.active .nav-icon svg{color:var(--sidebar-active-text)}.nav-item.active .nav-text{font-weight:600;color:var(--sidebar-active-text)}.badge{background:var(--accent);color:#fff;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;line-height:1.2}.chev svg{width:16px;height:16px;color:var(--muted);transition:transform var(--transition)}.nav-item.active .chev svg{color:var(--primary)}.sub{padding:0 0 0 16px;margin:0 0 0 18px;border-left:2px solid var(--line);display:grid;gap:0}.sub-item{font-size:13px;color:var(--muted);padding:6px 10px;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition)}.sub-item:hover{color:var(--text)}.sub-item.active{color:var(--text);font-weight:600;background:var(--card)}.footer{flex-shrink:0;margin-top:auto;padding-top:16px;display:flex;flex-direction:column;gap:4px;border-top:1px solid var(--line);overflow:visible}.toggle{width:36px;height:20px;border-radius:999px;background:var(--line);position:relative;border:none;cursor:pointer;transition:background var(--transition)}.toggle:hover{background:var(--text-secondary)}.toggle-knob{width:16px;height:16px;border-radius:50%;background:#fff;position:absolute;left:2px;top:2px;box-shadow:var(--shadow-sm);transition:transform var(--transition)}.profile-card{margin-top:12px;background:var(--card);border-radius:var(--radius-lg);border:1px solid var(--line);display:grid;grid-template-columns:48px 1fr 20px;gap:8px;padding:8px;align-items:center;cursor:pointer;transition:all .2s ease}.profile-card:hover{background:var(--card);border-color:var(--text-secondary)}.avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0%,#f97316 100%);position:relative;overflow:hidden;flex-shrink:0;transition:all .2s ease}.avatar:after{content:"";position:absolute;width:100%;height:100%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Ccircle cx='50' cy='38' r='20' fill='%23f2d2bf'/%3E%3Cpath d='M15 95c6-20 26-30 35-30s29 10 35 30' fill='%23f0b795'/%3E%3Cpath d='M25 45c5-20 20-30 25-30s20 10 25 30' fill='%236a3b2c'/%3E%3C/svg%3E") center/cover no-repeat;opacity:.9}.profile-meta{min-width:0;overflow:hidden}.profile-name{font-size:14px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-email{font-size:12px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-chevron svg{width:16px;height:16px;color:var(--muted)}.sidebar.collapsed{width:72px;padding:10px 12px;overflow:visible}.sidebar.collapsed .sidebar-scroll{overflow-y:auto;overflow-x:hidden}.sidebar.collapsed .org-card-wrapper{padding-bottom:0;margin-bottom:8px;margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px;display:flex;justify-content:center;align-items:center;height:55px;box-sizing:border-box}.sidebar.collapsed .org-card{display:flex;justify-content:center;align-items:center;padding:6px;background:var(--card);border-radius:var(--radius)}.sidebar.collapsed .org-logo{width:36px;height:36px}.sidebar.collapsed .org-meta,.sidebar.collapsed .org-toggle{display:none}.sidebar.collapsed .section-label{font-size:0;color:transparent;margin:8px 4px;height:1px;background:var(--line);overflow:hidden;padding:0}.sidebar.collapsed .section-label:after{display:none}.sidebar.collapsed .nav{gap:2px;align-items:center;justify-items:center}.sidebar.collapsed .nav-item{width:44px;height:44px;min-height:44px;padding:0;display:flex;align-items:center;justify-content:center;border:none!important;background:transparent!important;border-radius:var(--radius-lg)}.sidebar.collapsed .nav-item .nav-icon{width:28px;height:28px;background:transparent;border-radius:8px;display:flex;align-items:center;justify-content:center}.sidebar.collapsed .nav-item .nav-icon svg{color:var(--text-secondary);width:18px;height:18px}.sidebar.collapsed .nav-item.active{background:linear-gradient(var(--sidebar-active-text),var(--sidebar-active-text)) left center / 3px 16px no-repeat,linear-gradient(to right,var(--sidebar-active-bg),rgba(255,241,236,.45))!important;box-shadow:6px 0 12px -4px #f568161a}.sidebar.collapsed .nav-item.active:before{display:none}.sidebar.collapsed .nav-item.active .nav-icon{background:var(--sidebar-active-icon-bg)}.sidebar.collapsed .nav-item.active .nav-icon svg{color:var(--sidebar-active-text)}.sidebar.collapsed .nav-item:hover{background:var(--line-light)!important;box-shadow:0 1px 3px #0000000a}.sidebar.collapsed .nav-item:hover .nav-icon{background:var(--bg-secondary);box-shadow:inset 0 0 0 1px #0000000a}.sidebar.collapsed .nav-item .nav-text,.sidebar.collapsed .nav-item .chev,.sidebar.collapsed .nav-item .badge{display:none}.sidebar.collapsed .nav-item:after{content:attr(data-tooltip);position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:var(--text);color:#fff;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease;z-index:2100;pointer-events:none}.sidebar.collapsed .nav-item:before{content:"";position:absolute;left:calc(100% + 6px);top:50%;transform:translateY(-50%);border:5px solid transparent;border-right-color:var(--text);opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease;z-index:2100;pointer-events:none}.sidebar.collapsed .nav-item:after,.sidebar.collapsed .nav-item:before{display:none}.sidebar-tooltip{position:fixed;transform:translateY(-50%);background:var(--text);color:#fff;padding:6px 12px;border-radius:8px;font-size:13px;font-weight:500;white-space:nowrap;box-shadow:0 8px 20px #0f172a33;z-index:3000;pointer-events:none}.sidebar.collapsed .nav-item:hover:after,.sidebar.collapsed .nav-item:hover:before{opacity:1;visibility:visible}.sidebar.collapsed .sub{display:none}.sidebar.collapsed .footer{gap:4px;align-items:center}.sidebar.collapsed .footer .nav-item{border:none!important;background:transparent!important}.sidebar.collapsed .footer .nav-item:hover{background:transparent!important}.sidebar.collapsed .footer .nav-item:hover .nav-icon{background:var(--card);border-radius:var(--radius)}.sidebar.collapsed .footer .nav-item .nav-text,.sidebar.collapsed .footer .toggle{display:none}.sidebar.collapsed .profile-card{grid-template-columns:48px;padding:8px;border:none;background:transparent;margin-top:12px}.sidebar.collapsed .profile-card .avatar{width:48px;height:48px}.sidebar.collapsed .profile-meta,.sidebar.collapsed .profile-chevron{display:none}.settings-wrapper{position:relative}.settings-popup{position:absolute;left:calc(100% + 8px);bottom:0;min-width:200px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:8px;box-shadow:var(--shadow-md);z-index:1000;animation:popupFadeIn .15s ease}@keyframes popupFadeIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.popup-item{padding:8px 12px;font-size:13px;font-weight:500;color:var(--muted);border-radius:var(--radius);cursor:pointer;transition:all var(--transition)}.popup-item:hover{color:var(--text)}.popup-item.active{color:var(--text);font-weight:600;background:var(--card)}.chev.rotated svg{transform:rotate(90deg)}.sidebar.collapsed .settings-wrapper .nav-item .chev{display:none}.sidebar.collapsed .settings-popup{left:calc(100% + 4px);bottom:auto;top:50%;transform:translateY(-50%)}.sidebar.collapsed .settings-popup .popup-item{white-space:nowrap}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#faf9f7;padding:20px;position:relative;overflow:hidden}.login-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.login-card{width:100%;max-width:340px;position:relative;z-index:1;background:#fff;border-radius:12px;padding:28px 24px;box-shadow:0 4px 24px #0000000f}.login-logo{width:40px;height:40px;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;border-radius:10px;overflow:hidden}.login-logo img{width:100%;height:100%;object-fit:contain}.login-title{text-align:center;margin:0 0 4px;font-size:22px;font-weight:600;color:#111827}.login-subtitle{text-align:center;margin:0 0 20px;font-size:13px;color:#6b7280}.login-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:10px 12px;border-radius:6px;margin-bottom:16px;font-size:13px;text-align:center}.login-form{display:flex;flex-direction:column;gap:14px}.login-form .form-group{position:relative}.login-form .form-group label{display:block;font-size:13px;font-weight:500;color:#111827;margin-bottom:6px}.login-form .form-group input{width:100%;padding:10px 0;border:none;border-bottom:1px solid #e5e7eb;border-radius:0;background:transparent;font-size:14px;color:#111827;transition:all .2s ease;box-sizing:border-box}.login-form .form-group input::placeholder{color:#9ca3af}.login-form .form-group input:focus{outline:none;border-color:#111827;box-shadow:none}.login-form .form-group input:disabled{opacity:.6;cursor:not-allowed}.password-group{position:relative}.password-toggle{position:absolute;right:0;bottom:10px;background:none;border:none;padding:4px;cursor:pointer;color:#9ca3af;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.password-toggle:hover{color:#6b7280}.password-toggle svg{width:18px;height:18px}.login-btn{width:100%;padding:12px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.login-btn:disabled{opacity:.6;cursor:not-allowed}.login-btn.primary{background:#111827;color:#fff;margin-top:8px}.login-btn.primary:hover:not(:disabled){background:#1f2937}.login-divider{display:flex;align-items:center;gap:12px;margin:16px 0}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:#e5e7eb}.login-divider span{color:#9ca3af;font-size:12px}.login-divider-toggle{background:none;border:none;padding:0;color:#9ca3af;font-size:12px;cursor:pointer;white-space:nowrap;transition:color .15s}.login-divider-toggle:hover{color:#6b7280;text-decoration:underline}.login-back-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid #e5e7eb;border-radius:6px;padding:7px 12px;margin-bottom:16px;color:#374151;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s;width:100%;justify-content:center}.login-back-btn:hover{background:#f9fafb;border-color:#d1d5db}.login-btn.microsoft{background:#fff;border:1px solid #e5e7eb;color:#374151}.login-btn.microsoft:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.login-btn.microsoft svg{width:18px;height:18px}.login-tabs,.login-tab,.login-content,.login-description,.azure-login,.azure-btn,.admin-login{display:none}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:14px;font-weight:500;color:var(--text)}.form-group input{padding:10px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);font-size:14px;color:var(--text);transition:all var(--transition)}.form-group input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.form-group input:disabled{opacity:.6;cursor:not-allowed}.form-group input::placeholder{color:var(--muted)}.admin-btn{padding:12px 24px;border:none;border-radius:var(--radius);background:var(--primary);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--transition)}.admin-btn:hover{background:var(--primary-hover)}.admin-btn:disabled{opacity:.6;cursor:not-allowed}.loading-screen,.auth-callback{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}.loading-screen>div,.auth-callback-content{display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--muted)}.spinner{width:40px;height:40px;border:3px solid var(--line);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.profile-wrapper{position:relative}.profile-menu{position:absolute;left:0;right:0;bottom:calc(100% + 8px);background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:8px;box-shadow:var(--shadow-md);z-index:100;animation:popupFadeIn .15s ease}.profile-menu-item{display:flex;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:500;color:var(--text);border-radius:var(--radius);cursor:pointer;transition:all var(--transition)}.profile-menu-item:hover{background:var(--bg);color:var(--accent)}.profile-menu-item svg{width:18px;height:18px}.sidebar.collapsed .profile-wrapper .profile-menu{left:calc(100% + 4px);right:auto;bottom:auto;top:50%;transform:translateY(-50%);min-width:150px}.user-management{padding:0;height:100%;display:flex;flex-direction:column}.user-management-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;gap:16px;color:var(--muted)}.user-management-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--line)}.user-management-header h2{margin:0;font-size:18px;font-weight:600;color:var(--text)}.error-banner{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:var(--accent-light);color:var(--accent);font-size:14px}.error-banner button{background:none;border:none;font-size:20px;cursor:pointer;color:var(--accent);padding:0 4px}.users-table-container{flex:1;overflow:auto;padding:0 24px 24px}.users-table{width:100%;border-collapse:collapse;font-size:14px}.users-table th{text-align:left;padding:16px 12px;font-weight:600;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--card)}.users-table td{padding:16px 12px;border-bottom:1px solid var(--line-light);vertical-align:top}.users-table tr.inactive{opacity:.6}.users-table tr:hover{background:var(--bg-secondary-light)}.user-info{display:flex;align-items:center;gap:12px}.user-avatar{width:40px;height:40px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;flex-shrink:0}.user-details{display:flex;flex-direction:column;gap:2px}.user-name{font-weight:600;color:var(--text)}.user-email{font-size:13px;color:var(--muted)}.user-username{font-size:12px;color:var(--text-secondary)}.role-badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:500;text-transform:capitalize}.role-badge.admin{background:var(--primary-light);color:var(--primary)}.role-badge.user{background:var(--bg-secondary);color:var(--text-secondary)}.provider-badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:500}.provider-badge.azure{background:#e6f2ff;color:#0078d4}.provider-badge.local{background:var(--bg-secondary);color:var(--text-secondary)}.status-toggle{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:500;cursor:pointer;border:none;transition:all var(--transition)}.status-toggle.active{background:#dcfce7;color:#15803d}.status-toggle.inactive{background:var(--accent-light);color:var(--accent)}.status-toggle:hover{opacity:.8}.permissions-list{display:flex;flex-direction:column;gap:6px}.permission-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--text-secondary)}.permission-checkbox input[type=checkbox]{display:none}.permission-checkbox .checkmark{width:16px;height:16px;border:2px solid var(--line);border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all var(--transition);flex-shrink:0}.permission-checkbox input[type=checkbox]:checked+.checkmark{background:var(--primary);border-color:var(--primary)}.permission-checkbox input[type=checkbox]:checked+.checkmark:after{content:"✓";color:#fff;font-size:10px;font-weight:700}.permission-checkbox:hover .checkmark{border-color:var(--primary)}.permission-label{white-space:nowrap}.action-buttons{display:flex;gap:8px}.edit-btn,.delete-btn{width:32px;height:32px;border-radius:var(--radius);border:1px solid var(--line);background:var(--card);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition)}.edit-btn:hover{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.delete-btn:hover{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.edit-btn svg,.delete-btn svg{width:16px;height:16px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s ease}.modal{background:var(--card);border-radius:var(--radius-lg);width:100%;max-width:480px;box-shadow:var(--shadow-md);animation:slideUp .2s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--line)}.modal-header h3{margin:0;font-size:18px;font-weight:600}.close-btn{width:32px;height:32px;border-radius:50%;border:none;background:var(--bg-secondary);cursor:pointer;font-size:20px;display:flex;align-items:center;justify-content:center;color:var(--muted);transition:all var(--transition)}.close-btn:hover{background:var(--line);color:var(--text)}.modal form{padding:24px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:14px;font-weight:500;color:var(--text);margin-bottom:8px}.form-group input,.form-group select{width:100%;padding:10px 14px;border:1px solid var(--line);border-radius:var(--radius);font-size:14px;color:var(--text);background:var(--card);transition:all var(--transition)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:8px}.cancel-btn{padding:10px 20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);color:var(--text);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition)}.cancel-btn:hover{background:var(--bg-secondary)}.integrations{padding:24px;height:100%;overflow-y:auto}.integrations-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;gap:16px;color:var(--muted)}.integrations-header{margin-bottom:32px}.integrations-header h2{margin:0 0 8px;font-size:24px;font-weight:600;color:var(--text)}.integrations-subtitle{margin:0;font-size:14px;color:var(--muted)}.integrations-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:40px}@media(max-width:1100px){.integrations-grid{grid-template-columns:1fr}}.integration-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px;display:grid;grid-template-columns:56px 1fr auto;grid-template-rows:auto auto;gap:16px;align-items:start;transition:all var(--transition);min-width:0}.integration-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md)}.integration-card.connected{border-color:var(--success)}.integration-icon{width:56px;height:56px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;grid-row:span 2}.integration-icon svg{width:32px;height:32px}.integration-icon.jira,.integration-icon.bitbucket{background:#0052cc15;color:#0052cc}.integration-icon.s3{background:#ff990015;color:#f90}.integration-icon.claude{background:#ea580c15;color:#ea580c}.integration-info{min-width:0}.integration-info h3{margin:0 0 4px;font-size:16px;font-weight:600;color:var(--text)}.integration-info p{margin:0;font-size:13px;color:var(--muted)}.integration-site{margin-top:8px;font-size:12px;color:var(--text-secondary);word-break:break-all}.integration-site a{color:var(--primary);text-decoration:none}.integration-site a:hover{text-decoration:underline}.integration-site .region-badge{display:inline-block;margin-left:8px;padding:2px 6px;font-size:11px;background:var(--surface-hover);border-radius:4px;color:var(--muted)}.integration-projects{margin-top:10px;display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}.projects-label{font-size:12px;color:var(--text-secondary);font-weight:500}.project-badges{display:flex;flex-wrap:wrap;gap:6px}.project-badge{display:inline-block;padding:2px 8px;background:var(--primary-light);color:var(--primary);border-radius:4px;font-size:11px;font-weight:600}.project-badge.gitops{background:#e0f2fe;color:#0369a1}.integration-status{justify-self:end}.status-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500}.status-badge.connected{background:#dcfce7;color:#15803d}.status-badge.disconnected{background:var(--bg-secondary);color:var(--muted)}.status-badge.not-configured{background:var(--accent-light);color:var(--accent)}.integration-actions{grid-column:2 / 4;display:flex;align-items:center;gap:12px}.connect-btn{padding:8px 20px;border-radius:var(--radius);border:none;background:var(--primary);color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition)}.connect-btn:hover:not(:disabled){background:var(--primary-hover)}.connect-btn:disabled{opacity:.6;cursor:not-allowed}.disconnect-btn{padding:8px 20px;border-radius:var(--radius);border:1px solid var(--accent);background:transparent;color:var(--accent);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition)}.disconnect-btn:hover{background:var(--accent-light)}.config-hint{font-size:12px;color:var(--muted);font-style:italic}.integrations-info-section{border-top:1px solid var(--line);padding-top:32px}.integrations-info-section h3{margin:0 0 20px;font-size:16px;font-weight:600;color:var(--text)}.info-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}@media(max-width:1100px){.info-cards{grid-template-columns:1fr}}.info-card{background:var(--bg-secondary);border-radius:var(--radius);padding:20px}.info-card h4{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text)}.info-card ol{margin:0;padding-left:20px;font-size:13px;color:var(--text-secondary)}.info-card li{margin-bottom:8px}.info-card a{color:var(--primary);text-decoration:none}.info-card a:hover{text-decoration:underline}.info-card code{background:var(--card);padding:2px 6px;border-radius:4px;font-size:12px;font-family:monospace}.info-note{margin:12px 0 0;padding:8px 12px;background:var(--primary-light);border-radius:4px;font-size:12px;color:var(--primary)}.configure-btn{padding:8px 20px;border-radius:var(--radius);border:1px solid var(--text);background:var(--buttonbg);color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition)}.configure-btn:hover:not(:disabled){background:var(--buttonsecondbg);border-color:var(--text-secondary)}.configure-btn:disabled{opacity:.6;cursor:not-allowed}.integration-config{grid-column:1 / -1;background:var(--bg-secondary);border-radius:var(--radius);padding:20px;margin-top:8px;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.integration-config h4{margin:0 0 4px;font-size:15px;font-weight:600;color:var(--text)}.config-description{margin:0 0 16px;font-size:13px;color:var(--muted)}.form-field{margin-bottom:20px}.form-field label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:var(--text)}.form-field input{width:100%;padding:10px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);color:var(--text);font-size:14px;transition:all var(--transition);box-sizing:border-box}.form-field input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.form-field input:disabled{opacity:.6;cursor:not-allowed}.form-field input::placeholder{color:var(--muted)}.form-field small{display:block;margin-top:6px;font-size:12px;color:var(--muted)}.form-field small a{color:var(--primary);text-decoration:none}.form-field small a:hover{text-decoration:underline}.project-search{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:12px;transition:all var(--transition)}.project-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.project-search svg{width:18px;height:18px;color:var(--muted);flex-shrink:0}.project-search input{flex:1;border:none;background:transparent;font-size:14px;color:var(--text);outline:none}.project-search input::placeholder{color:var(--muted)}.clear-search{width:20px;height:20px;border:none;background:var(--line);border-radius:50%;color:var(--text-secondary);font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition)}.clear-search:hover{background:var(--text-secondary);color:var(--card)}.project-list{display:flex;flex-direction:column;gap:8px;max-height:240px;overflow-y:auto;padding-right:8px;margin-bottom:16px}.project-list::-webkit-scrollbar{width:6px}.project-list::-webkit-scrollbar-track{background:var(--line-light);border-radius:3px}.project-list::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px}.project-list::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.project-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;transition:all var(--transition)}.project-item:hover{border-color:var(--primary)}.project-item input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.project-key{font-weight:600;font-size:13px;color:var(--primary);background:var(--primary-light);padding:2px 8px;border-radius:4px;flex-shrink:0}.project-name{font-size:14px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-projects{padding:20px;text-align:center;color:var(--muted);font-size:14px}.config-actions{display:flex;gap:12px;justify-content:flex-end}.save-btn{padding:8px 20px;border-radius:var(--radius);border:none;background:var(--primary);color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition)}.save-btn:hover:not(:disabled){background:var(--primary-hover)}.save-btn:disabled{opacity:.6;cursor:not-allowed}#snackbar-portal{position:fixed;bottom:0;right:0;pointer-events:none}.snackbar-container{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:12px;z-index:9999;pointer-events:none}.snackbar{display:flex;align-items:center;gap:10px;padding:8px 16px;border-radius:var(--radius);box-shadow:var(--shadow-md);animation:snackbarSlideIn .3s ease;pointer-events:auto;max-width:400px}@keyframes snackbarSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.snackbar-error{background:var(--accent);color:#fff}.snackbar-success{background:#dcfce7;color:#15803d}.snackbar-info{background:var(--text);color:#fff}.snackbar-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.snackbar-icon svg{width:20px;height:20px}.snackbar-message{flex:1;font-size:14px;font-weight:500}.snackbar-close{background:none;border:none;color:inherit;font-size:20px;cursor:pointer;padding:0;opacity:.8;transition:opacity var(--transition);line-height:1}.snackbar-close:hover{opacity:1}.rp-pipeline-selector-wrapper,.releases-pipeline-selector-wrapper{position:relative}.rp-pipeline-selector{display:flex;align-items:center;gap:8px;padding:8px 14px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition);min-width:200px}.rp-pipeline-selector:hover:not(:disabled){border-color:var(--primary);box-shadow:0 0 0 3px #f95d031a}.rp-pipeline-selector:disabled{opacity:.5;cursor:not-allowed}.rp-pipeline-selector .rp-pipeline-icon{width:16px;height:16px;color:var(--primary);flex-shrink:0}.rp-pipeline-selector-text{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-pipeline-selector .rp-pipeline-chevron{width:16px;height:16px;color:var(--muted);flex-shrink:0}.rp-pipeline-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:280px;width:max-content;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 40px #00000026,0 2px 10px #0000001a;max-height:350px;overflow:hidden;z-index:1000;display:flex;flex-direction:column}.subbar .rp-pipeline-dropdown{position:absolute}.rp-pipeline-search{padding:10px 12px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px;background:var(--bg-secondary-light);flex-shrink:0}.rp-pipeline-search .search-icon{width:16px;height:16px;color:var(--muted);flex-shrink:0}.rp-pipeline-search input{flex:1;border:none;background:transparent;font-size:13px;color:var(--text);outline:none}.rp-pipeline-search input::placeholder{color:var(--muted)}.rp-pipeline-search .clear-search{width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:var(--line);border:none;border-radius:50%;font-size:14px;color:var(--muted);cursor:pointer;transition:all var(--transition)}.rp-pipeline-search .clear-search:hover{background:var(--text-secondary);color:var(--card)}.rp-pipeline-list{overflow-y:auto;max-height:280px}.rp-pipeline-dropdown-item{display:flex;align-items:center;gap:12px;padding:10px 14px;cursor:pointer;transition:background var(--transition)}.rp-pipeline-dropdown-item:hover{background:var(--bg-secondary-light)}.rp-pipeline-dropdown-item.active{background:#f95d0314}.rp-pipeline-dropdown-info{flex:1;min-width:0}.rp-pipeline-dropdown-name{font-size:14px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-pipeline-dropdown-desc{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.rp-pipeline-check{flex-shrink:0;color:var(--primary)}.um-container{width:100%;background:#faf7f5;border-radius:12px;overflow:hidden;border:1px solid #e8e8e8;box-shadow:0 2px 8px #0000000a;position:relative;display:flex;height:calc(100vh - 200px);min-height:500px}.um-main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.um-container.with-drawer .um-main-content{flex:1;position:relative}.um-container.with-drawer .um-main-content:after{content:"";position:absolute;inset:0;background:#0000004d;pointer-events:none;z-index:30;animation:um-fade-in .2s ease}.um-table-wrapper{overflow-x:auto;overflow-y:auto;flex:1;scrollbar-width:auto;scrollbar-color:#94a3b8 #f1f5f9;-webkit-overflow-scrolling:touch}.um-table-wrapper::-webkit-scrollbar{-webkit-appearance:none;width:12px;height:12px}.um-table-wrapper::-webkit-scrollbar-track{background:#e2e8f0;border-radius:6px}.um-table-wrapper::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:6px;border:2px solid #e2e8f0;min-height:40px}.um-table-wrapper::-webkit-scrollbar-thumb:hover{background:#64748b}.um-table-wrapper::-webkit-scrollbar-corner{background:#e2e8f0}.um-table{width:100%;border-collapse:collapse;font-size:14px}.um-th{padding:14px 16px;text-align:center;font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#000;background:var(--primary-hover);border-bottom:1px solid var(--primary-hover);border-right:1px solid rgba(0,0,0,.1);white-space:nowrap;position:sticky;top:0;z-index:15}.um-th:last-child{border-right:none}.um-th-content{display:flex;align-items:center;justify-content:center;gap:6px}.um-th-content svg{color:#0009}.um-th:hover{background:var(--primary-50);color:#000}.um-th-user{min-width:280px;text-align:left;position:sticky;left:0;top:0;z-index:25;background:var(--primary-hover)}.um-th-user:after{content:"";position:absolute;top:0;right:0;bottom:0;width:3px;background:linear-gradient(to right,rgba(0,0,0,.15),rgba(0,0,0,.05),transparent);pointer-events:none}.um-th-role,.um-th-provider,.um-th-status{width:120px}.um-th-permissions{min-width:200px}.um-th-actions{width:120px}.um-tr{background:#fff;transition:background .1s ease}.um-tr:hover{background:#fafafa}.um-tr.inactive{opacity:.6}.um-td{padding:10px 16px;border-bottom:1px solid #e8e8e8;border-right:1px solid #f1f5f9;vertical-align:middle;text-align:center}.um-td:last-child{border-right:none}.um-td-user{position:sticky;left:0;background:#fff;z-index:10;text-align:left;min-width:280px}.um-tr:hover .um-td-user{background:#fafafa}.um-td-user:after{content:"";position:absolute;top:0;right:0;bottom:0;width:3px;background:linear-gradient(to right,rgba(0,0,0,.08),rgba(0,0,0,.02),transparent);pointer-events:none}.um-user-info{display:flex;align-items:center;gap:14px}.um-user-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;flex-shrink:0}.um-user-details{display:flex;flex-direction:column;gap:2px;min-width:0}.um-user-name-row{display:flex;align-items:center;gap:8px}.um-user-name{font-weight:600;color:#1a1a1a;font-size:14px;white-space:nowrap}.um-user-email{font-size:13px;color:#64748b;white-space:nowrap}.um-user-username{font-size:12px;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.um-role-badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:capitalize}.um-role-badge.admin{background:#dbeafe;color:#1d4ed8}.um-role-badge.user{background:#f3f4f6;color:#374151}.um-provider-badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:500}.um-provider-badge.local{background:#f3f4f6;color:#374151}.um-provider-badge.azure{background:#e0f2fe;color:#0369a1}.um-status-badge{display:inline-flex;align-items:center;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease;border:none}.um-status-badge.active{background:#dcfce7;color:#15803d}.um-status-badge.active:hover{background:#bbf7d0}.um-status-badge.inactive{background:#fee2e2;color:#dc2626}.um-status-badge.inactive:hover{background:#fecaca}.um-permissions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.um-permission-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:11px;color:#64748b;cursor:pointer;transition:all .15s ease}.um-permission-tag:hover{background:#f1f5f9;border-color:#cbd5e1}.um-permission-tag.active{background:var(--primary-light, #fff7ed);border-color:var(--primary);color:#1a1a1a}.um-permission-tag input{display:none}.um-permission-check{width:14px;height:14px;border:2px solid #cbd5e1;border-radius:3px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.um-permission-tag.active .um-permission-check{background:var(--primary);border-color:var(--primary)}.um-permission-tag.active .um-permission-check svg{color:#fff}.um-actions{display:flex;align-items:center;justify-content:center;gap:8px}.um-action-btn{width:36px;height:36px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;color:#64748b}.um-action-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#334155}.um-action-btn.edit:hover{background:#eff6ff;border-color:#93c5fd;color:#2563eb}.um-action-btn.delete:hover{background:#fef2f2;border-color:#fca5a5;color:#dc2626}.um-action-btn svg{width:16px;height:16px}.um-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.um-spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:var(--primary);border-radius:50%;animation:um-spin .8s linear infinite}@keyframes um-spin{to{transform:rotate(360deg)}}.um-loading-text{font-size:14px;color:#64748b}.um-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:12px;color:#94a3b8}.um-empty svg{width:48px;height:48px;color:#cbd5e1}.um-empty-text{font-size:14px}.um-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border-top:1px solid #e5e7eb}.um-footer-info{font-size:13px;color:#64748b}.um-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:um-fade-in .2s ease}@keyframes um-fade-in{0%{opacity:0}to{opacity:1}}.um-modal{background:#fff;border-radius:16px;width:100%;max-width:480px;max-height:90vh;overflow:hidden;box-shadow:0 25px 50px -12px #00000040;animation:um-slide-up .2s ease}@keyframes um-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.um-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.um-modal-title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0}.um-modal-close{width:32px;height:32px;border-radius:8px;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#64748b;font-size:24px;transition:all .15s ease}.um-modal-close:hover{background:#f1f5f9;color:#1a1a1a}.um-modal-body{padding:24px;overflow-y:auto;max-height:calc(90vh - 140px)}.um-form-group{margin-bottom:20px}.um-form-group:last-child{margin-bottom:0}.um-form-label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:8px}.um-form-input{width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1a1a1a;background:#fff;transition:all .15s ease;box-sizing:border-box}.um-form-select{width:100%;padding:12px 40px 12px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1a1a1a;background:#fff;transition:all .15s ease;box-sizing:border-box;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;cursor:pointer}.um-form-select:hover{border-color:#9ca3af}.um-form-select option{padding:12px;background:#fff;color:#1a1a1a}.um-form-input:focus,.um-form-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #ea580c1a}.um-form-input::placeholder{color:#9ca3af}.um-custom-dropdown{position:relative;width:100%}.um-custom-dropdown-trigger{width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1a1a1a;background:#fff;transition:all .15s ease;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;justify-content:space-between;text-align:left}.um-custom-dropdown-trigger:hover{border-color:#9ca3af}.um-custom-dropdown-trigger.open{border-color:var(--primary);box-shadow:0 0 0 3px #ea580c1a}.um-custom-dropdown-chevron{color:#6b7280;transition:transform .2s ease;flex-shrink:0}.um-custom-dropdown-chevron.open{transform:rotate(180deg)}.um-custom-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:100;overflow:hidden;animation:um-dropdown-fade-in .15s ease}@keyframes um-dropdown-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.um-custom-dropdown-item{width:100%;padding:10px 14px;border:none;background:transparent;font-size:14px;color:#374151;cursor:pointer;display:flex;align-items:center;gap:8px;text-align:left;transition:background .1s ease}.um-custom-dropdown-item:hover{background:#f8fafc}.um-custom-dropdown-item.selected{background:#fff7ed;color:var(--primary);font-weight:500}.um-custom-dropdown-item:not(:last-child){border-bottom:1px solid #f1f5f9}.um-custom-dropdown-item svg{color:var(--primary);flex-shrink:0}.um-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e5e7eb}.um-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.um-btn-cancel{background:#fff;border:1px solid #d1d5db;color:#374151}.um-btn-cancel:hover{background:#f9fafb;border-color:#9ca3af}.um-btn-primary{background:var(--buttonbg, #1a1a1a);border:1px solid var(--buttonbg, #1a1a1a);color:#fff}.um-btn-primary:hover{opacity:.9}.um-permissions-dropdown{position:relative;display:inline-flex;flex-direction:column;align-items:center}.um-permissions-trigger{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-size:13px;color:#475569;cursor:pointer;transition:all .15s ease;min-width:140px;justify-content:space-between}.um-permissions-trigger:hover{background:#f8fafc;border-color:#cbd5e1}.um-permissions-summary{display:flex;align-items:center;gap:6px}.um-permissions-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--primary);color:#fff;border-radius:10px;font-size:11px;font-weight:600}.um-permissions-chevron{transition:transform .2s ease;color:#94a3b8}.um-permissions-chevron.expanded{transform:rotate(180deg)}.um-permissions-menu{position:fixed;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 10px 40px #00000026;z-index:9999;min-width:200px;max-height:280px;overflow-y:auto;animation:um-dropdown-in .15s ease}@keyframes um-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.um-permissions-menu::-webkit-scrollbar{width:6px}.um-permissions-menu::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.um-permissions-menu::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.um-permissions-menu::-webkit-scrollbar-thumb:hover{background:#94a3b8}.um-permissions-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;background:transparent;border:none;font-size:13px;color:#374151;cursor:pointer;transition:background .1s ease;text-align:left}.um-permissions-item:hover{background:#f8fafc}.um-permissions-item.active{background:var(--primary-light, #fff7ed)}.um-permissions-item:first-child{border-radius:9px 9px 0 0}.um-permissions-item:last-child{border-radius:0 0 9px 9px}.um-permissions-item:not(:last-child){border-bottom:1px solid #f1f5f9}.um-permission-checkbox{width:18px;height:18px;border:2px solid #d1d5db;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease}.um-permissions-item.active .um-permission-checkbox{background:var(--primary);border-color:var(--primary)}.um-permissions-item.active .um-permission-checkbox svg{color:#fff}.um-permission-label{flex:1}.um-drawer{width:420px;min-width:420px;background:#fff;border-left:1px solid #e5e7eb;display:flex;flex-direction:column;animation:um-slide-in-right .25s ease}@keyframes um-slide-in-right{0%{width:0;min-width:0;opacity:0}to{width:420px;min-width:420px;opacity:1}}.um-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.um-drawer-title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0}.um-drawer-close{width:36px;height:36px;border-radius:8px;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#64748b;transition:all .15s ease}.um-drawer-close:hover{background:#f1f5f9;color:#1a1a1a}.um-drawer-form{display:flex;flex-direction:column;flex:1;overflow:hidden}.um-drawer-body{flex:1;padding:24px;overflow-y:auto}.um-drawer-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e5e7eb;flex-shrink:0;background:#fafafa}.api-tokens-page{padding:24px 32px;max-width:900px}.api-tokens-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.api-tokens-header h2{font-size:18px;font-weight:600;color:#111827;margin:0 0 4px}.api-tokens-header p{font-size:13px;color:#6b7280;margin:0}.api-tokens-create-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .15s}.api-tokens-create-btn:hover{opacity:.9}.api-tokens-create-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:20px;margin-bottom:20px;box-shadow:0 1px 4px #0000000a}.api-tokens-create-card h3{font-size:15px;font-weight:600;color:#111827;margin:0 0 16px}.api-tokens-form-row{display:flex;gap:16px;margin-bottom:16px}.api-tokens-form-group{flex:1}.api-tokens-form-group label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:5px}.api-tokens-form-group input,.api-tokens-form-group select{width:100%;padding:8px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;background:#fff}.api-tokens-form-group input:focus,.api-tokens-form-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #f95d031a}.api-tokens-form-actions{display:flex;justify-content:flex-end;gap:8px}.api-tokens-cancel-btn{padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;color:#374151;cursor:pointer}.api-tokens-generate-btn{padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer}.api-tokens-generate-btn:disabled{opacity:.5;cursor:not-allowed}.api-tokens-new-token-header{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#16a34a;margin-bottom:8px}.api-tokens-new-token-warning{font-size:13px;color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;padding:8px 12px;margin:0 0 12px}.api-tokens-new-token-field{display:flex;gap:8px;margin-bottom:12px}.api-tokens-new-token-field input{flex:1;padding:8px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;font-family:SF Mono,Monaco,Inconsolata,monospace;color:#111827;background:#f9fafb}.api-tokens-copy-btn{display:flex;align-items:center;gap:5px;padding:8px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;color:#374151;cursor:pointer;white-space:nowrap}.api-tokens-copy-btn:hover{background:#f3f4f6}.api-tokens-done-btn{padding:8px 20px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;color:#374151;cursor:pointer}.api-tokens-usage-hint{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;font-size:13px;color:#0369a1;margin-bottom:20px}.api-tokens-usage-hint code{background:#0369a114;padding:1px 5px;border-radius:4px;font-size:12px}.api-tokens-section{margin-bottom:24px}.api-tokens-section h4{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin:0 0 10px}.api-tokens-list{display:flex;flex-direction:column;gap:6px}.api-tokens-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;transition:box-shadow .15s}.api-tokens-item:hover{box-shadow:0 1px 4px #0000000a}.api-tokens-item--inactive{opacity:.6}.api-tokens-item-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#fff7ed;border-radius:8px;flex-shrink:0}.api-tokens-item--inactive .api-tokens-item-icon{background:#f3f4f6}.api-tokens-item-info{flex:1;min-width:0}.api-tokens-item-name{display:block;font-size:14px;font-weight:500;color:#111827}.api-tokens-item-meta{display:flex;align-items:center;gap:4px;font-size:12px;color:#9ca3af;flex-wrap:wrap}.api-tokens-item-meta code{font-size:11px;background:#f3f4f6;padding:1px 5px;border-radius:4px;color:#6b7280}.api-tokens-sep{color:#d1d5db}.api-tokens-revoke-btn{padding:6px 14px;background:#fff;border:1px solid #fca5a5;border-radius:6px;font-size:12px;color:#dc2626;cursor:pointer;white-space:nowrap;transition:all .15s}.api-tokens-revoke-btn:hover{background:#fef2f2;border-color:#ef4444}.api-tokens-badge{display:inline-flex;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:500}.api-tokens-badge--revoked{background:#fee2e2;color:#dc2626}.api-tokens-badge--expired{background:#fef3c7;color:#92400e}.api-tokens-loading{text-align:center;padding:40px;font-size:14px;color:#9ca3af}.api-tokens-empty{text-align:center;padding:60px 20px;color:#9ca3af}.api-tokens-empty p{font-size:15px;font-weight:500;color:#6b7280;margin:16px 0 4px}.api-tokens-empty span{font-size:13px}.wit-container{width:100%;height:100%;background:#faf7f5;border-radius:12px;overflow:hidden;border:1px solid #e8e8e8;box-shadow:0 2px 8px #0000000a;position:relative;display:flex;flex-direction:column}.wit-subbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border-bottom:1px solid #e5e7eb}.wit-subbar-left,.wit-subbar-right{display:flex;align-items:center;gap:12px}.wit-refresh-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;background:#1a1a1a;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.wit-refresh-btn:hover{background:#333}.wit-refresh-btn:active{background:#000;transform:scale(.98)}.wit-refresh-btn svg{flex-shrink:0}.wit-filter-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border-bottom:1px solid #e5e7eb;gap:16px}.wit-filter-group{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.wit-filter-label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.wit-filter-label svg{color:#94a3b8}.wit-filter-item{position:relative}.wit-filter-select{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-size:13px;color:#475569;cursor:pointer;transition:all .15s ease;min-width:140px}.wit-filter-select:hover{background:#f1f5f9;border-color:#cbd5e1}.wit-filter-select.active{background:var(--primary-light, #fff7ed);border-color:var(--primary);color:#1a1a1a}.wit-filter-select.active svg{color:var(--primary)}.wit-filter-select span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wit-filter-chevron{flex-shrink:0;transition:transform .15s ease}.wit-filter-select:hover .wit-filter-chevron{transform:translateY(1px)}.wit-filter-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:200px;max-height:280px;overflow-y:auto;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 10px 40px #0000001f;z-index:200;padding:6px;animation:filterDropdownIn .15s ease}.wit-filter-option{display:flex;align-items:center;gap:10px;padding:10px 12px;font-size:13px;color:#334155;border-radius:6px;cursor:pointer;transition:all .1s ease}.wit-filter-option:hover{background:#f1f5f9}.wit-filter-option.selected{background:var(--primary-light, #fff7ed);color:#1a1a1a;font-weight:500}.wit-filter-option.selected:after{content:"";margin-left:auto;width:16px;height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ea580c' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat}.wit-filter-option svg{color:#94a3b8;flex-shrink:0}.wit-filter-option.selected svg{color:var(--primary)}.wit-filter-empty{color:#94a3b8;font-style:italic;cursor:default}.wit-filter-empty:hover{background:transparent}.wit-filter-avatar{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;color:#1f2937;flex-shrink:0}.wit-filter-actions{display:flex;align-items:center;gap:12px}.wit-filter-clear{display:flex;align-items:center;gap:6px;padding:6px 12px;background:transparent;border:1px solid #e2e8f0;border-radius:6px;font-size:12px;font-weight:500;color:#64748b;cursor:pointer;transition:all .15s ease}.wit-filter-clear:hover{background:#fef2f2;border-color:#fca5a5;color:#dc2626}.wit-filter-clear svg{flex-shrink:0}.wit-filter-count{font-size:12px;color:#94a3b8;white-space:nowrap}.wit-table-wrapper{overflow-x:scroll;overflow-y:scroll;flex:1;min-height:0;scrollbar-width:auto;scrollbar-color:#94a3b8 #f1f5f9;-webkit-overflow-scrolling:touch}.wit-table-wrapper::-webkit-scrollbar{-webkit-appearance:none;width:12px;height:12px}.wit-table-wrapper::-webkit-scrollbar-track{background:#e2e8f0;border-radius:6px}.wit-table-wrapper::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:6px;border:2px solid #e2e8f0;min-height:40px}.wit-table-wrapper::-webkit-scrollbar-thumb:hover{background:#64748b}.wit-table-wrapper::-webkit-scrollbar-corner{background:#e2e8f0}.wit-table{width:100%;border-collapse:collapse;font-size:14px}.wit-th{padding:14px 16px;text-align:center;font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#000;background:var(--primary);border-bottom:1px solid var(--primary);border-right:1px solid rgba(0,0,0,.1);white-space:nowrap;position:sticky;top:0;z-index:15}.wit-th:last-child{border-right:none}.wit-th-content{display:flex;align-items:center;justify-content:center;gap:6px}.wit-th-content svg{color:#0009}.wit-sort-icon{opacity:.5;transition:all .2s ease}.wit-th:hover{background:var(--primary-50);color:#000}.wit-th:hover .wit-sort-icon{opacity:.8}.wit-th-work{min-width:180px;text-align:left;position:sticky;left:0;top:0;z-index:25;background:var(--primary)}.wit-th-work:after{content:"";position:absolute;top:0;right:0;bottom:0;width:3px;background:linear-gradient(to right,rgba(0,0,0,.15),rgba(0,0,0,.05),transparent);pointer-events:none}.wit-th-type{width:100px}.wit-th-summary{min-width:220px}.wit-th-status{width:120px}.wit-th-assignee{width:180px}.wit-th-priority{width:100px}.wit-th-source{min-width:150px}.wit-th-commits{width:80px;text-align:center}.wit-row{transition:background-color .15s ease}.wit-row:hover{background-color:#f9fafb}.wit-row-expanded{background-color:#fff8e6}.wit-row-expanded:hover{background-color:#fef3c7}.wit-row-child{background-color:#fff}.wit-row-child:hover{background-color:#f9fafb}.wit-td{padding:14px 16px;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;vertical-align:middle}.wit-td:last-child{border-right:none}.wit-td-clickable{cursor:pointer;transition:background-color .15s ease}.wit-td-clickable:hover{background-color:#f8f9fa}.wit-row-child .wit-td-clickable:hover{background-color:#f5f3f0}.wit-td-work{position:sticky;left:0;z-index:10;background:#fff}.wit-td-work:after{content:"";position:absolute;top:0;right:0;bottom:0;width:3px;background:linear-gradient(to right,rgba(0,0,0,.1),rgba(0,0,0,.03),transparent);pointer-events:none}.wit-row:hover .wit-td-work{background:#f9fafb}.wit-row-expanded .wit-td-work{background:#fff8e6;position:sticky;left:0}.wit-row-expanded .wit-td-work:before{content:"";position:absolute;top:0;left:0;bottom:0;width:3px;background:#f59e0b;z-index:1}.wit-row-expanded:hover .wit-td-work{background:#fef3c7}.wit-row-child .wit-td-work{background:#fff}.wit-row-child:hover .wit-td-work{background:#f9fafb}.wit-work-cell{display:flex;align-items:center;gap:6px}.wit-work-cell-child{padding-left:6px}.wit-expand-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;border-radius:var(--radius-sm);cursor:pointer;color:var(--muted);transition:all var(--transition);flex-shrink:0}.wit-expand-btn:hover{background:var(--line-light);color:var(--text)}.wit-expand-btn svg{transition:transform .2s ease}.wit-expand-btn.expanded svg{transform:rotate(90deg)}.wit-expand-placeholder{width:24px;flex-shrink:0}.wit-child-indent{width:32px;flex-shrink:0;position:relative}.wit-child-indent:before{content:"";position:absolute;left:12px;top:-20px;width:1px;height:24px;background:var(--line)}.wit-child-indent:after{content:"";position:absolute;left:12px;top:4px;width:12px;height:1px;background:var(--line)}.wit-type-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-sm);font-size:12px;flex-shrink:0}.wit-type-icon-small{width:20px;height:20px;font-size:10px}.wit-key{font-weight:600;color:#1f2937;font-size:13px;white-space:nowrap}.wit-key-child{font-weight:500;color:#374151;font-size:12px}.wit-child-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--primary-light);color:var(--primary);border-radius:10px;font-size:11px;font-weight:600}.wit-jira-link{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;padding:4px;color:#9ca3af;border-radius:4px;transition:all .15s ease}.wit-jira-link:hover{color:var(--primary);background:var(--primary-light, #fff7ed)}.wit-jira-link svg{flex-shrink:0}.wit-type-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:500;text-transform:capitalize}.wit-status-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:3px;font-size:11px;font-weight:700;letter-spacing:.5px;white-space:nowrap}.wit-summary-wrapper{position:relative;display:inline-block;max-width:350px}.wit-summary{display:block;color:#374151;font-size:14px;line-height:1.4;max-width:350px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.wit-summary-child{color:#6b7280;font-size:13px}.wit-summary-tooltip{position:absolute;left:0;top:calc(100% + 8px);z-index:1000;min-width:280px;max-width:420px;padding:14px 16px;background:linear-gradient(135deg,#1e293b,#334155);color:#f1f5f9;font-size:13px;font-weight:400;line-height:1.6;white-space:normal;word-wrap:break-word;border-radius:10px;box-shadow:0 20px 40px #00000040,0 8px 16px #00000026,0 0 0 1px #ffffff1a;opacity:0;visibility:hidden;transform:translateY(-4px);transition:all .2s cubic-bezier(.16,1,.3,1);pointer-events:none}.wit-summary-tooltip:before{content:"";position:absolute;top:-6px;left:20px;width:12px;height:12px;background:#1e293b;transform:rotate(45deg);border-radius:2px;box-shadow:-2px -2px 4px #0000001a}.wit-summary-wrapper:hover .wit-summary-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.wit-assignee{display:flex;align-items:center;gap:8px}.wit-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#000;font-size:11px;font-weight:600;flex-shrink:0}.wit-avatar-small{width:24px;height:24px;font-size:10px}.wit-assignee-name{color:#000;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wit-unassigned{color:#666;font-style:italic;font-size:13px}.wit-priority{font-weight:500;font-size:12px;text-transform:capitalize;color:#000}.wit-td-source{padding:0!important;vertical-align:top}.wit-source-repos{display:flex;flex-direction:column;gap:0}.wit-source-repo{display:flex;align-items:center;padding:6px 8px;min-height:38px;height:38px;box-sizing:border-box;color:#05c;font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wit-source-repo:not(:last-child){border-bottom:1px solid #e5e7eb}.wit-source-loading{color:#9ca3af;font-size:12px;font-style:italic}.wit-skeleton{display:inline-block;height:10px;border-radius:6px;background:linear-gradient(90deg,#e9edf3 25%,#f5f7fb 37%,#e9edf3 63%);background-size:400% 100%;animation:wit-skeleton-shimmer 1.2s ease-in-out infinite}@keyframes wit-skeleton-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.wit-source-empty{color:#9ca3af;font-size:12px}.wit-th-actions{text-align:center;width:70px}.wit-td-actions{text-align:center;vertical-align:middle}.wit-action-wrapper{position:relative;display:inline-block}.wit-action-btn{border:1px solid transparent;background:transparent;border-radius:8px;width:32px;height:28px;cursor:pointer;color:#64748b;transition:all .15s ease}.wit-action-btn:hover{background:#f1f5f9;border-color:#e2e8f0;color:#475569}.wit-action-btn.active{background:var(--primary-light, #fff7ed);border-color:var(--primary);color:var(--primary)}.wit-action-dots{font-size:18px;line-height:1;display:inline-block}.wit-action-menu{position:absolute;right:0;top:calc(100% + 6px);background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 10px 40px #0000001f,0 2px 6px #0000000a;min-width:170px;z-index:100;padding:6px;animation:actionMenuIn .15s ease}@keyframes actionMenuIn{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.wit-action-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:10px 12px;border:none;background:transparent;cursor:pointer;border-radius:8px;font-size:13px;font-weight:500;color:#334155;transition:all .1s ease}.wit-action-item:hover{background:#f1f5f9;color:#1a1a1a}.wit-action-item svg{color:#94a3b8;flex-shrink:0;transition:color .1s ease}.wit-action-item:hover svg{color:var(--primary)}.wit-details-drawer{position:absolute;top:0;right:0;bottom:0;width:480px;background:linear-gradient(180deg,#fff,#f8fafc);border-left:1px solid #e2e8f0;box-shadow:-12px 0 40px #0f172a26;z-index:100;display:flex;flex-direction:column;animation:slideIn .25s cubic-bezier(.16,1,.3,1);border-radius:0 12px 12px 0}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.wit-details-backdrop{position:absolute;inset:0;border:none;padding:0;background:#0f172a26;cursor:pointer;z-index:99;animation:fadeIn .2s ease;border-radius:12px}.wit-details-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border-bottom:1px solid #e2e8f0}.wit-details-title{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:700;color:#0f172a}.wit-details-icon{width:32px;height:32px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center}.wit-details-key{letter-spacing:.3px}.wit-details-close{width:28px;height:28px;border:none;background:#f1f5f9;border-radius:6px;font-size:16px;cursor:pointer;color:#64748b;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.wit-details-close:hover{background:#e2e8f0;color:#0f172a}.wit-details-body{flex:1;padding:14px 16px;overflow-y:auto}.wit-details-tabs-wrapper{position:relative;display:flex;align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0}.wit-details-tabs-arrow{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#fff;border:1px solid #e2e8f0;border-radius:50%;cursor:pointer;color:#64748b;flex-shrink:0;transition:all .15s ease;z-index:2}.wit-details-tabs-arrow:hover{background:#f1f5f9;color:#334155;border-color:#cbd5e1}.wit-details-tabs-arrow-left{margin-left:8px}.wit-details-tabs-arrow-right{margin-right:8px}.wit-details-tabs{display:flex;gap:2px;padding:6px 8px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;flex:1}.wit-details-tabs::-webkit-scrollbar{display:none}.wit-details-tab{background:transparent;border:none;padding:6px 12px;font-size:12px;font-weight:500;color:#64748b;cursor:pointer;white-space:nowrap;border-radius:6px;transition:all .15s ease}.wit-details-tab:hover{background:#e2e8f0;color:#334155}.wit-details-tab.active{background:#fff;color:var(--primary);font-weight:600;box-shadow:0 1px 2px #0000000f}.wit-details-section{margin-bottom:16px}.wit-details-summary{font-size:13px;color:#1e293b;line-height:1.5;background:#fff;padding:12px;border-radius:8px;border:1px solid #e2e8f0}.wit-details-row-line{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#fff;border-radius:6px;margin-bottom:6px;border:1px solid #f1f5f9;transition:all .15s ease}.wit-details-row-line:hover{border-color:#e2e8f0}.wit-details-label{font-size:12px;color:#64748b;font-weight:500}.wit-details-value{font-size:12px;color:#1e293b;font-weight:600}.wit-details-status{padding:4px 10px;border-radius:12px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.wit-details-assignee{display:inline-flex;align-items:center;gap:8px;color:#1e293b;font-size:12px;font-weight:600}.wit-details-avatar{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#fbbf24,#f59e0b);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:9px;color:#fff}.wit-details-jira{margin-top:12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:#1a1a1a;color:#fff;text-decoration:none;border-radius:8px;font-weight:600;font-size:12px;width:100%;transition:all .2s ease}.wit-details-jira:hover{background:#333}.wit-details-placeholder{color:#94a3b8;font-size:12px;text-align:center;padding:24px 16px;background:#fff;border-radius:8px;border:1px dashed #e2e8f0}.wit-drawer-filters{display:flex;align-items:center;gap:8px;margin-bottom:14px;flex-wrap:wrap}.wit-drawer-filter-item{position:relative;flex:1;min-width:140px}.wit-drawer-filter-select{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-size:12px;font-weight:500;color:#475569;cursor:pointer;transition:all .15s ease}.wit-drawer-filter-select:hover{background:#f1f5f9;border-color:#cbd5e1}.wit-drawer-filter-select.active{background:var(--primary-light, #fff7ed);border-color:var(--primary);color:#1a1a1a}.wit-drawer-filter-select.active svg{color:var(--primary)}.wit-drawer-filter-select svg{color:#94a3b8;flex-shrink:0}.wit-drawer-filter-select span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.wit-drawer-filter-chevron{flex-shrink:0;transition:transform .15s ease}.wit-drawer-filter-select:hover .wit-drawer-filter-chevron{transform:translateY(1px)}.wit-drawer-filter-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:180px;max-height:240px;overflow-y:auto;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 10px 40px #0000001f;z-index:200;padding:6px;animation:drawerDropdownIn .15s ease}@keyframes drawerDropdownIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.wit-drawer-filter-option{display:flex;align-items:center;gap:10px;padding:10px 12px;font-size:12px;color:#334155;border-radius:6px;cursor:pointer;transition:all .1s ease}.wit-drawer-filter-option:hover{background:#f1f5f9}.wit-drawer-filter-option.selected{background:var(--primary-light, #fff7ed);color:#1a1a1a;font-weight:500}.wit-drawer-filter-option.selected:after{content:"";margin-left:auto;width:14px;height:14px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ea580c' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat}.wit-drawer-filter-option svg{color:#94a3b8;flex-shrink:0}.wit-drawer-filter-option.selected svg{color:var(--primary)}.wit-drawer-filter-avatar{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;color:#1f2937;flex-shrink:0}.wit-drawer-filter-clear{display:flex;align-items:center;gap:4px;padding:8px 10px;font-size:11px;font-weight:500;color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.wit-drawer-filter-clear:hover{background:#fef2f2;border-color:#fca5a5;color:#dc2626}.wit-drawer-filter-clear svg{flex-shrink:0}.wit-drawer-filter-status-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.wit-drawer-filter-status-badge.open{background:#e0f2fe;color:#0369a1}.wit-drawer-filter-status-badge.merged{background:#dcfce7;color:#15803d}.wit-drawer-filter-status-badge.declined,.wit-drawer-filter-status-badge.closed{background:#fee2e2;color:#b91c1c}.wit-drawer-filter-build-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.wit-drawer-filter-build-badge.successful{background:#dcfce7;color:#15803d}.wit-drawer-filter-build-badge.failed{background:#fee2e2;color:#b91c1c}.wit-drawer-filter-build-badge.in_progress,.wit-drawer-filter-build-badge.inprogress,.wit-drawer-filter-build-badge.pending{background:#fef3c7;color:#b45309}.wit-drawer-filter-build-badge.stopped,.wit-drawer-filter-build-badge.cancelled{background:#f3f4f6;color:#6b7280}.wit-drawer-filter-env-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:capitalize;letter-spacing:.3px;background:#e0e7ff;color:#4338ca}.wit-drawer-filter-deploy-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.wit-drawer-filter-deploy-badge.successful,.wit-drawer-filter-deploy-badge.completed{background:#dcfce7;color:#15803d}.wit-drawer-filter-deploy-badge.failed{background:#fee2e2;color:#b91c1c}.wit-drawer-filter-deploy-badge.in_progress,.wit-drawer-filter-deploy-badge.inprogress,.wit-drawer-filter-deploy-badge.pending,.wit-drawer-filter-deploy-badge.undeployed{background:#fef3c7;color:#b45309}.wit-drawer-filter-deploy-badge.stopped,.wit-drawer-filter-deploy-badge.cancelled{background:#f3f4f6;color:#6b7280}.wit-details-commits{display:flex;flex-direction:column;gap:12px}.wit-details-commit-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:14px;transition:all .15s ease}.wit-details-commit-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000a}.wit-details-commit-top{display:flex;gap:12px}.wit-details-commit-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:#475569;flex-shrink:0}.wit-details-commit-content{flex:1;min-width:0}.wit-details-commit-message{font-size:13px;font-weight:500;color:#1e293b;line-height:1.5;margin-bottom:6px;word-break:break-word}.wit-details-commit-meta{display:flex;align-items:center;gap:6px;font-size:11px;color:#64748b}.wit-details-commit-author{font-weight:500;color:#475569}.wit-details-commit-separator{color:#cbd5e1}.wit-details-commit-time{color:#94a3b8}.wit-details-commit-footer{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:12px;border-top:1px solid #f1f5f9}.wit-details-commit-hash{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:6px}.wit-details-commit-hash svg{color:#94a3b8}.wit-details-commit-id{font-size:12px;font-weight:600;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Monaco,Consolas,monospace;color:var(--primary);text-decoration:none;transition:color .15s ease}.wit-details-commit-id:hover{color:#c2410c;text-decoration:underline}.wit-details-commit-id-text{font-size:12px;font-weight:600;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Monaco,Consolas,monospace;color:#475569}.wit-details-commit-repo{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:500;color:#64748b;padding:4px 10px;background:#f1f5f9;border-radius:6px}.wit-details-commit-repo svg{color:#94a3b8}.wit-details-prs{display:flex;flex-direction:column;gap:12px}.wit-details-pr-card{border:1px solid #eef2f7;border-radius:12px;padding:12px;background:#f8fafc;display:flex;flex-direction:column;gap:8px}.wit-details-pr-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.wit-details-pr-title{font-size:14px;font-weight:600;color:var(--primary);text-decoration:none;flex:1}.wit-details-pr-title:hover{text-decoration:underline}.wit-details-pr-status{font-size:11px;padding:4px 8px;border-radius:999px;background:#e2e8f0;color:#475569;text-transform:uppercase;letter-spacing:.4px;font-weight:600;white-space:nowrap}.wit-details-pr-status.open{background:#e0f2fe;color:#0369a1}.wit-details-pr-status.merged{background:#dcfce7;color:#15803d}.wit-details-pr-status.declined,.wit-details-pr-status.closed{background:#fee2e2;color:#b91c1c}.wit-details-pr-meta{display:flex;justify-content:space-between;font-size:12px;color:#64748b;gap:8px}.wit-details-pr-repo{background:#e2e8f0;color:#1f2937;padding:2px 8px;border-radius:999px;font-size:12px}.wit-details-pr-branches{display:flex;align-items:center;gap:6px;font-size:12px;color:#1f2937}.wit-details-pr-branch{background:#f1f5f9;padding:4px 8px;border-radius:999px}.wit-details-pr-arrow{color:#94a3b8}.wit-details-pr-updated{font-size:11px;color:#94a3b8}.wit-details-builds{display:flex;flex-direction:column;gap:12px}.wit-details-build-card{border:1px solid #eef2f7;border-radius:12px;padding:12px;background:#f8fafc;display:flex;flex-direction:column;gap:8px}.wit-details-build-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.wit-details-build-title{font-size:14px;font-weight:600;color:var(--primary);text-decoration:none;flex:1}.wit-details-build-title:hover{text-decoration:underline}.wit-details-build-status{font-size:11px;padding:4px 8px;border-radius:999px;background:#e2e8f0;color:#475569;text-transform:uppercase;letter-spacing:.4px;font-weight:600;white-space:nowrap}.wit-details-build-status.successful{background:#dcfce7;color:#15803d}.wit-details-build-status.failed{background:#fee2e2;color:#b91c1c}.wit-details-build-status.in_progress,.wit-details-build-status.pending{background:#fef3c7;color:#b45309}.wit-details-build-meta{display:flex;justify-content:space-between;font-size:12px;color:#64748b;gap:8px}.wit-details-build-repo{background:#e2e8f0;color:#1f2937;padding:2px 8px;border-radius:999px;font-size:12px}.wit-details-build-commit{font-size:12px;color:#64748b}.wit-details-build-updated{font-size:11px;color:#94a3b8}.wit-details-deployments{display:flex;flex-direction:column;gap:12px}.wit-deploy-canvas{background:radial-gradient(circle at 1px 1px,#d4d4d4 1px,transparent 1px),#f5f5f5;background-size:16px 16px;border-radius:12px;padding:20px 20px 24px;margin-bottom:8px;position:relative;max-height:300px;overflow-y:auto}.wit-deploy-canvas-header{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:#1a1a1a;margin-bottom:16px;position:relative;z-index:1}.wit-deploy-canvas-header svg{color:#ea580c}.wit-deploy-columns{display:flex;align-items:flex-start;position:relative;z-index:1;justify-content:space-between;gap:4px}.wit-deploy-column{flex:1;min-width:0;max-width:150px;display:flex;flex-direction:column;border-radius:10px;overflow:hidden;background:transparent;border-right:1px solid #d4d4d4;padding-right:12px}.wit-deploy-column:last-of-type{border-right:none;padding-right:0}.wit-deploy-column:hover{transform:none;box-shadow:none}.wit-deploy-column-header{padding:8px 12px;border-bottom:1px solid;text-align:center;background:transparent}.wit-deploy-column-title{font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.5px}.wit-deploy-column-body{flex:1;display:flex;flex-direction:column;align-items:center;padding:16px 12px;gap:8px}.wit-deploy-column-icon{width:44px;height:44px;border-radius:50%;background:#fff;border:3px solid #e5e5e5;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000000f}.wit-deploy-column-body.success .wit-deploy-column-icon{border-color:#ea580c;background:#fff7ed}.wit-deploy-column-body.failed .wit-deploy-column-icon{border-color:#1a1a1a;background:#f5f5f5}.wit-deploy-column-body.in_progress .wit-deploy-column-icon,.wit-deploy-column-body.pending .wit-deploy-column-icon{border-color:#f97316;background:#ffedd5}.wit-deploy-column-status{font-size:11px;font-weight:600;text-align:center}.wit-deploy-column-env{font-size:10px;color:#525252;text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#fff7ed;padding:2px 8px;border-radius:4px}.wit-deploy-column-time{font-size:9px;color:#737373;text-align:center}.wit-deploy-column-arrow{display:flex;align-items:center;justify-content:center;padding:0;margin-top:45px;flex-shrink:0;width:16px}.wit-deploy-column-arrow svg{color:#d4d4d4}.wit-deploy-column-body-list{flex:1;display:flex;flex-direction:column;padding:10px 4px;gap:8px}.wit-deploy-env-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#fff;border-radius:8px;transition:background .15s ease;box-shadow:0 1px 3px #00000014}.wit-deploy-env-item:hover{background:#f5f5f5}.wit-deploy-env-item.success,.wit-deploy-env-item.failed,.wit-deploy-env-item.in_progress,.wit-deploy-env-item.pending{background:#fff}.wit-deploy-env-icon{width:24px;height:24px;border-radius:50%;background:#fff;border:2px solid #e5e5e5;display:flex;align-items:center;justify-content:center;flex-shrink:0}.wit-deploy-env-item.success .wit-deploy-env-icon{border-color:#16a34a;background:#f0fdf4}.wit-deploy-env-item.failed .wit-deploy-env-icon{border-color:#dc2626;background:#fef2f2}.wit-deploy-env-item.in_progress .wit-deploy-env-icon,.wit-deploy-env-item.pending .wit-deploy-env-icon{border-color:#f97316;background:#fff7ed}.wit-deploy-env-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.wit-deploy-env-name{font-size:11px;font-weight:600;color:#1a1a1a;text-transform:capitalize}.wit-deploy-env-status{font-size:10px;font-weight:500}@keyframes deploySpinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.wit-deploy-spinner{animation:deploySpinner 2s linear infinite}.wit-deployment-repo-selector{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:10px;padding:14px;margin-bottom:4px}.wit-deployment-repo-label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:#475569;margin-bottom:10px}.wit-deployment-repo-label svg{color:#64748b}.wit-details-deploy-card{border:1px solid #eef2f7;border-radius:12px;padding:12px;background:#f8fafc;display:flex;flex-direction:column;gap:8px}.wit-details-deploy-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.wit-details-deploy-title{font-size:14px;font-weight:600;color:var(--primary);text-decoration:none;flex:1}.wit-details-deploy-title:hover{text-decoration:underline}.wit-details-deploy-status{font-size:11px;padding:4px 8px;border-radius:999px;background:#e2e8f0;color:#475569;text-transform:uppercase;letter-spacing:.4px;font-weight:600;white-space:nowrap}.wit-details-deploy-status.successful{background:#dcfce7;color:#15803d}.wit-details-deploy-status.failed{background:#fee2e2;color:#b91c1c}.wit-details-deploy-status.in_progress,.wit-details-deploy-status.pending{background:#fef3c7;color:#b45309}.wit-details-deploy-meta{display:flex;justify-content:space-between;font-size:12px;color:#64748b;gap:8px}.wit-details-deploy-env,.wit-details-deploy-repo{background:#e2e8f0;color:#1f2937;padding:2px 8px;border-radius:999px;font-size:12px}.wit-details-deploy-commit{font-size:12px;color:#64748b}.wit-details-deploy-updated{font-size:11px;color:#94a3b8}.wit-insights{padding:24px 20px 24px 24px;background:#f8fafc;min-height:100%}.wit-insights-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;gap:16px}.wit-insights-title{font-size:20px;font-weight:600;color:#1f2937;margin-bottom:4px}.wit-insights-subtitle{font-size:13px;color:#6b7280}.wit-insights-status{background:#1f2937;color:#fff;padding:10px 16px;border-radius:12px;font-size:13px;font-weight:600;text-align:center;line-height:1.3;white-space:nowrap}.wit-insights-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;border:none;border-radius:8px;color:#64748b;font-size:20px;cursor:pointer;transition:all .15s ease;margin-left:8px}.wit-insights-close:hover{background:#e2e8f0;color:#1a1a1a}.wit-insights-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.wit-insight-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:8px;min-height:140px}.wit-insight-summary{grid-column:span 2;min-height:auto}.wit-insight-title{font-size:11px;text-transform:uppercase;letter-spacing:.8px;font-weight:600;color:#6b7280;margin-bottom:4px}.wit-insight-metric{font-size:32px;font-weight:700;color:#1f2937;line-height:1;margin-bottom:2px}.wit-insight-sub{font-size:13px;color:#6b7280;margin-bottom:4px}.wit-insight-row{font-size:13px;color:#475569;padding:2px 0}.wit-insight-progress{height:8px;background:#e5e7eb;border-radius:999px;overflow:hidden;margin:6px 0}.wit-insight-progress span{display:block;height:100%;background:linear-gradient(90deg,#3b82f6,#1d4ed8);border-radius:999px;transition:width .3s ease}.wit-insight-sparkline{display:flex;align-items:flex-end;gap:6px;height:32px;margin:8px 0;overflow:hidden}.wit-insight-sparkline span{flex-shrink:0;width:10px;background:#cbd5e1;border-radius:4px;min-height:6px;max-height:32px}.wit-insight-sparkline span:nth-child(n+5){background:#3b82f6}.wit-insight-list{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#475569;margin-top:4px}.wit-insight-narrative{font-size:14px;color:#1f2937;line-height:1.5}.wit-timeline-container{display:flex;flex-direction:column;gap:16px}.wit-timeline-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px}.wit-timeline-sort-toggle{display:flex;align-items:center;gap:4px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:3px}.wit-timeline-sort-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;color:#64748b;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.wit-timeline-sort-btn:hover{color:#334155;background:#f1f5f9}.wit-timeline-sort-btn.active{color:#1a1a1a;background:var(--primary-light, #fff7ed)}.wit-timeline-sort-btn.active svg{color:var(--primary)}.wit-timeline-sort-btn svg{color:#94a3b8;flex-shrink:0}.wit-timeline-count{font-size:12px;font-weight:500;color:#64748b}.wit-timeline{display:flex;flex-direction:column;gap:0;position:relative;padding-left:24px}.wit-timeline:before{content:"";position:absolute;left:11px;top:20px;bottom:20px;width:2px;background:linear-gradient(to bottom,#e5e7eb,#d1d5db);border-radius:1px}.wit-timeline-item{position:relative;padding:12px 0;display:flex;gap:16px}.wit-timeline-item:first-child{padding-top:0}.wit-timeline-item:last-child{padding-bottom:0}.wit-timeline-dot{position:absolute;left:-24px;top:12px;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;border:2px solid #e5e7eb;z-index:1;flex-shrink:0}.wit-timeline-item:first-child .wit-timeline-dot{top:0}.wit-timeline-dot.commit{border-color:var(--primary);background:#fff7ed}.wit-timeline-dot.commit svg{color:var(--primary)}.wit-timeline-dot.pr{border-color:#8b5cf6;background:#f5f3ff}.wit-timeline-dot.pr svg{color:#8b5cf6}.wit-timeline-dot.build{border-color:#3b82f6;background:#eff6ff}.wit-timeline-dot.build svg{color:#3b82f6}.wit-timeline-dot.deployment{border-color:#10b981;background:#ecfdf5}.wit-timeline-dot.deployment svg{color:#10b981}.wit-timeline-dot.success{border-color:#16a34a;background:#f0fdf4}.wit-timeline-dot.success svg{color:#16a34a}.wit-timeline-dot.failed{border-color:#dc2626;background:#fef2f2}.wit-timeline-dot.failed svg{color:#dc2626}.wit-timeline-dot.in_progress,.wit-timeline-dot.pending{border-color:#f97316;background:#fff7ed}.wit-timeline-dot.in_progress svg,.wit-timeline-dot.pending svg{color:#f97316}.wit-timeline-content{flex:1;min-width:0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:12px 14px;transition:all .15s ease}.wit-timeline-content:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000f}.wit-timeline-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:6px}.wit-timeline-title{font-size:13px;font-weight:600;color:#1a1a1a;line-height:1.4;word-break:break-word}.wit-timeline-title a{color:var(--primary);text-decoration:none}.wit-timeline-title a:hover{text-decoration:underline}.wit-timeline-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;padding:3px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;flex-shrink:0}.wit-timeline-badge.commit{background:#fff7ed;color:var(--primary)}.wit-timeline-badge.pr{background:#f5f3ff;color:#7c3aed}.wit-timeline-badge.build{background:#eff6ff;color:#2563eb}.wit-timeline-badge.deployment{background:#ecfdf5;color:#059669}.wit-timeline-badge.open{background:#e0f2fe;color:#0369a1}.wit-timeline-badge.merged{background:#dcfce7;color:#15803d}.wit-timeline-badge.declined,.wit-timeline-badge.closed{background:#fee2e2;color:#b91c1c}.wit-timeline-badge.successful{background:#dcfce7;color:#15803d}.wit-timeline-badge.failed{background:#fee2e2;color:#b91c1c}.wit-timeline-badge.in_progress,.wit-timeline-badge.inprogress,.wit-timeline-badge.pending{background:#fef3c7;color:#b45309}.wit-timeline-badge.stopped,.wit-timeline-badge.cancelled{background:#f3f4f6;color:#6b7280}.wit-timeline-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:11px;color:#64748b}.wit-timeline-meta-item{display:inline-flex;align-items:center;gap:4px}.wit-timeline-meta-item svg{color:#94a3b8;flex-shrink:0}.wit-timeline-repo{display:inline-flex;align-items:center;gap:4px;background:#f1f5f9;padding:2px 8px;border-radius:4px;font-size:10px;color:#475569}.wit-timeline-author{font-weight:500;color:#334155}.wit-timeline-time{color:#94a3b8}.wit-timeline-message{font-size:12px;color:#475569;line-height:1.5;margin-top:8px;padding-top:8px;border-top:1px solid #f1f5f9;word-break:break-word}.wit-timeline-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;background:#fafafa;border-radius:12px;border:1px dashed #e5e7eb}.wit-timeline-empty svg{color:#d1d5db;margin-bottom:16px}.wit-timeline-empty-title{font-size:14px;font-weight:600;color:#475569;margin-bottom:6px}.wit-timeline-empty-text{font-size:12px;color:#94a3b8;max-width:260px;line-height:1.5}.wit-timeline-date-group{position:relative;margin-top:16px}.wit-timeline-date-group:first-child{margin-top:0}.wit-timeline-date-header{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding-left:0}.wit-timeline-date-label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;background:#f8fafc;padding:4px 10px;border-radius:4px}.wit-timeline-date-line{flex:1;height:1px;background:#e5e7eb}.wit-details-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.wit-details-empty-state svg{color:#cbd5e1;margin-bottom:16px}.wit-details-empty-title{font-size:14px;font-weight:600;color:#475569;margin-bottom:6px}.wit-details-empty-text{font-size:12px;color:#94a3b8;max-width:240px;line-height:1.5}.wit-details-repos{display:flex;flex-direction:column;gap:12px}.wit-details-section-title{display:flex;align-items:center;gap:8px;font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:#64748b;margin-bottom:12px;font-weight:600}.wit-details-section-title svg{color:#94a3b8}.wit-details-repo-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:14px;transition:all .15s ease}.wit-details-repo-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000a}.wit-details-repo-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.wit-details-repo-icon{width:36px;height:36px;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.wit-details-repo-icon svg{color:#64748b}.wit-details-repo-info{flex:1;min-width:0}.wit-details-repo-name{font-size:13px;font-weight:600;color:#1e293b;margin-bottom:4px;word-break:break-word}.wit-details-repo-link{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--primary);text-decoration:none;transition:color .15s ease}.wit-details-repo-link:hover{color:#c2410c;text-decoration:underline}.wit-details-repo-link svg{flex-shrink:0}.wit-details-branches-section{padding-top:12px;border-top:1px solid #f1f5f9}.wit-details-branches-label{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.wit-details-branches-label svg{color:#cbd5e1}.wit-details-branches{display:flex;flex-wrap:wrap;gap:6px}.wit-details-branch{display:inline-flex;align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);color:#475569;font-size:11px;font-weight:500;padding:5px 10px;border-radius:6px;border:1px solid #e2e8f0;transition:all .15s ease}.wit-details-branch:hover{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-color:#cbd5e1}.wit-details-branch-empty{color:#94a3b8;font-size:11px;font-style:italic}.wit-td-commits{padding:0!important;vertical-align:top;text-align:center}.wit-commits-repos{display:flex;flex-direction:column;gap:0}.wit-commits-repo-row{display:flex;align-items:center;justify-content:center;padding:6px 8px;min-height:38px;height:38px;box-sizing:border-box;gap:8px}.wit-commits-repo-row:not(:last-child){border-bottom:1px solid #e5e7eb}.wit-commits-repo-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 6px;background:#e3f2fd;color:#0d47a1;border-radius:10px;font-size:11px;font-weight:600;flex-shrink:0}.wit-commits-authors{display:flex;align-items:center}.wit-commits-author{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#000;font-size:10px;font-weight:600;flex-shrink:0;position:relative;cursor:pointer;border:2px solid #fff;margin-left:-8px;box-shadow:0 1px 2px #0000001a;transition:transform .15s ease,box-shadow .15s ease,z-index 0s}.wit-commits-author:first-child{margin-left:0}.wit-commits-author:hover{transform:scale(1.1);box-shadow:0 2px 6px #0003;z-index:10}.wit-commits-author:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#1f2937;color:#fff;padding:5px 10px;border-radius:6px;font-size:11px;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:1000;margin-bottom:6px;pointer-events:none;box-shadow:0 2px 8px #00000026}.wit-commits-author:hover:after{opacity:1;visibility:visible}.wit-commits-more{font-size:10px;font-weight:600;color:#4b5563;background:#e5e7eb;padding:2px 6px;border-radius:10px;margin-left:2px}.wit-commits-empty,.wit-commits-no-author,.wit-commits-loading{color:#9ca3af;font-size:12px}.wit-th-prs{min-width:180px;text-align:center}.wit-td-prs{text-align:center;padding:0!important;vertical-align:top}.wit-prs-repos{display:flex;flex-direction:column;gap:0}.wit-prs-repo-row{display:flex;align-items:center;justify-content:center;padding:6px 8px;min-height:38px;height:38px;box-sizing:border-box;gap:8px;position:relative;cursor:pointer}.wit-prs-repo-row:not(:last-child){border-bottom:1px solid #e5e7eb}.wit-prs-repo-name{font-size:12px;color:#6b7280;min-width:80px;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wit-prs-repo-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 6px;background:#f3e8ff;color:#7c3aed;border-radius:10px;font-size:11px;font-weight:600;flex-shrink:0}.wit-prs-badges{display:flex;align-items:center;gap:4px}.wit-prs-stats{display:flex;align-items:center;justify-content:center;gap:4px}.wit-prs-repo-total{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 5px;background:#f3e8ff;color:#7c3aed;border-radius:9px;font-size:11px;font-weight:600}.wit-prs-cell{display:flex;flex-direction:column;align-items:center;gap:4px}.wit-prs-total{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 8px;background:#f3e8ff;color:#7c3aed;border-radius:11px;font-size:12px;font-weight:600}.wit-prs-breakdown{display:flex;align-items:center;justify-content:center;gap:4px}.wit-prs-badge{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 8px;border-radius:13px;font-size:12px;font-weight:600}.wit-prs-open{background:#dbeafe;color:#1d4ed8}.wit-prs-merged{background:#d1fae5;color:#047857}.wit-prs-declined{background:#fee2e2;color:#dc2626}.wit-prs-empty{color:#9ca3af;font-size:12px}.wit-prs-zero{opacity:.5}.wit-prs-loading{color:#9ca3af;font-size:12px}.wit-th-builds{min-width:140px;text-align:center}.wit-td-builds{text-align:center;padding:0!important;vertical-align:top}.wit-builds-repos{display:flex;flex-direction:column;gap:0}.wit-builds-repo-row{display:flex;align-items:center;justify-content:center;padding:6px 8px;min-height:38px;height:38px;box-sizing:border-box;gap:8px;position:relative;cursor:pointer}.wit-builds-repo-row:not(:last-child){border-bottom:1px solid #e5e7eb}.wit-builds-badges{display:flex;align-items:center;gap:6px}.wit-builds-badge{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:36px;height:28px;padding:0 10px;border-radius:14px;font-size:13px;font-weight:600}.wit-builds-badge svg{flex-shrink:0}.wit-builds-passed{background:#d1fae5;color:#047857}.wit-builds-failed{background:#fee2e2;color:#dc2626}.wit-builds-empty{color:#9ca3af;font-size:12px}.wit-builds-zero{opacity:.5}.wit-builds-loading{color:#9ca3af;font-size:12px}.wit-builds-repo-row:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#1f2937;color:#fff;padding:6px 10px;border-radius:6px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:1000;pointer-events:none;box-shadow:0 2px 8px #00000026}.wit-builds-repo-row:before{content:"";position:absolute;bottom:calc(100% - 4px);left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#1f2937;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:1000;pointer-events:none}.wit-builds-repo-row:hover:after,.wit-builds-repo-row:hover:before{opacity:1;visibility:visible}.wit-prs-repo-row:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#1f2937;color:#fff;padding:6px 10px;border-radius:6px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:1000;pointer-events:none;box-shadow:0 2px 8px #00000026}.wit-prs-repo-row:before{content:"";position:absolute;bottom:calc(100% - 4px);left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#1f2937;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:1000;pointer-events:none}.wit-prs-repo-row:hover:after,.wit-prs-repo-row:hover:before{opacity:1;visibility:visible}.wit-th-deployments{min-width:240px;vertical-align:bottom;padding:14px 16px!important}.wit-th-deployments-wrapper{display:flex;align-items:center;justify-content:center}.wit-th-deployments-wrapper .wit-th-content{padding:0}.wit-env-type-headers{display:flex;border-top:1px solid rgba(0,0,0,.1)}.wit-env-type-tag{flex:1 1 0;min-width:80px;padding:8px 12px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;text-align:center;background:var(--primary-hover);color:#374151}.wit-env-type-tag:not(:first-child){border-left:1px solid rgba(0,0,0,.1)}.wit-td-deployments{min-width:240px;padding:0!important;vertical-align:top}.wit-env-repos{display:flex;flex-direction:column;height:100%;width:100%}.wit-env-repo-row{display:flex;align-items:stretch;min-height:38px;height:38px;box-sizing:border-box}.wit-env-repo-row:not(:last-child){border-bottom:1px solid #e5e7eb}.wit-env-grid{display:flex;flex:1;align-items:stretch}.wit-env-type-col{flex:1 1 0;display:flex;flex-direction:column;justify-content:center;min-width:80px;height:100%}.wit-env-type-col:not(:first-child){border-left:1px solid #e5e7eb}.wit-env-names-row{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;padding:6px 8px;gap:4px;flex-wrap:nowrap;height:100%}.wit-env-name{position:relative;font-size:12px;padding:4px 8px;border-radius:4px;white-space:nowrap;cursor:pointer;transition:opacity .15s ease;font-weight:500;text-align:center;background:#dbdbdc;color:#4b5563;flex-shrink:0}.wit-env-name:hover{opacity:.8}.wit-env-name:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#1f2937;color:#fff;padding:5px 10px;border-radius:6px;font-size:11px;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:1000;margin-bottom:6px;pointer-events:none;box-shadow:0 2px 8px #00000026}.wit-env-name:hover:after{opacity:1;visibility:visible}.wit-env-pending-icon{position:absolute;top:-4px;right:-4px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0000001f}.wit-env-status-icon{position:absolute;top:-4px;right:-4px;border-radius:50%;box-shadow:0 1px 3px #0000001f}.wit-env-name.wit-env-success{background:#dcfce7;color:#166534;border:1px solid #86efac}.wit-env-name.wit-env-failed{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.wit-deployments-empty{color:#9ca3af;font-size:12px;padding:10px 16px}.wit-env-empty-placeholder{color:#9ca3af;font-size:12px}.wit-deployments-loading{color:#9ca3af;font-size:12px;padding:10px 16px}.wit-env-not-deployed{position:relative;font-size:10px;padding:3px 6px;border-radius:4px;white-space:nowrap;cursor:default;font-weight:600;text-align:center;background:#f3f4f6;color:#6b7280;border:1px dashed #d1d5db;flex-shrink:0}.wit-env-not-deployed:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#1f2937;color:#fff;padding:5px 10px;border-radius:6px;font-size:11px;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:1000;margin-bottom:6px;pointer-events:none;box-shadow:0 2px 8px #00000026}.wit-env-not-deployed:hover:after{opacity:1;visibility:visible}.wit-env-expand-btn{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;border:none;background:#e5e7eb;color:#4b5563;border-radius:4px;font-size:10px;font-weight:600;cursor:pointer;transition:all .15s ease;flex-shrink:0;white-space:nowrap}.wit-env-expand-btn:hover{background:#d1d5db;color:#374151}.wit-env-expand-btn svg{flex-shrink:0}.wit-env-collapse-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background:#e5e7eb;color:#4b5563;border-radius:4px;cursor:pointer;transition:all .15s ease;flex-shrink:0}.wit-env-collapse-btn:hover{background:#d1d5db;color:#374151}.wit-env-collapse-btn svg{flex-shrink:0}.wit-pagination{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:var(--card);border-top:1px solid var(--line);gap:16px}.wit-page-controls{display:flex;align-items:center;gap:8px}.wit-page-numbers{display:flex;align-items:center;gap:4px}.wit-page-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:1px solid var(--line);background:var(--card);border-radius:var(--radius);font-size:13px;font-weight:500;color:var(--text);cursor:pointer;transition:all var(--transition)}.wit-page-btn:hover:not(:disabled){background:var(--bg);border-color:var(--text-secondary)}.wit-page-btn:disabled{opacity:.5;cursor:not-allowed}.wit-page-nav{min-width:100px}.wit-page-num{min-width:36px;padding:8px 10px}.wit-page-num.active{background:var(--primary);border-color:var(--primary);color:#fff}.wit-page-ellipsis{padding:0 8px;color:var(--muted);font-size:14px}.wit-page-info{color:var(--muted);font-size:13px}.wit-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;color:var(--muted)}.wit-spinner{width:40px;height:40px;border:3px solid var(--line);border-top-color:var(--primary);border-radius:50%;animation:wit-spin .8s linear infinite}@keyframes wit-spin{to{transform:rotate(360deg)}}.wit-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;color:var(--muted)}.wit-empty svg{color:var(--line)}@media(max-width:1024px){.wit-th-summary,.wit-summary{max-width:200px}}@media(max-width:768px){.wit-th,.wit-td{padding:10px 12px}.wit-pagination{flex-direction:column;align-items:center;gap:12px}.wit-page-controls{justify-content:center}.wit-page-info{text-align:center}}.wit-sprint-insights-backdrop{position:absolute;inset:0;background:#0000004d;z-index:1000;animation:witSprintBackdropIn .2s ease}@keyframes witSprintBackdropIn{0%{opacity:0}to{opacity:1}}.wit-sprint-insights-drawer{position:absolute;top:0;right:0;bottom:0;width:480px;max-width:90%;background:#f8fafc;border-left:1px solid #e5e7eb;z-index:1001;display:flex;flex-direction:column;animation:witSprintDrawerIn .3s ease;box-shadow:-4px 0 20px #0000001a;overflow:hidden}@keyframes witSprintDrawerIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.wit-sprint-insights-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#fff;border-bottom:1px solid #e5e7eb}.wit-sprint-insights-title{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:#1a1a1a}.wit-sprint-insights-title svg{flex-shrink:0;color:#f97316}.wit-sprint-insights-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;border:none;border-radius:8px;color:#64748b;font-size:20px;cursor:pointer;transition:all .15s ease}.wit-sprint-insights-close:hover{background:#e2e8f0;color:#1a1a1a}.wit-sprint-insights-sprint-info{padding:14px 20px;background:#fff7ed;border-bottom:1px solid #fed7aa}.wit-sprint-insights-sprint-name{font-size:14px;font-weight:600;color:#1a1a1a;margin-bottom:4px}.wit-sprint-insights-sprint-dates{font-size:12px;color:#64748b}.wit-sprint-insights-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:0;display:flex;flex-direction:column}.wit-sprint-insights-body::-webkit-scrollbar{width:6px}.wit-sprint-insights-body::-webkit-scrollbar-track{background:transparent}.wit-sprint-insights-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.wit-sprint-insights-body::-webkit-scrollbar-thumb:hover{background:#94a3b8}.wit-sprint-insights-summary{display:flex;gap:8px}.wit-sprint-insights-card{flex:1;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:10px 8px;text-align:center}.wit-sprint-insights-card.completed{background:#f0fdf4;border-color:#bbf7d0}.wit-sprint-insights-card.in-progress{background:#eff6ff;border-color:#bfdbfe}.wit-sprint-insights-card.todo{background:#fafafa;border-color:#e5e7eb}.wit-sprint-insights-card-value{font-size:20px;font-weight:700;color:#1a1a1a;line-height:1.2}.wit-sprint-insights-card.completed .wit-sprint-insights-card-value{color:#16a34a}.wit-sprint-insights-card.in-progress .wit-sprint-insights-card-value{color:#2563eb}.wit-sprint-insights-card-label{font-size:9px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px;margin-top:2px}.wit-sprint-insights-section{background:#fafafa;border:1px solid #e5e7eb;border-radius:12px;padding:16px}.wit-sprint-insights-section-title{font-size:12px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.5px;margin-bottom:14px;display:flex;align-items:center;gap:8px}.wit-sprint-insights-progress{display:flex;align-items:center;gap:16px;padding:4px 0}.wit-sprint-insights-progress-bar{flex:1;height:12px;background:linear-gradient(90deg,#f1f5f9,#e2e8f0);border-radius:6px;overflow:hidden;box-shadow:inset 0 1px 3px #00000014;position:relative}.wit-sprint-insights-progress-fill{height:100%;background:linear-gradient(90deg,#22c55e,#16a34a,#15803d);border-radius:6px;transition:width .6s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #16a34a4d;position:relative}.wit-sprint-insights-progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(180deg,rgba(255,255,255,.3) 0%,transparent 100%);border-radius:6px 6px 0 0}.wit-sprint-insights-progress-text{font-size:14px;font-weight:700;color:#16a34a;white-space:nowrap;min-width:85px;text-align:right}.wit-sprint-insights-type-list{display:flex;flex-direction:column;gap:8px}.wit-sprint-insights-type-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px}.wit-sprint-insights-type-name{font-size:13px;font-weight:500;color:#334155}.wit-sprint-insights-type-count{font-size:13px;font-weight:600;color:#1a1a1a;background:#f1f5f9;padding:2px 10px;border-radius:12px}.wit-sprint-insights-contributors{display:flex;flex-direction:column;gap:12px}.wit-sprint-insights-contributor{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:12px}.wit-sprint-insights-contributor-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.wit-sprint-insights-contributor-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}.wit-sprint-insights-contributor-info{flex:1;min-width:0}.wit-sprint-insights-contributor-name{font-size:13px;font-weight:600;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wit-sprint-insights-contributor-stats{font-size:11px;color:#64748b;margin-top:2px}.wit-sprint-insights-contributor-bar{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden;display:flex}.wit-sprint-insights-contributor-bar-completed{height:100%;background:#22c55e;border-radius:3px 0 0 3px}.wit-sprint-insights-contributor-bar-progress{height:100%;background:#3b82f6}.wit-sprint-insights-dev-stats{display:flex;flex-direction:column;gap:10px}.wit-sprint-insights-dev-stat{display:flex;align-items:center;gap:14px;padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:10px}.wit-sprint-insights-dev-stat svg{color:#f97316;flex-shrink:0}.wit-sprint-insights-dev-stat-info{flex:1}.wit-sprint-insights-dev-stat-value{font-size:18px;font-weight:700;color:#1a1a1a}.wit-sprint-insights-dev-stat-label{font-size:11px;color:#64748b;margin-top:2px}.wit-sprint-insights-status-list{display:flex;flex-direction:column;gap:8px}.wit-sprint-insights-status-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px}.wit-sprint-insights-status-info{display:flex;align-items:center;gap:8px;min-width:100px}.wit-sprint-insights-status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.wit-sprint-insights-status-name{font-size:12px;font-weight:500;color:#334155}.wit-sprint-insights-status-bar-wrapper{flex:1;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.wit-sprint-insights-status-bar{height:100%;border-radius:4px;transition:width .3s ease}.wit-sprint-insights-status-count{font-size:12px;font-weight:600;color:#1a1a1a;min-width:24px;text-align:right}.board-container{display:flex;gap:20px;padding:1px;overflow-x:auto;overflow-y:hidden;height:calc(100vh - 200px);align-items:flex-start;width:100%;max-width:100%;box-sizing:border-box;min-width:0}.board-container::-webkit-scrollbar{height:8px}.board-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.board-container::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.board-container::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.board-column{min-width:320px;max-width:420px;flex-shrink:0;background:transparent;border-radius:12px;display:flex;flex-direction:column;height:100%;max-height:100%}.board-column-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid #e9ecef;position:sticky;top:0;background:transparent;border-radius:12px 12px 0 0;z-index:1}.board-column-header-left{display:flex;align-items:center;gap:8px}.board-column-status-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:#6c757d}.board-column[data-status="to do"] .board-column-status-icon,.board-column[data-status=open] .board-column-status-icon,.board-column[data-status=new] .board-column-status-icon{color:#6b7280}.board-column[data-status="in progress"] .board-column-status-icon,.board-column[data-status=active] .board-column-status-icon{color:#f59e0b}.board-column[data-status="in review"] .board-column-status-icon,.board-column[data-status=review] .board-column-status-icon,.board-column[data-status=testing] .board-column-status-icon{color:#fd7e14}.board-column[data-status=done] .board-column-status-icon,.board-column[data-status=closed] .board-column-status-icon,.board-column[data-status=resolved] .board-column-status-icon{color:#198754}.board-column[data-status=blocked] .board-column-status-icon{color:#dc3545}.board-column-title{font-weight:600;font-size:14px;color:#212529}.board-column-count{background:#6c757d;color:#fff;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;min-width:20px;text-align:center}.board-column[data-status=done] .board-column-count,.board-column[data-status=closed] .board-column-count,.board-column[data-status=resolved] .board-column-count{background:#198754}.board-column[data-status="in progress"] .board-column-count,.board-column[data-status=active] .board-column-count{background:#f59e0b}.board-column[data-status="in review"] .board-column-count,.board-column[data-status=review] .board-column-count{background:#fd7e14}.board-column[data-status=blocked] .board-column-count{background:#dc3545}.board-column-body{padding:12px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:16px}.board-column-body::-webkit-scrollbar{width:6px}.board-column-body::-webkit-scrollbar-track{background:transparent}.board-column-body::-webkit-scrollbar-thumb{background:transparent;border-radius:3px}.board-column-body::-webkit-scrollbar-thumb:hover{background:transparent}.board-card{background:#fff;border-radius:10px;padding:14px;box-shadow:0 1px 3px #00000014;cursor:pointer;transition:all .2s ease;border:1px solid #e9ecef}.board-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.board-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.board-card-badges{display:flex;align-items:center;gap:8px}.board-card-status-badge{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500}.board-card-status-badge svg{width:12px;height:12px}.board-card-status-badge.status-done,.board-card-status-badge.status-closed,.board-card-status-badge.status-resolved{background:#d1fae5;color:#065f46}.board-card-status-badge.status-in-progress,.board-card-status-badge.status-active{background:#fef3c7;color:#92400e}.board-card-status-badge.status-in-review,.board-card-status-badge.status-review{background:#fee2e2;color:#991b1b}.board-card-status-badge.status-to-do,.board-card-status-badge.status-open,.board-card-status-badge.status-backlog{background:#e0f2fe;color:#075985}.board-card-status-badge.status-blocked{background:#fee2e2;color:#dc2626}.board-card-priority-badge{display:flex;align-items:center;gap:2px;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500;border:1px solid}.board-card-priority-badge.priority-highest,.board-card-priority-badge.priority-critical{background:#fef2f2;color:#dc2626;border-color:#fecaca}.board-card-priority-badge.priority-high{background:#fff7ed;color:#ea580c;border-color:#fed7aa}.board-card-priority-badge.priority-medium{background:#fefce8;color:#ca8a04;border-color:#fef08a}.board-card-priority-badge.priority-low{background:#f0fdf4;color:#16a34a;border-color:#bbf7d0}.board-card-priority-badge.priority-lowest{background:#f0f9ff;color:#0284c7;border-color:#bae6fd}.board-card-menu-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:#9ca3af;cursor:pointer;border-radius:4px;transition:all .15s ease}.board-card-menu-btn:hover{background:#f3f4f6;color:#6b7280}.board-card-content{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px}.board-card-type-icon{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.board-card-type-icon svg{width:16px;height:16px}.board-card-type-icon.type-epic{background:#f3e8ff;color:#9333ea}.board-card-type-icon.type-story{background:#dcfce7;color:#16a34a}.board-card-type-icon.type-bug{background:#fee2e2;color:#dc2626}.board-card-type-icon.type-task,.board-card-type-icon.type-sub-task{background:#dbeafe;color:#2563eb}.board-card-type-icon.type-default{background:#f3f4f6;color:#6b7280}.board-card-summary{font-size:13px;font-weight:500;color:#1f2937;line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.board-card-key{font-size:12px;color:#6b7280;margin-bottom:8px}.board-card-key span{color:#9ca3af}.board-card-separator{border:none;border-top:1px dashed #e5e7eb;margin:0 0 10px}.board-card-footer{display:flex;align-items:center;justify-content:space-between}.board-card-assignee{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7280}.board-card-assignee-avatar{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;background-color:#fdbe9a!important;color:#000}.board-card-assignee svg{width:16px;height:16px;color:#9ca3af}.board-card-devinfo{display:flex;align-items:center;gap:10px}.board-card-metric{display:flex;align-items:center;gap:4px;font-size:11px;color:#6b7280}.board-card-metric svg{width:14px;height:14px;color:#9ca3af}.board-card-metric.has-data svg{color:#6b7280}.board-column-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#9ca3af;text-align:center}.board-column-empty svg{width:40px;height:40px;margin-bottom:12px;opacity:.5}.board-column-empty-text{font-size:13px}.board-loading{display:flex;align-items:center;justify-content:center;min-height:300px;color:#6b7280}.board-loading-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:board-spin .8s linear infinite}@keyframes board-spin{to{transform:rotate(360deg)}}.board-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#6b7280;text-align:center;padding:40px}.board-empty svg{width:64px;height:64px;margin-bottom:16px;opacity:.4}.board-empty-title{font-size:16px;font-weight:600;color:#374151;margin-bottom:8px}.board-empty-text{font-size:14px;color:#9ca3af}.view-toggle{display:flex;align-items:center;background:#f3f4f6;border-radius:8px;padding:3px;gap:2px}.view-toggle-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 12px;border:none;background:transparent;color:#6b7280;font-size:13px;font-weight:500;cursor:pointer;border-radius:6px;transition:all .15s ease}.view-toggle-btn svg{width:16px;height:16px}.view-toggle-btn:hover{color:#374151}.view-toggle-btn.active{background:#fff;color:#1f2937;box-shadow:0 1px 3px #0000001a}.board-wrapper{position:relative;width:100%;height:100%;overflow:hidden;border-radius:12px;max-width:100%;box-sizing:border-box;min-width:0;flex:1}.board-details-backdrop{position:absolute;inset:0;border:none;padding:0;background:#0f172a26;cursor:pointer;z-index:99;animation:boardFadeIn .2s ease;border-radius:12px}@keyframes boardFadeIn{0%{opacity:0}to{opacity:1}}.board-details-drawer{position:absolute;top:0;right:0;bottom:0;width:480px;max-width:90%;background:linear-gradient(180deg,#fff,#f8fafc);border-left:1px solid #e2e8f0;box-shadow:-12px 0 40px #0f172a26;z-index:100;display:flex;flex-direction:column;animation:boardSlideIn .25s cubic-bezier(.16,1,.3,1);border-radius:0 12px 12px 0}@keyframes boardSlideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.board-details-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border-bottom:1px solid #e2e8f0}.board-details-title{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:700;color:#0f172a}.board-details-icon{width:32px;height:32px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center}.board-details-key{letter-spacing:.3px}.board-details-close{width:28px;height:28px;border:none;background:#f1f5f9;border-radius:6px;font-size:16px;cursor:pointer;color:#64748b;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.board-details-close:hover{background:#e2e8f0;color:#0f172a}.board-details-tabs{display:flex;gap:4px;padding:8px 16px;background:#fff;border-bottom:1px solid #e2e8f0;overflow-x:auto}.board-details-tabs::-webkit-scrollbar{display:none}.board-details-tab{padding:8px 12px;border:none;background:transparent;font-size:13px;font-weight:500;color:#64748b;cursor:pointer;border-radius:6px;white-space:nowrap;transition:all .15s ease}.board-details-tab:hover,.board-details-tab.active{background:#f1f5f9;color:#0f172a}.board-details-body{flex:1;overflow-y:auto;padding:16px}.board-details-section{margin-bottom:20px}.board-details-section-title{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.board-details-summary{font-size:14px;color:#0f172a;line-height:1.5}.board-details-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f1f5f9}.board-details-label{font-size:13px;color:#64748b}.board-details-value{font-size:13px;color:#0f172a;font-weight:500}.board-details-status{font-size:11px;font-weight:600;padding:4px 8px;border-radius:4px}.board-details-assignee{display:flex;align-items:center;gap:8px;font-size:13px;color:#0f172a}.board-details-avatar{width:24px;height:24px;border-radius:50%;background:#fdbe9a;color:#000;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center}.board-details-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#3b82f6;text-decoration:none;font-weight:500}.board-details-link:hover{color:#2563eb;text-decoration:underline}.board-details-list{display:flex;flex-direction:column;gap:12px}.board-details-empty{text-align:center;padding:40px 20px;color:#94a3b8;font-size:13px}.board-details-list-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px}.board-details-list-link{text-decoration:none;color:inherit;cursor:pointer;transition:all .15s ease}.board-details-list-link:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000f}.board-details-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.board-details-list-id{font-family:monospace;font-size:12px;color:#3b82f6;background:#eff6ff;padding:2px 6px;border-radius:4px}.board-details-list-title{font-size:13px;font-weight:500;color:#0f172a;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:8px}.board-details-list-time{font-size:11px;color:#94a3b8}.board-details-list-message{font-size:13px;color:#0f172a;line-height:1.4;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.board-details-list-meta{display:flex;align-items:center;gap:6px;font-size:11px;color:#94a3b8}.board-details-list-badge{font-size:10px;font-weight:600;padding:3px 8px;border-radius:4px;text-transform:uppercase}.board-details-list-badge.open,.board-details-list-badge.merged{background:#dcfce7;color:#16a34a}.board-details-list-badge.declined{background:#fee2e2;color:#dc2626}.board-details-list-badge.successful,.board-details-list-badge.success{background:#dcfce7;color:#16a34a}.board-details-list-badge.failed,.board-details-list-badge.failure{background:#fee2e2;color:#dc2626}.board-details-list-badge.in_progress,.board-details-list-badge.pending,.board-details-list-badge.running{background:#fef3c7;color:#d97706}@media(max-width:768px){.board-column{min-width:280px}.board-container{padding:12px}.board-details-drawer{width:100%;max-width:100%;border-radius:0}}.projects-container{width:100%;background:#fff;border-radius:12px;overflow:hidden;border:1px solid #e8e8e8;box-shadow:0 2px 8px #0000000a}.projects-container-cards{background:transparent;border:none;border-radius:0;box-shadow:none}.projects-view-toggle{display:flex;align-items:center;background:#f3f4f6;border-radius:8px;padding:3px;gap:2px}.projects-view-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 12px;border:none;background:transparent;color:#6b7280;font-size:13px;font-weight:500;cursor:pointer;border-radius:6px;transition:all .15s ease}.projects-view-btn svg{width:16px;height:16px}.projects-view-btn:hover{color:#374151}.projects-view-btn.active{background:#fff;color:#1f2937;box-shadow:0 1px 3px #0000001a}.projects-table-wrapper{overflow-x:auto}.projects-table{width:100%;border-collapse:collapse;font-size:14px}.projects-th{padding:14px 16px;text-align:left;font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#000;background:var(--primary-hover);border-bottom:1px solid var(--primary-hover);border-right:1px solid rgba(0,0,0,.1);white-space:nowrap;position:sticky;top:0}.projects-th:last-child{border-right:none}.projects-th-content{display:flex;align-items:center;gap:8px}.projects-th-content svg{color:#0009}.projects-th:hover{background:var(--primary);color:#000}.projects-th-name{min-width:250px}.projects-th-description{min-width:300px}.projects-th-updated{min-width:140px}.projects-th-actions{width:140px;text-align:center}.projects-row{transition:background-color .15s ease}.projects-row:hover{background-color:#f9fafb}.projects-row-clickable{cursor:pointer}.projects-td{padding:14px 16px;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;vertical-align:middle}.projects-td:last-child{border-right:none}.projects-name-cell{display:flex;align-items:center;gap:12px}.projects-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#000;color:#fff;font-size:13px;font-weight:600;flex-shrink:0}.projects-name-text{color:#1f2937;font-weight:500;font-size:14px}.projects-text-field{color:#374151;font-size:14px}.projects-empty-field{color:#9ca3af;font-style:italic}.projects-edit-input{width:100%;padding:6px 10px;border:1px solid #d1d5db;border-radius:4px;font-size:13px;color:#374151}.projects-edit-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.projects-td-actions{text-align:center}.projects-action-buttons{display:flex;gap:6px;justify-content:center}.projects-btn{padding:5px 12px;border:none;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.projects-btn-edit{background:#f3f4f6;color:#374151}.projects-btn-edit:hover{background:#e5e7eb}.projects-btn-save{background:#10b981;color:#fff}.projects-btn-save:hover{background:#059669}.projects-btn-cancel{background:#f3f4f6;color:#374151}.projects-btn-cancel:hover{background:#e5e7eb}.projects-btn-delete{background:#fee2e2;color:#dc2626}.projects-btn-delete:hover{background:#fecaca}.projects-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;color:#6b7280;font-size:14px}.projects-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:projects-spin .8s linear infinite}@keyframes projects-spin{to{transform:rotate(360deg)}}.projects-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;color:#9ca3af;font-size:14px;text-align:center}.projects-empty svg{opacity:.5}.projects-access-denied{display:flex;align-items:center;justify-content:center;padding:60px 20px;min-height:400px}.access-denied-card{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:380px;padding:40px;background:linear-gradient(135deg,#fafafa,#f5f5f5);border-radius:16px;border:1px solid #e5e7eb;box-shadow:0 4px 20px #0000000d}.access-denied-icon{display:flex;align-items:center;justify-content:center;width:72px;height:72px;background:linear-gradient(135deg,#fee2e2,#fecaca);border-radius:50%;margin-bottom:20px;color:#dc2626;box-shadow:0 4px 12px #dc262626}.access-denied-title{font-size:20px;font-weight:600;color:#1f2937;margin:0 0 8px}.access-denied-message{font-size:15px;color:#6b7280;margin:0;line-height:1.5}.access-denied-divider{width:60px;height:1px;background:linear-gradient(90deg,transparent,#d1d5db,transparent);margin:24px 0}.access-denied-help{font-size:13px;color:#6b7280;margin:0;line-height:1.6}.access-denied-help strong{color:#4b5563;font-weight:500}@media(max-width:1024px){.projects-th-description,.projects-td:nth-child(2){display:none}}@media(max-width:768px){.projects-th,.projects-td{padding:10px 12px}.projects-avatar{width:32px;height:32px;font-size:12px}.projects-name-text{font-size:13px}.projects-th-updated,.projects-td:nth-child(3){display:none}}.projects-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;padding:24px}.projects-card{background:linear-gradient(145deg,#fff,#fafbfc);border:1px solid #e5e7eb;border-radius:16px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;position:relative}.projects-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0000001f,0 4px 12px #00000014;border-color:transparent}.projects-card-clickable{cursor:pointer}.projects-card-accent{height:4px;background:linear-gradient(90deg,var(--primary, #f95d03) 0%,var(--primary-50, #fcae81) 100%);flex-shrink:0}.projects-card-header{display:flex;align-items:flex-start;justify-content:space-between;padding:16px 20px 12px}.projects-card-header-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.projects-card-status{display:inline-flex;align-items:center;padding:4px 10px;background:#dcfce7;color:#16a34a;font-size:11px;font-weight:600;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.projects-card-avatar{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background-color:var(--primary-50, #fcae81)!important;color:#000;font-size:15px;font-weight:700;flex-shrink:0;box-shadow:0 4px 12px #00000026;position:relative}.projects-card-avatar:after{content:"";position:absolute;inset:0;border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,.2) 0%,transparent 50%)}.projects-card-actions{display:flex;gap:6px;opacity:0;transform:translateY(-4px);transition:all .2s ease}.projects-card:hover .projects-card-actions{opacity:1;transform:translateY(0)}.projects-card-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:none;background:#ffffffe6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:10px;cursor:pointer;color:#6b7280;transition:all .2s ease;box-shadow:0 2px 8px #00000014}.projects-card-btn:hover{background:#fff;color:#374151;transform:scale(1.05);box-shadow:0 4px 12px #0000001f}.projects-card-btn-save{background:#dcfce7;color:#16a34a}.projects-card-btn-save:hover{background:#bbf7d0;color:#15803d}.projects-card-btn-cancel{background:#ffffffe6;color:#6b7280}.projects-card-btn-cancel:hover{background:#fff;color:#374151}.projects-card-btn-delete{background:#fee2e2e6;color:#dc2626}.projects-card-btn-delete:hover{background:#fecaca;color:#b91c1c}.projects-card-body{padding:0 20px 14px;flex:1}.projects-card-title{font-size:16px;font-weight:700;color:#111827;margin:0 0 6px;line-height:1.3;letter-spacing:-.02em}.projects-card-description{font-size:13px;color:#6b7280;line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.projects-card-edit-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:15px;font-weight:600;color:#1f2937;margin-bottom:10px;box-sizing:border-box;transition:all .2s ease}.projects-card-edit-input:focus{outline:none;border-color:var(--primary, #f95d03);box-shadow:0 0 0 3px #f95d031a}.projects-card-edit-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#374151;resize:vertical;font-family:inherit;box-sizing:border-box;transition:all .2s ease}.projects-card-edit-textarea:focus{outline:none;border-color:var(--primary, #f95d03);box-shadow:0 0 0 3px #f95d031a}.projects-card-footer{padding:12px 20px;border-top:1px solid #f1f3f5;background:linear-gradient(180deg,#f8f9fa,#f3f4f6);border-radius:0 0 16px 16px;display:flex;align-items:center;justify-content:space-between}.projects-card-members{display:flex;align-items:center;gap:10px}.projects-card-member-avatars{display:flex;align-items:center}.projects-card-member-avatar{width:24px;height:24px;border-radius:50%;background:var(--primary-50, #fcae81);color:#000;font-size:9px;font-weight:600;display:flex;align-items:center;justify-content:center;margin-left:-6px;border:2px solid #f8f9fa;position:relative}.projects-card-member-avatar:first-child{margin-left:0}.projects-card-member-avatar:nth-child(2){background:#a5d6a7}.projects-card-member-avatar:nth-child(3){background:#90caf9}.projects-card-member-count{font-size:12px;color:#6b7280;font-weight:500}.projects-card-meta{display:flex;align-items:center;gap:6px;font-size:12px;color:#9ca3af}.projects-card-meta svg{color:#9ca3af;width:12px;height:12px}@media(max-width:640px){.projects-cards{grid-template-columns:1fr;padding:12px;gap:12px}.projects-card-avatar{width:40px;height:40px;font-size:14px}}.component-drawer{width:420px;min-width:420px;background:#fff;border-left:1px solid #e5e7eb;display:flex;flex-direction:column;animation:component-slide-in-right .25s ease;height:100%}@keyframes component-slide-in-right{0%{width:0;min-width:0;opacity:0}to{width:420px;min-width:420px;opacity:1}}.component-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.component-drawer-title{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:#1a1a1a;margin:0}.component-drawer-close{width:36px;height:36px;border-radius:8px;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#64748b;transition:all .15s ease}.component-drawer-close:hover{background:#f1f5f9;color:#1a1a1a}.component-drawer-form{display:flex;flex-direction:column;flex:1;overflow:hidden}.component-drawer-body{flex:1;padding:24px;overflow-y:auto}.component-drawer-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e5e7eb;flex-shrink:0;background:#fafafa}.component-form-group{margin-bottom:20px;position:relative}.component-form-group:last-of-type{margin-bottom:24px}.component-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.component-form-row .component-form-group{margin-bottom:20px}.component-form-group label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}.component-input,.component-select,.component-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#111;background:#fff;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.component-input:focus,.component-select:focus,.component-textarea:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px #0000001a}.component-input::placeholder,.component-textarea::placeholder{color:#9ca3af}.component-select{cursor:pointer}.component-textarea{resize:vertical;min-height:80px}.component-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:10px 12px;border-radius:6px;font-size:13px;margin-bottom:16px}.component-cancel-btn,.component-submit-btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.component-cancel-btn{background:#fff;border:1px solid #d1d5db;color:#374151}.component-cancel-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.component-submit-btn{background:#000;border:1px solid #000;color:#fff}.component-submit-btn:hover:not(:disabled){background:#1a1a1a}.component-submit-btn:disabled,.component-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.component-dropdown-wrapper{position:relative}.component-dropdown-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#111;background:#fff;cursor:pointer;transition:all .2s}.component-dropdown-trigger:hover{border-color:#9ca3af}.component-dropdown-trigger.open{border-color:#000;box-shadow:0 0 0 3px #0000001a}.component-dropdown-value{font-weight:500}.component-dropdown-chevron{color:#6b7280;transition:transform .2s}.component-dropdown-trigger.open .component-dropdown-chevron{transform:rotate(180deg)}.component-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 40px #00000026;z-index:1001;padding:6px;animation:dropdownFadeIn .15s ease-out;max-height:280px;overflow-y:auto}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.component-dropdown-item{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border:none;background:transparent;border-radius:6px;font-size:14px;color:#374151;cursor:pointer;transition:all .15s;text-align:left}.component-dropdown-item:hover{background:#f3f4f6;color:#111}.component-dropdown-item.selected{background:#f0f0f0;color:#000;font-weight:500}.component-dropdown-item-label{flex:1}.component-dropdown-check{color:#000;flex-shrink:0}.component-dropdown-placeholder{color:#9ca3af;font-weight:400}.component-workspace-badge{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 8px;background:#e8f0fe;color:#2684ff;border-radius:4px;font-size:11px;font-weight:500}.component-repo-not-connected{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px;color:#6b7280;font-size:13px}.component-repo-not-connected svg{flex-shrink:0;color:#9ca3af}.component-repo-loading{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;font-size:13px}.component-repo-spinner{width:16px;height:16px;border:2px solid #e5e7eb;border-top-color:#2684ff;border-radius:50%;animation:repoSpin .8s linear infinite}@keyframes repoSpin{to{transform:rotate(360deg)}}.component-repo-trigger{min-height:48px}.component-repo-selected{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.component-repo-icon{flex-shrink:0}.component-repo-selected-info{display:flex;flex-direction:column;min-width:0}.component-repo-selected-name{font-weight:500;color:#111;font-size:14px}.component-repo-selected-slug{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.component-repo-menu{max-height:320px;padding:0;overflow:hidden;display:flex;flex-direction:column}.component-repo-search{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.component-repo-search svg{flex-shrink:0;color:#9ca3af}.component-repo-search input{flex:1;border:none;background:transparent;font-size:14px;color:#111;outline:none}.component-repo-search input::placeholder{color:#9ca3af}.component-repo-list{flex:1;overflow-y:auto;padding:6px}.component-repo-item{gap:10px;padding:10px 12px}.component-repo-item-icon{flex-shrink:0}.component-repo-item-info{display:flex;flex-direction:column;flex:1;min-width:0;text-align:left}.component-repo-item-name{font-weight:500;color:#111;font-size:14px}.component-repo-item-slug{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.component-repo-clear{color:#6b7280;border-bottom:1px solid #e5e7eb;border-radius:0;margin-bottom:4px}.component-repo-clear:hover{color:#dc2626;background:#fef2f2}.component-repo-empty{padding:20px;text-align:center;color:#9ca3af;font-size:13px}.component-techstack-wrapper{display:flex;flex-direction:column;gap:10px}.component-techstack-input-row{display:flex;gap:8px}.component-techstack-input{flex:1}.component-techstack-add-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--primary);color:#000;border:none;border-radius:8px;cursor:pointer;transition:background-color .2s;flex-shrink:0}.component-techstack-add-btn:hover:not(:disabled){background:var(--primary-hover)}.component-techstack-add-btn:disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.component-techstack-tags{display:flex;flex-wrap:wrap;gap:8px}.component-techstack-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:var(--primary-20);color:#000;border-radius:6px;font-size:13px;font-weight:500}.component-techstack-tag-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;background:transparent;border:none;border-radius:50%;color:#6b7280;cursor:pointer;transition:all .15s}.component-techstack-tag-remove:hover{background:#0000001a;color:#000}.component-custom-fields-section{margin-top:8px;padding-top:16px;border-top:1px dashed #e5e7eb}.component-custom-fields-header{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:16px}.project-detail-view{display:flex;height:100%;min-height:500px;background:#fff;border-radius:0;overflow:hidden}.project-detail-view-loading,.project-detail-view-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;width:100%;gap:5px;color:#6b7280;font-size:14px}.project-detail-view-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#f95d03;border-radius:50%;animation:project-detail-view-spin .8s linear infinite}@keyframes project-detail-view-spin{to{transform:rotate(360deg)}}.project-detail-view-back-btn{margin-top:12px;padding:8px 16px;background:#000;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s ease}.project-detail-view-back-btn:hover{background:#222}.pdv-sidebar{width:240px;min-width:240px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;overflow-y:auto}.pdv-sidebar-header{display:flex;align-items:center;gap:10px;padding:12px;border-bottom:1px solid #f1f3f5}.pdv-back-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:#6b7280;flex-shrink:0;transition:all .15s ease}.pdv-back-btn:hover{background:#f3f4f6;color:#374151}.pdv-sidebar-avatar{width:40px;height:40px;border-radius:0;background:transparent;display:flex;align-items:center;justify-content:center;color:#000;flex-shrink:0}.pdv-sidebar-project-info{flex:1;min-width:0}.pdv-sidebar-project-name{font-size:14px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdv-sidebar-project-team{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdv-sidebar-nav{display:flex;flex-direction:column;padding:4px 8px}.pdv-sidebar-nav-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border:none;background:transparent;border-radius:8px;cursor:pointer;transition:all .15s ease;text-align:left;width:100%}.pdv-sidebar-nav-item:hover{background:#f3f4f6}.pdv-sidebar-nav-item.active{background:var(--primary-hover, #fff5eb)}.pdv-sidebar-nav-item.active .pdv-sidebar-nav-icon{color:var(--primary, #f95d03)}.pdv-sidebar-nav-item.active .pdv-sidebar-nav-label{color:var(--primary, #f95d03);font-weight:500}.pdv-sidebar-nav-icon{display:flex;align-items:center;justify-content:center;color:#6b7280;flex-shrink:0}.pdv-sidebar-nav-label{font-size:14px;color:#374151}.pdv-sidebar-nav-nested{padding-left:20px;margin-top:4px}.pdv-sidebar-section{margin-top:4px}.pdv-sidebar-section:first-child{margin-top:0}.pdv-sidebar-section:first-child .pdv-sidebar-header{border-bottom:none}.pdv-sidebar-section-title{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;padding:8px 20px 4px}.pdv-main{flex:1;display:flex;flex-direction:column;overflow-y:auto;background:#fafafa}.pdv-content-header{padding:16px 24px 12px;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.pdv-content-title{font-size:18px;font-weight:600;color:#111827;margin:0}.pdv-create-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#000;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.pdv-create-btn:hover{background:#222}.pdv-create-btn svg{flex-shrink:0}.pdv-content-body{padding:16px 24px;flex:1}.pdv-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.pdv-card-header{padding:8px;border-bottom:1px solid #f1f3f5;background:#f9fafb}.pdv-card-title{font-size:14px;font-weight:600;color:#111827;margin:0}.pdv-card-body{padding:16px}.pdv-detail-row{display:flex;align-items:flex-start;padding:10px 0;border-bottom:1px solid #f1f3f5}.pdv-detail-row:last-child{border-bottom:none}.pdv-detail-label{width:140px;flex-shrink:0;font-size:13px;color:#6b7280;font-weight:500}.pdv-detail-value{flex:1;font-size:14px;color:#111827}.pdv-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#9ca3af}.pdv-empty-state svg{margin-bottom:16px;opacity:.5}.pdv-empty-state p{font-size:14px;margin:0}.pdv-description-section{max-width:800px}.pdv-description-heading{font-size:14px;font-weight:600;color:#111827;margin:0 0 12px}.pdv-description-display{position:relative}.pdv-description-text{font-size:14px;color:#374151;line-height:1.6;margin:0}.pdv-description-edit-btn{position:absolute;top:0;right:0;padding:4px 12px;background:#f3f4f6;border:none;border-radius:6px;font-size:12px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.pdv-description-edit-btn:hover{background:#e5e7eb;color:#374151}.pdv-description-empty{padding:0}.pdv-description-empty-text{font-size:14px;color:#6b7280;margin:0;line-height:1.6}.pdv-description-link{background:none;border:none;padding:0;color:var(--primary, #0052CC);font-size:14px;cursor:pointer;text-decoration:none;transition:color .15s ease}.pdv-description-link:hover{color:var(--primary-dark, #0747a6);text-decoration:underline}.pdv-description-edit{display:flex;flex-direction:column;gap:12px}.pdv-description-textarea{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;color:#374151;resize:vertical;min-height:100px;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.pdv-description-textarea:focus{outline:none;border-color:var(--primary, #f95d03);box-shadow:0 0 0 3px #f95d031a}.pdv-description-textarea::placeholder{color:#9ca3af}.pdv-description-actions{display:flex;gap:8px}.pdv-description-btn{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.pdv-description-btn:disabled{opacity:.6;cursor:not-allowed}.pdv-description-btn-save{background:var(--primary, #f95d03);color:#fff}.pdv-description-btn-save:hover:not(:disabled){background:var(--primary-dark, #e05303)}.pdv-description-btn-cancel{background:#f3f4f6;color:#374151}.pdv-description-btn-cancel:hover:not(:disabled){background:#e5e7eb}.pdv-activity-feed{margin-top:32px}.pdv-activity-heading{font-size:14px;font-weight:600;color:#111827;margin:0 0 16px}.pdv-activity-controls{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:12px}.pdv-activity-filters,.pdv-activity-actions{display:flex;align-items:center;gap:8px}.pdv-activity-filter-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;background:#fff;border:1px solid #d1d5db;border-radius:4px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.pdv-activity-filter-btn:hover{background:#f9fafb;border-color:#9ca3af}.pdv-activity-filter-btn.active{background:#e8f4fd;border-color:#0052cc;color:#0052cc}.pdv-activity-filter-btn svg{flex-shrink:0}.pdv-event-dropdown-wrapper{position:relative}.pdv-event-dropdown{position:absolute;top:100%;left:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 16px #0000001f;min-width:160px;z-index:100;padding:4px 0;overflow:hidden}.pdv-event-dropdown-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 14px;border:none;background:transparent;font-size:14px;color:#374151;cursor:pointer;text-align:left;transition:background .15s ease}.pdv-event-dropdown-item:hover{background:#f3f4f6}.pdv-event-dropdown-item.active{background:var(--primary-hover, #fff5eb);color:var(--primary, #f95d03)}.pdv-event-dropdown-item svg{color:var(--primary, #f95d03);flex-shrink:0}.pdv-time-dropdown-wrapper{position:relative}.pdv-time-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 16px #0000001f;min-width:180px;z-index:100;padding:4px 0;overflow:hidden}.pdv-time-dropdown-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 14px;border:none;background:transparent;font-size:14px;color:#374151;cursor:pointer;text-align:left;transition:background .15s ease}.pdv-time-dropdown-item:hover{background:#f3f4f6}.pdv-time-dropdown-item.active{background:var(--primary-hover, #fff5eb);color:var(--primary, #f95d03)}.pdv-time-dropdown-item svg{color:#9ca3af;flex-shrink:0}.pdv-time-dropdown-item:hover svg{color:#6b7280}.pdv-activity-zoom{font-size:13px;color:#374151;font-weight:500;padding:0 8px}.pdv-activity-zoom-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#fff;border:1px solid #d1d5db;border-radius:4px;color:#6b7280;cursor:pointer;transition:all .15s ease}.pdv-activity-zoom-btn:hover{background:#f9fafb;border-color:#9ca3af;color:#374151}.pdv-activity-timeline{display:flex;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;min-height:120px}.pdv-activity-sidebar{width:200px;min-width:200px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column}.pdv-activity-sidebar-header{padding:12px 16px;font-size:13px;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb;background:#f9fafb;height:57px;box-sizing:border-box;display:flex;align-items:center}.pdv-activity-create-btn{display:flex;align-items:center;gap:8px;padding:12px 16px;background:transparent;border:none;font-size:13px;color:#6b7280;cursor:pointer;transition:all .15s ease;text-align:left}.pdv-activity-create-btn:hover{background:#f3f4f6;color:#374151}.pdv-activity-create-btn svg{flex-shrink:0}.pdv-activity-chart{flex:1;display:flex;flex-direction:column;background:#fff;overflow-x:auto;overflow-y:hidden;min-width:0}.pdv-activity-time-header-wrapper{display:flex;flex-direction:column;border-bottom:1px solid #e5e7eb;background:#f9fafb;min-width:max-content;position:sticky;top:0;z-index:5}.pdv-activity-date-row{display:flex;border-bottom:1px solid #e5e7eb;height:28px;box-sizing:border-box}.pdv-activity-date-cell{display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#374151;background:#f3f4f6;border-right:1px solid #e5e7eb;padding:0 8px;box-sizing:border-box}.pdv-activity-date-cell:last-child{border-right:none}.pdv-activity-time-row{display:flex;height:28px;box-sizing:border-box}.pdv-activity-time-row span{display:flex;align-items:center;justify-content:center;font-size:11px;color:#6b7280;box-sizing:border-box}.pdv-activity-time-header{display:flex;align-items:center;padding:8px 0;border-bottom:1px solid #e5e7eb;background:#f9fafb;min-width:max-content;height:41px;box-sizing:border-box}.pdv-activity-time-header span{flex:1;min-width:80px;text-align:center;font-size:12px;color:#6b7280}.pdv-activity-date-label{font-weight:600;color:#374151!important}.pdv-activity-chart-body{flex:1;position:relative;min-height:60px;display:flex;flex-direction:column;min-width:max-content}.pdv-activity-grid-lines{display:flex;position:absolute;inset:0;pointer-events:none;z-index:0}.pdv-activity-grid-line{border-right:1px solid #f1f3f5;box-sizing:border-box}.pdv-activity-grid-line:last-child{border-right:none}.pdv-activity-now-line{position:absolute;top:0;bottom:0;width:2px;background:var(--primary, #f95d03)}.pdv-activity-now-line:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid var(--primary, #f95d03)}.pdv-activity-row{position:relative;height:44px;min-height:44px;border-bottom:1px solid #f1f3f5;box-sizing:border-box;flex-shrink:0;z-index:1}.pdv-activity-row:last-child{border-bottom:none}.pdv-activity-event{position:absolute;top:50%;transform:translate(-50%,-50%);width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;z-index:10}.pdv-activity-event:hover{transform:translate(-50%,-50%) scale(1.2);box-shadow:0 2px 8px #00000026;z-index:20}.pdv-activity-event-clickable:hover{box-shadow:0 2px 8px #00000040}.pdv-activity-event-clickable:active{transform:translate(-50%,-50%) scale(1.1)}.pdv-activity-event-commit{background:var(--primary-50);color:#fff}.pdv-activity-event-pull-request{background:#22c55e;color:#fff}.pdv-activity-event-pull-request.pdv-status-open{background:#22c55e}.pdv-activity-event-pull-request.pdv-status-merged{background:#8b5cf6}.pdv-activity-event-pull-request.pdv-status-declined{background:#ef4444}.pdv-activity-event-build{background:#f59e0b;color:#fff}.pdv-activity-event-build.pdv-status-successful{background:#22c55e}.pdv-activity-event-build.pdv-status-failed{background:#ef4444}.pdv-activity-event-build.pdv-status-in_progress,.pdv-activity-event-build.pdv-status-pending{background:#f59e0b}.pdv-activity-event-deployment{background:#0ea5e9;color:#fff}.pdv-activity-event-deployment.pdv-status-completed{background:#22c55e}.pdv-activity-event-deployment.pdv-status-in_progress{background:#f59e0b}.pdv-activity-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px 20px;color:#6b7280;font-size:13px}.pdv-spinner-small{width:18px;height:18px;border:2px solid #e5e7eb;border-top-color:var(--primary, #f95d03);border-radius:50%;animation:pdv-spin .8s linear infinite}.pdv-activity-empty{display:flex;align-items:center;justify-content:center;padding:40px 20px;color:#9ca3af;font-size:13px;position:absolute;inset:0}.pdv-component-item{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid #f1f3f5;transition:background .15s ease;height:44px;box-sizing:border-box}.pdv-component-item:hover{background:#f9fafb}.pdv-component-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:6px;flex-shrink:0}.pdv-component-icon-github{background:#24292e;color:#fff}.pdv-component-icon-gitlab{background:#fc6d26;color:#fff}.pdv-component-icon-bitbucket{background:#0052cc;color:#fff}.pdv-component-name{font-size:13px;color:#374151;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdv-component-empty{padding:16px;font-size:13px;color:#9ca3af;text-align:center}.pdv-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.pdv-modal{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0003}.pdv-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.pdv-modal-title{font-size:18px;font-weight:600;color:#111827;margin:0}.pdv-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .15s ease}.pdv-modal-close:hover{background:#f3f4f6;color:#374151}.pdv-modal-body{padding:24px;overflow-y:auto;flex:1}.pdv-form-group{margin-bottom:20px}.pdv-form-group:last-child{margin-bottom:0}.pdv-form-label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.pdv-form-input{width:100%;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#374151;background:#fff;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.pdv-form-input:focus{outline:none;border-color:var(--primary, #f95d03);box-shadow:0 0 0 3px #f95d031a}.pdv-form-input::placeholder{color:#9ca3af}.pdv-form-hint{font-size:12px;color:#6b7280;margin:8px 0 0}.pdv-form-select{width:100%;padding:10px 40px 10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#374151;background:#fff;box-sizing:border-box;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.pdv-form-select:focus{outline:none;border-color:var(--primary, #f95d03);box-shadow:0 0 0 3px #f95d031a}.pdv-form-select option{padding:10px}.pdv-repo-loading-inline{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb;color:#6b7280;font-size:14px}.pdv-repo-dropdown-wrapper{position:relative}.pdv-repo-dropdown-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;background:#fff;cursor:pointer;transition:all .15s ease;text-align:left}.pdv-repo-dropdown-trigger:hover{border-color:#9ca3af}.pdv-repo-dropdown-trigger.open{border-color:var(--primary, #f95d03);box-shadow:0 0 0 3px #f95d031a}.pdv-repo-dropdown-placeholder{color:#9ca3af;font-size:14px}.pdv-repo-dropdown-selected{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.pdv-repo-dropdown-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#0052cc;color:#fff;border-radius:6px;flex-shrink:0}.pdv-repo-dropdown-selected-info{display:flex;flex-direction:column;gap:1px;min-width:0}.pdv-repo-dropdown-selected-name{font-size:14px;font-weight:500;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdv-repo-dropdown-selected-slug{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdv-repo-dropdown-chevron{color:#6b7280;flex-shrink:0;transition:transform .2s ease}.pdv-repo-dropdown-trigger.open .pdv-repo-dropdown-chevron{transform:rotate(180deg)}.pdv-repo-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 40px #00000026;z-index:100;overflow:hidden;animation:pdv-dropdown-fade-in .15s ease}@keyframes pdv-dropdown-fade-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.pdv-repo-dropdown-search{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.pdv-repo-dropdown-search svg{color:#9ca3af;flex-shrink:0}.pdv-repo-dropdown-search input{flex:1;border:none;background:transparent;font-size:14px;color:#374151;outline:none}.pdv-repo-dropdown-search input::placeholder{color:#9ca3af}.pdv-repo-dropdown-list{max-height:280px;overflow-y:auto}.pdv-repo-dropdown-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:none;border-bottom:1px solid #f1f3f5;background:#fff;cursor:pointer;text-align:left;transition:background .15s ease}.pdv-repo-dropdown-item:last-child{border-bottom:none}.pdv-repo-dropdown-item:hover{background:#f9fafb}.pdv-repo-dropdown-item.selected{background:var(--primary-hover, #fff5eb)}.pdv-repo-dropdown-item-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#0052cc;color:#fff;border-radius:6px;flex-shrink:0}.pdv-repo-dropdown-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.pdv-repo-dropdown-item-name{font-size:14px;font-weight:500;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdv-repo-dropdown-item-slug{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdv-repo-dropdown-item-check{display:flex;align-items:center;justify-content:center;width:22px;height:22px;background:var(--primary, #f95d03);color:#fff;border-radius:50%;flex-shrink:0}.pdv-repo-dropdown-empty{padding:24px;text-align:center;color:#6b7280;font-size:14px}.pdv-workspace-badge{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 8px;background:#0052cc;color:#fff;font-size:11px;font-weight:500;border-radius:4px}.pdv-workspace-badge svg{opacity:.8}.pdv-repo-search{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;background:#fff;margin-bottom:12px}.pdv-repo-search svg{color:#9ca3af;flex-shrink:0}.pdv-repo-search-input{flex:1;border:none;background:transparent;font-size:14px;color:#374151;outline:none}.pdv-repo-search-input::placeholder{color:#9ca3af}.pdv-repo-search:focus-within{border-color:var(--primary, #f95d03);box-shadow:0 0 0 3px #f95d031a}.pdv-repo-list{border:1px solid #e5e7eb;border-radius:8px;max-height:280px;overflow-y:auto}.pdv-repo-loading,.pdv-repo-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px;color:#6b7280;font-size:14px;text-align:center}.pdv-repo-spinner{width:24px;height:24px;border:2px solid #e5e7eb;border-top-color:#0052cc;border-radius:50%;animation:pdv-repo-spin .8s linear infinite}@keyframes pdv-repo-spin{to{transform:rotate(360deg)}}.pdv-repo-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:none;border-bottom:1px solid #f1f3f5;background:#fff;cursor:pointer;text-align:left;transition:background .15s ease}.pdv-repo-item:last-child{border-bottom:none}.pdv-repo-item:hover{background:#f9fafb}.pdv-repo-item.selected{background:var(--primary-hover, #fff5eb)}.pdv-repo-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#0052cc;color:#fff;border-radius:6px;flex-shrink:0}.pdv-repo-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.pdv-repo-name{font-size:14px;font-weight:500;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdv-repo-slug{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdv-repo-check{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--primary, #f95d03);color:#fff;border-radius:50%;flex-shrink:0}.pdv-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb}.pdv-modal-btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.pdv-modal-btn:disabled{opacity:.6;cursor:not-allowed}.pdv-modal-btn-cancel{background:#fff;color:#374151;border:1px solid #d1d5db}.pdv-modal-btn-cancel:hover:not(:disabled){background:#f3f4f6}.pdv-modal-btn-create{background:var(--primary, #f95d03);color:#fff}.pdv-modal-btn-create:hover:not(:disabled){background:var(--primary-dark, #e05303)}@media(max-width:768px){.project-detail-view{flex-direction:column}.pdv-sidebar{width:100%;min-width:100%;border-right:none;border-bottom:1px solid #e5e7eb}.pdv-sidebar-nav{flex-direction:row;flex-wrap:wrap;gap:4px}.pdv-sidebar-nav-item{flex:0 0 auto;padding:8px 12px}.pdv-sidebar-section{margin-top:0}.pdv-sidebar-section-title{padding:8px 16px}.pdv-content-header,.pdv-content-body{padding:16px 20px}.pdv-detail-row{flex-direction:column;gap:4px}.pdv-detail-label{width:auto}}.pdv-components-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.pdv-component-card{display:flex;gap:16px;padding:20px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;transition:all .2s ease}.pdv-component-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000f}.pdv-component-card-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;border-radius:10px;flex-shrink:0;color:#6b7280}.pdv-component-card-content{flex:1;min-width:0}.pdv-component-card-name{margin:0 0 4px;font-size:15px;font-weight:600;color:#111}.pdv-component-card-type{display:inline-block;padding:2px 8px;background:#e5e7eb;color:#374151;border-radius:4px;font-size:11px;font-weight:500;text-transform:capitalize}.pdv-components-table-wrapper{overflow-x:auto;border:1px solid #e5e7eb;border-radius:10px;background:#fff}.pdv-components-table{width:100%;border-collapse:collapse;font-size:14px}.pdv-components-table thead{background:#f9fafb;border-bottom:1px solid #e5e7eb}.pdv-components-table th{padding:12px 16px;text-align:left;font-weight:600;color:#374151;font-size:13px;white-space:nowrap}.pdv-components-table tbody tr{border-bottom:1px solid #f1f3f5;transition:background .15s}.pdv-components-table tbody tr:last-child{border-bottom:none}.pdv-components-table tbody tr:hover{background:#f9fafb}.pdv-components-table td{padding:14px 16px;color:#374151;vertical-align:middle}.pdv-table-name-cell{display:flex;align-items:center;gap:12px}.pdv-table-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;border-radius:8px;flex-shrink:0}.pdv-table-name{font-weight:600;color:#111}.pdv-table-type-badge{display:inline-block;padding:4px 10px;background:#e5e7eb;color:#374151;border-radius:4px;font-size:12px;font-weight:500;text-transform:capitalize}.pdv-table-repo-link{display:inline-flex;align-items:center;gap:6px;color:#2684ff;text-decoration:none;font-weight:500;transition:color .2s}.pdv-table-repo-link:hover{color:#0052cc;text-decoration:underline}.pdv-table-no-repo{color:#9ca3af}.pdv-table-desc{color:#6b7280;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.pdv-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#6b7280;font-size:14px;gap:12px}.pdv-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#000;border-radius:50%;animation:pdv-spin .8s linear infinite}@keyframes pdv-spin{to{transform:rotate(360deg)}}.pdv-event-tooltip-overlay{position:fixed;inset:0;z-index:1000;background:transparent}.pdv-event-tooltip{position:fixed;transform:translate(-50%,calc(-100% - 16px));background:#1f2937;border-radius:12px;box-shadow:0 10px 40px #0006,0 0 0 1px #ffffff1a;padding:16px;min-width:280px;max-width:380px;z-index:1001;animation:pdv-tooltip-fade-in .2s ease}@keyframes pdv-tooltip-fade-in{0%{opacity:0;transform:translate(-50%,calc(-100% - 8px))}to{opacity:1;transform:translate(-50%,calc(-100% - 16px))}}.pdv-event-tooltip-arrow{position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px solid #1f2937;filter:drop-shadow(0 2px 2px rgba(0,0,0,.2))}.pdv-event-tooltip-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.pdv-event-tooltip-type{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;text-transform:capitalize}.pdv-event-tooltip-type-commit{background:#fff7ed;color:#ea580c}.pdv-event-tooltip-type-pull-request{background:#dcfce7;color:#16a34a}.pdv-event-tooltip-type-build{background:#fef3c7;color:#d97706}.pdv-event-tooltip-type-deployment{background:#e0f2fe;color:#0284c7}.pdv-event-tooltip-status{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase}.pdv-event-tooltip-status-merged{background:#f3e8ff;color:#7c3aed}.pdv-event-tooltip-status-open{background:#dcfce7;color:#16a34a}.pdv-event-tooltip-status-declined{background:#fee2e2;color:#dc2626}.pdv-event-tooltip-status-successful{background:#dcfce7;color:#16a34a}.pdv-event-tooltip-status-failed{background:#fee2e2;color:#dc2626}.pdv-event-tooltip-status-in_progress,.pdv-event-tooltip-status-pending{background:#fef3c7;color:#d97706}.pdv-event-tooltip-status-completed{background:#dcfce7;color:#16a34a}.pdv-event-tooltip-title{font-size:14px;font-weight:600;color:#f9fafb;line-height:1.4;margin-bottom:12px;word-break:break-word}.pdv-event-tooltip-meta{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid #374151}.pdv-event-tooltip-meta-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#d1d5db}.pdv-event-tooltip-meta-item svg{flex-shrink:0;color:#9ca3af}.pdv-event-tooltip-meta-item a{color:#60a5fa;text-decoration:none}.pdv-event-tooltip-meta-item a:hover{text-decoration:underline}.pdv-event-tooltip-meta-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdv-event-tooltip-link{display:inline-flex;align-items:center;gap:6px;margin-top:12px;padding:8px 14px;background:#0052cc;color:#fff;border-radius:6px;font-size:13px;font-weight:500;text-decoration:none;transition:background .2s}.pdv-event-tooltip-link:hover{background:#0747a6}.pdv-event-tooltip-link svg{flex-shrink:0}.members-page{width:100%}.members-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.members-stat-card{background:#fff;border-radius:12px;padding:20px;border:1px solid #e8e8e8;box-shadow:0 2px 8px #0000000a;display:flex;align-items:flex-start;gap:16px;position:relative;overflow:hidden}.members-stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.members-stat-icon-members{background:#dbeafe;color:#1e40af}.members-stat-icon-teams{background:#fef3c7;color:#92400e}.members-stat-icon-complete{background:#d1fae5;color:#065f46}.members-stat-icon svg{width:24px;height:24px}.members-stat-content{display:flex;flex-direction:column;gap:4px}.members-stat-value{font-size:28px;font-weight:700;color:#1f2937;line-height:1}.members-stat-label{font-size:13px;color:#6b7280;font-weight:500}.members-stat-progress{position:absolute;bottom:0;left:0;right:0;height:4px;background:#e5e7eb}.members-stat-progress-bar{height:100%;background:#10b981;border-radius:0 2px 2px 0;transition:width .3s ease}@media(max-width:900px){.members-stats{grid-template-columns:1fr}}@media(max-width:600px){.members-stat-card{padding:16px}.members-stat-value{font-size:24px}.members-stat-icon{width:40px;height:40px}.members-stat-icon svg{width:20px;height:20px}}.members-container{width:100%;background:#fff;border-radius:12px;overflow:hidden;border:1px solid #e8e8e8;box-shadow:0 2px 8px #0000000a}.members-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #e5e7eb;background:#fafafa;gap:16px;flex-wrap:wrap}.members-header-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.members-header-actions{display:flex;gap:8px;margin-left:auto}.members-workspace-select{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#374151;background:#fff;cursor:pointer;min-width:200px}.members-workspace-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.members-search{display:flex;align-items:center;gap:8px;flex:1;min-width:200px;max-width:400px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:8px 12px;transition:border-color .2s,box-shadow .2s}.members-search:focus-within{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a;background:#fff}.members-search svg{color:#9ca3af;flex-shrink:0}.members-search-input{flex:1;border:none;background:transparent;font-size:14px;color:#374151;outline:none}.members-search-input::placeholder{color:#9ca3af}.members-search-clear{width:20px;height:20px;border:none;background:#e5e7eb;border-radius:50%;color:#6b7280;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0}.members-search-clear:hover{background:#d1d5db;color:#374151}.members-filter-select{padding:8px 32px 8px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;color:#374151;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 10px center;cursor:pointer;appearance:none;min-width:120px}.members-filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.members-clear-filters{padding:6px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:12px;color:#6b7280;background:#fff;cursor:pointer;transition:all .2s;white-space:nowrap}.members-clear-filters:hover{border-color:#d1d5db;background:#f9fafb;color:#374151}@media(max-width:768px){.members-header{flex-direction:column;align-items:stretch}.members-search{max-width:none}.members-header-right{justify-content:flex-start}.members-filter-select{flex:1;min-width:0}}.members-table-wrapper{overflow-x:auto}.members-table{width:100%;border-collapse:collapse;font-size:14px}.members-th{padding:14px 16px;text-align:left;font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#000;background:var(--primary-hover);border-bottom:1px solid var(--primary-hover);border-right:1px solid rgba(0,0,0,.1);white-space:nowrap;position:sticky;top:0}.members-th:last-child{border-right:none}.members-th-content{display:flex;align-items:center;gap:8px}.members-th-content svg{color:#0009}.members-th:hover{background:var(--primary);color:#000}.members-th-name,.members-th-manager{min-width:220px}.members-th-role{width:140px}.members-th-project{min-width:200px}.members-row{transition:background-color .15s ease}.members-row:hover{background-color:#f9fafb}.members-td{padding:14px 16px;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;vertical-align:middle}.members-td:last-child{border-right:none}.members-name-cell{display:flex;align-items:center;gap:12px}.members-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:#000!important;color:#fff;font-size:13px;font-weight:600;flex-shrink:0}.members-avatar-img{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;background-color:#fcae81}.members-avatar-small{width:28px;height:28px;font-size:11px}.members-name-text{color:#1f2937;font-weight:500;font-size:14px;text-decoration:none}.members-name-text:hover{color:#3b82f6;text-decoration:underline}.members-manager-cell{display:flex;align-items:center;gap:10px}.members-manager-name{color:#374151;font-size:14px}.members-role-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:4px;font-size:12px;font-weight:500;border:1px solid;white-space:nowrap}.members-project-badges{display:flex;flex-wrap:wrap;gap:6px}.members-project-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:500;white-space:nowrap}.members-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;color:#6b7280;font-size:14px}.members-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:members-spin .8s linear infinite}@keyframes members-spin{to{transform:rotate(360deg)}}.members-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;color:#9ca3af;font-size:14px;text-align:center}.members-empty svg{opacity:.5}.members-access-denied{display:flex;align-items:center;justify-content:center;padding:60px 20px;min-height:400px}.members-access-denied .access-denied-card{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:380px;padding:40px;background:linear-gradient(135deg,#fafafa,#f5f5f5);border-radius:16px;border:1px solid #e5e7eb;box-shadow:0 4px 20px #0000000d}.members-access-denied .access-denied-icon{display:flex;align-items:center;justify-content:center;width:72px;height:72px;background:linear-gradient(135deg,#fee2e2,#fecaca);border-radius:50%;margin-bottom:20px;color:#dc2626;box-shadow:0 4px 12px #dc262626}.members-access-denied .access-denied-title{font-size:20px;font-weight:600;color:#1f2937;margin:0 0 8px}.members-access-denied .access-denied-message{font-size:15px;color:#6b7280;margin:0;line-height:1.5}.members-access-denied .access-denied-divider{width:60px;height:1px;background:linear-gradient(90deg,transparent,#d1d5db,transparent);margin:24px 0}.members-access-denied .access-denied-help{font-size:13px;color:#6b7280;margin:0;line-height:1.6}.members-access-denied .access-denied-help strong{color:#4b5563;font-weight:500}.members-sync-btn{padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .2s ease;white-space:nowrap}.members-sync-btn:hover:not(:disabled){background:#2563eb}.members-sync-btn:disabled{background:#9ca3af;cursor:not-allowed}.members-source-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:500;text-transform:capitalize}.members-th-source{width:100px}.members-th-team{min-width:150px}.members-th-actions{width:120px;text-align:center}.members-empty-field{color:#9ca3af;font-style:italic}.members-text-field{color:#374151;font-size:14px}.members-edit-input{width:100%;padding:6px 10px;border:1px solid #d1d5db;border-radius:4px;font-size:13px;color:#374151}.members-edit-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.members-edit-select{width:100%;padding:6px 10px;border:1px solid #d1d5db;border-radius:4px;font-size:13px;color:#374151;background:#fff;cursor:pointer}.members-edit-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.members-action-buttons{display:flex;gap:6px;justify-content:center}.members-btn{padding:5px 12px;border:none;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.members-btn-edit{background:#f3f4f6;color:#374151}.members-btn-edit:hover{background:#e5e7eb}.members-btn-save{background:#10b981;color:#fff}.members-btn-save:hover{background:#059669}.members-btn-cancel{background:#f3f4f6;color:#374151}.members-btn-cancel:hover{background:#e5e7eb}.members-td-actions{text-align:center}.members-manager-dropdown{position:relative;width:100%}.members-manager-input-wrapper{position:relative;display:flex;align-items:center}.members-manager-input-wrapper .members-edit-input{padding-right:28px}.members-manager-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:18px;height:18px;border:none;background:#e5e7eb;border-radius:50%;color:#6b7280;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.members-manager-clear:hover{background:#d1d5db;color:#374151}.members-manager-options{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d1d5db;border-radius:4px;box-shadow:0 4px 12px #0000001a;max-height:240px;overflow-y:auto;z-index:100;margin-top:4px}.members-manager-option{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;transition:background-color .15s ease}.members-manager-option:hover{background:#f3f4f6}.members-manager-option-name{font-size:13px;color:#1f2937;font-weight:500}.members-manager-option-nickname{font-size:12px;color:#9ca3af}.members-manager-no-results{padding:12px;text-align:center;color:#9ca3af;font-size:13px}.members-role-dropdown{position:relative;width:100%}.members-role-input-wrapper{position:relative;display:flex;align-items:center}.members-role-input-wrapper .members-edit-input{padding-right:28px}.members-role-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:18px;height:18px;border:none;background:#e5e7eb;border-radius:50%;color:#6b7280;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.members-role-clear:hover{background:#d1d5db;color:#374151}.members-role-options{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d1d5db;border-radius:4px;box-shadow:0 4px 12px #0000001a;max-height:240px;overflow-y:auto;z-index:100;margin-top:4px}.members-role-option{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;transition:background-color .15s ease}.members-role-option:hover{background:#f3f4f6}.members-role-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.members-role-option-name{font-size:13px;color:#374151}.members-role-no-results{padding:12px;text-align:center;color:#9ca3af;font-size:13px}.members-team-dropdown{position:relative;width:100%}.members-team-input-wrapper{position:relative;display:flex;align-items:center}.members-team-input-wrapper .members-edit-input{padding-right:28px}.members-team-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:18px;height:18px;border:none;background:#e5e7eb;border-radius:50%;color:#6b7280;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.members-team-clear:hover{background:#d1d5db;color:#374151}.members-team-options{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d1d5db;border-radius:4px;box-shadow:0 4px 12px #0000001a;max-height:240px;overflow-y:auto;z-index:100;margin-top:4px}.members-team-option{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;transition:background-color .15s ease}.members-team-option:hover{background:#f3f4f6}.members-team-option-name{font-size:13px;color:#374151}.members-team-no-results{padding:12px;text-align:center;color:#9ca3af;font-size:13px}.members-filter-dropdown{position:relative}.members-filter-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;min-width:130px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;cursor:pointer;font-size:13px;color:#374151;transition:border-color .2s,box-shadow .2s}.members-filter-trigger:hover{border-color:#d1d5db}.members-filter-trigger.active{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.members-filter-trigger-content{display:flex;align-items:center;gap:8px;overflow:hidden}.members-filter-trigger-content span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.members-filter-trigger svg{flex-shrink:0;color:#9ca3af;transition:transform .2s}.members-filter-trigger.active svg{transform:rotate(180deg)}.members-filter-options{position:absolute;top:calc(100% + 4px);left:0;min-width:200px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 16px #0000001f;z-index:200;overflow:hidden}.members-filter-search-wrapper{padding:8px;border-bottom:1px solid #e5e7eb}.members-filter-search-input{width:100%;padding:8px 10px;border:1px solid #e5e7eb;border-radius:4px;font-size:13px;color:#374151;outline:none}.members-filter-search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.members-filter-search-input::placeholder{color:#9ca3af}.members-filter-options-list{max-height:240px;overflow-y:auto}.members-filter-option{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;font-size:13px;color:#374151;transition:background-color .15s}.members-filter-option:hover{background:#f3f4f6}.members-filter-option.selected{background:#eff6ff;color:#1d4ed8;font-weight:500}.members-filter-option-all{border-bottom:1px solid #e5e7eb;font-weight:500;color:#6b7280}.members-filter-role-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.members-filter-no-results{padding:16px 12px;text-align:center;color:#9ca3af;font-size:13px}@media(max-width:768px){.members-th,.members-td{padding:10px 12px}.members-avatar{width:32px;height:32px;font-size:12px}.members-avatar-img{width:32px;height:32px}.members-name-text{font-size:13px}.members-filter-dropdown{flex:1;min-width:0}.members-filter-trigger{width:100%}.members-filter-options{right:0;left:auto}}.members-pagination{display:flex;align-items:center;justify-content:center;padding:16px;gap:8px;border-top:1px solid #e5e7eb}.members-page-numbers{display:flex;align-items:center;gap:4px}.members-page-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .2s}.members-page-btn:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.members-page-btn:disabled{opacity:.5;cursor:not-allowed}.members-page-nav{min-width:100px}.members-page-num{min-width:36px;padding:8px 10px}.members-page-num.active{background:#000;border-color:#000;color:#fff}.members-page-ellipsis{padding:0 8px;color:#9ca3af;font-size:14px}.members-page-info{text-align:center;padding:8px 16px 16px;color:#6b7280;font-size:13px}@media(max-width:768px){.members-pagination{flex-direction:column;gap:12px}.members-page-nav{min-width:80px;font-size:12px;padding:6px 10px}.members-page-num{min-width:32px;padding:6px 8px;font-size:12px}}.roles-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.roles-modal{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #00000026}.roles-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.roles-modal-header h2{font-size:18px;font-weight:600;color:#111827;margin:0}.roles-modal-close{background:none;border:none;padding:4px;cursor:pointer;color:#6b7280;border-radius:4px;display:flex;align-items:center;justify-content:center}.roles-modal-close:hover{background:#f3f4f6;color:#111827}.roles-modal-content{padding:24px;overflow-y:auto}.roles-error{background:#fef2f2;color:#991b1b;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}.roles-loading{text-align:center;color:#6b7280;padding:40px 0}.roles-add-form{display:flex;flex-direction:column;gap:12px;padding-bottom:20px;border-bottom:1px solid #e5e7eb;margin-bottom:20px}.roles-input{padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;outline:none;transition:border-color .2s}.roles-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.roles-color-picker{display:flex;gap:8px;flex-wrap:wrap}.roles-color-picker-inline{flex:1}.roles-color-option{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .2s,border-color .2s}.roles-color-option:hover{transform:scale(1.1)}.roles-color-option.selected{border-color:#111827;box-shadow:0 0 0 2px #fff,0 0 0 4px currentColor}.roles-color-option-small{width:20px;height:20px}.roles-add-btn{padding:10px 16px;background:#000;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.roles-add-btn:hover:not(:disabled){background:#222}.roles-add-btn:disabled{background:#9ca3af;cursor:not-allowed}.roles-list{display:flex;flex-direction:column;gap:12px}.roles-empty{text-align:center;color:#6b7280;padding:32px 0;font-size:14px}.roles-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f9fafb;border-radius:8px;flex-wrap:wrap}.roles-badge{padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;border:1px solid}.roles-edit-input{flex:1;min-width:120px;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;outline:none}.roles-edit-input:focus{border-color:#3b82f6}.roles-item-actions{display:flex;gap:8px;margin-left:auto}.roles-edit-btn,.roles-delete-btn,.roles-save-btn,.roles-cancel-btn{padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.roles-edit-btn{background:#fff;border:1px solid #d1d5db;color:#374151}.roles-edit-btn:hover{background:#f3f4f6;border-color:#9ca3af}.roles-delete-btn{background:#fff;border:1px solid #fecaca;color:#dc2626}.roles-delete-btn:hover{background:#fef2f2;border-color:#f87171}.roles-save-btn{background:#000;border:none;color:#fff}.roles-save-btn:hover:not(:disabled){background:#222}.roles-cancel-btn{background:#fff;border:1px solid #d1d5db;color:#374151}.roles-cancel-btn:hover{background:#f3f4f6}.project-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.project-modal{background:#fff;border-radius:12px;width:100%;max-width:480px;display:flex;flex-direction:column;box-shadow:0 20px 40px #00000026}.project-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.project-modal-header h2{font-size:18px;font-weight:600;color:#111827;margin:0}.project-modal-close{background:none;border:none;padding:4px;cursor:pointer;color:#6b7280;border-radius:4px;display:flex;align-items:center;justify-content:center}.project-modal-close:hover{background:#f3f4f6;color:#111827}.project-modal-content{padding:24px}.project-error{background:#fef2f2;color:#991b1b;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}.project-form-group{margin-bottom:20px}.project-form-group label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.project-input{width:100%;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;outline:none;transition:border-color .2s;box-sizing:border-box}.project-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.project-textarea{width:100%;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;outline:none;transition:border-color .2s;box-sizing:border-box;resize:vertical;font-family:inherit}.project-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.project-modal-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:8px}.project-cancel-btn{padding:10px 20px;background:#fff;border:1px solid #d1d5db;color:#374151;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.project-cancel-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.project-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.project-submit-btn{padding:10px 20px;background:#000;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.project-submit-btn:hover:not(:disabled){background:#222}.project-submit-btn:disabled{background:#9ca3af;cursor:not-allowed}.clv{display:flex;flex-direction:column;gap:0;height:100%;min-height:0}.clv-loading,.clv-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 20px;color:#6b7280;font-size:14px}.clv-spinner{width:28px;height:28px;border:3px solid #e5e7eb;border-top-color:#f95d03;border-radius:50%;animation:clv-spin .7s linear infinite}@keyframes clv-spin{to{transform:rotate(360deg)}}.clv-create-btn{margin-top:8px;padding:8px 20px;background:#000;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer}.clv-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 0;gap:12px;flex-wrap:wrap}.clv-toolbar-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.clv-toolbar-right{display:flex;align-items:center;gap:8px}.clv-view-toggle{display:flex;background:#f3f4f6;border-radius:8px;padding:2px;gap:2px}.clv-view-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;background:transparent;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .15s}.clv-view-btn:hover{color:#111}.clv-view-btn.active{background:#fff;color:#111;box-shadow:0 1px 3px #0000001a}.clv-search{display:flex;align-items:center;gap:8px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:8px 12px;flex:1;max-width:360px}.clv-search svg{color:#9ca3af;flex-shrink:0}.clv-search input{border:none;background:transparent;font-size:14px;color:#111;outline:none;flex:1;min-width:0}.clv-search input::placeholder{color:#9ca3af}.clv-search-clear{border:none;background:none;color:#9ca3af;cursor:pointer;font-size:18px;line-height:1;padding:0 2px}.clv-toolbar-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid #e5e7eb;background:#fff;border-radius:8px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s;white-space:nowrap}.clv-toolbar-btn:hover{border-color:#d1d5db;background:#f9fafb}.clv-toolbar-btn svg{color:#6b7280}.clv-toolbar-dropdown{position:relative}.clv-dropdown-panel{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 40px #0000001f;z-index:100;padding:12px;min-width:200px;animation:clv-dropdown-in .12s ease-out}.clv-dropdown-narrow{min-width:160px;padding:6px}@keyframes clv-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.clv-dropdown-section{margin-bottom:10px}.clv-dropdown-section label{display:block;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.clv-dropdown-section select{width:100%;padding:7px 10px;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;color:#111;background:#fff}.clv-dropdown-clear{width:100%;padding:7px 10px;border:none;background:#f3f4f6;border-radius:6px;font-size:12px;color:#6b7280;cursor:pointer;margin-top:4px}.clv-dropdown-clear:hover{background:#e5e7eb}.clv-dropdown-option{width:100%;display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border:none;background:transparent;border-radius:6px;font-size:13px;color:#374151;cursor:pointer;text-align:left}.clv-dropdown-option:hover{background:#f3f4f6}.clv-dropdown-option.active{background:#f0f0f0;font-weight:500;color:#111}.clv-sync-result{padding:10px 16px;border-radius:8px;font-size:13px;margin-bottom:8px;display:flex;align-items:center;gap:12px}.clv-sync-result.success{background:#ecfdf5;color:#065f46}.clv-sync-result.info{background:#f0f9ff;color:#0c4a6e}.clv-sync-details{display:flex;gap:10px;font-size:12px;opacity:.8}.clv-groups{display:flex;flex-direction:column;gap:0;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:10px;scrollbar-gutter:stable}.clv-group{border-bottom:1px solid #f0f0f0;padding-bottom:2px}.clv-group:last-child{border-bottom:none;padding-bottom:0}.clv-group-header{display:flex;align-items:center;gap:12px;padding:10px 4px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .1s;border-radius:8px}.clv-group-header:after{content:"";flex:1;height:1px;background:#e0e0e0}.clv-group-header:hover{background:#fafafa}.clv-group-header-left{display:flex;align-items:center;gap:10px}.clv-group-icon{width:28px;height:28px;background:#fff3eb;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.clv-group-name{font-size:13px;font-weight:600;color:#111}.clv-group-count{font-size:13px;color:#6b7280;font-weight:500}.clv-group-chevron{color:#9ca3af;transition:transform .2s;order:1;flex-shrink:0}.clv-group-chevron.expanded{transform:rotate(90deg)}.clv-group-body{padding:2px 0 6px;margin-left:38px;position:relative}.clv-group-body.list{display:flex!important;flex-direction:column!important}.clv-item.list:after{content:"";position:absolute;left:-20px;top:-4px;bottom:-4px;width:1px;background:#e0e0e0}.clv-item.list:first-of-type:after{top:0}.clv-item.list:last-of-type:after{bottom:auto;height:calc(50% + 4px);top:-4px}.clv-group-body.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px;padding:0 0 12px}.clv-item.list{display:flex!important;flex-direction:row!important;align-items:center!important;flex-wrap:nowrap!important;padding:10px 14px;margin:4px 0 4px 20px;border:1px solid #f0f0f0;border-radius:10px;background:#fff;transition:all .15s;gap:12px;position:relative;width:auto}.clv-item.list:before{content:"";position:absolute;left:-20px;top:50%;width:20px;height:1px;background:#e0e0e0}.clv-item.list:last-child{margin-bottom:0}.clv-item.list:hover{border-color:#e5e7eb;box-shadow:0 2px 8px #0000000a}.clv-item.grid{display:flex;flex-direction:column;padding:16px;border:1px solid #e5e7eb;background:#fff;border-radius:10px;gap:12px;transition:all .15s}.clv-item.grid:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000f}.clv-item.grid .clv-item-right{flex-direction:column;align-items:flex-start}.clv-item.grid .clv-env-pills{flex-wrap:wrap}.clv-item.grid .clv-score{align-self:flex-end}.clv-item-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.clv-item-icon{width:30px;height:30px;background:#fff3eb;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.clv-item-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.clv-item-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.clv-item-name{font-size:13px;font-weight:600;color:#111;white-space:nowrap}.clv-item-desc{font-size:12px;color:#6b7280;line-height:1.3;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.clv-item-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.clv-item-meta-tag{display:inline-flex;align-items:center;gap:3px;font-size:11px;color:#9ca3af;white-space:nowrap}.clv-item-meta-tag svg{flex-shrink:0}.clv-item-meta-tag+.clv-item-meta-tag:before{content:"·";margin-right:6px;color:#d1d5db}.clv-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500;white-space:nowrap}.clv-badge-language{background:#f3f4f6;color:#374151}.clv-item-right{display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px;flex-shrink:0;margin-left:auto;white-space:nowrap}.clv-env-pills{display:flex;align-items:center;gap:10px}.clv-env-pill{display:flex;align-items:center;gap:5px;font-size:12px;white-space:nowrap}.clv-env-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.clv-env-name{color:#6b7280;font-weight:500;font-size:11px}.clv-env-version{color:#111;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:11px}.clv-score{flex-shrink:0}.clv-item-arrow{flex-shrink:0;color:#9ca3af}.clv-show-more{display:flex;align-items:center;justify-content:center;gap:6px;margin:16px auto 8px;padding:6px 20px;border:none;border-radius:999px;background:transparent;color:#f97316;font-size:13px;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:all .2s ease;position:relative}.clv-show-more:before{content:"";position:absolute;inset:0;border-radius:999px;background:#f973161a;opacity:0;transition:opacity .2s ease}.clv-show-more-label{line-height:1;position:relative}.clv-show-more-icon{color:#f97316;transition:transform .25s cubic-bezier(.4,0,.2,1),color .2s ease;position:relative}.clv-show-more-icon.expanded{transform:rotate(180deg)}.clv-show-more:hover{color:#ea580c}.clv-show-more:hover:before{opacity:1}.clv-show-more:hover .clv-show-more-icon{color:#ea580c}.clv-show-more:active{transform:scale(.97)}.clv-no-results{text-align:center;padding:40px 20px;color:#6b7280;font-size:14px}.clv-no-results button{margin-left:8px;background:none;border:none;color:#f95d03;font-weight:500;cursor:pointer;text-decoration:underline}.cd-page{height:100vh;background:#faf7f5;display:flex;flex-direction:column;overflow:hidden}.cd-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:120px 20px;color:#6b7280;font-size:14px}.cd-spinner{width:28px;height:28px;border:3px solid #e5e7eb;border-top-color:#f56816;border-radius:50%;animation:cd-spin .7s linear infinite}.cd-error-btn{margin-top:8px;padding:8px 20px;background:#f56816;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer}.cd-page-inline{height:100%;background:transparent;overflow-y:auto}.cd-page-inline .cd-content{overflow-y:visible}.cd-breadcrumb{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 28px;font-size:13px;flex-shrink:0;background:#fff;border-bottom:1px solid #f1f5f9}.cd-breadcrumb-left,.cd-breadcrumb-actions{display:flex;align-items:center;gap:8px}.cd-breadcrumb-link{display:flex;align-items:center;gap:6px;background:none;border:none;color:#64748b;font-size:14px;font-weight:500;cursor:pointer;padding:0;transition:color .15s}.cd-breadcrumb-link:hover{color:#f56816}.cd-breadcrumb-link svg{color:#f56816}.cd-breadcrumb-sep{color:#cbd5e1;display:flex;align-items:center}.cd-breadcrumb-current{color:#1e293b;font-size:18px;font-weight:700}.cd-switcher-wrap{position:relative}.cd-switcher-trigger{display:inline-flex;align-items:center;gap:5px;background:none;border:none;padding:2px 4px;border-radius:6px;cursor:pointer;color:#6b7280;transition:background .12s,color .12s}.cd-switcher-trigger:hover{background:#f1f5f9;color:#374151}.cd-switcher-dropdown{position:absolute;top:calc(100% + 6px);left:0;width:280px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0000001a;z-index:300;overflow:hidden;animation:cd-fade-in .12s ease}.cd-switcher-search-wrap{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid #f1f5f9}.cd-switcher-search{flex:1;border:none;outline:none;font-size:13px;color:#111827;background:transparent}.cd-switcher-search::placeholder{color:#9ca3af}.cd-switcher-list{max-height:280px;overflow-y:auto;padding:4px 0}.cd-switcher-loading{display:flex;justify-content:center;padding:20px}.cd-switcher-spinner{width:16px;height:16px;border:2px solid #e5e7eb;border-top-color:#f56816;border-radius:50%;animation:cd-spin .7s linear infinite}.cd-switcher-empty{padding:16px 12px;font-size:12px;color:#9ca3af;text-align:center}.cd-switcher-item{width:100%;display:flex;align-items:center;gap:8px;padding:8px 12px;background:none;border:none;cursor:pointer;text-align:left;transition:background .1s}.cd-switcher-item:hover{background:#f9fafb}.cd-switcher-item--active{background:#fff7ed}.cd-switcher-item--active:hover{background:#ffedd5}.cd-switcher-item-name{flex:1;font-size:13px;font-weight:500;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cd-switcher-item-type{font-size:11px;color:#9ca3af;background:#f3f4f6;padding:1px 6px;border-radius:4px;flex-shrink:0}.cd-switcher-item-check{color:#f56816;flex-shrink:0}.cd-hero{display:flex;align-items:center;padding:14px 28px;gap:16px;flex-wrap:wrap;flex-shrink:0;background:#fff;border-bottom:1px solid #e2e8f0}.cd-hero-left{display:flex;align-items:flex-start;gap:16px}.cd-hero-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#fff7f2;border:1px solid #fed7c0;border-radius:9px;flex-shrink:0}.cd-hero-info{display:flex;flex-direction:column;gap:6px}.cd-hero-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cd-hero-name{margin:0;font-size:22px;font-weight:700;color:#0f172a;line-height:1.2}.cd-hero-badge{display:inline-flex;align-items:center;padding:3px 12px;border-radius:6px;font-size:12px;font-weight:600}.cd-hero-badge-lang{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.cd-hero-desc{margin:0;font-size:14px;color:#64748b;line-height:1.5;max-width:600px}.cd-hero-meta{display:flex;align-items:center;gap:16px;font-size:13px;color:#64748b}.cd-hero-meta-item{display:flex;align-items:center;gap:5px;font-weight:500;color:#475569}.cd-hero-meta-item svg{color:#94a3b8}.cd-hero-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.cd-btn-secondary{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-size:13px;font-weight:600;color:#475569;cursor:pointer;text-decoration:none;transition:all .15s}.cd-btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}.cd-btn-deploy-header{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#f56816;border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s;box-shadow:0 2px 6px #c94f0e4d}.cd-btn-deploy-header:hover{background:#b34510;box-shadow:0 3px 10px #f5681666}.cd-btn-edit-component{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;background:#fff;border:1.5px solid #ffffff;border-radius:8px;color:#374151;cursor:pointer;transition:all .15s}.cd-btn-edit-component:hover{border-color:#f56816;color:#f56816;background:#fff7f0}.cd-btn-edit-component svg{flex-shrink:0}.cd-tabs{display:flex;align-items:center;gap:0;padding:0 28px;border-bottom:1px solid #e5e7eb;background-color:#fff;overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none;flex-shrink:0}.cd-tabs::-webkit-scrollbar{display:none}.cd-tab{display:inline-flex;align-items:center;gap:6px;padding:12px 16px;background:transparent;border:none;border-bottom:2px solid transparent;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;white-space:nowrap;transition:all .15s}.cd-tab:hover{color:#374151;background:#fafafa}.cd-tab-active{color:#f56816;border-bottom-color:#f56816;font-weight:600}.cd-tab-active:hover{color:#f56816;background:transparent}.cd-tab svg{flex-shrink:0;opacity:.7}.cd-tab-active svg{opacity:1;color:#f56816}.cd-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:#f3f4f6;border-radius:9px;font-size:11px;font-weight:600;color:#6b7280}.cd-tab-active .cd-tab-count{background:#fff3eb;color:#f56816}.cd-content{padding:24px 28px;flex:1;overflow-y:auto;display:flex;flex-direction:column;transition:padding-right .22s cubic-bezier(.22,1,.36,1)}.cd-content--drawer-open{padding-right:456px}.cd-content--canvas{overflow:hidden;padding-bottom:0}.cd-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.cd-overview-layout{display:grid;grid-template-columns:1fr 340px;gap:20px}.cd-overview-left,.cd-overview-right{display:flex;flex-direction:column;gap:20px}.cd-ov-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.cd-ov-card-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f1f5f9}.cd-ov-card-header h3{margin:0;font-size:15px;font-weight:700;color:#0f172a}.cd-ov-card-subtitle{font-size:12px;color:#94a3b8;font-weight:500}.cd-ov-card-edit{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;transition:all .15s}.cd-ov-card-edit:hover{background:#f8fafc;color:#475569}.cd-ov-card-body{padding:16px 20px}.cd-ov-empty{text-align:center;padding:20px 0;color:#94a3b8;font-size:13px}.cd-readme-content{font-size:14px;color:#334155;line-height:1.7}.cd-readme-content p{margin:0 0 12px}.cd-readme-content h4{margin:16px 0 8px;font-size:14px;font-weight:700;color:#0f172a}.cd-readme-content ul{margin:0;padding-left:20px}.cd-readme-content li{margin-bottom:4px;color:#f56816}.cd-readme-content li::marker{color:#f56816}.cd-readme-pre{font-family:inherit;font-size:14px;color:#334155;line-height:1.7;white-space:pre-wrap;word-break:break-word;margin:0}.cd-ov-empty--clickable{cursor:pointer;border-radius:6px;transition:background .15s}.cd-ov-empty--clickable:hover{background:#fef3e8}.cd-readme-editor-wrap{display:flex;flex-direction:column;gap:8px}.cd-readme-textarea{width:100%;min-height:160px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:6px;font-family:inherit;font-size:14px;color:#1e293b;background:#fff;resize:vertical;outline:none;transition:border-color .15s;box-sizing:border-box}.cd-readme-textarea:focus{border-color:#f56816}.cd-readme-hint{font-size:12px;color:#94a3b8}.cd-readme-edit-actions{display:flex;gap:8px;align-items:center}.cd-readme-btn-save{padding:6px 18px;background:#f56816;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.cd-readme-btn-save:hover:not(:disabled){background:#e05a0e}.cd-readme-btn-save:disabled{opacity:.6;cursor:not-allowed}.cd-readme-btn-cancel{padding:6px 16px;background:transparent;color:#64748b;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}.cd-readme-btn-cancel:hover{background:#f1f5f9;border-color:#94a3b8}.cd-activity-list{display:flex;flex-direction:column;gap:0}.cd-activity-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px 16px;color:#9ca3af;font-size:13px}.cd-activity-item{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid #f8fafc}.cd-activity-item:last-child{border-bottom:none}.cd-activity-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.cd-activity-icon--deploy{background:#ecfdf5;color:#059669}.cd-activity-icon--security{background:#f0f9ff;color:#0284c7}.cd-activity-icon--config{background:#fef3c7;color:#d97706}.cd-activity-info{display:flex;flex-direction:column;gap:2px}.cd-activity-title{font-size:13px;font-weight:600;color:#1e293b}.cd-activity-meta{font-size:12px;color:#94a3b8}.cd-scorecard-hero{display:flex;align-items:center;gap:14px;padding-bottom:14px;border-bottom:1px solid #f1f5f9}.cd-scorecard-circle{flex-shrink:0}.cd-scorecard-hero-info{display:flex;flex-direction:column;gap:2px}.cd-scorecard-hero-title{font-size:14px;font-weight:700;color:#0f172a}.cd-scorecard-hero-sub{font-size:12px;color:#94a3b8}.cd-scorecard-view-btn{display:block;width:100%;margin-top:14px;padding:10px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-size:13px;font-weight:600;color:#475569;cursor:pointer;text-align:center;transition:all .15s}.cd-scorecard-view-btn:hover{background:#f8fafc;border-color:#cbd5e1}.cd-about-body{padding:0!important}.cd-about-row{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid #f8fafc}.cd-about-row:last-child{border-bottom:none}.cd-about-label{font-size:13px;color:#64748b;font-weight:500}.cd-about-value{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#1e293b;text-align:right}.cd-about-value svg{color:#94a3b8}.cd-about-lifecycle-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:6px;font-size:12px;font-weight:600}.cd-links-list{display:flex;flex-direction:column;gap:0}.cd-link-item{display:flex;align-items:center;gap:10px;padding:10px 0;text-decoration:none;color:#f56816;font-size:13px;font-weight:500;transition:color .15s;border-bottom:1px solid #f8fafc}.cd-link-item:last-child{border-bottom:none}.cd-link-item:hover{color:#e05e14}.cd-link-item span{flex:1}.cd-link-external{color:#cbd5e1;flex-shrink:0}.cd-vlist{display:flex;flex-direction:column}.cd-vlist-item{display:flex;flex-direction:column;gap:2px;padding:10px 0;border-top:1px solid #f3f3f3}.cd-vlist-item:first-child{border-top:none;padding-top:0}.cd-vlist-item:last-child{padding-bottom:0}.cd-vlist-label{font-size:10px;font-weight:500;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px}.cd-vlist-value{font-size:13px;color:#111;font-weight:500;word-break:break-all;line-height:1.4}.cd-vlist-badge{display:inline-flex;align-items:center;padding:1px 8px;border-radius:4px;font-size:11px;font-weight:600;width:fit-content}.cd-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:22px;box-shadow:0 1px 3px #00000008}.cd-card-full{grid-column:1 / -1}.cd-card-title{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.6px;margin-bottom:14px}.cd-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cd-info-item{display:flex;flex-direction:column;gap:3px}.cd-info-label{font-size:11px;font-weight:500;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px}.cd-info-value{font-size:14px;color:#111;font-weight:500;word-break:break-all}.cd-info-empty{font-size:13px;color:#d1d5db}.cd-desc-text{font-size:14px;color:#374151;line-height:1.7;margin:0}.cd-scorecard-list{display:flex;flex-direction:column;gap:10px}.cd-scorecard-item{display:flex;align-items:center;gap:12px}.cd-scorecard-name{font-size:13px;color:#374151;min-width:110px}.cd-scorecard-bar-wrap{flex:1;height:7px;background:#f3f4f6;border-radius:4px;overflow:hidden}.cd-scorecard-bar{height:100%;border-radius:4px;transition:width .4s ease}.cd-scorecard-score{font-size:13px;font-weight:600;color:#374151;min-width:28px;text-align:right}.cd-links-list{display:flex;flex-direction:column;gap:6px}.cd-link-item{display:flex;align-items:center;gap:10px;padding:9px 14px;background:#f9fafb;border:1px solid #f0f0f0;border-radius:8px;color:#374151;font-size:13px;font-weight:500;text-decoration:none;transition:all .15s}.cd-link-item:hover{background:#f3f4f6;border-color:#e5e7eb;color:#111}.cd-link-item svg{flex-shrink:0;color:#9ca3af}.cd-dep-list{display:flex;flex-wrap:wrap;gap:8px}.cd-dep-tag{display:inline-flex;align-items:center;padding:6px 12px;background:#f3f4f6;border-radius:6px;font-size:13px;color:#374151;font-weight:500}.cd-tab-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 20px;color:#9ca3af;font-size:14px}.cd-delivery-wrap{flex:1;display:flex;flex-direction:column;min-height:0;margin:-16px 0}.cd-delivery-wrap.cd-delivery-fullscreen{position:fixed;inset:0;z-index:1000;background:#faf7f5;padding:16px 28px;box-sizing:border-box}.cd-delivery-toolbar{display:flex;align-items:center;gap:10px;padding:8px 0;flex-shrink:0}.cd-delivery-artifact-select-wrap{display:flex;align-items:center;gap:7px;padding:0 10px;height:34px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000000f;position:relative}.cd-delivery-artifact-select{appearance:none;background:none;border:none;outline:none;font-size:13px;font-weight:500;color:#374151;cursor:pointer;padding-right:20px;font-family:inherit}.cd-deploy-bar{display:flex;align-items:center;gap:0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:10px 16px;margin-bottom:10px;flex-shrink:0;box-shadow:0 1px 3px #0000000d;flex-wrap:wrap;row-gap:8px}.cd-deploy-field{display:flex;flex-direction:column;gap:4px;flex:1;min-width:140px}.cd-deploy-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#9ca3af}.cd-deploy-custom-select{position:relative}.cd-deploy-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;background:none;border:none;padding:2px 0;font-size:13px;font-weight:500;color:#111827;cursor:pointer;font-family:inherit;text-align:left;min-width:120px}.cd-deploy-trigger.disabled{color:#9ca3af;cursor:not-allowed}.cd-deploy-trigger.open .cd-deploy-chevron{transform:rotate(180deg)}.cd-deploy-placeholder{color:#9ca3af;font-weight:400}.cd-deploy-chevron{flex-shrink:0;color:#9ca3af;transition:transform .15s ease}.cd-deploy-dropdown{position:absolute;top:calc(100% + 10px);left:-12px;min-width:200px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0000001f;z-index:100;overflow:hidden}.cd-deploy-search-wrap{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid #f3f4f6}.cd-deploy-search{flex:1;border:none;outline:none;font-size:12px;color:#374151;font-family:inherit;background:none}.cd-deploy-search::placeholder{color:#d1d5db}.cd-deploy-options{max-height:200px;overflow-y:auto;padding:4px 0}.cd-deploy-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;font-size:13px;color:#374151;cursor:pointer;text-align:left;font-family:inherit;transition:background .1s}.cd-deploy-option:hover{background:#f9fafb}.cd-deploy-option.selected{color:#f56816;font-weight:500}.cd-deploy-option-count{margin-left:auto;font-size:11px;color:#6b7280;background:#e5e7eb;padding:1px 6px;border-radius:10px}.cd-deploy-option-badge{margin-left:auto;font-size:10px;font-weight:600;padding:1px 6px;border-radius:4px;text-transform:uppercase}.cd-deploy-option-badge[data-type=production]{background:#fee2e2;color:#b91c1c}.cd-deploy-option-badge[data-type=staging]{background:#fde68a;color:#92400e}.cd-deploy-option-badge[data-type=development]{background:#bbf7d0;color:#14532d}.cd-deploy-option-badge[data-type=qa]{background:#ede9fe;color:#5b21b6}.cd-deploy-no-results{padding:10px 12px;font-size:12px;color:#9ca3af;text-align:center}.cd-deploy-select-loading{display:flex;align-items:center;gap:6px;font-size:12px;color:#9ca3af;padding:2px 0}.cd-deploy-spinner-dark{width:12px;height:12px;border:2px solid #e5e7eb;border-top-color:#6b7280;border-radius:50%;animation:cd-spin .6s linear infinite;flex-shrink:0}.cd-edge-promote-wrap{position:absolute;pointer-events:all;z-index:5}.cd-edge-promote-btn:disabled{opacity:.6;cursor:not-allowed}.cd-edge-promote-btn.loading{background:#f3f4f6;color:#374151;border-color:#e5e7eb}.cd-edge-promote-spinner{width:10px;height:10px;border:1.5px solid #d1d5db;border-top-color:#6b7280;border-radius:50%;animation:cd-spin .7s linear infinite;flex-shrink:0}.cd-edge-promote-result{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:20px;font-size:11px;font-weight:600;white-space:nowrap;box-shadow:0 2px 6px #0000001a;animation:cd-fade-in .15s ease}.cd-edge-promote-result.ok{background:#ecfdf5;color:#047857;border:1.5px solid #86efac}.cd-edge-promote-result.err{background:#fef2f2;color:#b91c1c;border:1.5px solid #fca5a5}.cd-deploy-bar-sep{width:1px;height:36px;background:#e5e7eb;margin:0 16px;flex-shrink:0}.cd-deploy-btn{display:flex;align-items:center;gap:6px;padding:8px 18px;background:#f56816;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;flex-shrink:0;margin-left:8px;transition:background .15s;font-family:inherit}.cd-deploy-btn:hover:not(:disabled){background:#e05a0a}.cd-deploy-btn:disabled{background:#f9a875;cursor:not-allowed}.cd-deploy-spinner{width:13px;height:13px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:cd-spin .6s linear infinite;flex-shrink:0}.cd-deploy-result{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:500;margin-left:10px;padding:4px 10px;border-radius:6px;flex-shrink:0}.cd-deploy-result.ok{color:#064e3b;background:#ecfdf5}.cd-deploy-result.err{color:#991b1b;background:#fef2f2}.cd-delivery-canvas-wrap{flex:1;min-height:0;padding-top:12px;position:relative;display:flex;flex-direction:column}.cd-delivery-zoom-bar{display:flex;align-items:center;gap:2px;padding:5px 8px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 4px #00000014;position:fixed;right:24px;bottom:24px;z-index:40}.cd-delivery-zoom-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;background:none;border:none;border-radius:5px;color:#6b7280;cursor:pointer;transition:background .12s,color .12s}.cd-delivery-zoom-btn:hover{background:#f3f4f6;color:#374151}.cd-delivery-zoom-label{min-width:40px;height:26px;padding:0 4px;background:none;border:none;border-radius:5px;color:#374151;font-size:12px;font-weight:500;cursor:pointer;text-align:center;font-family:inherit}.cd-delivery-zoom-label:hover{background:#f3f4f6}.cd-delivery-zoom-divider{width:1px;height:16px;background:#e5e7eb;margin:0 2px}.cd-delivery-pipeline-canvas{background-color:#f8f9fa;background-image:linear-gradient(to right,rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(0,0,0,.05) 1px,transparent 1px);background-size:24px 24px;overflow:auto;cursor:grab;margin:0 -28px;position:relative;height:100%;display:flex;align-items:flex-start;justify-content:center;padding:40px 60px;box-sizing:border-box}.cd-delivery-pipeline-canvas:active{cursor:grabbing}.cd-delivery-pipeline-canvas-scaler{transform-origin:top left;flex-shrink:0}.cd-delivery-pipeline-canvas-inner{position:relative;min-width:2400px}.cd-delivery-canvas-inner{position:relative;min-width:3000px;min-height:1200px}.cd-delivery-no-pipeline{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:100%;min-height:220px;text-align:center;color:#9ca3af}.cd-delivery-no-pipeline p{font-size:14px;color:#374151;margin:0}.cd-delivery-no-pipeline p strong{color:#111827}.cd-delivery-no-pipeline span{font-size:13px;color:#9ca3af}.cd-delivery-unconfigured{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:100%;min-height:220px;text-align:center}.cd-delivery-unconfigured-title{font-size:15px;font-weight:600;color:#374151;margin:0}.cd-delivery-unconfigured-desc{font-size:13px;color:#6b7280;margin:0}.cd-delivery-loading-spinner{width:28px;height:28px;border:3px solid #e5e7eb;border-top-color:#6366f1;border-radius:50%;animation:cd-spin .7s linear infinite}@keyframes cd-spin{to{transform:rotate(360deg)}}.cd-delivery-content{display:flex;flex-direction:column;gap:20px}.cd-delivery-flow-type-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;width:fit-content}.cd-delivery-flow-type-badge.shared{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.cd-delivery-flow-type-badge.per-artifact{background:#f5f3ff;color:#6d28d9;border:1px solid #ddd6fe}.cd-delivery-pipeline-block{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.cd-delivery-pipeline-header{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.cd-delivery-pipeline-name{font-size:13px;font-weight:700;color:#111827;flex:1}.cd-delivery-pipeline-artifact-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:20px;background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb}.cd-delivery-flow-empty{font-size:13px;color:#9ca3af;font-style:italic;padding:8px 0}.cd-artifacts{display:flex;flex-direction:column;gap:16px}.cd-artifact-toolbar{display:flex;align-items:center;gap:12px}.cd-artifact-search{display:flex;align-items:center;gap:10px;padding:10px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;transition:border-color .15s,box-shadow .15s;flex:1}.cd-artifact-search:focus-within{border-color:#f56816;box-shadow:0 0 0 3px #f5681614}.cd-artifact-search svg{flex-shrink:0;color:#9ca3af}.cd-artifact-search-input{flex:1;border:none;outline:none;background:transparent;font-size:13px;color:#111}.cd-artifact-search-input::placeholder{color:#9ca3af}.cd-artifact-search-clear{display:flex;align-items:center;justify-content:center;width:22px;height:22px;background:#f3f4f6;border:none;border-radius:50%;color:#6b7280;cursor:pointer;flex-shrink:0;transition:all .15s}.cd-artifact-search-clear:hover{background:#e5e7eb;color:#374151}.cd-artifact-filters{display:flex;align-items:center;gap:8px;flex-shrink:0}.cd-dropdown-wrap{position:relative}.cd-dropdown-trigger{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:12.5px;font-weight:500;color:#374151;cursor:pointer;white-space:nowrap;transition:all .15s}.cd-dropdown-trigger:hover{border-color:#d1d5db;background:#fafafa}.cd-dropdown-trigger svg:first-child{color:#9ca3af;flex-shrink:0}.cd-dropdown-active{border-color:#f56816;background:#fff7f2;color:#f56816}.cd-dropdown-active svg:first-child{color:#f56816}.cd-sync-s3-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 13px;border:1px solid #f56816;border-radius:6px;background:#fff;color:#f56816;font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s;flex-shrink:0}.cd-sync-s3-btn:hover:not(:disabled){background:#fff7f2;border-color:#e05a0e;color:#e05a0e}.cd-sync-s3-btn:disabled{opacity:.7;cursor:not-allowed}.cd-sync-s3-btn--done{border-color:#22c55e;color:#15803d;background:#f0fdf4}.cd-sync-s3-btn--done:hover:not(:disabled){background:#dcfce7;border-color:#16a34a;color:#15803d}@keyframes cd-spin-icon{to{transform:rotate(360deg)}}.cd-sync-spin{animation:cd-spin-icon .8s linear infinite;transform-origin:center}.cd-dropdown-chevron{color:#9ca3af;flex-shrink:0;transition:transform .15s}.cd-dropdown-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:180px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #00000014,0 2px 8px #0000000a;padding:4px;z-index:50;animation:cd-dropdown-in .15s ease}.cd-dropdown-menu-branches{min-width:220px;max-height:280px;overflow-y:auto}@keyframes cd-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.cd-dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:transparent;border:none;border-radius:6px;font-size:12.5px;font-weight:500;color:#374151;cursor:pointer;text-align:left;white-space:nowrap;transition:background .1s}.cd-dropdown-item:hover{background:#f9fafb}.cd-dropdown-item-active{background:#fff7f2;color:#f56816}.cd-dropdown-item-active:hover{background:#fff1e6}.cd-dropdown-count{margin-left:auto;font-size:11px;font-weight:600;color:#9ca3af;background:#f3f4f6;padding:1px 6px;border-radius:4px}.cd-dropdown-item-active .cd-dropdown-count{background:#fed7c0;color:#c2410c}.cd-dropdown-branch-name{overflow:hidden;text-overflow:ellipsis;max-width:160px;font-family:SF Mono,Menlo,monospace;font-size:11.5px}.cd-artifact-group{display:flex;flex-direction:column}.cd-artifact-group-header{display:flex;align-items:center;gap:12px;padding:10px 0;background:transparent;border:none;cursor:pointer;width:100%}.cd-artifact-group-left{display:flex;align-items:center;gap:10px;flex-shrink:0}.cd-artifact-group-name{font-size:15px;font-weight:700;color:#111;text-transform:lowercase}.cd-artifact-group-count{font-size:12px;font-weight:600;color:#9ca3af}.cd-artifact-group-line{flex:1;height:1px;background:#e5e7eb}.cd-artifact-chevron{flex-shrink:0;color:#9ca3af;transition:transform .2s ease}.cd-artifact-chevron-open{transform:rotate(180deg)}.cd-artifact-list{display:flex;flex-direction:column;gap:6px;padding:4px 0 12px}.cd-artifact-card{background:#fff;border:1px solid #e8e8e8;border-radius:10px;padding:12px 16px;transition:border-color .15s,box-shadow .15s}.cd-artifact-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000a}.cd-artifact-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.cd-artifact-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#fff7f2;border:1px solid #fed7c0;border-radius:8px;color:#f56816;flex-shrink:0}.cd-artifact-card-left{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.cd-artifact-version-row{display:flex;align-items:center;gap:8px}.cd-artifact-version{font-size:13px;font-weight:600;color:#111}.cd-artifact-branch{display:inline-flex;align-items:center;padding:1px 8px;background:#eff6ff;color:#1e40af;border-radius:4px;font-size:11px;font-weight:500;font-family:SF Mono,Menlo,monospace;line-height:1.6;text-decoration:none;transition:background .15s,color .15s}a.cd-artifact-branch:hover{background:#dbeafe;color:#1e3a8a}.cd-artifact-card-meta{display:flex;align-items:center;gap:8px;font-size:11.5px;color:#9ca3af}.cd-artifact-commit{font-family:SF Mono,Menlo,monospace;padding:1px 6px;background:#f3f4f6;border-radius:4px;font-size:11px;color:#6b7280;text-decoration:none;transition:background .15s,color .15s}a.cd-artifact-commit:hover{background:#e5e7eb;color:#374151}.cd-artifact-triggered{font-style:normal;color:#9ca3af}.cd-artifact-card-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.cd-artifact-build{font-size:11.5px;font-weight:600;color:#374151;background:#f9fafb;border:1px solid #e5e7eb;padding:2px 8px;border-radius:4px;text-decoration:none;transition:background .15s,border-color .15s,color .15s}a.cd-artifact-build:hover{background:#f3f4f6;border-color:#d1d5db;color:#111}.cd-artifact-date{font-size:11.5px;color:#9ca3af}.cd-artifact-show-more{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px;background:#faf7f5;border:1px dashed #e5e7eb;border-radius:8px;font-size:12.5px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s}.cd-artifact-show-more:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db;color:#374151}.cd-artifact-show-more:disabled{cursor:default;opacity:.7}.cd-spinner-sm{width:14px;height:14px;border-width:2px}.cd-settings{display:flex;flex-direction:column;gap:20px;width:100%}.cd-settings-section{background:#fff;border:1px solid #e5e7eb;border-radius:14px;overflow:hidden;box-shadow:0 1px 4px #0000000d}.cd-settings-section-header{display:flex;align-items:center;gap:10px;padding:16px 22px;font-size:13px;font-weight:700;color:#111827;background:linear-gradient(to right,#fff7ed,#fff);border-bottom:1px solid #e5e7eb}.cd-settings-section-header svg{color:var(--primary, #f97316)}.cd-settings-field{padding:20px 22px;border-bottom:1px solid #f3f4f6;display:flex;flex-direction:column;gap:6px}.cd-settings-field:last-of-type{border-bottom:none}.cd-settings-field-indented{padding-left:22px;background:#fafafa}.cd-settings-field-indented .cd-settings-select{max-width:480px;flex:none;width:100%}.cd-settings-field-label{font-size:13px;font-weight:600;color:#111827}.cd-settings-field-desc{font-size:12px;color:#6b7280;margin-bottom:6px;line-height:1.5}.cd-delivery-flow-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:2px}.cd-delivery-flow-card{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1.5px solid #e5e7eb;border-radius:10px;background:#fff;cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s,background .15s}.cd-delivery-flow-card:hover{border-color:#fdba74;background:#fff7ed}.cd-delivery-flow-card.active{border-color:var(--primary, #f97316);background:#fff7ed;box-shadow:0 0 0 3px #f973161a}.cd-delivery-flow-card-icon{flex-shrink:0;width:40px;height:40px;border-radius:10px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;color:#9ca3af;transition:background .15s,color .15s}.cd-delivery-flow-card.active .cd-delivery-flow-card-icon{background:#ffedd5;color:var(--primary, #f97316)}.cd-delivery-flow-card-text{flex:1;display:flex;flex-direction:column;gap:3px}.cd-delivery-flow-card-title{font-size:13px;font-weight:600;color:#111827}.cd-delivery-flow-card-desc{font-size:12px;color:#6b7280;line-height:1.4}.cd-delivery-flow-card-radio{flex-shrink:0;width:18px;height:18px;border-radius:50%;border:2px solid #d1d5db;display:flex;align-items:center;justify-content:center;transition:border-color .15s}.cd-delivery-flow-card.active .cd-delivery-flow-card-radio{border-color:var(--primary, #f97316)}.cd-delivery-radio-dot{width:8px;height:8px;border-radius:50%;background:transparent;transition:background .15s}.cd-delivery-radio-dot.active{background:var(--primary, #f97316)}.cd-settings-select{padding:8px 10px;border:1.5px solid #e5e7eb;border-radius:8px;font-size:12px;color:#111827;background:#fff;cursor:pointer;outline:none;transition:border-color .15s,box-shadow .15s;flex:1;min-width:0}.cd-settings-select:focus{border-color:var(--primary, #f97316);box-shadow:0 0 0 3px #f9731614}.cd-settings-select-sm{flex:1;min-width:0}.cd-custom-select-wrap{position:relative;flex:1;min-width:0}.cd-custom-select-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 11px;border:1.5px solid #e5e7eb;border-radius:8px;background:#fff;font-size:13px;color:#111827;cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s;outline:none}.cd-custom-select-btn:hover:not(:disabled){border-color:#d1d5db}.cd-custom-select-btn.open,.cd-custom-select-btn:focus{border-color:var(--primary, #f97316);box-shadow:0 0 0 3px #f9731614}.cd-custom-select-btn:disabled{opacity:.5;cursor:not-allowed;background:#f9fafb}.cd-custom-select-btn span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cd-custom-select-placeholder{color:#9ca3af!important}.cd-custom-select-chevron{flex-shrink:0;color:#9ca3af;transition:transform .15s}.cd-custom-select-chevron.open{transform:rotate(180deg)}.cd-custom-select-menu{position:absolute;bottom:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 -4px 24px #0000001a,0 2px 6px #0000000f;z-index:200;overflow:hidden;max-height:220px;overflow-y:auto;animation:cd-select-in .12s ease}@keyframes cd-select-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.cd-custom-select-item{display:flex;align-items:center;gap:8px;padding:9px 12px;font-size:13px;color:#111827;cursor:pointer;transition:background .1s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cd-custom-select-item:hover{background:#fff7f0}.cd-custom-select-item.selected{color:var(--primary, #f97316);font-weight:500;background:#fff7f0}.cd-custom-select-item-placeholder{color:#9ca3af;font-style:italic}.cd-custom-select-item-placeholder:hover{background:#f9fafb}.cd-delivery-artifact-rows{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}.cd-delivery-artifact-row{display:flex;flex-direction:column;gap:10px;padding:14px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;transition:border-color .15s,box-shadow .15s}.cd-delivery-artifact-row:hover{border-color:#fdba74;box-shadow:0 1px 4px #f9731614}.cd-delivery-artifact-row-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.cd-delivery-artifact-order-btns{display:flex;align-items:center;gap:4px;flex-shrink:0}.cd-delivery-artifact-order-label{font-size:11px;font-weight:600;color:#9ca3af;min-width:20px;text-align:right}.cd-delivery-artifact-order-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;border:1px solid #e5e7eb;background:#f9fafb;color:#6b7280;cursor:pointer;transition:background .12s,border-color .12s,color .12s;padding:0}.cd-delivery-artifact-order-btn:hover:not(:disabled){background:#ffedd5;border-color:#fdba74;color:var(--primary, #f97316)}.cd-delivery-artifact-order-btn:disabled{opacity:.35;cursor:not-allowed}.cd-delivery-artifact-row-selects{display:flex;flex-direction:column;gap:8px}.cd-delivery-artifact-type{display:flex;align-items:center;gap:7px;min-width:120px;font-size:12px;font-weight:600;color:#374151}.cd-delivery-artifact-type svg{color:var(--primary, #f97316);flex-shrink:0}.cd-delivery-artifact-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:18px;padding:0 5px;background:#ffedd5;color:var(--primary, #f97316);font-size:10px;font-weight:700;border-radius:20px}.cd-settings-no-artifacts{font-size:13px;color:#9ca3af;font-style:italic;padding:8px 0}.cd-settings-save-row{padding:16px 22px;border-top:1px solid #f3f4f6;background:#fafafa;display:flex;justify-content:flex-end}.cd-settings-save-btn{display:flex;align-items:center;gap:7px;padding:9px 22px;border-radius:8px;font-size:13px;font-weight:600;color:#fff;background:var(--primary, #f97316);border:none;cursor:pointer;transition:background .15s,opacity .15s,box-shadow .15s;box-shadow:0 1px 3px #f973164d}.cd-settings-save-btn:hover{background:var(--primary-hover, #e05a0e);box-shadow:0 2px 8px #f9731659}.cd-settings-save-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.cd-settings-save-btn.saved{background:#16a34a;box-shadow:0 1px 3px #16a34a4d}.cd-history-backdrop{position:fixed;inset:0;background:transparent;z-index:200}.cd-history-drawer{position:fixed;top:0;right:0;bottom:0;width:440px;background:#f9fafb;z-index:201;display:flex;flex-direction:column;box-shadow:-2px 0 20px #00000014,-1px 0 #e5e7eb;animation:cd-slide-in .22s cubic-bezier(.22,1,.36,1)}@keyframes cd-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.cd-history-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb;background:#fff;flex-shrink:0}.cd-history-drawer-title-row{display:flex;align-items:center;gap:10px}.cd-history-drawer-icon{width:32px;height:32px;border-radius:8px;background:#f3f4f6;color:#6b7280;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cd-history-drawer-title{font-size:14px;font-weight:600;color:#111827;line-height:1.3}.cd-history-drawer-subtitle{font-size:12px;color:#6b7280;margin-top:2px}.cd-history-drawer-close{width:28px;height:28px;border-radius:6px;border:none;background:transparent;color:#9ca3af;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .12s,color .12s}.cd-history-drawer-close:hover{background:#f3f4f6;color:#374151}.cd-history-drawer-body{flex:1;overflow-y:auto;padding:16px 16px 32px}.cd-history-loading{display:flex;align-items:center;gap:10px;justify-content:center;padding:60px 0;color:#9ca3af;font-size:13px}.cd-history-spinner{width:18px;height:18px;border:2px solid #e5e7eb;border-top-color:var(--primary, #f97316);border-radius:50%;animation:spin .7s linear infinite}.cd-history-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:60px 0;color:#9ca3af;font-size:13px;text-align:center}.cd-history-timeline{display:flex;flex-direction:column;gap:0}.cd-history-item-wrap{display:flex;gap:10px;align-items:stretch}.cd-history-item-timeline{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:26px;min-width:26px;padding-top:14px;align-self:stretch;position:relative}.dh-timeline-dot{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;z-index:1}.dh-timeline-dot--success{background:#dcfce7;color:#16a34a;border:2px solid #bbf7d0}.dh-timeline-dot--failed{background:#fee2e2;color:#ef4444;border:2px solid #fecaca}.dh-timeline-dot--other{background:#f3f4f6;color:#9ca3af;border:2px solid #e5e7eb}.dh-timeline-line{position:absolute;left:50%;top:44px;bottom:-18px;width:2px;background:#e5e7eb;margin:0;min-height:0;transform:translate(-50%);z-index:0}.cd-history-item{flex:1;margin-bottom:8px;padding:10px 12px 8px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s}.cd-history-item:hover{border-color:#d1d5db;box-shadow:0 2px 6px #0000000f}.cd-history-item--current{border-color:#d1d5db;background:#fff;box-shadow:0 1px 4px #0000000f}.cd-history-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.cd-history-item-version{display:flex;align-items:center;gap:6px;font-size:13px;color:#374151}.cd-history-item-version svg{color:#9ca3af;flex-shrink:0}.cd-history-item-version strong{font-weight:700;color:#111827}.cd-history-item-current-badge{font-size:10px;font-weight:600;padding:2px 7px;border-radius:4px;background:#dbeafe;color:#1d4ed8;letter-spacing:.02em}.cd-history-item-status{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;flex-shrink:0}.cd-history-item-status-dot{width:6px;height:6px;border-radius:50%}.cd-history-item-status--success{color:#16a34a}.cd-history-item-status--success .cd-history-item-status-dot{background:#16a34a}.cd-history-item-status--failed{color:#ef4444}.cd-history-item-status--failed .cd-history-item-status-dot{background:#ef4444}.cd-history-item-status--running{color:#f59e0b}.cd-history-item-status--running .cd-history-item-status-dot{background:#f59e0b}.cd-history-item-status--pending{color:#9ca3af}.cd-history-item-status--pending .cd-history-item-status-dot{background:#9ca3af}.cd-history-item-notes{font-size:12px;color:#6b7280;margin-bottom:8px;line-height:1.4}.cd-history-item-notes--failed{color:#ef4444}.cd-history-item-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:6px;padding-top:6px;border-top:1px solid #f3f4f6}.cd-history-item-meta-item{display:flex;align-items:center;gap:4px;font-size:11px;color:#6b7280}.cd-history-item-meta-item svg{color:#9ca3af;flex-shrink:0}.cd-history-item-mode-pill{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;padding:2px 8px;border-radius:20px;background:#f3f4f6;color:#6b7280;margin-left:auto}.rp-promo-env-card-history-btn{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;gap:5px;font-size:12px;color:#6b7280;transition:color .12s}.rp-promo-env-card-history-btn:hover{color:var(--primary, #f97316)}@media(max-width:1100px){.cd-hero{flex-wrap:wrap}.cd-hero-actions{width:100%;justify-content:flex-end}}@media(max-width:900px){.cd-content-grid,.cd-overview-layout{grid-template-columns:1fr}.cd-hero{padding:12px 16px}.cd-breadcrumb{padding:12px 16px 0}.cd-tabs{padding:0 16px}.cd-content{padding:16px}.dh-wrap{margin-left:-16px;margin-right:-16px}}.dh-wrap{padding:0;display:flex;flex-direction:column;gap:0;background:#f7f7f6;min-height:100%;margin-top:-25px;margin-left:-28px;margin-right:-28px}.dh-filterbar{display:flex;align-items:center;gap:10px;padding:14px 24px;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:10}.dh-search-wrap{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:8px;background:#fff;min-width:240px}.dh-search{border:none;outline:none;font-size:13px;color:#374151;background:transparent;width:100%}.dh-search::placeholder{color:#9ca3af}.dh-filterbar-sep{width:1px;height:26px;background:#e5e7eb;flex-shrink:0}.dh-filter-group{position:relative}.dh-filter-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;font-size:13px;color:#374151;cursor:pointer;font-family:inherit;font-weight:500;transition:border-color .12s,background .12s;white-space:nowrap}.dh-filter-btn:hover{border-color:#d1d5db;background:#f9fafb}.dh-filter-btn.active{border-color:#f97316;color:#ea6c0a}.dh-filter-active-dot{width:6px;height:6px;border-radius:50%;background:#f97316;display:inline-block}.dh-filter-dropdown{position:absolute;top:calc(100% + 6px);left:0;background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0000001a;z-index:50;min-width:160px;padding:4px}.dh-filter-option{display:block;width:100%;text-align:left;padding:8px 12px;font-size:13px;color:#374151;background:transparent;border:none;border-radius:6px;cursor:pointer;font-family:inherit}.dh-filter-option:hover{background:#f9fafb}.dh-filter-option.selected{color:#ea6c0a;font-weight:600}.dh-filter-clear{font-size:12px;color:#9ca3af;background:transparent;border:none;cursor:pointer;padding:4px 6px;font-family:inherit;text-decoration:underline}.dh-filter-clear:hover{color:#6b7280}.dh-deploy-now-btn{display:flex;align-items:center;gap:6px;padding:9px 18px;background:#ea6c0a;color:#fff;border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .12s;white-space:nowrap;box-shadow:0 10px 18px #ea6c0a40}.dh-deploy-now-btn:hover{background:#c2570a}.dh-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:60px 0;color:#9ca3af;font-size:14px}.dh-spinner{width:18px;height:18px;border:2px solid #e5e7eb;border-top-color:#f97316;border-radius:50%;animation:dh-spin .7s linear infinite}.dh-empty{display:flex;flex-direction:column;align-items:center;padding:72px 0;gap:10px;text-align:center}.dh-empty-icon{width:64px;height:64px;background:#f9fafb;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:6px}.dh-empty-title{font-size:15px;font-weight:600;color:#374151;margin:0}.dh-empty-desc{font-size:13px;color:#9ca3af;margin:0;max-width:320px}.dh-list{display:flex;flex-direction:column;gap:16px;padding:24px 24px 32px;position:relative}.dh-list:before{content:"";position:absolute;left:41px;top:42px;bottom:42px;width:2px}.dh-load-more-wrap{display:flex;justify-content:center;padding:4px 0 8px}.dh-load-more-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:border-color .15s,box-shadow .15s,color .15s}.dh-load-more-btn:hover{border-color:#d1d5db;box-shadow:0 1px 4px #0000000f;color:#111827}.dh-load-more-count{font-size:11px;font-weight:400;color:#9ca3af}.dh-row{display:flex;align-items:flex-start;gap:16px;position:relative}.dh-row-icon{width:36px;height:36px;border-radius:50%;border:2px solid;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:13px;cursor:pointer;transition:opacity .12s;position:relative;z-index:2}.dh-row-icon:hover{opacity:.8}.dh-row-icon--promotion{border-color:#c7d2fe;background:#eef2ff;color:#4338ca}.dh-row-icon--deployment{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.dh-row-icon--rollback{border-color:#fed7aa;background:#fff7ed;color:#9a3412}.dh-status-dot--pending{background:#9ca3af}.dh-status-dot--running{background:#3b82f6;animation:dh-pulse 1.2s ease-in-out infinite}.dh-status-dot--success{background:#22c55e}.dh-status-dot--failed{background:#ef4444}.dh-status-dot--cancelled{background:#6b7280}@keyframes dh-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.4)}}.dh-card{flex:1;background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:box-shadow .12s;box-shadow:0 1px 4px #1e293b0f}.dh-card:hover{box-shadow:0 4px 16px #1e293b1a}.dh-card-summary{display:flex;align-items:center;gap:12px;padding:15px 18px;cursor:pointer}.dh-type-badge{font-size:11px;font-weight:500;padding:4px 10px;border-radius:6px;letter-spacing:.03em;white-space:nowrap;flex-shrink:0;border:1.5px solid transparent}.dh-type--deployment{background:#eef2ff;color:#4338ca;border-color:#c7d2fe}.dh-type--promotion{background:#f3e8ff;color:#6b21a8;border-color:#e9d5ff}.dh-type--rollback{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.dh-artifact{display:flex;align-items:center;font-size:10px;gap:5px;font-size:14px;flex-shrink:0;max-width:360px;overflow:hidden}.dh-artifact-type{color:#374151;font-weight:400}.dh-artifact-sep{color:#9ca3af}.dh-artifact-version{font-weight:400;color:#111827;font-family:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dh-env-route{display:flex;align-items:center;gap:6px;flex-shrink:0}.dh-env-badge{font-size:11px;font-weight:600;padding:3px 8px;border-radius:6px;letter-spacing:.03em;white-space:nowrap;border:1px solid}.dh-copy-id{display:flex;align-items:center;gap:5px;background:transparent;border:none;cursor:pointer;font-size:12px;font-family:SF Mono,Fira Code,monospace;padding:4px 8px;border-radius:5px;flex-shrink:0;color:#6b7280;transition:background .12s}.dh-copy-id:hover{background:#f3f4f6}.dh-copy-id-text{color:#6b7280}.dh-status-badge{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:400;padding:5px 12px;border-radius:999px;flex-shrink:0}.dh-status--pending{background:#f3f4f6;color:#4b5563}.dh-status--running{background:#eff6ff;color:#1d4ed8}.dh-status--success{background:#f0fdf4;color:#15803d}.dh-status--failed{background:#fef2f2;color:#991b1b}.dh-status--cancelled{background:#f3f4f6;color:#4b5563}.dh-status-badge .dh-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.dh-avatar{width:26px;height:26px;border-radius:50%;background:#6b7280;color:#fff;font-size:10px;font-weight:500;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.dh-avatar img{width:100%;height:100%;object-fit:cover}.dh-avatar--sm{width:22px;height:22px;font-size:9px}.dh-time{font-size:13px;color:#374151;margin-left:auto;white-space:nowrap;flex-shrink:0}.dh-duration{color:#6b7280;margin-left:4px}.dh-chevron{transition:transform .18s;flex-shrink:0}.dh-chevron.open{transform:rotate(180deg)}.dh-card-detail{border-top:1px solid #f3f4f6;padding:24px 20px;background:#fff}.dh-detail-cols{display:grid;grid-template-columns:320px 1fr;gap:40px;align-items:start}.dh-detail-section-title{font-size:11px;font-weight:500;letter-spacing:.08em;color:#9ca3af;margin-bottom:16px;text-transform:uppercase}.dh-detail-field{margin-bottom:16px}.dh-detail-label{font-size:13px;color:#6b7280;margin-bottom:4px;font-weight:400}.dh-detail-value{font-size:14px;color:#111827}.dh-detail-value--bold{font-weight:500;font-size:15px}.dh-detail-user{display:flex;align-items:center;gap:8px;font-size:14px;color:#111827}.dh-notes-box{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:14px 16px;font-size:13px;color:#374151;line-height:1.65}.dh-outputs-table{background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.dh-output-row{display:grid;grid-template-columns:160px 1fr;border-bottom:1px solid #f3f4f6}.dh-output-row:last-child{border-bottom:none}.dh-output-key{padding:10px 14px;font-family:SF Mono,Fira Code,monospace;font-size:12px;color:#6b7280;background:#f9fafb;border-right:1px solid #f3f4f6}.dh-output-val{padding:10px 14px;font-family:SF Mono,Fira Code,monospace;font-size:12px;color:#374151;word-break:break-all}.dh-output-link a{color:#2563eb;text-decoration:none}.dh-output-link a:hover{text-decoration:underline}.cd-promote-modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:9999;animation:cd-fade-in .15s ease}@keyframes cd-fade-in{0%{opacity:0}to{opacity:1}}.cd-promote-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000002e,0 4px 16px #00000014;width:420px;max-width:95vw;display:flex;flex-direction:column;animation:cd-modal-up .18s ease}@keyframes cd-modal-up{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.cd-promote-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 14px;border-bottom:1px solid #f3f4f6}.cd-promote-modal-title{display:flex;align-items:center;gap:8px;font-size:14px;color:#374151;font-weight:500}.cd-promote-modal-title svg{color:#7c3aed}.cd-promote-modal-title strong{color:#111827;font-weight:600}.cd-promote-modal-close{background:#f3f4f6;border:none;border-radius:6px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6b7280;transition:background .15s,color .15s}.cd-promote-modal-close:hover{background:#e5e7eb;color:#374151}.cd-promote-modal-body{padding:20px;display:flex;flex-direction:column;gap:16px}.cd-promote-field{display:flex;flex-direction:column;gap:6px}.cd-promote-label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.cd-promote-modal-footer{display:flex;align-items:center;gap:8px;padding:14px 20px 18px;border-top:1px solid #f3f4f6}.cd-promote-modal-footer .cd-deploy-result{flex:1;font-size:12px}.cd-promote-modal-cancel{background:#f3f4f6;border:none;border-radius:7px;padding:8px 16px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:background .15s;margin-left:auto}.cd-promote-modal-cancel:hover{background:#e5e7eb}.cd-promote-modal-confirm{display:flex;align-items:center;gap:6px;background:#7c3aed;border:none;border-radius:7px;padding:8px 18px;font-size:13px;font-weight:600;color:#fff;cursor:pointer;transition:background .15s,transform .1s,box-shadow .15s;box-shadow:0 2px 8px #7c3aed4d}.cd-promote-modal-confirm:hover:not(:disabled){background:#6d28d9;box-shadow:0 4px 14px #7c3aed66;transform:translateY(-1px)}.cd-promote-modal-confirm:active:not(:disabled){transform:translateY(0)}.cd-promote-modal-confirm:disabled{opacity:.5;cursor:not-allowed}@keyframes dc-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes dc-modal-in{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.dc-modal-overlay{position:fixed;inset:0;background:#0a122480;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:2100;display:flex;align-items:center;justify-content:center;padding:24px;animation:dc-overlay-in .15s ease}.dc-modal{background:#fff;border-radius:16px;width:100%;max-width:780px;max-height:88vh;display:flex;flex-direction:column;box-shadow:0 32px 80px #00000038,0 6px 20px #0000001a;overflow:hidden;animation:dc-modal-in .2s cubic-bezier(.34,1.56,.64,1)}.dc-modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px;border-bottom:1px solid #e8edf4;background:#fff}.dc-modal-title{font-size:18px;color:#111827;font-weight:600;line-height:1.4;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dc-modal-title-version{display:inline-block;font-size:15px;font-weight:500;color:#111827;background:#fff;border:1.5px solid #d1d5db;border-radius:6px;padding:1px 10px}.dc-modal-close{flex-shrink:0;width:30px;height:30px;border:none;background:transparent;cursor:pointer;color:#9ca3af;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0;transition:background .15s,color .15s}.dc-modal-close:hover{background:#f3f4f6;color:#374151}.dc-modal-flow{display:flex;align-items:center;gap:16px;padding:24px;background:#fff;border-bottom:1px solid #e8edf4}.dc-modal-flow-box{flex:1;border-radius:8px;border:1.5px solid #d1d5db;background:#fff;padding:16px 18px;display:flex;align-items:center;gap:14px}.dc-modal-flow-box-icon{flex-shrink:0;width:36px;height:36px;border-radius:8px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;color:#374151}.dc-modal-flow-box-content{display:flex;flex-direction:column;gap:2px;min-width:0}.dc-modal-flow-arrow{flex-shrink:0;display:flex;align-items:center;color:#9ca3af}.dc-modal-flow-box-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;margin-bottom:2px}.dc-modal-flow-box-name{font-size:15px;font-weight:600;color:#111827}.dc-modal-flow-box-sub{font-size:12px;color:#6b7280;margin-top:1px}.dc-modal-changes{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}.dc-modal-changes-header{padding:16px 24px 0;display:flex;align-items:center;justify-content:space-between}.dc-modal-changes-title{font-size:12px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.06em}.dc-modal-tabs{display:flex;align-items:center;gap:0;padding:0 24px;border-bottom:1px solid #e5e7eb}.dc-modal-tab{font-size:14px;font-weight:500;color:#6b7280;background:transparent;border:none;border-bottom:2px solid transparent;padding:14px 4px 12px;margin-right:20px;margin-bottom:-1px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:color .15s,border-color .15s;white-space:nowrap}.dc-modal-tab:hover{color:#111827}.dc-modal-tab.active{color:#111827;border-bottom-color:#111827;font-weight:600}.dc-modal-tab-count{font-size:12px;font-weight:500;background:#e5e7eb;color:#6b7280;border-radius:20px;padding:1px 8px;line-height:1.6;transition:background .15s,color .15s}.dc-modal-tab.active .dc-modal-tab-count{background:#dbeafe;color:#1d4ed8}.dc-modal-rollback-badge{margin-left:auto;font-size:11px;font-weight:600;color:#b45309;background:#fffbeb;border:1px solid #fcd34d;border-radius:20px;padding:2px 10px}.dc-modal-tab-body{flex:1;overflow-y:auto;min-height:0;padding:12px 24px;display:flex;flex-direction:column;gap:10px}.dc-modal-tab-body::-webkit-scrollbar{width:5px}.dc-modal-tab-body::-webkit-scrollbar-track{background:transparent}.dc-modal-tab-body::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:99px}.dc-modal-tab-body::-webkit-scrollbar-thumb:hover{background:#9ca3af}.dc-modal-rn-loading{display:flex;align-items:center;gap:10px;padding:24px 0;color:#6b7280;font-size:13px}.dc-modal-rn-spinner{width:18px;height:18px;border:2.5px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;animation:cd-spin .7s linear infinite;flex-shrink:0}.dc-modal-rn-error{padding:14px 16px;font-size:13px;color:#dc2626;background:#fef2f2;border-radius:8px;border:1px solid #fecaca}.dc-modal-rn-empty{padding:32px 0;font-size:13px;color:#9ca3af;text-align:center}.dc-modal-commits-list{display:flex;flex-direction:column;gap:10px;width:100%}.dc-modal-commit-row{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;transition:background .1s}.dc-modal-commit-row:hover{background:#f9fafb}.dc-modal-commit-avatar{width:36px;height:36px;border-radius:50%;background:#d1d5db;color:#374151;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.dc-modal-commit-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}.dc-modal-commit-msg{font-size:14px;color:#111827;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.dc-modal-commit-sub{display:flex;align-items:center;gap:6px}.dc-modal-commit-sha{font-family:SF Mono,Fira Code,monospace;font-size:12px;color:#374151;font-weight:500;background:#f3f4f6;border-radius:4px;padding:1px 7px;flex-shrink:0;text-decoration:none}.dc-modal-commit-sha-link:hover{background:#e0e7ff;color:#2563eb;text-decoration:underline}.dc-modal-commit-dot{color:#9ca3af;font-size:12px}.dc-modal-commit-author,.dc-modal-commit-date{font-size:12px;color:#6b7280}.dc-modal-commit-jira-pills{display:flex;flex-wrap:wrap;gap:6px;flex-shrink:0;margin-left:auto;padding-left:12px}.dc-modal-commit-jira-pill{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;color:#374151;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;padding:4px 10px;white-space:nowrap}.dc-modal-jira-list{display:flex;flex-direction:column;gap:10px;width:100%}.dc-modal-jira-row{display:flex;align-items:center;padding:12px 16px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;transition:background .1s}.dc-modal-jira-row:hover{background:#f9fafb}.dc-modal-jira-key{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:#374151;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;padding:4px 10px;white-space:nowrap}.dc-modal-sysvars{margin:0 24px 16px;border:1px solid #e8edf4;border-radius:8px;overflow:hidden}.dc-modal-sysvars-title{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#f8fafc;border-bottom:1px solid #e8edf4;font-size:11px;font-weight:600;color:#64748b;letter-spacing:.04em;text-transform:uppercase}.dc-modal-sysvars-title svg{color:#f56816;flex-shrink:0}.dc-modal-sysvars-list{display:flex;flex-direction:column}.dc-modal-sysvar-row{display:flex;align-items:center;gap:8px;padding:7px 14px;border-bottom:1px solid #f1f5f9;font-size:12.5px}.dc-modal-sysvar-row:last-child{border-bottom:none}.dc-modal-sysvar-key{font-family:SF Mono,Fira Code,monospace;font-size:11.5px;font-weight:600;color:#0f172a;background:#f1f5f9;padding:2px 6px;border-radius:4px;min-width:160px;flex-shrink:0}.dc-modal-sysvar-eq{color:#94a3b8;font-size:12px;flex-shrink:0}.dc-modal-sysvar-val{color:#f56816;font-family:SF Mono,Fira Code,monospace;font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dc-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 24px;border-top:1px solid #e8edf4;background:#fafbfc}.dc-modal-cancel-btn{padding:8px 20px;border:1.5px solid #e2e8f0;background:#fff;border-radius:9px;font-size:13px;font-weight:600;color:#475569;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.dc-modal-cancel-btn:hover{background:#f1f5f9;border-color:#cbd5e1;color:#334155}.dc-modal-confirm-btn{display:flex;align-items:center;gap:7px;padding:8px 22px;background:linear-gradient(135deg,#f56816,#e04e05);border:none;border-radius:9px;font-size:13px;font-weight:700;color:#fff;cursor:pointer;box-shadow:0 2px 10px #f5681659;transition:opacity .15s,box-shadow .15s,transform .1s}.dc-modal-confirm-btn:hover{opacity:.92;box-shadow:0 5px 16px #f5681673;transform:translateY(-1px)}.dc-modal-confirm-btn:active{transform:translateY(0);opacity:1}.dh-pipeline-run{padding:18px 20px 16px;border-top:1px solid #f1f5f9}.dh-pipeline-loading,.dh-pipeline-empty{font-size:13px;color:#94a3b8;padding:8px 0}.dh-stage-list{display:flex;flex-direction:column;gap:6px}.dh-stage-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;background:#f8fafc;border:1px solid #e9eef5;font-size:13px}.dh-stage-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dh-stage-row--success .dh-stage-dot{background:#22c55e}.dh-stage-row--failed .dh-stage-dot{background:#ef4444}.dh-stage-row--running .dh-stage-dot{background:#f59e0b}.dh-stage-name{font-weight:500;color:#1e293b;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dh-stage-spacer{flex:1}.dh-stage-dur{font-size:12px;color:#64748b;flex-shrink:0}.dh-stage-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;flex-shrink:0}.dh-stage-badge--success{background:#dcfce7;color:#15803d}.dh-stage-badge--failed{background:#fee2e2;color:#b91c1c}.dh-stage-badge--running{background:#fef3c7;color:#b45309}.dh-open-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;color:#475569;font-size:12px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.dh-open-btn:hover{background:#f1f5f9;border-color:#94a3b8;color:#1e293b}.cd-deploying-overlay{position:fixed;inset:0;z-index:9999;background:#0f172a8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;pointer-events:all}.cd-deploying-overlay-card{background:#fff;border-radius:14px;box-shadow:0 12px 40px #00000029;padding:28px 36px;display:flex;flex-direction:column;align-items:center;gap:10px;min-width:260px;max-width:340px;text-align:center}.cd-deploying-rocket{color:#ea580c;animation:cd-rocket-pulse .7s ease-in-out infinite alternate;display:flex;align-items:center;justify-content:center}@keyframes cd-rocket-pulse{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(-6px) scale(1.12);opacity:.75}}.cd-deploying-overlay-title{font-size:15px;font-weight:600;color:#111827}.cd-deploying-overlay-sub{font-size:12px;color:#6b7280;line-height:1.5}.cd-deploying-overlay-sub strong{color:#374151;font-weight:600}.dd-root{display:flex;flex-direction:column;height:100%;background:#f7f7f6;position:relative}.dd-subbar{display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:48px;background:#fff;border-bottom:1px solid #e9eef5;flex-shrink:0;gap:16px}.dd-subbar-left{display:flex;align-items:center;gap:10px;min-width:0}.dd-back-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;border:1px solid #e2e8f0;background:#fff;color:#475569;cursor:pointer;flex-shrink:0;transition:background .15s,border-color .15s}.dd-back-btn:hover{background:#f1f5f9;border-color:#94a3b8}.dd-breadcrumb{display:flex;align-items:center;gap:6px;font-size:13px}.dd-breadcrumb-muted{color:#94a3b8}.dd-breadcrumb-sep{color:#cbd5e1;font-size:12px}.dd-breadcrumb-active{color:#1e293b;font-weight:600}.dd-subbar-right{display:flex;align-items:center;gap:12px;flex-shrink:0;font-size:13px}.dd-type-badge{font-size:11px;font-weight:400;padding:2px 8px;border-radius:5px;border:1.5px solid;letter-spacing:.04em;text-transform:uppercase}.dd-type-badge--deployment{background:#eef2ff;color:#4338ca;border-color:#c7d2fe}.dd-type-badge--promotion{background:#f3e8ff;color:#6b21a8;border-color:#e9d5ff}.dd-type-badge--rollback{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.dd-subbar-name{font-weight:600;color:#1e293b;white-space:nowrap}.dd-subbar-at{color:#94a3b8;font-weight:400}.dd-subbar-artifact-type{display:inline-block;margin:0 5px;padding:1px 7px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:5px;font-size:11px;font-weight:500;color:#334155;vertical-align:middle;text-transform:lowercase}.dd-env-badge{font-size:11px;font-weight:400;padding:2px 9px;border-radius:6px;border:1.5px solid #f59e0b;color:#b45309;background:#fffbeb;letter-spacing:.04em;text-transform:uppercase}.dd-subbar-status{display:flex;align-items:center;gap:6px}.dd-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.dd-subbar-dur{color:#64748b;font-size:13px}.dd-tabs{display:flex;align-items:center;padding:0 20px;gap:2px;background:#fff;border-bottom:1px solid #e9eef5;flex-shrink:0}.dd-tab{position:relative;padding:11px 16px;font-size:13px;font-weight:500;color:#64748b;background:transparent;border:none;border-radius:8px 8px 0 0;cursor:pointer;transition:color .15s,background .15s;white-space:nowrap;margin-bottom:-1px}.dd-tab:hover{color:#1e293b;background:#f8fafc}.dd-tab--active{color:#1d0d0d;font-weight:600;background:#fff8f5}.dd-tab--active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#e8580c;border-radius:2px 2px 0 0}.dd-body{flex:1;overflow:hidden;padding:0;display:flex;flex-direction:column;position:relative;margin-top:12px}.dd-body--drawer-open{flex-direction:row}.dd-body--drawer-open .dd-canvas{flex:1;min-width:0}.dd-body--drawer-open .dd-stage-drawer{min-height:0}.dd-canvas{flex:1;overflow:hidden;position:relative;margin-top:16px;background:linear-gradient(to right,rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(0,0,0,.05) 1px,transparent 1px),#f7f7f6;background-size:30px 30px,30px 30px,auto;-webkit-user-select:none;user-select:none}.dd-canvas[data-dragging]{cursor:grabbing!important}.dd-canvas-empty{display:flex;align-items:center;justify-content:center;min-height:300px;font-size:13px;color:#94a3b8}.dd-canvas .rp-canvas-flow{min-width:unset!important;margin:auto;align-items:center}.dd-parallel-group{position:relative;border:1.5px dashed rgba(234,88,12,.4);border-radius:18px;padding:12px;background:#fbf3ee73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dd-parallel-label{position:absolute;top:-9px;left:14px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#c2410c;background:#fff7f3;padding:0 7px;border-radius:4px;line-height:18px;border:1px dashed rgba(194,65,12,.3)}.dd-canvas .rp-canvas-phase{width:260px;min-height:40px;border-radius:16px;border:none;outline:1px solid rgba(255,255,255,.55);box-shadow:0 2px #ffffffd9 inset,0 -1px #b4c8e640 inset,0 8px 32px #648cc821,0 2px 8px #0f172412;background:linear-gradient(145deg,#ffffffbf,#ebf4ff8c,#dcebff73);backdrop-filter:blur(20px) saturate(200%) brightness(1.04);-webkit-backdrop-filter:blur(20px) saturate(200%) brightness(1.04);transition:box-shadow .22s ease,background .22s ease,transform .18s ease;overflow:visible;position:relative}.dd-canvas .rp-canvas-phase:before{content:"";position:absolute;inset:0;border-radius:16px;background:linear-gradient(145deg,rgba(255,255,255,.5) 0%,transparent 60%);pointer-events:none}.dd-canvas .rp-canvas-phase:hover{transform:translateY(-2px);background:linear-gradient(145deg,#ffffffe0,#ebf4ffad,#dae8ff94);box-shadow:0 2px #fffffff2 inset,0 -1px #b4c8e64d inset,0 16px 48px #648cc82e,0 4px 12px #0f172417}.dd-phase-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px 8px;margin-bottom:0}.dd-phase-name{font-size:13px;font-weight:700;color:#0f172a;letter-spacing:-.01em}.dd-phase-count{height:20px;padding:0 7px;border-radius:999px;background:#f1f4f8;color:#5a6478;display:flex;align-items:center;font-size:11px;font-weight:600;white-space:nowrap}.dd-phase-body{display:flex;flex-direction:column;gap:6px;padding:0 10px 10px;border-top:1px solid rgba(180,200,230,.2)}.dd-stage-node{padding:9px 10px;border-radius:10px;background:#ffffff80;border:1px solid rgba(255,255,255,.65);box-shadow:inset 0 1px #ffffffe6,0 1px 4px #0f17240f;cursor:pointer;transition:background .15s ease,box-shadow .15s ease,transform .15s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.dd-stage-node:hover{background:#ffffffc7;transform:translate(2px);box-shadow:inset 0 1px #fffffff2,0 2px 10px #0f172417}.dd-stage-node--selected{background:#fff5edcc;border:1.5px solid rgba(253,186,140,.9);box-shadow:inset 0 1px #ffffffe6,0 2px 10px #ea580c1a}.dd-stage-node-header{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:0}.dd-stage-node-info{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.dd-stage-node-name{font-size:13px;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dd-stage-node-sub{font-size:11px;color:#8a95a3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dd-node-stage-icon{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,#fff0e8,#fde0cc);display:flex;align-items:center;justify-content:center;flex-shrink:0}.dd-node-status-icon{width:26px;height:26px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;border:1px solid rgba(0,0,0,.08);flex-shrink:0;position:relative}.dd-node-status-icon--success{background:#16a34a;border-color:#16a34a}.dd-node-status-icon--failed{background:#dc2626;border-color:#dc2626}.dd-node-status-icon--running{background:#ea580c;border-color:#ea580c}.dd-node-status-icon--pending{background:#94a3b8;border-color:#94a3b8}.dd-node-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.dd-stage-card-badge{height:28px;padding:0 12px;border-radius:999px;display:flex;align-items:center;font-size:12px;font-weight:700;white-space:nowrap}.dd-stage-card-dur{font-size:13px;font-weight:500;color:#7e8b9a;font-variant-numeric:tabular-nums}.dd-start-node{display:flex;flex-direction:column;align-items:center;gap:12px;-webkit-user-select:none;user-select:none;flex-shrink:0;min-width:108px}.dd-start-entry-label{height:24px;padding:0 10px;border-radius:999px;background:#fff;color:#475569;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;letter-spacing:.02em;white-space:nowrap;box-shadow:0 8px 18px #0f17240d}.dd-start-outer-ring{width:78px;height:78px;border-radius:50%;background:linear-gradient(180deg,#fffffffa,#f8fafcf0);box-shadow:0 16px 34px #0f172414,inset 0 1px #ffffffeb;display:flex;align-items:center;justify-content:center;position:relative}.dd-start-accent-ring{position:absolute;inset:6px;border-radius:50%;border:1px solid #ff6a00;opacity:.9}.dd-start-circle{width:54px;height:54px;border-radius:50%;background:linear-gradient(180deg,#0f1724,#1a2232);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px #0f17242e,inset 0 1px #ffffff14;position:relative;z-index:1}.dd-start-label-group{display:flex;flex-direction:column;align-items:center;gap:6px}.dd-start-label{font-size:11px;font-weight:700;letter-spacing:.16em;color:#0f1724;white-space:nowrap}.dd-start-ready-badge{height:24px;padding:0 8px;border-radius:999px;background:#fff1e7;color:#c2410c;display:flex;align-items:center;font-size:11px;font-weight:700;white-space:nowrap}.dd-canvas .rp-canvas-connector-line{width:48px;height:2px;background:#c8d0dc}.dd-canvas .rp-canvas-connector-arrow{border-left-color:#c8d0dc;border-top-width:5px;border-bottom-width:5px;border-left-width:8px}.dd-zoom-controls{position:absolute;bottom:20px;right:20px;pointer-events:all;display:flex;align-items:center;gap:4px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:5px 10px;box-shadow:0 4px 16px #0f172414;z-index:100}.dd-zoom-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;background:none;color:#475569;cursor:pointer;border-radius:6px;transition:background .12s}.dd-zoom-btn:hover{background:#f1f5f9;color:#1e293b}.dd-zoom-label{font-size:13px;font-weight:500;color:#475569;min-width:38px;text-align:center;font-variant-numeric:tabular-nums}.dd-zoom-divider{width:1px;height:18px;background:#e2e8f0;margin:0 4px}@keyframes dd-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dd-icon-running{animation:dd-spin 1.8s linear infinite;transform-origin:center}.dd-stage-drawer{width:520px;flex-shrink:0;background:#fff;border-left:1px solid #e9eef5;display:flex;flex-direction:column;box-shadow:-4px 0 24px #00000012;animation:dd-drawer-in .18s ease;overflow:hidden;min-height:0}@keyframes dd-drawer-in{0%{transform:translate(16px);opacity:0}to{transform:translate(0);opacity:1}}.dd-drawer-header{flex-shrink:0;border-bottom:1px solid #e9eef5;background:#fff}.dd-drawer-header-top{display:flex;align-items:flex-start;gap:12px;padding:18px 20px 14px}.dd-drawer-icon{width:36px;height:36px;border-radius:10px;background:linear-gradient(180deg,#fff4ee,#ffe8d6);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.dd-drawer-title-wrap{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.dd-drawer-title{font-size:15px;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dd-drawer-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dd-drawer-meta-text{font-size:12px;color:#94a3b8}.dd-drawer-meta-triggered{display:inline-flex;align-items:center;gap:4px;padding-left:8px;border-left:1px solid #e2e8f0;color:#64748b}.dd-drawer-status-pill{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:700}.dd-drawer-status-pill--success{background:#dcfce7;color:#15803d}.dd-drawer-status-pill--failed{background:#fee2e2;color:#b91c1c}.dd-drawer-status-pill--running{background:#eff6ff;color:#1d4ed8}.dd-drawer-status-pill--pending{background:#f1f5f9;color:#475569}.dd-drawer-tabs{display:flex;align-items:flex-end;padding:0 20px;gap:20px}.dd-drawer-tab{padding:8px 0;font-size:13px;font-weight:500;color:#64748b;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s,border-color .15s;margin-bottom:-1px}.dd-drawer-tab:hover{color:#1e293b}.dd-drawer-tab--active{color:#e8580c;border-bottom-color:#e8580c;font-weight:600}.dd-drawer-content{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.dd-drawer-panel{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column}.dd-stage-drawer-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #e2e8f0;border-radius:7px;background:#fff;color:#64748b;cursor:pointer;transition:background .12s,border-color .12s;flex-shrink:0}.dd-stage-drawer-close:hover{background:#f1f5f9;border-color:#94a3b8}.dd-terminal-chrome{flex:1;display:flex;flex-direction:column;overflow:hidden;border-radius:10px;margin:12px 16px;background:#1a1f2e;box-shadow:0 8px 32px #00000073;min-height:0}.dd-terminal-titlebar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:#252b3b;border-radius:10px 10px 0 0;flex-shrink:0}.dd-terminal-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.dd-terminal-dot--red{background:#ff5f57}.dd-terminal-dot--yellow{background:#febc2e}.dd-terminal-dot--green{background:#28c840}.dd-terminal-title{margin-left:8px;font-family:IBM Plex Mono,Fira Code,monospace;font-size:12px;color:#8b9abf;letter-spacing:.02em}.dd-terminal-body{flex:1;overflow-y:auto;padding:10px 0 16px;background:#1a1f2e;border-radius:0 0 10px 10px}.dd-log-terminal{flex:1;overflow-y:auto;background:#1a1f2e;font-family:IBM Plex Mono,Fira Code,Consolas,monospace;font-size:12px;line-height:1.6;padding:12px 0}.dd-log-loading,.dd-log-empty{padding:24px 20px;color:#64748b;font-family:IBM Plex Mono,Fira Code,monospace;font-size:12px}.dd-log-line{display:flex;align-items:baseline;gap:0;padding:2px 16px;min-height:24px;font-family:IBM Plex Mono,Fira Code,Consolas,monospace;font-size:12.5px;line-height:1.65}.dd-log-line:hover{background:#ffffff0d}.dd-log-num{width:28px;text-align:right;color:#3d4a63;font-size:11px;flex-shrink:0;-webkit-user-select:none;user-select:none;padding-right:16px}.dd-log-ts{width:110px;color:#5a7092;font-size:11.5px;flex-shrink:0;padding-right:16px}.dd-log-level{width:44px;font-size:12px;font-weight:700;flex-shrink:0;padding-right:16px;letter-spacing:.03em}.dd-log-level--info{color:#4d9de0}.dd-log-level--warn{color:#e8a838}.dd-log-level--error,.dd-log-level--fatal{color:#e05252}.dd-log-level--debug{color:#6b7280}.dd-log-level--out{color:#6b7e9e}.dd-log-level--done{color:#3fc56b}.dd-log-msg{flex:1;color:#cdd6f4;white-space:pre-wrap;word-break:break-word}.dd-log-raw{padding:12px 16px;color:#cdd6f4;white-space:pre-wrap;word-break:break-all;font-size:12px;line-height:1.6;font-family:IBM Plex Mono,Fira Code,monospace}.dd-log-line--done .dd-log-msg{color:#3fc56b;font-weight:600}.dd-log-line--error .dd-log-msg,.dd-log-line--fatal .dd-log-msg{color:#fc8a8a}.dd-log-line--warn .dd-log-msg{color:#e8c56a}.dd-log-line--info .dd-log-msg{color:#cdd6f4}.dd-vars-table{flex:1;min-height:0;overflow-y:auto;background:#fff}.dd-vars-empty{padding:24px 20px;color:#94a3b8;font-size:13px}.dd-vars-header{display:grid;grid-template-columns:140px 1fr 90px;padding:5px 16px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.dd-vars-col-key,.dd-vars-col-val,.dd-vars-col-src{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8}.dd-vars-row{display:grid;grid-template-columns:140px 1fr 90px;padding:7px 16px;border-bottom:1px solid #f1f5f9;align-items:start}.dd-vars-row:last-child{border-bottom:none}.dd-vars-key{font-size:11px;font-weight:700;color:#1e293b;word-break:break-word}.dd-vars-val{font-size:11px;color:#334155;word-break:break-all;font-family:IBM Plex Mono,Fira Code,monospace;padding-right:8px}.dd-vars-src{font-size:10px;color:#94a3b8;font-style:italic}.dd-rn{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#f8fafc}.dd-rn-hero{padding:28px 32px 20px;background:#fff;border-bottom:1px solid #e9eef5;flex-shrink:0}.dd-rn-title{font-size:20px;font-weight:700;color:#0f172a;margin:0 0 10px;line-height:1.3}.dd-rn-title-version{color:#0f172a}.dd-rn-hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.dd-rn-meta{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.dd-rn-meta-item{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:#64748b}.dd-rn-meta-item svg{flex-shrink:0}.dd-rn-tabs{display:flex;gap:2px;background:#f1f5f9;padding:3px;border-radius:8px;flex-shrink:0}.dd-rn-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;font-size:12.5px;font-weight:500;color:#64748b;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .15s}.dd-rn-tab:hover{color:#1e293b}.dd-rn-tab--active{background:#fff;color:#0f172a;font-weight:600;box-shadow:0 1px 3px #00000014}.dd-rn-tab-count{font-size:11px;font-weight:600;padding:1px 6px;border-radius:20px;background:#cbd5e1;color:#334155}.dd-rn-tab--active .dd-rn-tab-count{background:#fee2e2;color:#c2410c}.dd-rn-body{flex:1;overflow-y:auto;padding:24px 32px;display:flex;flex-direction:column;gap:28px}.dd-rn-section{background:#fff;border:1px solid #e9eef5;border-radius:10px;display:flex;flex-direction:column;max-height:480px;overflow:hidden}.dd-rn-commit-list,.dd-rn-jira-list{overflow-y:auto;flex:1}.dd-rn-section-header{display:none}.dd-rn-section-title{font-size:14px;font-weight:600;color:#0f172a}.dd-rn-section-count{font-size:11px;font-weight:600;color:#475569;background:#e2e8f0;padding:1px 8px;border-radius:20px}.dd-rn-section-empty{padding:20px;font-size:13px;color:#94a3b8;text-align:center}.dd-rn-commit-row{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid #f8fafc;transition:background .12s}.dd-rn-commit-row:last-child{border-bottom:none}.dd-rn-commit-row:hover{background:#fafbfc}.dd-rn-commit-group{margin-bottom:12px}.dd-rn-commit-group:last-child{margin-bottom:0}.dd-rn-commit-group-title{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#6b7280;margin:8px 0 4px;padding:0 20px}.dd-rn-jira-group{margin-bottom:12px}.dd-rn-jira-group:last-child{margin-bottom:0}.dd-rn-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#e2e8f0,#cbd5e1);color:#475569;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dd-rn-commit-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.dd-rn-commit-subject{font-size:13.5px;font-weight:500;color:#1e293b;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dd-rn-commit-sub{display:flex;align-items:center;gap:8px}.dd-rn-commit-sha{font-family:IBM Plex Mono,Fira Code,monospace;font-size:11px;font-weight:600;color:#c2410c;background:#ffedd5;padding:1px 6px;border-radius:4px}.dd-rn-commit-author{font-size:11.5px;color:#475569;font-weight:500}.dd-rn-commit-time{font-size:11.5px;color:#94a3b8}.dd-rn-commit-time:before{content:"· "}.dd-rn-commit-keys{display:flex;gap:4px;flex-shrink:0}.dd-rn-jira-badge{font-size:11px;font-weight:600;color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;padding:2px 7px;border-radius:4px;font-family:IBM Plex Mono,Fira Code,monospace;white-space:nowrap}.dd-rn-jira-row{display:flex;align-items:center;gap:10px;padding:14px 20px;border-bottom:1px solid #f8fafc;cursor:pointer;transition:background .12s}.dd-rn-jira-row:last-child{border-bottom:none}.dd-rn-jira-row:hover{background:#fafbfc}.dd-rn-jira-icon{width:28px;height:28px;border-radius:6px;background:#dbeafe;color:#1d4ed8;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dd-rn-jira-title{flex:1;font-size:13.5px;font-weight:500;color:#1e293b}.dd-rn-jira-key-pill{font-size:11px;font-weight:600;color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;padding:2px 8px;border-radius:4px;font-family:IBM Plex Mono,Fira Code,monospace}.dd-rn-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#94a3b8;font-size:13px;text-align:center;padding:48px 24px}.dd-rn-empty p{margin:0;line-height:1.6}.dd-rn-empty--error{color:#ef4444}.dd-rn-error-wrap{padding:20px 24px}.dd-rn-error-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 8px;background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;border-radius:6px;font-size:12px;font-weight:500}.dd-rn-error-view-btn{margin-left:6px;padding:2px 8px;background:#fff;border:1px solid #fca5a5;border-radius:4px;color:#b91c1c;font-size:11px;font-weight:500;cursor:pointer;transition:background .12s}.dd-rn-error-view-btn:hover{background:#fee2e2}.dd-rn-error-modal-backdrop{position:fixed;inset:0;background:#0000004d;z-index:500;display:flex;align-items:center;justify-content:center}.dd-rn-error-modal{background:#fff;border-radius:10px;box-shadow:0 8px 32px #00000026;width:560px;max-width:90vw;max-height:70vh;display:flex;flex-direction:column;overflow:hidden}.dd-rn-error-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #e5e7eb;font-size:13px;font-weight:600;color:#111827}.dd-rn-error-modal-close{width:26px;height:26px;border:none;background:transparent;color:#9ca3af;cursor:pointer;border-radius:5px;display:flex;align-items:center;justify-content:center;transition:background .12s}.dd-rn-error-modal-close:hover{background:#f3f4f6;color:#374151}.dd-rn-error-modal-body{padding:16px;font-size:11px;color:#374151;line-height:1.6;white-space:pre-wrap;word-break:break-all;overflow-y:auto;margin:0;background:#f9fafb;font-family:ui-monospace,monospace}.dd-rn-spinner{width:28px;height:28px;border:2px solid #e2e8f0;border-top-color:#e8580c;border-radius:50%;animation:dd-spin .8s linear infinite}.dd-view-summary-pill{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:8px 18px;background:#fff;border:1px solid #e5e7eb;border-radius:999px;box-shadow:0 2px 8px #0000001a;font-size:13px;font-weight:600;color:#111827;cursor:pointer;white-space:nowrap;z-index:10;transition:box-shadow .15s,background .15s}.dd-view-summary-pill:hover{background:#f9fafb;box-shadow:0 4px 14px #00000021}.dd-summary-overlay{position:absolute;inset:0;background:transparent;z-index:110;display:flex;align-items:flex-end;padding:0 12px 68px;pointer-events:none;animation:rdd-drawer-fade-in .2s ease}.dd-summary-drawer{width:100%;height:200px;background:#fff;border-radius:14px;box-shadow:0 -6px 32px #00000021;display:flex;flex-direction:column;overflow:hidden;pointer-events:all;animation:rdd-drawer-slide-up .28s cubic-bezier(.22,1,.36,1)}.dd-summary-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px 13px;border-bottom:1px solid #f0f0f0;flex-shrink:0}.dd-summary-header-left{display:flex;align-items:center;gap:10px}.dd-summary-header-icon{width:32px;height:32px;border-radius:8px;background:#fff7ed;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dd-summary-header-right{display:flex;align-items:center;gap:8px}.rdd-comp-drawer-badge-dot--red{background:#ef4444}.rdd-comp-drawer-badge-dot--blue{background:#3b82f6}.rdd-root{display:flex;flex-direction:column;height:100vh;background:#f7f7f6;background-image:radial-gradient(circle,#d1d5db 1px,transparent 1px);background-size:24px 24px}.rdd-topbar-info-pill{display:flex;align-items:center;gap:8px;padding:6px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:999px;box-shadow:0 1px 4px #0000000f}.rdd-topbar-sep{width:1px;height:14px;background:#e5e7eb;flex-shrink:0}.rdd-loading{display:flex;align-items:center;justify-content:center;height:100vh;font-size:14px;color:#9ca3af}.rdd-body{flex:1;overflow-y:auto;padding:28px 32px}.rdd-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:20px;background:#e5e7eb;color:#374151;font-size:10px;font-weight:600;margin-left:6px;transition:background .2s,color .2s}.rdd-root .dd-tabs{padding:0 24px;gap:4px;background:#fff;border-bottom:1.5px solid #ebebea}.rdd-root .dd-tab{padding:12px 18px;font-size:13.5px;font-weight:500;color:#9ca3af;border-radius:0;letter-spacing:.01em;transition:color .18s}.rdd-root .dd-tab:hover{color:#374151;background:transparent}.rdd-root .dd-tab--active{color:#111827;font-weight:650;background:transparent}.rdd-root .dd-tab--active:after{height:2.5px;background:linear-gradient(90deg,#e8580c,#f97316);border-radius:2px 2px 0 0;bottom:-1.5px}.rdd-root .dd-tab--active .rdd-tab-count{background:#fff2ea;color:#c2410c}.rdd-status-badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:400;padding:4px 12px;border-radius:20px;white-space:nowrap;background:#f1f3f5;color:#374151}.rdd-status-badge--success{background:#dcfce7;color:#15803d}.rdd-status-badge--failed{background:#fee2e2;color:#b91c1c}.rdd-status-badge--running{background:#dbeafe;color:#1d4ed8}.rdd-status-badge--pending{background:#f1f3f5;color:#374151}.rdd-status-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.rdd-overview{display:flex;flex-direction:column;gap:24px}.rdd-meta-row{display:flex;gap:12px;flex-wrap:wrap}.rdd-meta-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:14px 18px;display:flex;flex-direction:column;gap:6px;min-width:130px}.rdd-meta-label{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em}.rdd-meta-value{font-size:13px;font-weight:500;color:#111827}.rdd-section{background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.rdd-section-header{display:flex;align-items:center;gap:8px;padding:14px 18px;border-bottom:1px solid #f3f4f6}.rdd-section-title{font-size:13px;font-weight:600;color:#111827}.rdd-section-count{font-size:11px;font-weight:600;color:#374151;background:#f3f4f6;border-radius:20px;padding:1px 8px}.rdd-comp-list{display:flex;flex-direction:column}.rdd-comp-card{border-bottom:1px solid #f3f4f6}.rdd-comp-card:last-child{border-bottom:none}.rdd-comp-header{display:flex;align-items:center;gap:10px;padding:12px 18px;cursor:pointer;transition:background .12s}.rdd-comp-header:hover{background:#f9fafb}.rdd-comp-icon{width:28px;height:28px;border-radius:50%;background:#eff2ff;color:#4f46e5;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rdd-comp-name{font-size:13px;font-weight:600;color:#111827;min-width:120px}.rdd-comp-versions{display:flex;align-items:center;gap:6px}.rdd-comp-artifacts{display:flex;flex-direction:column;gap:4px}.rdd-comp-artifact-row{display:flex;align-items:center;gap:6px}.rdd-comp-artifact-key{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#6b7280;background:#f8fafc;border:1px solid #e5e7eb;border-radius:999px;padding:2px 8px;white-space:nowrap}.rdd-ver{font-size:11px;font-family:monospace;padding:2px 8px;border-radius:4px}.rdd-ver.from{background:#f3f4f6;color:#374151}.rdd-ver.to{background:#dcfce7;color:#15803d}.rdd-comp-commits{font-size:11px;color:#374151;background:#f3f4f6;border-radius:20px;padding:1px 8px;white-space:nowrap}.rdd-comp-spacer{flex:1}.rdd-comp-chevron{color:#9ca3af;transition:transform .2s;flex-shrink:0}.rdd-comp-chevron.open{transform:rotate(180deg)}.rdd-comp-commits-list{border-top:1px solid #f3f4f6;background:#fafafa;padding:8px 0}.rdd-commit-group{margin-bottom:10px}.rdd-commit-group:last-child{margin-bottom:0}.rdd-commit-group-title{font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;margin:6px 0 6px 56px}.rdd-commit-row{display:flex;align-items:flex-start;gap:10px;padding:8px 18px 8px 56px}.rdd-commit-avatar{width:24px;height:24px;border-radius:50%;background:#374151;color:#fff;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rdd-commit-info{flex:1;min-width:0}.rdd-commit-subject{font-size:13px;color:#111827;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rdd-commit-meta{display:flex;gap:8px;margin-top:2px}.rdd-commit-sha{font-size:11px;font-family:monospace;color:#4338ca;background:#eef2ff;padding:1px 5px;border-radius:3px}.rdd-commit-author{font-size:11px;color:#6b7280}.rdd-commit-keys{display:flex;gap:4px;flex-wrap:wrap}.rdd-jira-pill{font-size:10px;padding:1px 6px;border-radius:3px;background:#eff6ff;color:#1d4ed8;font-weight:500}.rdd-pipeline-canvas{flex:1;overflow:auto;position:relative;background:linear-gradient(to right,rgba(0,0,0,.055) 1px,transparent 1px),linear-gradient(to bottom,rgba(0,0,0,.055) 1px,transparent 1px),#f7f7f6;background-size:28px 28px,28px 28px,auto;display:flex;align-items:flex-start;justify-content:flex-start;min-height:0}.rdd-pipeline-canvas .rp-canvas-flow{margin:0!important;align-items:center;min-height:unset}.rp-canvas-connector-curly{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:64px;align-self:center;overflow:visible}.rp-canvas-connector-fork{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:56px;overflow:visible}.rdd-pipeline-step-empty{display:flex;align-items:center;justify-content:center;padding:12px}.rdd-step-type-badge{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:2px 8px;border-radius:4px;background:#f3f4f6;color:#374151}@keyframes rdd-drawer-slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes rdd-drawer-fade-in{0%{opacity:0}to{opacity:1}}@keyframes rdd-skeleton-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.rdd-pipeline-wrap{position:relative;flex:1;display:flex;flex-direction:column;min-height:0}.rdd-comp-drawer-overlay{position:absolute;inset:0;background:#00000026;z-index:110;display:flex;align-items:flex-end;padding:0 12px 12px;animation:rdd-drawer-fade-in .2s ease}.rdd-comp-drawer{width:100%;height:380px;background:#fff;border-radius:14px;box-shadow:0 -6px 32px #00000021;display:flex;flex-direction:column;overflow:hidden;animation:rdd-drawer-slide-up .28s cubic-bezier(.22,1,.36,1)}.rdd-comp-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px 13px;border-bottom:1px solid #f0f0f0;flex-shrink:0;gap:16px}.rdd-comp-drawer-header-left{display:flex;align-items:center;gap:12px;min-width:0}.rdd-comp-drawer-icon{width:36px;height:36px;border-radius:9px;background:#fff7ed;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rdd-comp-drawer-header-text{display:flex;flex-direction:column;gap:1px;min-width:0}.rdd-comp-drawer-eyebrow{font-size:10.5px;font-weight:600;color:#ea580c;text-transform:uppercase;letter-spacing:.06em}.rdd-comp-drawer-title-row{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.rdd-comp-drawer-title{font-size:14px;font-weight:700;color:#111827;white-space:nowrap}.rdd-comp-drawer-subtitle{font-size:12px;color:#9ca3af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rdd-comp-drawer-header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.rdd-comp-drawer-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:500;white-space:nowrap}.rdd-comp-drawer-badge--neutral,.rdd-comp-drawer-badge--success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.rdd-comp-drawer-badge--running{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.rdd-comp-drawer-badge--failed{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.rdd-comp-drawer-badge--ghost{background:#f9fafb;color:#374151;border:1px solid #e5e7eb}.rdd-comp-drawer-badge-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.rdd-comp-drawer-badge-dot--green{background:#22c55e}.rdd-comp-drawer-close{width:28px;height:28px;border-radius:6px;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6b7280;margin-left:4px}.rdd-comp-drawer-close:hover{background:#f3f4f6;color:#111827}.rdd-comp-drawer-tabs{display:flex;gap:2px;padding:6px 20px 0;border-bottom:1px solid #f0f0f0;flex-shrink:0}.rdd-comp-drawer-tab{padding:6px 14px;font-size:12.5px;font-weight:500;color:#6b7280;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;border-radius:6px 6px 0 0;text-transform:capitalize;transition:color .12s}.rdd-comp-drawer-tab:hover{color:#111827;background:#f9fafb}.rdd-comp-drawer-tab--active{color:#ea580c;border-bottom-color:#ea580c;font-weight:600}.rdd-comp-drawer-body{overflow:auto;flex:1}.rdd-comp-drawer-table{width:100%;border-collapse:collapse;font-size:13px}.rdd-comp-drawer-table thead th{text-align:left;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;padding:8px 20px;border-bottom:1px solid #f0f0f0;background:#fafafa;position:sticky;top:0;z-index:1}.rdd-comp-drawer-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background .1s}.rdd-comp-drawer-table tbody tr:last-child{border-bottom:none}.rdd-comp-drawer-table tbody tr:hover{background:#fafafa}.rdd-comp-drawer-table td{padding:12px 20px;vertical-align:middle;color:#374151}.rdd-comp-drawer-table th:nth-child(1),.rdd-comp-drawer-table td:nth-child(1){padding-right:8px}.rdd-comp-drawer-table th:nth-child(2),.rdd-comp-drawer-table td:nth-child(2){padding-left:8px;width:120px}.rdd-comp-drawer-comp-cell{display:flex;align-items:center;gap:10px}.rdd-comp-drawer-comp-icon{width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rdd-comp-drawer-comp-info{display:flex;flex-direction:row;align-items:center;gap:8px;min-width:0}.rdd-comp-drawer-comp-name{font-weight:600;color:#111827;white-space:nowrap}.rdd-comp-drawer-comp-sub{font-size:11.5px;color:#9ca3af;display:flex;align-items:center;gap:4px;font-family:monospace;white-space:nowrap}.rdd-comp-drawer-status{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.rdd-comp-drawer-status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.rdd-comp-drawer-status--success .rdd-comp-drawer-status-dot,.rdd-comp-drawer-status--deployed .rdd-comp-drawer-status-dot,.rdd-comp-drawer-status--verified .rdd-comp-drawer-status-dot{background:#22c55e}.rdd-comp-drawer-status--failed .rdd-comp-drawer-status-dot,.rdd-comp-drawer-status--error .rdd-comp-drawer-status-dot{background:#ef4444}.rdd-comp-drawer-status--running .rdd-comp-drawer-status-dot,.rdd-comp-drawer-status--in_progress .rdd-comp-drawer-status-dot{background:#3b82f6}.rdd-comp-drawer-status--pending .rdd-comp-drawer-status-dot{background:#9ca3af}.rdd-comp-drawer-status--success,.rdd-comp-drawer-status--deployed,.rdd-comp-drawer-status--verified{background:#f0fdf4;color:#166534}.rdd-comp-drawer-status--failed,.rdd-comp-drawer-status--error{background:#fef2f2;color:#991b1b}.rdd-comp-drawer-status--running,.rdd-comp-drawer-status--in_progress{background:#eff6ff;color:#1d4ed8}.rdd-comp-drawer-status--pending{background:#f9fafb;color:#374151}.rdd-comp-drawer-dep-cell{display:flex;flex-direction:column;gap:2px}.rdd-comp-drawer-dep-main{font-weight:600;color:#111827;font-size:13px}.rdd-comp-drawer-dep-ver{font-family:monospace;font-size:12px;color:#6b7280}.rdd-comp-drawer-dep-sub{font-size:11.5px;color:#9ca3af}.rdd-comp-drawer-no-output{color:#d1d5db}.rdd-comp-drawer-outputs-list{display:flex;flex-wrap:wrap;gap:5px}.rdd-comp-drawer-output-chip{display:inline-flex;align-items:center;gap:0;border-radius:5px;overflow:hidden;font-size:11.5px;border:1px solid #e5e7eb}.rdd-comp-drawer-output-key{padding:2px 7px;background:#f3f4f6;color:#374151;font-weight:500;white-space:nowrap}.rdd-comp-drawer-output-val{padding:2px 7px;background:#fff;color:#111827;font-family:monospace;font-weight:600;white-space:nowrap}.rdd-comp-drawer-empty{text-align:center;color:#9ca3af;padding:36px 20px!important}.rdd-comp-drawer-skeleton-row{display:flex;align-items:center;gap:6px}.rdd-comp-drawer-skeleton{display:inline-block;height:20px;width:72px;border-radius:5px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:400px 100%;animation:rdd-skeleton-shimmer 1.4s infinite linear}.rdd-comp-drawer-skeleton--short{width:44px}.rdd-view-components-btn{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:999px;box-shadow:0 2px 8px #0000001a;font-size:13px;font-weight:600;color:#111827;cursor:pointer;white-space:nowrap;z-index:10;transition:box-shadow .15s,background .15s}.rdd-view-components-btn:hover{background:#f9fafb;box-shadow:0 4px 14px #00000021}.rdd-view-components-sep{color:#d1d5db;font-weight:400}.rdd-view-components-count{color:#6b7280;font-weight:500}.rdd-notes{margin:0;padding:14px 18px;font-size:13px;color:#374151;line-height:1.6}.rp-container{display:flex;flex-direction:column;width:100%;height:100%;background:#f7f7f6}.rp-loading{display:flex;align-items:center;justify-content:center;gap:12px;height:100%;font-size:14px;color:#6b7280}.rp-spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top-color:var(--primary, #f97316);border-radius:50%;animation:rp-spin .6s linear infinite}@keyframes rp-spin{to{transform:rotate(360deg)}}.rp-pipelines-grid{flex:1;padding:24px;overflow-y:auto}.rp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:18px}.rp-pipeline-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;overflow:hidden;position:relative}.rp-pipeline-card:hover{border-color:var(--primary, #f97316);box-shadow:0 8px 24px #f9731614,0 2px 8px #0000000a;transform:translateY(-2px)}.rp-card-accent{height:3px;background:linear-gradient(90deg,var(--primary, #f97316),#fb923c,#fdba74);flex-shrink:0}.rp-card-content{padding:18px 20px 16px;display:flex;flex-direction:column;flex:1}.rp-card-top{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.rp-card-icon{width:38px;height:38px;border-radius:10px;background:#fff7ed;color:var(--primary, #f97316);display:flex;align-items:center;justify-content:center;flex-shrink:0}.rp-card-title-group{flex:1;min-width:0}.rp-card-title{margin:0;font-size:15px;font-weight:700;color:#111827;letter-spacing:-.01em;line-height:1.3}.rp-card-desc{margin:3px 0 0;font-size:12.5px;color:#9ca3af;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-card-top-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.rp-card-badge{padding:3px 10px;background:linear-gradient(135deg,#fff7ed,#ffedd5);color:var(--primary, #f97316);font-size:11px;font-weight:600;border-radius:6px;border:1px solid rgba(249,115,22,.15)}.rp-card-menu{background:none;border:none;padding:5px;color:#d1d5db;cursor:pointer;border-radius:6px;display:flex;align-items:center;opacity:0;transition:all .15s ease}.rp-pipeline-card:hover .rp-card-menu{opacity:1}.rp-card-menu:hover{color:#dc2626;background:#fef2f2}.rp-card-flow{display:flex;align-items:center;flex-wrap:wrap;gap:2px;margin-bottom:16px;padding:10px 12px;background:#fafaf9;border-radius:8px;border:1px solid #f3f4f6}.rp-card-flow-item{display:flex;align-items:center;gap:2px}.rp-card-flow-arrow{flex-shrink:0;opacity:.5}.rp-card-flow-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:12px;font-weight:500;color:#374151;white-space:nowrap;transition:all .15s}.rp-pipeline-card:hover .rp-card-flow-chip{border-color:#fdba74}.rp-card-flow-dot{width:6px;height:6px;border-radius:50%;background:var(--primary, #f97316);flex-shrink:0}.rp-card-flow-more{font-size:11px;color:#9ca3af;font-weight:500;padding:0 4px}.rp-card-empty-steps{font-size:12px;color:#d1d5db;padding:12px;text-align:center;background:#fafaf9;border-radius:8px;border:1px dashed #e5e7eb;margin-bottom:16px}.rp-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:12px;border-top:1px solid #f3f4f6}.rp-card-footer-left{display:flex;align-items:center;gap:5px;color:#9ca3af}.rp-card-time{font-size:12px;color:#9ca3af;font-weight:400}.rp-card-action{font-size:12.5px;font-weight:600;color:var(--primary, #f97316);display:inline-flex;align-items:center;gap:4px;transition:gap .15s ease}.rp-pipeline-card:hover .rp-card-action{gap:6px}.rp-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:400px;text-align:center;color:#6b7280}.rp-empty-state svg{color:#d1d5db;margin-bottom:16px}.rp-empty-state h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#374151}.rp-empty-state p{margin:0;font-size:14px;color:#9ca3af}.rp-back-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s ease}.rp-back-btn:hover{background:#f3f4f6;color:#111827}.rp-builder{display:flex;flex-direction:column;width:100%;height:100%}.rp-builder-topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0;gap:16px}.rp-topbar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.rp-topbar-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease;font-family:inherit;white-space:nowrap}.rp-topbar-btn-outline{background:#fff;border:1px solid #e0e0df;color:#374151}.rp-topbar-btn-outline:hover{background:#f5f5f4;border-color:#d1d5db}.rp-topbar-btn-primary{background:var(--primary, #f97316);border:1px solid var(--primary, #f97316);color:#fff}.rp-topbar-btn-primary:hover{background:var(--primary-hover, #e05a0e);border-color:var(--primary-hover, #e05a0e)}.rp-breadcrumb{display:flex;align-items:center;gap:8px;font-size:14px}.rp-breadcrumb-link{color:#6b7280;cursor:pointer;transition:color .15s ease}.rp-breadcrumb-link:hover{color:var(--primary, #f97316)}.rp-breadcrumb-sep{color:#d1d5db;font-size:13px;-webkit-user-select:none;user-select:none}.rp-breadcrumb-current{font-weight:700;color:#111827}.rp-version-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 24px;background:#fafaf9;border-bottom:1px solid #ebebea;flex-shrink:0;gap:16px}.rp-version-bar-left{display:flex;align-items:center;gap:12px}.rp-version-bar-label{font-size:12.5px;font-weight:500;color:#6b7280}.rp-version-selector{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;background:#fff;border:1px solid #e0e0df;border-radius:6px;font-size:12.5px;font-weight:600;color:#111827;cursor:pointer;font-family:inherit;transition:all .15s ease}.rp-version-selector:hover{border-color:#d1d5db;background:#f9fafb}.rp-version-bar-meta{font-size:12.5px;color:#9ca3af}.rp-version-bar-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.rp-builder-canvas{flex:1;position:relative;overflow:hidden;background-color:#f7f7f6;background-image:linear-gradient(to right,#e5e7eb 1px,transparent 1px),linear-gradient(to bottom,#e5e7eb 1px,transparent 1px);background-size:20px 20px;cursor:default}.rp-builder-canvas.panning{cursor:grab}.rp-builder-canvas.panning:active{cursor:grabbing}.rp-canvas-transform{position:absolute;top:0;left:0;width:100%;height:100%;transform-origin:0 0;pointer-events:none}.rp-canvas-transform>*{pointer-events:auto}.rp-canvas-toolbar-toggle{position:absolute;top:16px;right:16px;z-index:10;width:28px;height:28px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 4px #00000014;transition:background .15s,color .15s}.rp-canvas-toolbar-toggle:hover{background:#f3f4f6;color:#111827}.rp-canvas-toolbar{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:10;display:flex;align-items:center;gap:2px;padding:6px 8px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 12px #00000014}.rp-canvas-toolbar-group{display:flex;align-items:center;gap:2px}.rp-canvas-toolbar-sep{width:1px;height:24px;background:#e5e7eb;margin:0 6px}.rp-canvas-toolbar-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;background:none;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .12s ease;padding:0}.rp-canvas-toolbar-btn:hover{background:#f3f4f6;color:#111827}.rp-canvas-toolbar-btn.active{background:#fff7ed;color:var(--primary, #f97316)}.rp-canvas-toolbar-btn:disabled{opacity:.35;cursor:not-allowed}.rp-canvas-toolbar-btn:disabled:hover{background:none;color:#6b7280}.rp-canvas-toolbar-btn-danger:hover{background:#fef2f2;color:#dc2626}.rp-canvas-toolbar-zoom{font-size:12px;font-weight:600;color:#374151;min-width:42px;text-align:center;-webkit-user-select:none;user-select:none}.rp-canvas-flow{display:flex;flex-direction:row;align-items:center;padding:80px 60px 80px 50px;min-height:100%;min-width:100%;pointer-events:auto}.rp-canvas-start-node{display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;flex-shrink:0;align-self:center;background:linear-gradient(135deg,#ea580c,#f97316);border-radius:50%;width:44px;height:44px;box-shadow:0 2px 10px #ea580c59}.rp-canvas-start-icon{width:26px;height:26px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-right:0}.rp-canvas-start-label{font-size:12px;font-weight:700;color:#fff;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.rp-canvas-connector-h{display:flex;align-items:center;flex-shrink:0}.rp-canvas-connector-line{width:40px;height:2px;background:#d1d5db}.rp-canvas-connector-arrow{width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid #d1d5db;flex-shrink:0;margin-left:-1px}.rp-canvas-column-wrapper{display:flex;flex-direction:row;align-items:center;flex-shrink:0;position:relative}.rp-canvas-column{display:flex;flex-direction:column;align-items:stretch;gap:12px;flex-shrink:0}.rp-canvas-add-parallel-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:1.5px dashed #d1d5db;border-radius:10px;background:transparent;color:#9ca3af;font-size:12.5px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s ease;width:260px}.rp-canvas-add-parallel-btn:hover{border-color:var(--primary, #f97316);color:var(--primary, #f97316);background:#f9731608}.rp-canvas-phase-wrapper{display:flex;flex-direction:row;align-items:flex-start;flex-shrink:0}.rp-canvas-phase{width:260px;min-height:300px;background:#fff;border:1.5px solid #e5e7eb;border-radius:16px;display:flex;flex-direction:column;flex-shrink:0;box-shadow:0 1px 4px #0000000a;transition:border-color .15s ease,box-shadow .15s ease;overflow:hidden}.rp-canvas-phase:hover{border-color:#d1d5db;box-shadow:0 2px 10px #0000000f}.rp-canvas-phase.dragging{box-shadow:0 4px 20px #0000001f}.rp-canvas-phase-header{padding:16px 18px;border-bottom:1px solid #f0f0ef;flex-shrink:0;display:flex;align-items:center;justify-content:space-between}.rp-canvas-phase-delete{background:none;border:none;cursor:pointer;color:#d1d5db;padding:4px;border-radius:5px;display:flex;align-items:center;opacity:0;transition:all .15s ease}.rp-canvas-phase:hover .rp-canvas-phase-delete{opacity:1}.rp-canvas-phase-delete:hover{color:#dc2626;background:#fef2f2}.rp-canvas-phase-name{font-size:15px;font-weight:700;color:#111827;cursor:text;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:6px}.rp-edit-pencil{opacity:0;color:#9ca3af;flex-shrink:0;transition:opacity .15s ease,color .15s ease}.rp-canvas-phase-name:hover .rp-edit-pencil,.rp-canvas-node-name:hover .rp-edit-pencil{opacity:1}.rp-canvas-phase-name:hover .rp-edit-pencil:hover,.rp-canvas-node-name:hover .rp-edit-pencil:hover{color:var(--primary, #f97316)}.rp-canvas-phase-name-input{font-size:15px;font-weight:700;color:#111827;border:none;outline:none;background:transparent;width:100%;padding:0;font-family:inherit;letter-spacing:-.01em;border-bottom:2px solid var(--primary, #f97316)}.rp-canvas-phase-body{flex:1;display:flex;flex-direction:column;gap:10px;padding:14px;min-height:100px}.rp-canvas-phase-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:28px 16px;border:2px dashed #e5e7eb;border-radius:10px;color:#d1d5db;font-size:12.5px;font-weight:500;text-align:center;min-height:80px}.rp-canvas-phase-placeholder{width:220px;min-height:260px;border:2px dashed #e0e0df;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#b0b0ae;flex-shrink:0;transition:all .2s ease;background:#fff6}.rp-canvas-phase-placeholder:hover,.rp-canvas-phase-placeholder:has(~*){border-color:var(--primary, #f97316);background:#f9731605}.rp-canvas-phase-placeholder:hover .rp-canvas-placeholder-icon{background:#fff7ed;color:var(--primary, #f97316);border-color:var(--primary, #f97316)}.rp-canvas-placeholder-icon{width:44px;height:44px;border-radius:12px;border:1.5px solid #e0e0df;background:#fafaf9;display:flex;align-items:center;justify-content:center;color:#b0b0ae;transition:all .2s ease}.rp-canvas-placeholder-title{font-size:14px;font-weight:600;color:#6b7280}.rp-canvas-phase-placeholder:hover .rp-canvas-placeholder-title{color:var(--primary, #f97316)}.rp-canvas-placeholder-desc{font-size:12px;color:#b0b0ae;text-align:center;line-height:1.5}.rp-canvas-node{position:relative;display:flex;flex-direction:column;background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;box-shadow:0 1px 3px #0000000a;-webkit-user-select:none;user-select:none;transition:box-shadow .12s ease,border-color .12s ease}.rp-canvas-node:hover{border-color:var(--primary, #f97316);box-shadow:0 2px 8px #f973161a}.rp-canvas-node-header{display:flex;align-items:center;gap:8px;padding:10px 10px 8px}.rp-canvas-node-icon{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rp-canvas-node-icon svg{width:15px;height:15px}.rp-canvas-node-name{font-size:13px;font-weight:600;color:#111827;flex:1;min-width:0;display:inline-flex;align-items:center;gap:4px;cursor:text}.rp-canvas-node-name-input{font-size:13px;font-weight:600;color:#111827;flex:1;min-width:0;border:none;outline:none;background:transparent;padding:0;font-family:inherit;border-bottom:2px solid var(--primary, #f97316)}.rp-canvas-node-type-badge{font-size:10.5px;font-weight:600;padding:2px 7px;border-radius:5px;flex-shrink:0}.rp-canvas-node-menu{background:none;border:none;padding:2px;color:#d1d5db;cursor:pointer;border-radius:4px;display:flex;align-items:center;opacity:0;transition:all .12s ease;flex-shrink:0}.rp-canvas-node:hover .rp-canvas-node-menu{opacity:1}.rp-canvas-node-menu:hover{color:#6b7280;background:#f3f4f6}.rp-canvas-node-body{padding:0 10px 10px;display:flex;flex-direction:column;gap:4px}.rp-canvas-node-field{display:flex;align-items:center;justify-content:space-between;gap:8px}.rp-canvas-node-field-label{font-size:11.5px;color:#9ca3af;font-weight:500}.rp-canvas-node-field-value{font-size:11.5px;color:#6b7280;font-weight:500;text-align:right}.rp-canvas-node-port{position:absolute;width:9px;height:9px;border-radius:50%;background:#fff;border:2px solid;cursor:crosshair;transition:all .12s ease;z-index:2}.rp-canvas-node-port:hover{transform:scale(1.4);box-shadow:0 0 0 3px #f9731626}.rp-canvas-node-port-in{left:-5px;top:50%;margin-top:-5px}.rp-canvas-node-port-out{right:-5px;top:50%;margin-top:-5px}.rp-canvas-node.selected{border-color:var(--primary, #f97316);box-shadow:0 0 0 2px #f9731626,0 2px 8px #f973161a}.rp-properties-panel{width:320px;min-width:320px;background:#fff;border-left:1px solid #e5e7eb;display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;animation:rp-props-slide .15s ease-out}@keyframes rp-props-slide{0%{width:0;min-width:0;opacity:0}to{width:320px;min-width:320px;opacity:1}}.rp-properties-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #f0f0ef;flex-shrink:0}.rp-properties-header-left{display:flex;align-items:center;gap:10px}.rp-properties-header-icon{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1.5px solid}.rp-properties-header-icon svg{width:15px;height:15px}.rp-properties-header-title{font-size:14px;font-weight:700;color:#111827;letter-spacing:-.01em}.rp-properties-close{background:none;border:none;padding:4px;color:#9ca3af;cursor:pointer;border-radius:5px;display:flex;align-items:center;transition:all .15s ease}.rp-properties-close:hover{color:#374151;background:#f3f4f6}.rp-properties-body{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:20px}.rp-properties-section{display:flex;flex-direction:column;gap:6px}.rp-properties-label{font-size:12.5px;font-weight:600;color:#374151;letter-spacing:-.01em}.rp-properties-hint{font-size:12px;color:#9ca3af;margin:0;line-height:1.4}.rp-properties-input{padding:8px 12px;border:1.5px solid #ebebea;border-radius:8px;font-size:13px;color:#111827;outline:none;font-family:inherit;background:#fff;transition:all .15s ease}.rp-properties-input::placeholder{color:#b0b0ae}.rp-properties-input:focus{border-color:var(--primary, #f97316);box-shadow:0 0 0 3px #f973160f}.rp-properties-stage-list{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto}.rp-properties-stage-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#fff;border:1.5px solid #ebebea;border-radius:8px;cursor:pointer;text-align:left;transition:all .15s ease;font-family:inherit}.rp-properties-stage-item:hover{border-color:#d1d5db;background:#fafaf9}.rp-properties-stage-item.active{border-color:var(--primary, #f97316);background:#fffbf7}.rp-properties-stage-radio{width:18px;height:18px;border-radius:50%;border:2px solid #d4d4d3;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease;background:#fff}.rp-properties-stage-item:hover .rp-properties-stage-radio{border-color:#b0b0ae}.rp-properties-stage-radio.checked{border-color:var(--primary, #f97316)}.rp-properties-stage-radio-dot{width:10px;height:10px;border-radius:50%;background:var(--primary, #f97316)}.rp-properties-stage-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.rp-properties-stage-name{font-size:13px;font-weight:600;color:#111827}.rp-properties-stage-type{font-size:11.5px;color:#9ca3af;font-weight:500;text-transform:uppercase;letter-spacing:.03em}.rp-properties-empty{padding:16px;text-align:center;font-size:13px;color:#9ca3af}.rp-properties-vars{display:flex;flex-direction:column;gap:12px}.rp-properties-var{display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:#fafaf9;border:1px solid #f0f0ef;border-radius:8px}.rp-properties-var-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.rp-properties-var-name{font-size:12.5px;font-weight:600;color:#374151}.rp-properties-var-required{font-size:10.5px;font-weight:600;color:#dc2626;background:#fef2f2;padding:1px 6px;border-radius:4px}.rp-properties-var-desc{font-size:11.5px;color:#9ca3af;line-height:1.4}.rp-properties-var-row{display:flex;gap:6px;margin-top:4px}.rp-properties-var-source{padding:6px 8px;border:1.5px solid #ebebea;border-radius:6px;font-size:12px;color:#374151;font-family:inherit;background:#fff;outline:none;cursor:pointer;flex-shrink:0;min-width:90px;transition:all .15s ease}.rp-properties-var-source:focus{border-color:var(--primary, #f97316)}.rp-properties-var-value{flex:1;padding:6px 8px;border:1.5px solid #ebebea;border-radius:6px;font-size:12px;color:#111827;font-family:inherit;outline:none;background:#fff;min-width:0;transition:all .15s ease}.rp-properties-var-value::placeholder{color:#b0b0ae}.rp-properties-var-value:focus{border-color:var(--primary, #f97316);box-shadow:0 0 0 2px #f973160f}select.rp-properties-var-value{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:24px}.rp-choice-rules{display:flex;flex-direction:column;gap:10px;margin-top:8px}.rp-choice-rule{background:#fafaf9;border:1.5px solid #ebebea;border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:8px;transition:border-color .15s ease}.rp-choice-rule:hover{border-color:#d1d5db}.rp-choice-rule-header{display:flex;align-items:center;justify-content:space-between}.rp-choice-rule-number{font-size:11px;font-weight:600;color:#f97316;text-transform:uppercase;letter-spacing:.5px}.rp-choice-rule-remove{background:none;border:none;cursor:pointer;color:#9ca3af;padding:2px;border-radius:4px;display:flex;align-items:center;transition:all .15s ease}.rp-choice-rule-remove:hover{color:#dc2626;background:#fef2f2}.rp-choice-rule-field{display:flex;flex-direction:column;gap:3px}.rp-choice-rule-label{font-size:11px;color:#6b7280;font-weight:500}.rp-choice-rule-field .rp-properties-input{font-size:12px}.rp-choice-rule-field select.rp-properties-input{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:24px}.rp-choice-add-rule{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:1.5px dashed #d1d5db;border-radius:8px;background:none;color:#6b7280;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease;font-family:inherit}.rp-choice-add-rule:hover{border-color:#f97316;color:#f97316;background:#fff7ed}.rp-nodes-hint{font-size:11.5px;color:#f97316;padding:4px 12px 8px;font-weight:500}.rp-node-item.disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.rp-nodes-panel-section-phase{border-bottom:1px solid #f0f0ef;padding-bottom:4px;flex-shrink:0}.rp-builder-footer{display:flex;align-items:center;justify-content:space-between;padding:8px 24px;background:#fafaf9;border-top:1px solid #ebebea;flex-shrink:0;font-size:12px;color:#6b7280}.rp-builder-footer-left{display:flex;align-items:center;gap:20px}.rp-footer-status{display:inline-flex;align-items:center;gap:6px;font-weight:500;color:#374151}.rp-footer-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;flex-shrink:0}.rp-footer-stat{display:inline-flex;align-items:center;gap:5px;color:#6b7280}.rp-builder-footer-right{display:inline-flex;align-items:center;gap:5px;color:#9ca3af}.rp-drawer-overlay{position:fixed;inset:0;background:#00000059;z-index:2000;display:flex;justify-content:flex-end}.rp-drawer{width:480px;max-width:100vw;background:#fff;display:flex;flex-direction:column;height:100%;box-shadow:-8px 0 30px #0000001a;animation:rp-drawer-slide .2s ease-out}@keyframes rp-drawer-slide{0%{transform:translate(100%)}to{transform:translate(0)}}.rp-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:22px 28px;border-bottom:1px solid #f0f0ef;flex-shrink:0}.rp-drawer-header h3{margin:0;font-size:18px;font-weight:700;color:#111827;letter-spacing:-.02em}.rp-drawer-close{background:none;border:none;padding:6px;color:#9ca3af;cursor:pointer;border-radius:6px;display:flex;align-items:center}.rp-drawer-close:hover{color:#374151;background:#f3f4f6}.rp-drawer-body{flex:1;overflow-y:auto;padding:28px;display:flex;flex-direction:column;gap:28px}.rp-drawer-section{display:flex;flex-direction:column;gap:10px}.rp-drawer-label{font-size:13px;font-weight:600;color:#3a3a39;letter-spacing:-.01em}.rp-drawer-footer{display:flex;justify-content:flex-end;gap:10px;padding:18px 28px;border-top:1px solid #f0f0ef;flex-shrink:0;background:#fafaf9}.rp-classification-list{display:flex;flex-direction:column;gap:8px}.rp-classification-item{display:flex;align-items:center;gap:14px;padding:16px 18px;background:#fff;border:1.5px solid #ebebea;border-radius:12px;cursor:pointer;text-align:left;transition:all .2s ease;font-family:inherit}.rp-classification-item:hover{border-color:#d1d5db;background:#fafaf9}.rp-classification-item.active{border-color:var(--primary, #f97316);background:#fffbf7;box-shadow:0 0 0 1px var(--primary, #f97316),0 2px 8px #f9731614}.rp-classification-radio{width:22px;height:22px;border-radius:50%;border:2px solid #d4d4d3;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease;background:#fff}.rp-classification-item:hover .rp-classification-radio{border-color:#b0b0ae}.rp-classification-radio.checked{border-color:var(--primary, #f97316);background:#fff}.rp-classification-radio-dot{width:12px;height:12px;border-radius:50%;background:var(--primary, #f97316);animation:rp-radio-pop .2s ease}@keyframes rp-radio-pop{0%{transform:scale(0)}60%{transform:scale(1.15)}to{transform:scale(1)}}.rp-classification-text{display:flex;flex-direction:column;gap:3px;flex:1}.rp-classification-name{font-size:14px;font-weight:600;color:#1a1a1a;letter-spacing:-.01em}.rp-classification-desc{font-size:12.5px;color:#7a7a78;line-height:1.45}.rp-form-input{padding:10px 14px;border:1.5px solid #ebebea;border-radius:10px;font-size:14px;color:#111827;outline:none;transition:all .2s ease;font-family:inherit;background:#fff}.rp-form-input::placeholder{color:#b0b0ae}.rp-form-input:focus{border-color:var(--primary, #f97316);box-shadow:0 0 0 3px #f9731614}.rp-form-textarea{padding:10px 14px;border:1.5px solid #ebebea;border-radius:10px;font-size:14px;color:#111827;outline:none;resize:vertical;font-family:inherit;transition:all .2s ease;background:#fff}.rp-form-textarea::placeholder{color:#b0b0ae}.rp-form-textarea:focus{border-color:var(--primary, #f97316);box-shadow:0 0 0 3px #f9731614}.rp-btn-primary{padding:9px 20px;background:var(--primary, #f97316);border:none;border-radius:8px;font-size:13px;font-weight:600;color:#fff;cursor:pointer;transition:background .15s ease;font-family:inherit}.rp-btn-primary:hover{background:var(--primary-hover, #e05a0e)}.rp-btn-primary:disabled{opacity:.5;cursor:not-allowed}.rp-btn-secondary{padding:9px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease;font-family:inherit}.rp-btn-secondary:hover{background:#f9fafb;border-color:#d1d5db}.rp-builder-body{display:flex;flex:1;overflow:hidden}.rp-nodes-panel{width:280px;min-width:280px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;transition:width .2s ease,min-width .2s ease}.rp-nodes-panel.collapsed{width:44px;min-width:44px;border-right:1px solid #e5e7eb}.rp-nodes-panel.collapsed .rp-nodes-panel-header{flex-direction:column;padding:12px 8px;gap:8px;align-items:center}.rp-nodes-panel.collapsed .rp-nodes-panel-title{writing-mode:vertical-rl;text-orientation:mixed;font-size:11px;white-space:nowrap;display:none}.rp-nodes-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #f0f0ef;flex-shrink:0}.rp-nodes-panel-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:#111827;letter-spacing:-.01em}.rp-nodes-panel-toggle{background:none;border:none;padding:4px;color:#9ca3af;cursor:pointer;border-radius:5px;display:flex;align-items:center;transition:all .15s ease}.rp-nodes-panel-toggle:hover{color:#374151;background:#f3f4f6}.rp-nodes-panel-search-wrapper{position:relative;margin:12px 16px}.rp-nodes-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#b0b0ae;pointer-events:none}.rp-nodes-panel-search{width:100%;padding:8px 12px 8px 32px;border:1.5px solid #ebebea;border-radius:8px;font-size:13px;color:#111827;outline:none;font-family:inherit;background:#fafaf9;transition:all .2s ease;box-sizing:border-box}.rp-nodes-panel-search::placeholder{color:#b0b0ae}.rp-nodes-panel-search:focus{border-color:var(--primary, #f97316);background:#fff;box-shadow:0 0 0 3px #f973160f}.rp-nodes-panel-search:focus+.rp-nodes-search-icon,.rp-nodes-panel-search-wrapper:focus-within .rp-nodes-search-icon{color:var(--primary, #f97316)}.rp-nodes-panel-section{flex:1;overflow-y:auto;padding:0 0 8px}.rp-nodes-panel-section-title{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;padding:6px 16px 4px}.rp-nodes-list{display:flex;flex-direction:column;gap:2px;padding:0 8px}.rp-node-item{display:flex;align-items:center;gap:14px;padding:12px;border-radius:10px;cursor:grab;transition:all .15s ease;border:1px solid transparent}.rp-node-item:hover{background:#f9fafb;border-color:#ebebea}.rp-node-item:active{cursor:grabbing;opacity:.7}.rp-node-item-icon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rp-node-item-icon svg{width:20px;height:20px}.rp-node-item-text{display:flex;flex-direction:column;gap:3px;min-width:0}.rp-node-item-name{font-size:14px;font-weight:600;color:#111827}.rp-node-item-desc{font-size:12px;color:#9ca3af;line-height:1.35}.rp-nodes-empty{padding:24px 16px;text-align:center;font-size:13px;color:#9ca3af}.rp-asl-modal-overlay{position:fixed;inset:0;background:#00000073;z-index:3000;display:flex;align-items:center;justify-content:center;padding:40px}.rp-asl-modal{width:720px;max-width:100%;max-height:80vh;background:#fff;border-radius:16px;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000026;animation:rp-modal-pop .15s ease-out;overflow:hidden}@keyframes rp-modal-pop{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.rp-asl-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #f0f0ef;flex-shrink:0}.rp-asl-modal-header-left{display:flex;align-items:center;gap:10px;color:#374151}.rp-asl-modal-header-left h3{margin:0;font-size:16px;font-weight:700;color:#111827;letter-spacing:-.02em}.rp-asl-modal-badge{font-size:11px;font-weight:600;color:var(--primary, #f97316);background:#fff7ed;padding:3px 8px;border-radius:5px}.rp-asl-modal-header-right{display:flex;align-items:center;gap:8px}.rp-asl-modal-copy{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:7px;font-size:12.5px;font-weight:600;color:#374151;cursor:pointer;font-family:inherit;transition:all .15s ease}.rp-asl-modal-copy:hover{background:#f9fafb;border-color:#d1d5db}.rp-asl-modal-close{background:none;border:none;padding:4px;color:#9ca3af;cursor:pointer;border-radius:5px;display:flex;align-items:center;transition:all .15s ease}.rp-asl-modal-close:hover{color:#374151;background:#f3f4f6}.rp-asl-modal-body{flex:1;overflow-y:auto;padding:0;background:#1e1e2e}.rp-asl-modal-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:60px 24px;font-size:13px;color:#9ca3af;background:#fff}.rp-asl-modal-code{margin:0;padding:24px;font-family:SF Mono,Fira Code,Cascadia Code,Menlo,Consolas,monospace;font-size:13px;line-height:1.6;color:#cdd6f4;white-space:pre;overflow-x:auto;tab-size:2}.rp-dryrun-modal{width:620px;max-width:100%;max-height:80vh;background:#fff;border-radius:16px;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000026;animation:rp-modal-pop .15s ease-out;overflow:hidden}.rp-dryrun-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #f0f0ef;flex-shrink:0}.rp-dryrun-modal-header-left{display:flex;align-items:center;gap:10px;color:#374151}.rp-dryrun-modal-header-left h3{margin:0;font-size:16px;font-weight:700;color:#111827;letter-spacing:-.02em}.rp-dryrun-modal-header-right{display:flex;align-items:center;gap:8px}.rp-dryrun-status-badge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:5px;letter-spacing:.03em}.rp-dryrun-status-badge.running{color:#f97316;background:#fff7ed;animation:rp-pulse 1.5s ease-in-out infinite}.rp-dryrun-status-badge.success{color:#16a34a;background:#f0fdf4}.rp-dryrun-status-badge.failed{color:#dc2626;background:#fef2f2}.rp-dryrun-status-badge.aborted{color:#6b7280;background:#f3f4f6}@keyframes rp-pulse{0%,to{opacity:1}50%{opacity:.6}}.rp-dryrun-stop-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;font-size:12.5px;font-weight:600;color:#dc2626;cursor:pointer;font-family:inherit;transition:all .15s ease}.rp-dryrun-stop-btn:hover{background:#fee2e2;border-color:#fca5a5}.rp-dryrun-modal-body{flex:1;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:16px}.rp-dryrun-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px 24px;font-size:13px;color:#9ca3af}.rp-dryrun-timeline{display:flex;flex-direction:column;gap:0}.rp-dryrun-event{display:flex;gap:12px;border-left:2px solid #e5e7eb;margin-left:6px;padding:10px 0 10px 18px;position:relative}.rp-dryrun-event:last-child{border-left-color:transparent}.rp-dryrun-event-dot{position:absolute;left:-6px;top:14px;width:10px;height:10px;border-radius:50%;background:#d1d5db;border:2px solid #fff;flex-shrink:0}.rp-dryrun-event.active .rp-dryrun-event-dot{background:#f97316;box-shadow:0 0 0 3px #f9731626}.rp-dryrun-event.success .rp-dryrun-event-dot{background:#16a34a}.rp-dryrun-event.failed .rp-dryrun-event-dot{background:#dc2626}.rp-dryrun-event-content{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.rp-dryrun-event-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.rp-dryrun-event-name{font-size:13px;font-weight:600;color:#111827}.rp-dryrun-event-time{font-size:11.5px;color:#9ca3af;font-weight:500;flex-shrink:0}.rp-dryrun-event-type{font-size:11.5px;color:#9ca3af;font-weight:500}.rp-dryrun-event-output{margin:4px 0 0;padding:8px 10px;background:#f9fafb;border:1px solid #f0f0ef;border-radius:6px;font-family:SF Mono,Menlo,Consolas,monospace;font-size:11.5px;color:#374151;line-height:1.5;white-space:pre-wrap;word-break:break-all;max-height:120px;overflow-y:auto}.rp-dryrun-final{display:flex;flex-direction:column;gap:6px;border-top:1px solid #f0f0ef;padding-top:16px}.rp-dryrun-final-output{margin:0;padding:12px 14px;background:#1e1e2e;border-radius:8px;font-family:SF Mono,Menlo,Consolas,monospace;font-size:12px;color:#cdd6f4;line-height:1.6;white-space:pre-wrap;word-break:break-all;max-height:200px;overflow-y:auto}.rp-confirm-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:rp-confirm-fadein .15s ease}@keyframes rp-confirm-fadein{0%{opacity:0}to{opacity:1}}.rp-confirm-dialog{background:#fff;border-radius:12px;padding:28px 32px 24px;max-width:400px;width:90%;box-shadow:0 20px 60px #00000026,0 0 0 1px #0000000d;text-align:center;animation:rp-confirm-scalein .15s ease}@keyframes rp-confirm-scalein{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.rp-confirm-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:#fef2f2;margin:0 auto 16px}.rp-confirm-title{font-size:16px;font-weight:600;color:#111827;margin:0 0 8px}.rp-confirm-message{font-size:13px;color:#6b7280;margin:0 0 24px;line-height:1.5}.rp-confirm-actions{display:flex;gap:10px;justify-content:center}.rp-confirm-cancel{padding:8px 20px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;color:#374151;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.rp-confirm-cancel:hover{background:#f9fafb;border-color:#d1d5db}.rp-confirm-delete{padding:8px 20px;border-radius:8px;border:1px solid #dc2626;background:#dc2626;color:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.rp-confirm-delete:hover{background:#b91c1c;border-color:#b91c1c}.rp-version-modal{background:#fff;border-radius:12px;width:540px;max-width:95vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000026;animation:rp-confirm-scalein .15s ease}.rp-version-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid #f0f0ef}.rp-version-modal-header h3{margin:0;font-size:16px;font-weight:600;color:#111827}.rp-version-modal-body{padding:16px 24px 24px;overflow-y:auto;flex:1}.rp-version-loading,.rp-version-empty{text-align:center;padding:40px 20px;color:#9ca3af}.rp-version-empty svg{margin-bottom:12px}.rp-version-empty p{font-size:14px;font-weight:500;color:#6b7280;margin:0 0 4px}.rp-version-empty span{font-size:12px;color:#9ca3af}.rp-version-list{display:flex;flex-direction:column;gap:8px}.rp-version-item{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:1px solid #e5e7eb;border-radius:8px;transition:border-color .15s}.rp-version-item:hover{border-color:#d1d5db}.rp-version-item-latest{border-color:var(--primary, #f97316);background:#fffbf5}.rp-version-item-left{display:flex;align-items:center;gap:12px;min-width:0}.rp-version-item-badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:24px;padding:0 8px;border-radius:6px;background:#f3f4f6;color:#374151;font-size:12px;font-weight:600;font-family:monospace}.rp-version-item-latest .rp-version-item-badge{background:var(--primary, #f97316);color:#fff}.rp-version-item-info{display:flex;flex-direction:column;gap:2px;min-width:0}.rp-version-item-name{font-size:13px;font-weight:500;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-version-item-meta{font-size:11px;color:#9ca3af}.rp-version-item-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.rp-version-item-current{font-size:11px;font-weight:500;color:var(--primary, #f97316);padding:2px 8px;border-radius:4px;background:#f9731614}.rp-version-item-restore{padding:5px 12px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;color:#374151;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s}.rp-version-item-restore:hover{background:#f9fafb;border-color:#d1d5db}.rp-version-item-view{padding:5px 12px;border-radius:6px;border:1px solid var(--primary, #f97316);background:#fff;color:var(--primary, #f97316);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s}.rp-version-item-view:hover{background:#fff7ed}.rp-promo-canvas{position:absolute;inset:0;overflow:auto;cursor:grab}.rp-promo-canvas.panning{cursor:grabbing}.rp-promo-canvas.pan-mode{cursor:grab}.rp-promo-canvas.pan-mode.panning{cursor:grabbing}.rp-promo-canvas-inner{position:relative;width:4000px;height:3000px}.rp-promo-svg{pointer-events:none;position:absolute;inset:0;width:100%;height:100%;overflow:visible}.rp-promo-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;pointer-events:none}.rp-promo-empty-icon{width:64px;height:64px;border-radius:16px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.rp-promo-empty-title{font-size:15px;font-weight:600;color:#374151;margin:0}.rp-promo-empty-desc{font-size:13px;color:#9ca3af;margin:0;text-align:center;max-width:260px}.rp-promo-env-card.rd-drop-target{border-color:#f97316;box-shadow:0 0 0 3px #f9731633,0 4px 20px #f9731626;background:#fff7ed;transform:scale(1.01)}.rp-promo-env-card{position:absolute;width:400px;background:#fff;border-radius:14px;border:1px solid #e5e7eb;box-shadow:0 1px 4px #0000000f,0 4px 16px #00000012;cursor:grab;-webkit-user-select:none;user-select:none;transition:box-shadow .2s,border-color .2s,transform .15s;display:flex;flex-direction:column}.rp-promo-env-card:active{cursor:grabbing}.rp-promo-env-card.hovered{box-shadow:0 4px 12px #00000014,0 12px 32px #0000001a;transform:translateY(-2px)}.rp-promo-env-card.selected{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126,0 4px 20px #0000001a}.rp-promo-env-card.connecting{border-color:#6366f1}.rp-promo-env-card-stripe{height:3px;width:100%;flex-shrink:0}.rp-promo-env-card-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:12px}.rp-promo-env-card-header{display:flex;align-items:center;gap:10px}.rp-promo-env-card-header-left{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.rp-promo-env-card-header-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rp-promo-env-card-header-info{display:flex;flex-direction:column;gap:1px;min-width:0}.rp-promo-env-card-type-label{display:none}.rp-promo-env-card-badges{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.rp-promo-env-card-type-badge{display:none}.rp-promo-env-card-type-label-sm{font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#9ca3af}.rp-promo-env-card-env-type-badge{font-size:10px;font-weight:600;letter-spacing:.03em;text-transform:capitalize;padding:1px 6px;border-radius:4px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;line-height:1.5}.rp-promo-env-card-env-type-badge[data-type=production]{background:#fef2f2;color:#dc2626;border-color:#fca5a5}.rp-promo-env-card-env-type-badge[data-type=staging]{background:#fff7ed;color:#ea580c;border-color:#fdba74}.rp-promo-env-card-env-type-badge[data-type=development]{background:#ecfdf5;color:#059669;border-color:#86efac}.rp-promo-env-card-env-type-badge[data-type=qa]{background:#fffbeb;color:#d97706;border-color:#fcd34d}.rp-promo-env-card-env-type-badge[data-type=custom]{background:#f1f5f9;color:#475569;border-color:#e2e8f0}.rp-promo-env-card-mode-pill{display:inline-flex;align-items:center;gap:4px;font-size:9.5px;font-weight:600;color:#374151;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:20px;padding:2px 8px;white-space:nowrap;flex-shrink:0}.rp-promo-env-card-mode-pill.auto{color:#4338ca;background:#eef2ff;border-color:#c7d2fe}.rp-promo-env-card-approval-row{display:inline-flex;align-items:center;gap:4px;font-size:9.5px;font-weight:600;color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:20px;padding:2px 8px;white-space:nowrap;flex-shrink:0}.rp-deploy-mode-toggle{display:flex;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb}.rp-deploy-mode-btn{padding:4px 12px;font-size:11px;font-weight:600;color:#6b7280;background:#fff;border:none;cursor:pointer;transition:background .15s,color .15s}.rp-deploy-mode-btn:not(:last-child){border-right:1px solid #e5e7eb}.rp-deploy-mode-btn.active{background:#6366f1;color:#fff}.rp-promo-env-card-name{font-size:18px;font-weight:700;color:#0f172a;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-promo-env-card-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.rp-promo-env-card-promote-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:10px;border:none;color:#fff;font-size:13px;font-weight:700;letter-spacing:.02em;cursor:pointer;flex-shrink:0;background:linear-gradient(135deg,var(--promote-color, #f97316) 0%,color-mix(in srgb,var(--promote-color, #f97316) 70%,#000) 100%);box-shadow:0 3px 10px color-mix(in srgb,var(--promote-color, #f97316) 50%,transparent),inset 0 1px #ffffff40;transition:transform .15s,box-shadow .15s,filter .15s;position:relative;overflow:hidden}.rp-promo-env-card-promote-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(255,255,255,.18) 0%,transparent 60%);pointer-events:none;border-radius:inherit}.rp-promo-env-card-promote-btn:hover{transform:translateY(-2px);box-shadow:0 6px 18px color-mix(in srgb,var(--promote-color, #f97316) 55%,transparent),inset 0 1px #ffffff40;filter:brightness(1.08)}.rp-promo-env-card-promote-btn:active{transform:translateY(0);box-shadow:0 2px 6px color-mix(in srgb,var(--promote-color, #f97316) 40%,transparent);filter:brightness(.96)}.rp-promo-env-card-rollback-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;border:1.5px solid #e2e8f0;background:#fff;color:#374151;font-size:11.5px;font-weight:600;cursor:pointer;flex-shrink:0;transition:background .15s,border-color .15s,color .15s}.rp-promo-env-card-rollback-btn:hover{background:#fff7ed;border-color:#fdba74;color:#c2410c}.rp-promo-env-card-version-pill{display:flex;align-items:center;gap:10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px;min-height:44px}.rp-promo-env-card-version-label{flex:1;font-size:13px;font-weight:500;color:#334155;font-family:SF Mono,Fira Code,Menlo,monospace;word-break:break-all;min-width:0;line-height:1.4}.rp-promo-env-card-version-badge{display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:12px;font-weight:600;color:#15803d;background:#f0fdf4;border-radius:20px;padding:4px 10px;flex-shrink:0;border:1px solid #bbf7d0;min-width:72px;min-height:24px}.rp-promo-env-card-version-dot{width:6px;height:6px;border-radius:50%;background:#16a34a;flex-shrink:0}.rp-promo-env-card-deploy-block{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.rp-promo-env-card-deploy-header{display:flex;align-items:center;justify-content:space-between}.rp-promo-env-card-section-title{font-size:11.5px;font-weight:600;color:#94a3b8;letter-spacing:.06em;text-transform:uppercase}.rp-promo-env-card-status-badge{display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:12px;font-weight:600;color:#15803d;background:#f0fdf4;border-radius:20px;padding:2px 9px;border:1px solid #bbf7d0;min-width:72px}.rp-promo-env-card-status-dot{width:6px;height:6px;border-radius:50%;background:#16a34a}.rp-promo-env-card-status-badge[data-status=in-progress]{color:#b45309;background:#fffbeb;border-color:#fde68a}.rp-promo-env-card-status-dot[data-status=in-progress]{background:#f59e0b}.rp-promo-env-card-status-badge[data-status=failed]{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.rp-promo-env-card-status-dot[data-status=failed]{background:#ef4444}.rp-promo-env-card-version-badge[data-status=in-progress]{color:#b45309;background:#fffbeb;border-color:#fde68a}.rp-promo-env-card-version-dot[data-status=in-progress]{background:#f59e0b}.rp-promo-env-card-version-badge[data-status=failed]{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.rp-promo-env-card-version-dot[data-status=failed]{background:#ef4444}.rp-promo-env-card-deploy-meta-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.rp-promo-env-card-meta-sep{color:#d1d5db;font-size:12px}.rp-promo-env-card-meta-value{font-size:13px;font-weight:500;color:#374151}.rp-promo-env-card-not-deployed-pill{display:inline-flex;align-items:center;font-size:11px;font-weight:500;color:#4b5563;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:20px;padding:2px 10px;flex-shrink:0}.rp-promo-env-card-endpoint{display:flex;align-items:center;gap:7px}.rp-promo-env-card-url{font-size:13px;color:#2563eb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.rp-promo-env-card-url-empty{color:#94a3b8;font-style:italic}.rp-promo-env-card-tags{display:flex;flex-wrap:wrap;gap:5px;padding-top:4px;border-top:1px solid #f1f5f9}.rp-promo-env-card-tag{font-size:11px;font-weight:500;color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;padding:2px 10px}.rp-promo-env-card-tag-more{font-size:11px;font-weight:600;color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:2px 10px}.rp-promo-env-card-dot{color:#d1d5db}.rp-promo-env-card-unset{font-size:11px;color:#94a3b8;font-style:italic}.rp-promo-env-card-runbook{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:8px}.rp-promo-env-card-runbook-left{display:flex;align-items:center;gap:8px;min-width:0}.rp-promo-env-card-runbook-icon{width:26px;height:26px;border-radius:6px;background:#ede9fe;border:1px solid #ddd6fe;color:#6d28d9;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rp-promo-env-card-runbook-info{display:flex;flex-direction:column;gap:1px;min-width:0}.rp-promo-env-card-runbook-name{font-size:12px;font-weight:600;color:#3b0764;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-promo-env-card-runbook-version{font-size:10.5px;font-weight:500;color:#7c3aed;font-family:SF Mono,Fira Code,monospace}.rp-promo-env-card-runbook-class{font-size:9.5px;font-weight:600;color:#6d28d9;background:#ede9fe;border:1px solid #ddd6fe;border-radius:4px;padding:2px 6px;flex-shrink:0;letter-spacing:.03em}.rp-promo-props-runbook-class{font-size:9.5px;font-weight:600;color:#6d28d9;background:#ede9fe;border-radius:4px;padding:1px 5px;margin-left:auto;flex-shrink:0}.rp-promo-env-card-footer{display:flex;align-items:center;justify-content:space-between;padding:9px 16px;border-top:1px solid #f1f5f9;background:#f8fafc;color:#64748b;cursor:pointer;transition:background .15s,color .15s;-webkit-user-select:none;user-select:none}.rp-promo-env-card-footer:hover{background:#f1f5f9;color:#334155}.rp-promo-env-card-footer-text{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600}.rp-promo-node-delete{position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:50%;background:#fff;border:1.5px solid #e5e7eb;color:#9ca3af;display:none;align-items:center;justify-content:center;cursor:pointer;padding:0;box-shadow:0 1px 3px #0000001a}.rp-promo-node-delete:hover{background:#fef2f2;border-color:#fca5a5;color:#dc2626}.rp-promo-node.hovered .rp-promo-node-delete,.rp-promo-env-card.hovered .rp-promo-node-delete{display:flex}.rp-promo-node-dot{position:absolute;top:50%;transform:translateY(-50%);width:12px;height:12px;border-radius:50%;border:2px solid #fff;opacity:0;transition:opacity .15s,transform .15s;z-index:20;display:block;pointer-events:none}.rp-promo-node-dot-left{left:-6px;background:#10b981;box-shadow:0 0 0 2px #10b981;pointer-events:none}.rp-promo-node-dot-right{right:-6px;background:#6366f1;box-shadow:0 0 0 2px #6366f1;cursor:crosshair;pointer-events:all}.rp-promo-node-dot.visible{opacity:1}.rp-promo-node-dot-right.visible:hover{transform:translateY(-50%) scale(1.3)}.rp-promo-env-detail{margin-top:10px;border:1px solid #f0f0ef;border-radius:8px;overflow:hidden}.rp-promo-env-detail-row{display:flex;align-items:center;justify-content:space-between;padding:7px 12px;border-bottom:1px solid #f0f0ef;font-size:12.5px}.rp-promo-env-detail-row:last-child{border-bottom:none}.rp-promo-env-detail-label{color:#9ca3af;font-weight:500}.rp-promo-env-detail-value{color:#111827;font-weight:500}.rp-promo-env-detail-url{color:#2563eb;font-size:11px;word-break:break-all}.rp-promo-props-panel{display:flex;flex-direction:column;width:300px;min-width:300px;max-width:300px;height:100%;background:#fff;overflow:hidden;border-left:1px solid #e5e7eb}.rp-promo-props-header{display:flex;align-items:center;gap:10px;padding:14px 16px;color:#111827;background:#fff!important;border-bottom:1px solid #f3f4f6;flex-shrink:0}.rp-promo-props-header-icon{width:32px;height:32px;border-radius:8px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rp-promo-props-header-info{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.rp-promo-props-header-type{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#6b7280}.rp-promo-props-header-name{font-size:14px;font-weight:700;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-promo-props-close{width:26px;height:26px;border-radius:50%;background:#f3f4f6;border:none;color:#374151;font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;transition:background .15s}.rp-promo-props-close:hover{background:#e5e7eb;color:#111827}.rp-promo-props-body{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:14px}.rp-promo-props-section{display:flex;flex-direction:column;gap:5px}.rp-promo-props-label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.06em}.rp-promo-props-input{width:100%;padding:7px 10px;border:1.5px solid #e5e7eb;border-radius:7px;font-size:13px;color:#111827;background:#f9fafb;outline:none;transition:border-color .15s,background .15s;box-sizing:border-box}.rp-promo-props-input:focus{border-color:#6366f1;background:#fff}.rp-promo-props-select{width:100%;padding:7px 10px;border:1.5px solid #e5e7eb;border-radius:7px;font-size:13px;color:#111827;background:#f9fafb;outline:none;cursor:pointer;transition:border-color .15s;box-sizing:border-box}.rp-promo-props-select:focus{border-color:#6366f1}.rp-promo-env-dropdown{position:relative;outline:none}.rp-promo-env-dropdown-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:8px 11px;border:1.5px solid #e5e7eb;border-radius:8px;background:#f9fafb;font-size:13px;color:#111827;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s;text-align:left;gap:8px}.rp-promo-env-dropdown-trigger:hover,.rp-promo-env-dropdown-trigger.open{border-color:#6366f1;background:#fff;box-shadow:0 0 0 3px #6366f11a}.rp-promo-env-dropdown-selected{display:flex;align-items:center;gap:8px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-promo-env-dropdown-placeholder{color:#9ca3af;flex:1}.rp-promo-env-dropdown-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.rp-promo-env-dropdown-chevron{color:#9ca3af;flex-shrink:0;transition:transform .2s}.rp-promo-env-dropdown-trigger.open .rp-promo-env-dropdown-chevron{transform:rotate(180deg)}.rp-promo-env-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0000001f,0 2px 8px #0000000f;z-index:200;overflow:hidden;padding:4px;max-height:220px;overflow-y:auto}.rp-promo-env-dropdown-item{width:100%;display:flex;align-items:center;gap:9px;padding:8px 10px;border:none;background:transparent;border-radius:7px;font-size:13px;color:#111827;cursor:pointer;text-align:left;transition:background .1s}.rp-promo-env-dropdown-item:hover{background:#f5f3ff;color:#4f46e5}.rp-promo-env-dropdown-item.active{background:#ede9fe;color:#4f46e5;font-weight:600}.rp-promo-env-dropdown-item-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-promo-props-env-card{border-radius:9px;border:1.5px solid #e5e7eb;overflow:hidden;background:#fff;flex-shrink:0}.rp-promo-props-env-card-top{display:flex;align-items:center;gap:8px;padding:10px 12px}.rp-promo-props-env-card-badge{font-size:9px;font-weight:700;letter-spacing:.08em;color:#fff;background:#ffffff40;padding:2px 7px;border-radius:4px}.rp-promo-props-env-card-name{font-size:13px;font-weight:700;color:#fff;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-promo-props-env-card-rows{display:flex;flex-direction:column}.rp-promo-props-env-row{display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid #f3f4f6;font-size:12.5px}.rp-promo-props-env-row-icon{color:#9ca3af;display:flex;align-items:center;flex-shrink:0}.rp-promo-props-env-row-label{color:#6b7280;flex:1;font-weight:500}.rp-promo-props-env-row-value{color:#111827;font-weight:600}.rp-promo-props-env-row-url{align-items:flex-start}.rp-promo-props-env-row-url-text{color:#2563eb;font-size:11px;word-break:break-all;font-weight:500}.rp-promo-props-card-settings{display:flex;flex-direction:column;gap:12px;padding-top:14px;border-top:1.5px dashed #e5e7eb;margin-top:4px}.rp-promo-props-card-settings-title{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#6b7280}.rp-promo-props-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.rp-promo-props-toggle-info{display:flex;flex-direction:column;gap:1px}.rp-promo-props-toggle{position:relative;width:36px;height:20px;border-radius:20px;background:#e5e7eb;border:none;cursor:pointer;transition:background .2s;flex-shrink:0;padding:0}.rp-promo-props-toggle.on{background:#6366f1}.rp-promo-props-toggle-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000002e;transition:transform .2s}.rp-promo-props-toggle.on .rp-promo-props-toggle-thumb{transform:translate(16px)}.rp-promo-props-unset{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:24px 16px;border:1.5px dashed #e5e7eb;border-radius:9px;color:#9ca3af;font-size:12px;text-align:center}.rp-promo-props-unset-icon{width:32px;height:32px;border-radius:8px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;margin-bottom:2px}.rp-promo-connecting-hint{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:#1e293b;color:#fff;font-size:12px;padding:7px 16px;border-radius:20px;pointer-events:none;z-index:100;box-shadow:0 4px 12px #0003}.rp-version-banner{display:flex;align-items:center;gap:8px;padding:8px 20px;background:#eff6ff;border-bottom:1px solid #bfdbfe;color:#1e40af;font-size:13px}.rp-version-banner span{flex:1}.rp-version-banner-btn{padding:4px 12px;border-radius:6px;border:1px solid #93c5fd;background:#fff;color:#1e40af;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.rp-version-banner-btn:hover{background:#dbeafe}.rp-version-banner-btn-restore{border-color:#1e40af;background:#1e40af;color:#fff}.rp-version-banner-btn-restore:hover{background:#1e3a8a}.rp-promo-approval-circle{position:absolute;width:140px;height:140px;border-radius:50%;background:linear-gradient(145deg,#fffbeb,#fef3c7);border:2.5px solid #fde68a;box-shadow:0 4px 18px #d9770624,0 1px 4px #0000000f;cursor:pointer;transition:box-shadow .18s,border-color .18s,transform .12s;-webkit-user-select:none;user-select:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-align:center;overflow:visible}.rp-promo-approval-circle:hover,.rp-promo-approval-circle.hovered{box-shadow:0 8px 28px #d977063d,0 2px 8px #00000014;border-color:#f59e0b;transform:scale(1.04)}.rp-promo-approval-circle.selected{border-color:#d97706;box-shadow:0 0 0 4px #d9770633,0 8px 28px #d977062e}.rp-promo-approval-circle.connecting{border-color:#6366f1;box-shadow:0 0 0 4px #6366f133}.rp-approval-circle-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#d97706,#92400e);box-shadow:0 2px 8px #d9770659;color:#fff;margin-bottom:2px}.rp-approval-circle-label{font-size:8.5px;font-weight:700;letter-spacing:.08em;color:#92400e;text-transform:uppercase}.rp-approval-circle-name{font-size:12px;font-weight:700;color:#111827;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2}.rp-approval-circle-timeout{font-size:10px;font-weight:600;color:#92400e;background:#fde68a;border-radius:10px;padding:1px 7px;margin-top:1px}.rp-approval-circle-dot{position:absolute;bottom:10px;width:6px;height:6px;border-radius:50%;background:#f59e0b;box-shadow:0 0 0 2px #f59e0b40;animation:rp-pulse 2s ease-in-out infinite}@keyframes rp-pulse{0%,to{opacity:1}50%{opacity:.5}}.rp-promo-props-textarea{width:100%;padding:8px 10px;border:1px solid #e5e7eb;border-radius:8px;font-size:12.5px;color:#111827;background:#fff;resize:vertical;font-family:inherit;line-height:1.5;transition:border-color .15s;box-sizing:border-box}.rp-promo-props-textarea:focus{outline:none;border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b1a}.rp-approval-type-group{display:flex;gap:6px;margin-bottom:6px}.rp-approval-type-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:7px 10px;border:1.5px solid #e5e7eb;border-radius:8px;background:#f9fafb;font-size:12px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s}.rp-approval-type-btn:hover{border-color:#fde68a;background:#fffbeb;color:#92400e}.rp-approval-type-btn.active{border-color:#f59e0b;background:#fef3c7;color:#92400e;font-weight:600}.rp-approval-type-hint{font-size:11px;color:#9ca3af;margin:0;line-height:1.4}.rp-approval-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.rp-approval-chip{display:flex;align-items:center;gap:5px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:20px;padding:3px 8px 3px 3px;font-size:12px;color:#374151}.rp-approval-chip-avatar{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:700;color:#fff;flex-shrink:0}.rp-approval-chip-name{font-size:12px;font-weight:500;color:#374151;white-space:nowrap}.rp-approval-chip-remove{display:flex;align-items:center;justify-content:center;width:14px;height:14px;border:none;background:transparent;color:#9ca3af;cursor:pointer;border-radius:50%;padding:0;transition:color .1s,background .1s}.rp-approval-chip-remove:hover{color:#b91c1c;background:#fecaca}.rp-approval-add-approver{position:relative}.rp-approval-add-btn{display:flex;align-items:center;gap:6px;padding:7px 12px;border:1.5px dashed #d1d5db;border-radius:8px;background:transparent;font-size:12px;font-weight:500;color:#6b7280;cursor:pointer;width:100%;transition:all .15s}.rp-approval-add-btn:hover,.rp-approval-add-btn.open{border-color:#f59e0b;color:#92400e;background:#fef3c7}.rp-approval-approver-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0000001f;z-index:100;overflow:hidden}.rp-approval-approver-search{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid #f3f4f6;color:#9ca3af}.rp-approval-approver-search input{flex:1;border:none;outline:none;font-size:12.5px;color:#111827;background:transparent}.rp-approval-approver-list{max-height:180px;overflow-y:auto}.rp-approval-approver-item{display:flex;align-items:center;gap:8px;padding:8px 12px;width:100%;border:none;background:transparent;cursor:pointer;text-align:left;transition:background .1s}.rp-approval-approver-item:hover{background:#fffbeb}.rp-approval-approver-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff;flex-shrink:0}.rp-approval-approver-info{display:flex;flex-direction:column;gap:1px;min-width:0}.rp-approval-approver-name{font-size:12.5px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-approval-approver-email{font-size:11px;color:#9ca3af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-approval-approver-empty{padding:16px;text-align:center;font-size:12px;color:#9ca3af}.rp-approval-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin-bottom:4px}.rp-approval-toggle-label-group{display:flex;align-items:center;gap:6px}.rp-approval-toggle-label{font-size:12.5px;font-weight:600;color:#92400e}.rp-approval-toggle-switch{width:36px;height:20px;border-radius:20px;border:none;background:#d1d5db;cursor:pointer;padding:0;position:relative;transition:background .2s;flex-shrink:0}.rp-approval-toggle-switch.on{background:#f59e0b}.rp-approval-toggle-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s;display:block;box-shadow:0 1px 3px #0000002e}.rp-approval-toggle-switch.on .rp-approval-toggle-thumb{transform:translate(16px)}.rp-approval-config-body{margin-top:10px;padding:12px;background:#fafafa;border:1px solid #f3f4f6;border-radius:8px;display:flex;flex-direction:column;gap:2px}.rp-promo-minimap{width:180px;height:120px;background:#fffffff0;border:1.5px solid #e2e8f0;border-radius:10px;box-shadow:0 4px 20px #00000024,0 1px 4px #0000000f;overflow:hidden;cursor:crosshair;z-index:200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);-webkit-user-select:none;user-select:none}.rp-promo-minimap:before{content:"MAP";position:absolute;top:5px;left:8px;font-size:9px;font-weight:700;letter-spacing:.06em;color:#94a3b8;pointer-events:none;z-index:2}.rp-promo-minimap-node{position:absolute;border-radius:2px;border:1px solid;pointer-events:none}.rp-promo-minimap-viewport{position:absolute;border:1.5px solid #6366f1;background:#6366f114;border-radius:3px;pointer-events:none;transition:left .05s,top .05s}.cd-edge-promote-wrap{position:absolute;pointer-events:all;z-index:5;transform:translate(-50%,-50%)}.cd-edge-promote-btn{display:flex;align-items:center;gap:5px;padding:5px 10px;background:#fff;border:1.5px solid #e5e7eb;border-radius:20px;font-size:11px;font-weight:600;color:#374151;cursor:pointer;white-space:nowrap;box-shadow:0 2px 6px #0000001a;font-family:inherit;transition:background .12s,border-color .12s,color .12s}.cd-edge-promote-btn:hover{background:#f56816;border-color:#f56816;color:#fff}.cd-edge-promote-btn svg{flex-shrink:0}.field-config-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fieldConfigFadeIn .2s ease}@keyframes fieldConfigFadeIn{0%{opacity:0}to{opacity:1}}.field-config-modal{background:#fff;border-radius:12px;width:90%;max-width:680px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0003;animation:fieldConfigSlideIn .2s ease}@keyframes fieldConfigSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.field-config-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.field-config-modal-header h2{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 4px}.field-config-subtitle{font-size:13px;color:#6b7280;margin:0}.field-config-modal-close{width:36px;height:36px;border-radius:8px;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#64748b;transition:all .15s ease;flex-shrink:0}.field-config-modal-close:hover{background:#f1f5f9;color:#1a1a1a}.field-config-modal-content{flex:1;padding:24px;overflow-y:auto}.field-config-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:10px 12px;border-radius:8px;font-size:13px;margin-bottom:16px}.field-config-loading{text-align:center;padding:40px;color:#6b7280;font-size:14px}.field-config-add-form{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;padding:20px;margin-bottom:24px}.field-config-add-form h3{font-size:14px;font-weight:600;color:#374151;margin:0 0 16px}.field-config-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.field-config-form-group{display:flex;flex-direction:column}.field-config-form-group label{font-size:12px;font-weight:500;color:#6b7280;margin-bottom:6px}.field-config-input,.field-config-select{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#111;background:#fff;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.field-config-input:focus,.field-config-select:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px #0000001a}.field-config-input::placeholder{color:#9ca3af}.field-config-checkbox-group{justify-content:flex-end}.field-config-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:#374151}.field-config-checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.field-config-add-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;background:#000;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .2s;margin-top:4px}.field-config-add-btn:hover:not(:disabled){background:#1a1a1a}.field-config-add-btn:disabled{opacity:.5;cursor:not-allowed}.field-config-list{margin-top:8px}.field-config-list h3{font-size:14px;font-weight:600;color:#374151;margin:0 0 12px}.field-config-empty{text-align:center;padding:40px 20px;color:#9ca3af}.field-config-empty svg{margin-bottom:12px}.field-config-empty p{font-size:14px;color:#6b7280;margin:0 0 4px}.field-config-empty span{font-size:13px;color:#9ca3af}.field-config-item{border:1px solid #e5e7eb;border-radius:8px;padding:14px 16px;margin-bottom:8px;background:#fff;transition:border-color .15s,box-shadow .15s}.field-config-item:hover{border-color:#d1d5db;box-shadow:0 2px 4px #0000000a}.field-config-item:last-child{margin-bottom:0}.field-config-item-view{display:flex;align-items:center;justify-content:space-between}.field-config-item-info{flex:1;min-width:0}.field-config-item-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.field-config-item-label{font-weight:500;color:#1a1a1a;font-size:14px}.field-config-required-badge{font-size:10px;font-weight:500;padding:2px 6px;background:#fef3c7;color:#92400e;border-radius:4px;text-transform:uppercase}.field-config-item-meta{display:flex;align-items:center;gap:10px;font-size:12px;color:#6b7280}.field-config-item-name{font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:11px;background:#f3f4f6;padding:2px 6px;border-radius:4px;color:#374151}.field-config-item-type{color:#6b7280}.field-config-item-options{color:#9ca3af}.field-config-item-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.field-config-edit-btn,.field-config-delete-btn{width:32px;height:32px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6b7280;transition:all .15s}.field-config-edit-btn:hover{background:#f3f4f6;color:#1a1a1a;border-color:#d1d5db}.field-config-delete-btn:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.field-config-item-edit{padding:4px 0}.field-config-item-edit .field-config-form-row{margin-bottom:12px}.field-config-item-edit .field-config-form-group{margin-bottom:0}.field-config-item-edit .field-config-item-actions{margin-top:12px;justify-content:flex-end}.field-config-save-btn,.field-config-cancel-btn{padding:8px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.field-config-save-btn{background:#000;border:1px solid #000;color:#fff}.field-config-save-btn:hover:not(:disabled){background:#1a1a1a}.field-config-cancel-btn{background:#fff;border:1px solid #d1d5db;color:#374151}.field-config-cancel-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.field-config-save-btn:disabled,.field-config-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.stages-list{display:flex;flex-direction:column;gap:12px;padding:24px;min-height:100%;background-color:#f8fafc;background-image:radial-gradient(circle,#d1d5db 1px,transparent 1px);background-size:20px 20px}.stage-card{display:flex;align-items:center;gap:16px;padding:16px 20px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;transition:all .15s ease}.stage-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000d}.stage-order{min-width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;font-weight:600;color:#6b7280}.stage-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;flex-shrink:0;background-color:var(--primary-light, #fff7ed)}.stage-icon svg{width:18px;height:18px}.stage-icon span{color:var(--primary, #f95d03);display:flex;align-items:center;justify-content:center}.stage-info{flex:1;min-width:0}.stage-name{font-size:16px;font-weight:600;color:#111827;margin-bottom:4px}.stage-type-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stage-actions{display:flex;align-items:center;gap:12px}.stage-status{padding:6px 16px;border-radius:6px;font-size:13px;font-weight:500;border:1px solid}.stage-status.active{background:#f0fdf4;color:#16a34a;border-color:#86efac}.stage-status.inactive{background:#fef2f2;color:#dc2626;border-color:#fecaca}.stage-edit-btn,.stage-export-btn,.stage-delete-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s ease}.stage-edit-btn:hover{background:#f3f4f6;color:#374151;border-color:#d1d5db}.stage-export-btn:hover{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.stage-delete-btn:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.stages-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px;gap:16px;min-height:100%;background-color:#f8fafc;background-image:radial-gradient(circle,#d1d5db 1px,transparent 1px);background-size:20px 20px}.stages-loading .spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:var(--primary, #f95d03);border-radius:50%;animation:spin .8s linear infinite}.stages-loading p{margin:0;color:#6b7280;font-size:14px}.stages-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px;gap:16px;min-height:100%;background-color:#f8fafc;background-image:radial-gradient(circle,#d1d5db 1px,transparent 1px);background-size:20px 20px}.stages-error p{margin:0;color:#dc2626}.stages-error button{padding:10px 20px;background:var(--secondary, #1c1c1c);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer}.stages-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px;gap:12px;color:#6b7280;min-height:100%;background-color:#f8fafc;background-image:radial-gradient(circle,#d1d5db 1px,transparent 1px);background-size:20px 20px}.stages-empty svg{margin-bottom:8px}.stages-empty h3{margin:0;font-size:18px;font-weight:600;color:#374151}.stages-empty p{margin:0;font-size:14px}.stages-create-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;margin-top:8px;background:var(--primary, #f95d03);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s ease}.stages-create-btn:hover{background:#e85502}@media(max-width:768px){.stages-list{padding:16px}.stage-card{flex-wrap:wrap;padding:12px 16px}.stage-info{order:1;width:100%;margin-top:8px}.stage-actions{order:0;margin-left:auto}}.stage-editor{display:flex;flex-direction:column;height:100%;background:#fff}.stage-editor-header{display:flex;align-items:center;gap:16px;padding:16px 24px;border-bottom:1px solid #e5e7eb;background:#fafafa}.stage-back-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background:none;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;font-size:13px;cursor:pointer;transition:all .15s ease}.stage-back-btn:hover{background:#f3f4f6;color:#374151;border-color:#d1d5db}.stage-editor-title{display:flex;align-items:center;gap:12px;flex:1}.stage-name-input{font-size:20px;font-weight:600;color:#111827;background:none;border:none;outline:none;padding:4px 0;min-width:200px}.stage-name-input::placeholder{color:#9ca3af}.stage-type-badge-large{padding:4px 12px;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stage-editor-actions{display:flex;gap:8px}.stage-save-btn,.stage-test-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.stage-save-btn{background:#fff;color:#374151}.stage-save-btn:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db}.stage-test-btn{background:var(--primary);color:#fff;border-color:var(--primary)}.stage-test-btn:hover:not(:disabled){background:var(--primary-20);border-color:var(--primary-20)}.stage-save-btn:disabled,.stage-test-btn:disabled{opacity:.6;cursor:not-allowed}.stage-export-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;background:#fff;color:#374151}.stage-export-btn:hover{background:#f9fafb;border-color:#d1d5db}.stage-save-btn-wrapper{position:relative;display:inline-flex}.stage-save-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);padding:8px 12px;background:#1f2937;color:#fff;font-size:12px;font-weight:500;white-space:nowrap;border-radius:6px;opacity:0;visibility:hidden;transition:all .2s ease;z-index:100;box-shadow:0 4px 12px #00000026}.stage-save-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1f2937}.stage-save-btn-wrapper:hover .stage-save-tooltip{opacity:1;visibility:visible}.stage-editor-error{padding:12px 24px;background:#fef2f2;color:#dc2626;font-size:14px;border-bottom:1px solid #fecaca}.stage-editor-content{display:flex;flex:1;min-height:0;overflow:hidden}.stage-editor-left{flex:1;display:flex;flex-direction:column;border-right:1px solid #e5e7eb;min-width:0}.stage-editor-right{width:400px;display:flex;flex-direction:column;flex-shrink:0;min-height:0;overflow:hidden}.stage-script-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.stage-script-type{display:flex;align-items:center;gap:8px;font-size:13px;color:#6b7280}.script-type-btn{display:flex;align-items:center;gap:4px;padding:6px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;color:#6b7280;cursor:pointer;transition:all .15s ease}.script-type-btn:hover{border-color:#d1d5db}.script-type-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.stage-type-dropdown{position:relative}.stage-type-dropdown-trigger{display:flex;align-items:center;gap:10px;padding:8px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease;min-width:140px}.stage-type-dropdown-trigger:hover{border-color:#d1d5db;background:#f9fafb}.stage-type-dropdown-trigger:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light, rgba(249, 93, 3, .1))}.stage-type-indicator{width:10px;height:10px;border-radius:50%;flex-shrink:0}.stage-type-label{flex:1;text-align:left}.stage-type-chevron{color:#9ca3af;transition:transform .2s ease;flex-shrink:0}.stage-type-chevron.open{transform:rotate(180deg)}.stage-type-dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:180px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 40px #0000001f,0 2px 6px #0000000a;padding:6px;z-index:100;animation:dropdownSlide .15s ease}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.stage-type-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:none;border:none;border-radius:6px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .1s ease;text-align:left}.stage-type-option:hover{background:#f3f4f6}.stage-type-option.active{background:var(--primary-light, #fff7ed);color:var(--primary, #f95d03)}.stage-type-option svg{margin-left:auto;color:var(--primary, #f95d03)}.stage-tabs{display:flex;gap:0;border-bottom:1px solid #e5e7eb;background:#fff}.stage-tab{display:flex;align-items:center;gap:6px;padding:12px 20px;background:none;border:none;border-bottom:2px solid transparent;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.stage-tab:hover{color:#374151;background:#f9fafb}.stage-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.stage-script-editor{flex:1;display:flex;flex-direction:column;min-height:0}.script-label{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#1e1e1e;color:#9ca3af;font-size:12px;font-family:Fira Code,Monaco,monospace}.script-textarea{flex:1;padding:16px;background:#1e1e1e;color:#d4d4d4;font-family:Fira Code,Monaco,monospace;font-size:13px;line-height:1.6;border:none;outline:none;resize:none}.stage-variables-editor,.stage-required-editor{flex:1;display:flex;flex-direction:column;padding:16px;overflow:auto}.variables-header,.required-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;font-size:14px;font-weight:600;color:#374151}.add-var-btn{display:flex;align-items:center;gap:4px;padding:6px 12px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;color:#374151;cursor:pointer}.add-var-btn:hover{background:#e5e7eb}.variables-empty,.required-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;color:#9ca3af;text-align:center}.variables-empty p,.required-empty p{margin:0}.variables-empty .hint,.required-empty .hint{font-size:12px;margin-top:4px}.stage-variables-editor.json-editor{padding:0;display:flex;flex-direction:column}.stage-variables-editor.json-editor .variables-header{padding:12px 16px;margin-bottom:0;background:#f9fafb;border-bottom:1px solid #e5e7eb}.stage-variables-editor.json-editor .variables-header span{display:flex;align-items:center;gap:8px}.json-icon{font-family:Fira Code,Monaco,monospace;font-weight:700;color:var(--primary)}.format-json-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;color:#374151;cursor:pointer;transition:all .15s ease}.format-json-btn:hover{background:#f3f4f6;border-color:#d1d5db}.json-editor-container{flex:1;display:flex;flex-direction:column;min-height:0;position:relative}.json-textarea{flex:1;padding:16px;background:#1e1e1e;color:#d4d4d4;font-family:Fira Code,Monaco,monospace;font-size:13px;line-height:1.6;border:none;outline:none;resize:none}.json-textarea::placeholder{color:#6b7280}.json-error{padding:8px 16px;background:#fef2f2;color:#dc2626;font-size:12px;border-top:1px solid #fecaca}.json-hint{padding:12px 16px;background:#f9fafb;border-top:1px solid #e5e7eb}.json-hint .hint-label{display:inline-block;padding:2px 8px;background:#fef3c7;color:#92400e;font-size:11px;font-weight:600;border-radius:4px;margin-bottom:6px}.json-hint p{margin:0;font-size:12px;color:#6b7280}.json-hint .hint-example{margin-top:6px}.json-hint .hint-example code{background:#e5e7eb;padding:2px 6px;border-radius:3px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:11px}.variables-list{display:flex;flex-direction:column;gap:8px}.variable-row{display:flex;gap:8px}.var-key-input,.var-value-input{flex:1;padding:10px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;font-family:Fira Code,Monaco,monospace}.var-key-input{max-width:200px;text-transform:uppercase}.remove-var-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:1px solid #e5e7eb;border-radius:6px;color:#9ca3af;cursor:pointer}.remove-var-btn:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.stage-config-variables-editor{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.config-variables-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#f9fafb;border-bottom:1px solid #e5e7eb;font-size:14px;font-weight:600;color:#374151}.add-config-var-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--primary);border:none;border-radius:6px;font-size:13px;font-weight:500;color:#fff;cursor:pointer;transition:background .15s ease}.add-config-var-btn:hover{background:var(--primary-20)}.config-variables-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;color:#6b7280;text-align:center;background-color:#f8fafc;background-image:radial-gradient(circle,#d1d5db 1px,transparent 1px);background-size:20px 20px}.config-variables-empty svg{margin-bottom:16px;opacity:.5}.config-variables-empty p{margin:0}.config-variables-empty .hint{font-size:12px;margin-top:4px}.config-variables-list{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:16px;min-height:0;background-color:#f8fafc;background-image:radial-gradient(circle,#d1d5db 1px,transparent 1px);background-size:20px 20px}.config-variable-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;flex-shrink:0}.config-var-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border-bottom:1px solid #e5e7eb}.config-var-name{flex:1;max-width:300px;padding:10px 14px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-family:Fira Code,Monaco,monospace;font-weight:600;color:#111827;text-transform:uppercase}.config-var-name::placeholder{color:#9ca3af;text-transform:none}.config-var-delete{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:none;color:#9ca3af;cursor:pointer;border-radius:6px;transition:all .15s ease}.config-var-delete:hover{background:#fef2f2;color:#dc2626}.config-var-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px}.config-var-field{display:flex;flex-direction:column;gap:6px}.config-var-field label{font-size:12px;font-weight:500;color:#6b7280}.config-var-field input{padding:10px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;color:#374151}.config-var-field input::placeholder{color:#9ca3af}.config-var-toggle{padding:12px 16px;background:#fff;border-top:1px solid #e5e7eb}.toggle-label{display:flex;align-items:center;gap:10px;cursor:pointer}.toggle-label input[type=checkbox]{display:none}.toggle-switch{position:relative;width:40px;height:22px;background:#e5e7eb;border-radius:11px;transition:background .2s ease}.toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 1px 3px #0000001a}.toggle-label input[type=checkbox]:checked+.toggle-switch{background:var(--primary)}.toggle-label input[type=checkbox]:checked+.toggle-switch:after{transform:translate(18px)}.toggle-text{font-size:13px;font-weight:500;color:#374151}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;background:var(--primary);color:#fff;font-size:11px;font-weight:600;border-radius:9px}.add-required-row{display:flex;gap:8px}.add-required-row input{padding:6px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;font-family:Fira Code,Monaco,monospace;text-transform:uppercase;width:180px}.add-required-row button{padding:6px 12px;background:var(--primary);border:none;border-radius:6px;color:#fff;font-size:13px;font-weight:500;cursor:pointer}.add-required-row button:hover{background:var(--primary-20)}.required-list{display:flex;flex-wrap:wrap;gap:8px}.required-item{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;font-family:Fira Code,Monaco,monospace;font-size:12px;color:#374151}.required-item button{display:flex;align-items:center;justify-content:center;background:none;border:none;color:#9ca3af;cursor:pointer;padding:0}.required-item button:hover{color:#dc2626}.output-panel{flex:1;display:flex;flex-direction:column;background:#fff;min-height:0;overflow:hidden}.output-header{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#f9fafb;border-bottom:1px solid #e5e7eb;font-size:14px;font-weight:500;color:#374151;flex-shrink:0}.output-content{flex:1;padding:16px;overflow-y:auto;overflow-x:hidden;background:#fafafa;min-height:0;max-height:100%}.output-running{display:flex;align-items:center;gap:12px;color:#6b7280}.output-running .spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.output-content pre{margin:0;font-family:Fira Code,Monaco,monospace;font-size:13px;line-height:1.6;color:#374151;white-space:pre-wrap;word-break:break-word}.output-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#9ca3af;text-align:center}.output-placeholder svg{margin-bottom:12px}.output-placeholder p{margin:0}.output-placeholder .hint{font-size:12px;margin-top:4px}.output-placeholder .output-hint{margin-top:16px;padding:8px 12px;background:#fff7ed;border-radius:6px}.output-placeholder code{padding:2px 6px;background:var(--primary-light);color:var(--primary);border-radius:3px;font-family:Fira Code,Monaco,monospace;font-size:11px}.stop-poll-btn{margin-left:auto;padding:6px 12px;background:#dc2626;border:none;border-radius:6px;color:#fff;font-size:12px;font-weight:500;cursor:pointer;transition:background .15s ease}.stop-poll-btn:hover{background:#b91c1c}.stage-poll-config-editor{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.poll-config-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#f9fafb;border-bottom:1px solid #e5e7eb;font-size:14px;font-weight:600;color:#374151}.poll-config-content{flex:1;overflow-y:auto;padding:24px;background-color:#f8fafc;background-image:radial-gradient(circle,#d1d5db 1px,transparent 1px);background-size:20px 20px}.poll-config-description{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:24px}.poll-config-description svg{color:#14b8a6;flex-shrink:0;margin-top:2px}.poll-config-description p{margin:0;font-size:14px;color:#6b7280;line-height:1.5}.poll-config-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.poll-config-field{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:16px}.poll-config-field.full-width{grid-column:1 / -1}.poll-config-field label{font-size:13px;font-weight:600;color:#374151}.poll-config-field input{padding:10px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827}.poll-config-field input:focus{outline:none;border-color:#14b8a6;box-shadow:0 0 0 3px #14b8a61a}.poll-config-field input::placeholder{color:#9ca3af}.poll-config-field .field-hint{font-size:12px;color:#9ca3af}.expected-output-tags{display:flex;flex-wrap:wrap;gap:8px;min-height:20px;margin-bottom:8px}.expected-output-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 8px 4px 12px;background:#14b8a6;color:#fff;border-radius:16px;font-size:13px;font-weight:500}.tag-remove-btn{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;transition:background .15s ease}.tag-remove-btn:hover{background:#ffffff4d}.expected-output-input-row{display:flex;gap:8px}.expected-output-input-row input{flex:1}.add-expected-output-btn{padding:10px 16px;background:#14b8a6;border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s ease}.add-expected-output-btn:hover:not(:disabled){background:#0d9488}.add-expected-output-btn:disabled{background:#d1d5db;cursor:not-allowed}.poll-config-separator{margin-top:20px;padding-top:16px;border-top:1px solid #e5e7eb;grid-column:1 / -1}.poll-config-separator span{font-size:14px;font-weight:600;color:#ef4444}.poll-config-separator .separator-hint{font-size:12px;color:#6b7280;margin-top:4px}.failure-tag,.failure-add-btn{background:#ef4444!important}.failure-add-btn:hover:not(:disabled){background:#dc2626!important}.stage-approval-config-editor{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.approval-config-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#f9fafb;border-bottom:1px solid #e5e7eb;font-size:14px;font-weight:600;color:#374151}.approval-config-content{flex:1;overflow-y:auto;padding:24px;background-color:#f8fafc;background-image:radial-gradient(circle,#d1d5db 1px,transparent 1px);background-size:20px 20px}.approval-config-description{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:24px}.approval-config-description svg{color:#ec4899;flex-shrink:0;margin-top:2px}.approval-config-description p{margin:0;font-size:14px;color:#6b7280;line-height:1.5}.approval-config-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.approval-config-field{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:16px}.approval-config-field.full-width{grid-column:1 / -1}.approval-config-field label{font-size:13px;font-weight:600;color:#374151}.approval-config-field input[type=number]{padding:10px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827}.approval-config-field input[type=number]:focus{outline:none;border-color:#ec4899;box-shadow:0 0 0 3px #ec48991a}.approval-config-field input::placeholder{color:#9ca3af}.approval-config-field .field-hint{font-size:12px;color:#9ca3af}.approval-message-textarea{padding:12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;resize:vertical;min-height:80px;font-family:inherit}.approval-message-textarea:focus{outline:none;border-color:#ec4899;box-shadow:0 0 0 3px #ec48991a}.approval-message-textarea::placeholder{color:#9ca3af}.approval-toggle{padding:4px 0}.approval-toggle .toggle-label{display:flex;align-items:center;gap:12px;cursor:pointer}.approval-toggle .toggle-label input[type=checkbox]{display:none}.approval-toggle .toggle-switch{position:relative;width:44px;height:24px;background:#e5e7eb;border-radius:12px;transition:background .2s ease;flex-shrink:0}.approval-toggle .toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 1px 3px #0000001a}.approval-toggle .toggle-label input[type=checkbox]:checked+.toggle-switch{background:#ec4899}.approval-toggle .toggle-label input[type=checkbox]:checked+.toggle-switch:after{transform:translate(20px)}.approval-toggle .toggle-text{font-size:13px;color:#6b7280}@media(max-width:1024px){.stage-editor-content{flex-direction:column}.stage-editor-left{border-right:none;border-bottom:1px solid #e5e7eb;min-height:400px}.stage-editor-right{width:100%;min-height:300px}}@media(max-width:768px){.stage-editor-header{flex-wrap:wrap;gap:12px}.stage-editor-title{order:1;width:100%}.stage-editor-actions{order:0;margin-left:auto}.stage-back-btn{order:0}}.user-selector{display:flex;flex-direction:column;gap:12px}.selected-users{display:flex;flex-wrap:wrap;gap:8px}.user-tag{display:inline-flex;align-items:center;gap:8px;padding:6px 8px 6px 6px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:20px;font-size:13px;color:#374151}.user-tag .user-avatar{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-20));color:#fff;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center}.user-tag-name{font-weight:500}.user-tag-remove{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:none;border:none;border-radius:50%;color:#9ca3af;cursor:pointer;transition:all .15s ease}.user-tag-remove:hover{background:#e5e7eb;color:#dc2626}.user-dropdown{position:relative}.user-search-input{width:100%;padding:10px 12px 10px 40px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;transition:all .15s ease}.user-search-input:focus{outline:none;border-color:#ec4899;box-shadow:0 0 0 3px #ec48991a;background:#fff}.user-search-input::placeholder{color:#9ca3af}.user-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.user-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:280px;overflow-y:auto;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 40px #0000001f,0 2px 6px #0000000a;padding:6px;z-index:100;animation:userDropdownSlide .15s ease}@keyframes userDropdownSlide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.user-dropdown-empty{padding:24px;text-align:center;color:#9ca3af;font-size:13px}.user-option{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;background:none;border:none;border-radius:8px;text-align:left;cursor:pointer;transition:all .1s ease}.user-option:hover{background:#f3f4f6}.user-option.selected{background:#fdf2f8}.user-option-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-20));color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-option-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.user-option-name{font-size:14px;font-weight:500;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-option-email{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-option-badge{padding:2px 8px;background:#fef3c7;color:#92400e;font-size:11px;font-weight:600;border-radius:4px}.user-option-check{color:#ec4899;flex-shrink:0}.credentials-container{display:flex;flex-direction:column;min-height:100%;background-color:#f8fafc;background-image:radial-gradient(circle,#d1d5db 1px,transparent 1px);background-size:20px 20px}.credentials-header{display:flex;align-items:center;justify-content:space-between;padding:24px;background:#fff;border-bottom:1px solid #e5e7eb}.credentials-header-text h2{margin:0 0 4px;font-size:20px;font-weight:600;color:#111827}.credentials-header-text p{margin:0;font-size:14px;color:#6b7280}.credentials-list{display:flex;flex-direction:column;gap:12px;padding:24px}.credential-card{display:flex;align-items:center;gap:16px;padding:12px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;transition:all .15s ease}.credential-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000d}.credential-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;flex-shrink:0}.credential-icon svg{width:18px;height:18px}.credential-name-col{display:flex;align-items:center;gap:8px;min-width:200px;flex:1}.credential-name{font-size:13px;font-weight:600;color:#111827;font-family:SF Mono,Monaco,Inconsolata,monospace}.credential-secret-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;background:#fef2f2;color:#dc2626;border-radius:4px;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.credential-value-col{flex:1;min-width:150px;font-size:13px}.credential-value-masked{color:#9ca3af;font-family:SF Mono,Monaco,Inconsolata,monospace;letter-spacing:2px}.credential-value-visible{color:#374151;font-family:SF Mono,Monaco,Inconsolata,monospace;background:#f3f4f6;padding:2px 6px;border-radius:4px}.credential-date-col{flex-shrink:0;min-width:100px;text-align:right}.credential-date{font-size:12px;color:#9ca3af}.credential-actions{display:flex;align-items:center;gap:8px}.credential-action-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s ease}.credential-action-btn:hover{background:#f3f4f6;color:#374151;border-color:#d1d5db}.credential-action-btn.delete:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.credentials-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px;gap:16px;min-height:100%;background-color:#f8fafc;background-image:radial-gradient(circle,#d1d5db 1px,transparent 1px);background-size:20px 20px}.credentials-loading .spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:var(--primary, #f95d03);border-radius:50%;animation:spin .8s linear infinite}.credentials-loading p{margin:0;color:#6b7280;font-size:14px}.credentials-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px;gap:16px;min-height:100%;background-color:#f8fafc;background-image:radial-gradient(circle,#d1d5db 1px,transparent 1px);background-size:20px 20px}.credentials-error p{margin:0;color:#dc2626}.credentials-error button{padding:10px 20px;background:var(--secondary, #1c1c1c);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer}.credentials-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px;gap:12px;color:#6b7280;min-height:100%}.credentials-empty svg{margin-bottom:8px;color:#d1d5db}.credentials-empty h3{margin:0;font-size:18px;font-weight:600;color:#374151}.credentials-empty p{margin:0;font-size:14px}.credentials-create-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;margin-top:8px;background:var(--primary, #f95d03);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s ease}.credentials-create-btn:hover{background:#e85502}.credential-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.credential-modal{background:#fff;border-radius:16px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.credential-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.credential-modal-header h2{margin:0;font-size:18px;font-weight:600;color:#111827}.credential-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .15s ease}.credential-modal-close:hover{background:#f3f4f6;color:#374151}.credential-modal-body{padding:24px;display:flex;flex-direction:column;gap:20px}.credential-form-group{display:flex;flex-direction:column;gap:6px}.credential-form-group label{font-size:13px;font-weight:600;color:#374151}.credential-form-group input[type=text],.credential-form-group input[type=password],.credential-form-group select,.credential-form-group textarea{padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;transition:border-color .15s ease,box-shadow .15s ease}.credential-form-group input:focus,.credential-form-group select:focus,.credential-form-group textarea:focus{outline:none;border-color:var(--primary, #f95d03);box-shadow:0 0 0 3px #f95d031a}.credential-form-group textarea{font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:13px;resize:vertical;min-height:100px}.credential-form-hint{font-size:12px;color:#9ca3af}.credential-form-group.checkbox label{display:flex;align-items:center;gap:8px;font-weight:400;cursor:pointer}.credential-form-group.checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary, #f95d03)}.credential-value-input{position:relative;display:flex;align-items:center}.credential-value-input input{flex:1;padding-right:44px}.credential-toggle-visibility{position:absolute;right:8px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;color:#6b7280;cursor:pointer;border-radius:4px;transition:all .15s ease}.credential-toggle-visibility:hover{background:#f3f4f6;color:#374151}.credential-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb;border-radius:0 0 16px 16px}.credential-cancel-btn{padding:10px 20px;background:none;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.credential-cancel-btn:hover{background:#f3f4f6;border-color:#d1d5db;color:#374151}.credential-save-btn{padding:10px 24px;background:var(--primary, #f95d03);border:none;border-radius:8px;font-size:14px;font-weight:500;color:#fff;cursor:pointer;transition:background .15s ease}.credential-save-btn:hover:not(:disabled){background:#e85502}.credential-save-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.credentials-header{flex-direction:column;align-items:flex-start;gap:16px}.credentials-list{padding:16px}.credential-card{flex-wrap:wrap;padding:12px 16px}.credential-info{order:1;width:100%;margin-top:8px}.credential-actions{order:0;margin-left:auto}.credential-modal{max-width:100%;border-radius:16px 16px 0 0;position:fixed;bottom:0;left:0;right:0;max-height:85vh}}.custom-outputs-settings{padding:20px 40px;min-height:100%}.custom-outputs-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:80px 0;color:#64748b;font-size:14px}.custom-outputs-loading:before{content:"";width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#f56816;border-radius:50%;animation:co-spin .8s linear infinite}@keyframes co-spin{to{transform:rotate(360deg)}}.custom-outputs-error{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;margin-bottom:20px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#dc2626;font-size:13px;font-weight:500}.custom-outputs-error button{background:none;border:none;color:#dc2626;cursor:pointer;font-weight:600;font-size:12px;text-decoration:underline}.custom-outputs-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:16px}.custom-outputs-header-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:#f568161a;border-radius:12px;color:#f56816;flex-shrink:0}.custom-outputs-header-text h3{margin:0 0 4px;font-size:20px;font-weight:700;color:#0f172a}.custom-outputs-header-text p{margin:0;font-size:13px;color:#64748b;line-height:1.5;max-width:560px}.custom-outputs-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;margin-left:8px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;font-size:11px;font-weight:700;color:#64748b}.custom-outputs-empty{text-align:center;padding:72px 32px;background:#f8fafc;border:2px dashed #e2e8f0;border-radius:16px}.custom-outputs-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;color:#cbd5e1;margin-bottom:20px;box-shadow:0 1px 3px #0000000a}.custom-outputs-empty h4{margin:0 0 8px;font-size:16px;font-weight:700;color:#0f172a}.custom-outputs-empty p{margin:0 auto;font-size:13px;color:#64748b;max-width:420px;line-height:1.6}.co-list{display:flex;flex-direction:column;gap:1px;background:#e2e8f0;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000a}.co-row{display:flex;align-items:center;gap:16px;padding:14px 20px;background:#fff;cursor:pointer;transition:background .15s,opacity .15s,box-shadow .15s}.co-row:hover{background:#fafbfc}.co-row-drag-handle{display:flex;align-items:center;justify-content:center;width:24px;height:24px;color:#cbd5e1;cursor:grab;flex-shrink:0;border-radius:4px;transition:color .15s,background .15s}.co-row-drag-handle:hover{color:#94a3b8;background:#f1f5f9}.co-row-drag-handle:active{cursor:grabbing}.co-row-dragging{opacity:.4;background:#f8fafc}.co-row-drag-over{box-shadow:0 -2px #f56816 inset}.co-row-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:#f5681614;border-radius:10px;color:#f56816;flex-shrink:0}.co-row-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.co-row-title{display:flex;align-items:baseline;gap:10px}.co-row-key{font-family:SFMono-Regular,ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:13.5px;font-weight:600;color:#0f172a}.co-row-label{font-size:13px;font-weight:400;color:#64748b}.co-row-desc{font-size:12px;color:#94a3b8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:400px}.co-row-meta{display:flex;align-items:center;gap:10px;flex-shrink:0}.co-type-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:6px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.co-type-pill.type-text{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.co-type-pill.type-url{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.co-type-pill.type-badge{background:#faf5ff;color:#9333ea;border:1px solid #e9d5ff}.co-type-pill.type-number{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.co-row-badges{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.co-badge-preview-sm{display:inline-block;padding:2px 9px;border-radius:5px;font-size:10.5px;font-weight:600;white-space:nowrap}.co-row-actions{display:flex;align-items:center;gap:4px;flex-shrink:0;margin-left:8px}.custom-output-edit-btn,.custom-output-delete-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#94a3b8;cursor:pointer;transition:all .15s}.custom-output-edit-btn:hover{border-color:#bfdbfe;color:#2563eb;background:#eff6ff}.custom-output-delete-btn:hover{border-color:#fecaca;color:#dc2626;background:#fef2f2}.custom-outputs-modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000}.custom-outputs-modal{background:#fff;border-radius:16px;width:580px;max-width:90vw;max-height:85vh;box-shadow:0 24px 64px #0000002e;display:flex;flex-direction:column}.custom-outputs-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e2e8f0;flex-shrink:0}.custom-outputs-modal-header h3{margin:0;font-size:17px;font-weight:700;color:#0f172a}.custom-outputs-modal-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background:#f1f5f9;color:#64748b;cursor:pointer;transition:all .15s}.custom-outputs-modal-close:hover{background:#e2e8f0;color:#0f172a}.custom-outputs-modal-body{padding:24px;display:flex;flex-direction:column;gap:18px;overflow-y:auto;flex:1}.custom-outputs-form-group{display:flex;flex-direction:column;gap:6px}.custom-outputs-form-group label{font-size:12px;font-weight:600;color:#334155;text-transform:uppercase;letter-spacing:.3px}.custom-outputs-form-group input,.custom-outputs-form-group select{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;color:#0f172a;transition:border-color .15s,box-shadow .15s;outline:none}.custom-outputs-form-group input:focus,.custom-outputs-form-group select:focus{border-color:#f56816;box-shadow:0 0 0 3px #f568161a}.custom-outputs-form-hint{font-size:11px;color:#94a3b8}.custom-outputs-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid #e2e8f0;background:#f8fafc;flex-shrink:0;border-radius:0 0 16px 16px}.custom-outputs-cancel-btn{padding:9px 18px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#475569;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.custom-outputs-cancel-btn:hover{background:#f1f5f9}.custom-outputs-save-btn{padding:9px 22px;border:none;border-radius:8px;background:#f56816;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.custom-outputs-save-btn:hover:not(:disabled){background:#e05a0e}.custom-outputs-save-btn:disabled{opacity:.5;cursor:not-allowed}.co-badge-config,.co-range-config{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px}.co-section-header{margin-bottom:12px}.co-section-header h4{margin:0 0 4px;font-size:13px;font-weight:700;color:#0f172a}.co-section-subtitle{display:block;font-size:11.5px;color:#94a3b8;margin-bottom:10px}.co-toggle-row{display:flex;align-items:center;gap:10px;margin-bottom:14px}.co-toggle{position:relative;display:inline-block;width:36px;height:20px;cursor:pointer}.co-toggle input{opacity:0;width:0;height:0}.co-toggle-slider{position:absolute;inset:0;background:#cbd5e1;border-radius:20px;transition:background .2s}.co-toggle-slider:before{content:"";position:absolute;height:16px;width:16px;left:2px;bottom:2px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #00000026}.co-toggle input:checked+.co-toggle-slider{background:#f56816}.co-toggle input:checked+.co-toggle-slider:before{transform:translate(16px)}.co-toggle-label{font-size:12.5px;color:#475569;font-weight:500}.co-preset-picker{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}.co-preset-btn{padding:3px 10px;border-radius:5px;font-size:10px;font-weight:600;cursor:pointer;transition:transform .1s,box-shadow .1s}.co-preset-btn:hover{transform:scale(1.05);box-shadow:0 2px 6px #0000001a}.co-color-row{display:flex;align-items:center;gap:10px;padding:8px 0}.co-color-row-label{display:none}.co-color-inputs{display:flex;gap:8px;flex:1}.co-color-field{display:flex;flex-direction:column;gap:3px;flex:1}.co-color-field label{font-size:9.5px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.co-color-input-wrapper{display:flex;align-items:center;gap:4px}.co-color-input-wrapper input[type=color]{width:26px;height:26px;border:1px solid #d1d5db;border-radius:5px;padding:1px;cursor:pointer;background:none}.co-color-text{width:70px;padding:4px 6px!important;border:1px solid #e2e8f0!important;border-radius:5px!important;font-size:10.5px!important;font-family:SFMono-Regular,ui-monospace,Menlo,Monaco,Consolas,monospace;color:#475569!important}.co-color-text:focus{border-color:#f56816!important;box-shadow:0 0 0 2px #f5681614!important}.co-color-preview{display:flex;align-items:center;min-width:70px;justify-content:center}.co-default-badge-section{padding-top:4px}.co-allowed-values-section{display:flex;flex-direction:column;gap:8px}.co-allowed-value-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px}.co-av-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.co-av-value-input{flex:1;padding:7px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;font-weight:600;color:#0f172a;outline:none;transition:border-color .15s}.co-av-value-input:focus{border-color:#f56816;box-shadow:0 0 0 2px #f5681614}.co-av-remove{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#94a3b8;cursor:pointer;transition:all .15s;flex-shrink:0}.co-av-remove:hover{border-color:#fecaca;color:#dc2626;background:#fef2f2}.co-add-item-btn{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;background:#fff;border:1px dashed #cbd5e1;border-radius:7px;color:#64748b;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;align-self:flex-start}.co-add-item-btn:hover{border-color:#f56816;color:#f56816;background:#fff7ed}.co-range-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px;margin-bottom:8px}.co-range-header{display:flex;align-items:flex-end;gap:8px;margin-bottom:8px}.co-range-inputs{display:flex;align-items:flex-end;gap:6px;flex:1}.co-range-field{display:flex;flex-direction:column;gap:3px}.co-range-field label{font-size:9.5px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.co-range-field input{padding:6px 8px;border:1px solid #d1d5db;border-radius:6px;font-size:12px;color:#0f172a;outline:none;width:60px;transition:border-color .15s}.co-range-field input:focus{border-color:#f56816;box-shadow:0 0 0 2px #f5681614}.co-range-label-field{flex:1}.co-range-label-field input{width:100%}.co-range-separator{font-size:11px;color:#94a3b8;font-weight:500;padding-bottom:8px}.co-group-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:6px;font-size:10.5px;font-weight:600;white-space:nowrap;background:#fff7ed;color:#ea580c;border:1px solid #fed7aa}.approvals-container{width:100%;background:#faf7f5;border-radius:12px;overflow:hidden;border:1px solid #e8e8e8;box-shadow:0 2px 8px #0000000a}.approvals-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:60px;color:#6b7280}.approvals-spinner{width:24px;height:24px;border:2px solid #e5e7eb;border-top-color:var(--primary, #ea580c);border-radius:50%;animation:approvals-spin .8s linear infinite}@keyframes approvals-spin{to{transform:rotate(360deg)}}.approvals-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#fff;border-bottom:1px solid #e5e7eb}.approvals-header-left{display:flex;align-items:center;gap:12px}.approvals-title-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:linear-gradient(135deg,var(--primary, #ea580c) 0%,#c2410c 100%);border-radius:10px;color:#fff}.approvals-title{margin:0;font-size:18px;font-weight:600;color:#111827}.approvals-pending-badge{display:inline-flex;align-items:center;padding:4px 10px;background:#fef2f2;color:#dc2626;font-size:12px;font-weight:600;border-radius:12px;border:1px solid #fecaca}.approvals-filter-right{display:flex;align-items:center;gap:12px}.approvals-refresh-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;background:#1a1a1a;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.approvals-refresh-btn:hover{background:#333}.approvals-refresh-btn:active{background:#000;transform:scale(.98)}.approvals-filter-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#fff;border-bottom:1px solid #e5e7eb;gap:16px}.approvals-filter-group{display:flex;align-items:center;gap:12px}.approvals-filter-label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.approvals-filter-label svg{color:#94a3b8}.approvals-filter-item{position:relative}.approvals-filter-select{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-size:13px;color:#475569;cursor:pointer;transition:all .15s ease;min-width:140px}.approvals-filter-select:hover{background:#f1f5f9;border-color:#cbd5e1}.approvals-filter-select.active{background:var(--primary-light, #fff7ed);border-color:var(--primary, #ea580c);color:#1a1a1a}.approvals-filter-chevron{flex-shrink:0;transition:transform .15s ease;margin-left:auto}.approvals-filter-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:180px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 10px 40px #0000001f;z-index:200;padding:6px;animation:filterDropdownIn .15s ease}@keyframes filterDropdownIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.approvals-filter-option{display:flex;align-items:center;gap:10px;padding:10px 12px;font-size:13px;color:#334155;border-radius:6px;cursor:pointer;transition:all .1s ease}.approvals-filter-option:hover{background:#f1f5f9}.approvals-filter-option.selected{background:var(--primary-light, #fff7ed);color:#1a1a1a;font-weight:500}.approvals-filter-option svg{flex-shrink:0}.approvals-filter-count{font-size:13px;color:#94a3b8}.approvals-error{display:flex;align-items:center;gap:10px;padding:12px 20px;background:#fef2f2;color:#dc2626;font-size:14px;border-bottom:1px solid #fecaca}.approvals-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 40px;text-align:center;color:#94a3b8}.approvals-empty svg{margin-bottom:16px;opacity:.5}.approvals-empty p{margin:0 0 4px;font-size:16px;font-weight:600;color:#475569}.approvals-empty span{font-size:14px}.approvals-table-wrapper{overflow-x:auto;max-height:65vh}.approvals-table{width:100%;border-collapse:collapse;font-size:14px}.approvals-th{padding:14px 16px;text-align:left;font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#000;background:var(--primary-hover, #fed7aa);border-bottom:1px solid var(--primary-hover, #fed7aa);border-right:1px solid rgba(0,0,0,.08);white-space:nowrap;position:sticky;top:0;z-index:10}.approvals-th:last-child{border-right:none}.approvals-th-content{display:flex;align-items:center;gap:6px}.approvals-th-content svg{color:#00000080}.approvals-th-expand{width:48px;text-align:center}.approvals-th-stage{min-width:200px}.approvals-th-status{width:120px;text-align:center}.approvals-th-status .approvals-th-content{justify-content:center}.approvals-th-approvers{width:180px}.approvals-th-requester{width:160px}.approvals-th-date{width:140px}.approvals-th-expires{width:150px}.approvals-th-actions{width:140px;text-align:center}.approvals-th-actions .approvals-th-content{justify-content:center}.approvals-tr{background:#fff;cursor:pointer;transition:background .1s ease}.approvals-tr:hover{background:#f8fafc}.approvals-tr.expanded{background:#f1f5f9}.approvals-td{padding:14px 16px;border-bottom:1px solid #e5e7eb;vertical-align:middle}.approvals-td-expand{text-align:center;width:48px}.approvals-expand-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:6px;cursor:pointer;color:#94a3b8;transition:all .15s ease}.approvals-expand-btn:hover{background:#e2e8f0;color:#475569}.approvals-expand-btn svg{transition:transform .2s ease}.approvals-stage-cell{display:flex;flex-direction:column;gap:4px}.approvals-stage-name{font-weight:600;color:#1e293b}.approvals-stage-message{font-size:12px;color:#64748b;line-height:1.4;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.approvals-status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;border-radius:6px;white-space:nowrap}.approvals-status-badge.status-pending{background:#fef3c7;color:#92400e}.approvals-status-badge.status-approved{background:#dcfce7;color:#166534}.approvals-status-badge.status-rejected{background:#fee2e2;color:#991b1b}.approvals-status-badge.status-expired{background:#f1f5f9;color:#64748b}.approvals-approvers-cell{display:flex;flex-wrap:wrap;gap:6px}.approvals-approver-tag{display:inline-flex;align-items:center;padding:4px 10px;background:#e0e7ff;color:#3730a3;font-size:12px;font-weight:500;border-radius:12px;white-space:nowrap}.approvals-no-approvers{color:#cbd5e1}.approvals-requester-cell{display:flex;align-items:center;gap:10px}.approvals-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-radius:50%;font-size:11px;font-weight:600;color:#4f46e5;flex-shrink:0}.approvals-td-date{color:#64748b;font-size:13px}.approvals-expires-badge{display:inline-flex;align-items:center;padding:4px 8px;background:#fef3c7;color:#92400e;font-size:12px;font-weight:500;border-radius:4px}.approvals-no-expiry{color:#cbd5e1}.approvals-action-btns{display:flex;align-items:center;justify-content:center;gap:8px}.approvals-action-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:8px;cursor:pointer;transition:all .15s ease}.approvals-action-btn.approve{background:#dcfce7;color:#16a34a}.approvals-action-btn.approve:hover:not(:disabled){background:#22c55e;color:#fff;transform:scale(1.05)}.approvals-action-btn.reject{background:#fee2e2;color:#dc2626}.approvals-action-btn.reject:hover:not(:disabled){background:#ef4444;color:#fff;transform:scale(1.05)}.approvals-action-btn.view-release{background:#e0e7ff;color:#4f46e5}.approvals-action-btn.view-release:hover{background:#6366f1;color:#fff;transform:scale(1.05)}.approvals-action-btn:disabled{opacity:.5;cursor:not-allowed}.approvals-completed-label{font-size:12px;font-weight:500;padding:4px 10px;border-radius:4px}.approvals-completed-label.approved{background:#dcfce7;color:#166534}.approvals-completed-label.rejected{background:#fee2e2;color:#991b1b}.approvals-completed-label.expired{background:#f1f5f9;color:#64748b}.approvals-expanded-row{background:#f8fafc}.approvals-expanded-row td{padding:0;border-bottom:1px solid #e2e8f0}.approvals-expanded-content{padding:20px 24px;display:flex;flex-direction:column;gap:20px}.approvals-details-section{display:flex;flex-direction:column;gap:12px;padding:16px;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.approvals-detail-item{display:flex;align-items:flex-start;gap:12px}.approvals-detail-label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;min-width:140px;flex-shrink:0}.approvals-detail-value{font-size:14px;color:#1e293b}.approvals-type-badge{display:inline-flex;align-items:center;padding:4px 10px;background:#e0e7ff;color:#3730a3;font-size:12px;font-weight:500;border-radius:6px}.approvals-instructions{flex-direction:column;gap:8px}.approvals-instructions-text{font-size:14px;color:#334155;line-height:1.6;padding:12px 16px;background:#fef3c7;border-radius:6px;border-left:3px solid #f59e0b}.approvals-history h4,.approvals-comment-section h4{margin:0 0 12px;font-size:13px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.5px}.approvals-history-list{display:flex;flex-direction:column;gap:10px}.approvals-history-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.approvals-history-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-radius:50%;font-size:11px;font-weight:600;color:#4f46e5;flex-shrink:0}.approvals-history-details{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.approvals-history-user{font-weight:600;color:#1e293b}.approvals-history-action{font-size:13px;padding:2px 8px;border-radius:4px}.approvals-history-action.approved{background:#dcfce7;color:#166534}.approvals-history-action.rejected{background:#fee2e2;color:#991b1b}.approvals-history-time{font-size:12px;color:#94a3b8}.approvals-history-comment{flex-basis:100%;margin-top:8px;padding-left:44px;font-size:13px;color:#64748b;font-style:italic}.approvals-comment-form{display:flex;flex-direction:column;gap:12px}.approvals-comment-input{width:100%;padding:12px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;font-family:inherit;resize:none;transition:all .15s ease}.approvals-comment-input:focus{outline:none;border-color:var(--primary, #ea580c);box-shadow:0 0 0 3px #ea580c1a}.approvals-comment-input::placeholder{color:#94a3b8}.approvals-comment-actions{display:flex;gap:10px}.approvals-submit-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.approvals-submit-btn.approve{background:#22c55e;color:#fff}.approvals-submit-btn.approve:hover:not(:disabled){background:#16a34a}.approvals-submit-btn.reject{background:#fff;color:#dc2626;border:1px solid #dc2626}.approvals-submit-btn.reject:hover:not(:disabled){background:#fef2f2}.approvals-submit-btn:disabled{opacity:.6;cursor:not-allowed}.approvals-meta-section{display:flex;flex-wrap:wrap;gap:10px}.approvals-meta-badge{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#fef3c7;color:#92400e;font-size:12px;font-weight:500;border-radius:6px}@media(max-width:768px){.approvals-header{flex-direction:column;gap:12px;align-items:stretch}.approvals-header-left,.approvals-header-right{justify-content:center}.approvals-filter-bar{flex-direction:column;gap:12px;align-items:stretch}.approvals-filter-group{justify-content:center}.approvals-filter-count{text-align:center}.approvals-table-wrapper{overflow-x:auto}.approvals-comment-actions{flex-direction:column}}.environments-container{width:100%;display:flex;flex-direction:column;height:calc(100vh - 120px);min-height:400px}.env-content-area{flex:1;min-height:0;display:flex;flex-direction:column;border-radius:5px;padding:10px 24px}.env-toolbar{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid #f1f5f9;margin-bottom:4px;gap:12px;flex-wrap:wrap}.env-toolbar-left{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.env-toolbar-right{display:flex;align-items:center;gap:12px}.env-toolbar-count{font-size:12.5px;color:#94a3b8;white-space:nowrap;font-weight:500}.env-view-toggle{display:flex;background:#f1f5f9;border-radius:9px;padding:3px;gap:2px}.env-view-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:7px;color:#94a3b8;cursor:pointer;transition:all .15s}.env-view-btn:hover{color:#475569}.env-view-btn.active{background:#fff;color:#1e293b;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}.env-search{display:flex;align-items:center;gap:8px;flex:1;max-width:320px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:8px 14px;transition:all .2s ease}.env-search:focus-within{background:#fff;border-color:var(--primary, #f95d03);box-shadow:0 0 0 3px #f95d0314}.env-search svg{color:#94a3b8;flex-shrink:0}.env-search-input{flex:1;border:none;background:transparent;font-size:13.5px;color:#0f172a;outline:none}.env-search-input::placeholder{color:#94a3b8}.env-search-clear{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;background:#cbd5e1;color:#fff;border-radius:50%;font-size:12px;line-height:1;cursor:pointer;flex-shrink:0;transition:background .15s}.env-search-clear:hover{background:#64748b}.env-no-results-card{display:flex;flex-direction:column;align-items:center;gap:12px;padding:60px 20px;color:#94a3b8;text-align:center}.env-no-results-card svg{opacity:.35}.env-no-results-card p{margin:0;font-size:14px;color:#64748b}.env-no-results-card button{padding:8px 18px;background:var(--primary, #f95d03);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.env-no-results-card button:hover{opacity:.9}.env-groups-container{display:flex;flex-direction:column;gap:0;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;padding-right:4px}.env-groups-container::-webkit-scrollbar{width:4px}.env-groups-container::-webkit-scrollbar-track{background:transparent}.env-groups-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.env-groups-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}.env-group{padding-bottom:2px}.env-group:last-child{padding-bottom:0}.env-group-header{display:flex;align-items:center;gap:12px;padding:12px 8px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .15s;border-radius:10px}.env-group-header:after{content:"";flex:1;height:1px;background:linear-gradient(to right,#e2e8f0 40%,transparent)}.env-group-header:hover{background:#f8fafc}.env-group-header-left{display:flex;align-items:center;gap:10px}.env-group-icon{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.env-group-icon svg{width:14px;height:14px}.env-group-title{font-size:13.5px;font-weight:600;color:#1e293b;letter-spacing:-.01em}.env-group-count{font-size:11.5px;color:#64748b;font-weight:600;background:#f1f5f9;padding:2px 9px;border-radius:10px;line-height:1.4}.env-group-chevron{color:#cbd5e1;transition:transform .25s cubic-bezier(.4,0,.2,1);order:1;flex-shrink:0}.env-group-chevron.expanded{transform:rotate(90deg)}.env-group-body{padding:4px 0 8px;margin-left:40px;position:relative}.env-group-body.list{display:flex;flex-direction:column}.env-group-body.list:before{content:"";position:absolute;left:0;top:0;bottom:20px;width:1.5px;background:linear-gradient(to bottom,#e2e8f0,transparent)}.env-group-body.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;padding:6px 0 16px;margin-left:0}@media(max-width:700px){.env-group-body.grid{grid-template-columns:1fr}}.env-group-body.list .env-card{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;padding:12px 16px;margin:3px 0 3px 20px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;transition:all .2s cubic-bezier(.4,0,.2,1);gap:14px;position:relative}.env-group-body.list .env-card:before{content:"";position:absolute;left:-20px;top:50%;width:20px;height:1.5px;background:#e2e8f0}.env-group-body.list .env-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000d;background:#fefcfa}.env-group-body.grid .env-card{display:flex;flex-direction:column;padding:18px 20px;border:1px solid #eef1f5;background:#fff;border-radius:8px;gap:14px;box-shadow:0 1px 4px #0000000a,0 0 0 1px #00000005;transition:all .25s cubic-bezier(.4,0,.2,1)}.env-group-body.grid .env-card:hover{border-color:#e2e8f0;box-shadow:0 4px 16px #0000000f,0 1px 4px #00000008;transform:translateY(-2px)}.env-card.clickable{cursor:pointer}.env-card.clickable:hover{border-color:var(--primary, #f95d03)!important}.env-card-header{display:flex;align-items:flex-start;gap:12px}.env-card-icon{width:36px;height:36px;min-width:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.env-card-title-wrap{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.env-card-name{font-size:14px;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}.env-card-status{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;width:fit-content}.env-card-status.active{color:#10b981}.env-card-status.inactive{color:#94a3b8}.env-card-status.maintenance{color:#f59e0b}.env-card-status-dot{width:7px;height:7px;border-radius:50%}.env-card-actions{display:flex;gap:4px;opacity:0;transition:opacity .15s ease;flex-shrink:0}.env-card:hover .env-card-actions{opacity:1}.env-card-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #e2e8f0;background:#fff;border-radius:7px;color:#94a3b8;cursor:pointer;transition:all .15s ease}.env-card-action-btn:hover{background:#f8fafc;color:#334155;border-color:#cbd5e1}.env-card-action-btn.delete:hover{background:#fef2f2;color:#dc2626;border-color:#fca5a5}.env-card-description{margin:0;font-size:13px;color:#64748b;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.env-card-tags{display:flex;flex-wrap:wrap;gap:6px}.env-card-tag{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:6px;font-size:11.5px;font-weight:500;white-space:nowrap;border:1px solid transparent}.env-card-tag.deploy{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.env-card-tag.deploy svg{color:#ea580c}.env-card-tag.provider{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.env-card-infra{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.env-card-infra-item{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:500;color:#475569;white-space:nowrap;padding:4px 10px;border-radius:6px;background:#f8fafc;border:1px solid #e2e8f0;letter-spacing:.01em}.env-card-infra-item svg{flex-shrink:0;width:13px;height:13px}.env-card-provider-badge{background:#fff7ed;border-color:#fdba74;color:#9a3412;font-weight:600;padding:4px 10px 4px 7px;gap:5px}.env-card-provider-badge svg{color:#ea580c;width:14px;height:14px}.env-card-provider-logo{display:flex;align-items:center;justify-content:center}.env-card-region-badge{background:#fef3c7;border-color:#fcd34d;color:#92400e;font-weight:600}.env-card-region-badge svg{color:#d97706}.env-card-account-badge{background:#ffedd5;border-color:#fdba74;color:#7c2d12;font-weight:600}.env-card-account-badge svg{color:#c2410c}.env-card-infra-url{padding:4px 0;border:none;background:transparent;color:#64748b;font-weight:400}.env-card-infra-url svg{color:#94a3b8}.env-card-url{color:#64748b;text-decoration:none;transition:color .15s ease;font-size:12px}.env-card-url:hover{color:var(--primary, #f95d03);text-decoration:underline}.env-card-footer{display:flex;align-items:center;gap:16px;padding-top:12px;border-top:1px solid #f1f5f9;margin-top:auto}.env-card-stat{display:flex;align-items:center;gap:5px}.env-card-stat-value{font-size:13px;font-weight:700;color:#1e293b}.env-card-stat-label{font-size:12px;color:#94a3b8}.env-card-stat-status{font-size:11px;font-weight:600;text-transform:capitalize;padding:2px 10px;border-radius:16px}.env-card-stat-status.active{background:#fff7ed;color:#c2410c}.env-card-stat-status.inactive{background:#f1f5f9;color:#64748b}.env-card-stat-status.maintenance{background:#fffbeb;color:#b45309}.env-card-open-arrow{margin-left:auto;display:flex;align-items:center;color:#cbd5e1;transition:all .2s ease}.env-card:hover .env-card-open-arrow{color:var(--primary, #f95d03);transform:translate(3px)}.env-group-body.list .env-card-description,.env-group-body.list .env-card-footer{display:none}.env-group-body.list .env-card-header{flex:1;min-width:0;align-items:center;order:1}.env-group-body.list .env-card-icon{width:32px;height:32px;min-width:32px;border-radius:8px}.env-group-body.list .env-card-infra{flex-shrink:0;gap:8px;order:2}.env-group-body.list .env-card-infra-item{font-size:11px;padding:3px 8px}.env-group-body.list .env-card-provider-badge{padding:3px 8px 3px 6px}.env-group-body.list .env-card-tags .env-card-tag.provider{display:none}.env-group-body.list .env-card-tags{flex-shrink:0;order:3}.env-group-body.list .env-card-actions{margin-left:0;order:4}.env-group-body.grid .env-card-tags{flex-wrap:wrap}.env-group-body.grid .env-card-tags .env-card-tag.provider{display:none}.env-show-more{display:flex;align-items:center;justify-content:center;gap:6px;margin:12px auto 8px;padding:6px 20px;border:1px solid #fed7aa;border-radius:999px;background:#fff7ed;color:#ea580c;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .2s ease;position:relative}.env-show-more:before{display:none}.env-show-more:hover{background:#ffedd5;border-color:#fdba74;color:#c2410c}.env-show-more:active{transform:scale(.97)}.env-show-more-label{line-height:1}.env-show-more-icon{color:inherit;transition:transform .25s cubic-bezier(.4,0,.2,1)}.env-show-more-icon.expanded{transform:rotate(180deg)}.environments-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;color:#64748b;font-size:14px}.environments-loading .spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:var(--primary, #f95d03);border-radius:50%;animation:spin .8s linear infinite}.environments-loading p{margin:0;color:#64748b;font-size:14px}.environments-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;color:#94a3b8;font-size:14px;text-align:center}.environments-error p{margin:0;color:#dc2626;font-size:14px}.environments-error button{padding:8px 18px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .15s}.environments-error button:hover{background:#2563eb}.environments-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;color:#94a3b8;font-size:14px;text-align:center}.environments-empty .empty-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-radius:16px}.environments-empty svg{color:#94a3b8;opacity:.5}.environments-empty h3{margin:0;font-size:16px;font-weight:600;color:#1e293b}.environments-empty p{margin:0;font-size:14px;color:#64748b}.env-drawer-overlay{position:fixed;inset:0;background:#0f172a59;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;animation:env-overlay-fade-in .2s ease}@keyframes env-overlay-fade-in{0%{opacity:0}to{opacity:1}}.env-drawer{position:fixed;top:0;right:0;bottom:0;width:480px;min-width:480px;background:#fff;z-index:1000;display:flex;flex-direction:column;box-shadow:-8px 0 32px #0000001a,-2px 0 8px #0000000a;animation:env-drawer-slide-in .25s ease}@keyframes env-drawer-slide-in{0%{width:0;min-width:0;opacity:0}to{width:480px;min-width:480px;opacity:1}}.env-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e2e8f0;flex-shrink:0}.env-drawer-header-left{display:flex;align-items:center;gap:12px}.env-drawer-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fff7ed,#ffedd5);border:1px solid #fed7aa;border-radius:10px;color:#ea580c;flex-shrink:0}.env-drawer-header h2{margin:0;font-size:17px;font-weight:600;color:#0f172a;letter-spacing:-.01em}.env-drawer-close{display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:#f1f5f9;border:none;border-radius:9px;color:#64748b;cursor:pointer;transition:all .15s ease}.env-drawer-close:hover{background:#e2e8f0;color:#1e293b}.env-drawer-form{display:flex;flex-direction:column;flex:1;min-height:0}.env-drawer-body{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:8px}.env-drawer-body::-webkit-scrollbar{width:4px}.env-drawer-body::-webkit-scrollbar-track{background:transparent}.env-drawer-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.env-drawer-body::-webkit-scrollbar-thumb:hover{background:#94a3b8}.env-drawer-section{display:flex;flex-direction:column;gap:14px;padding:16px 0;border-bottom:1px solid #f1f5f9}.env-drawer-section:last-child{border-bottom:none}.env-drawer-section-title{display:flex;align-items:center;justify-content:space-between;font-size:12.5px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.env-drawer-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e2e8f0;flex-shrink:0;background:#fafbfc}.environment-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.environment-form-group{display:flex;flex-direction:column;gap:6px}.environment-form-group label{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:500;color:#334155}.environment-form-group input[type=text],.environment-form-group input[type=url],.environment-form-group select{padding:10px 14px;border:1px solid #cbd5e1;border-radius:9px;font-size:14px;color:#0f172a;transition:all .2s ease;background:#fff}.environment-form-group input:focus,.environment-form-group select:focus{outline:none;border-color:var(--primary, #f95d03);box-shadow:0 0 0 3px #f95d031a}.environment-form-group select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath d='M7 10l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:40px;appearance:none}.add-variable-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--primary, #f95d03);color:#fff;border:none;border-radius:7px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease}.add-variable-btn:hover{opacity:.9;box-shadow:0 2px 8px #f95d0340}.variables-list{display:flex;flex-direction:column;gap:8px;padding:14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;max-height:200px;overflow-y:auto}.no-variables{text-align:center;color:#94a3b8;font-size:13px;padding:12px 0}.variable-row{display:flex;gap:8px;align-items:center}.variable-key{width:140px;padding:8px 12px;border:1px solid #cbd5e1;border-radius:7px;font-size:13px;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;background:#fff}.variable-value{flex:1;padding:8px 12px;border:1px solid #cbd5e1;border-radius:7px;font-size:13px;background:#fff}.variable-key:focus,.variable-value:focus{outline:none;border-color:var(--primary, #f95d03)}.remove-variable-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:none;border:none;border-radius:7px;color:#94a3b8;cursor:pointer;transition:all .15s ease}.remove-variable-btn:hover{background:#fef2f2;color:#dc2626}.environment-cancel-btn{padding:10px 18px;background:#fff;border:1px solid #cbd5e1;border-radius:9px;font-size:14px;font-weight:600;color:#334155;cursor:pointer;transition:all .15s ease}.environment-cancel-btn:hover{background:#f8fafc;border-color:#94a3b8}.environment-save-btn{padding:10px 20px;background:var(--primary, #f95d03);border:none;border-radius:9px;font-size:14px;font-weight:600;color:#fff;cursor:pointer;transition:all .15s ease;box-shadow:0 1px 3px #f95d0333}.environment-save-btn:hover:not(:disabled){box-shadow:0 4px 12px #f95d034d;transform:translateY(-1px)}.environment-save-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.env-content-area{padding:16px;border-radius:12px}.env-toolbar{flex-direction:column;align-items:stretch}.env-toolbar-left{flex-wrap:wrap}.env-search{max-width:100%}.environment-form-row{grid-template-columns:1fr}.env-drawer{width:100%;min-width:100%}@keyframes env-drawer-slide-in{0%{width:0;min-width:0;opacity:0}to{width:100%;min-width:100%;opacity:1}}}.env-compare-wrap{display:flex;flex-direction:column;background:#fff;border:1px solid #e5e7eb;border-radius:14px;overflow:hidden;flex:1;min-height:0}.env-compare-tabs{display:flex;gap:6px;padding:16px 20px 14px;border-bottom:1px solid #f3f4f6;background:#fff}.env-compare-tab{padding:6px 18px;border-radius:20px;border:1.5px solid #e5e7eb;background:#f8fafc;font-size:12px;font-weight:600;color:#6b7280;cursor:pointer;transition:all .15s ease;text-transform:capitalize;letter-spacing:.3px;line-height:1.4;white-space:nowrap}.env-compare-tab:hover{border-color:#cbd5e1;background:#f1f5f9;color:#334155}.env-compare-tab.active{background:#1e293b;border-color:#1e293b;color:#fff;box-shadow:0 2px 8px #1e293b38}.env-compare-search{display:flex;align-items:center;gap:8px;padding:9px 20px;border-bottom:1px solid #f3f4f6;color:#c4c9d4}.env-compare-search input{border:none;outline:none;font-size:13px;color:#374151;background:transparent;width:240px}.env-compare-search input::placeholder{color:#c4c9d4}.env-compare-table-wrap{overflow-x:auto;overflow-y:auto;flex:1;min-height:0}.env-compare-table{width:100%;border-collapse:collapse;font-size:13px}.env-compare-table thead tr{background:#f9fafb;border-bottom:2px solid #e5e7eb}.env-cmp-th-comp{padding:12px 24px;text-align:left;font-size:11px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.6px;white-space:nowrap;width:260px}.env-cmp-th-env{padding:12px 24px;text-align:left;min-width:280px;border-left:1px solid #f3f4f6}.env-cmp-env-header{display:flex;align-items:center;gap:8px}.env-cmp-env-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.env-cmp-env-name{font-size:13px;font-weight:700;color:#111827;white-space:nowrap;letter-spacing:-.1px}.env-cmp-env-type{font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;text-transform:capitalize}.env-compare-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background .1s}.env-compare-table tbody tr:last-child{border-bottom:none}.env-compare-table tbody tr:hover .env-cmp-td-comp,.env-compare-table tbody tr:hover .env-cmp-td-ver{background:#f9fafb!important}.env-cmp-row-diff .env-cmp-td-ver{background:#fffbeb}.env-cmp-row-diff .env-cmp-td-comp{background:#fff}.env-cmp-row-diff:hover .env-cmp-td-ver{background:#fef9c3!important}.env-cmp-td-comp{padding:14px 24px;background:#fff;width:260px;position:sticky;left:0;z-index:1;border-right:1px solid #f3f4f6}.env-cmp-comp-name{font-size:13px;font-weight:600;color:#111827;white-space:nowrap}.env-cmp-td-ver{padding:14px 24px;vertical-align:middle;border-left:1px solid #f3f4f6}.env-cmp-ver-cell{display:flex;flex-direction:column;gap:4px}.env-cmp-ver-pill{display:inline-block;font-family:SF Mono,Fira Code,monospace;font-size:12px;font-weight:500;color:#374151;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;padding:4px 10px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.env-cmp-ver-time{font-size:11px;color:#9ca3af;padding-left:2px}.env-cmp-absent{color:#d1d5db;font-size:18px;line-height:1}.env-cmp-empty{padding:48px 24px;text-align:center;color:#9ca3af;font-size:13px;line-height:1.6}.env-detail-container{display:flex;flex-direction:column;height:100%;background:#fff}.env-detail-loading,.env-detail-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;color:#6b7280}.env-detail-loading .spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:var(--primary, #f95d03);border-radius:50%;animation:spin .8s linear infinite}.env-detail-error button{padding:8px 16px;background:var(--primary, #f95d03);color:#fff;border:none;border-radius:6px;font-size:13px;cursor:pointer}.env-detail-breadcrumb{display:flex;align-items:center;gap:8px;padding:16px 28px 0;font-size:13px}.env-detail-breadcrumb-link{display:flex;align-items:center;gap:6px;background:none;border:none;color:#64748b;font-size:13px;font-weight:500;cursor:pointer;padding:0;transition:color .15s}.env-detail-breadcrumb-link:hover{color:var(--primary, #f95d03)}.env-detail-breadcrumb-link svg{color:var(--primary, #f95d03)}.env-detail-breadcrumb-sep{color:#cbd5e1}.env-detail-breadcrumb-current{color:#1e293b;font-weight:600}.env-detail-hero{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 28px;gap:24px;flex-wrap:wrap}.env-detail-hero-left{display:flex;align-items:flex-start;gap:16px}.env-detail-hero-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#ecfdf5;border-radius:12px;color:#059669;flex-shrink:0}.env-detail-hero-info{display:flex;flex-direction:column;gap:6px}.env-detail-hero-title-row{display:flex;align-items:center;gap:12px}.env-detail-hero-name{margin:0;font-size:22px;font-weight:700;color:#0f172a;letter-spacing:-.02em}.env-detail-hero-status{display:inline-flex;align-items:center;gap:6px;padding:3px 12px;border-radius:20px;font-size:12px;font-weight:600}.env-detail-hero-status.active{background:#ecfdf5;color:#059669}.env-detail-hero-status.inactive{background:#f1f5f9;color:#64748b}.env-detail-hero-status.maintenance{background:#fffbeb;color:#d97706}.env-detail-hero-status-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.env-detail-hero-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.env-detail-hero-meta-item{display:flex;align-items:center;gap:6px;font-size:13px;color:#64748b}.env-detail-hero-meta-item svg{color:#94a3b8}.env-detail-hero-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.env-detail-btn-secondary{display:flex;align-items:center;gap:8px;padding:10px 18px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;font-size:13.5px;font-weight:600;color:#334155;cursor:pointer;transition:all .15s}.env-detail-btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}.env-detail-btn-primary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--primary, #f95d03);border:none;border-radius:10px;font-size:13.5px;font-weight:600;color:#fff;cursor:pointer;transition:all .15s;box-shadow:0 2px 8px #f95d0340}.env-detail-btn-primary:hover{box-shadow:0 4px 12px #f95d0359;transform:translateY(-1px)}.env-detail-btn-primary svg{color:#fff}.env-detail-tabs{display:flex;align-items:center;gap:0;padding:0 28px}.env-detail-tab{display:flex;align-items:center;gap:6px;padding:12px 18px;background:none;border:none;border-bottom:2px solid transparent;font-size:14px;font-weight:500;color:#64748b;cursor:pointer;transition:all .15s;white-space:nowrap}.env-detail-tab:hover{color:#1e293b}.env-detail-tab.active{color:#0f172a;font-weight:600;border-bottom-color:#0f172a}.env-detail-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#f1f5f9;border-radius:10px;font-size:11px;font-weight:600;color:#64748b}.env-detail-tab.active .env-detail-tab-count{background:#0f172a;color:#fff}.env-overview-card{background:#fff;border:1px solid #eef1f5;border-radius:12px;overflow:hidden}.env-overview-card-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #f1f5f9}.env-overview-card-header h3{margin:0;font-size:15px;font-weight:600;color:#0f172a}.env-overview-card-action{background:none;border:1px solid #e2e8f0;border-radius:8px;padding:6px 14px;font-size:12.5px;font-weight:500;color:#334155;cursor:pointer;transition:all .15s}.env-overview-card-action:hover{background:#f8fafc;border-color:#cbd5e1}.env-overview-card-body{padding:20px 22px}.env-overview-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 20px;gap:12px}.env-overview-empty-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;border-radius:14px;color:#94a3b8}.env-overview-empty h4{margin:0;font-size:15px;font-weight:600;color:#1e293b}.env-overview-empty p{margin:0;font-size:13px;color:#64748b;max-width:320px;line-height:1.5}.env-overview-empty-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--primary, #f95d03);border:none;border-radius:10px;font-size:13.5px;font-weight:600;color:#fff;cursor:pointer;margin-top:8px;transition:all .15s}.env-overview-empty-btn:hover{opacity:.9}.env-overview-deployments-list{display:flex;flex-direction:column;gap:0}.env-overview-deployment-item{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #f8fafc}.env-overview-deployment-item:last-child{border-bottom:none}.env-overview-deployment-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.env-overview-deployment-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.env-overview-deployment-name{font-size:13.5px;font-weight:600;color:#1e293b}.env-overview-deployment-meta{font-size:12px;color:#94a3b8}.env-overview-deployment-status{font-size:12px;font-weight:600;text-transform:capitalize;flex-shrink:0}.env-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:18px}.env-details-item{display:flex;flex-direction:column;gap:4px}.env-details-label{font-size:12px;color:#94a3b8;font-weight:500}.env-details-value{font-size:14px;font-weight:600;color:#1e293b}.env-details-value.env-details-empty{color:#94a3b8;font-weight:400}.env-details-tags{display:flex;gap:8px;border-top:1px solid #f1f5f9;padding-top:16px}.env-details-tag{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:6px;font-size:12px;font-weight:600;border:1px solid transparent}.env-details-tag.type-development{background:#ecfdf5;color:#059669;border-color:#86efac}.env-details-tag.type-qa{background:#fffbeb;color:#d97706;border-color:#fcd34d}.env-details-tag.type-staging{background:#fff7ed;color:#ea580c;border-color:#fdba74}.env-details-tag.type-production{background:#fef2f2;color:#dc2626;border-color:#fca5a5}.env-details-tag.type-custom{background:#f1f5f9;color:#64748b;border-color:#cbd5e1}.env-details-tag.deploy{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.env-details-tag.deploy svg{color:#ea580c}.env-details-url{display:flex;flex-direction:column;gap:4px;padding-top:16px;border-top:1px solid #f1f5f9}.env-details-url-link{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--primary, #f95d03);text-decoration:none;font-weight:500}.env-details-url-link:hover{text-decoration:underline}.env-configure-infra-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 16px;background:#fff;border:1px dashed #cbd5e1;border-radius:10px;font-size:13px;font-weight:500;color:#64748b;cursor:pointer;margin-top:16px;transition:all .15s}.env-configure-infra-btn:hover{background:#f8fafc;border-color:#94a3b8;color:#334155}.env-infra-not-configured .env-details-grid{margin-bottom:0}.env-detail-nav-bar{background:#fff;border-bottom:1px solid #e5e7eb;padding:0 24px;flex-shrink:0;display:none}.env-detail-nav-inner{display:flex;align-items:center;justify-content:space-between;height:48px}.env-detail-nav-left{display:flex;align-items:center;gap:12px}.env-detail-back-btn{display:flex;align-items:center;gap:4px;padding:6px 10px;background:transparent;border:1px solid #e5e7eb;border-radius:6px;font-size:12px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.env-detail-back-btn:hover{background:#f9fafb;border-color:#d1d5db}.env-detail-nav-divider{width:1px;height:24px;background:#e5e7eb}.env-detail-nav-title{display:flex;align-items:center;gap:10px}.env-detail-nav-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#f95d031a;border-radius:6px;color:var(--primary, #f95d03)}.env-detail-nav-title-text{display:flex;align-items:center;gap:10px}.env-detail-nav-name{font-size:16px;font-weight:600;color:#1f2937}.env-detail-nav-type{display:inline-flex;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:500;text-transform:capitalize}.env-detail-nav-type.development{background:#dcfce7;color:#166534}.env-detail-nav-type.staging{background:#fef3c7;color:#92400e}.env-detail-nav-type.production{background:#fee2e2;color:#991b1b}.env-detail-nav-type.custom{background:#e5e7eb;color:#374151}.env-detail-nav-tabs{display:flex;align-items:center;gap:4px}.env-detail-nav-tab{padding:6px 12px;background:transparent;border:none;border-radius:6px;font-size:12px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.env-detail-nav-tab:hover{background:#f9fafb;color:#374151}.env-detail-nav-tab.active{background:#464b58;color:#fff}.env-detail-content{flex:1;overflow-y:auto;padding:24px 28px;background:#f8fafc}.env-detail-overview{display:grid;grid-template-columns:1fr 380px;gap:24px;align-items:start}.env-overview-column{display:flex;flex-direction:column;gap:20px;min-width:0}.env-overview-column.env-overview-left,.env-overview-column.env-overview-right{gap:20px}@media(max-width:1024px){.env-detail-overview{grid-template-columns:1fr}}.env-info-panel{background:#fff;border:none;border-right:1px solid #e5e7eb;border-radius:0;box-shadow:none;overflow:hidden;width:420px;height:100%}.env-info-header{padding:24px 24px 20px;border-bottom:1px solid #f0f0f0}.env-info-title{margin:0 0 6px;font-size:22px;font-weight:700;color:#1f2937;letter-spacing:-.02em}.env-info-subtitle{margin:0;font-size:14px;color:#6b7280}.env-info-content{padding:0}.env-info-section{padding:20px 24px;border-bottom:1px solid #f0f0f0}.env-info-section:last-child{border-bottom:none}.env-info-section-title{margin:0 0 14px;font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.env-info-kv-list{display:flex;flex-direction:column;gap:12px}.env-info-kv{display:flex;align-items:center;justify-content:space-between;gap:16px}.env-info-key{font-size:13px;font-weight:500;color:#6b7280}.env-info-value{font-size:13px;font-weight:500;color:#1f2937;text-align:right}.env-info-link{display:inline-flex;align-items:center;gap:6px;color:var(--primary, #f95d03);text-decoration:none;font-weight:500;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.env-info-link:hover{text-decoration:underline}.env-info-empty{color:#9ca3af;font-style:italic}.env-info-panel .env-type-badge{display:inline-flex;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:500;text-transform:capitalize}.env-info-panel .env-type-badge.development{background:#dcfce7;color:#166534}.env-info-panel .env-type-badge.staging{background:#fef3c7;color:#92400e}.env-info-panel .env-type-badge.production{background:#fee2e2;color:#991b1b}.env-info-panel .env-type-badge.custom{background:#e5e7eb;color:#374151}.env-info-panel .env-deploy-badge{display:inline-flex;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500}.env-info-panel .env-deploy-badge.manual{background:#f9fafb;color:#6b7280;border:1px solid #e5e7eb}.env-info-panel .env-deploy-badge.automatic{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.env-custom-info-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000a;overflow:hidden;height:fit-content}.env-custom-info-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.env-custom-info-header h3{margin:0;font-size:14px;font-weight:600;color:#374151}.env-custom-info-edit-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .15s ease}.env-custom-info-edit-btn:hover{background:#fff;color:var(--primary, #f95d03);border-color:var(--primary, #f95d03)}.env-custom-info-edit-btn:disabled{opacity:.6;cursor:not-allowed}.env-custom-info-edit-btn svg.spinning{animation:spin 1s linear infinite}.env-info-header-actions{display:flex;align-items:center;gap:10px}.env-info-source-toggle{display:flex;align-items:center;background:#f3f4f6;border-radius:6px;padding:2px}.env-info-source-btn{display:flex;align-items:center;gap:4px;padding:6px 10px;background:transparent;border:none;border-radius:4px;font-size:12px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.env-info-source-btn:hover{color:#374151}.env-info-source-btn.active{background:#fff;color:var(--primary, #f95d03);box-shadow:0 1px 3px #0000001a}.env-info-source-btn svg{width:14px;height:14px}.env-gitops-file-path{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;margin-bottom:16px;font-size:12px;color:#0369a1}.env-gitops-file-path svg{flex-shrink:0}.env-gitops-file-path span{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.env-gitops-hint{display:block;margin-top:8px;font-size:12px;color:#6b7280}.env-gitops-hint code{display:block;margin-top:6px;padding:8px 12px;background:#f3f4f6;border-radius:6px;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:11px;color:#374151;word-break:break-all}.env-custom-info-loading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px;text-align:center}.env-custom-info-loading .spinner.small{width:24px;height:24px;border-width:2px}.env-custom-info-loading p{margin:0;font-size:13px;color:#6b7280}.env-custom-info-content{padding:20px 24px}.env-custom-info-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px;text-align:center}.env-custom-info-empty p{margin:0;font-size:13px;color:#9ca3af}.env-custom-info-empty button{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--primary, #f95d03);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .15s ease}.env-custom-info-empty button:hover{background:#e85502}.env-custom-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000a;overflow:hidden}.env-custom-section-header{display:flex;align-items:center;justify-content:flex-end;padding:12px 16px;background:#f9fafb;border-bottom:1px solid #f0f0f0}.env-custom-section-actions{display:flex;gap:6px}.env-custom-section-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:1px solid #e5e7eb;border-radius:6px;color:#9ca3af;cursor:pointer;transition:all .15s ease}.env-custom-section-btn:hover{background:#fff;color:#374151;border-color:#d1d5db}.env-custom-section-btn.delete:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.env-custom-section-content{padding:20px 24px}.env-section-block{margin-bottom:12px}.env-section-block:last-child{margin-bottom:0}.env-block-heading{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--primary, #f95d03)}.env-block-subheading{margin:0 0 8px;font-size:14px;font-weight:600;color:#1f2937}.env-block-text{margin:0 0 8px;font-size:14px;color:#374151;line-height:1.6}.env-block-kvs{display:flex;flex-direction:column;gap:10px;padding:12px 0}.env-custom-section-kv{display:flex;align-items:center;justify-content:space-between;gap:16px}.env-custom-section-key{font-size:13px;font-weight:500;color:#6b7280}.env-custom-section-value{font-size:13px;font-weight:500;color:#1f2937;text-align:right}.env-add-section-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:16px 24px;background:#fff;border:2px dashed #d1d5db;border-radius:12px;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.env-add-section-btn:hover{border-color:var(--primary, #f95d03);color:var(--primary, #f95d03);background:#f95d0305}.env-add-section-btn svg{flex-shrink:0}.env-section-form{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000a;overflow:hidden;display:flex;flex-direction:column;max-height:calc(100vh - 250px)}.env-section-form-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:#f9fafb;border-bottom:1px solid #e5e7eb;flex-shrink:0}.env-section-form-header h3{margin:0;font-size:15px;font-weight:600;color:#1f2937}.env-section-form-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;color:#9ca3af;cursor:pointer;border-radius:6px;transition:all .15s ease}.env-section-form-close:hover{background:#e5e7eb;color:#374151}.env-section-form-body{padding:20px 24px;display:flex;flex-direction:column;gap:16px;min-height:150px;max-height:400px;overflow-y:auto;flex:1}.env-block-type-selector{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#fff;border-bottom:1px solid #e5e7eb;flex-wrap:wrap;flex-shrink:0}.env-block-type-label{font-size:12px;font-weight:500;color:#6b7280;margin-right:4px}.env-block-type-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:12px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.env-block-type-btn:hover{border-color:var(--primary, #f95d03);color:var(--primary, #f95d03);background:#f95d0305}.env-block-type-btn svg{color:#9ca3af}.env-block-type-btn:hover svg{color:var(--primary, #f95d03)}.env-blocks-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:#9ca3af}.env-blocks-empty svg{margin-bottom:12px;opacity:.5}.env-blocks-empty p{margin:0;font-size:13px}.env-blocks-list{display:flex;flex-direction:column;gap:12px}.env-block-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.env-block-item-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f3f4f6;border-bottom:1px solid #e5e7eb}.env-block-item-type{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.3px}.env-block-item-actions{display:flex;align-items:center;gap:4px}.env-block-move-btn,.env-block-remove-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;background:transparent;border:none;color:#9ca3af;cursor:pointer;border-radius:4px;transition:all .15s ease}.env-block-move-btn:hover:not(:disabled){background:#e5e7eb;color:#374151}.env-block-move-btn:disabled{opacity:.3;cursor:not-allowed}.env-block-remove-btn:hover{background:#fef2f2;color:#dc2626}.env-block-item-content{padding:12px}.env-block-input{width:100%;padding:10px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;color:#1f2937;background:#fff;transition:all .15s ease}.env-block-input:focus{outline:none;border-color:var(--primary, #f95d03);box-shadow:0 0 0 2px #f95d031a}.env-block-input-heading{font-size:16px;font-weight:600}.env-block-input-subheading{font-size:14px;font-weight:500}.env-block-textarea{width:100%;padding:10px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;color:#1f2937;background:#fff;resize:vertical;min-height:60px;transition:all .15s ease}.env-block-textarea:focus{outline:none;border-color:var(--primary, #f95d03);box-shadow:0 0 0 2px #f95d031a}.env-block-kvs-editor{display:flex;flex-direction:column;gap:8px}.env-section-form-group{display:flex;flex-direction:column;gap:6px}.env-section-form-group label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.3px}.env-section-form-group input,.env-section-form-group textarea{padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#1f2937;background:#fff;transition:all .15s ease}.env-section-form-group input:focus,.env-section-form-group textarea:focus{outline:none;border-color:var(--primary, #f95d03);box-shadow:0 0 0 2px #f95d031a}.env-section-form-group input::placeholder,.env-section-form-group textarea::placeholder{color:#9ca3af}.env-section-form-group textarea{resize:vertical;min-height:80px}.env-section-form-kvs{display:flex;flex-direction:column;gap:10px}.env-section-form-kv-row{display:flex;align-items:center;gap:8px}.env-section-form-kv-row input{flex:1;padding:8px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;color:#1f2937}.env-section-form-kv-row input:focus{outline:none;border-color:var(--primary, #f95d03)}.env-section-form-kv-remove{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:1px solid #e5e7eb;border-radius:6px;color:#9ca3af;cursor:pointer;flex-shrink:0;transition:all .15s ease}.env-section-form-kv-remove:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.env-section-form-add-kv{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;background:transparent;border:1px dashed #d1d5db;border-radius:6px;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.env-section-form-add-kv:hover{border-color:var(--primary, #f95d03);color:var(--primary, #f95d03);background:#f95d0305}.env-section-form-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:16px 24px;background:#f9fafb;border-top:1px solid #e5e7eb;flex-shrink:0}.env-section-form-cancel{padding:8px 16px;background:transparent;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.env-section-form-cancel:hover{background:#f9fafb;border-color:#d1d5db}.env-section-form-save{padding:8px 16px;background:var(--primary, #f95d03);border:none;border-radius:6px;font-size:13px;font-weight:500;color:#fff;cursor:pointer;transition:all .15s ease}.env-section-form-save:hover:not(:disabled){background:#e85502}.env-section-form-save:disabled{opacity:.5;cursor:not-allowed}.env-detail-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px}.env-detail-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px}.env-detail-card h3{margin:0 0 16px;font-size:14px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.env-detail-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.env-detail-info-item{display:flex;flex-direction:column;gap:4px}.env-detail-info-item label{font-size:12px;font-weight:500;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px}.env-detail-info-item span{font-size:14px;color:#1f2937}.env-detail-url{display:inline-flex;align-items:center;gap:6px;color:var(--primary, #f95d03);text-decoration:none;font-size:14px}.env-detail-url:hover{text-decoration:underline}.env-detail-empty{color:#9ca3af;font-style:italic}.env-detail-card .env-type-badge{display:inline-flex;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:500;text-transform:capitalize}.env-detail-card .env-type-badge.development{background:#dcfce7;color:#166534}.env-detail-card .env-type-badge.staging{background:#fef3c7;color:#92400e}.env-detail-card .env-type-badge.production{background:#fee2e2;color:#991b1b}.env-detail-card .env-type-badge.custom{background:#e5e7eb;color:#374151}.env-detail-card .env-deploy-badge{display:inline-flex;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500}.env-detail-card .env-deploy-badge.manual{background:#f9fafb;color:#6b7280;border:1px solid #e5e7eb}.env-detail-card .env-deploy-badge.automatic{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.env-detail-stats{display:flex;gap:24px}.env-detail-stat{flex:1;text-align:center;padding:16px;background:#f9fafb;border-radius:8px}.env-detail-stat-value{font-size:28px;font-weight:700;color:var(--primary, #f95d03)}.env-detail-stat-label{font-size:12px;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.3px;margin-top:4px}.env-detail-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px}.env-detail-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.env-detail-section-header h3{margin:0;font-size:14px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.env-detail-view-all{padding:6px 12px;background:transparent;border:1px solid #e5e7eb;border-radius:6px;font-size:12px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.env-detail-view-all:hover{background:#f9fafb;color:#374151}.env-detail-table-container{overflow-x:auto}.env-detail-table{width:100%;border-collapse:collapse}.env-detail-table th{padding:12px 16px;text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;background:#f9fafb;border-bottom:1px solid #e5e7eb}.env-detail-table td{padding:14px 16px;font-size:13px;color:#374151;border-bottom:1px solid #f0f0f0}.env-detail-table tr:last-child td{border-bottom:none}.env-detail-table tr:hover td{background:#f95d0305}.env-detail-component-name{font-weight:500;color:#1f2937}.env-detail-table code{padding:2px 6px;background:#f3f4f6;border-radius:4px;font-size:12px;font-family:SF Mono,Consolas,monospace}.env-detail-type-badge{display:inline-block;padding:2px 8px;background:#f0f4ff;color:#4b5ea6;border-radius:4px;font-size:11px;font-weight:500;font-family:SF Mono,Consolas,monospace}.env-detail-type-continuation td{border-top:1px dashed #f0f0f0!important;border-bottom:1px solid #f0f0f0}.env-detail-variables-table .env-detail-var-key{width:30%;font-weight:500}.env-detail-variables-table .env-detail-var-value{word-break:break-all}.env-detail-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:12px;text-align:center;color:#9ca3af}.env-detail-empty-state svg{opacity:.5}.env-detail-empty-state h3{margin:0;font-size:16px;font-weight:600;color:#374151}.env-detail-empty-state p{margin:0;font-size:14px;color:#6b7280}.env-detail-timeline{display:flex;flex-direction:column;gap:0}.env-detail-timeline-item{display:flex;gap:16px;position:relative;padding-bottom:24px}.env-detail-timeline-item:last-child{padding-bottom:0}.env-detail-timeline-marker{width:12px;height:12px;border-radius:50%;flex-shrink:0;margin-top:4px}.env-detail-timeline-line{position:absolute;left:5px;top:20px;bottom:0;width:2px;background:#e5e7eb}.env-detail-timeline-content{flex:1;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.env-detail-timeline-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.env-detail-timeline-release{font-size:14px;font-weight:600;color:#1f2937}.env-detail-timeline-status{font-size:12px;font-weight:500;text-transform:capitalize}.env-detail-timeline-meta{display:flex;align-items:center;gap:12px;font-size:12px;color:#6b7280}.env-detail-timeline-notes{margin-top:12px;padding:12px;background:#f9fafb;border-radius:6px;font-size:13px;color:#374151}.env-detail-components{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.env-detail-history{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px}.env-detail-variables{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}@media(max-width:768px){.env-detail-nav-inner{flex-direction:column;height:auto;padding:16px 0;gap:16px}.env-detail-nav-left{width:100%;flex-wrap:wrap}.env-detail-nav-tabs{width:100%;overflow-x:auto}.env-detail-cards,.env-detail-info-grid{grid-template-columns:1fr}.env-detail-stats{flex-direction:column}}.env-comp-toolbar{display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:12px}.env-comp-search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:8px 14px;width:320px;transition:border-color .15s}.env-comp-search:focus-within{border-color:#f95d03;box-shadow:0 0 0 3px #f95d0314}.env-comp-search svg{color:#94a3b8;flex-shrink:0}.env-comp-search input{border:none;outline:none;background:none;font-size:13px;color:#1e293b;width:100%;font-family:Inter,sans-serif}.env-comp-search input::placeholder{color:#94a3b8}.env-comp-table-container{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.env-comp-table{width:100%;border-collapse:collapse;font-size:13px}.env-comp-table thead th{text-align:left;padding:12px 16px;font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.env-comp-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background .1s}.env-comp-table tbody tr:last-child{border-bottom:none}.env-comp-table tbody tr:hover{background:#fafbfc}.env-comp-table td{padding:14px 16px;vertical-align:top}.env-comp-name{font-weight:600;color:#1e293b;white-space:nowrap}.env-comp-release{color:#475569;font-family:SF Mono,Fira Code,Fira Mono,monospace;font-size:12px;white-space:nowrap}.env-comp-artifacts{display:flex;flex-direction:column;gap:6px}.env-comp-artifact-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.env-comp-artifact-type{font-weight:600;color:#64748b;font-size:12px;min-width:52px}.env-comp-artifact-version{font-family:SF Mono,Fira Code,Fira Mono,monospace;font-size:12px;color:#334155}.env-comp-artifact-status{display:inline-flex;align-items:center;padding:1px 8px;border-radius:10px;font-size:11px;font-weight:500}.env-comp-artifact-status--success{background:#ecfdf5;color:#059669}.env-comp-artifact-status--deployed{background:#f0f9ff;color:#0284c7}.env-comp-artifact-status--failed{background:#fef2f2;color:#dc2626}.env-comp-artifact-status--pending{background:#fffbeb;color:#d97706}.env-comp-no-artifacts{color:#94a3b8}.env-comp-date{white-space:nowrap;color:#475569;font-size:13px}.env-comp-time{display:block;color:#94a3b8;font-size:12px}.env-comp-deployed-by{color:#64748b;font-family:SF Mono,Fira Code,Fira Mono,monospace;font-size:12px;word-break:break-all}.env-comp-enabled-count{font-size:12px;color:#64748b;font-weight:500;white-space:nowrap}.env-comp-row-enabled{background:#fff}.env-comp-row-disabled{background:#fafbfc;opacity:.7}.env-comp-toggle-cell{text-align:center;vertical-align:middle!important;padding:0 12px!important}.env-comp-toggle{display:inline-flex;align-items:center;width:36px;height:20px;border-radius:10px;border:none;cursor:pointer;padding:2px;transition:background .2s;flex-shrink:0;position:relative}.env-comp-toggle.on{background:#f95d03}.env-comp-toggle.off{background:#cbd5e1}.env-comp-toggle.loading{opacity:.6;cursor:wait}.env-comp-toggle-thumb{display:block;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000002e;transition:transform .2s}.env-comp-toggle.on .env-comp-toggle-thumb{transform:translate(16px)}.env-comp-toggle.off .env-comp-toggle-thumb{transform:translate(0)}.env-comp-type-badge{vertical-align:middle}.env-comp-type-pill{display:inline-block;padding:2px 9px;border-radius:10px;font-size:11px;font-weight:500;background:#f1f5f9;color:#475569;text-transform:capitalize}.env-comp-artifact-type-cell{font-size:12px;font-weight:600;color:#64748b}.command-palette-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding-top:15vh;z-index:9999;animation:overlayFadeIn .15s ease}.command-palette{width:560px;max-width:90vw;max-height:70vh;background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;overflow:hidden;animation:paletteSlideIn .2s ease}@keyframes paletteSlideIn{0%{opacity:0;transform:scale(.96) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.command-palette-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid #e5e7eb}.command-palette-header svg{color:#9ca3af;flex-shrink:0}.command-palette-input{flex:1;border:none;outline:none;font-size:16px;font-weight:400;color:#1f2937;background:transparent}.command-palette-input::placeholder{color:#9ca3af}.command-palette-esc{padding:4px 8px;font-size:11px;font-weight:500;color:#6b7280;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:4px;font-family:inherit}.command-palette-list{flex:1;overflow-y:auto;padding:8px}.command-palette-list::-webkit-scrollbar{width:6px}.command-palette-list::-webkit-scrollbar-track{background:transparent}.command-palette-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.command-palette-section{margin-bottom:8px}.command-palette-section:last-child{margin-bottom:0}.command-palette-section-title{padding:8px 12px 4px;font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.command-palette-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:none;background:transparent;border-radius:8px;cursor:pointer;transition:all .1s ease;text-align:left}.command-palette-item:hover,.command-palette-item.selected{background:#f3f4f6}.command-palette-item.selected{background:var(--primary-light, #fff7ed)}.command-palette-item-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#f9fafb;border-radius:6px;color:#6b7280;flex-shrink:0}.command-palette-item.selected .command-palette-item-icon{background:var(--primary, #f95d03);color:#fff}.command-palette-item-label{flex:1;font-size:14px;font-weight:500;color:#374151}.command-palette-item-hint{display:flex;align-items:center;gap:4px;font-size:12px;color:#9ca3af}.command-palette-item-hint kbd{padding:2px 6px;font-size:10px;font-weight:500;color:#6b7280;background:#fff;border:1px solid #e5e7eb;border-radius:4px;font-family:inherit}.command-palette-empty{display:flex;align-items:center;justify-content:center;padding:40px 20px;color:#9ca3af;font-size:14px}.command-palette-footer{display:flex;align-items:center;justify-content:center;gap:20px;padding:12px 20px;border-top:1px solid #e5e7eb;background:#f9fafb}.command-palette-footer span{display:flex;align-items:center;gap:4px;font-size:12px;color:#6b7280}.command-palette-footer kbd{padding:2px 6px;font-size:10px;font-weight:500;color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:4px;font-family:inherit;box-shadow:0 1px 2px #0000000d}@media(max-width:640px){.command-palette-overlay{padding-top:10vh}.command-palette{width:95vw;max-height:80vh}.command-palette-footer{gap:12px;flex-wrap:wrap}.command-palette-footer span{font-size:11px}}.rp-container{display:flex;flex-direction:column;gap:0;height:100%;overflow:hidden}.rp-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid #e2e8f0;flex-shrink:0}.rp-header h2{font-size:18px;font-weight:600;color:#0f172a;margin:0}.rp-header-actions{display:flex;gap:8px;align-items:center}.rp-btn-primary{display:flex;align-items:center;gap:6px;padding:7px 14px;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s}.rp-btn-primary:hover{background:#1d4ed8}.rp-list{flex:1;overflow-y:auto;padding:16px 24px;display:flex;flex-direction:column;gap:10px}.rp-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;flex:1;color:#94a3b8;font-size:14px}.rp-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:16px 18px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;transition:box-shadow .15s,border-color .15s}.rp-card:hover{box-shadow:0 2px 8px #00000012;border-color:#cbd5e1}.rp-card-body{flex:1;min-width:0}.rp-card-name{font-size:15px;font-weight:600;color:#0f172a;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-card-desc{font-size:13px;color:#64748b;margin:0 0 10px}.rp-card-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rp-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:20px;font-size:12px;font-weight:500;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.rp-pill-pipeline{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.rp-pill-version{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}.rp-card-actions{display:flex;gap:4px;flex-shrink:0}.rp-icon-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#64748b;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.rp-icon-btn:hover{background:#f8fafc;color:#0f172a;border-color:#cbd5e1}.rp-icon-btn.rp-icon-btn--danger:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.rp-modal-overlay{position:fixed;inset:0;background:#00000073;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.rp-modal{background:#fff;border-radius:12px;width:100%;max-width:480px;box-shadow:0 20px 60px #0000002e;overflow:hidden}.rp-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 14px;border-bottom:1px solid #e2e8f0}.rp-modal-header h3{font-size:16px;font-weight:600;color:#0f172a;margin:0}.rp-modal-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:none;color:#94a3b8;cursor:pointer;border-radius:6px;transition:background .15s,color .15s}.rp-modal-close:hover{background:#f1f5f9;color:#475569}.rp-modal-body{padding:20px;display:flex;flex-direction:column;gap:14px}.rp-field{display:flex;flex-direction:column;gap:5px}.rp-field label{font-size:13px;font-weight:500;color:#374151}.rp-field input,.rp-field textarea,.rp-field select{padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;color:#0f172a;background:#fff;outline:none;transition:border-color .15s;font-family:inherit}.rp-field input:focus,.rp-field textarea:focus,.rp-field select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.rp-field textarea{resize:vertical;min-height:64px}.rp-modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px 18px;border-top:1px solid #e2e8f0}.rp-btn-secondary{padding:7px 14px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s}.rp-btn-secondary:hover{background:#f9fafb}.toast-notification{position:fixed;top:auto;bottom:24px;right:24px;z-index:10000;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;box-shadow:0 12px 28px #0000002e;animation:slideInUp .25s ease-out;max-width:320px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@keyframes slideInUp{0%{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}.toast-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.toast-error{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.toast-info{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.toast-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-message{font-size:13px;font-weight:600;line-height:1.35}.toast-close{background:#fff3;border:none;border-radius:8px;padding:3px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0;margin-left:auto}.toast-close:hover{background:#ffffff4d}.approval-modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10001;animation:fadeIn .2s ease-out}.approval-modal{background:#fff;border-radius:16px;padding:32px;max-width:420px;width:90%;box-shadow:0 20px 60px #0000004d;animation:scaleIn .25s ease-out;text-align:center}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.approval-modal-icon{margin-bottom:20px;display:flex;justify-content:center}.approval-modal-title{font-size:20px;font-weight:600;color:#111827;margin:0 0 12px}.approval-modal-message{font-size:14px;color:#6b7280;line-height:1.6;margin:0 0 24px}.approval-modal-actions{display:flex;gap:12px;justify-content:center}.approval-modal-btn{padding:10px 20px;font-size:14px;font-weight:500;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s;border:none}.approval-modal-btn.cancel{background:#f3f4f6;color:#374151}.approval-modal-btn.cancel:hover{background:#e5e7eb}.approval-modal-btn.confirm{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff}.approval-modal-btn.confirm:hover{background:linear-gradient(135deg,#4f46e5,#4338ca);transform:translateY(-1px);box-shadow:0 4px 12px #6366f166}.approval-modal-btn.info{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.approval-modal-btn.info:hover{background:linear-gradient(135deg,#d97706,#b45309)}.approval-modal-btn.warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.approval-modal-btn.warning:hover{background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b66}.releases-container{display:flex;height:100%;position:relative;overflow:hidden}.releases-main{flex:1;padding:16px 24px;overflow-y:auto;min-width:0}.releases-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:0;padding:16px 16px 12px}.releases-header-left{display:flex;align-items:center;gap:16px}.releases-title{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:600;color:#111827;margin:0}.releases-title svg{color:var(--primary)}.releases-count{font-size:13px;font-weight:500;color:#6b7280;background:#f3f4f6;padding:4px 10px;border-radius:12px}.releases-refresh-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s ease}.releases-refresh-btn:hover{background:#f9fafb;color:#111827;border-color:#d1d5db}.releases-list{display:flex;flex-direction:column;gap:12px}.releases-table-container{background:#fff;border-radius:12px;border:1px solid #e0e0e0;overflow:hidden;box-shadow:0 2px 8px #0000000f}.releases-table-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line, #e5e7eb);gap:16px}.releases-search{display:flex;align-items:center;gap:10px;flex:1;max-width:400px;background:var(--bg, #f9fafb);border:1px solid var(--line, #e5e7eb);border-radius:8px;padding:8px 12px;transition:all .2s ease}.releases-search:focus-within{border-color:var(--primary, #f95d03);box-shadow:0 0 0 2px #f95d031a;background:#fff}.releases-search svg{color:var(--text-secondary, #6b7280);flex-shrink:0}.releases-search-input{flex:1;border:none;background:transparent;font-size:13px;color:var(--text, #1c1c1c);outline:none}.releases-search-input::placeholder{color:var(--text-secondary, #9ca3af)}.releases-search-clear{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;background:var(--text-secondary, #9ca3af);color:#fff;border-radius:50%;font-size:14px;line-height:1;cursor:pointer;transition:background-color .15s ease;flex-shrink:0}.releases-search-clear:hover{background:var(--text, #6b7280)}.releases-table-actions{display:flex;align-items:center;gap:16px}.releases-last-deployed-filter{display:flex;align-items:center;gap:8px;position:relative}.releases-last-deployed-filter label{font-size:12px;color:#6b7280;font-weight:600}.releases-last-deployed-trigger{min-width:190px;height:36px;border:1px solid #d1d5db;background:#fff;border-radius:10px;padding:0 12px;font-size:13px;color:#374151;outline:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;transition:all .2s ease}.releases-last-deployed-trigger:hover{border-color:#9ca3af}.releases-last-deployed-trigger.open{border-color:var(--primary, #f95d03);box-shadow:0 0 0 2px #f95d031a}.releases-last-deployed-trigger svg{color:#6b7280;flex-shrink:0}.releases-last-deployed-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:190px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 24px #02061724;padding:6px;z-index:100}.releases-last-deployed-option{width:100%;border:none;background:transparent;color:#374151;text-align:left;padding:8px 10px;border-radius:8px;font-size:13px;cursor:pointer;transition:background .15s ease,color .15s ease}.releases-last-deployed-option:hover{background:#f3f4f6}.releases-last-deployed-option.selected{background:#f95d031a;color:var(--primary, #f95d03);font-weight:600}.releases-table-info{font-size:13px;color:var(--text-secondary, #6b7280)}.releases-sync-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--line, #e5e7eb);border-radius:8px;background:#fff;font-size:13px;font-weight:500;color:var(--text, #374151);cursor:pointer;transition:all .2s ease}.releases-sync-btn:hover:not(:disabled){border-color:var(--primary, #f95d03);color:var(--primary, #f95d03);background:var(--primary-10, rgba(249, 93, 3, .05))}.releases-sync-btn:disabled{opacity:.6;cursor:not-allowed}.releases-sync-btn svg.spinning{animation:spin 1s linear infinite}.releases-sync-result{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;margin-bottom:16px;border-radius:8px;font-size:13px;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.releases-sync-result.success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.releases-sync-result.error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.releases-sync-result.info{background:#dbeafe;color:#1e40af;border:1px solid #bfdbfe}.releases-sync-result-close{background:transparent;border:none;font-size:18px;line-height:1;cursor:pointer;color:inherit;opacity:.7;padding:0 4px}.releases-sync-result-close:hover{opacity:1}.releases-no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.releases-no-results svg{color:var(--text-secondary, #9ca3af);margin-bottom:16px}.releases-no-results h3{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--text, #1c1c1c)}.releases-no-results p{margin:0;font-size:14px;color:var(--text-secondary, #6b7280)}.releases-table-wrapper{overflow-x:auto;max-width:100%}.releases-table-wrapper::-webkit-scrollbar{height:8px}.releases-table-wrapper::-webkit-scrollbar-track{background:var(--bg, #f9fafb);border-radius:4px}.releases-table-wrapper::-webkit-scrollbar-thumb{background:var(--line, #d1d5db);border-radius:4px}.releases-table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #9ca3af)}.releases-pagination{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px 20px;border-top:1px solid var(--line, #e5e7eb)}.releases-page-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--line, #e5e7eb);border-radius:6px;background:#fff;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .15s ease}.releases-page-btn:hover:not(:disabled){border-color:var(--primary, #f95d03);color:var(--primary, #f95d03)}.releases-page-btn:disabled{opacity:.4;cursor:not-allowed}.releases-page-numbers{display:flex;align-items:center;gap:4px}.releases-page-num{min-width:32px;height:32px;padding:0 8px;border:1px solid var(--line, #e5e7eb);border-radius:6px;background:#fff;color:var(--text, #1c1c1c);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.releases-page-num:hover:not(.active){border-color:var(--primary, #f95d03);color:var(--primary, #f95d03)}.releases-page-num.active{background:var(--primary, #f95d03);border-color:var(--primary, #f95d03);color:#fff}.releases-page-ellipsis{color:var(--text-secondary, #9ca3af);padding:0 4px}.release-env-boxes{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.release-env-box{padding:6px 12px;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:12px;font-weight:500;white-space:nowrap;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.release-env-box-name{line-height:1.1}.release-env-box-count{font-size:10px;line-height:1.1;opacity:.9;margin-top:2px}.release-env-box:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.release-env-box.deployed{background:#10b981;color:#fff}.release-env-box.deploying{background:#3b82f6;color:#fff;animation:pulse 1.5s infinite}.release-env-box.failed{background:#ef4444;color:#fff}.release-env-box.partial,.release-env-box.pending{background:#e5e7eb;color:#6b7280}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.release-env-none{color:var(--text-secondary, #9ca3af);font-size:13px}.releases-table{width:100%;min-width:max-content;border-collapse:collapse;font-size:14px}.releases-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary, #6b7280);background:var(--bg, #f9fafb);border-bottom:1px solid var(--line, #e5e7eb);white-space:nowrap}.releases-table th.th-slno{width:60px;text-align:center}.releases-table th.th-version{min-width:500px}.releases-table th.th-actions{width:80px;text-align:center}.releases-table tbody tr{transition:background-color .15s ease;background:#fff}.releases-table tbody tr:hover{background-color:#f95d030a}.releases-table tbody tr.releases-table-row-clickable{cursor:pointer}.releases-table tbody tr.releases-table-row-clickable:active{background-color:#f95d0314}.releases-table td{padding:14px 16px;border-bottom:1px solid var(--line, #e5e7eb);vertical-align:middle;color:var(--text, #1c1c1c)}.releases-table td.td-slno{text-align:center;color:var(--text-secondary, #6b7280);font-weight:500;font-size:13px}.releases-table td.td-actions{text-align:center}.release-version-cell{display:flex;align-items:flex-start;gap:8px}.release-version-info{display:flex;flex-direction:column;gap:2px}.release-version-text{font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:14px;font-weight:600;color:#1c1c1c}.release-description-cell{color:var(--text-secondary, #6b7280);font-size:12px;max-width:460px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;line-height:1.4}.release-status-badge-table{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500;border:1px solid}.release-components-cell{display:flex;align-items:center;gap:6px;color:var(--text-secondary, #6b7280);font-size:13px}.release-components-cell svg{flex-shrink:0}.release-date-cell{color:var(--text-secondary, #6b7280);font-size:13px}.release-author-cell{display:flex;align-items:center;gap:8px;color:var(--text-secondary, #6b7280);font-size:13px}.release-author-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--primary, #f95d03) 0%,#ff8c42 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0}.release-open-btn-table{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid var(--line, #e5e7eb);border-radius:6px;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .15s ease}.release-open-btn-table:hover{background:var(--primary, #f95d03);border-color:var(--primary, #f95d03);color:#fff}.release-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s ease}.release-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000a}.release-card.expanded{border-color:var(--primary);box-shadow:0 4px 12px #f95d031a}.release-card-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;cursor:pointer;transition:background .15s ease}.release-card-header:hover{background:#fafafa}.release-card-left{display:flex;align-items:center;gap:16px}.release-version{display:flex;align-items:flex-start;gap:10px}.release-version svg{color:var(--primary);flex-shrink:0;margin-top:2px}.release-title-group{display:flex;flex-direction:column;gap:4px}.release-name-row{display:flex;align-items:center;gap:12px}.release-name-row .release-description-text{padding-left:12px;border-left:1px solid #e5e7eb}.release-version-badge{font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:15px;font-weight:600;color:#1c1c1c}.release-name-primary{font-size:15px;font-weight:600;color:#111827}.release-description-text{font-size:13px;font-weight:400;color:#6b7280;max-width:400px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.version-number{font-size:16px;font-weight:600;color:#111827;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace}.release-name{font-size:14px;color:#6b7280;padding-left:8px;border-left:1px solid #e5e7eb}.release-status-badge{font-size:12px;font-weight:600;padding:4px 10px;border-radius:6px;border:1px solid;text-transform:capitalize}.release-card-right{display:flex;align-items:center;gap:20px}.release-meta{display:flex;align-items:center;gap:16px;font-size:13px;color:#6b7280}.release-components-count{display:flex;align-items:center;gap:6px}.release-components-count svg{color:#9ca3af}.release-date,.release-author{color:#9ca3af}.release-expand-icon{color:#9ca3af;transition:transform .2s ease}.release-card.expanded .release-expand-icon{transform:rotate(180deg)}.release-card-body{padding:0 20px 20px;border-top:1px solid #f3f4f6;background:#fafafa}.release-section{padding-top:10px}.release-section+.release-section{margin-top:10px;padding-top:10px;border-top:1px solid #e5e7eb}.release-section-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#374151;margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.release-section-title svg{color:#6b7280}.release-components-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.release-component-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px 14px}.release-component-name{font-size:14px;font-weight:600;color:#111827;margin-bottom:6px}.release-component-versions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px}.version-label{color:#9ca3af}.version-value{color:#6b7280;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;background:#f3f4f6;padding:2px 6px;border-radius:4px}.release-environments-list{display:flex;flex-direction:column;gap:8px}.release-environment-item{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:10px 14px}.env-status-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.env-info{display:flex;align-items:center;gap:10px;flex:1}.env-name{font-size:14px;font-weight:500;color:#111827}.env-deployed-at,.env-deployed-by{font-size:12px;color:#9ca3af}.releases-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;text-align:center;height:100%}.releases-empty-icon{color:#d1d5db;margin-bottom:20px}.releases-empty-state h3{font-size:18px;font-weight:600;color:#374151;margin:0 0 8px}.releases-empty-state p{font-size:14px;color:#6b7280;margin:0;max-width:360px}.releases-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;height:100%}.releases-loading-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:var(--primary);border-radius:50%;animation:releases-spin .8s linear infinite;margin-bottom:16px}@keyframes releases-spin{to{transform:rotate(360deg)}}.releases-loading p{font-size:14px;color:#6b7280;margin:0}.releases-table-skeleton tbody tr{pointer-events:none}.releases-table-skeleton thead th{vertical-align:middle}.releases-table-container-skeleton{min-height:calc(100vh - 220px);display:flex;flex-direction:column}.releases-table-wrapper-skeleton{flex:1}.releases-skeleton{position:relative;overflow:hidden;border-radius:8px;background:linear-gradient(135deg,#edf2f8,#e6edf6);box-shadow:inset 0 1px #ffffff80}.releases-skeleton:after{content:"";position:absolute;top:0;left:-160%;width:160%;height:100%;background:linear-gradient(90deg,#fff0,#ffffffb8 45%,#fff0 80%);animation:releases-skeleton-shimmer 1.6s ease-in-out infinite}.releases-skeleton-input{width:420px;max-width:100%;height:44px}.releases-skeleton-filter{width:210px;height:42px}.releases-skeleton-count{width:104px;height:18px;border-radius:999px}.releases-skeleton-th{height:14px}.releases-skeleton-th-slno{width:38px;margin:0 auto}.releases-skeleton-th-version{width:64px}.releases-skeleton-th-description{width:92px}.releases-skeleton-th-env{width:118px}.releases-skeleton-th-status{width:58px}.releases-skeleton-th-created{width:62px}.releases-skeleton-th-created-by{width:84px}.releases-skeleton-th-actions{width:66px;margin:0 auto}.releases-skeleton-slno{width:28px;height:16px;margin:0 auto}.releases-skeleton-version{width:140px;height:18px}.releases-skeleton-description{width:100px;height:16px}.releases-skeleton-env-row{display:flex;align-items:center;gap:8px}.releases-skeleton-env-badge{width:64px;height:48px;border-radius:12px}.releases-skeleton-status{width:74px;height:32px;margin:0 auto;border-radius:10px}.releases-skeleton-date{width:76px;height:16px}.releases-skeleton-author{display:inline-flex;align-items:center;gap:10px}.releases-skeleton-avatar{width:32px;height:32px;border-radius:50%}.releases-skeleton-author-name{width:110px;height:16px}.releases-skeleton-action{width:34px;height:34px;border-radius:10px;margin:0 auto}@keyframes releases-skeleton-shimmer{to{left:140%}}@media(max-width:1024px){.releases-table-container-skeleton{min-height:calc(100vh - 190px)}}.releases-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;text-align:center;height:100%}.releases-error h3{font-size:18px;font-weight:600;color:#374151;margin:16px 0 8px}.releases-error p{font-size:14px;color:#6b7280;margin:0 0 20px}.releases-retry-btn{padding:10px 20px;background:var(--primary);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s ease}.releases-retry-btn:hover{background:var(--primary-20)}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}@media(max-width:768px){.releases-container{padding:16px}.release-card-header{flex-direction:column;align-items:flex-start;gap:12px}.release-card-right{width:100%;justify-content:space-between}.release-meta{flex-wrap:wrap;gap:8px}.release-components-grid{grid-template-columns:1fr}}.releases-empty-inline{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;text-align:center;color:#9ca3af}.releases-empty-inline svg{margin-bottom:16px;color:#d1d5db}.releases-empty-inline h3{font-size:16px;font-weight:600;color:#374151;margin:0 0 8px}.releases-empty-inline p{font-size:14px;color:#6b7280;margin:0}.release-drawer{position:fixed;top:64px;right:8px;bottom:8px;width:0;background:#fff;display:flex;flex-direction:column;overflow:hidden;border-radius:14px;transition:width .3s ease,box-shadow .3s ease;z-index:2002;box-shadow:none}.release-drawer.open{width:900px;box-shadow:0 8px 40px #0000001f,0 0 0 1px #0000000f}.release-drawer-overlay{position:fixed;inset:56px 0 0;background:#0000004d;z-index:2001;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.release-drawer-overlay.visible{opacity:1;visibility:visible}.release-drawer-topbar{display:flex;align-items:center;padding:0 16px 0 20px;height:48px;border-bottom:1px solid #e5e7eb;background:#fafafa;flex-shrink:0;min-width:900px;gap:16px;border-radius:14px 14px 0 0}.release-drawer-topbar-title{font-size:15px;font-weight:600;color:#111827;margin:0;white-space:nowrap}.release-drawer-close{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .15s ease;margin-left:auto;flex-shrink:0}.release-drawer-close:hover{background:#f3f4f6;color:#111827}.release-stepper{display:flex;align-items:center;justify-content:center;flex:1;gap:12px}.release-stepper-step{display:flex;align-items:center;gap:8px}.release-stepper-number{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;background:#e5e7eb;color:#6b7280;transition:all .2s ease}.release-stepper-step.active .release-stepper-number{background:var(--primary);color:#fff}.release-stepper-step.completed .release-stepper-number{background:#10b981;color:#fff}.release-stepper-label{font-size:13px;font-weight:500;color:#9ca3af;transition:color .2s ease}.release-stepper-step.active .release-stepper-label,.release-stepper-step.completed .release-stepper-label{color:#111827}.release-stepper-connector{width:40px;height:2px;background:#e5e7eb;border-radius:1px}.release-step-header{margin-bottom:12px}.release-step-header h3{font-size:16px;font-weight:600;color:#111827;margin:0 0 6px}.release-step-header p{font-size:13px;color:#6b7280;margin:0}.release-drawer-body{flex:1;overflow-y:auto;padding:14px 24px;min-width:900px}.release-drawer-info{display:flex;align-items:center;gap:8px;padding:12px 14px;background:#f3f4f6;border-radius:8px;margin-bottom:20px}.release-drawer-pipeline-label{font-size:13px;color:#6b7280}.release-drawer-pipeline-name{font-size:14px;font-weight:600;color:#111827}.release-drawer-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-top:1px solid #e5e7eb;background:#fafafa;border-radius:0 0 14px 14px;flex-shrink:0;min-width:900px}.release-drawer-cancel{padding:10px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.release-drawer-cancel:hover{background:#f9fafb;border-color:#d1d5db}.release-drawer-create{padding:10px 20px;background:var(--primary);border:none;border-radius:8px;font-size:14px;font-weight:500;color:#fff;cursor:pointer;transition:background .15s ease}.release-drawer-create:hover:not(:disabled){background:var(--primary-20)}.release-drawer-create:disabled{opacity:.5;cursor:not-allowed}.release-drawer-next{display:flex;align-items:center;gap:6px;padding:10px 20px;background:var(--primary);border:none;border-radius:8px;font-size:14px;font-weight:500;color:#fff;cursor:pointer;transition:all .15s ease}.release-drawer-next:hover:not(:disabled){background:var(--primary-20)}.release-drawer-next:disabled{opacity:.5;cursor:not-allowed}.release-drawer-back{display:flex;align-items:center;gap:6px;padding:10px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.release-drawer-back:hover{background:#f9fafb;border-color:#d1d5db}.release-form-row{display:flex;gap:16px;margin-bottom:12px}.release-form-row .release-form-group{flex:1;margin-bottom:0}.release-form-group{margin-bottom:12px}.release-form-group label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:5px}.release-form-group label .required{color:#ef4444}.release-form-group input{width:100%;padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;transition:border-color .15s ease,box-shadow .15s ease}.release-form-group input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #f95d031a}.release-form-group input::placeholder{color:#9ca3af}.release-form-group input.input-error{border-color:#f59e0b;box-shadow:0 0 0 2px #f59e0b1a}.release-form-group input.input-error:focus{border-color:#f59e0b;box-shadow:0 0 0 2px #f59e0b26}.release-name-error{display:inline-flex;align-items:center;gap:5px;margin-top:6px;font-size:12px;color:#92400e;font-weight:400}.release-label-optional{font-size:11px;font-weight:400;color:#9ca3af;margin-left:4px}.release-prefix-row{display:flex;align-items:center;gap:0}.release-prefix-row input{border-radius:8px 0 0 8px!important;border-right:none!important;flex:1}.release-prefix-row input:focus{z-index:1;position:relative}.release-prefix-suffix{display:inline-flex;align-items:center;padding:0 14px;height:40px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:0 8px 8px 0;font-size:13px;font-family:SF Mono,Fira Code,monospace;color:#6b7280;white-space:nowrap;flex-shrink:0}.release-name-preview{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px}.release-name-preview-label{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.4px;flex-shrink:0}.release-name-preview-value{font-size:13px;font-family:SF Mono,Fira Code,monospace;font-weight:600;color:#111827;flex:1}.release-name-duplicate{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:#b91c1c;background:#fee2e2;border:1px solid #fecaca;border-radius:6px;padding:2px 8px;flex-shrink:0}.release-description-input{width:100%;padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-family:inherit;color:#111827;resize:vertical;min-height:60px;transition:border-color .15s ease,box-shadow .15s ease}.release-description-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #f95d031a}.release-description-input::placeholder{color:#9ca3af}.searchable-dropdown{position:relative;width:100%}.searchable-dropdown-trigger{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;background:#fff;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.searchable-dropdown-trigger:hover{border-color:#d1d5db}.searchable-dropdown-trigger.open{border-color:var(--primary);box-shadow:0 0 0 3px #f95d031a}.searchable-dropdown-trigger .placeholder{color:#6b7280}.searchable-dropdown-trigger .selected-value{color:#111827}.dropdown-chevron{flex-shrink:0;color:#6b7280;transition:transform .2s ease}.dropdown-chevron.open{transform:rotate(180deg)}.searchable-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 40px #00000026;z-index:1000;overflow:hidden;animation:dropdownSlideIn .15s ease-out}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.searchable-dropdown-search{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid #f3f4f6;background:#fafafa}.searchable-dropdown-search svg{flex-shrink:0;color:#9ca3af}.searchable-dropdown-search input{flex:1;border:none;outline:none;font-size:14px;color:#111827;background:transparent}.searchable-dropdown-search input::placeholder{color:#9ca3af}.searchable-dropdown-search .search-clear{display:flex;align-items:center;justify-content:center;padding:4px;border:none;background:#e5e7eb;border-radius:4px;cursor:pointer;color:#6b7280;transition:all .15s ease}.searchable-dropdown-search .search-clear:hover{background:#d1d5db;color:#374151}.searchable-dropdown-options{max-height:280px;overflow-y:auto;padding:6px}.searchable-dropdown-options::-webkit-scrollbar{width:6px}.searchable-dropdown-options::-webkit-scrollbar-track{background:transparent}.searchable-dropdown-options::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:3px}.searchable-dropdown-options::-webkit-scrollbar-thumb:hover{background:#d1d5db}.searchable-dropdown-option{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:8px;cursor:pointer;transition:all .15s ease}.searchable-dropdown-option:hover{background:#f3f4f6}.searchable-dropdown-option.selected{background:linear-gradient(135deg,#f95d031a,#fa7d351a)}.searchable-dropdown-option.selected:hover{background:linear-gradient(135deg,#f95d0326,#fa7d3526)}.searchable-dropdown-option .option-content{display:flex;flex-direction:column;gap:2px}.searchable-dropdown-option .option-label{font-size:14px;font-weight:500;color:#111827}.searchable-dropdown-option.selected .option-label{color:var(--primary)}.searchable-dropdown-option .option-description{font-size:12px;color:#6b7280}.searchable-dropdown-option .option-check{flex-shrink:0;color:var(--primary)}.searchable-dropdown-empty{padding:20px;text-align:center;font-size:14px;color:#9ca3af}.release-version-source-card{background:#f0f4f8;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:14px;overflow:visible}.release-version-source-header{display:flex;align-items:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:500;color:#374151}.release-version-source-header svg{color:#6b7280;flex-shrink:0}.release-version-source-body{padding:0 16px 16px}.release-version-source-body .release-form-row,.release-version-source-body .release-form-group{margin-bottom:0}.version-source-radios{display:flex;gap:8px;margin-bottom:4px}.version-source-radio{display:flex;align-items:center;gap:7px;padding:7px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:13px;font-weight:500;color:#6b7280;background:#fff;cursor:pointer;transition:all .15s;-webkit-user-select:none;user-select:none}.version-source-radio input[type=radio]{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;border:2px solid #d1d5db;background:#fff;cursor:pointer;outline:none!important;box-shadow:none!important;flex-shrink:0;transition:border-color .15s,background .15s;position:relative}.version-source-radio input[type=radio]:checked{border-color:var(--primary, #f97316);background:#fff;box-shadow:inset 0 0 0 4px var(--primary, #f97316)!important}.version-source-radio.selected{border-color:var(--primary-60, #fdbe9a);background:var(--primary-light, #fff7ed);color:#374151}.version-source-radio:hover:not(.selected){border-color:#cbd5e1;background:#f8fafc}.release-form-divider{display:flex;align-items:center;gap:12px;margin:14px 0 12px}.release-form-divider h4{margin:0;font-size:13px;font-weight:600;color:#6b7280;white-space:nowrap;text-transform:uppercase;letter-spacing:.5px}.release-form-divider:before{content:"";flex:1;height:1px;background:#e5e7eb}.release-form-hint{display:block;font-size:12px;color:#6b7280;margin-top:6px}.release-form-section{margin-bottom:20px}.release-form-section h3{font-size:14px;font-weight:600;color:#374151;margin:0 0 12px}.release-no-components{padding:20px;text-align:center;font-size:13px;color:#9ca3af;background:#f9fafb;border-radius:8px}.release-components-form{display:flex;flex-direction:column;gap:12px}.release-component-row{display:flex;flex-direction:column;gap:8px;padding:14px;background:#f9fafb;border-radius:10px}.release-component-row-name{font-size:14px;font-weight:600;color:#111827}.release-component-row-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.release-component-input-group{display:flex;flex-direction:column;gap:4px}.release-component-input-group label{font-size:12px;font-weight:500;color:#6b7280}.release-component-input-group input{padding:8px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;color:#111827;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.release-component-input-group input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #f95d031a}.release-component-input-group input::placeholder{color:#9ca3af}.release-form-error{display:flex;align-items:center;gap:8px;padding:12px 14px;background:#fef2f2;border:1px solid #fee2e2;border-radius:8px;font-size:13px;color:#dc2626}.release-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background:#fafafa;border-radius:0 0 16px 16px}.release-modal-cancel{padding:10px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.release-modal-cancel:hover{background:#f9fafb;border-color:#d1d5db}.release-modal-create{padding:10px 20px;background:var(--primary);border:none;border-radius:8px;font-size:14px;font-weight:500;color:#fff;cursor:pointer;transition:background .15s ease}.release-modal-create:hover:not(:disabled){background:var(--primary-20)}.release-modal-create:disabled{background:var(--primary-50);cursor:not-allowed}.release-pipeline-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;margin-bottom:20px}.release-pipeline-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#f9fafb;cursor:pointer;transition:background .15s ease}.release-pipeline-header:hover{background:#f3f4f6}.release-pipeline-header-left{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:#374151}.release-pipeline-header-left svg{color:var(--primary)}.release-pipeline-header-right{display:flex;align-items:center;gap:10px}.release-pipeline-header-right svg{color:#9ca3af;transition:transform .2s ease}.release-pipeline-header-right svg.expanded{transform:rotate(180deg)}.release-manual-count{font-size:12px;font-weight:500;color:#f59e0b;background:#fef3c7;padding:4px 8px;border-radius:12px}.release-pipeline-content{padding:16px;border-top:1px solid #e5e7eb;background:#fff}.release-pipeline-hint{font-size:13px;color:#6b7280;margin:0 0 16px;line-height:1.5}.release-pipeline-steps{display:flex;flex-direction:column;gap:8px}.release-step-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:8px;cursor:pointer;transition:all .15s ease}.release-step-card:focus{outline:2px solid var(--primary);outline-offset:2px}.release-step-card.automatic{background:#f3f4f6;border:1px solid #e5e7eb}.release-step-card.automatic:hover{background:#e5e7eb;border-color:#d1d5db}.release-step-card.manual{background:#fef3c7;border:1px solid #fcd34d}.release-step-card.manual:hover{background:#fde68a;border-color:#fbbf24}.release-step-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;border-radius:6px;background:#0000000d}.release-step-card.automatic .release-step-icon svg{color:#6b7280}.release-step-card.manual .release-step-icon svg{color:#d97706}.release-step-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.release-step-name{font-size:14px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.release-step-type{font-size:12px;color:#6b7280}.release-step-trigger{flex-shrink:0}.release-step-auto-badge{font-size:11px;font-weight:500;color:#6b7280;background:#e5e7eb;padding:4px 10px;border-radius:12px}.release-step-manual-badge{font-size:11px;font-weight:600;color:#78350f;background:#fde68a;padding:4px 10px;border-radius:12px}.release-manual-summary{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-top:16px;font-size:13px;color:#1e40af;line-height:1.5}.release-manual-summary svg{flex-shrink:0;color:#3b82f6;margin-top:2px}.release-env-selection-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.release-env-selection-header{padding:16px 20px;background:linear-gradient(to bottom,#fafbfc,#f8f9fa);border-bottom:1px solid #e2e8f0}.release-env-selection-header h4{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#1e293b;margin:0 0 4px}.release-env-selection-header h4 svg{color:var(--primary)}.release-env-selection-header p{font-size:13px;color:#64748b;margin:0}.release-env-selection-list{padding:8px}.release-env-selection-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:8px;transition:all .2s ease;margin-bottom:4px}.release-env-selection-item:last-child{margin-bottom:0}.release-env-selection-item:hover{background:#f8fafc}.release-env-selection-item.excluded{opacity:.5;background:#f8fafc}.release-env-checkbox-label{position:relative;display:flex;align-items:center;cursor:pointer}.release-env-checkbox-label input{position:absolute;opacity:0;cursor:pointer;width:0;height:0}.release-env-checkbox-custom{width:20px;height:20px;background:#fff;border:2px solid #cbd5e1;border-radius:6px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.release-env-checkbox-custom:after{content:"";width:6px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .15s ease;margin-bottom:2px}.release-env-checkbox-label input:checked+.release-env-checkbox-custom{background:var(--primary);border-color:var(--primary)}.release-env-checkbox-label input:checked+.release-env-checkbox-custom:after{transform:rotate(45deg) scale(1)}.release-env-checkbox-label:hover .release-env-checkbox-custom{border-color:var(--primary)}.release-env-selection-info{flex:1;display:flex;align-items:center;gap:12px;min-width:0}.release-env-selection-name{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:#1e293b}.release-env-selection-name svg{color:#64748b;flex-shrink:0}.release-env-selection-type{font-size:11px;font-weight:500;padding:3px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.release-env-selection-type.environment{background:#dbeafe;color:#1e40af}.release-env-selection-type.stage-group{background:#f3e8ff;color:#7c3aed}.release-env-trigger-toggle{display:flex;align-items:center;gap:5px;padding:6px 12px;font-size:11px;font-weight:600;border-radius:6px;border:none;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.3px}.release-env-trigger-toggle.automatic{background:#dcfce7;color:#166534}.release-env-trigger-toggle.automatic:hover{background:#bbf7d0}.release-env-trigger-toggle.manual{background:#fef3c7;color:#92400e}.release-env-trigger-toggle.manual:hover{background:#fde68a}.release-config-summary{display:flex;flex-direction:column;gap:8px;margin-top:16px}.release-config-summary-item{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:8px;font-size:13px;line-height:1.4}.release-config-summary-item.excluded{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.release-config-summary-item.excluded svg{color:#ef4444;flex-shrink:0}.release-config-summary-item.manual{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.release-config-summary-item.manual svg{color:#3b82f6;flex-shrink:0}.release-pipeline-config-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px;margin-bottom:16px}.release-pipeline-canvas-wrapper{overflow:auto;max-height:320px;border-radius:8px;background:#fff;border:1px solid #e5e7eb}.release-config-card{position:absolute;width:120px;border-radius:8px;cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:0 2px 4px #00000014;transition:all .2s ease;overflow:hidden;border:2px solid transparent}.release-config-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.release-config-card-header{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:linear-gradient(135deg,#f95d03,#ff7b2e)}.release-config-card-header.excluded{background:linear-gradient(135deg,#9ca3af,#b8bfc9)}.release-config-card-header.approval{background:linear-gradient(135deg,#10b981,#34d399);justify-content:center}.release-config-card-header.approval svg{color:#fff}.release-config-card-type{font-size:9px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px}.release-config-trigger-btn{width:18px;height:18px;border-radius:4px;border:none;font-size:9px;font-weight:700;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.release-config-trigger-btn.automatic{background:#ffffffe6;color:#f95d03}.release-config-trigger-btn.automatic:hover{background:#fff}.release-config-trigger-btn.manual{background:#fef3c7;color:#92400e}.release-config-trigger-btn.manual:hover{background:#fde68a}.release-config-excluded-badge{display:flex;align-items:center;justify-content:center;color:#fff;opacity:.9}.release-config-card-body{padding:10px;background:#fff}.release-config-card-name{font-size:11px;font-weight:600;color:#374151;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.release-config-card.environment{border-color:#fdba74}.release-config-card.environment:hover{border-color:#f97316}.release-config-card.stage-group{border-color:#fdba74}.release-config-card.stage-group:hover{border-color:#f97316}.release-config-card.approval{border-color:#86efac;cursor:default}.release-config-card.approval:hover{transform:none;box-shadow:0 2px 4px #00000014}.release-config-card.excluded{border-color:#d1d5db;opacity:.7}.release-config-card.excluded:hover{border-color:#9ca3af;opacity:.85}.release-config-card.excluded .release-config-card-body{background:#f9fafb}.release-config-card.excluded .release-config-card-name{color:#9ca3af}.release-pipeline-legend{display:flex;align-items:center;gap:20px;margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb}.release-pipeline-legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:#6b7280}.release-pipeline-legend-color{width:16px;height:12px;border-radius:3px}.release-pipeline-legend-color.included{background:linear-gradient(135deg,#f95d03,#ff7b2e);border:1px solid #f97316}.release-pipeline-legend-color.excluded{background:linear-gradient(135deg,#9ca3af,#b8bfc9);border:1px solid #9ca3af;opacity:.7}.release-pipeline-legend-badge{width:16px;height:16px;border-radius:4px;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center}.release-pipeline-legend-badge.auto{background:#fff7ed;color:#f95d03;border:1px solid #fdba74}.release-pipeline-legend-badge.manual{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.release-artifacts-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;overflow:visible;margin-bottom:20px}.release-artifacts-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#f9fafb;cursor:pointer;transition:background .15s ease}.release-artifacts-header:hover{background:#f3f4f6}.release-artifacts-header-left{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:#374151}.release-artifacts-header-left svg{color:var(--primary)}.release-artifacts-header-right{display:flex;align-items:center;gap:10px}.release-artifacts-header-right svg{color:#9ca3af;transition:transform .2s ease}.release-artifacts-header-right svg.expanded{transform:rotate(180deg)}.release-artifacts-content{padding:16px;border-top:1px solid #e5e7eb;background:#fff;overflow:visible}.release-artifacts-hint{font-size:13px;color:#6b7280;margin:0 0 16px;line-height:1.5}.release-no-artifacts{padding:20px;text-align:center;font-size:13px;color:#9ca3af;background:#f9fafb;border-radius:8px}.release-artifacts-section-v2{margin-top:20px;overflow:visible}.release-artifacts-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.release-artifacts-title-left{flex:1}.release-artifacts-title-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.select-components-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.select-components-toggle input{opacity:0;width:0;height:0;position:absolute}.toggle-slider{position:relative;width:36px;height:20px;background:#e5e7eb;border-radius:10px;transition:all .2s ease}.toggle-slider:before{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:all .2s ease;box-shadow:0 1px 3px #00000026}.select-components-toggle input:checked+.toggle-slider{background:var(--primary)}.select-components-toggle input:checked+.toggle-slider:before{transform:translate(16px)}.toggle-label{font-size:13px;font-weight:500;color:#6b7280;transition:color .15s ease}.select-components-toggle input:checked~.toggle-label{color:var(--primary)}.release-artifacts-title h3{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#111827;margin:0 0 4px}.release-artifacts-title h3 svg{color:var(--primary);flex-shrink:0}.release-artifacts-title p{font-size:13px;color:#6b7280;margin:0}.add-component-dropdown-container{position:relative}.release-add-component-btn-inline{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;color:var(--primary);background:#fff;border:1px solid var(--primary);border-radius:6px;cursor:pointer;transition:all .15s ease}.release-add-component-btn-inline:hover{background:#6366f10d}.release-add-component-btn-inline.open{background:#6366f11a;border-color:var(--primary)}.add-component-chevron{transition:transform .2s ease;margin-left:2px}.release-add-component-btn-inline.open .add-component-chevron{transform:rotate(180deg)}.add-component-dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:220px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 20px #0000001f;z-index:9999;overflow:hidden}.add-component-dropdown-search{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.add-component-dropdown-search svg{color:#9ca3af;flex-shrink:0}.add-component-dropdown-search input{flex:1;border:none;background:transparent;font-size:13px;color:#374151;outline:none}.add-component-dropdown-search input::placeholder{color:#9ca3af}.add-component-dropdown-options{max-height:240px;overflow-y:auto;padding:4px}.add-component-dropdown-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:13px;color:#374151;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease;text-align:left}.add-component-dropdown-option:hover{background:#6366f114;color:var(--primary)}.add-component-dropdown-option svg{color:#9ca3af;flex-shrink:0}.add-component-dropdown-option:hover svg{color:var(--primary)}.add-component-dropdown-divider{height:1px;background:#f1f5f9;margin:4px 0}.add-component-dropdown-option.add-component-all{font-weight:600;color:var(--primary, #f97316);background:var(--primary-light, #fff7ed);border-radius:6px;margin-bottom:2px}.add-component-dropdown-option.add-component-all svg{color:var(--primary, #f97316)}.add-component-dropdown-option.add-component-all:hover{background:#fed7aa;color:var(--primary-hover, #e05a0e)}.add-component-dropdown-option.add-component-all:disabled{opacity:.6;cursor:not-allowed}.add-component-dropdown-empty{padding:16px 12px;font-size:13px;color:#9ca3af;text-align:center}.artifacts-table-bordered{width:100%;border-collapse:separate;border-spacing:0;border:1px solid #e2e8f0;border-radius:12px;overflow:visible;background:#fff;box-shadow:0 1px 3px #0000000a,0 1px 2px #00000005}.artifacts-table-bordered thead{background:linear-gradient(to bottom,#fafbfc,#f8f9fa)}.artifacts-table-bordered th{padding:10px 16px;font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.8px;text-align:left;border-bottom:2px solid #e2e8f0;position:relative}.artifacts-table-bordered th:first-child{border-top-left-radius:11px}.artifacts-table-bordered th:last-child{border-top-right-radius:11px}.artifacts-table-bordered th.col-deploy{width:80px;text-align:center}.select-all-deploy{display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;font-weight:600;-webkit-user-select:none;user-select:none}.select-all-deploy input[type=checkbox],.artifacts-table-bordered td.col-deploy input[type=checkbox]{-webkit-appearance:none;appearance:none;width:18px;height:18px;cursor:pointer;border:2px solid #cbd5e1;border-radius:6px;background:#fff;position:relative;transition:all .15s ease}.select-all-deploy input[type=checkbox]:hover,.artifacts-table-bordered td.col-deploy input[type=checkbox]:hover{border-color:var(--primary)}.select-all-deploy input[type=checkbox]:checked,.artifacts-table-bordered td.col-deploy input[type=checkbox]:checked{background:var(--primary);border-color:var(--primary)}.select-all-deploy input[type=checkbox]:checked:after,.artifacts-table-bordered td.col-deploy input[type=checkbox]:checked:after{content:"✓";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff;line-height:1}.artifacts-table-bordered th.col-source{width:260px;min-width:200px}.artifacts-table-bordered th.col-key{width:200px}.artifacts-table-bordered th.col-version{width:300px}.artifacts-table-bordered th.col-actions{width:100px;text-align:center}.artifacts-table-bordered tbody tr{transition:all .2s ease}.artifacts-table-bordered tbody tr:hover{background:linear-gradient(to right,#6366f105,#6366f10a)}.artifacts-table-bordered tbody tr.excluded{opacity:.95}.artifacts-table-bordered td{padding:10px 16px;font-size:14px;color:#1e293b;border-bottom:1px solid #f1f5f9;vertical-align:middle}.artifacts-table-bordered tbody tr.dropdown-active{position:relative;z-index:10}.artifacts-table-bordered tbody tr:last-child td{border-bottom:none}.artifacts-table-bordered tbody tr:last-child td:first-child{border-bottom-left-radius:11px}.artifacts-table-bordered tbody tr:last-child td:last-child{border-bottom-right-radius:11px}.artifacts-table-bordered td.col-deploy{text-align:center}.artifacts-table-bordered td.col-source{font-weight:600;vertical-align:middle;padding-top:10px;background:linear-gradient(to right,#fafbfc,#fff);color:#334155;border-right:1px solid #e2e8f0}.artifacts-table-bordered td.col-source.excluded{color:#64748b}.artifacts-table-bordered td.col-version{position:relative;overflow:visible}.artifacts-table-bordered td.col-actions{text-align:center}.artifact-remove-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#94a3b8;cursor:pointer;transition:all .2s ease}.artifact-remove-btn:hover{background:#fef2f2;border-color:#fecaca;color:#ef4444;transform:scale(1.05)}.artifacts-table-bordered td.col-key{padding:12px 14px}.version-key-input{width:100%;padding:10px 14px;font-size:13px;font-family:SF Mono,Monaco,Courier New,monospace;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#334155;transition:all .2s ease;box-shadow:0 1px 2px #0000000a}.version-key-input:hover{border-color:#cbd5e1}.version-key-input:focus{outline:none;border-color:var(--primary);background:#fff;box-shadow:0 0 0 3px #6366f11f,0 1px 2px #0000000a}.version-key-input::placeholder{color:#94a3b8}.key-dropdown{position:relative;width:100%}.key-dropdown-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:13px;font-family:SF Mono,Monaco,Courier New,monospace;color:#334155;background:#fff;cursor:pointer;transition:all .2s ease;text-align:left;box-shadow:0 1px 2px #0000000a}.key-dropdown-trigger:hover{border-color:#cbd5e1;background:#fafbfc}.key-dropdown-trigger.open{border-color:var(--primary);box-shadow:0 0 0 3px #6366f11f,0 1px 2px #0000000a}.key-dropdown-trigger svg{flex-shrink:0;color:#94a3b8;transition:transform .2s ease}.key-dropdown-trigger.open svg{transform:rotate(180deg);color:var(--primary)}.key-dropdown-trigger .placeholder{color:#94a3b8}.key-dropdown-trigger .has-value{font-weight:500}.key-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:100%;width:max-content;max-width:260px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 8px 32px #0000001f,0 2px 8px #0000000f;z-index:9999;overflow:hidden;animation:dropdownFadeIn .15s ease;padding:4px}.key-dropdown-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:none;background:none;cursor:pointer;font-size:13px;font-family:SF Mono,Monaco,Courier New,monospace;color:#334155;border-radius:6px;transition:background .15s ease;text-align:left}.key-dropdown-option:hover{background:#f1f5f9}.key-dropdown-option.selected{background:rgba(var(--primary-rgb, 245, 104, 22),.08);color:var(--primary);font-weight:500}.key-dropdown-option svg{flex-shrink:0;color:var(--primary)}.key-dropdown-empty{padding:12px 10px;font-size:12px;color:#94a3b8;text-align:center}.artifacts-table-bordered tbody tr.version-continuation{border-top:1px dashed #e5e7eb}.artifacts-table-bordered tbody tr.version-continuation td{border-top:none}.source-name{font-weight:500;display:flex;align-items:center;gap:8px}.source-key-badge{font-size:11px;font-weight:600;color:#6b7280;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:5px;padding:2px 7px;text-transform:capitalize;letter-spacing:.2px}.version-remove-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#cbd5e1;cursor:pointer;transition:all .2s ease}.version-remove-btn:hover{background:#fef2f2;border-color:#fecaca;color:#ef4444;transform:scale(1.05)}.version-actions{display:flex;align-items:center;justify-content:center;gap:8px;position:relative}.add-version-icon-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:#fff;border:1px dashed #cbd5e1;border-radius:6px;color:var(--primary);cursor:pointer;transition:all .2s ease}.add-version-icon-btn:hover{background:#6366f114;border-color:var(--primary);border-style:solid;transform:scale(1.05)}.add-version-inline{display:flex;align-items:center;gap:4px}.version-key-input-inline{width:100px;padding:4px 8px;font-size:12px;font-family:SF Mono,Monaco,Courier New,monospace;border:1px solid var(--primary);border-radius:4px;background:#fff;color:#374151}.version-key-input-inline:focus{outline:none;box-shadow:0 0 0 2px #6366f133}.version-key-input-inline::placeholder{color:#9ca3af;font-size:11px}.add-version-confirm-inline,.add-version-cancel-inline{display:flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:4px;cursor:pointer;transition:all .15s ease}.add-version-confirm-inline{background:var(--primary);color:#fff}.add-version-confirm-inline:hover:not(:disabled){background:var(--primary-dark, #4f46e5)}.add-version-confirm-inline:disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.add-version-cancel-inline{background:#f3f4f6;color:#6b7280}.add-version-cancel-inline:hover{background:#fee2e2;color:#ef4444}.add-version-type-dropdown{position:absolute;left:50%;transform:translate(-50%);top:100%;z-index:20;min-width:140px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #0000001a;padding:4px;display:flex;flex-direction:column;gap:2px}.add-version-type-option{display:block;width:100%;padding:7px 12px;font-size:12px;font-family:SF Mono,Monaco,Courier New,monospace;text-align:left;background:none;border:none;border-radius:5px;color:#374151;cursor:pointer;transition:background .15s ease}.add-version-type-option:hover{background:#f0f4ff;color:var(--primary)}.add-version-type-cancel{display:block;width:100%;padding:6px 12px;font-size:11px;text-align:center;background:none;border:none;border-top:1px solid #f0f0f0;color:#9ca3af;cursor:pointer;margin-top:2px}.add-version-type-cancel:hover{color:#ef4444}.release-artifacts-table{display:flex;flex-direction:column;overflow:visible}.release-artifacts-table-header{display:flex;align-items:center;padding:10px 14px;border-bottom:1px solid #e5e7eb;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.release-artifacts-col-include{width:60px;flex-shrink:0;text-align:center}.release-artifacts-col-source{flex:1;min-width:0}.release-artifacts-col-version{width:280px;flex-shrink:0}.release-artifact-row{display:flex;align-items:center;padding:14px;border-bottom:1px solid #f3f4f6;transition:background .15s ease;position:relative}.release-artifact-row:last-child{border-bottom:none}.release-artifact-row:hover{background:#f9fafb}.release-artifact-include{width:60px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.release-artifact-include input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary-button)}.release-artifact-row.excluded{opacity:.6;background:#f9fafb}.release-artifact-name{flex:1;min-width:0;font-size:14px;font-weight:500;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.release-artifact-name.excluded{text-decoration:line-through;color:#9ca3af}.release-artifact-version-select{width:280px;flex-shrink:0}.release-artifact-version-input{width:100%;padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.release-artifact-version-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #f95d031a}.release-artifact-version-input::placeholder{color:#9ca3af}.custom-dropdown{position:relative;width:100%}.custom-dropdown-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1e293b;background:#fff;cursor:pointer;transition:all .2s ease;text-align:left;box-shadow:0 1px 2px #0000000a}.custom-dropdown-trigger:hover{border-color:#cbd5e1;background:#fafbfc}.custom-dropdown-trigger.open{border-color:var(--primary);box-shadow:0 0 0 3px #6366f11f,0 1px 2px #0000000a}.custom-dropdown-trigger svg{flex-shrink:0;color:#94a3b8;transition:transform .2s ease}.custom-dropdown-trigger.open svg{transform:rotate(180deg);color:var(--primary)}.custom-dropdown-trigger .placeholder{color:#94a3b8}.custom-dropdown-trigger .has-value{font-weight:500;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:13px;color:#334155}.custom-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:100%;width:max-content;max-width:340px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 12px 48px #0000001f,0 4px 12px #0000000f;z-index:9999;overflow:hidden;animation:dropdownFadeIn .2s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.custom-dropdown-toolbar{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.custom-dropdown-search{flex:1;display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;transition:all .15s ease}.custom-dropdown-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #f95d031a}.custom-dropdown-search svg{flex-shrink:0;color:#9ca3af}.custom-dropdown-search input{flex:1;border:none;background:transparent;font-size:13px;color:#111827;outline:none;min-width:0}.custom-dropdown-search input::placeholder{color:#9ca3af}.custom-dropdown-refresh{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .15s ease;flex-shrink:0}.custom-dropdown-refresh:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db;color:#374151}.custom-dropdown-refresh:disabled{opacity:.6;cursor:not-allowed}.custom-dropdown-refresh.refreshing svg{animation:spin 1s linear infinite}.custom-dropdown-empty{padding:16px;text-align:center;font-size:13px;color:#9ca3af}.custom-dropdown-header{padding:10px 14px;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.custom-dropdown-options{max-height:200px;overflow-y:auto;padding:6px}.custom-dropdown-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:none;background:transparent;border-radius:6px;font-size:14px;color:#374151;cursor:pointer;transition:all .1s ease;text-align:left}.custom-dropdown-option:hover{background:#f3f4f6}.custom-dropdown-option.selected{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);color:#0369a1}.custom-dropdown-option.selected:hover{background:linear-gradient(135deg,#e0f2fe,#bae6fd)}.custom-dropdown-option .option-version{font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:13px;font-weight:500;display:flex;align-items:center;gap:8px}.option-latest-badge{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:10px;font-weight:600;color:#059669;background:#d1fae5;padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.custom-dropdown-option svg{flex-shrink:0;color:#0ea5e9}.custom-dropdown-options::-webkit-scrollbar{width:6px}.custom-dropdown-options::-webkit-scrollbar-track{background:transparent}.custom-dropdown-options::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.custom-dropdown-options::-webkit-scrollbar-thumb:hover{background:#9ca3af}.release-artifacts-col-actions{width:40px;flex-shrink:0}.release-artifact-remove-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:6px;color:#9ca3af;cursor:pointer;transition:all .15s ease;flex-shrink:0}.release-artifact-remove-btn:hover{background:#fef2f2;color:#ef4444}.release-component-actions{display:flex;gap:10px;margin-top:12px;padding-top:12px;border-top:1px dashed #e5e7eb}.release-select-components-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease;white-space:nowrap}.release-select-components-btn:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.release-select-components-btn.active{background:var(--primary-button);border-color:var(--primary-button);color:#fff}.release-select-components-btn.active:hover{opacity:.9}.release-select-components-btn svg{color:currentColor}.release-add-component-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease;flex:1;justify-content:center}.release-add-component-btn:hover{background:#f3f4f6;border-color:#9ca3af;color:#374151}.release-add-component-btn svg{color:#9ca3af}.release-add-component-btn:hover svg{color:#6b7280}.release-add-component-dropdown{display:flex;gap:10px;align-items:center}.release-add-component-select{flex:1;padding:10px 36px 10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;background:#fff;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;transition:border-color .15s ease,box-shadow .15s ease}.release-add-component-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #f95d031a}.release-add-component-cancel{padding:10px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease;white-space:nowrap}.release-add-component-cancel:hover{background:#f9fafb;border-color:#d1d5db}.release-pipeline-canvas-wrapper{border:1px solid #e5e7eb;border-radius:8px;overflow:auto;background:linear-gradient(90deg,#e5e7eb 1px,transparent 1px),linear-gradient(#e5e7eb 1px,transparent 1px);background-size:15px 15px;background-color:#f8fafc;max-height:280px}.release-pipeline-canvas{position:relative;min-width:100%;min-height:200px}.release-pipeline-canvas-svg{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible}.release-canvas-card{position:absolute;display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fff;border-radius:8px;cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:0 1px 3px #0000001a;transition:all .15s ease;border:2px solid #e5e7eb;min-width:100px;max-width:140px}.release-canvas-card:hover{box-shadow:0 3px 8px #0000001f;transform:translateY(-1px)}.release-canvas-card:focus{outline:none;border-color:var(--primary, #f95d03)}.release-canvas-card.manual{border-color:#fcd34d;background:linear-gradient(180deg,#fefce8,#fff);cursor:default}.release-canvas-card.manual:hover{transform:none;box-shadow:0 1px 3px #0000001a}.release-canvas-card.automatic{border-color:#d1d5db}.release-canvas-card.stage-group{border-left:3px solid var(--primary, #f95d03)}.release-canvas-card.stage-group.manual{border-left-color:#f59e0b}.release-canvas-card.approval{border-color:#a7f3d0;border-left:3px solid #10b981;cursor:default}.release-canvas-card.approval:hover{transform:none}.release-canvas-card-badge{width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;font-size:10px;font-weight:700;flex-shrink:0}.release-canvas-card.manual .release-canvas-card-badge{background:#fef3c7;color:#92400e}.release-canvas-card.automatic .release-canvas-card-badge{background:#f3f4f6;color:#6b7280}.release-canvas-card-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:#10b981;flex-shrink:0}.release-canvas-card-name{font-size:11px;font-weight:600;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.release-card-actions{display:flex;align-items:center;gap:10px;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid #f3f4f6}.release-open-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-20) 100%);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.release-open-btn:hover{background:linear-gradient(135deg,var(--primary-20) 0%,#e85d04 100%);transform:translateY(-1px);box-shadow:0 4px 12px #f95d034d}.release-open-btn svg{width:16px;height:16px}.releases-container.release-detail-view{flex-direction:column;width:100%;height:100%}.release-detail-nav-bar{background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0}.release-detail-nav-inner{display:flex;align-items:center;justify-content:space-between;padding:10px 24px;max-width:100%}.releases-container.release-detail-view .releases-main{padding:0;display:flex;flex-direction:column;overflow:hidden}.releases-container.release-detail-view .release-detail-content{padding:16px;overflow-y:auto}.releases-container.release-detail-view .release-detail-content.pipeline-tab{padding:0;gap:0}.release-detail-nav-left{display:flex;align-items:center;gap:16px}.release-back-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;background:transparent;border:none;border-radius:6px;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.release-back-btn:hover:not(:disabled){background:#f3f4f6;color:#111827}.release-back-btn:disabled{color:#d1d5db;cursor:not-allowed;opacity:.5}.release-back-btn svg{color:#9ca3af}.release-back-btn:hover:not(:disabled) svg{color:#6b7280}.release-back-btn:disabled svg{color:#e5e7eb}.release-detail-nav-divider{width:1px;height:24px;background:#e5e7eb}.release-detail-nav-title{display:flex;align-items:center;gap:10px}.release-detail-nav-title svg{color:var(--primary);flex-shrink:0}.release-detail-nav-title-text{display:flex;flex-direction:column;gap:2px}.release-detail-nav-name{font-size:15px;font-weight:600;color:#111827}.release-detail-nav-description{font-size:12px;font-weight:400;color:#6b7280;max-width:400px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.release-detail-nav-version{font-size:12px;font-weight:500;color:#6b7280;background:#f3f4f6;padding:3px 8px;border-radius:4px}.release-status-dropdown-container{position:relative;margin-left:16px}.release-status-dropdown-trigger{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;border:1px solid;border-radius:6px;cursor:pointer;transition:all .15s ease;background:transparent}.release-status-dropdown-trigger:hover{opacity:.9}.release-status-dropdown-trigger:disabled{cursor:not-allowed;opacity:.6}.release-status-dropdown-trigger svg{transition:transform .15s ease}.release-status-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:160px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:100;padding:4px}.release-status-dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:13px;font-weight:500;color:#374151;background:transparent;border:none;border-radius:6px;cursor:pointer;text-align:left;transition:background .15s ease}.release-status-dropdown-item:hover{background:#f3f4f6}.release-status-dropdown-item.active{background:#f3f4f6;color:#111827}.release-status-dropdown-item:disabled{cursor:default}.release-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.release-detail-nav-tabs{display:flex;align-items:center;gap:4px}.release-detail-nav-tab{padding:8px 16px;background:transparent;border:none;border-radius:6px;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.release-detail-nav-tab:hover{background:#f3f4f6;color:#374151}.release-detail-nav-tab.active,.release-detail-nav-tab.active:hover{background:var(--secondary-button);color:#fff}.release-detail-deployment-status{display:flex;align-items:center;gap:8px;padding:0 16px;margin-left:auto}.deployment-status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;text-transform:capitalize;white-space:nowrap}.deployment-status-badge.deploying{background:#dbeafe;color:#1e40af}.deployment-status-badge.deployed{background:#dcfce7;color:#166534}.deployment-status-badge.failed{background:#fee2e2;color:#991b1b}.deployment-status-badge:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.8}.deployment-status-badge.deploying:before{animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:.4}50%{opacity:1}}.close-deployment-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:4px;color:#6b7280;cursor:pointer;transition:all .15s ease}.close-deployment-btn:hover{background:#f3f4f6;color:#374151}.release-detail-content{display:flex;flex-direction:column;gap:24px;flex:1;overflow:hidden}.release-detail-title-row{display:flex;align-items:center;justify-content:space-between}.release-detail-title{display:flex;align-items:center;gap:12px}.release-detail-title h1{margin:0;font-size:24px;font-weight:600;color:#111827}.release-detail-title svg{color:var(--primary)}.release-detail-status-badge{font-size:13px;font-weight:500;padding:6px 14px;border-radius:8px;border:1px solid;text-transform:capitalize}.release-overview-layout{display:flex;gap:0;height:100%;background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden}.release-overview-sidebar{width:220px;min-width:220px;background:#f9fafb;border-right:1px solid #e5e7eb;padding:16px 0}.release-overview-nav{display:flex;flex-direction:column;gap:2px}.release-overview-nav-item{display:flex;align-items:center;gap:10px;padding:12px 20px;background:transparent;border:none;font-size:14px;font-weight:500;color:#4b5563;cursor:pointer;transition:all .15s ease;text-align:left;width:100%;border-left:3px solid transparent}.release-overview-nav-item:hover{background:#f3f4f6;color:#111827}.release-overview-nav-item.active{background:#fff;color:var(--primary);border-left-color:var(--primary)}.release-overview-nav-item.active svg{color:var(--primary)}.release-overview-nav-item svg{color:#9ca3af;flex-shrink:0}.release-overview-nav-item:hover svg{color:#6b7280}.release-overview-main{flex:1;padding:24px;overflow-y:auto;display:flex;flex-direction:column;gap:20px}.release-overview-split{display:grid;grid-template-columns:1.5fr 1fr;gap:20px;height:100%}.release-overview-notes-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px 24px;display:flex;flex-direction:column;min-height:0}.release-overview-info-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px 24px}.release-notes-file-content{flex:1;overflow-y:auto;margin-top:8px}.release-notes-text{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.6;color:#374151;white-space:pre-wrap;word-wrap:break-word;margin:0;padding:0}.release-notes-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px;color:#9ca3af;text-align:center}.release-notes-empty-state svg{color:#d1d5db}.release-notes-empty-state span{font-size:14px}@media(max-width:1000px){.release-overview-split{grid-template-columns:1fr}}.release-detail-empty-state{padding:40px 20px;text-align:center;color:#6b7280;font-size:14px}.release-detail-info-item.full-width{grid-column:1 / -1}.release-detail-split-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}@media(max-width:1200px){.release-detail-split-layout{grid-template-columns:1fr}}.release-detail-info-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px 24px}.release-detail-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.release-detail-info-item{display:flex;flex-direction:column;gap:4px}.release-detail-info-item .info-label{font-size:12px;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.release-detail-info-item .info-value{font-size:14px;font-weight:500;color:#111827}.release-history-panel{margin-top:16px;padding-top:12px;border-top:1px solid #eef2f7}.release-history-title{margin:0 0 10px;font-size:13px;font-weight:600;color:#111827;text-transform:uppercase;letter-spacing:.3px}.release-history-loading,.release-history-empty{font-size:12px;color:#6b7280}.release-history-list{display:flex;flex-direction:column;gap:8px}.release-history-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid #eef2f7;border-radius:8px;background:#fafafa}.release-history-type{font-size:10px;font-weight:700;letter-spacing:.4px;padding:4px 6px;border-radius:6px;background:#e2e8f0;color:#475569;min-width:28px;text-align:center}.release-history-type.stage-group{background:#fde68a;color:#92400e}.release-history-type.environment{background:#dbeafe;color:#1d4ed8}.release-history-main{flex:1;min-width:0}.release-history-name{font-size:13px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.release-history-meta{display:flex;gap:8px;font-size:11px;color:#6b7280}.release-history-status{font-size:11px;font-weight:600;text-transform:capitalize;padding:4px 8px;border-radius:10px;background:#f3f4f6;color:#6b7280}.release-history-status.success,.release-history-status.deployed,.release-history-status.completed{background:#dcfce7;color:#16a34a}.release-history-status.failed{background:#fee2e2;color:#dc2626}.release-history-status.running,.release-history-status.deploying{background:#dbeafe;color:#2563eb}.release-history-status.cancelled{background:#fef3c7;color:#d97706}.release-detail-section-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px 24px}.release-detail-section-header{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:#111827;margin:0 0 16px}.release-detail-section-header svg{color:var(--primary)}.section-count{font-size:12px;font-weight:500;color:#6b7280;background:#f3f4f6;padding:2px 10px;border-radius:12px;margin-left:4px}.release-detail-components-list{display:flex;flex-direction:column;gap:10px}.release-detail-component-row{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#f9fafb;border-radius:10px;transition:all .15s ease}.release-detail-component-row:hover{background:#f3f4f6}.release-detail-component-row .component-name{font-size:14px;font-weight:600;color:#111827}.release-detail-component-row .component-versions{display:flex;align-items:center;gap:12px}.version-chip{display:flex;align-items:center;gap:8px}.version-chip .version-label{font-size:11px;font-weight:500;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px}.version-chip .version-value{font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:13px;font-weight:500;color:#374151;background:#fff;border:1px solid #e5e7eb;padding:4px 10px;border-radius:6px}.release-components-table-wrapper{overflow-x:auto}.release-components-table{width:100%;border-collapse:collapse;font-size:14px}.release-components-table thead{background:#f8fafc;border-bottom:2px solid #e5e7eb}.release-components-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.release-components-table .components-th-name{min-width:180px}.release-components-table .components-th-version{min-width:140px;text-align:center}.release-components-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background .15s ease}.release-components-table tbody tr:hover{background:#f8fafc}.release-components-table tbody tr:last-child{border-bottom:none}.release-components-table td{padding:14px 16px;vertical-align:middle}.release-components-table .components-td-name{display:flex;align-items:center;gap:12px;font-weight:600;color:#1f2937}.release-components-table .component-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-20) 100%);color:#fff;font-size:13px;font-weight:700;border-radius:8px;flex-shrink:0}.release-components-table .components-td-version{text-align:center}.release-components-table .version-badge{display:inline-block;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:13px;font-weight:500;color:#374151;background:#fff;border:1px solid #e5e7eb;padding:6px 12px;border-radius:6px}.release-components-table .version-na{color:#cbd5e1;font-size:14px}.release-detail-deployments-list{display:flex;flex-direction:column;gap:10px}.release-detail-deployment-row{display:flex;align-items:flex-start;gap:14px;padding:14px 18px;background:#f9fafb;border-radius:10px}.release-detail-deployment-row .deployment-icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.release-detail-deployment-row .deployment-icon svg{width:20px;height:20px}.release-detail-deployment-row .deployment-details{flex:1;min-width:0}.release-detail-deployment-row .deployment-env{font-size:14px;font-weight:600;color:#111827;margin-bottom:4px}.release-detail-deployment-row .deployment-meta-text{font-size:12px;color:#6b7280}.release-detail-deployment-row .deployment-notes-text{margin-top:8px;font-size:13px;color:#6b7280;background:#fff;padding:8px 12px;border-radius:6px;font-style:italic}.deployment-status-tag{font-size:11px;font-weight:600;padding:4px 10px;border-radius:6px;text-transform:capitalize;flex-shrink:0}.deployment-status-tag.deployed{color:#059669;background:#d1fae5}.deployment-status-tag.deploying{color:#2563eb;background:#dbeafe}.deployment-status-tag.pending{color:#d97706;background:#fef3c7}.deployment-status-tag.failed{color:#dc2626;background:#fee2e2}.deployment-status-tag.rolled_back{color:var(--primary);background:var(--primary-light)}.release-pipeline-fullscreen{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative}.pipeline-zoom-toolbar{position:absolute;bottom:20px;right:20px;display:flex;align-items:center;gap:4px;padding:8px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 12px #0000001a;z-index:10}.pipeline-zoom-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s ease}.pipeline-zoom-btn:hover:not(:disabled){background:#f3f4f6;color:#111827}.pipeline-zoom-btn:disabled{color:#d1d5db;cursor:not-allowed}.pipeline-zoom-btn svg{width:18px;height:18px}.pipeline-zoom-level{min-width:50px;text-align:center;font-size:14px;font-weight:500;color:#374151;padding:0 8px}.pipeline-zoom-divider{width:1px;height:24px;background:#e5e7eb;margin:0 4px}.release-pipeline-fullscreen .release-pipeline-loading{flex:1;display:flex;align-items:center;justify-content:center;gap:12px;color:#6b7280;font-size:14px}.release-pipeline-fullscreen .release-pipeline-empty{flex:1;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:14px}.release-pipeline-fullscreen .release-detail-canvas-wrapper{flex:1;border:none;border-radius:0;max-height:none;min-height:0;overflow:auto;background:linear-gradient(90deg,#f3f4f6 1px,transparent 1px),linear-gradient(#f3f4f6 1px,transparent 1px);background-size:20px 20px;background-color:#fafafa}.release-pipeline-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px 20px;color:#6b7280;font-size:14px}.release-pipeline-empty{padding:40px 20px;text-align:center;color:#9ca3af;font-size:14px}.release-detail-canvas-wrapper{border:1px solid #e5e7eb;border-radius:12px;overflow:auto;background:linear-gradient(90deg,#f3f4f6 1px,transparent 1px),linear-gradient(#f3f4f6 1px,transparent 1px);background-size:20px 20px;background-color:#fafafa;min-height:250px;max-height:400px}.release-detail-canvas{position:relative;min-width:100%;min-height:250px;padding:20px}.release-detail-step-card{position:absolute;display:flex;flex-direction:column;gap:8px;padding:12px 16px;background:#fff;border-radius:10px;border:2px solid #e5e7eb;width:160px;box-shadow:0 2px 8px #0000000f;transition:all .2s ease}.release-detail-step-card:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.release-detail-step-card.environment.deployed{border-color:#10b981;background:linear-gradient(180deg,#ecfdf5,#fff)}.release-detail-step-card.environment.deploying{border-color:#3b82f6;background:linear-gradient(180deg,#eff6ff,#fff)}.release-detail-step-card.environment.pending{border-color:#f59e0b;background:linear-gradient(180deg,#fffbeb,#fff)}.release-detail-step-card.environment.failed{border-color:#ef4444;background:linear-gradient(180deg,#fef2f2,#fff)}.release-detail-step-card.stage-group{border-left:4px solid var(--primary)}.release-detail-step-card.approval{border-left:4px solid #6b7280;cursor:pointer}.release-detail-step-card.approval:hover{background:#fafafa}.release-detail-step-card.approval.approved{border-left:4px solid #10b981;background:#f0fdf4}.release-detail-step-card.approval.pending{border-left:4px solid #f59e0b;background:#fffbeb}.release-detail-step-card.approval.rejected{border-left:4px solid #ef4444;background:#fef2f2}.approval-status-not-requested{color:#6b7280}.approval-status-approved{color:#10b981;font-weight:600}.approval-status-pending{color:#f59e0b;font-weight:600}.approval-status-rejected{color:#ef4444;font-weight:600}.step-card-actions{margin-top:8px;display:flex;gap:6px}.step-card-action-btn.request-approval{padding:4px 10px;font-size:11px;font-weight:500;background:#3b82f6;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background .2s}.step-card-action-btn.request-approval:hover{background:#2563eb}.step-card-header{display:flex;align-items:center;gap:8px}.step-card-status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.step-card-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.step-card-name{font-size:13px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.step-card-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.step-card-type{font-size:11px;font-weight:500;color:#6b7280;background:#f3f4f6;padding:2px 8px;border-radius:4px;text-transform:capitalize}.step-card-stages-count{font-size:11px;color:#9ca3af}.step-card-status{display:flex;align-items:center}.step-status-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;padding:4px 10px;border-radius:6px;text-transform:capitalize}.step-status-badge svg{flex-shrink:0}.step-deploy-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-20) 100%);color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;width:100%}.step-deploy-btn:hover{background:linear-gradient(135deg,var(--primary-20) 0%,#e85d04 100%);transform:translateY(-1px);box-shadow:0 4px 12px #f95d034d}.step-deploy-btn svg{flex-shrink:0}.step-deploy-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.release-env-card{position:absolute;display:flex;flex-direction:column;background:#fff;border-radius:8px;border:1px solid #e5e7eb;width:180px;box-shadow:0 2px 8px #00000014;overflow:visible;transition:all .2s ease}.release-env-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.release-env-card.deployed{border-color:#10b981}.release-env-card.deploying{border-color:#3b82f6}.release-env-card.failed{border-color:#ef4444}.release-env-card.excluded{opacity:.6;border-color:#d1d5db}.release-env-card.excluded:hover{transform:none;box-shadow:0 2px 8px #00000014}.release-env-card-header.excluded{background:linear-gradient(135deg,#9ca3af,#b8bfc9)}.release-env-excluded-badge{display:flex;align-items:center;gap:6px;color:#fff;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.release-env-excluded-badge svg{width:12px;height:12px}.release-env-card-header{background:#ea580c;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-radius:8px 8px 0 0}.release-env-header-deploy-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#ffffff40;border:none;border-radius:6px;color:#fff;cursor:pointer;transition:all .15s ease;flex-shrink:0}.release-env-header-deploy-btn:hover:not(:disabled){background:#fff6;transform:scale(1.05)}.release-env-header-deploy-btn:disabled{opacity:.5;cursor:not-allowed}.release-env-header-deploy-btn svg{width:14px;height:14px}.release-env-header-status{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;flex-shrink:0}.release-env-header-status.deployed{background:#16a34a;color:#fff}.release-env-header-status.deploying{background:#ffffff40;color:#fff}.release-env-header-status.failed{background:#dc2626;color:#fff}.release-env-header-status.pending{background:#fff3;color:#fff}.release-env-header-status svg{width:14px;height:14px}.release-env-body-status{position:absolute;top:12px;right:12px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;flex-shrink:0;z-index:1}.release-env-body-status.deployed{background:#16a34a;color:#fff}.release-env-body-status.deploying{background:#3b82f6;color:#fff}.release-env-body-status.failed{background:#dc2626;color:#fff}.release-env-body-status svg{width:14px;height:14px}.release-env-header-actions{display:flex;align-items:center;gap:6px}.release-env-header-retrigger-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#ffffff40;border:none;border-radius:6px;color:#fff;cursor:pointer;transition:all .15s ease;flex-shrink:0}.release-env-header-retrigger-btn:hover:not(:disabled){background:#fff6;transform:scale(1.05)}.release-env-header-retrigger-btn:disabled{opacity:.5;cursor:not-allowed}.release-env-header-retrigger-btn svg{width:14px;height:14px}.release-env-header-deploy-btn.approval-pending,.release-env-header-retrigger-btn.approval-pending{opacity:.4;cursor:not-allowed;background:#ffffff1a}.release-env-header-deploy-btn.approval-pending:hover,.release-env-header-retrigger-btn.approval-pending:hover{background:#ffffff1a;transform:none}.release-env-trigger-badge{font-size:10px;font-weight:700;color:#fff;background:#ffffff40;padding:3px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.release-env-trigger-badge.automatic{background:#ffffff59}.release-env-card-body{padding:12px;display:flex;flex-direction:column;gap:8px;position:relative}.release-env-name{margin:0;font-size:15px;font-weight:600;color:#111827}.release-env-meta{display:flex;align-items:center;gap:12px;font-size:12px;color:#6b7280}.release-env-stages-clickable{cursor:pointer;color:#3b82f6;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}.release-env-stages-clickable:hover{color:#2563eb}.release-env-components-clickable{cursor:pointer;color:#334155;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px;background:transparent;border:none;padding:0;font:inherit}.release-env-components-clickable:hover{color:#0f172a}.env-stages-popup{position:absolute;top:100%;left:50%;transform:translate(-50%);background:#fff;border:1px solid #f0f2f6;border-radius:14px;box-shadow:0 12px 28px #0f172a29,0 2px 8px #0f172a0f;padding:0;min-width:280px;z-index:9999;animation:stagesPopupIn .18s ease-out;margin-top:10px;overflow:hidden}@keyframes stagesPopupIn{0%{opacity:0;transform:translate(-50%) translateY(-6px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.env-stages-popup:before{content:"";position:absolute;top:-7px;left:50%;width:14px;height:14px;background:#fff;border-left:1px solid #f0f2f6;border-top:1px solid #f0f2f6;transform:translate(-50%) rotate(45deg);box-shadow:-2px -2px 6px #0f172a0a}.env-stages-popup-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:linear-gradient(180deg,#fff,#f9fafb)}.env-stages-popup-title{font-size:12px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.env-stages-popup-count{font-size:11px;font-weight:500;color:#16a34a;background:#dcfce7;padding:3px 9px;border-radius:999px}.env-stages-popup-divider{height:1px;background:#f3f4f6;margin:0}.env-stages-popup-list{padding:8px}.env-stages-popup-loading{display:flex;align-items:center;justify-content:center;padding:16px}.env-stages-popup-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;transition:background .12s}.env-stages-popup-item:hover{background:#f3f4f6}.env-stages-popup-item.failed{background:#fef2f2}.env-stages-popup-item.failed:hover{background:#fee2e2}.env-stages-popup-status{display:flex;align-items:center;flex-shrink:0}.env-stages-popup-info{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.env-stages-popup-name{font-size:14px;font-weight:600;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.env-stages-popup-index{font-size:11px;color:#94a3b8;font-weight:500;flex-shrink:0}.env-stages-popup-rerun{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid #fecaca;background:#fff5f5;border-radius:8px;color:#dc2626;cursor:pointer;flex-shrink:0;transition:all .15s}.env-stages-popup-rerun:hover{background:#dc2626;color:#fff;border-color:#dc2626}.env-components-popup-overlay{position:fixed;inset:0;background:#0f172a80;z-index:9998;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:overlayFadeIn .18s ease-out}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes popupSlideIn{0%{opacity:0;transform:translate(-50%,-48%) scale(.97)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.env-components-popup{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 0 0 1px #00000008,0 20px 50px -12px #02061740,0 8px 20px -6px #0206171a;padding:0;width:min(1300px,calc(100vw - 48px));max-height:calc(100vh - 95px);z-index:9999;animation:popupSlideIn .22s ease-out;overflow:hidden;display:flex;flex-direction:column}.env-components-popup:before{display:none}.env-components-popup-header{display:flex;align-items:center;gap:16px;padding:22px 28px;background:#fff;border-bottom:1px solid #e8ecf1}.env-components-popup-icon-container{display:flex;align-items:center;justify-content:center;width:46px;height:46px;background:linear-gradient(135deg,#1e293b,#334155);color:#fff;border-radius:12px;flex-shrink:0;box-shadow:0 2px 8px #1e293b33}.env-components-popup-icon{color:#fff;flex-shrink:0;width:20px;height:20px}.env-components-popup-title-section{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.env-components-popup-title{font-size:17px;font-weight:700;color:#0f172a;margin:0;line-height:1.2;letter-spacing:-.3px}.env-components-popup-subtitle-row{display:flex;align-items:center;gap:8px}.env-components-popup-env{font-size:11px;font-weight:700;color:#1e293b;text-transform:uppercase;letter-spacing:1px;background:#f1f5f9;padding:2px 8px;border-radius:4px}.env-components-popup-count{font-size:12px;font-weight:500;color:#94a3b8}.env-components-popup-close{background:transparent;border:1px solid #e2e8f0;width:34px;height:34px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#94a3b8;transition:all .15s ease;flex-shrink:0;border-radius:8px;margin:0}.env-components-popup-close:hover{color:#1e293b;background-color:#f1f5f9;border-color:#cbd5e1}.env-components-popup-divider{display:none}.env-components-popup-content{flex:1;overflow-x:auto;overflow-y:auto;background:#f8fafc;min-height:0}.env-components-popup-toolbar{display:flex;align-items:center;gap:8px;padding:12px 28px;border-bottom:1px solid #e8ecf1;background:#fff;position:sticky;top:0;z-index:12;flex-shrink:0}.env-components-popup-metric{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:20px;background:#f1f5f9;border:1px solid #e2e8f0;color:#64748b;font-size:11px;font-weight:500;white-space:nowrap}.env-components-popup-metric strong{color:#1e293b;font-weight:700}.env-components-popup-table-wrapper{margin:16px 24px 24px;border:1px solid #d0d7e2;border-radius:10px;overflow:auto;box-shadow:0 1px 3px #0000000a}.env-components-popup-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.env-components-popup-table thead{z-index:10}.env-components-popup-table thead th{padding:11px 16px;text-align:left;font-weight:600;color:#475569;background:#f1f5f9;border-bottom:1px solid #d0d7e2;font-size:10.5px;text-transform:uppercase;letter-spacing:.6px;white-space:nowrap}.env-components-popup-table thead th:first-child{width:44px;min-width:44px;max-width:44px;text-align:center;padding:11px 8px;color:#94a3b8;position:sticky;left:0;z-index:12;background:#f1f5f9}.env-components-popup-table thead th:nth-child(2){position:sticky;left:44px;z-index:12;background:#f1f5f9;min-width:180px;width:180px}.env-components-popup-table thead th:nth-child(3){position:sticky;left:224px;z-index:12;background:#f1f5f9;border-right:2px solid #d0d7e2}.env-components-popup-table thead th:last-child{border-right:none}.env-components-popup-table thead th.sub-current{text-align:center;color:#94a3b8}.env-components-popup-table thead th.sub-new{text-align:center;color:#1e293b;font-weight:700}.env-components-popup-table thead th.sub-arrow{padding:11px 2px;width:28px}.env-components-popup-table tbody tr{transition:background-color .12s ease}.env-components-popup-table tbody tr.comp-first-row:nth-child(2n),.env-components-popup-table tbody tr.comp-first-row:nth-child(2n)~tr.comp-sub-row{background:#f8fafc}.env-components-popup-table tbody tr:hover td{background-color:#eef2f7}.env-components-popup-table tbody tr:hover td.component-name,.env-components-popup-table tbody tr:hover td.sl-no,.env-components-popup-table tbody tr:hover td.artifact-type{background-color:#e8edf3!important}.env-components-popup-table tbody td{padding:13px 16px;color:#475569;vertical-align:middle;font-size:12.5px;font-weight:500;line-height:1.4;border-bottom:1px solid #e2e8f0;background:#fff}.env-components-popup-table tbody td:last-child{border-right:none}.env-components-popup-table tbody td.sl-no{color:#94a3b8;font-size:12px;font-weight:600;text-align:center;width:44px;min-width:44px;max-width:44px;padding:13px 8px;border-bottom:1px solid #e2e8f0;border-right:1px solid #eaeff5;vertical-align:middle;background:#f8fafc;position:sticky;left:0;z-index:5}.env-components-popup-table tbody td.component-name{color:#0f172a;font-weight:600;font-size:13px;min-width:180px;width:180px;max-width:180px;background:#f8fafc;padding:13px 20px;border-right:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;letter-spacing:-.1px;position:sticky;left:44px;z-index:5}.env-components-popup-table tbody td.artifact-type{color:#64748b;font-size:10.5px;font-weight:600;text-align:center;white-space:nowrap;min-width:80px;text-transform:uppercase;letter-spacing:.5px;background:#fff;position:sticky;left:224px;z-index:5;border-right:2px solid #d0d7e2}.env-components-popup-table tbody tr.comp-first-row:nth-child(2n) td.artifact-type,.env-components-popup-table tbody tr.comp-first-row:nth-child(2n)~tr.comp-sub-row td.artifact-type{background:#f8fafc}.env-components-popup-table tbody tr.comp-sub-row td{border-bottom:1px dashed #e8ecf1}.env-components-popup-table thead th.sub-deployed{text-align:center;width:80px;min-width:80px}.env-components-popup-table tbody td.deploy-indicator{text-align:center;vertical-align:middle;width:80px;min-width:80px;padding:13px 8px}.deploy-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1}.deploy-icon svg{display:block}.deploy-icon.deployed svg{filter:drop-shadow(0 1px 3px rgba(34,197,94,.3))}.deploy-icon.failed svg{filter:drop-shadow(0 1px 3px rgba(239,68,68,.3))}.deploy-icon.pending svg{opacity:.7}.deploy-icon.unknown{color:#4f46e5;font-weight:700}.deploy-icon.unknown svg{filter:drop-shadow(0 1px 3px rgba(79,70,229,.28))}.env-components-popup-table thead th.sub-runid{text-align:center;min-width:120px}.env-components-popup-table tbody td.run-id-cell{text-align:center;vertical-align:middle;min-width:120px;padding:13px 12px}.run-id-value{display:inline-block;font-family:SFMono-Regular,ui-monospace,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:11px;font-weight:600;color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;padding:3px 8px;border-radius:4px;letter-spacing:.2px}.run-id-skeleton{display:inline-block;width:80px;height:14px;border-radius:4px;background:#e8ecf1}.env-components-popup-table thead th.sub-deployed-at{text-align:center;min-width:140px}.env-components-popup-table tbody td.deployed-at-cell{text-align:center;vertical-align:middle;min-width:140px;padding:13px 10px}.deployed-at-value{display:inline-block;font-size:11px;font-weight:500;color:#475569;white-space:nowrap}.deployed-at-skeleton{display:inline-block;width:100px;height:14px;border-radius:4px;background:#e8ecf1}.env-components-popup-table thead th.sub-deployed-by{text-align:center;min-width:110px}.env-components-popup-table tbody td.deployed-by-cell{text-align:center;vertical-align:middle;min-width:110px;padding:13px 10px}.deployed-by-value{display:inline-block;font-size:11.5px;font-weight:600;color:#334155;background:#f1f5f9;border:1px solid #e2e8f0;padding:3px 10px;border-radius:12px;white-space:nowrap}.deployed-by-skeleton{display:inline-block;width:70px;height:14px;border-radius:4px;background:#e8ecf1}.env-components-popup-table thead th.sub-custom-output{text-align:center;min-width:120px;white-space:nowrap}.env-components-popup-table thead tr.thead-group-row th.group-header{text-align:center;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#475569;background:#eef2f7;border-bottom:2px solid #cbd5e1;padding:8px 12px;white-space:nowrap}.env-components-popup-table thead tr.thead-subheader-row th{font-size:10.5px;font-weight:600;color:#64748b;padding:7px 12px;background:#f8fafc;border-bottom:1px solid #d0d7e2;text-align:center;white-space:nowrap}.env-components-popup-table tbody td.artifact-custom-output-cell{text-align:center;vertical-align:middle;min-width:120px;padding:13px 10px}.artifact-co-value{display:inline-block;font-size:11.5px;font-weight:500;color:#334155;padding:3px 10px;border-radius:6px;white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis}.artifact-co-badge{display:inline-block;font-size:11.5px;font-weight:600;padding:3px 10px;border-radius:6px;white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis;letter-spacing:.2px}.artifact-co-url{display:inline-block;font-size:11.5px;font-weight:500;color:#2563eb;text-decoration:none;padding:3px 10px;border-radius:6px;white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis;transition:color .15s ease,background .15s ease}.artifact-co-url:hover{color:#1d4ed8;background:#eff6ff;text-decoration:underline}.artifact-co-skeleton{display:inline-block;width:80px;height:14px;border-radius:4px;background:#e8ecf1}.artifact-co-empty{font-size:12px;font-weight:600;color:#94a3b8}.skeleton-shimmer{display:inline-block;background:linear-gradient(90deg,#e8ecf1 25%,#f1f5f9,#e8ecf1 75%);background-size:200% 100%;animation:skeleton-pulse 1.5s ease-in-out infinite;border-radius:4px}.skeleton-icon{width:20px;height:20px;border-radius:50%}.skeleton-text-wide{width:140px;height:14px}.skeleton-text-med{width:100px;height:14px}.skeleton-text-sm{width:70px;height:14px}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.env-components-popup-table tbody tr:last-child td,.env-components-popup-table tbody tr:last-child td.component-name,.env-components-popup-table tbody tr.comp-sub-row:last-child td{border-bottom:none}.env-components-popup-table tbody td.version-current,.env-components-popup-table tbody td.version-new{text-align:center}.version-pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;border:1px solid transparent;font-weight:600;font-size:11px;font-family:SFMono-Regular,ui-monospace,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;letter-spacing:.1px;word-break:break-word;max-width:280px;line-height:1.35}.version-pill.from{color:#475569;background:#f1f5f9;border-color:#e2e8f0}.version-pill.to{color:#0f172a;background:#dbeafe;border-color:#93c5fd;font-weight:700}.version-pill.na{color:#8896a6;background:#f8fafc;border-color:#e8ecf1;font-weight:500;font-style:italic;font-family:inherit}.env-components-popup-table tbody td.arrow{text-align:center;padding:13px 2px;width:28px;min-width:28px;max-width:28px}.version-arrow{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#e2e8f0;color:#475569;font-size:12px;font-weight:700}.env-components-popup-table tbody td.deployment-run-id{color:#64748b;font-weight:400;font-family:SFMono-Regular,ui-monospace,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:11px;letter-spacing:.2px;text-align:center;min-width:120px}.env-components-popup-table tbody td.deployment-status{text-align:center;min-width:90px}.env-components-popup-table .status-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600;letter-spacing:.1px;white-space:nowrap;border:1px solid transparent}.env-components-popup-table .status-badge.status-success{background:#ecfdf5;color:#059669;border-color:#a7f3d0}.env-components-popup-table .status-badge.status-failed{background:#fef2f2;color:#dc2626;border-color:#fecaca}.env-components-popup-table .status-badge.status-running{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.env-components-popup-table .status-badge.status-pending{background:#f8fafc;color:#94a3b8;border-color:#e2e8f0}.env-components-popup-table tbody td.custom-output{color:#475569;font-size:12px;font-weight:500;text-align:center;min-width:100px;white-space:normal}@media(max-width:1024px){.env-components-popup{width:calc(100vw - 24px);max-height:calc(100vh - 32px);border-radius:12px}.env-components-popup-header{padding:16px 18px}.env-components-popup-title{font-size:16px}.env-components-popup-toolbar{top:0;overflow-x:auto;padding:8px 18px}.env-components-popup-icon-container{width:38px;height:38px;border-radius:10px}.env-components-popup-table thead th,.env-components-popup-table tbody td{padding:8px 10px}.env-components-popup-table tbody td.component-name,.env-components-popup-table thead th:first-child{padding-left:18px}.version-pill{max-width:140px;font-size:11px;padding:3px 6px}}.release-env-url{font-size:12px;color:#3b82f6;text-decoration:none;word-break:break-all}.release-env-url:hover{text-decoration:underline}.release-env-no-url{font-size:12px;color:#9ca3af;font-style:italic}.release-env-status{margin-top:4px}.release-env-status-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;padding:4px 10px;border-radius:6px;text-transform:capitalize}.release-env-status-badge svg{flex-shrink:0}.release-env-deploy-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-20) 100%);color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;width:100%;margin-top:4px}.release-env-deploy-btn:hover{background:linear-gradient(135deg,var(--primary-20) 0%,#e85d04 100%);transform:translateY(-1px);box-shadow:0 4px 12px #f95d034d}.release-env-deploy-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.release-env-deploy-btn svg{flex-shrink:0}.release-sg-card{position:absolute;display:flex;flex-direction:column;background:#fff;border-radius:8px;border:1px solid #e5e7eb;width:220px;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:all .2s ease}.release-sg-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.release-sg-card.excluded{opacity:.6;border-color:#d1d5db}.release-sg-card.excluded:hover{transform:none;box-shadow:0 2px 8px #00000014}.release-sg-card-header.excluded{background:linear-gradient(135deg,#9ca3af,#b8bfc9)}.release-sg-card-header{background:#ea580c;padding:8px 12px;display:flex;align-items:center;justify-content:space-between}.release-sg-card.status-running .release-sg-card-header{background:linear-gradient(120deg,#ea580c,#f97316 45%,#ea580c);background-size:200% 100%;animation:sg-header-sweep 1.6s ease-in-out infinite}.release-sg-card.status-running .release-sg-overall-status{box-shadow:0 0 #3b82f673;animation:sg-status-pulse 1.2s ease-in-out infinite}.release-sg-card.status-running .release-sg-stage-item{transition:background .2s ease}.release-sg-card.status-running .release-sg-stage-item.status-running{background:linear-gradient(90deg,#f9fafb,#eef6ff 45%,#f9fafb);background-size:180% 100%;animation:sg-row-shimmer 1.4s ease-in-out infinite}@keyframes sg-header-sweep{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes sg-status-pulse{0%{box-shadow:0 0 #3b82f673}70%{box-shadow:0 0 0 10px #3b82f600}to{box-shadow:0 0 #3b82f600}}@keyframes sg-row-shimmer{0%{background-position:0% 50%}to{background-position:100% 50%}}.release-sg-overall-status{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.release-sg-overall-status.success{background:#10b981;color:#fff}.release-sg-overall-status.failed{background:#ef4444;color:#fff}.release-sg-overall-status.running{background:#3b82f6;color:#fff}.release-sg-card-body{padding:12px;display:flex;flex-direction:column;gap:8px}.release-sg-name-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.release-sg-name{margin:0;font-size:15px;font-weight:600;color:#111827}.release-sg-stages-list{display:flex;flex-direction:column;gap:8px;margin-top:4px}.release-sg-stage-item{display:flex;align-items:center;gap:10px;padding:8px 10px;background:#f9fafb;border-radius:10px;border:1px solid #eef2f7;box-shadow:0 1px 2px #1018280a}.release-sg-stage-order{display:flex;align-items:center;justify-content:center;width:22px;height:22px;background:#eef2f7;border-radius:7px;font-size:11px;font-weight:600;color:#334155}.release-sg-stage-status{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:inset 0 0 0 1px #0f172a14}.release-sg-stage-status.status-pending{color:#94a3b8}.release-sg-stage-status.status-success{background:#dcfce7;color:#16a34a}.release-sg-stage-status.status-running{background:#e0f2fe;color:#0284c7}.release-sg-stage-status.status-failed{background:#ffe4e6;color:#e11d48}.release-sg-stage-name{font-size:13px;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.release-sg-card .release-env-deploy-btn{background:linear-gradient(135deg,#475569,#334155)}.release-sg-card .release-env-deploy-btn:hover{background:linear-gradient(135deg,#334155,#1e293b);box-shadow:0 4px 12px #4755694d}.deployment-modal-overlay{position:fixed;inset:0;background:#00000080;z-index:1100;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.deployment-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;z-index:1101;width:480px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.deployment-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.deployment-modal-header h3{display:flex;align-items:center;gap:10px;margin:0;font-size:18px;font-weight:600;color:#111827}.deployment-modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s ease}.deployment-modal-close:hover{background:#f3f4f6;color:#111827}.deployment-modal-body{padding:24px;overflow-y:auto;flex:1}.deployment-no-stages{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;text-align:center}.deployment-no-stages svg{margin-bottom:16px}.deployment-no-stages p{margin:0;font-size:15px;color:#374151;font-weight:500}.deployment-no-stages-hint{margin-top:4px!important;font-size:13px!important;color:#9ca3af!important;font-weight:400!important}.deployment-progress-bar{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden;margin-bottom:20px}.deployment-progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#34d399);border-radius:3px;transition:width .3s ease}.deployment-stages-list{display:flex;flex-direction:column;gap:8px}.deployment-stage-item{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#f9fafb;border-radius:10px;transition:all .15s ease}.deployment-stage-item.running{background:#eff6ff;border:1px solid #bfdbfe}.deployment-stage-item.success{background:#ecfdf5;border:1px solid #a7f3d0}.deployment-stage-item.failed{background:#fef2f2;border:1px solid #fecaca}.deployment-stage-item.stopped{background:#fff7ed;border:1px solid #fed7aa}.deployment-stage-item.skipped{background:#fffbeb;border:1px solid #fde68a}.deployment-stage-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.deployment-stage-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.deployment-stage-name{font-size:14px;font-weight:500;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.deployment-stage-number{font-size:12px;color:#9ca3af}.deployment-stage-status{font-size:12px;font-weight:600;padding:4px 10px;border-radius:6px;text-transform:capitalize;flex-shrink:0}.deployment-stage-status.pending{color:#6b7280;background:#e5e7eb}.deployment-stage-status.running{color:#2563eb;background:#dbeafe}.deployment-stage-status.success{color:#059669;background:#d1fae5}.deployment-stage-status.failed{color:#dc2626;background:#fee2e2}.deployment-stage-status.stopped{color:#c2410c;background:#ffedd5}.deployment-stage-status.skipped{color:#d97706;background:#fef3c7}.deployment-error{display:flex;align-items:flex-start;gap:10px;margin-top:16px;padding:12px 14px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;font-size:13px;color:#dc2626}.deployment-error svg{flex-shrink:0;margin-top:1px}.deployment-modal-footer{display:flex;align-items:center;justify-content:flex-end;padding:16px 24px;border-top:1px solid #e5e7eb;background:#fafafa;border-radius:0 0 16px 16px}.deployment-modal-close-btn{padding:10px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.deployment-modal-close-btn:hover{background:#f9fafb;border-color:#d1d5db}.pipeline-stages-drawer{position:absolute;top:0;right:0;bottom:0;width:900px;background:#fff;border-left:1px solid #e5e7eb;box-shadow:-8px 0 30px #0000001f;display:flex;flex-direction:column;z-index:20;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1)}.pipeline-stages-drawer.open{transform:translate(0)}.pipeline-stages-drawer.collapsed{width:320px}.pipeline-stages-drawer.expanded{width:900px}.drawer-two-panel-layout{display:flex;height:100%;overflow:hidden}.drawer-left-panel{width:260px;min-width:260px;background:#f9fafb;border-right:1px solid #e2e5ea;box-shadow:inset -6px 0 12px -6px #0000000f;display:flex;flex-direction:column;overflow:hidden;transition:width .3s ease,min-width .3s ease}.pipeline-stages-drawer.collapsed .drawer-left-panel{width:100%;min-width:100%;border-right:none;box-shadow:none}.drawer-left-header{display:flex;align-items:center;gap:14px;padding:16px;background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0}.drawer-env-icon{width:46px;height:46px;min-width:46px;display:flex;align-items:center;justify-content:center;border-radius:12px;color:#fff}.drawer-env-icon.env{background:linear-gradient(135deg,#f97316,#c2410c);box-shadow:0 2px 8px #f973164d}.drawer-env-icon.sg{background:linear-gradient(135deg,#8b5cf6,#6d28d9);box-shadow:0 2px 8px #8b5cf64d}.drawer-env-info{flex:1;min-width:0}.drawer-env-name{margin:0;font-size:17px;font-weight:700;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}.drawer-env-type{display:inline-flex;align-items:center;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.drawer-expand-collapse-btn{width:30px;height:30px;min-width:30px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .18s ease;margin-left:auto;flex-shrink:0}.drawer-expand-collapse-btn:hover{background:#e5e7eb;color:#374151;border-color:#d1d5db}.drawer-expand-collapse-btn.expanded{background:#fff7ed;border-color:#fdba74;color:#ea580c}.drawer-expand-collapse-btn.expanded:hover{background:#ffedd5;color:#c2410c}.drawer-close-btn-collapsed{width:30px;height:30px;min-width:30px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .18s ease;flex-shrink:0}.drawer-close-btn-collapsed:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.drawer-actions-bar{display:flex;align-items:center;justify-content:center;gap:8px;padding:6px 16px;background:#fef2f2;border-bottom:1px solid #fecaca;flex-shrink:0}.drawer-env-header-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.drawer-env-header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.deployment-staleness-indicator{display:flex;align-items:center;gap:4px;padding:3px 8px;background:#fef3c7;border-radius:6px;font-size:12px;color:#92400e;flex-shrink:0;animation:pulseWarn 2s ease-in-out infinite}.deployment-staleness-indicator svg{width:14px;height:14px;color:#f59e0b;animation:spin 2s linear infinite}@keyframes pulseWarn{0%,to{opacity:.8}50%{opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.drawer-deployment-selector{position:relative;padding:8px 12px;background:#f9fafb;border-bottom:1px solid #e5e7eb;flex-shrink:0}.deploy-run-row{display:flex;align-items:center;gap:8px}.deploy-run-row .deploy-run-trigger{flex:1;min-width:0}.deploy-run-stop-icon{width:32px;height:32px;min-width:32px;display:flex;align-items:center;justify-content:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;cursor:pointer;transition:all .18s ease;flex-shrink:0}.deploy-run-stop-icon:hover{background:#fee2e2;border-color:#f87171;color:#b91c1c}.deploy-run-stop-icon:disabled{opacity:.6;cursor:not-allowed}.deploy-run-trigger{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;background:#fff;border:1px solid #d8dee8;border-radius:12px;cursor:pointer;transition:all .18s ease}.deploy-run-trigger:hover{border-color:#bcc7d8;box-shadow:0 4px 12px #0f172a14}.deploy-run-trigger.open{border-color:#f97316;box-shadow:0 0 0 3px #f9731626}.deploy-run-trigger-content{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden}.deploy-run-date{font-size:13px;font-weight:600;color:#374151;white-space:nowrap}.deploy-run-timestamp{letter-spacing:.1px}.deploy-run-id{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#eef2f7;color:#64748b;font-size:11px;font-weight:600;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;white-space:nowrap;flex-shrink:0}.deploy-run-chevron{flex-shrink:0;color:#9ca3af;transition:transform .2s ease}.deploy-run-chevron.open{transform:rotate(180deg)}.deploy-run-status-dot{width:9px;height:9px;min-width:9px;border-radius:50%;background:#9ca3af;flex-shrink:0}.deploy-run-status-dot.success{background:#22c55e;box-shadow:0 0 0 3px #22c55e26}.deploy-run-status-dot.failed{background:#ef4444;box-shadow:0 0 0 3px #ef444426}.deploy-run-status-dot.deploying{background:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.deploy-run-status-badge{margin-left:auto;font-size:9px;white-space:nowrap;flex-shrink:0;font-weight:600;padding:2px 7px;border-radius:999px;text-transform:uppercase;letter-spacing:.1px}.deploy-run-status-badge.success{background:#dcfce7;color:#16a34a}.deploy-run-status-badge.failed{background:#fee2e2;color:#dc2626}.deploy-run-status-badge.deploying{background:#dbeafe;color:#2563eb}.drawer-stop-btn{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.drawer-stop-btn:hover:not(:disabled){background:#fee2e2;border-color:#f87171}.drawer-stop-btn:disabled{opacity:.6;cursor:not-allowed}.deploy-run-menu{position:absolute;top:calc(100% + 6px);left:12px;right:12px;background:#fff;border:1px solid #e2e5ea;border-radius:12px;box-shadow:0 12px 32px #0f172a1f,0 2px 8px #0f172a0f;z-index:50;max-height:340px;overflow-y:auto;padding:4px;animation:deployRunMenuIn .18s cubic-bezier(.16,1,.3,1)}.deploy-run-menu::-webkit-scrollbar{width:5px}.deploy-run-menu::-webkit-scrollbar-track{background:transparent}.deploy-run-menu::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:10px}@keyframes deployRunMenuIn{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.deploy-run-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;transition:all .12s ease;border:1px solid transparent;margin:1px 0}.deploy-run-item:hover{background:#f1f5f9}.deploy-run-item.selected{background:#fff7ed;border-color:#fdba74}.deploy-run-item-content{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px}.deploy-run-item-date{font-size:12.5px;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.deploy-run-item-meta{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;overflow:hidden;font-size:12px}.deploy-run-item-status{display:inline-flex;align-items:center;padding:2px 8px;border-radius:6px;font-weight:600;font-size:11px;letter-spacing:.01em}.deploy-run-item-status.success{color:#15803d;background:#dcfce7}.deploy-run-item-status.failed{color:#b91c1c;background:#fee2e2}.deploy-run-item-status.deploying{color:#1d4ed8;background:#dbeafe}.deploy-run-item-runid{color:#64748b;font-size:11px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;white-space:nowrap}.deploy-run-item-by{color:#94a3b8;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.deploy-run-check{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:var(--primary, #f56816);border-radius:50%;color:#fff}.drawer-stages-section{flex:1;overflow-y:auto;padding:8px}.drawer-left-footer{padding:10px 12px 12px;background:#fff;border-top:1px solid #e5e7eb;flex-shrink:0}.drawer-view-artifacts-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 10px;border:1px solid #d7dde7;border-radius:10px;background:#f9fafb;color:#374151;font-size:12px;font-weight:600;cursor:pointer;transition:all .18s ease}.drawer-view-artifacts-btn:hover{border-color:#f97316;color:#ea580c;background:#fff7ed}.drawer-empty-stages{display:flex;align-items:center;justify-content:center;height:100px;color:#9ca3af;font-size:14px}.drawer-empty-stages p{margin:0}.drawer-right-panel{flex:1;display:flex;flex-direction:column;background:#1e1e1e;position:relative;overflow:hidden}.drawer-output-header-actions{display:flex;align-items:center;gap:10px}.drawer-output-close-btn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;color:#9ca3af;cursor:pointer;transition:all .18s ease;flex-shrink:0}.drawer-output-close-btn:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.drawer-output-close-btn svg{width:14px;height:14px}.drawer-output-placeholder-full{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#252526}.drawer-output-placeholder-full p{margin:0;font-size:14px;color:#9ca3af}.drawer-output-header-full{display:flex;flex-direction:column;gap:10px;padding:14px 16px;background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0}.drawer-output-header-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.drawer-output-header-title{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:#111827;letter-spacing:-.01em}.drawer-output-header-title svg{color:var(--primary, #f56816);flex-shrink:0}.drawer-output-header-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-left:28px}.drawer-output-meta-tag{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:#6b7280;background:#f9fafb;border:1px solid #f0f0f0;border-radius:6px;padding:3px 10px;line-height:1.4;font-weight:500}.drawer-output-meta-tag svg{color:#9ca3af;flex-shrink:0}.drawer-output-content-full{flex:1;overflow-y:auto;background:#1e1e1e}.drawer-output-error-full{height:100%;background:#1e1e1e;padding:16px}.drawer-tab-bar{display:flex;align-items:center;gap:0;background:#fff;border-bottom:1px solid #e5e7eb;padding:0 16px;flex-shrink:0}.drawer-tab-item{padding:8px 14px;font-size:12.5px;font-weight:500;color:#6b7280;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s ease;white-space:nowrap}.drawer-tab-item:hover{color:#374151;background:#f9fafb}.drawer-tab-item.active{color:var(--primary, #f56816);border-bottom-color:var(--primary, #f56816)}.drawer-script-badge{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#252526;border-bottom:1px solid #333}.drawer-script-type-tag{display:inline-flex;align-items:center;padding:2px 10px;font-size:11px;font-weight:600;color:#10b981;background:#10b9811f;border-radius:4px;text-transform:uppercase;letter-spacing:.5px;font-family:SF Mono,Fira Code,monospace}.drawer-script-stage-type-tag{display:inline-flex;align-items:center;padding:2px 10px;font-size:11px;font-weight:600;color:#8b5cf6;background:#8b5cf61f;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.drawer-tab-variables{padding:0;height:100%;overflow-y:auto;background:#fafafa}.drawer-tab-variables-table{width:100%;border-collapse:collapse;font-size:12.5px}.drawer-tab-variables-table thead th{padding:10px 14px;text-align:left;font-weight:600;font-size:11px;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;background:#f3f4f6;border-bottom:1px solid #e5e7eb;position:sticky;top:0}.drawer-tab-variables-table tbody td{padding:8px 14px;border-bottom:1px solid #f0f0f0;vertical-align:top}.drawer-tab-variables-table tbody tr:hover{background:#f9fafb}.drawer-tab-variables-table .var-key{font-weight:600;color:#111827;font-family:SF Mono,Fira Code,monospace;font-size:12px;white-space:nowrap}.drawer-tab-variables-table .var-value{color:#374151;font-family:SF Mono,Fira Code,monospace;font-size:12px;word-break:break-all}.drawer-tab-variables-table .var-source{color:#9ca3af;font-size:11.5px;white-space:nowrap}.drawer-tab-result{padding:16px;height:100%;overflow-y:auto;background:#fafafa}.drawer-result-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.drawer-result-card{display:flex;flex-direction:column;gap:4px;padding:12px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px}.drawer-result-label{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.drawer-result-value{font-size:13px;font-weight:500;color:#111827;font-family:SF Mono,Fira Code,monospace}.drawer-result-status-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:4px;font-size:12px;font-weight:600;text-transform:capitalize;width:fit-content}.drawer-result-status-badge.status-success{color:#15803d;background:#15803d1a}.drawer-result-status-badge.status-failed{color:#b91c1c;background:#b91c1c1a}.drawer-result-status-badge.status-running{color:#1d4ed8;background:#1d4ed81a}.drawer-result-status-badge.status-pending,.drawer-result-status-badge.status-stopped{color:#6b7280;background:#6b72801a}.drawer-result-status-badge.status-skipped{color:#d97706;background:#d977061a}.drawer-result-error{margin-top:12px;display:flex;flex-direction:column;gap:6px}.drawer-result-error-content{margin:0;padding:12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#991b1b;font-size:12px;font-family:SF Mono,Fira Code,monospace;white-space:pre-wrap;word-break:break-all}.drawer-tab-log{height:100%;overflow-y:auto;background:#1e1e1e}.pipeline-stages-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#fff;flex-shrink:0}.drawer-header-left{display:flex;align-items:center;gap:14px}.drawer-header-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#ea580c;border-radius:10px;color:#fff}.drawer-header-info h3{margin:0;font-size:18px;font-weight:600;color:#111827}.drawer-header-type{font-size:13px;color:#6b7280}.drawer-close-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s ease}.drawer-close-btn:hover{background:#f3f4f6;color:#111827}.pipeline-stages-drawer-body{flex:1;overflow-y:auto;padding:20px 24px;background:#fafafa}.drawer-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 20px;color:#6b7280;font-size:14px}.drawer-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 20px;text-align:center}.drawer-empty p{margin:0;font-size:14px;color:#9ca3af}.drawer-stages-list{display:flex;flex-direction:column;gap:16px}.drawer-stage-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000f;transition:all .2s ease}.drawer-stage-card:hover{box-shadow:0 4px 12px #00000014}.drawer-stage-card.success{border-color:#86efac}.drawer-stage-card.running{border-color:#93c5fd}.drawer-stage-card.failed{border-color:#fca5a5}.drawer-stage-card.skipped{border-color:#fcd34d}.drawer-stage-card-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px}.drawer-stage-left{display:flex;align-items:center;gap:14px;min-width:0}.drawer-stage-order-badge{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;border-radius:8px;font-size:13px;font-weight:600;color:#374151;flex-shrink:0}.drawer-stage-order-badge.success{background:#dcfce7;color:#16a34a}.drawer-stage-order-badge.running{background:#dbeafe;color:#2563eb}.drawer-stage-order-badge.failed{background:#fee2e2;color:#dc2626}.drawer-stage-order-badge.skipped{background:#fef3c7;color:#d97706}.drawer-stage-details{flex:1;min-width:0}.drawer-stage-name{display:block;font-size:15px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.drawer-stage-type{display:block;font-size:12px;color:#6b7280}.drawer-stage-status-badge{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:6px 12px;border-radius:8px;flex-shrink:0}.drawer-stage-status-badge.pending{color:#6b7280;background:#f3f4f6}.drawer-stage-status-badge.running{color:#2563eb;background:#dbeafe}.drawer-stage-status-badge.success{color:#16a34a;background:#dcfce7}.drawer-stage-status-badge.failed{color:#dc2626;background:#fee2e2}.drawer-stage-status-badge.skipped{color:#d97706;background:#fef3c7}.drawer-stage-meta-row{display:flex;align-items:center;gap:20px;padding:10px 18px;background:#fafafa;border-top:1px solid #f3f4f6;font-size:13px;color:#6b7280}.drawer-meta-item{display:flex;align-items:center;gap:6px}.drawer-meta-item svg{color:#9ca3af}.drawer-meta-item.timestamp{color:#9ca3af}.drawer-stage-output-section{border-top:1px solid #f3f4f6}.drawer-output-toggle{width:100%;display:flex;align-items:center;gap:8px;padding:12px 18px;background:#f9fafb;border:none;font-size:13px;font-weight:600;color:#374151;cursor:pointer;transition:all .15s ease;text-align:left}.drawer-output-toggle:hover{background:#f3f4f6}.drawer-output-toggle svg:first-child{color:#6b7280}.drawer-output-toggle .toggle-chevron{margin-left:auto;color:#9ca3af;transition:transform .2s ease}.drawer-output-toggle.expanded .toggle-chevron{transform:rotate(180deg)}.drawer-output-content{background:#1f2937;padding:0;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.drawer-output-pre{margin:0;padding:16px 18px;font-size:12px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;line-height:1.6;white-space:pre-wrap;word-break:break-word;color:#e5e7eb;background:#1f2937;max-height:300px;overflow-y:auto}.drawer-output-error{background:#fef2f2;border-top:1px solid #fecaca}.drawer-output-error .error-label{display:flex;align-items:center;gap:6px;padding:8px 18px;font-size:12px;font-weight:600;color:#dc2626;background:#fee2e2}.drawer-error-pre{margin:0;padding:12px 18px;font-size:12px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;line-height:1.5;white-space:pre-wrap;word-break:break-word;color:#dc2626;background:#fef2f2;max-height:150px;overflow-y:auto}.drawer-output-pre::-webkit-scrollbar,.drawer-error-pre::-webkit-scrollbar{width:6px}.drawer-output-pre::-webkit-scrollbar-track{background:#374151}.drawer-output-pre::-webkit-scrollbar-thumb{background:#6b7280;border-radius:3px}.drawer-error-pre::-webkit-scrollbar-track{background:#fecaca}.drawer-error-pre::-webkit-scrollbar-thumb{background:#f87171;border-radius:3px}.release-pipeline-fullscreen{position:relative}.release-env-card-body.clickable,.release-sg-card-body.clickable{cursor:pointer;transition:background .15s ease}.release-env-card-body.clickable:hover,.release-sg-card-body.clickable:hover{background:#f9fafb}.drawer-split-panel{display:flex;height:100%;overflow:hidden}.drawer-stages-panel{width:250px;min-width:250px;background:#f8f9fa;border-right:1px solid #e5e7eb;overflow-y:auto;padding:8px}.drawer-stages-list-v2{display:flex;flex-direction:column;gap:0;background:#fff;border-radius:8px;overflow:hidden}.drawer-stage-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:#fff;border:none;border-bottom:1px solid #f0f0f0;border-radius:0;cursor:pointer;transition:background .15s ease;position:relative}.drawer-stage-item:not(:first-child):before{content:"";position:absolute;left:25px;top:0;height:10px;width:2px;background:#e0e0e0;z-index:1;transform:translate(-50%)}.drawer-stage-item:not(:last-child):after{content:"";position:absolute;left:25px;top:36px;bottom:0;width:2px;background:#e0e0e0;z-index:1;transform:translate(-50%)}.drawer-stage-item:last-child{border-bottom:none}.drawer-stage-item:hover{background:#f9fafb}.drawer-stage-item.selected{background:#f9fafb;box-shadow:inset 4px 0 #f97316}.drawer-stage-icon{width:26px;height:26px;min-width:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#d1d5db;color:#fff;position:relative;z-index:2}.drawer-stage-icon.success{background:#15803d;box-shadow:0 2px 6px #15803d4d}.drawer-stage-icon.running{background:#1d4ed8;box-shadow:0 2px 6px #1d4ed84d}.drawer-stage-icon.failed{background:#b91c1c;box-shadow:0 2px 6px #b91c1c4d}.drawer-stage-icon.pending{background:#d1d5db}.drawer-stage-icon.stopped{background:#6b7280;box-shadow:0 2px 6px #6b72804d}.drawer-stage-icon.skipped{background:#d97706;box-shadow:0 2px 6px #d977064d}.drawer-stage-info{flex:1;min-width:0}.drawer-stage-name-v2{display:block;font-size:13px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.drawer-stage-meta-v2{display:flex;align-items:center;gap:6px;font-size:12px}.drawer-stage-duration{color:#6b7280}.drawer-stage-status-text{font-weight:500}.drawer-stage-status-text.success{color:#16a34a}.drawer-stage-status-text.running{color:#2563eb}.drawer-stage-status-text.failed{color:#dc2626}.drawer-stage-status-text.stopped{color:#c2410c}.drawer-stage-status-text.pending{color:#9ca3af}.drawer-stage-status-text.skipped{color:#d97706}.drawer-stage-retry-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:#fef2f2;border:1px solid #fecaca;border-radius:50%;color:#dc2626;cursor:pointer;transition:all .15s ease;flex-shrink:0}.drawer-stage-retry-btn:hover{background:#fee2e2;border-color:#f87171;color:#b91c1c}.drawer-stage-retry-btn:active{background:#fecaca}.drawer-stage-retry-btn.retrying{background:#dbeafe;border-color:#93c5fd;color:#2563eb;cursor:default}.drawer-output-panel{flex:1;display:flex;flex-direction:column;background:#1e1e1e;min-width:0;overflow:hidden}.drawer-output-placeholder{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#6b7280;background:#f8f9fa}.drawer-output-placeholder p{margin:0;font-size:14px}.drawer-output-header-v2{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0}.drawer-output-header-left{display:flex;align-items:center;gap:10px;color:#374151}.drawer-output-header-left svg{color:#6b7280}.drawer-output-stage-name{font-size:14px;font-weight:600;color:#111827}.drawer-output-header-right{display:flex;align-items:center;gap:12px}.drawer-output-duration{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7280}.drawer-output-duration svg{color:#9ca3af}.drawer-output-started{font-size:12px;color:#9ca3af}.drawer-output-status-pill{font-size:11px;font-weight:600;padding:4px 10px;border-radius:5px}.drawer-output-status-pill.success{background:#16a34a;color:#fff}.drawer-output-status-pill.running{background:#2563eb;color:#fff}.drawer-output-status-pill.failed{background:#dc2626;color:#fff}.drawer-output-status-pill.pending{background:#6b7280;color:#fff}.drawer-output-status-pill.skipped{background:#d97706;color:#fff}.drawer-output-header{padding:16px 20px;background:#252526;border-bottom:1px solid #3c3c3c;flex-shrink:0}.drawer-output-title{display:flex;align-items:center;gap:10px;color:#e5e7eb;font-size:14px;font-weight:600;margin-bottom:8px}.drawer-output-title svg{color:#9ca3af}.drawer-output-status-badge{font-size:11px;font-weight:600;padding:3px 8px;border-radius:4px;margin-left:auto}.drawer-output-status-badge.success{background:#166534;color:#86efac}.drawer-output-status-badge.running{background:#1e40af;color:#93c5fd}.drawer-output-status-badge.failed{background:#991b1b;color:#fca5a5}.drawer-output-status-badge.pending{background:#374151;color:#9ca3af}.drawer-output-status-badge.skipped{background:#92400e;color:#fcd34d}.drawer-output-meta{display:flex;align-items:center;gap:16px;font-size:12px;color:#9ca3af}.drawer-output-meta-item{display:flex;align-items:center;gap:6px}.drawer-output-body{flex:1;overflow-y:auto;background:#1e1e1e}.drawer-output-terminal{margin:0;padding:0;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:12px;line-height:1.6;background:#1e1e1e}.drawer-output-line{display:flex;min-height:20px}.drawer-output-line:hover{background:#2d2d30}.drawer-output-line-number{width:48px;min-width:48px;padding:0 12px;text-align:right;color:#6e7681;background:#252526;-webkit-user-select:none;user-select:none;border-right:1px solid #3c3c3c}.drawer-output-line-content{flex:1;padding:0 16px;color:#d4d4d4;white-space:pre-wrap;word-break:break-all}.drawer-output-error-panel{height:100%;display:flex;flex-direction:column}.drawer-output-error-header{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#450a0a;color:#fca5a5;font-size:13px;font-weight:600;border-bottom:1px solid #7f1d1d}.drawer-output-error-content{flex:1;margin:0;padding:16px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:12px;line-height:1.6;color:#fca5a5;background:#1e1e1e;white-space:pre-wrap;word-break:break-word;overflow-y:auto}.drawer-output-no-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#6b7280;background:#252526}.drawer-output-no-content p{margin:0;font-size:13px;color:#9ca3af}.drawer-output-body::-webkit-scrollbar{width:8px}.drawer-output-body::-webkit-scrollbar-track{background:#1e1e1e}.drawer-output-body::-webkit-scrollbar-thumb{background:#4b5563;border-radius:4px}.drawer-output-body::-webkit-scrollbar-thumb:hover{background:#6b7280}.drawer-stages-panel::-webkit-scrollbar{width:6px}.drawer-stages-panel::-webkit-scrollbar-track{background:#f9fafb}.drawer-stages-panel::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.drawer-stages-panel::-webkit-scrollbar-thumb:hover{background:#9ca3af}.component-changes-table-wrapper{overflow-x:auto;margin:0 -8px;padding:0 8px;border-radius:12px}.component-changes-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;min-width:600px;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.component-changes-table th,.component-changes-table td{padding:16px 20px;text-align:left}.component-changes-table thead{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.component-changes-table th{font-weight:600;color:#475569;font-size:11px;text-transform:uppercase;letter-spacing:.8px;white-space:nowrap;border-bottom:2px solid #e2e8f0}.component-changes-table th.component-col{min-width:180px;position:sticky;left:0;background:linear-gradient(135deg,#f8fafc,#f1f5f9);z-index:2;border-right:1px solid #e2e8f0}.component-changes-table th.env-col{min-width:160px;text-align:center}.component-changes-table tbody tr{transition:all .15s ease}.component-changes-table tbody tr:nth-child(2n){background:#fafbfc}.component-changes-table tbody tr:hover{background:linear-gradient(135deg,#f95d0308,#f95d0303)}.component-changes-table td{border-bottom:1px solid #f1f5f9}.component-changes-table tbody tr:last-child td{border-bottom:none}.component-changes-table td.component-name-cell{font-weight:600;color:#1e293b;position:sticky;left:0;background:inherit;z-index:1;border-right:1px solid #f1f5f9}.component-changes-table tbody tr:nth-child(2n) td.component-name-cell{background:#fafbfc}.component-changes-table tbody tr:hover td.component-name-cell{background:linear-gradient(135deg,#f95d030d,#f95d0305)}.component-name-cell .component-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:linear-gradient(135deg,var(--primary, #f95d03) 0%,#e54d00 100%);border-radius:6px;margin-right:12px;color:#fff;font-size:12px;font-weight:700;text-transform:uppercase;box-shadow:0 2px 4px #f95d0333}.version-change-cell{text-align:center;padding:12px 16px!important}.version-change{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:8px;background:#f8fafc;font-family:SF Mono,Monaco,Menlo,Consolas,monospace;font-size:12px;border:1px solid #e2e8f0;transition:all .2s ease}.version-change.has-change{background:linear-gradient(135deg,#f95d0314,#f95d0308);border:1px solid rgba(249,93,3,.25);box-shadow:0 2px 8px #f95d031a}.version-change.is-new{background:linear-gradient(135deg,#10b98114,#10b98108);border:1px solid rgba(16,185,129,.25);box-shadow:0 2px 8px #10b9811a}.version-change .current-version{color:#64748b;font-size:11px}.version-change.has-change .current-version{color:#94a3b8;text-decoration:line-through;text-decoration-color:#f95d0366}.version-change.is-new .current-version{color:#94a3b8;font-style:italic;font-size:10px}.version-change .version-arrow{color:#cbd5e1;font-size:12px;font-weight:500}.version-change .version-arrow-icon{color:#cbd5e1;flex-shrink:0}.version-change.has-change .version-arrow,.version-change.has-change .version-arrow-icon{color:var(--primary, #f95d03)}.version-change.is-new .version-arrow,.version-change.is-new .version-arrow-icon{color:#10b981}.version-change .new-version{color:#334155;font-weight:600;font-size:12px}.version-change.has-change .new-version{color:var(--primary, #f95d03);font-weight:700}.version-change.is-new .new-version{color:#059669;font-weight:700}.version-change.no-change{background:#f8fafc;border-color:#e2e8f0;opacity:.7}.version-change.no-change .current-version,.version-change.no-change .version-arrow,.version-change.no-change .new-version{color:#94a3b8}.release-notes-content{display:flex;flex-direction:column;gap:12px}.release-notes-component{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;background:#fff;transition:box-shadow .2s ease}.release-notes-component:hover{box-shadow:0 2px 8px #0000000f}.release-notes-component-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;cursor:pointer;background:#fafafa;transition:background .15s ease}.release-notes-component-header:hover{background:#f5f5f5}.release-notes-component-header.expanded{background:linear-gradient(135deg,#f95d030d,#f95d0305);border-bottom:1px solid #e2e8f0}.release-notes-component-info{display:flex;align-items:center;gap:10px}.release-notes-component-icon{width:28px;height:28px;border-radius:6px;background:linear-gradient(135deg,var(--primary, #f95d03) 0%,#e05503 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:13px;text-transform:uppercase}.release-notes-component-name{font-weight:600;color:#1e293b;font-size:14px}.release-notes-version-range{font-size:12px;color:#64748b;background:#f1f5f9;padding:4px 10px;border-radius:12px;font-family:SF Mono,Monaco,Consolas,monospace}.release-notes-component-meta{display:flex;align-items:center;gap:12px}.release-notes-ticket-count{font-size:12px;color:#64748b;background:#f95d031a;color:var(--primary, #f95d03);padding:4px 10px;border-radius:12px;font-weight:500}.release-notes-chevron{color:#94a3b8;transition:transform .2s ease}.release-notes-chevron.expanded{transform:rotate(180deg)}.release-notes-component-body{padding:16px;background:#fff}.release-notes-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:24px;color:#64748b;font-size:13px}.release-notes-tickets{display:flex;flex-direction:column;gap:10px}.release-notes-ticket{padding:12px 14px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;transition:border-color .15s ease,box-shadow .15s ease}.release-notes-ticket:hover{border-color:#cbd5e1;box-shadow:0 2px 6px #0000000a}.release-notes-ticket-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.release-notes-ticket-key{font-weight:600;color:var(--primary, #f95d03);text-decoration:none;font-size:13px;font-family:SF Mono,Monaco,Consolas,monospace}.release-notes-ticket-key:hover{text-decoration:underline}.release-notes-ticket-type{font-size:11px;font-weight:500;padding:2px 8px;border-radius:4px;text-transform:uppercase;background:#e0f2fe;color:#0369a1}.release-notes-ticket-type.bug{background:#fee2e2;color:#b91c1c}.release-notes-ticket-type.story{background:#dcfce7;color:#15803d}.release-notes-ticket-type.task{background:#e0e7ff;color:#4338ca}.release-notes-ticket-type.epic{background:#fae8ff;color:#a21caf}.release-notes-ticket-type.sub-task{background:#f1f5f9;color:#475569}.release-notes-ticket-status{font-size:11px;font-weight:500;padding:2px 8px;border-radius:4px;background:#f1f5f9;color:#475569}.release-notes-ticket-status.done,.release-notes-ticket-status.closed,.release-notes-ticket-status.resolved{background:#dcfce7;color:#15803d}.release-notes-ticket-status.in-progress,.release-notes-ticket-status.in-review{background:#dbeafe;color:#1d4ed8}.release-notes-ticket-status.to-do,.release-notes-ticket-status.open,.release-notes-ticket-status.backlog{background:#fef3c7;color:#b45309}.release-notes-ticket-priority{font-size:11px;font-weight:500;padding:2px 8px;border-radius:4px;background:#f1f5f9;color:#475569}.release-notes-ticket-priority.highest,.release-notes-ticket-priority.critical{background:#fee2e2;color:#b91c1c}.release-notes-ticket-priority.high{background:#ffedd5;color:#c2410c}.release-notes-ticket-priority.medium{background:#fef9c3;color:#a16207}.release-notes-ticket-priority.low,.release-notes-ticket-priority.lowest{background:#f0fdf4;color:#166534}.release-notes-ticket-summary{font-size:13px;color:#334155;line-height:1.5}.release-notes-ticket-assignee{font-size:12px;color:#64748b;margin-top:6px}.release-notes-commits-summary{margin-top:12px;padding-top:12px;border-top:1px solid #e2e8f0}.release-notes-commits-count{font-size:12px;color:#64748b}.release-notes-empty{text-align:center;padding:24px;color:#94a3b8;font-size:13px}.release-notes-error{text-align:center;padding:24px;color:#ef4444;font-size:13px}.release-notes-no-changes{display:flex;align-items:center;justify-content:center;gap:10px;padding:24px;color:#64748b;font-size:13px;background:#f8fafc;border-radius:8px;border:1px dashed #e2e8f0}.release-notes-no-changes svg{color:#94a3b8;flex-shrink:0}.section-subtitle{font-size:12px;color:#94a3b8;font-weight:400;margin-left:auto}.release-notes-selectors{display:flex;align-items:flex-end;gap:16px;padding:16px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:10px;border:1px solid #e2e8f0;margin-bottom:16px}.release-notes-selector-group{display:flex;flex-direction:column;gap:6px;flex:1;min-width:180px}.release-notes-selector-label{font-size:12px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.5px}.release-notes-select{padding:10px 40px 10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1e293b;background:#fff;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.release-notes-select:hover{border-color:#94a3b8}.release-notes-select:focus{outline:none;border-color:var(--primary, #f95d03);box-shadow:0 0 0 3px #f95d031a}.release-notes-select:disabled{background:#f1f5f9;color:#94a3b8;cursor:not-allowed}.release-notes-generate-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,var(--primary, #f95d03) 0%,#e05503 100%);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;white-space:nowrap;height:42px}.release-notes-generate-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #f95d034d}.release-notes-generate-btn:disabled{background:#cbd5e1;cursor:not-allowed;transform:none;box-shadow:none}.release-notes-generate-btn svg{flex-shrink:0}.release-notes-version-info{display:flex;align-items:center;justify-content:center;gap:20px;padding:20px;background:#fff;border-radius:10px;border:1px solid #e2e8f0;margin-bottom:16px}.release-notes-version-box{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 24px;background:#f8fafc;border-radius:8px;min-width:140px}.release-notes-version-label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.release-notes-version-value{font-size:15px;font-weight:700;font-family:SF Mono,Monaco,Consolas,monospace}.release-notes-version-value.current{color:#64748b}.release-notes-version-value.new{color:var(--primary, #f95d03)}.release-notes-version-arrow{color:#94a3b8;flex-shrink:0}.release-notes-results{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.release-notes-results-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:linear-gradient(135deg,#f95d0314,#f95d0308);border-bottom:1px solid #e2e8f0}.release-notes-results-title{font-size:14px;font-weight:600;color:#1e293b}.release-notes-results-commits{font-size:12px;color:#64748b;background:#f1f5f9;padding:4px 10px;border-radius:12px}.release-notes-results .release-notes-tickets{padding:12px}.release-notes-same-version,.release-notes-new-component,.release-notes-no-selection,.release-notes-prompt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 24px;color:#64748b;font-size:14px;text-align:center;background:#f8fafc;border-radius:10px;border:1px dashed #e2e8f0}.release-notes-same-version svg,.release-notes-no-selection svg,.release-notes-prompt svg{color:#94a3b8}.release-notes-new-component{background:linear-gradient(135deg,#10b9810d,#10b98105);border-color:#10b98133;color:#059669}.release-notes-error{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 24px;color:#ef4444;font-size:14px;text-align:center;background:#ef44440d;border-radius:10px;border:1px dashed rgba(239,68,68,.2)}.release-notes-error svg{color:#ef4444}.release-notes-create-section{padding:0}.release-notes-editor{display:flex;flex-direction:column;gap:10px}.release-notes-editor label{font-size:14px;font-weight:600;color:#374151}.release-notes-textarea{width:100%;min-height:320px;padding:16px;border:1px solid #e5e7eb;border-radius:10px;font-size:14px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;line-height:1.6;color:#1f2937;background:#fff;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.release-notes-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #f95d031a}.release-notes-textarea::placeholder{color:#9ca3af;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace}.release-notes-hint{display:flex;align-items:center;gap:8px;font-size:12px;color:#6b7280;margin:4px 0 0}.release-notes-hint svg{color:#9ca3af;flex-shrink:0}.deploy-drawer{position:absolute;top:0;right:0;bottom:0;width:560px;background:#fff;border-left:1px solid #e5e7eb;box-shadow:-8px 0 30px #0000001f;display:flex;flex-direction:column;z-index:20;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}.deploy-drawer.open{transform:translate(0)}.deploy-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #e5e7eb;background:#fff;flex-shrink:0}.deploy-drawer-header-left{display:flex;align-items:center;gap:14px}.deploy-drawer-icon{width:42px;height:42px;min-width:42px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f97316,#c2410c);border-radius:12px;color:#fff;box-shadow:0 2px 8px #f973164d}.deploy-drawer-icon svg{width:20px;height:20px}.deploy-drawer-header-info h3{margin:0;font-size:16px;font-weight:700;color:#111827;letter-spacing:-.01em}.deploy-drawer-subtitle{font-size:12px;font-weight:500;color:#6b7280;margin-top:2px;display:block}.drawer-close-btn-floating{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;box-shadow:0 1px 2px #0f172a14;transition:all .18s ease}.drawer-close-btn-floating svg{width:16px;height:16px}.drawer-close-btn-floating:hover{background:#f8fafc;border-color:#9ca3af;color:#111827;box-shadow:0 4px 10px #0f172a1f}.drawer-close-btn-floating:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #f95d0324}.deploy-drawer-body{flex:1;overflow-y:auto;padding:12px 16px;background:#fafbfc}.deploy-drawer-section-header{display:flex;align-items:center;margin-bottom:14px;gap:10px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.deploy-drawer-section-icon{width:32px;height:32px;min-width:32px;display:flex;align-items:center;justify-content:center;background:#f973161a;border-radius:8px;color:var(--primary, #f56816)}.deploy-drawer-section-header h4{margin:0;font-size:14px;font-weight:700;color:#111827;letter-spacing:-.01em}.deploy-drawer-comp-count{font-size:11px;font-weight:600;color:#6b7280;background:#f3f4f6;padding:2px 8px;border-radius:10px;letter-spacing:.02em}.deploy-drawer-select-all-btn{font-size:12px;font-weight:500;color:var(--primary);background:none;border:1px solid transparent;cursor:pointer;padding:4px 10px;border-radius:6px;margin-left:auto;transition:all .15s}.deploy-drawer-select-all-btn:hover{background:#f9731614;border-color:#f9731633}.deploy-drawer-generate-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;font-size:12px;font-weight:500;border:1px solid #d1d5db;border-radius:8px;background:#fff;cursor:pointer;color:#374151;transition:all .15s}.deploy-drawer-generate-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.deploy-drawer-generate-btn:disabled{opacity:.6;cursor:not-allowed}.deploy-drawer-components{display:flex;flex-direction:column;gap:8px}.deploy-drawer-component{background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;transition:all .18s ease;box-shadow:0 1px 3px #0000000a}.deploy-drawer-component:hover{box-shadow:0 2px 8px #00000012;border-color:#d1d5db}.deploy-drawer-component.changed{border-color:#f9731659;background:linear-gradient(135deg,#fffbf7,#fff)}.deploy-drawer-component.changed:hover{border-color:#f9731680}.deploy-drawer-component-header{display:flex;align-items:flex-start;justify-content:space-between;padding:12px 14px;gap:12px}.deploy-drawer-checkbox{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:2px solid #cbd5e1;border-radius:5px;background:#fff;cursor:pointer;flex-shrink:0;margin-top:2px;position:relative;transition:all .18s ease}.deploy-drawer-checkbox:hover{border-color:var(--primary, #f56816);box-shadow:0 0 0 3px #f568161f}.deploy-drawer-checkbox:focus-visible{outline:none;border-color:var(--primary, #f56816);box-shadow:0 0 0 3px #f568162e}.deploy-drawer-checkbox:checked{background:#f97316;border-color:#f97316;border-radius:7px;box-shadow:none}.deploy-drawer-checkbox:checked:after{content:"";position:absolute;left:50%;top:45%;width:4px;height:8px;border:solid #fff;border-width:0 1.9px 1.9px 0;transform:translate(-50%,-50%) rotate(40deg);border-radius:1px}.deploy-drawer-checkbox:active{transform:scale(.96)}.deploy-drawer-comp-left{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}.deploy-drawer-comp-name-row{display:flex;align-items:center;gap:8px}.deploy-drawer-comp-name{font-weight:600;font-size:13px;color:#111827;letter-spacing:-.01em;cursor:pointer}.deploy-drawer-comp-name:hover{color:var(--primary, #f56816)}.deploy-drawer-comp-version-inline{font-size:11px;color:#64748b;font-family:SF Mono,Monaco,Menlo,Consolas,monospace}.deploy-drawer-comp-change-indicator{width:6px;height:6px;border-radius:50%;background:var(--primary, #f56816);flex-shrink:0;box-shadow:0 0 0 3px #f9731626}.deploy-drawer-versions{display:flex;flex-direction:column;align-items:stretch;gap:4px;font-size:12px;font-family:SF Mono,Monaco,Menlo,Consolas,monospace;width:100%}.deploy-drawer-version-row{display:flex;align-items:center;gap:8px;min-width:0;padding:4px 8px;background:#f8fafc;border-radius:6px}.deploy-drawer-no-version-diff{font-size:11px;color:#6b7280;background:#f8fafc;border-radius:6px;padding:6px 8px}.deploy-drawer-artifact-key{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:4px;padding:2px 6px;flex-shrink:0;min-width:48px;text-align:center}.deploy-drawer-version.current{color:#94a3b8;font-size:11px;word-break:break-all}.deploy-drawer-version.new{color:#475569;font-size:11px;word-break:break-all}.deploy-drawer-version.new.changed{color:#15803d;font-weight:600}.deploy-drawer-arrow{color:#cbd5e1;flex-shrink:0;width:14px;height:14px}.deploy-drawer-comp-right{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-top:2px}.deploy-drawer-changes-badge{font-size:11px;font-weight:500;color:#6b7280;background:#f3f4f6;border:1px solid #e5e7eb;padding:3px 10px;border-radius:10px;white-space:nowrap}.deploy-drawer-chevron{width:16px;height:16px;transition:transform .2s;color:#9ca3af;flex-shrink:0;cursor:pointer}.deploy-drawer-chevron.open{transform:rotate(180deg)}.deploy-drawer-loading-spinner{width:16px;height:16px;border:2px solid #e5e7eb;border-top-color:var(--primary);border-radius:50%;animation:spin .6s linear infinite;flex-shrink:0}.deploy-drawer-changes{padding:0 14px 14px;border-top:1px solid #f0f1f3;background:#fafbfc}.deploy-drawer-changes h5{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin:14px 0 8px;display:flex;align-items:center;gap:6px}.deploy-drawer-changes h5:before{content:"";width:3px;height:12px;background:var(--primary, #f56816);border-radius:2px}.deploy-drawer-ticket-item{display:flex;align-items:center;gap:10px;padding:8px 10px;font-size:13px;text-decoration:none;color:inherit;border-radius:6px;transition:background .12s;border:1px solid transparent}.deploy-drawer-ticket-item:hover{background:#fff;border-color:#e5e7eb}.deploy-drawer-ticket-item .ticket-key{font-weight:600;color:var(--primary);min-width:80px;flex-shrink:0;font-size:12px}.deploy-drawer-ticket-item .ticket-summary{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#374151}.deploy-drawer-ticket-item .ticket-status{font-size:10px;font-weight:600;padding:2px 8px;border-radius:10px;background:#f3f4f6;color:#6b7280;white-space:nowrap;flex-shrink:0;text-transform:uppercase;letter-spacing:.03em}.deploy-drawer-ticket-item .ticket-status.done,.deploy-drawer-ticket-item .ticket-status.closed{background:#ecfdf5;color:#059669}.deploy-drawer-ticket-item .ticket-status.in-progress{background:var(--primary-light);color:var(--primary)}.deploy-drawer-commit-item{display:flex;align-items:baseline;gap:10px;padding:6px 10px;font-size:13px;border-radius:6px;transition:background .1s}.deploy-drawer-commit-item:hover{background:#fff}.deploy-drawer-commit-item code{font-size:11px;background:#eef2ff;padding:2px 6px;border-radius:4px;color:#4f46e5;flex-shrink:0;font-family:SF Mono,Monaco,Menlo,Consolas,monospace}.deploy-drawer-commit-item .commit-message{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#374151}.deploy-drawer-commit-item .commit-author{font-size:11px;color:#9ca3af;flex-shrink:0;font-style:italic}.deploy-drawer-no-changes{padding:16px 10px;font-size:13px;color:#9ca3af;text-align:center}.deploy-drawer-empty{padding:24px;text-align:center;color:#9ca3af;font-size:13px}.deploy-drawer-no-changes p{margin:0}.deploy-drawer-empty{padding:40px 20px;text-align:center;color:#9ca3af;font-size:14px}.deploy-drawer-empty p{margin:0}.deploy-drawer-status-section{border-top:1px solid #e5e7eb;padding-top:16px}.deploy-status-table-wrap{overflow-x:auto;margin-top:8px}.deploy-status-table{width:100%;border-collapse:collapse;font-size:12px}.deploy-status-table th{text-align:left;padding:8px 10px;background:#f3f4f6;color:#6b7280;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #e5e7eb;white-space:nowrap}.deploy-status-table td{padding:8px 10px;border-bottom:1px solid #f3f4f6;vertical-align:middle}.deploy-status-table tbody tr:hover{background:#f9fafb}.deploy-status-comp-name{font-weight:600;color:#1f2937;white-space:nowrap}.deploy-status-type-badge{display:inline-block;padding:1px 7px;background:#f0f4ff;color:#4b5ea6;border-radius:4px;font-size:10px;font-weight:500;font-family:SF Mono,Monaco,Courier New,monospace}.deploy-status-version{font-size:11px;color:#374151;background:#e5e7eb;padding:2px 6px;border-radius:4px}.deploy-status-target{color:#6b7280;font-size:11px;white-space:nowrap}.deploy-status-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500;white-space:nowrap}.deploy-status-badge.success{background:#ecfdf5;color:#059669}.deploy-status-badge.failed{background:#fef2f2;color:#dc2626}.deploy-status-badge.pending{background:#fffbeb;color:#d97706}.deploy-status-badge.skipped{background:#f3f4f6;color:#6b7280}.deploy-status-test-count{font-size:10px;opacity:.85}.deploy-drawer-history-section{border-top:1px solid #e5e7eb;padding-top:16px}.deploy-drawer-history-loading{display:flex;align-items:center;gap:8px;padding:16px;color:#6b7280;font-size:13px}.deploy-drawer-history-empty{padding:16px;color:#9ca3af;font-size:13px;text-align:center}.deploy-drawer-history-list{display:flex;flex-direction:column;gap:8px}.deploy-drawer-history-item{padding:12px 14px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;border-left:3px solid #10b981;transition:background .15s}.deploy-drawer-history-item:hover{background:#f3f4f6}.deploy-drawer-history-item.failed{border-left-color:#ef4444}.deploy-history-item-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.deploy-history-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:#10b981}.deploy-history-status-dot.failed{background:#ef4444}.deploy-history-comp-name{font-weight:600;font-size:13px;color:#1f2937}.deploy-history-type-badge{display:inline-block;padding:1px 7px;background:#f0f4ff;color:#4b5ea6;border-radius:4px;font-size:10px;font-weight:500;font-family:SF Mono,Monaco,Courier New,monospace;margin-left:auto}.deploy-history-item-details{display:flex;align-items:center;gap:10px;margin-bottom:6px}.deploy-history-version{font-size:12px;color:#374151;background:#e5e7eb;padding:2px 8px;border-radius:4px}.deploy-history-release{font-size:11px;color:#6b7280;font-weight:500}.deploy-history-item-meta{display:flex;align-items:center;gap:10px;font-size:11px;color:#9ca3af}.deploy-history-time{color:#6b7280}.deploy-history-by{color:#9ca3af}.deploy-history-more{display:inline-block;margin-top:6px;font-size:11px;color:#6366f1;font-weight:500}.deploy-drawer-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background:#fff;flex-shrink:0}.deploy-drawer-cancel-btn{padding:9px 20px;border:1px solid #d1d5db;border-radius:8px;background:#fff;cursor:pointer;font-size:14px;color:#374151;transition:all .15s}.deploy-drawer-cancel-btn:hover{background:#f3f4f6;border-color:#9ca3af}.deploy-drawer-run-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 24px;border:none;border-radius:8px;background:var(--primary);color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:background .15s}.deploy-drawer-run-btn:hover:not(:disabled){background:var(--primary-20)}.deploy-drawer-run-btn:disabled{opacity:.5;cursor:not-allowed}.drawer-output-structured{margin:10px 14px 14px;background:#111827;border:1px solid #374151;border-radius:8px;overflow:hidden}.drawer-output-structured summary{cursor:pointer;padding:10px 12px;font-size:12px;font-weight:600;color:#cbd5e1;background:#1f2937;border-bottom:1px solid #374151;-webkit-user-select:none;user-select:none}.drawer-output-structured-pre{margin:0;padding:12px;max-height:220px;overflow:auto;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:12px;line-height:1.5;color:#d1d5db;background:#0f172a;white-space:pre-wrap;word-break:break-word}.rd-page{position:fixed;inset:0;z-index:3000;display:flex;flex-direction:column;background:#f7f7f6;overflow:hidden}.rd-topbar{position:relative;display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 20px;background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0;z-index:10}.rd-back-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;background:transparent;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:background .15s,border-color .15s;white-space:nowrap}.rd-back-btn:hover{background:#f3f4f6;border-color:#d1d5db}.rd-title-center{position:absolute;left:50%;transform:translate(-65%);pointer-events:none}.rd-app-card{display:flex;align-items:center;gap:10px;padding:6px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:999px;box-shadow:0 1px 4px #0000000f;pointer-events:auto;opacity:0}@keyframes rd-launch{0%{transform:translate(var(--rd-from-x, -46vw),var(--rd-from-y, 0px)) scale(.18);opacity:0;border-radius:999px;box-shadow:0 0 #f95d0300}18%{opacity:1;transform:translate(var(--rd-from-x, -46vw),var(--rd-from-y, 0px)) scale(.28)}55%{transform:translateY(-6px) scale(1.08);border-radius:999px;box-shadow:0 0 0 8px #f95d0314}72%{transform:translateY(2px) scale(.97);box-shadow:0 0 0 4px #f95d030d}84%{transform:translateY(-2px) scale(1.02);box-shadow:0 0 #f95d0300}to{transform:translate(0) scale(1);opacity:1;border-radius:999px;box-shadow:0 1px 4px #0000000f}}@keyframes rd-icon-pop{0%{transform:scale(.4) rotate(-20deg);opacity:0}60%{transform:scale(1.15) rotate(4deg);opacity:1}80%{transform:scale(.95) rotate(-1deg)}to{transform:scale(1) rotate(0);opacity:1}}@keyframes rd-text-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.rd-app-card--animated{animation:rd-launch .68s cubic-bezier(.22,1,.36,1) forwards}.rd-app-card--animated .rd-app-icon{animation:rd-icon-pop .5s cubic-bezier(.34,1.56,.64,1) .28s both}.rd-app-card--animated .rd-app-name{animation:rd-text-in .3s ease-out .48s both}.rd-app-icon{width:28px;height:28px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#fff7ed;flex-shrink:0}.rd-app-icon img{width:100%;height:100%;object-fit:contain}.rd-app-name{font-size:13px;font-weight:600;color:#111827;line-height:1.2;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rd-topbar-right{display:flex;align-items:center;gap:10px}.rd-project-selector{position:relative}.rd-project-btn{display:flex;align-items:center;gap:7px;padding:6px 10px 6px 6px;background:#fff;border:1.5px solid #e5e7eb;border-radius:999px;font-size:13px;font-weight:500;color:#1e2a3a;cursor:pointer;transition:border-color .15s,background .15s;white-space:nowrap;max-width:220px}.rd-project-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rd-project-btn:hover,.rd-project-btn.open{border-color:#c7d2e0;background:#f8fafc}.rd-project-avatar{width:24px;height:24px;border-radius:50%;background:#1e2a3a;color:#e5e7eb;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:inherit}.rd-chevron{flex-shrink:0;color:#9ca3af;transition:transform .15s}.rd-project-btn.open .rd-chevron{transform:rotate(180deg)}.rd-project-dropdown{position:absolute;top:calc(100% + 6px);right:0;width:260px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0000001a;z-index:100;overflow:hidden}.rd-project-search{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid #f3f4f6;color:#9ca3af}.rd-project-search input{flex:1;border:none;outline:none;font-size:13px;color:#111827;background:transparent}.rd-project-search input::placeholder{color:#9ca3af}.rd-project-list{max-height:240px;overflow-y:auto;padding:4px 0}.rd-project-item{display:flex;align-items:center;gap:8px;padding:9px 14px;cursor:pointer;transition:background .1s;width:100%;background:none;border:none;text-align:left;font-family:inherit}.rd-project-item:hover{background:#f9fafb}.rd-project-item.active{background:#fff7ed}.rd-project-item-name{flex:1;font-size:13px;font-weight:500;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rd-project-item-meta{font-size:11px;color:#6b7280;white-space:nowrap;flex-shrink:0}.rd-project-check{flex-shrink:0;color:#f95d03}.rd-project-empty{padding:16px;text-align:center;font-size:13px;color:#9ca3af}.rd-body{flex:1;display:flex;overflow:hidden}.rd-releases-panel{width:300px;flex-shrink:0;display:flex;flex-direction:column;background:#fff;border-right:none;overflow:hidden;margin-top:12px;margin-left:12px;border-top:1px solid #e5e7eb;border-left:1px solid #e5e7eb;border-bottom:none;border-radius:12px 0 0;box-shadow:0 4px 24px #00000014,0 1px 4px #0000000a;transition:width .22s cubic-bezier(.4,0,.2,1);align-self:stretch}.rd-releases-panel--collapsed{width:0;min-width:0;margin-left:0;border:none;box-shadow:none}.rd-releases-panel-wrap{display:flex;flex-direction:row;align-items:flex-start;flex-shrink:0;align-self:stretch}.rd-panel-collapse-btn{align-self:flex-start;margin-top:12px;width:28px;height:48px;display:flex;align-items:center;justify-content:center;background:#fff;border-top:1px solid #e5e7eb;border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;border-left:none;border-radius:0 8px 8px 0;cursor:pointer;color:#374151;flex-shrink:0;transition:background .1s,color .1s}.rd-panel-collapse-btn:hover{background:#f3f4f6;color:#111827}.rd-releases-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;flex-shrink:0}.rd-releases-title{font-size:14px;font-weight:600;color:#111827}.rd-create-btn{display:flex;align-items:center;gap:5px;padding:6px 12px;background:var(--primary, #c94a00);color:#fff;border:none;border-radius:7px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s}.rd-create-btn:hover{background:var(--primary-dark, #e04e00)}.rd-releases-search{display:flex;align-items:center;gap:8px;margin:0 12px 10px;padding:8px 10px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;flex-shrink:0}.rd-releases-search input{flex:1;border:none;outline:none;font-size:12px;background:transparent;color:#111827}.rd-releases-search input::placeholder{color:#9ca3af}.rd-releases-list{flex:1;overflow-y:auto;padding:0 12px 12px;display:flex;flex-direction:column;gap:8px}.rd-releases-loading,.rd-releases-empty{padding:32px 0;text-align:center;font-size:13px;color:#9ca3af}.rd-release-card{background:#fff;border:1px solid #e9eaec;border-radius:12px;padding:14px 14px 12px;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s;position:relative}.rd-release-card:hover{border-color:#d1d5db;box-shadow:0 2px 12px #00000012;background:#fafafa}.rd-release-card[draggable=true]{cursor:grab}.rd-release-card[draggable=true]:active{cursor:grabbing;opacity:.75}.rd-release-card.active{border-color:#f95d03;background:#fff8f5;box-shadow:0 0 0 3px #f95d0314}.rd-release-card-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:8px}.rd-release-version-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rd-release-version{font-size:15px;font-weight:700;color:#111827;letter-spacing:-.01em}.rd-release-menu{display:flex;align-items:center;justify-content:center;width:26px;height:26px;background:transparent;border:none;border-radius:6px;cursor:pointer;color:#9ca3af;transition:background .1s,color .1s;flex-shrink:0}.rd-release-menu:hover{background:#f3f4f6;color:#374151}.rd-release-menu-wrap{position:relative;flex-shrink:0}.rd-release-context-menu{z-index:9999;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 16px #0000001a,0 1px 4px #0000000f;min-width:140px;padding:4px}.rd-release-context-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:none;background:transparent;border-radius:6px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;text-align:left;transition:background .1s}.rd-release-context-item:hover{background:#f3f4f6;color:#111827}.rd-release-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11.5px;color:#6b7280;margin-bottom:6px}.rd-release-meta-dot{width:3px;height:3px;border-radius:50%;background:#d1d5db;flex-shrink:0}.rd-release-artifact-count{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#f0f4ff;border:1px solid #dde4f5;border-radius:999px;font-size:11px;font-weight:500;color:#3b4fc8}.rd-release-desc{font-size:12px;color:#6b7280;margin-bottom:10px;line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.rd-release-divider{height:1px;background:#f3f4f6;margin:8px 0 6px}.rd-release-author{display:flex;align-items:center;gap:5px;font-size:11.5px;color:#6b7280}.rd-release-avatar{width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#4338ca;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rd-release-envs{display:flex;flex-direction:column;gap:5px;margin-top:8px}.rd-release-envs-label{font-size:11px;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.rd-release-env-tags{display:flex;flex-wrap:wrap;gap:4px}.rd-env-tag{padding:2px 8px;background:#f3f4f6;border-radius:4px;font-size:11px;font-weight:500;color:#374151}.rd-release-deploy-row{display:flex;margin-top:10px}.rd-release-deploy-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:7px 16px;background:#f97316;color:#fff;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s}.rd-release-deploy-btn:hover{background:#ea6c0a}.rd-badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.01em}.rd-badge--stable{background:#dcfce7;color:#15803d}.rd-badge--candidate{background:#fefce8;color:#92400e;border:1px solid #fde68a}.rd-badge--hotfix{background:#fee2e2;color:#b91c1c}.rd-badge--default{background:#f3f4f6;color:#374151}.rd-canvas{flex:1;position:relative;overflow:hidden;cursor:grab}.rd-canvas:active{cursor:grabbing}.rd-canvas-loading,.rd-canvas-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;font-size:13px;color:#9ca3af;pointer-events:none;z-index:2}.rd-spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top-color:#f95d03;border-radius:50%;animation:rd-spin .7s linear infinite}@keyframes rd-spin{to{transform:rotate(360deg)}}.rd-pipeline-scene{position:absolute;top:0;left:0}.rd-pipeline-card{position:absolute;border-radius:10px;border:1px solid #e5e7eb;background:#fff;box-shadow:0 2px 10px #00000012;overflow:hidden;-webkit-user-select:none;user-select:none}.rd-pipeline-card-header{display:flex;align-items:center;gap:6px;padding:6px 10px;font-size:10px;font-weight:700;letter-spacing:.06em;color:#fff}.rd-pipeline-card-header--approval{background:#7c3aed}.rd-pipeline-card-header--stage{background:#0ea5e9}.rd-pipeline-card-label{font-size:9px;font-weight:700;letter-spacing:.08em;opacity:.85}.rd-pipeline-card-type-badge{padding:1px 6px;border-radius:4px;font-size:9px;font-weight:700;letter-spacing:.06em;margin-left:auto}.rd-pipeline-card-body{padding:10px 12px;display:flex;flex-direction:column;gap:6px}.rd-pipeline-card-name{font-size:13px;font-weight:600;color:#111827}.rd-pipeline-deploy-status{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:500}.rd-deploy-not-deployed{color:#9ca3af}.rd-deploy-deployed,.rd-deploy-success{color:#16a34a}.rd-deploy-in-progress,.rd-deploy-running{color:#f59e0b}.rd-deploy-failed{color:#dc2626}.rd-promote-edge-btn{position:absolute;display:inline-flex;align-items:center;gap:5px;padding:6px 13px;background:#1e2a3a;border:1.5px solid #1e2a3a;border-radius:999px;font-size:12px;font-weight:600;color:#e5e7eb;cursor:pointer;box-shadow:0 2px 8px #00000026;transition:background .15s,border-color .15s,box-shadow .15s;white-space:nowrap;pointer-events:auto;z-index:5;-webkit-user-select:none;user-select:none}.rd-promote-edge-btn:hover{background:#263548;border-color:#263548;box-shadow:0 4px 14px #0003}.rd-promote-edge-btn--disabled{background:#f3f4f6;border-color:#e5e7eb;color:#9ca3af;box-shadow:none;cursor:not-allowed}.rd-promote-edge-btn--disabled:hover{background:#f3f4f6;border-color:#e5e7eb;box-shadow:none}.rd-promote-edge-btn--running{background:#eff6ff;border-color:#bfdbfe;color:#1e40af;box-shadow:0 2px 8px #3b82f626;cursor:not-allowed}.rd-promote-edge-btn--running:hover{background:#eff6ff;border-color:#bfdbfe;box-shadow:0 2px 8px #3b82f626}@keyframes rd-promote-spin{to{transform:rotate(360deg)}}.rd-promote-spinner{animation:rd-promote-spin .8s linear infinite;flex-shrink:0}.rd-promote-btn{margin-top:4px;padding:5px 10px;background:var(--primary, #c94a00);color:#fff;border:none;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;align-self:flex-start;transition:opacity .15s}.rd-promote-btn:hover{opacity:.85}.rd-zoom-controls{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:999px;box-shadow:0 4px 16px #0000001a,0 1px 4px #0000000f;z-index:10;pointer-events:auto;overflow:hidden}.rd-zoom-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;cursor:pointer;color:#374151;transition:background .1s;flex-shrink:0}.rd-zoom-btn:hover{background:#f3f4f6}.rd-zoom-value{min-width:52px;height:36px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:#1e2a3a;background:transparent;border:none;border-left:1px solid #e5e7eb;border-right:1px solid #e5e7eb;cursor:pointer;font-family:inherit;transition:background .1s;padding:0 4px}.rd-zoom-value:hover{background:#f3f4f6}.rd-canvas-bg{position:absolute;inset:0;background-color:#f7f7f6;background-image:linear-gradient(to right,#e5e7eb 1px,transparent 1px),linear-gradient(to bottom,#e5e7eb 1px,transparent 1px);background-size:24px 24px;pointer-events:none}.rd-view-history-btn{display:inline-flex;align-items:center;gap:5px;background:none;border:none;padding:0;font-size:12px;font-weight:500;color:#6b7280;cursor:pointer;transition:color .15s;font-family:inherit;pointer-events:auto;position:relative;z-index:1}.rd-view-history-btn:hover{color:#111827}@keyframes rd-drawer-in{0%{transform:translateY(16px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes rd-drawer-item-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.rd-drawer-handle{width:36px;height:4px;background:#d1d5db;border-radius:999px;margin:10px auto 4px;flex-shrink:0}.rd-drawer-pill{position:fixed;right:24px;bottom:24px;display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:999px;box-shadow:0 4px 16px #0000001a,0 1px 4px #0000000f;cursor:pointer;font-size:13px;font-weight:600;color:#111827;z-index:1500;transition:box-shadow .15s,background .15s}.rd-drawer-pill:hover{background:#f9fafb;box-shadow:0 6px 20px #00000021}.rd-drawer-pill-sub{font-weight:400;color:#6b7280;font-size:12px}.rd-drawer-pill-sep{color:#d1d5db;font-weight:400}.rd-drawer{position:fixed;right:24px;bottom:24px;width:400px;background:#fff;border-radius:14px;border:1px solid #e5e7eb;box-shadow:0 8px 40px #00000024,0 2px 8px #00000012;z-index:1500;display:flex;flex-direction:column;overflow:hidden;animation:rd-drawer-in .22s cubic-bezier(.25,1,.5,1) forwards}.rd-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;padding:16px 16px 12px;flex-shrink:0}.rd-drawer-title-block{display:flex;flex-direction:column;gap:3px}.rd-drawer-title{font-size:15px;font-weight:700;color:#111827;line-height:1.2}.rd-drawer-subtitle{font-size:12px;color:#6b7280;line-height:1.3}.rd-drawer-close-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;background:transparent;border:none;border-radius:6px;cursor:pointer;color:#9ca3af;flex-shrink:0;transition:background .1s,color .1s}.rd-drawer-close-btn:hover{background:#f3f4f6;color:#374151}.rd-drawer-env-row{display:flex;align-items:center;gap:10px;padding:10px 16px;background:#f9fafb;border-top:1px solid #f3f4f6;border-bottom:1px solid #f3f4f6;flex-shrink:0}.rd-drawer-env-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rd-drawer-env-info{display:flex;flex-direction:column;gap:2px;min-width:0}.rd-drawer-env-label{font-size:10px;font-weight:600;letter-spacing:.06em;color:#9ca3af;text-transform:uppercase}.rd-drawer-env-name{font-size:13px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rd-drawer-list{display:flex;flex-direction:column;max-height:280px;overflow-y:auto}.rd-drawer-loading,.rd-drawer-empty{display:flex;align-items:center;justify-content:center;gap:8px;padding:28px 16px;font-size:13px;color:#9ca3af}.rd-drawer-item{display:flex;align-items:center;justify-content:space-between;padding:11px 16px;gap:10px;border-bottom:1px solid #f3f4f6;transition:background .1s}.rd-drawer-item:last-child{border-bottom:none}.rd-drawer-item--clickable{cursor:pointer}.rd-drawer-item--animate{opacity:0;animation:rd-drawer-item-in .28s cubic-bezier(.25,1,.5,1) forwards}.rd-drawer-item--clickable:hover{background:#faf7f5}.rd-drawer-item--clickable:hover .rd-drawer-item-chevron{opacity:1;transform:translate(0)}.rd-drawer-item-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.rd-drawer-item-chevron{color:#9ca3af;opacity:0;transform:translate(-4px);transition:opacity .15s,transform .15s;flex-shrink:0}.rd-drawer-item-left{display:flex;align-items:center;gap:10px;min-width:0}.rd-drawer-item-icon{width:36px;height:36px;border-radius:50%;background:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.rd-drawer-item-info{display:flex;flex-direction:column;gap:3px;min-width:0}.rd-drawer-item-top-row{display:flex;align-items:center;gap:8px}.rd-drawer-item-sha{font-size:13px;font-weight:700;color:#111827;font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace}.rd-drawer-item-env{font-size:11px;font-weight:500;color:#374151;background:#f3f4f6;border-radius:4px;padding:1px 6px}.rd-drawer-item-meta-row{display:flex;flex-direction:column;gap:1px}.rd-drawer-item-meta{font-size:12px;color:#374151;line-height:1.4}.rd-drawer-status{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;padding:4px 10px;border-radius:20px;white-space:nowrap;flex-shrink:0;background:#f1f3f5;color:#374151;border:1px solid transparent}.rd-drawer-status.pending{background:#f1f3f5;color:#6b7280;border-color:#e5e7eb}.rd-drawer-status.success{background:#f0fdf4;color:#16a34a;border-color:#bbf7d0}.rd-drawer-status.failed{background:#fff1f2;color:#dc2626;border-color:#fecaca}.rd-drawer-status.running{background:#fffbeb;color:#d97706;border-color:#fde68a}.rd-drawer-footer{display:flex;align-items:center;justify-content:space-between;padding:11px 16px;border-top:1px solid #f3f4f6;flex-shrink:0}.rd-drawer-full-history{display:inline-flex;align-items:center;gap:5px;background:none;border:none;padding:0;font-size:13px;font-weight:600;color:#f95d03;cursor:pointer;font-family:inherit;transition:color .15s}.rd-drawer-full-history:hover{color:#c2410c}.rd-drawer-count{font-size:11.5px;font-weight:500;color:#9ca3af}.rd-deploy-modal-overlay{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:5000;animation:rd-overlay-in .18s ease-out}@keyframes rd-overlay-in{0%{opacity:0}to{opacity:1}}.rd-deploy-modal{background:#fff;border-radius:8px;width:920px;max-width:calc(100vw - 32px);height:660px;max-height:calc(100vh - 48px);box-shadow:0 24px 80px #00000038,0 4px 16px #0000001a;overflow:hidden;display:flex;flex-direction:column;animation:rd-modal-in .22s cubic-bezier(.34,1.56,.64,1)}@keyframes rd-modal-in{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.rd-deploy-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 20px 16px;border-bottom:1px solid #f3f4f6;flex-shrink:0}.rd-deploy-modal-header-left{display:flex;align-items:flex-start;gap:12px}.rd-deploy-modal-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px #f9731659}.rd-deploy-modal-title-block{display:flex;flex-direction:column;gap:4px}.rd-deploy-modal-title-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.rd-deploy-modal-title-word{font-size:17px;font-weight:800;color:#111827;letter-spacing:-.02em}.rd-deploy-modal-title-version{font-size:14px;font-weight:700;color:#374151;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;padding:2px 9px;font-family:ui-monospace,Cascadia Code,monospace}.rd-deploy-modal-title-arrow{font-size:14px;color:#9ca3af;font-weight:400}.rd-deploy-modal-title-env{font-size:14px;font-weight:700;color:#f97316;background:#fff7ed;border:1px solid #fed7aa;border-radius:6px;padding:2px 9px}.rd-deploy-modal-subtitle{font-size:12.5px;color:#6b7280;line-height:1.4}.rd-deploy-modal-close{background:none;border:none;cursor:pointer;color:#9ca3af;padding:6px;border-radius:8px;display:flex;align-items:center;flex-shrink:0;transition:background .15s,color .15s}.rd-deploy-modal-close:hover{background:#f3f4f6;color:#374151}.rd-deploy-modal-section-label{font-size:10.5px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.08em;padding:16px 20px 8px}.rd-deploy-modal-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-right:20px}.rd-disabled-components-toggle{display:inline-flex;align-items:center;gap:6px;margin-top:10px;border:1px solid #fed7aa;background:#fff7ed;color:#c2410c;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit}.rd-disabled-components-chevron{transition:transform .18s ease}.rd-disabled-components-chevron.open{transform:rotate(180deg)}.rd-disabled-components-panel{margin:0 20px 12px;border:1px solid #fed7aa;background:#fff7ed;border-radius:12px;padding:12px 14px}.rd-disabled-components-title{font-size:12px;font-weight:700;color:#9a3412;margin-bottom:8px}.rd-disabled-components-list{display:flex;flex-direction:column;gap:8px}.rd-disabled-components-item{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#ffffffa6;border:1px solid #ffedd5;border-radius:10px;padding:10px 12px}.rd-disabled-components-name{font-size:13px;font-weight:700;color:#111827}.rd-disabled-components-reason{font-size:12px;color:#9a3412}.rd-deploy-modal-env-list{display:flex;flex-direction:column;gap:8px;padding:0 16px 16px}.rd-deploy-modal-env-item{display:flex;align-items:center;gap:14px;padding:13px 16px;border-radius:12px;border:1.5px solid #f3f4f6;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s;background:#fff}.rd-deploy-modal-env-item:hover{border-color:#fdba74;background:#fff;box-shadow:none}.rd-deploy-modal-env-item.selected{border-color:#f97316;background:#fff;box-shadow:none}.rd-deploy-modal-env-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rd-deploy-modal-env-info{display:flex;flex-direction:column;gap:4px;flex:1}.rd-deploy-modal-env-name{font-size:14px;font-weight:600;color:#111827}.rd-deploy-modal-env-type{font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;width:fit-content;background:#f3f4f6;color:#6b7280}.rd-deploy-modal-env-type[data-type=production]{background:#fee2e2;color:#dc2626}.rd-deploy-modal-env-type[data-type=staging]{background:#fef3c7;color:#b45309}.rd-deploy-modal-env-type[data-type=development]{background:#dcfce7;color:#15803d}.rd-deploy-modal-env-type[data-type=qa]{background:#ede9fe;color:#7c3aed}.rd-deploy-modal-env-radio{width:20px;height:20px;border-radius:50%;border:2px solid #d1d5db;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .15s}.rd-deploy-modal-env-radio.checked{border-color:#f97316;background:#fff7ed}.rd-deploy-modal-env-radio-dot{width:8px;height:8px;border-radius:50%;background:#f97316}.rd-deploy-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 20px;border-top:1px solid #f3f4f6;background:#fafafa;flex-shrink:0}.rd-deploy-modal-cancel{display:inline-flex;align-items:center;gap:5px;background:none;border:1.5px solid #e5e7eb;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;font-family:inherit;transition:background .15s,color .15s,border-color .15s}.rd-deploy-modal-cancel:hover{background:#f3f4f6;color:#374151;border-color:#d1d5db}.rd-deploy-modal-confirm{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;border:none;border-radius:9px;padding:9px 20px;font-size:13.5px;font-weight:700;cursor:pointer;font-family:inherit;transition:opacity .15s,box-shadow .15s,transform .1s;box-shadow:0 4px 12px #f973164d}.rd-deploy-modal-confirm:hover:not(:disabled){opacity:.92;box-shadow:0 6px 18px #f9731666;transform:translateY(-1px)}.rd-deploy-modal-confirm:active:not(:disabled){transform:translateY(0)}.rd-deploy-modal-confirm:disabled{background:#fed7aa;box-shadow:none;cursor:not-allowed}.rd-deploy-modal-confirm--deploy{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b9814d}.rd-deploy-modal-confirm--deploy:hover:not(:disabled){box-shadow:0 6px 18px #10b98166}.rd-rn-flow-row{padding:16px 20px 0;display:flex;flex-direction:column;gap:0}.rd-rn-flow-block{display:flex;flex-direction:column}.rd-rn-flow-divider{height:1px;background:#f3f4f6;margin:12px 0}.rd-rn-flow-cards{display:flex;align-items:center;gap:12px}.rd-rn-flow-card{flex:1;display:flex;flex-direction:column;gap:4px;padding:14px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:10px}.rd-rn-flow-card-label{font-size:10px;font-weight:700;letter-spacing:.07em;color:#9ca3af;text-transform:uppercase}.rd-rn-flow-card-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;margin:4px 0}.rd-rn-flow-card-icon--source,.rd-rn-flow-card-icon--target{background:#f3f4f6;color:#374151}.rd-rn-flow-card-name{font-size:15px;font-weight:700;color:#111827;line-height:1.2}.rd-rn-flow-card-sub{font-size:12px;color:#9ca3af}.rd-rn-flow-arrow{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#9ca3af}.rd-rn-tabs{display:flex;align-items:center;gap:0;border-bottom:1px solid #e5e7eb;padding:0 20px;margin-top:16px;flex-shrink:0}.rd-rn-tab{display:inline-flex;align-items:center;gap:7px;padding:11px 0;margin-right:24px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;font-size:13.5px;font-weight:500;color:#6b7280;cursor:pointer;font-family:inherit;transition:color .15s,border-color .15s;white-space:nowrap}.rd-rn-tab:hover{color:#111827}.rd-rn-tab.active{color:#111827;font-weight:700;border-bottom-color:#111827}.rd-rn-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 6px;background:#e5e7eb;border-radius:999px;font-size:11.5px;font-weight:600;color:#374151}.rd-rn-tab.active .rd-rn-tab-badge{background:#dbeafe;color:#1d4ed8}.rd-rn-body{overflow-y:auto;flex:1}.rd-rn-empty{padding:36px 20px;text-align:center;font-size:13px;color:#9ca3af}.rd-rn-loading{display:flex;align-items:center;gap:10px;padding:20px;font-size:13px;color:#9ca3af}.rd-rn-comp-section{border-bottom:1px solid #f3f4f6}.rd-rn-comp-section:last-child{border-bottom:none}.rd-rn-comp-separator{display:flex;align-items:center;gap:10px;padding:9px 20px;background:#f8fafc;border-bottom:1px solid #e5e7eb;border-top:1px solid #f1f5f9;position:sticky;top:0;z-index:1;-webkit-user-select:none;user-select:none;cursor:pointer;transition:background .1s}.rd-rn-comp-separator:hover{background:#f1f5f9}.rd-rn-comp-sep-icon{width:26px;height:26px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#c2410c}.rd-rn-comp-sep-name{font-size:13px;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 1 auto;margin-right:auto}.rd-rn-comp-count{background:#e2e8f0;border-radius:999px;font-size:11px;font-weight:700;color:#475569;padding:2px 9px;flex-shrink:0;min-width:28px;text-align:center}.rd-rn-comp-count--error{background:#fee2e2;color:#991b1b}.rd-rn-comp-spinner{width:14px;height:14px;flex-shrink:0}.rd-rn-comp-chevron{flex-shrink:0;color:#94a3b8;transition:transform .18s cubic-bezier(.4,0,.2,1);transform:rotate(-90deg)}.rd-rn-comp-chevron.open{transform:rotate(0)}.rd-rn-comp-error{padding:12px 20px;font-size:13px;color:#991b1b;background:#fef2f2;border-left:3px solid #fca5a5}.rd-rn-commit-row{display:flex;align-items:flex-start;gap:12px;padding:12px 20px;border-bottom:1px solid #f3f4f6;transition:background .1s}.rd-rn-commit-row:last-child{border-bottom:none}.rd-rn-commit-row:hover{background:#fafafa}.rd-rn-commit-avatar{width:32px;height:32px;border-radius:50%;background:#e5e7eb;color:#374151;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.rd-rn-commit-info{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.rd-rn-commit-subject{font-size:13.5px;font-weight:600;color:#111827;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rd-rn-commit-meta{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.rd-rn-commit-sha{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:11.5px;font-weight:600;color:#6b7280}.rd-rn-commit-dot{color:#d1d5db;font-size:11px}.rd-rn-commit-author{font-size:12px;color:#6b7280}.rd-rn-commit-date{font-size:12px;color:#9ca3af}.rd-rn-commit-keys{display:flex;flex-direction:column;gap:3px;flex-shrink:0;align-items:flex-end}.rd-rn-jira-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;background:#f8faff;border:1px solid #dbeafe;border-radius:5px;font-size:11.5px;font-weight:600;color:#1d4ed8;white-space:nowrap;font-family:inherit}.rd-rn-jira-pill:before{content:"";display:inline-block;width:12px;height:12px;background:#1d4ed8;border-radius:2px;opacity:.15;flex-shrink:0}.rd-rn-jira-grid{display:flex;flex-direction:column;padding:8px 0}.rd-rn-jira-row{display:flex;align-items:center;gap:12px;padding:10px 20px;border-bottom:1px solid #f3f4f6;transition:background .1s}.rd-rn-jira-row:last-child{border-bottom:none}.rd-rn-jira-row:hover{background:#fafafa}.rd-rn-jira-title{font-size:13px;color:#374151;font-weight:500}.rd-deploy-modal-body{flex:1;overflow-y:auto;min-height:0}.rd-stepper{display:flex;align-items:center;padding:14px 24px 12px;border-bottom:1px solid #f3f4f6;flex-shrink:0;background:#fff}.rd-stepper-item{display:flex;align-items:center;gap:8px;flex-shrink:0}.rd-stepper-circle{width:28px;height:28px;border-radius:50%;background:#f3f4f6;border:2px solid #e5e7eb;color:#4b5563;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s,color .2s,border-color .2s}.rd-stepper-circle.active{background:#f97316;border-color:#f97316;color:#fff;box-shadow:0 0 0 4px #f9731626}.rd-stepper-circle.done{background:#10b981;border-color:#10b981;color:#fff}.rd-stepper-label{font-size:12.5px;font-weight:500;color:#9ca3af;white-space:nowrap;transition:color .2s,font-weight .2s}.rd-stepper-label.active{color:#111827;font-weight:700}.rd-stepper-label.done{color:#111827;font-weight:600}.rd-stepper-line{flex:1;height:2px;background:#e5e7eb;min-width:28px;margin:0 6px;border-radius:999px;transition:background .2s}.rd-stepper-line.done{background:#10b981}.rd-versions-list{display:flex;flex-direction:column;padding:4px 0 8px}.rd-versions-row{display:flex;align-items:center;gap:14px;padding:14px 20px;border-bottom:1px solid #e5e7eb;transition:background .1s}.rd-versions-row:last-child{border-bottom:1px solid #f3f4f6}.rd-versions-row:hover{background:#fafafa}.rd-versions-row--disabled{opacity:.68;background:#fcfcfd}.rd-versions-row--disabled:hover{background:#fcfcfd}.rd-versions-row-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#c2410c}.rd-versions-row-name{font-size:13.5px;font-weight:700;color:#111827;white-space:nowrap;flex-shrink:0}.rd-versions-row-key{font-size:10.5px;font-weight:700;color:#6b7280;background:#f8fafc;border:1px solid #e5e7eb;border-radius:999px;padding:2px 8px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;flex-shrink:0}.rd-versions-row-tags{display:flex;flex-wrap:nowrap;gap:5px;flex-shrink:0}.rd-versions-row-spacer{flex:1}.rd-versions-from{font-family:ui-monospace,Cascadia Code,monospace;font-size:12px;font-weight:500;color:#374151;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:5px;padding:3px 10px;white-space:nowrap;flex-shrink:0}.rd-versions-from--new{font-family:inherit;font-size:11px;font-weight:500;color:#9ca3af;background:transparent;border:1px dashed #e5e7eb;font-style:italic}.rd-versions-to{font-family:ui-monospace,Cascadia Code,monospace;font-size:12px;font-weight:700;color:#111827;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:5px;padding:3px 10px;white-space:nowrap;flex-shrink:0}.rd-versions-disabled-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;border:1px solid #fecaca;background:#fef2f2;color:#b91c1c;font-size:11.5px;font-weight:700;white-space:nowrap;flex-shrink:0}.rd-versions-tag{display:inline-flex;align-items:center;gap:0;border-radius:6px;overflow:hidden;border:1px solid #e5e7eb;font-size:11.5px;font-weight:500}.rd-versions-tag-key{padding:3px 8px;background:#f9fafb;color:#4b5563;border-right:1px solid #e5e7eb;font-weight:600}.rd-versions-tag-val{padding:3px 9px;background:#fff;color:#111827;font-weight:700;font-family:ui-monospace,Cascadia Code,monospace}.rd-versions-tag-empty{font-size:11.5px;color:#9ca3af;font-style:italic}.rd-versions-row-arrow{flex-shrink:0;display:flex;align-items:center;justify-content:center}.rd-versions-row-target{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:8px;border:1.5px solid #e5e7eb;background:#f9fafb;flex-shrink:0}.rd-versions-row-target-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.rd-versions-row-env{font-size:12px;font-weight:700;white-space:nowrap}.rd-release-detail-view{flex:1;background:#f7f7f6;display:flex;flex-direction:column;overflow:hidden;padding:20px}.rd-rdv-card-wrap{flex:1;background:#fff;border:1px solid #fed7aa;border-radius:20px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 2px 12px #f9731612;min-height:0}.rd-rdv-topbar{display:flex;align-items:center;gap:16px;padding:14px 24px;background:#fff;border-bottom:1px solid #fde8d0;border-radius:20px 20px 0 0;flex-shrink:0}.rd-rdv-back{display:inline-flex;align-items:center;gap:5px;background:none;border:none;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;padding:0;white-space:nowrap;transition:color .12s}.rd-rdv-back:hover{color:#111827}.rd-rdv-topbar-center{flex:1;display:flex;align-items:center;gap:10px;min-width:0;overflow:hidden}.rd-rdv-title{font-size:15px;font-weight:700;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rd-rdv-topbar-actions{display:flex;align-items:center;gap:10px}.rd-rdv-btn-outline{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 14px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:background .12s,border-color .12s}.rd-rdv-btn-outline:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.rd-rdv-btn-outline:disabled{opacity:.45;cursor:not-allowed}.rd-rdv-btn-primary{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 16px;border:none;border-radius:8px;background:#f97316;font-size:13px;font-weight:600;color:#fff;cursor:pointer;transition:background .12s}.rd-rdv-btn-primary:hover{background:#ea6c0a}.rd-rdv-meta-tags{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.rd-rdv-meta-tag{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:20px;font-size:12px;font-weight:500;color:#4b5563;white-space:nowrap}.rd-rdv-meta-tag svg{color:#9ca3af;flex-shrink:0}.rd-rdv-avatar{width:20px;height:20px;border-radius:50%;background:#fde8d0;color:#c2410c;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.rd-rdv-body{flex:1;display:grid;grid-template-columns:1fr 380px;gap:14px;padding:16px 24px 20px;overflow:hidden;min-height:0}.rd-rdv-main-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;display:flex;flex-direction:column;overflow:hidden}.rd-rdv-main-card-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 10px;border-bottom:1px solid #f3f4f6;flex-shrink:0}.rd-rdv-card-header-tags{display:flex;align-items:center;gap:6px}.rd-rdv-card-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#f3f4f6;border-radius:6px;font-size:11px;font-weight:500;color:#6b7280;white-space:nowrap}.rd-rdv-card-tag svg{color:#9ca3af;flex-shrink:0}.rd-rdv-main-card-title{font-size:14px;font-weight:600;color:#111827}.rd-rdv-table-scroll{flex:1;overflow-y:auto;min-height:0}.rd-rdv-table{width:100%;border-collapse:collapse;font-size:13px}.rd-rdv-table thead tr{background:#fafafa}.rd-rdv-table th{padding:9px 16px;text-align:left;font-size:11px;font-weight:600;color:#9ca3af;letter-spacing:.5px;border-bottom:1px solid #f3f4f6}.rd-rdv-table td{padding:13px 16px;color:#374151;border-bottom:1px solid #f9fafb;vertical-align:middle}.rd-rdv-table tbody tr:last-child td{border-bottom:none}.rd-rdv-table tbody tr:hover td{background:#fafafa}.rd-rdv-comp-cell{display:flex;align-items:center;gap:10px}.rd-rdv-comp-cell-sub{padding-left:40px}.rd-rdv-comp-key{font-size:12px;font-weight:500;font-style:italic}.rd-rdv-type-tabs{display:flex;gap:2px;padding:10px 16px 0;border-bottom:1px solid #f3f4f6;margin-bottom:0}.rd-rdv-type-tab{padding:6px 14px;border-radius:0;border:none;border-bottom:2px solid transparent;background:transparent;font-size:12px;font-weight:500;color:#9ca3af;cursor:pointer;transition:all .15s ease;text-transform:capitalize;letter-spacing:.2px;line-height:1.4;white-space:nowrap;margin-bottom:-1px}.rd-rdv-type-tab:hover{color:#374151;border-bottom-color:#d1d5db}.rd-rdv-type-tab.active{color:#111827;font-weight:600;border-bottom-color:#111827;background:transparent}.rd-rdv-type-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:20px;font-size:11px;font-weight:600;text-transform:capitalize;letter-spacing:.2px;background:#f3f4f6;color:#374151}.rd-rdv-type-service{background:#dbeafe;color:#1d4ed8}.rd-rdv-type-iac{background:#dcfce7;color:#15803d}.rd-rdv-type-frontend{background:#ede9fe;color:#7c3aed}.rd-rdv-type-backend{background:#fde8d0;color:#9a3412}.rd-rdv-type-docker,.rd-rdv-type-image{background:#e0f2fe;color:#0369a1}.rd-rdv-type-library{background:#fef3c7;color:#92400e}.rd-rdv-type-tool{background:#f3e8ff;color:#6b21a8}.rd-rdv-type-database{background:#ecfdf5;color:#065f46}.rd-compare-banner{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#eff6ff;border-bottom:1px solid #bfdbfe;gap:8px;flex-shrink:0}.rd-compare-banner-left{display:flex;align-items:center;gap:8px;font-size:12.5px;color:#1e40af}.rd-compare-banner-left strong{font-weight:700}.rd-compare-banner-left svg{flex-shrink:0;color:#3b82f6}.rd-compare-banner-cancel{background:none;border:none;cursor:pointer;color:#60a5fa;padding:3px;border-radius:4px;display:flex;align-items:center;flex-shrink:0;transition:color .15s}.rd-compare-banner-cancel:hover{color:#1e40af}.rd-release-card--compare-a{border-color:#93c5fd!important;background:#eff6ff!important;opacity:.85;cursor:default!important}.rd-release-card--compare-pick{cursor:pointer}.rd-release-card--compare-pick:hover{border-color:#3b82f6!important;background:#f0f9ff!important}.rd-rdv-topbar-left{display:flex;flex-direction:column;gap:8px}.rd-cmp-heading{display:flex;align-items:center;gap:10px}.rd-cmp-arrow{color:#d1d5db;font-size:18px;font-weight:300}.rd-cmp-tag-changed{background:#fef9c3;color:#854d0e;border-color:#fde68a}.rd-cmp-tag-added{background:#dcfce7;color:#15803d;border-color:#bbf7d0}.rd-cmp-tag-removed{background:#fee2e2;color:#b91c1c;border-color:#fecaca}.rd-cmp-body{padding:0 24px 24px}.rd-cmp-body .rd-rdv-table thead th{font-size:12px;font-weight:500;color:#6b7280;text-transform:none;letter-spacing:0;padding:10px 14px;border-bottom:1px solid #e5e7eb;background:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.rd-cmp-body .rd-rdv-table thead th:first-child,.rd-cmp-body .rd-rdv-table thead th:nth-child(2){font-size:11px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.rd-cmp-body .rd-rdv-table tbody tr:hover td{background:inherit}.rd-cmp-row-same td{background:#fff}.rd-cmp-row-changed td{background:#fffbeb}.rd-cmp-row-added td{background:#f0fdf4}.rd-cmp-row-removed td{background:#fff5f5}.rd-cmp-comp-name{font-size:13px;font-weight:600;color:#111827}.rd-cmp-comp-sub{font-size:12px;color:#9ca3af;padding-left:2px}.rd-cmp-cell-ver{font-family:monospace}.rd-cmp-ver-changed{background:#fef3c7!important;color:#92400e!important;border-color:#fde68a!important}.rd-edit-drawer-overlay{position:fixed;inset:0;background:#00000040;z-index:200}.rd-edit-drawer{position:fixed;top:0;right:0;height:100vh;width:440px;background:#fff;z-index:201;display:flex;flex-direction:column;box-shadow:-4px 0 24px #0000001f}.rd-edit-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #f3f4f6;flex-shrink:0}.rd-edit-drawer-title{font-size:16px;font-weight:700;color:#111827}.rd-edit-drawer-close{background:none;border:none;cursor:pointer;color:#9ca3af;padding:4px;border-radius:6px;display:flex;align-items:center;transition:color .15s,background .15s}.rd-edit-drawer-close:hover{color:#374151;background:#f3f4f6}.rd-edit-drawer-body{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:24px}.rd-edit-field{display:flex;flex-direction:column;gap:8px}.rd-edit-label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.rd-edit-readonly{font-size:14px;font-weight:600;color:#374151;padding:8px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;font-family:monospace}.rd-edit-status-options{display:flex;gap:8px}.rd-edit-status-opt{padding:6px 16px;border-radius:20px;border:1.5px solid #e5e7eb;background:#fafafa;font-size:12px;font-weight:600;cursor:pointer;text-transform:capitalize;transition:all .15s;color:#6b7280}.rd-edit-status-opt:hover{border-color:#d1d5db;color:#374151}.rd-edit-status-opt.selected.rd-edit-status-draft{background:#fff7ed;border-color:#fb923c;color:#c2410c}.rd-edit-status-opt.selected.rd-edit-status-active{background:#dcfce7;border-color:#4ade80;color:#15803d}.rd-edit-status-opt.selected.rd-edit-status-deprecated{background:#fee2e2;border-color:#f87171;color:#b91c1c}.rd-edit-textarea{padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#374151;resize:vertical;font-family:inherit;line-height:1.5;transition:border-color .15s;outline:none}.rd-edit-textarea:focus{border-color:#6b7280}.rd-edit-components{display:flex;flex-direction:column;gap:12px}.rd-edit-comp-row{border:1px solid #f3f4f6;border-radius:10px;padding:12px 14px;background:#fafafa}.rd-edit-comp-name{font-size:13px;font-weight:600;color:#111827;margin-bottom:10px}.rd-edit-comp-versions{display:flex;flex-direction:column;gap:8px}.rd-edit-ver-row{display:flex;align-items:center;gap:8px}.rd-edit-ver-key{font-size:11px;font-weight:600;color:#374151;background:#f3f4f6;padding:3px 8px;border-radius:4px;min-width:60px;text-align:center;flex-shrink:0}.rd-edit-ver-input{flex:1;padding:6px 10px;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;font-family:monospace;color:#374151;outline:none;transition:border-color .15s}.rd-edit-ver-input:focus{border-color:#6b7280}.rd-edit-error{font-size:13px;color:#b91c1c;background:#fee2e2;padding:10px 12px;border-radius:8px}.rd-edit-drawer-footer{padding:16px 24px;border-top:1px solid #f3f4f6;display:flex;gap:10px;justify-content:flex-end;flex-shrink:0}.rd-edit-cancel{padding:8px 18px;border-radius:8px;border:1.5px solid #e5e7eb;background:#fff;font-size:13px;font-weight:600;color:#6b7280;cursor:pointer;transition:all .15s}.rd-edit-cancel:hover{border-color:#d1d5db;color:#374151}.rd-edit-save{padding:8px 20px;border-radius:8px;border:none;background:#111827;font-size:13px;font-weight:600;color:#fff;cursor:pointer;transition:background .15s}.rd-edit-save:hover:not(:disabled){background:#1f2937}.rd-edit-save:disabled{opacity:.5;cursor:not-allowed}.rd-rdv-comp-icon{width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}.rd-rdv-ver-pill{display:inline-block;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;padding:3px 10px;font-size:12px;font-weight:600;color:#374151;font-family:monospace}.rd-rdv-artifact-link{font-size:12.5px;color:#2563eb;cursor:pointer}.rd-rdv-artifact-link:hover{text-decoration:underline}.rd-rdv-muted{color:#9ca3af}.rd-rdv-notes-card{overflow-y:auto;scrollbar-width:thin;scrollbar-color:#d1d5db transparent}.rd-rdv-notes-card::-webkit-scrollbar{width:5px}.rd-rdv-notes-card::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.rd-rdv-notes-edit{background:none;border:none;padding:4px;border-radius:6px;cursor:pointer;color:#9ca3af;display:flex;align-items:center;transition:background .1s,color .1s}.rd-rdv-notes-edit:hover{background:#f3f4f6;color:#374151}.rd-rdv-notes-content{padding:16px 20px;font-size:13.5px;color:#374151;line-height:1.7}.rd-rdv-notes-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:40px 20px;color:#9ca3af;font-size:13px}.rd-rdv-empty{padding:16px 20px;font-size:13px;color:#9ca3af}.dp-page{height:100%;overflow-y:auto;background:#f7f7f6;display:flex;flex-direction:column;font-family:inherit}.dp-summary-page{padding:4px 4px 12px;flex:1}.dp-summary-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-top:5px;margin-bottom:12px}.dp-summary-card{background:#fff9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:16px;padding:16px 18px 14px;display:flex;flex-direction:column;gap:0;border:1px solid rgba(255,255,255,.85);box-shadow:0 2px 8px #0000000f,inset 0 1px #ffffffe6;transition:box-shadow .15s,transform .15s;min-width:0}.dp-summary-card:hover{background:#fffc;box-shadow:0 6px 20px #0000001a,inset 0 1px #fffffff2;transform:translateY(-2px)}.dp-summary-card.coming-soon{background:#f9fafb;border-top-color:#e5e7eb;border-style:solid;opacity:.65}.dp-summary-card-top{display:flex;align-items:center;gap:6px;margin-bottom:10px}.dp-summary-card-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:26px;height:26px;border-radius:8px;background:#f973161a}.dp-summary-card-icon svg{width:13px;height:13px;stroke-width:2}.dp-summary-card-label{font-size:10px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dp-summary-card-value{font-size:28px;font-weight:700;color:#111827;line-height:1.1;white-space:normal;word-break:break-word;letter-spacing:-.5px;background:linear-gradient(135deg,#1f2937 30%,var(--card-accent, #f97316) 140%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dp-summary-coming-soon{font-size:18px;font-weight:600;color:#d1d5db}.dp-summary-card-delta{font-size:12px;font-weight:600;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dp-summary-card-badge{display:inline-flex;align-items:center;gap:5px;margin-top:6px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;width:fit-content;background:#f3f4f6;color:#6b7280}.dp-summary-card-badge.good{background:#10b9811a;color:#059669;border:1px solid rgba(16,185,129,.25)}.dp-summary-card-badge.bad{background:#f973161a;color:#ea580c;border:1px solid rgba(249,115,22,.25)}.dp-summary-card-badge-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.dp-summary-card-desc{font-size:11px;color:#9ca3af;line-height:1.4;margin-top:8px;border-top:1px solid #f3f4f6;padding-top:6px}.dp-devs-bar-wrap{margin-top:10px}.dp-devs-bar{display:flex;height:6px;border-radius:4px;overflow:hidden;background:#f3f4f6;gap:2px}.dp-devs-bar-seg{border-radius:4px;transition:width .4s ease;min-width:2px}.dp-devs-bar-seg--active{background:#22c55e}.dp-devs-bar-seg--inactive{background:#e5e7eb}.dp-devs-legend{display:flex;gap:10px;margin-top:8px;flex-wrap:wrap}.dp-devs-legend-item{display:flex;align-items:center;gap:4px;font-size:11px;color:#6b7280;font-weight:500}.dp-devs-legend-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.dp-devs-legend-dot--active{background:#22c55e}.dp-devs-legend-dot--inactive{background:#d1d5db}.dp-summary-section{margin-top:3px}.dp-summary-section+.dp-summary-section{margin-top:18px}.dp-summary-section-title{font-size:12px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}.dp-summary-charts-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dp-summary-charts-row+.dp-summary-charts-row{margin-top:22px}.dp-chart-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;gap:8px;margin-bottom:2px}.dp-chart-controls{display:flex;align-items:center;gap:6px;flex-shrink:0}.dp-chart-enlarge-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:#6b7280;cursor:pointer;transition:background .12s,color .12s,border-color .12s;flex-shrink:0}.dp-chart-enlarge-btn:hover{background:#f9fafb;color:var(--primary);border-color:var(--primary)}.dp-chart-modal-backdrop{position:fixed;inset:0;background:#00000073;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:3000;display:flex;align-items:center;justify-content:center;padding:24px}.dp-chart-modal{background:#fffffff5;border:1px solid #e5e7eb;border-radius:20px;padding:28px 32px;width:100%;max-width:900px;box-shadow:0 24px 64px #00000038;animation:dp-modal-in .18s ease}@keyframes dp-modal-in{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.dp-chart-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.dp-chart-type-toggle{display:flex;align-items:center;gap:2px;background:#f3f4f6;border-radius:8px;padding:3px;flex-shrink:0}.dp-chart-type-btn{display:flex;align-items:center;justify-content:center;width:28px;height:26px;border:none;border-radius:6px;background:transparent;color:#9ca3af;cursor:pointer;transition:background .12s,color .12s}.dp-chart-type-btn:hover{color:#374151;background:#0000000d}.dp-chart-type-btn.active{background:#fff;color:var(--primary);box-shadow:0 1px 4px #0000001a}.dp-toggle-group{display:flex;background:#f1f5f9cc;border:1px solid rgba(0,0,0,.06);border-radius:99px;padding:3px;gap:1px;flex-shrink:0;box-shadow:inset 0 1px 3px #00000012;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dp-toggle-btn{padding:5px 15px;font-size:12px;font-weight:500;background:transparent;color:#6b7280;border:none;border-radius:99px;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s;white-space:nowrap;letter-spacing:.01em}.dp-toggle-btn:hover:not(.active){background:#ffffffb3;color:#374151}.dp-toggle-btn+.dp-toggle-btn{border-left:none}.dp-toggle-btn.active{background:#f97316;color:#fff;font-weight:600;border-radius:99px;box-shadow:0 2px 8px #f973164d}.dp-no-sp-notice{display:flex;flex-direction:column;align-items:center;justify-content:center;height:220px;gap:8px;text-align:center;padding:0 24px}.dp-no-sp-icon{font-size:28px;opacity:.5}.dp-no-sp-text{font-size:13px;font-weight:600;color:#6b7280}.dp-no-sp-sub{font-size:12px;color:#9ca3af;line-height:1.5}.dp-scope-rate-avg{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}.dp-scope-rate-num{font-size:32px;font-weight:700;line-height:1}.dp-scope-rate-label{font-size:12px;color:#9ca3af}.dp-devtable-wrap{background:#fff;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.9);border-radius:16px;box-shadow:0 4px 24px #00000012,0 1px #ffffffe6 inset;display:flex;flex-direction:column;overflow:hidden}.dp-devtable-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 12px 8px;background:#fff;border-bottom:1px solid rgba(0,0,0,.06)}.dp-devtable-scroll{overflow-x:auto;overflow-y:auto;max-height:520px;background:#fff}.dp-devtable-scroll::-webkit-scrollbar{width:5px;height:5px}.dp-devtable-scroll::-webkit-scrollbar-track{background:transparent}.dp-devtable-scroll::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:99px}.dp-devtable-scroll::-webkit-scrollbar-thumb:hover{background:#d1d5db}.dp-devtable-search-wrap{position:relative;display:flex;align-items:center;flex:1;min-width:200px;max-width:300px}.dp-devtable-search-icon{position:absolute;left:12px;display:flex;align-items:center;pointer-events:none;color:#b0b7c3}.dp-devtable-search{width:100%;padding:8px 34px 8px 36px;border:1px solid #e8eaed;border-radius:10px;font-size:13px;color:#374151;background:#fffc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);outline:none;transition:border-color .15s,box-shadow .15s,background .15s;box-shadow:0 1px 3px #0000000f,inset 0 1px #fff}.dp-devtable-search::placeholder{color:#c4c9d4}.dp-devtable-search:focus{border-color:#f97316;background:#fff;box-shadow:0 0 0 3px #f973161a,0 1px 3px #0000000f}.dp-devtable-search-clear{position:absolute;right:10px;width:17px;height:17px;display:flex;align-items:center;justify-content:center;background:#e9eaec;border:none;border-radius:50%;cursor:pointer;font-size:9px;color:#6b7280;padding:0;transition:background .15s}.dp-devtable-search-clear:hover{background:#d1d5db;color:#111827}.dp-devtable-count{font-size:12px;font-weight:600;color:#ea580c;white-space:nowrap;background:#f9731612;border:1px solid rgba(249,115,22,.18);padding:5px 13px;border-radius:20px;letter-spacing:.01em;box-shadow:0 1px 3px #f9731614}.dp-devtable-spacer{flex:1}.dp-devtable-th-sort{cursor:pointer;-webkit-user-select:none;user-select:none}.dp-devtable-th-sort:hover{color:#9a3412}.dp-devtable-sort-icon{margin-left:4px;font-size:11px}.dp-devtable-sort-idle{color:#c2410c59}.dp-devtable-sort-active{color:#c2410c}.dp-devtable-empty{text-align:center;padding:48px 32px;color:#9ca3af;font-size:13px}.dp-devtable-metric{display:flex;flex-direction:column;gap:3px;min-width:80px}.dp-devtable-metric-val{font-size:14px;font-weight:600;color:#111827}.dp-devtable-metric-val.muted{color:#d1d5db;font-weight:400}.dp-devtable-bar-track{height:4px;background:#f1f5f9;border-radius:99px;overflow:hidden;width:100%;max-width:140px}.dp-devtable-bar-fill{height:4px;border-radius:99px;transition:width .4s ease}.dp-devtable-rank{width:36px;font-size:12px;color:#d1d5db;font-weight:700;text-align:center}.dp-devtable-rank-top{color:var(--primary)}.dp-devtable-rank-medal{font-size:15px}.dp-dev-selector-bar{display:flex;align-items:center;gap:20px;margin-bottom:20px;flex-wrap:wrap;padding:14px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 1px 3px #0000000d}.dp-dev-selector-wrap{display:flex;align-items:center;gap:10px}.dp-dev-selector-label{font-size:13px;font-weight:600;color:#6b7280;white-space:nowrap}.dp-dev-selector{padding:8px 36px 8px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 12px center;appearance:none;cursor:pointer;outline:none;min-width:240px;transition:border-color .15s}.dp-dev-selector:focus{border-color:#9a3412}.dp-dev-selector-meta{display:flex;align-items:center;gap:10px}.dp-dev-selector-since{font-size:12px;color:#9ca3af}.dp-dev-dropdown{position:relative;z-index:200}.dp-dev-dropdown-trigger{display:flex;align-items:center;gap:9px;padding:8px 12px 8px 10px;min-width:260px;background:#fffc;border:1px solid #e5e7eb;border-radius:12px;cursor:pointer;font-size:14px;color:#111827;font-weight:500;transition:border-color .15s,box-shadow .15s;outline:none;text-align:left;box-shadow:0 1px 4px #0000000d}.dp-dev-dropdown-trigger:hover,.dp-dev-dropdown-trigger.open{border-color:var(--primary);box-shadow:0 0 0 3px #f973161f}.dp-dev-dropdown-avatar{width:28px;height:28px;border-radius:50%;background:#f973161f;color:#c2410c;font-size:10.5px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:.03em}.dp-dev-dropdown-selected-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dp-dev-dropdown-placeholder{flex:1;color:#9ca3af;font-weight:400;font-size:13.5px}.dp-dev-dropdown-chevron{flex-shrink:0;color:#9ca3af;transition:transform .2s}.dp-dev-dropdown-trigger.open .dp-dev-dropdown-chevron{transform:rotate(180deg);color:var(--primary)}.dp-dev-dropdown-panel{position:absolute;top:calc(100% + 6px);left:0;min-width:300px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 12px 40px #00000024,0 2px 8px #0000000f;overflow:hidden;z-index:200;animation:dp-dropdown-in .15s ease}@keyframes dp-dropdown-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.dp-dev-dropdown-search-wrap{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid #f3f4f6;background:#fafafa}.dp-dev-dropdown-search-icon{flex-shrink:0}.dp-dev-dropdown-search{flex:1;border:none;background:transparent;font-size:13px;color:#111827;outline:none}.dp-dev-dropdown-search::placeholder{color:#d1d5db}.dp-dev-dropdown-search-clear{background:none;border:none;cursor:pointer;font-size:11px;color:#9ca3af;padding:0;line-height:1}.dp-dev-dropdown-search-clear:hover{color:#374151}.dp-dev-dropdown-list{max-height:320px;overflow-y:auto;padding:6px}.dp-dev-dropdown-list::-webkit-scrollbar{width:4px}.dp-dev-dropdown-list::-webkit-scrollbar-track{background:transparent}.dp-dev-dropdown-list::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:99px}.dp-dev-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;background:transparent;border-radius:9px;cursor:pointer;font-size:13.5px;color:#374151;font-weight:500;text-align:left;transition:background .1s}.dp-dev-dropdown-item:hover{background:#f973160f}.dp-dev-dropdown-item.selected{background:#f9731614;color:#c2410c}.dp-dev-dropdown-item--clear{border-bottom:1px solid #f3f4f6;border-radius:0;margin-bottom:4px;padding-left:12px}.dp-dev-dropdown-item--clear:hover{background:#f9fafb}.dp-dev-dropdown-item-avatar{width:28px;height:28px;border-radius:50%;font-size:10.5px;font-weight:600;color:#1f2937;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dp-dev-dropdown-item-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dp-dev-dropdown-item-num{font-size:11px;color:#d1d5db;font-weight:400;flex-shrink:0}.dp-dev-detail-header{display:flex;flex-direction:column;gap:14px;margin-bottom:20px;padding:16px 20px;background:#fff9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.85);border-radius:16px;box-shadow:0 2px 8px #0000000f}.dp-dev-detail-back{display:inline-flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;font-size:13px;font-weight:600;color:var(--primary);padding:0;width:fit-content;transition:opacity .15s}.dp-dev-detail-back:hover{opacity:.75}.dp-dev-detail-name-row{display:flex;align-items:center;gap:14px}.dp-dev-detail-avatar{width:48px;height:48px;border-radius:50%;font-size:16px;font-weight:600;color:#1f2937;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 6px #0000001a}.dp-dev-detail-name{font-size:20px;font-weight:700;color:#111827;line-height:1.2}.dp-dev-detail-meta{display:flex;align-items:center;gap:10px;margin-top:4px}.dp-dev-snapshot-section{margin-bottom:28px}.dp-dev-snapshot-title{font-size:11px;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px;opacity:.8}.dp-dev-snapshot-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:14px}@media(max-width:900px){.dp-dev-snapshot-grid{grid-template-columns:repeat(2,1fr)}}.dp-dev-snapshot-card{background:#fff9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:16px;padding:16px 18px 14px;border:1px solid rgba(255,255,255,.85);box-shadow:0 2px 8px #0000000f,inset 0 1px #ffffffe6;display:flex;flex-direction:column;gap:2px;transition:box-shadow .15s,transform .15s}.dp-dev-snapshot-card:hover{background:#fffc;box-shadow:0 6px 20px #0000001a,inset 0 1px #fffffff2;transform:translateY(-2px)}.dp-dev-snapshot-card-label{font-size:10px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap}.dp-dev-snapshot-card-value{font-size:26px;font-weight:700;line-height:1.1;margin-top:4px;background:linear-gradient(135deg,#1f2937 30%,var(--primary) 140%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dp-dev-snapshot-card-sub{font-size:12px;font-weight:600;margin-top:3px}.dp-dev-snapshot-card--green .dp-dev-snapshot-card-sub{color:#10b981}.dp-dev-snapshot-card--blue .dp-dev-snapshot-card-sub{color:#0ea5e9}.dp-dev-snapshot-card--orange .dp-dev-snapshot-card-sub{color:#f97316}.dp-dev-snapshot-card--purple .dp-dev-snapshot-card-sub{color:#8b5cf6}.dp-dev-snapshot-card--amber .dp-dev-snapshot-card-sub{color:#f59e0b}.dp-dev-snapshot-card--red .dp-dev-snapshot-card-sub{color:#f97316}.dp-dev-snapshot-chart-card{background:#fff9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.85);border-radius:16px;padding:20px;margin-bottom:14px;box-shadow:0 2px 8px #0000000f,inset 0 1px #ffffffe6}.dp-dev-snapshot-chart-title{font-size:13px;font-weight:700;color:#111827;margin-bottom:4px}.dp-dev-snapshot-chart-sub{font-size:11px;color:#9ca3af;margin-bottom:12px}.dp-activity-legend{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.dp-activity-legend-item{display:flex;align-items:center;gap:5px;padding:3px 10px 3px 6px;border:1px solid #e5e7eb;border-radius:20px;background:#fff;font-size:11px;font-weight:500;color:#374151;cursor:pointer;transition:opacity .15s,background .15s}.dp-activity-legend-item:hover{background:#f9fafb}.dp-activity-legend-item.hidden{opacity:.4;background:#f3f4f6}.dp-activity-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dp-ict-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:4px}.dp-ict-header .dp-dev-snapshot-chart-sub{margin-bottom:0}.dp-ict-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.dp-ict-toggle{display:flex;background:#f3f4f6;border-radius:6px;padding:2px}.dp-ict-toggle-btn{padding:3px 10px;font-size:11px;font-weight:500;border:none;background:transparent;border-radius:4px;cursor:pointer;color:#6b7280;transition:background .15s,color .15s}.dp-ict-toggle-btn.active{background:#fff;color:#111827;box-shadow:0 1px 3px #0000001a}.dp-ict-expand-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;cursor:pointer;color:#6b7280;transition:background .15s,color .15s}.dp-ict-expand-btn:hover{background:#f3f4f6;color:#111827}.dp-ict-modal-overlay{position:fixed;inset:0;background:#0006;z-index:3000;display:flex;align-items:center;justify-content:center}.dp-ict-modal{background:#fff;border-radius:16px;padding:24px;width:min(1200px,92vw);box-shadow:0 20px 60px #0003}.dp-issue-type-donut-wrap{display:flex;align-items:center;gap:24px}.dp-issue-type-legend{flex:1;display:flex;flex-direction:column;gap:8px}.dp-issue-type-legend-item{display:flex;align-items:center;gap:8px;font-size:12px}.dp-issue-type-legend-item .dp-sprint-legend-pill--nodot{flex:1}.dp-issue-type-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.dp-issue-type-legend-label{flex:1;color:#374151;font-weight:500}.dp-issue-type-legend-count{color:#111827;font-weight:600;min-width:24px;text-align:right}.dp-issue-type-legend-pct{color:#9ca3af;min-width:36px;text-align:right}.dp-stale-badge{display:inline-flex;align-items:center;justify-content:center;background:#f973161f;color:#c2410c;font-size:10px;font-weight:700;border-radius:20px;padding:1px 8px;margin-left:6px;vertical-align:middle;border:1px solid rgba(249,115,22,.25)}.dp-stale-card{padding:20px;overflow:hidden;display:flex;flex-direction:column;height:100%;box-sizing:border-box}.dp-stale-card .dp-stale-table-wrap{flex:1;overflow:hidden;display:flex;flex-direction:column}.dp-stale-card .dp-stale-tbody-scroll{flex:1;min-height:0;max-height:none}.dp-stale-table-wrap{border-radius:12px;overflow:hidden;border:1px solid rgba(249,115,22,.14)}.dp-stale-table{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}.dp-stale-table thead tr{background:linear-gradient(90deg,#f9731612,#0ea5e90a)}.dp-stale-table thead th{padding:10px 16px;text-align:left;font-size:10.5px;font-weight:700;color:#c2410c;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-bottom:1px solid rgba(249,115,22,.12)}.dp-stale-table thead th:nth-child(1){width:100px}.dp-stale-table thead th:nth-child(2){width:auto}.dp-stale-table thead th:nth-child(3){width:90px}.dp-stale-table thead th:nth-child(4){width:90px}.dp-stale-table thead th:nth-child(5){width:70px}.dp-stale-table thead th:nth-child(6){width:120px}.dp-stale-tbody-scroll{max-height:320px;overflow-y:auto;overflow-x:hidden}.dp-stale-tbody-scroll::-webkit-scrollbar{width:4px}.dp-stale-tbody-scroll::-webkit-scrollbar-track{background:transparent}.dp-stale-tbody-scroll::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.dp-stale-tbody-scroll::-webkit-scrollbar-thumb:hover{background:#9ca3af}.dp-stale-tbody-scroll .dp-stale-table{table-layout:fixed}.dp-stale-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background .15s}.dp-stale-table tbody tr:last-child{border-bottom:none}.dp-stale-table tbody tr:hover{background:#f9731608}.dp-stale-table tbody tr.dp-stale-row--warning{background:#fbbf240a}.dp-stale-table tbody tr.dp-stale-row--warning:hover{background:#fbbf2414}.dp-stale-table tbody tr.dp-stale-row--critical{background:#ef44440a}.dp-stale-table tbody tr.dp-stale-row--critical:hover{background:#ef444414}.dp-stale-table tbody td{padding:10px 16px;color:#374151;vertical-align:middle}.dp-stale-table .dp-stale-summary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#111827;font-weight:500;font-size:12.5px}.dp-stale-type-pill{display:inline-flex;align-items:center;font-size:10px;font-weight:500;color:#6b7280;background:#f3f4f6;padding:3px 9px;border-radius:20px;white-space:nowrap;border:1px solid #e5e7eb}.dp-stale-priority{display:inline-flex;align-items:center;font-size:10px;font-weight:600;padding:3px 9px;border-radius:20px;white-space:nowrap;text-transform:capitalize}.dp-stale-priority--highest,.dp-stale-priority--critical{background:#fee2e2;color:#b91c1c;border:1px solid rgba(185,28,28,.2)}.dp-stale-priority--high{background:#ffedd5;color:#c2410c;border:1px solid rgba(194,65,12,.2)}.dp-stale-priority--medium{background:#fef9c3;color:#a16207;border:1px solid rgba(161,98,7,.2)}.dp-stale-priority--low{background:#f0fdf4;color:#15803d;border:1px solid rgba(21,128,61,.2)}.dp-stale-priority--lowest{background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb}.dp-stale-days{display:inline-flex;align-items:center;font-size:11px;font-weight:700;color:#6b7280;background:#f3f4f6;padding:3px 10px;border-radius:20px;white-space:nowrap;border:1px solid #e5e7eb}.dp-stale-days.warning{background:#fbbf241f;color:#b45309;border-color:#b4530933}.dp-stale-days.critical{background:#ef44441a;color:#b91c1c;border-color:#b91c1c33}.dp-dev-snapshot-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}@media(max-width:800px){.dp-dev-snapshot-row{grid-template-columns:1fr}}.dp-devtable{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}.dp-devtable thead th{position:sticky;top:0;z-index:2;text-align:left;padding:11px 16px;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.06em;background:#fff;border-bottom:1.5px solid #f0f0f0;white-space:nowrap}.dp-devtable thead th.num{text-align:right}.dp-devtable tbody td{padding:0 16px;height:52px;border-bottom:1px solid #f5f5f5;vertical-align:middle;color:#374151}.dp-devtable tbody tr:last-child td{border-bottom:none}.dp-devtable tbody tr:hover td{background:#fafafa}.dp-devtable-name{display:flex;align-items:center;gap:10px;white-space:nowrap;overflow:hidden}.dp-devtable-name-text{font-size:13.5px;font-weight:500;color:#111827;overflow:hidden;text-overflow:ellipsis}.dp-devtable-avatar{width:32px;height:32px;border-radius:50%;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0;text-transform:uppercase;letter-spacing:.03em}.dp-devtable-status{display:inline-flex;align-items:center;gap:5px;padding:3px 8px 3px 6px;border-radius:6px;font-size:11.5px;font-weight:500;white-space:nowrap}.dp-devtable-status:before{content:"";width:6px;height:6px;border-radius:50%;flex-shrink:0}.dp-devtable-status.active{background:#f0fdf4;color:#15803d}.dp-devtable-status.active:before{background:#22c55e}.dp-devtable-status.inactive,.dp-devtable-status.low_activity,.dp-devtable-status.no_activity{background:#f9fafb;color:#9ca3af}.dp-devtable-status.inactive:before,.dp-devtable-status.low_activity:before,.dp-devtable-status.no_activity:before{background:#d1d5db}.dp-devtable-num-cell{text-align:right;width:120px}.dp-devtable-num-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.dp-devtable-num{font-size:13.5px;font-weight:600;color:#111827;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.dp-devtable-num.muted{color:#d1d5db;font-weight:400}.dp-devtable-sparkbar{width:72px;height:3px;background:#f1f5f9;border-radius:99px;overflow:hidden}.dp-devtable-sparkbar-fill{height:100%;border-radius:99px;transition:width .5s ease}.dp-devtable-sparkbar-fill.commits{background:#f97316}.dp-devtable-sparkbar-fill.prs-opened{background:#38bdf8}.dp-devtable-sparkbar-fill.prs-merged{background:#10b981}.dp-devtable-sparkbar-fill.jira{background:#8b5cf6}.dp-devtable-inactive td{opacity:.4}.dp-devtable-clickable{cursor:pointer}.dp-devtable-clickable td{transition:background .12s}.dp-devtable-clickable:hover td{background:#f973160a}.dp-devtable-clickable:hover td:first-child{box-shadow:inset 3px 0 #f97316}.dp-devtable-arrow-cell{width:36px;text-align:center;padding:0 8px 0 0!important}.dp-devtable-row-arrow{color:#d1d5db;opacity:0;transform:translate(-4px);transition:opacity .15s,transform .15s,color .15s;display:inline-block;vertical-align:middle}.dp-devtable-clickable:hover .dp-devtable-row-arrow{opacity:1;transform:translate(0);color:#f97316}.dp-sprint-legend-row{display:flex;align-items:center;gap:6px;margin-bottom:12px;flex-wrap:wrap}.dp-sprint-legend-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600}.dp-sprint-legend-pill:before{content:"";width:7px;height:7px;border-radius:50%;flex-shrink:0}.dp-sprint-legend-pill--committed{background:#fff7ed;color:#c2410c;border:1px solid rgba(249,115,22,.25)}.dp-sprint-legend-pill--committed:before{background:#f97316}.dp-sprint-legend-pill--done{background:#e0f2fe;color:#0369a1}.dp-sprint-legend-pill--done:before{background:#0ea5e9}.dp-sprint-legend-pill--active{background:#fef3c7;color:#92400e}.dp-sprint-legend-pill--active:before{background:#f59e0b}.dp-sprint-legend-pill--closed{background:#10b9811a;color:#059669;border:1px solid rgba(16,185,129,.25)}.dp-sprint-legend-pill--closed:before{background:#10b981}.dp-sprint-legend-pill--nodot:before{display:none}.dp-sprint-tooltip{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:12px 14px;box-shadow:0 8px 24px #0000001f;min-width:180px;font-family:inherit}.dp-sprint-tooltip-title{font-size:13px;font-weight:700;color:#111827;margin-bottom:10px;display:flex;align-items:center;gap:6px}.dp-sprint-tooltip-active-badge{font-size:10px;font-weight:600;background:#fff7ed;color:#f97316;border:1px solid #fed7aa;border-radius:20px;padding:1px 7px}.dp-sprint-tooltip-row{display:flex;align-items:center;gap:6px;margin-bottom:5px}.dp-sprint-tooltip-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dp-sprint-tooltip-key{font-size:12px;color:#6b7280;flex:1}.dp-sprint-tooltip-val{font-size:13px;font-weight:700;color:#111827}.dp-sprint-tooltip-completion{margin-top:10px;padding-top:10px;border-top:1px solid #f3f4f6}.dp-sprint-tooltip-pct-bar-bg{height:5px;background:#f3f4f6;border-radius:10px;overflow:hidden;margin-bottom:5px}.dp-sprint-tooltip-pct-bar-fill{height:100%;background:linear-gradient(90deg,#f97316,#fb923c);border-radius:10px;transition:width .3s ease}.dp-sprint-tooltip-pct-label{font-size:11px;font-weight:600;color:#f97316}.dp-sprint-legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}.dp-sprint-legend-dot.active-dot{background:#ea580c;position:relative}.dp-sprint-legend-label{font-size:11px;color:#6b7280;margin-right:8px}.dp-topbar{display:flex;align-items:center;gap:12px;padding:10px 20px;position:relative;z-index:100;overflow:visible;background:#ffffffd9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-bottom:1px solid #e5e7eb;flex-shrink:0}.dp-topbar-spacer{flex:1}.dp-topbar-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#111827}.dp-topbar-title svg{color:#ea580c;flex-shrink:0}.dp-topbar-sep{width:1px;height:20px;background:#e5e7eb;margin:0 4px}.dp-tabbar{display:flex;align-items:center;padding:0 20px;background:#ffffffe6;border-bottom:1px solid #e5e7eb;flex-shrink:0;gap:8px}.dp-tabbar-date-controls{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}.dp-tabbar-dev-selector{position:relative;flex-shrink:0}.dp-tabbar-dev-trigger{display:flex;align-items:center;gap:7px;height:32px;padding:0 12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s;white-space:nowrap;min-width:160px;max-width:220px}.dp-tabbar-dev-trigger:hover,.dp-tabbar-dev-trigger.open{border-color:#f97316;box-shadow:0 0 0 3px #f973161a;background:#fff7ed}.dp-tabbar-dev-trigger svg:first-child{color:#f97316;flex-shrink:0}.dp-tabbar-dev-trigger-label{flex:1;overflow:hidden;text-overflow:ellipsis;text-align:left}.dp-tabbar-dev-chevron{flex-shrink:0;color:#9ca3af;transition:transform .2s}.dp-tabbar-dev-chevron.flipped{transform:rotate(180deg)}.dp-tabbar-dev-menu{position:absolute;top:calc(100% + 6px);right:0;width:260px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 8px 32px #0000001f,0 2px 8px #0000000f;z-index:4000;overflow:hidden;animation:dp-dev-menu-in .15s ease}@keyframes dp-dev-menu-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.dp-tabbar-dev-search-wrap{display:flex;align-items:center;gap:8px;padding:10px 12px 8px;border-bottom:1px solid #f3f4f6}.dp-tabbar-dev-search{flex:1;border:none;outline:none;font-size:13px;color:#374151;background:transparent}.dp-tabbar-dev-search::placeholder{color:#9ca3af}.dp-tabbar-dev-search-clear{border:none;background:none;color:#9ca3af;font-size:11px;cursor:pointer;padding:0;line-height:1}.dp-tabbar-dev-search-clear:hover{color:#6b7280}.dp-tabbar-dev-list{max-height:320px;overflow-y:auto;padding:6px 0;scrollbar-width:thin;scrollbar-color:#d1d5db transparent}.dp-tabbar-dev-list::-webkit-scrollbar{width:5px}.dp-tabbar-dev-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.dp-tabbar-dev-list::-webkit-scrollbar-track{background:transparent}.dp-tabbar-dev-option{display:flex;align-items:center;gap:10px;width:100%;padding:7px 12px;border:none;background:transparent;cursor:pointer;text-align:left;transition:background .1s}.dp-tabbar-dev-option:hover,.dp-tabbar-dev-option.selected{background:#fff7ed}.dp-tabbar-dev-option-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;letter-spacing:.5px}.dp-tabbar-dev-option-avatar.all{background:#f3f4f6;color:#6b7280}.dp-tabbar-dev-option-name{flex:1;font-size:13px;font-weight:500;color:#374151;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dp-label{font-size:12px;font-weight:500;color:#6b7280;white-space:nowrap}.dp-select{height:32px;padding:0 10px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;font-size:13px;color:#374151;cursor:pointer;outline:none;min-width:140px;transition:border-color .15s}.dp-select:focus{border-color:#ea580c;box-shadow:0 0 0 2px #ea580c1f}.dp-days-group{display:flex;align-items:center;gap:0;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#fff}.dp-days-btn{padding:0 12px;height:32px;background:transparent;border:none;font-size:12px;font-weight:500;color:#6b7280;cursor:pointer;transition:background .12s,color .12s}.dp-days-btn+.dp-days-btn{border-left:1px solid #e5e7eb}.dp-days-btn.active{background:#ea580c;color:#fff}.dp-days-btn:not(.active):hover{background:#fef3ec;color:#c2410c}.dp-period-dropdown{position:relative}.dp-period-btn{display:flex;align-items:center;gap:6px;height:34px;padding:0 12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;font-size:13px;font-weight:500;color:#374151;cursor:pointer;min-width:110px;justify-content:space-between;transition:border-color .15s,box-shadow .15s;white-space:nowrap}.dp-period-btn:hover,.dp-period-btn.open{border-color:#ea580c;box-shadow:0 0 0 2px #ea580c1a}.dp-period-chevron{color:#9ca3af;transition:transform .2s;flex-shrink:0}.dp-period-chevron.up{transform:rotate(180deg)}.dp-period-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:160px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 32px #00000029;padding:6px;z-index:9999}.dp-period-group-label{font-size:10px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em;padding:4px 8px 2px}.dp-period-item{display:flex;align-items:center;gap:6px;width:100%;padding:7px 10px;border:none;background:transparent;font-size:13px;color:#374151;border-radius:6px;cursor:pointer;text-align:left;transition:background .12s,color .12s}.dp-period-item:hover{background:#fef3ec;color:#ea580c}.dp-period-item.active{background:#fff4ee;color:#ea580c;font-weight:600}.dp-period-item.active svg{color:#ea580c;flex-shrink:0}.dp-body{flex:1;padding:24px 28px;display:flex;flex-direction:column;gap:20px;min-width:0}.dp-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 24px;text-align:center;color:#6b7280}.dp-error-icon{width:48px;height:48px;border-radius:50%;background:#fee2e2;display:flex;align-items:center;justify-content:center;color:#b91c1c}.dp-error h3{font-size:16px;font-weight:600;color:#374151;margin:0}.dp-error p{font-size:14px;margin:0}.dp-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 24px;color:#6b7280;font-size:14px}.dp-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#ea580c;border-radius:50%;animation:dp-spin .7s linear infinite}@keyframes dp-spin{to{transform:rotate(360deg)}}.dp-pr-repo-filter-row{display:flex;align-items:center;gap:10px;margin-bottom:18px;padding:10px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:10px}.dp-pr-repo-filter-label{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:#6b7280;white-space:nowrap}.dp-pr-custom-dropdown{position:relative;flex-shrink:0}.dp-pr-custom-trigger{display:flex;align-items:center;gap:7px;height:34px;padding:0 12px 0 10px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;color:#374151;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s;white-space:nowrap;min-width:160px;max-width:220px}.dp-pr-custom-trigger:hover{border-color:#d1d5db;background:#f3f4f6}.dp-pr-custom-trigger.open,.dp-pr-custom-trigger:focus-visible{outline:none;border-color:#ea580c;box-shadow:0 0 0 3px #ea580c1a;background:#fff}.dp-pr-custom-trigger.active{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.dp-pr-custom-trigger-icon{display:flex;align-items:center;color:#9ca3af;flex-shrink:0}.dp-pr-custom-trigger.active .dp-pr-custom-trigger-icon{color:#ea580c}.dp-pr-custom-trigger-label{flex:1;overflow:hidden;text-overflow:ellipsis;text-align:left}.dp-pr-custom-chevron{flex-shrink:0;color:#9ca3af;transition:transform .15s}.dp-pr-custom-chevron.open{transform:rotate(180deg)}.dp-pr-custom-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:200;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0000001f,0 2px 6px #0000000f;min-width:220px;max-width:280px;overflow:hidden;animation:dp-dropdown-in .12s ease-out}@keyframes dp-dropdown-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.dp-pr-custom-search-wrap{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid #f3f4f6}.dp-pr-custom-search{flex:1;border:none;outline:none;font-size:13px;color:#111827;background:transparent}.dp-pr-custom-search::placeholder{color:#9ca3af}.dp-pr-custom-search-clear{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:12px;padding:0 2px;line-height:1}.dp-pr-custom-search-clear:hover{color:#374151}.dp-pr-custom-list{max-height:260px;overflow-y:auto;padding:4px 0}.dp-pr-custom-option{display:flex;align-items:center;gap:8px;width:100%;padding:7px 12px;background:none;border:none;font-size:13px;color:#374151;text-align:left;cursor:pointer;transition:background .1s}.dp-pr-custom-option:hover{background:#f9fafb}.dp-pr-custom-option.selected{color:#ea580c;font-weight:500;background:#fff7ed}.dp-pr-custom-option-check{display:flex;align-items:center;justify-content:center;width:16px;flex-shrink:0;color:#ea580c}.dp-pr-custom-empty{padding:10px 12px;font-size:13px;color:#9ca3af;text-align:center}.dp-pr-repo-clear{display:flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:#6b7280;font-size:12px;cursor:pointer;transition:background .15s,color .15s}.dp-pr-repo-clear:hover{background:#f3f4f6;color:#374151}.dp-pr-filter-divider{width:1px;height:20px;background:#e5e7eb;flex-shrink:0}.dp-pr-clear-all{margin-left:auto;border-color:#fca5a5;color:#dc2626}.dp-pr-clear-all:hover{background:#fef2f2;color:#b91c1c}.dp-section-header{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.07em;margin-bottom:10px}.dp-section-header-repo-badge{background:#fff7ed;color:#ea580c;border:1px solid #fed7aa;border-radius:20px;padding:1px 8px;font-size:10px;font-weight:600;text-transform:none;letter-spacing:0}.dp-kpi-row{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}@media(max-width:1100px){.dp-kpi-row{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.dp-kpi-row{grid-template-columns:repeat(2,1fr)}}.dp-kpi-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:18px 20px;display:flex;flex-direction:column;gap:6px;box-shadow:0 1px 4px #0000000a;transition:box-shadow .15s}.dp-kpi-card:hover{box-shadow:0 4px 12px #00000014}.dp-kpi-label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.06em}.dp-kpi-value{font-size:28px;font-weight:700;color:#111827;line-height:1.1}.dp-kpi-value.orange{color:#ea580c}.dp-kpi-sub{font-size:12px;color:#9ca3af;margin-top:2px}.dp-kpi-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.dp-kpi-icon.orange-bg{background:#fff7ed;color:#c2410c}.dp-kpi-icon.green-bg{background:#f0fdf4;color:#15803d}.dp-kpi-icon.blue-bg{background:#eff6ff;color:#1d4ed8}.dp-kpi-icon.red-bg{background:#fef2f2;color:#b91c1c}.dp-kpi-icon.purple-bg{background:#faf5ff;color:#6d28d9}.dp-efficiency-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:18px 20px;display:flex;flex-direction:column;gap:6px;box-shadow:0 1px 4px #0000000a;transition:box-shadow .15s}.dp-efficiency-card:hover{box-shadow:0 4px 12px #00000014}.dp-charts-row{display:grid;grid-template-columns:3fr 2fr;gap:16px}@media(max-width:900px){.dp-charts-row{grid-template-columns:1fr}}.dp-charts-row-3{display:grid;grid-template-columns:2fr 2fr 1fr;gap:16px}@media(max-width:1100px){.dp-charts-row-3{grid-template-columns:1fr 1fr}}@media(max-width:700px){.dp-charts-row-3{grid-template-columns:1fr}}.dp-chart-card{background:#ffffffb3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.85);border-radius:16px;padding:20px 22px;box-shadow:0 2px 8px #0000000d,inset 0 1px #ffffffe6}.dp-chart-card--wide{grid-column:1 / -1}.dp-chart-title{font-size:13px;font-weight:600;color:#374151;margin-bottom:16px;display:flex;align-items:center;gap:8px}.dp-pie-legend{display:flex;justify-content:center;gap:16px;margin-top:12px;flex-wrap:wrap}.dp-pie-legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7280}.dp-pie-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.dp-table-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;box-shadow:0 1px 4px #0000000a}.dp-table-header{padding:16px 20px 14px;border-bottom:1px solid #f3f4f6;font-size:13px;font-weight:600;color:#374151}.dp-table{width:100%;border-collapse:collapse;font-size:13px}.dp-table th{padding:10px 16px;text-align:left;font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;background:#f9fafb;border-bottom:1px solid #f3f4f6}.dp-table td{padding:12px 16px;color:#374151;border-bottom:1px solid #f9fafb;vertical-align:middle}.dp-table tr:last-child td{border-bottom:none}.dp-table tr:hover td{background:#fafaf9}.dp-contributor-cell{display:flex;align-items:center;gap:10px}.dp-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#ea580c,#f97316);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:.02em}.dp-rank{font-size:12px;font-weight:700;color:#9ca3af;min-width:24px}.dp-rank.gold{color:#f59e0b}.dp-rank.silver{color:#94a3b8}.dp-rank.bronze{color:#b45309}.dp-score-badge{display:inline-block;padding:2px 8px;border-radius:20px;background:#fff7ed;color:#c2410c;font-size:12px;font-weight:700}.dp-empty-table{text-align:center;padding:40px 16px;color:#9ca3af;font-size:13px}.dp-scope-table-view{display:flex;flex-direction:column;gap:14px}.dp-scope-table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.dp-scope-sprint-select{min-width:180px;padding:7px 32px 7px 12px;border-radius:8px;border:1.5px solid #e5e7eb;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 10px center;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:#111827;font-size:13px;font-weight:600;cursor:pointer;outline:none;transition:border-color .15s,box-shadow .15s}.dp-scope-sprint-select:hover{border-color:#d1d5db;background-color:#f9fafb}.dp-scope-sprint-select:focus{border-color:#fb923c;box-shadow:0 0 0 3px #f973161f;background-color:#fff}.dp-scope-table-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.dp-scope-table-meta-title{font-size:14px;font-weight:700;color:#374151}.dp-scope-table-meta-count{font-size:12px;color:#9ca3af;font-weight:600}.dp-scope-table-wrap{border:1px solid #f1f5f9;border-radius:14px;overflow:hidden;max-height:420px;overflow-y:auto}.dp-scope-issue-key{display:flex;flex-direction:column;gap:4px;font-weight:700;color:#374151}.dp-scope-issue-meta{font-size:11px;font-weight:600;color:#f97316}.dp-scope-issue-summary{color:#374151;font-weight:500}.dp-scope-issue-submeta{margin-top:4px;font-size:12px;color:#9ca3af}.dp-scope-assignee-cell{display:flex;align-items:center;gap:10px}.dp-scope-assignee-avatar{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ffedd5,#fed7aa);color:#c2410c;font-size:11px;font-weight:800;letter-spacing:.03em;flex-shrink:0}.dp-scope-status-badge{display:inline-flex;align-items:center;justify-content:center;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.dp-scope-status-badge.done{background:#dcfce7;color:#15803d}.dp-scope-status-badge.in_progress{background:#dbeafe;color:#1d4ed8}.dp-scope-status-badge.blocked{background:#fee2e2;color:#b91c1c}.dp-scope-status-badge.todo{background:#f3f4f6;color:#6b7280}.dp-tabs{display:flex;align-items:center;gap:0}.dp-tab{display:flex;align-items:center;gap:6px;padding:10px 16px;border:none;border-bottom:2px solid transparent;border-radius:0;background:transparent;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:color .12s,border-color .12s;white-space:nowrap;margin-bottom:-1px}.dp-tab svg{width:14px;height:14px}.dp-tab:hover{color:var(--primary);background:transparent}.dp-tab.active{color:var(--primary);border-bottom-color:var(--primary);background:transparent;box-shadow:none}.dp-status-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600;white-space:nowrap;line-height:1.4}.dp-status-badge.active{background:#dcfce7;color:#15803d}.dp-status-badge.low_activity,.dp-status-badge.inactive,.dp-status-badge.no_activity{background:#f3f4f6;color:#6b7280}.dp-status-distribution{display:flex;flex-direction:column;gap:16px;padding:8px 0}.dp-status-dist-item{display:flex;flex-direction:column;gap:6px}.dp-status-dist-bar{height:10px;background:#f3f4f6;border-radius:5px;overflow:hidden}.dp-status-dist-fill{height:100%;border-radius:5px;transition:width .4s ease;min-width:2px}.dp-status-dist-fill.active{background:#16a34a}.dp-status-dist-fill.low_activity,.dp-status-dist-fill.inactive,.dp-status-dist-fill.no_activity{background:#9ca3af}.dp-status-dist-info{display:flex;align-items:center;justify-content:space-between}.dp-status-dist-count{font-size:14px;font-weight:700;color:#111827}.dp-risk-section{background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;padding:16px 20px;display:flex;flex-direction:column;gap:12px}.dp-risk-item{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;background:#ffffffb3;border-radius:8px;border:1px solid #fde68a}.dp-risk-icon{font-size:16px;line-height:1;flex-shrink:0;margin-top:1px}.dp-risk-content{display:flex;flex-direction:column;gap:2px;min-width:0}.dp-risk-content strong{font-size:13px;font-weight:600;color:#92400e}.dp-risk-names{font-size:12px;color:#b45309;overflow:hidden;text-overflow:ellipsis}.dp-risk-item--carry-over{align-items:flex-start}.dp-carry-over-subtitle{font-size:12px;color:#9ca3af;margin-bottom:14px;margin-top:-4px}.dp-carry-over-table{display:flex;flex-direction:column;gap:0}.dp-carry-over-row{display:grid;grid-template-columns:130px 1fr 56px;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #f3f4f6}.dp-carry-over-row:last-child{border-bottom:none}.dp-carry-over-sprint{color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;font-weight:500}.dp-carry-over-bar-wrap{background:#e5e7eb;border-radius:6px;height:10px;overflow:hidden}.dp-carry-over-bar{display:block;height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:6px;transition:width .4s ease;min-width:2px}.dp-carry-over-bar.high{background:linear-gradient(90deg,#f59e0b,#d97706)}.dp-carry-over-pct{text-align:right;font-weight:700;color:#111827;font-size:13px;white-space:nowrap}.dp-carry-over-count{display:block;font-weight:400;color:#6b7280;font-size:11px;margin-top:1px}.dp-dev-cards{display:flex;flex-direction:column;gap:10px}.dp-dev-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;box-shadow:0 1px 4px #0000000a;transition:box-shadow .15s}.dp-dev-card:hover{box-shadow:0 3px 10px #00000014}.dp-dev-card-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;cursor:pointer;-webkit-user-select:none;user-select:none}.dp-dev-card-left{display:flex;align-items:center;gap:12px;min-width:0}.dp-dev-card-right{display:flex;align-items:center;gap:16px;flex-shrink:0}.dp-dev-rank{width:28px;text-align:center;flex-shrink:0}.dp-rank-medal{font-size:18px;line-height:1}.dp-dev-rank-num{font-size:12px;font-weight:700;color:#9ca3af}.dp-avatar-lg{width:38px;height:38px;font-size:13px}.dp-dev-info{display:flex;flex-direction:column;gap:4px;min-width:0}.dp-dev-name{font-size:14px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center}.dp-dev-meta{display:flex;align-items:center;gap:6px}.dp-dev-meta-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600}.dp-dev-meta-pill.repos{background:#eff6ff;color:#1d4ed8}.dp-dev-stat{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.dp-dev-stat-val{font-size:20px;font-weight:700;color:#ea580c;line-height:1.1}.dp-dev-stat-lbl{font-size:11px;color:#9ca3af;font-weight:500;text-transform:uppercase;letter-spacing:.04em}.dp-expand-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;color:#6b7280;transition:background .12s,color .12s,transform .2s}.dp-expand-btn:hover{background:#f3f4f6;color:#374151}.dp-expand-btn.open svg{transform:rotate(180deg)}.dp-dev-repos{border-top:1px solid #f3f4f6;padding:14px 18px 16px;background:#fafaf9}.dp-dev-repos-label{font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px}.dp-repo-card{padding:20px}.dp-repo-list{display:flex;flex-direction:column;gap:0;border:1px solid rgba(249,115,22,.12);border-radius:12px;overflow:hidden}.dp-repo-row{display:grid;grid-template-columns:200px 1fr 52px;align-items:center;gap:10px;margin-bottom:8px}.dp-repo-row{padding:9px 14px;border-bottom:1px solid #f3f4f6;transition:background .15s;margin-bottom:0}.dp-repo-row:last-child{border-bottom:none}.dp-repo-row:hover{background:#f9731608}.dp-repo-row-name{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dp-repo-color-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:#f97316}.dp-repo-name-text{font-size:12px;font-weight:500;color:#374151;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dp-repo-bar-wrap{background:#f3f4f6cc;border-radius:6px;height:7px;overflow:hidden;margin:0 12px}.dp-repo-bar{height:100%;border-radius:6px;background:linear-gradient(90deg,#f97316,#fdba74);transition:width .5s cubic-bezier(.4,0,.2,1);min-width:6px}.dp-repo-count{font-size:12px;font-weight:700;color:#f97316;text-align:right}.dp-sprint-active-badge{display:inline-flex;align-items:center;gap:4px;margin-left:10px;padding:2px 10px;border-radius:20px;background:#dcfce7;color:#15803d;font-size:11px;font-weight:600;text-transform:none;letter-spacing:0;vertical-align:middle}.dp-jira-pills{display:flex;flex-wrap:wrap;gap:4px}.dp-jira-pill{display:inline-block;padding:2px 7px;border-radius:20px;font-size:11px;font-weight:600;white-space:nowrap}.dp-jira-pill.done{background:#dcfce7;color:#15803d}.dp-jira-pill.progress{background:#fef9c3;color:#92400e}.dp-jira-pill.todo{background:#f3f4f6;color:#374151}.dp-jira-none{color:#9ca3af}.dp-dev-meta-pill.jira{background:#eff6ff;color:#1d4ed8}.dp-jira-breakdown{display:flex;flex-direction:column;gap:10px}.dp-jira-stat-row{display:flex;gap:10px}.dp-jira-stat-block{flex:1;display:flex;flex-direction:column;align-items:center;padding:10px 8px;border-radius:10px;gap:2px}.dp-jira-stat-block.done{background:#f0fdf4}.dp-jira-stat-block.progress{background:#fefce8}.dp-jira-stat-block.todo{background:#f9fafb}.dp-jira-stat-num{font-size:22px;font-weight:700;line-height:1.1}.dp-jira-stat-block.done .dp-jira-stat-num{color:#15803d}.dp-jira-stat-block.progress .dp-jira-stat-num{color:#92400e}.dp-jira-stat-block.todo .dp-jira-stat-num{color:#374151}.dp-jira-stat-lbl{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.dp-jira-progress-bar{display:flex;height:8px;border-radius:4px;overflow:hidden;background:#f3f4f6}.dp-jira-progress-seg.done{background:#16a34a}.dp-jira-progress-seg.progress{background:#eab308}.dp-jira-progress-seg.todo{background:#d1d5db}.dp-dev-stat-val.green{color:#15803d}.dp-no-repo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:80px 24px;text-align:center;color:#9ca3af;font-size:14px}.dp-no-repo h3{font-size:15px;font-weight:600;color:#374151;margin:0}.dp-detail-panel{display:flex;flex-direction:column;gap:16px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.dp-detail-section{display:flex;flex-direction:column;gap:8px}.dp-pr-card{padding:20px;display:flex;flex-direction:column;height:100%;box-sizing:border-box;overflow:hidden}.dp-pr-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;border:1px solid rgba(249,115,22,.14);border-radius:12px;display:flex;flex-direction:column}.dp-pr-scroll::-webkit-scrollbar{width:4px}.dp-pr-scroll::-webkit-scrollbar-track{background:transparent}.dp-pr-scroll::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.dp-pr-scroll::-webkit-scrollbar-thumb:hover{background:#9ca3af}.dp-pr-scroll-item{display:flex;flex-direction:column;gap:4px;padding:10px 14px;border-bottom:1px solid #f3f4f6;transition:background .15s}.dp-pr-scroll-item:last-child{border-bottom:none}.dp-pr-scroll-item:hover{background:#f9731608}.dp-pr-scroll-top{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.dp-pr-scroll-title{font-size:12px;font-weight:500;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dp-pr-repo-pill{display:inline-flex;align-items:center;font-size:10px;font-weight:500;color:#6b7280;background:#f3f4f6;padding:2px 8px;border-radius:20px;white-space:nowrap;border:1px solid #e5e7eb}.dp-pr-list{display:flex;flex-direction:column;gap:6px}.dp-pr-list-item{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:12px}.dp-pr-state{display:inline-flex;padding:2px 7px;border-radius:20px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.dp-pr-state.merged{background:#10b9811a;color:#059669;border:1px solid rgba(16,185,129,.25)}.dp-pr-state.open{background:#0ea5e91a;color:#0369a1;border:1px solid rgba(14,165,233,.25)}.dp-pr-state.declined{background:#ef44441a;color:#b91c1c;border:1px solid rgba(239,68,68,.25)}.dp-pr-state.superseded{background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb}.dp-pr-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#111827;font-weight:500}.dp-pr-title-cell{display:block;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.dp-pr-repo{font-size:11px;color:#6b7280;flex-shrink:0;background:#f3f4f6;padding:1px 6px;border-radius:4px}.dp-pr-date{font-size:11px;color:#9ca3af;flex-shrink:0;white-space:nowrap}.dp-pr-count-badge{display:inline-flex;align-items:center;justify-content:center;background:#dbeafe;color:#1d4ed8;font-size:10px;font-weight:700;border-radius:20px;padding:1px 7px;margin-left:6px;vertical-align:middle}.dp-pr-days-open{font-size:11px;font-weight:600;color:#6b7280;background:#f3f4f6;padding:2px 7px;border-radius:20px;flex-shrink:0;white-space:nowrap}.dp-pr-days-open.stale{background:#fef3c7;color:#b45309}.dp-issue-list{display:flex;flex-direction:column;gap:6px}.dp-issue-list-item{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:12px}.dp-recent-issues-card{padding:20px;display:flex;flex-direction:column;height:100%;box-sizing:border-box;overflow:hidden}.dp-recent-issues-scroll{display:flex;flex-direction:column;gap:0;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;border:1px solid rgba(14,165,233,.14);border-radius:12px}.dp-recent-issues-scroll::-webkit-scrollbar{width:4px}.dp-recent-issues-scroll::-webkit-scrollbar-track{background:transparent}.dp-recent-issues-scroll::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.dp-recent-issues-scroll::-webkit-scrollbar-thumb:hover{background:#9ca3af}.dp-recent-issue-item{display:flex;flex-direction:column;gap:4px;padding:10px 14px;border-bottom:1px solid #f3f4f6;transition:background .15s;cursor:default}.dp-recent-issue-item:last-child{border-bottom:none}.dp-recent-issue-item:first-child{border-radius:12px 12px 0 0}.dp-recent-issue-item:hover{background:#0ea5e908}.dp-recent-issue-top{display:flex;align-items:center;gap:8px}.dp-recent-issue-summary{font-size:12px;font-weight:500;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-left:1px}.dp-issue-key{font-weight:700;color:#3b82f6;flex-shrink:0;font-size:11px}.dp-issue-summary{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#111827;font-weight:500}.dp-issue-status{display:inline-flex;padding:2px 8px;border-radius:20px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;white-space:nowrap;background:#f3f4f6;color:#374151}.dp-issue-status.done{background:#10b9811a;color:#059669;border:1px solid rgba(16,185,129,.25)}.dp-issue-status.in-progress{background:#f973161a;color:#c2410c;border:1px solid rgba(249,115,22,.25)}.dp-issue-status.to-do{background:#f3f4f6;color:#374151;border:1px solid #e5e7eb}.dp-issue-points{font-size:11px;font-weight:700;color:#8b5cf6;background:#faf5ff;padding:1px 6px;border-radius:10px;flex-shrink:0}.dp-days-open-badge{display:inline-flex;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:700}.dp-days-open-badge.warning{background:#fef9c3;color:#92400e}.dp-days-open-badge.critical{background:#fee2e2;color:#b91c1c}.dp-link-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;color:#6b7280;transition:background .12s,color .12s}.dp-link-icon:hover{background:#f3f4f6;color:#374151}.dp-roster-warning{color:#b91c1c;font-weight:600}.dp-row-dimmed{opacity:.55}.dp-row-dimmed:hover{opacity:.8}.dp-member-nickname{font-size:11px;color:#9ca3af;margin-top:1px}.dp-avatar-img{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0}.dp-issue-type-wrap{display:flex;flex-direction:column;gap:4px}.dp-issue-type-legend{display:flex;flex-direction:column;gap:5px;padding:0 4px}.dp-issue-type-legend-row{display:grid;grid-template-columns:10px 1fr auto auto;align-items:center;gap:8px;font-size:12px}.dp-issue-type-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.dp-issue-type-label{color:#374151;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dp-issue-type-count{color:#111827;font-weight:600;font-size:12px}.dp-issue-type-pct{color:#9ca3af;font-size:11px;min-width:32px;text-align:right}.dp-jira-type-list{display:flex;flex-direction:column;gap:10px;padding:8px 0}.dp-jira-type-row{display:flex;align-items:center;gap:10px}.dp-jira-type-name{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#374151;min-width:90px;flex-shrink:0}.dp-jira-type-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dp-jira-type-bar-wrap{flex:1;height:8px;background:#f3f4f6;border-radius:4px;overflow:hidden}.dp-jira-type-bar{height:100%;border-radius:4px;transition:width .3s ease}.dp-jira-type-count{font-size:12px;font-weight:700;color:#111827;min-width:28px;text-align:right}.dp-bug-feature-ratio{margin-top:6px;padding-top:8px;border-top:1px solid #f3f4f6;font-size:12px;color:#6b7280}.dp-chart-sub{font-size:11px;font-weight:400;color:#9ca3af;margin-left:6px}.dp-workload-list{display:flex;flex-direction:column;gap:7px;padding-top:4px}.dp-workload-row{display:grid;grid-template-columns:130px 1fr 32px;align-items:center;gap:10px}.dp-workload-name{font-size:12px;font-weight:500;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dp-workload-bar-wrap{background:#e5e7eb;border-radius:6px;height:8px;overflow:hidden}.dp-workload-bar{display:block;height:100%;background:#3b82f6;border-radius:6px;transition:width .3s ease;min-width:2px}.dp-workload-bar.high{background:#ef4444}.dp-workload-count{font-size:12px;font-weight:700;color:#111827;text-align:right}.dp-resdev-list{display:flex;flex-direction:column;gap:0}.dp-resdev-row{padding:9px 0;border-bottom:1px solid #f3f4f6}.dp-resdev-row:last-child{border-bottom:none}.dp-resdev-top{display:grid;grid-template-columns:130px 1fr 40px;align-items:center;gap:10px}.dp-resdev-name{font-size:12px;font-weight:500;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dp-resdev-bar-wrap{background:#e5e7eb;border-radius:6px;height:8px;overflow:hidden}.dp-resdev-bar{display:block;height:100%;background:#6366f1;border-radius:6px;transition:width .3s ease;min-width:2px}.dp-resdev-bar.slow{background:#ef4444}.dp-resdev-days{font-size:12px;font-weight:700;color:#374151;text-align:right;white-space:nowrap}.dp-resdev-days.slow{color:#ef4444}.dp-resdev-types{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px;padding-left:0}.dp-resdev-type-pill{font-size:10px;font-weight:500;padding:1px 7px;border-radius:99px;border:1px solid;white-space:nowrap}.dp-jira-alert-row{display:flex;gap:16px;margin-top:12px}.dp-jira-alert-card{display:flex;flex-direction:column;gap:2px;padding:14px 20px;border-radius:12px;flex:1}.dp-jira-alert-card.overdue{background:#fef2f2;border:1px solid #fecaca}.dp-jira-alert-card.unassigned{background:#fffbeb;border:1px solid #fde68a}.dp-jira-alert-num{font-size:24px;font-weight:700}.dp-jira-alert-card.overdue .dp-jira-alert-num{color:#dc2626}.dp-jira-alert-card.unassigned .dp-jira-alert-num{color:#d97706}.dp-jira-alert-label{font-size:12px;font-weight:700;color:#374151}.dp-jira-alert-sub{font-size:11px;color:#9ca3af}.dp-date-range{display:flex;align-items:center;gap:6px}.dp-date-input{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:4px 8px;font-size:12px;color:#374151;outline:none;font-family:inherit}.dp-date-input:focus{border-color:#ea580c;box-shadow:0 0 0 2px #ea580c1a}.dp-date-sep{font-size:11px;color:#9ca3af}.dp-sync-status{display:flex;align-items:center;gap:6px;margin-left:auto}.dp-sync-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.dp-sync-dot[data-status=completed]{background:#16a34a}.dp-sync-dot[data-status=running]{background:#eab308;animation:dp-spin 1s linear infinite}.dp-sync-dot[data-status=failed]{background:#ef4444}.dp-sync-dot[data-status=idle]{background:#9ca3af}.dp-sync-text{font-size:11px;color:#6b7280}.dp-sync-btn{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:3px 10px;font-size:11px;color:#374151;cursor:pointer;font-family:inherit;transition:all .15s}.dp-sync-btn:hover{border-color:#ea580c;color:#ea580c}.dp-sync-btn:disabled{opacity:.5;cursor:not-allowed}.dp-manage-btn{display:flex;align-items:center;gap:5px;background:#1e293b;border:1px solid #334155;border-radius:6px;padding:4px 12px;font-size:12px;color:#cbd5e1;cursor:pointer;font-family:inherit;transition:all .15s;white-space:nowrap;flex-shrink:0}.dp-manage-btn:hover{background:#334155;color:#f1f5f9;border-color:#475569}.dp-modal-overlay{position:fixed;inset:0;background:#0000008c;z-index:3000;display:flex;align-items:center;justify-content:center}.dp-modal{background:#1a1f2e;border:1px solid #2d3748;border-radius:12px;width:540px;max-width:95vw;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080}.dp-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 14px;border-bottom:1px solid #2d3748}.dp-modal-title{font-size:15px;font-weight:600;color:#f1f5f9}.dp-modal-close{background:none;border:none;color:#6b7280;cursor:pointer;font-size:16px;padding:2px 6px;border-radius:4px;line-height:1}.dp-modal-close:hover{color:#f1f5f9;background:#2d3748}.dp-modal-body{flex:1;overflow-y:auto;padding:0 20px 8px}.dp-modal-section{padding:16px 0;border-bottom:1px solid #2d3748}.dp-modal-section:last-child{border-bottom:none}.dp-modal-section-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#e2e8f0;margin-bottom:6px}.dp-modal-hint{font-size:11px;font-weight:400;color:#6b7280;margin-left:auto}.dp-modal-desc{font-size:12px;color:#6b7280;margin:0 0 10px;line-height:1.5}.dp-modal-checklist{display:flex;flex-direction:column;gap:2px;max-height:200px;overflow-y:auto;border:1px solid #2d3748;border-radius:8px;padding:4px}.dp-modal-check-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:6px;cursor:pointer;transition:background .1s}.dp-modal-check-row:hover{background:#1e293b}.dp-modal-check-row input[type=checkbox]{accent-color:#ea580c;flex-shrink:0}.dp-modal-check-label{font-size:13px;color:#e2e8f0;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dp-modal-check-sub{font-size:11px;color:#6b7280;flex-shrink:0}.dp-modal-empty{font-size:12px;color:#4b5563;padding:12px 8px;text-align:center}.dp-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid #2d3748}.dp-modal-cancel{background:none;border:1px solid #374151;border-radius:6px;padding:6px 16px;font-size:13px;color:#9ca3af;cursor:pointer;font-family:inherit}.dp-modal-cancel:hover{border-color:#6b7280;color:#e2e8f0}.dp-modal-save{background:#ea580c;border:none;border-radius:6px;padding:6px 18px;font-size:13px;color:#fff;cursor:pointer;font-family:inherit;font-weight:500;transition:background .15s}.dp-modal-save:hover{background:#c2410c}.dp-modal-save:disabled{opacity:.5;cursor:not-allowed}.dp-tab-ai{border-left:1px solid #e5e7eb;margin-left:4px;padding-left:12px}.dp-tab-ai.active{color:#ea580c}.dp-ai-tab{padding:24px;display:flex;flex-direction:column;gap:20px}.dp-ai-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.dp-ai-header-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dp-ai-title{font-size:15px;font-weight:600;color:#111827}.dp-ai-meta{font-size:11px;color:#9ca3af;margin-left:4px}.dp-ai-pdf-btn{display:flex;align-items:center;gap:6px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:7px;padding:7px 14px;font-size:13px;font-weight:500;cursor:pointer;font-family:inherit;transition:background .15s,border-color .15s}.dp-ai-pdf-btn:hover{background:#f9fafb;border-color:#9ca3af}.dp-ai-generate-btn{display:flex;align-items:center;gap:6px;background:#ea580c;color:#fff;border:none;border-radius:7px;padding:7px 16px;font-size:13px;font-weight:500;cursor:pointer;font-family:inherit;transition:background .15s}.dp-ai-generate-btn:hover{background:#c2410c}.dp-ai-generate-btn:disabled{opacity:.6;cursor:not-allowed}.dp-ai-btn-spinner{width:12px;height:12px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:dp-spin .7s linear infinite}.dp-ai-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:80px 24px;color:#9ca3af;text-align:center}.dp-ai-empty p{margin:0;font-size:14px;color:#6b7280}.dp-ai-empty-sub{font-size:12px!important;color:#9ca3af!important;max-width:400px}.dp-ai-generating{display:flex;flex-direction:column;align-items:center;gap:14px;padding:60px 24px;color:#6b7280}.dp-ai-generating p{margin:0;font-size:14px}.dp-ai-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:20px 24px}.dp-ai-section-label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px}.dp-ai-summary-text{font-size:14px;color:#374151;line-height:1.65;margin:0}.dp-ai-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:900px){.dp-ai-cols{grid-template-columns:1fr}}.dp-ai-col{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:10px}.dp-ai-col-header{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#374151;padding-bottom:8px;border-bottom:1px solid #f3f4f6}.dp-ai-col-count{margin-left:auto;background:#f3f4f6;color:#6b7280;border-radius:99px;padding:1px 7px;font-size:11px;font-weight:600}.dp-ai-col-empty{font-size:12px;color:#9ca3af;padding:8px 0;text-align:center}.dp-ai-item{background:#fafafa;border:1px solid #f3f4f6;border-radius:7px;padding:10px 12px;display:flex;flex-direction:column;gap:5px}.dp-ai-item-top{display:flex;align-items:center;gap:7px}.dp-ai-item-title{font-size:13px;font-weight:500;color:#111827;line-height:1.3}.dp-ai-badge{display:inline-block;font-size:10px;font-weight:600;border-radius:4px;padding:1px 6px;text-transform:capitalize;white-space:nowrap;flex-shrink:0}.dp-ai-item-detail{font-size:12px;color:#6b7280;margin:0;line-height:1.5}.dp-ai-error{display:flex;align-items:center;gap:8px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:12px 16px;font-size:13px;color:#dc2626}.dp-ai-controls{display:flex;align-items:center;gap:10px;flex-shrink:0}.dp-ai-mode-wrap{position:relative}.dp-ai-mode-trigger{display:flex;align-items:center;gap:7px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:7px 12px;font-size:13px;font-weight:500;color:#374151;font-family:inherit;cursor:pointer;outline:none;transition:border-color .15s,box-shadow .15s;white-space:nowrap}.dp-ai-mode-trigger:hover{border-color:#ea580c}.dp-ai-mode-trigger.open{border-color:#ea580c;box-shadow:0 0 0 3px #ea580c18}.dp-ai-mode-trigger:disabled{opacity:.5;cursor:not-allowed}.dp-ai-mode-trigger-icon{display:flex;align-items:center;color:#ea580c}.dp-ai-mode-chevron-icon{color:#9ca3af;transition:transform .2s;flex-shrink:0}.dp-ai-mode-chevron-icon.flipped{transform:rotate(180deg)}.dp-ai-mode-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:200;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0000001a,0 2px 6px #0000000f;padding:4px;min-width:220px;animation:dp-dropdown-in .15s ease}.dp-ai-mode-option{display:flex;align-items:center;gap:10px;width:100%;background:none;border:none;border-radius:7px;padding:9px 10px;cursor:pointer;font-family:inherit;text-align:left;transition:background .12s}.dp-ai-mode-option:hover,.dp-ai-mode-option.selected{background:#fff5f0}.dp-ai-mode-opt-icon{display:flex;align-items:center;color:#ea580c;flex-shrink:0}.dp-ai-mode-opt-text{display:flex;flex-direction:column;flex:1}.dp-ai-mode-opt-label{font-size:13px;font-weight:500;color:#111827}.dp-ai-mode-opt-desc{font-size:11px;color:#9ca3af;margin-top:1px}.dp-ai-mode-desc{display:block;font-size:11px;color:#9ca3af;margin-top:1px}.dp-ai-bb-dashboard{display:flex;flex-direction:column;gap:16px}.dp-ai-section-divider{display:flex;align-items:center;gap:12px;margin:4px 0 0;color:#9ca3af;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em}.dp-ai-section-divider:before,.dp-ai-section-divider:after{content:"";flex:1;height:1px;background:#e5e7eb}.dp-ai-leaderboard{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px 20px;box-shadow:0 1px 4px #0000000a}.dp-ai-lb-table{width:100%;border-collapse:collapse;font-size:13px}.dp-ai-lb-table thead th{text-align:left;font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;padding:0 10px 10px 0;border-bottom:1px solid #f3f4f6}.dp-ai-lb-row td{padding:8px 10px 8px 0;border-bottom:1px solid #f9fafb;vertical-align:middle;color:#374151}.dp-ai-lb-row:last-child td{border-bottom:none}.dp-ai-lb-rank{font-size:12px;font-weight:700;color:#9ca3af;width:28px}.dp-ai-lb-name{font-weight:500;color:#111827;max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dp-ai-lb-commits{width:200px}.dp-ai-lb-bar-wrap{display:flex;align-items:center;gap:8px;position:relative;height:22px}.dp-ai-lb-bar{position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,#fed7aa,#fdba74);border-radius:4px;min-width:4px}.dp-ai-lb-bar-wrap span{position:relative;font-size:12px;font-weight:600;color:#374151;padding-left:6px}.dp-ai-repo-cards{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin;scrollbar-color:#e5e7eb transparent}.dp-ai-repo-card{min-width:168px;flex-shrink:0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:14px 16px;box-shadow:0 1px 3px #0000000a;transition:box-shadow .15s}.dp-ai-repo-card:hover{box-shadow:0 3px 10px #00000014}.dp-ai-repo-card-header{display:flex;align-items:center;gap:7px;margin-bottom:10px}.dp-ai-repo-health{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dp-ai-repo-name{font-size:12px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px}.dp-ai-repo-stats{display:flex;flex-direction:column;gap:3px;font-size:11px;color:#6b7280}.dp-ai-repo-stats strong{color:#111827;font-weight:700}.si-page{padding:0;background:#f7f7f6;height:100%;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1e293b;display:flex;flex-direction:column}.si-topbar{display:flex;align-items:center;gap:12px;padding:10px 20px;background:#ffffffd9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-bottom:1px solid #e5e7eb;flex-shrink:0;position:sticky;top:0;z-index:100}.si-topbar-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#111827}.si-topbar-title svg{color:#ea580c;flex-shrink:0}.si-topbar-spacer{flex:1}.si-sprint-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.si-sprint-badge--active{background:#dcfce7;color:#15803d}.si-sprint-badge--closed{background:#f1f5f9;color:#64748b}.si-sprint-badge--future{background:#e0f2fe;color:#0369a1}.si-dropdown{position:relative;min-width:260px}.si-dropdown-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:38px;padding:0 12px 0 14px;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;cursor:pointer;font-size:13px;color:#1e293b;transition:border-color .15s,box-shadow .15s;box-shadow:0 1px 3px #0000000d}.si-dropdown-trigger:hover,.si-dropdown-trigger--open{border-color:#f97316;box-shadow:0 0 0 3px #f973161a}.si-dropdown-selected{display:flex;align-items:center;gap:7px;flex:1;min-width:0}.si-dropdown-proj{display:inline-flex;align-items:center;padding:2px 7px;border-radius:5px;background:#f1f5f9;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.04em;white-space:nowrap;flex-shrink:0}.si-dropdown-name{font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.si-dropdown-state-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.si-dropdown-placeholder{color:#94a3b8}.si-dropdown-chevron{width:16px;height:16px;color:#94a3b8;flex-shrink:0;transition:transform .2s}.si-dropdown-chevron--open{transform:rotate(180deg);color:#f97316}.si-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;min-width:280px;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 32px #0000001f,0 2px 8px #0000000f;z-index:200;overflow:hidden;animation:si-dropdown-in .12s ease}@keyframes si-dropdown-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.si-dropdown-group{padding:4px 0}.si-dropdown-group+.si-dropdown-group{border-top:1px solid #f1f5f9}.si-dropdown-group-label{padding:8px 14px 4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8}.si-dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 14px;background:none;border:none;cursor:pointer;font-size:13px;color:#374151;text-align:left;transition:background .1s}.si-dropdown-item:hover{background:#f8fafc}.si-dropdown-item--active{background:#fff7ed;color:#ea580c}.si-dropdown-item--active:hover{background:#ffedd5}.si-dropdown-item-name{flex:1;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.si-dropdown-item-badge{display:inline-flex;padding:2px 7px;border-radius:10px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#fff;white-space:nowrap;flex-shrink:0;opacity:.85}.si-dropdown-check{width:14px;height:14px;color:#f97316;flex-shrink:0}.si-pdf-btn{display:inline-flex;align-items:center;gap:6px;padding:0 14px;height:36px;background:#fff;color:#111827;border:1.5px solid #e5e7eb;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:border-color .15s,color .15s,background .15s;white-space:nowrap;flex-shrink:0}.si-pdf-btn:hover{border-color:#f97316;color:#f97316;background:#fff8f5}@media print{.si-pdf-btn{display:none!important}}.si-generate-btn{display:inline-flex;align-items:center;gap:6px;padding:0 16px;height:36px;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .15s,transform .1s;white-space:nowrap}.si-generate-btn:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}.si-generate-btn:disabled{opacity:.55;cursor:not-allowed}.si-generate-btn--lg{height:44px;font-size:15px;padding:0 24px;margin-top:16px}.si-tab-bar{display:flex;gap:0;background:#ffffffe6;border-bottom:1px solid #e5e7eb;padding:0 20px;flex-shrink:0;position:sticky;top:45px;z-index:99}.si-tab-btn{display:inline-flex;align-items:center;gap:6px;padding:12px 18px;border:none;border-bottom:2px solid transparent;background:transparent;border-radius:0;font-size:13px;font-weight:500;color:#64748b;cursor:pointer;transition:color .15s,border-color .15s;position:relative;margin-bottom:-1px}.si-tab-btn:hover{color:#1e293b}.si-tab-btn--active{color:#f97316;font-weight:600;border-bottom-color:#f97316}.si-tab-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;display:inline-block}.si-tab-content{display:flex;flex-direction:column;gap:20px;padding:24px 28px}.si-kpi-row{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.si-kpi-row--4{grid-template-columns:repeat(4,1fr)}@media(max-width:1200px){.si-kpi-row{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.si-kpi-row,.si-kpi-row--4{grid-template-columns:repeat(2,1fr)}}.si-kpi-card{background:#fff;border-radius:16px;padding:18px 20px;border:1px solid #efefef;box-shadow:0 2px 12px #0000000f}.si-kpi-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#9ca3af;margin-bottom:8px}.si-kpi-value{font-size:28px;font-weight:700;color:#111827;line-height:1}.si-kpi-value--green{color:#16a34a}.si-kpi-value--red{color:#dc2626}.si-kpi-value--yellow{color:#d97706}.si-kpi-sub{font-size:11px;color:#9ca3af;margin-top:5px}.si-anomaly-row{display:flex;flex-wrap:wrap;gap:8px}.si-anomaly-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;font-size:11px;font-weight:600;cursor:default}.si-anomaly-badge--high{background:#fee2e2;color:#b91c1c}.si-anomaly-badge--medium{background:#fef9c3;color:#92400e}.si-anomaly-badge--low{background:#e0f2fe;color:#0ea5e9}.si-anomaly-badge--info{background:#f1f5f9;color:#64748b}.si-charts-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:900px){.si-charts-row{grid-template-columns:1fr}}.si-chart-card{background:#fff;border-radius:16px;padding:22px 22px 16px;border:1px solid #efefef;box-shadow:0 2px 12px #0000000f;position:relative}.si-chart-card--wide{grid-column:1 / -1}.si-chart-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:4px}.si-chart-controls{display:flex;align-items:center;gap:6px;flex-shrink:0}.si-chart-type-toggle{display:flex;align-items:center;gap:2px;background:#f3f4f6;border-radius:8px;padding:3px;flex-shrink:0}.si-chart-type-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:#9ca3af;cursor:pointer;transition:background .12s,color .12s}.si-chart-type-btn:hover{color:#374151;background:#0000000d}.si-chart-type-btn.active{background:#fff;color:#f97316;box-shadow:0 1px 4px #0000001a}.si-chart-enlarge-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1.5px solid #e5e7eb;border-radius:8px;background:#fff;color:#6b7280;cursor:pointer;transition:background .12s,color .12s,border-color .12s;flex-shrink:0}.si-chart-enlarge-btn:hover{background:#f9fafb;color:#f97316;border-color:#f97316}.si-chart-modal-backdrop{position:fixed;inset:0;background:#00000073;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.si-chart-modal{background:#fffffffa;border:1px solid #e5e7eb;border-radius:20px;padding:28px 28px 20px;width:min(860px,96vw);animation:si-modal-in .18s ease;box-shadow:0 24px 64px #0000002e}@keyframes si-modal-in{0%{opacity:0;transform:scale(.96) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.si-chart-modal-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:4px}.si-chart-title{font-size:15px;font-weight:700;color:#111827;margin-bottom:2px}.si-chart-subtitle{font-size:12px;color:#9ca3af;margin-bottom:14px}.si-chart-legend{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.si-chart-legend-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:20px;font-size:12px;font-weight:600;border:none}.si-chart-legend-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.si-legend-pill--tip{position:relative;cursor:default}.si-legend-pill--tip:after{content:"?";display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;background:currentColor;color:#fff;font-size:9px;font-weight:700;opacity:.45;margin-left:4px;flex-shrink:0;transition:opacity .15s}.si-legend-pill--tip:hover:after{opacity:.75}.si-legend-tip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);background:#1f2937;color:#f9fafb;font-size:12px;font-weight:400;line-height:1.5;padding:10px 13px;border-radius:10px;width:240px;white-space:normal;pointer-events:none;opacity:0;transition:opacity .15s,transform .15s;box-shadow:0 8px 24px #0000002e;z-index:100;text-align:left}.si-legend-tip strong{display:block;font-size:12px;font-weight:700;margin-bottom:4px;color:#fff}.si-legend-tip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1f2937}.si-legend-pill--tip:hover .si-legend-tip{opacity:1;transform:translate(-50%) translateY(0)}.si-empty-chart{height:220px;display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:13px}.si-table-card{background:#fff;border-radius:16px;border:1px solid #efefef;box-shadow:0 2px 12px #0000000f;overflow:hidden}.si-table-scroll{overflow-x:auto;width:100%}.si-table-title{padding:16px 20px 14px;font-size:15px;font-weight:700;color:#111827;border-bottom:1px solid #f3f4f6}.si-table-toolbar{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid #f3f4f6;flex-wrap:wrap}.si-table-title-inline{font-size:15px;font-weight:700;color:#111827;flex:1;min-width:120px}.si-search-input{height:32px;padding:0 10px;border:1.5px solid #e2e8f0;border-radius:7px;font-size:13px;color:#374151;background:#f8fafc;outline:none;width:200px;transition:border-color .15s}.si-search-input:focus{border-color:#f97316;background:#fff}.si-result-count{font-size:12px;color:#94a3b8;white-space:nowrap}.si-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.si-sortable:hover{color:#f97316}.si-empty-row{text-align:center;padding:24px!important;color:#94a3b8;font-size:13px}.si-chart-notice{font-size:11px;color:#94a3b8;margin-bottom:8px;font-style:italic}.si-table{width:100%;border-collapse:collapse;font-size:13px;min-width:900px}.si-table thead th{padding:10px 14px;text-align:left;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#9ca3af;background:#fafafa;border-bottom:1.5px solid #f0f0f0;white-space:nowrap;position:sticky;top:0;z-index:1}.si-table thead th.si-num,.si-table tbody td.si-num{text-align:right}.si-table tbody tr{border-bottom:1px solid #f5f5f5;transition:background .12s}.si-table tbody tr:last-child{border-bottom:none}.si-table tbody tr:hover{background:#fdf8f5}.si-table tbody td{padding:12px 14px;color:#374151;vertical-align:middle}.si-sprint-name-cell{font-weight:600;color:#111827;white-space:nowrap;min-width:120px;max-width:180px;overflow:hidden;text-overflow:ellipsis}.si-pct-cell{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.si-pct-track{width:44px;height:5px;border-radius:3px;background:#f3f4f6;overflow:hidden;flex-shrink:0}.si-pct-fill{height:100%;border-radius:3px;transition:width .3s ease}.si-count-high{display:inline-flex;align-items:center;justify-content:center;min-width:26px;padding:2px 7px;border-radius:8px;background:#fef3c7;color:#92400e;font-weight:700;font-size:12px}.si-count-critical{display:inline-flex;align-items:center;justify-content:center;min-width:26px;padding:2px 7px;border-radius:8px;background:#fee2e2;color:#b91c1c;font-weight:700;font-size:12px}.si-health-bar-wrap{display:flex;align-items:center;gap:8px;min-width:160px}.si-health-bar-track{flex:1;min-width:60px;height:6px;border-radius:3px;background:#f3f4f6;overflow:hidden}.si-health-bar{height:6px;border-radius:3px;transition:width .3s ease}.si-issue-key{font-family:SF Mono,Fira Code,monospace;font-size:12px;color:#0ea5e9;font-weight:600}.si-issue-summary{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#374151}.si-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500;background:#f1f5f9;color:#475569}.si-status-badge{display:inline-flex;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500;background:#fef9c3;color:#92400e}.si-dev-name{font-weight:500}.si-member-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:10px;font-weight:700;margin-left:6px;cursor:default}.si-member-badge--overload{background:#fee2e2;color:#b91c1c}.si-member-badge--zero{background:#f1f5f9;color:#94a3b8}.si-pct{font-weight:700;font-size:12.5px}.si-pct--good{color:#16a34a}.si-pct--mid{color:#d97706}.si-pct--low{color:#dc2626}.si-bug-count{display:inline-flex;padding:1px 7px;border-radius:10px;background:#fee2e2;color:#b91c1c;font-size:12px;font-weight:600}.si-status-done{color:#16a34a;font-weight:600;font-size:12px}.si-status-inprog{color:#d97706;font-weight:500;font-size:12px}.si-status-notstarted{color:#94a3b8;font-weight:500;font-size:12px}.si-status-empty{color:#cbd5e1;font-size:12px}.si-ai-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 32px;text-align:center;color:#64748b}.si-ai-empty-icon{font-size:40px;margin-bottom:16px;color:#f97316}.si-ai-empty h3{font-size:18px;font-weight:600;color:#1e293b;margin:0 0 8px}.si-ai-empty p{font-size:14px;color:#64748b;margin:0}.si-ai-panel{display:flex;flex-direction:column;gap:18px}.si-ai-meta{font-size:12px;color:#94a3b8;text-align:right}.si-ai-card{background:#fff;border-radius:16px;padding:22px 24px;border:1px solid #efefef;box-shadow:0 2px 12px #0000000f}.si-ai-card-title-row{display:flex;align-items:center;gap:8px;margin-bottom:10px}.si-ai-card-title-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;flex-shrink:0}.si-ai-card-title{font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.07em;margin-bottom:0}.si-ai-exec{font-size:14px;line-height:1.7;color:#374151;margin:0}.si-ai-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media(max-width:900px){.si-ai-3col{grid-template-columns:1fr}}.si-ai-list-card{background:#fff;border-radius:14px;padding:18px 20px;border:1px solid #e5e7eb;box-shadow:0 1px 4px #0000000d}.si-ai-list-title{font-size:12px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.07em;margin-bottom:10px}.si-ai-list-card ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.si-ai-list-card ul li{font-size:13px;line-height:1.5;color:#374151;padding-left:14px;position:relative}.si-ai-list-card--green ul li:before{content:"•";position:absolute;left:0;color:#22c55e}.si-ai-list-card--red ul li:before{content:"•";position:absolute;left:0;color:#ef4444}.si-ai-list-card--blue ul li:before{content:"•";position:absolute;left:0;color:#0ea5e9}.si-ai-insight-section{display:flex;flex-direction:column;gap:10px}.si-ai-section-title{font-size:13px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.07em}.si-ai-insight-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.si-ai-insight-card{background:#fff;border-radius:14px;padding:16px 18px;border:1px solid #e5e7eb;box-shadow:0 1px 4px #0000000d}.si-ai-insight-header{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px}.si-ai-insight-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;flex-shrink:0;margin-top:1px}.si-ai-insight-title-wrap{display:flex;flex-direction:column;gap:5px;flex:1;min-width:0}.si-ai-insight-title-text{font-size:13px;font-weight:700;color:#111827;line-height:1.35}.si-ai-insight-title{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;color:#1e293b;margin-bottom:6px;gap:8px}.si-ai-insight-detail{font-size:12px;line-height:1.6;color:#64748b}.si-severity-badge{display:inline-flex;align-self:flex-start;padding:2px 9px;border-radius:20px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;flex-shrink:0}.si-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;gap:12px;color:#64748b}.si-not-connected{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px;text-align:center;color:#64748b}.si-not-connected h2{font-size:18px;color:#1e293b;margin:0 0 8px}.si-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 16px;font-size:13px;color:#b91c1c;margin:12px 28px 0}.si-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;margin-left:6px}.si-focus-banner{display:flex;align-items:flex-start;gap:14px;padding:16px 20px;border-radius:12px;border:1.5px solid}.si-focus-banner--good{background:#f0fdf4;border-color:#86efac}.si-focus-banner--warn{background:#fffbeb;border-color:#fcd34d}.si-focus-banner--crit{background:#fef2f2;border-color:#fca5a5}.si-focus-banner-icon{font-size:20px;font-weight:700;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.si-focus-banner--good .si-focus-banner-icon{background:#dcfce7;color:#16a34a}.si-focus-banner--warn .si-focus-banner-icon{background:#fef9c3;color:#ca8a04}.si-focus-banner--crit .si-focus-banner-icon{background:#fee2e2;color:#dc2626}.si-focus-banner-title{font-size:14px;font-weight:700;color:#0f172a;margin-bottom:3px}.si-focus-banner-sub{font-size:13px;color:#64748b}.si-focus-section{background:#fff;border-radius:16px;border:1px solid #efefef;box-shadow:0 2px 12px #0000000f;overflow:hidden}.si-focus-section--empty{opacity:.6}.si-focus-section-header{display:flex;align-items:flex-start;gap:12px;padding:14px 18px;border-bottom:1px solid #f1f5f9;background:#fafafa}.si-focus-section-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;flex-shrink:0}.si-focus-section-meta{flex:1}.si-focus-section-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#0f172a;margin-bottom:3px}.si-focus-section-desc{font-size:12px;color:#64748b}.si-focus-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;font-size:11px;font-weight:700}.si-focus-count--high{background:#fee2e2;color:#b91c1c}.si-focus-count--medium{background:#fef9c3;color:#92400e}.si-focus-count--low{background:#e0f2fe;color:#0ea5e9}.si-focus-table{font-size:12px}.si-focus-table thead th{font-size:10px}.si-focus-row--overdue{background:#fef2f2!important}.si-focus-row--overdue:hover{background:#fee2e2!important}.si-focus-pri-dot{display:inline-block;width:8px;height:8px;border-radius:50%}.si-focus-no-assignee{color:#ef4444;font-style:italic;font-size:12px}.si-focus-stale{color:#ea580c;font-weight:600;font-size:12px}.si-focus-overdue-label{color:#dc2626;font-weight:600;font-size:12px}.si-focus-neardue-label{color:#d97706;font-weight:600;font-size:12px}.si-focus-empty{padding:12px 18px;font-size:12px;color:#94a3b8;font-style:italic}.si-active-sprint-card{background:linear-gradient(135deg,#fff7ed,#fff);border:1.5px solid #fed7aa;border-radius:16px;padding:18px 22px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.si-active-sprint-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#f97316;white-space:nowrap}.si-active-sprint-name{font-size:15px;font-weight:700;color:#0f172a}.si-active-sprint-stats{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-left:auto;font-size:13px;color:#475569}.si-health-chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.si-health-chip--healthy{background:#dcfce7;color:#15803d}.si-health-chip--at-risk{background:#fef9c3;color:#92400e}.si-health-chip--critical{background:#fee2e2;color:#b91c1c}.si-kpi-value--trend{font-size:18px}.si-kpi-value--trend-improving{color:#16a34a}.si-kpi-value--trend-declining{color:#dc2626}.si-kpi-value--trend-stable{color:#d97706}.si-overview-row{cursor:pointer;transition:background .12s}.si-overview-row:hover{background:#f973160a!important}.si-table-footer{padding:10px 18px;font-size:11px;color:#94a3b8;border-top:1px solid #f1f5f9;text-align:center;font-style:italic}.si-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:si-spin .7s linear infinite}.si-spinner--lg{width:28px;height:28px;border-width:3px;border-color:#f9731633;border-top-color:#f97316}@keyframes si-spin{to{transform:rotate(360deg)}}.dh-root{display:flex;flex-direction:column;height:100%;background-color:#f7f7f6;background-image:radial-gradient(circle,#d4d4d0 1px,transparent 1px);background-size:24px 24px;overflow:hidden}.dh-header{display:flex;align-items:center;justify-content:space-between;padding:6px 16px;background:#fff;border-bottom:1px solid #f0f0f0;flex-shrink:0;min-height:44px}.dh-header-left{display:flex;align-items:center;gap:10px}.dh-header-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center;color:#ea580c;flex-shrink:0}.dh-title{font-size:15px;font-weight:700;color:#111827;margin:0;letter-spacing:-.2px}.dh-header-right{display:flex;align-items:center;gap:6px}.dh-refresh-btn{height:34px;padding:0 12px;border-radius:10px;border:1px solid var(--primary, #c2410c);background:var(--primary, #c2410c);display:flex;align-items:center;gap:6px;justify-content:center;cursor:pointer;color:#fff;font-size:13px;font-weight:600;white-space:nowrap;transition:all .15s}.dh-refresh-btn:hover{background:var(--primary-dark, #ea580c);border-color:var(--primary-dark, #ea580c)}.dh-search-wrap{display:flex;align-items:center;gap:10px;flex-shrink:0;width:220px;height:34px;padding:0 12px;background:#fff;border:1px solid #d9e0ea;border-radius:12px;box-sizing:border-box;box-shadow:0 1px 3px #0f172a0f;transition:border-color .15s,box-shadow .15s}.dh-search-wrap:focus-within{border-color:#f97316;box-shadow:0 0 0 4px #f973161f}.dh-search-icon{pointer-events:none;color:#9ca3af;width:16px;height:16px;flex-shrink:0}.dh-search{flex:1;border:none;font-size:14px;color:#374151;background:transparent;outline:none}.dh-search::placeholder{color:#b0b7c3}.dh-search-clear{width:18px;height:18px;border-radius:50%;background:#d1d5db;border:none;cursor:pointer;color:#374151;display:flex;align-items:center;justify-content:center;transition:background .12s}.dh-search-clear:hover{background:#6b7280;color:#fff}.dh-dd-wrap{position:relative}.dh-dd-trigger{display:flex;align-items:center;gap:5px;height:34px;padding:0 12px;border:1px solid #d9e0ea;border-radius:12px;background:#fff;font-size:14px;color:#374151;cursor:pointer;white-space:nowrap;box-shadow:0 1px 3px #0f172a0f;transition:border-color .15s,background .15s}.dh-dd-trigger:hover{border-color:#d1d5db;background:#f9fafb}.dh-dd-trigger.open,.dh-dd-trigger.active{border-color:#f97316;color:#ea580c}.dh-dd-chevron{transition:transform .18s;color:#9ca3af}.dh-dd-chevron.flipped{transform:rotate(180deg)}.dh-dd-menu{position:absolute;top:calc(100% + 6px);left:0;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 8px 24px #0f172a1f,0 2px 6px #0f172a0f;min-width:180px;z-index:200;padding:6px;animation:dh-dd-in .14s ease}.dh-dd-menu--environment{min-width:220px;max-width:300px}@keyframes dh-dd-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.dh-dd-menu-label{font-size:10px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:#9ca3af;padding:4px 10px 6px}.dh-dd-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 10px;border:none;background:none;border-radius:8px;font-size:13px;color:#374151;cursor:pointer;text-align:left;transition:background .12s,color .12s;gap:8px}.dh-dd-option:hover{background:#fff5f0;color:#c2410c}.dh-dd-option.selected{background:#fff5f0;color:#c2410c;font-weight:600}.dh-dd-option-left{display:flex;align-items:center;gap:8px}.dh-dd-option-icon{width:22px;height:22px;border-radius:6px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;color:#4b5563;flex-shrink:0}.dh-dd-option.selected .dh-dd-option-icon,.dh-dd-option:hover .dh-dd-option-icon{background:#fff0e8;color:#c2410c}.dh-dd-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dh-result-count{font-size:12px;color:#9ca3af;white-space:nowrap}.dh-list{flex:1;overflow-y:auto;padding:20px 24px 40px;background:#f7f7f6}.dh-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:200px;color:#9ca3af;font-size:14px}.dh-spinner{width:22px;height:22px;border:2px solid #e5e7eb;border-top-color:#f97316;border-radius:50%;animation:dh-spin .7s linear infinite}@keyframes dh-spin{to{transform:rotate(360deg)}}.dh-timeline{display:flex;flex-direction:column;gap:0}.dh-tl-row{display:flex;gap:0;align-items:stretch;position:relative}.dh-tl-left{display:flex;flex-direction:column;align-items:center;width:48px;flex-shrink:0;padding-top:18px}.dh-tl-line{width:2px;flex:1;background:#e5e7eb;margin-top:8px;min-height:12px}.dh-tl-row:last-child .dh-tl-line{display:none}.dh-tl-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid transparent}.dh-tl-icon--component{background:var(--primary-light, #fff7ed);color:var(--primary, #f97316);border-color:#fed7aa}.dh-tl-icon--promotion{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}.dh-tl-icon--rollback{background:#fef2f2;color:#b91c1c;border-color:#fecaca}.dh-tl-icon--release{background:#f0f9ff;color:#0369a1;border-color:#bae6fd}.dh-card{flex:1;min-width:0;background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin:8px 0;overflow:visible;transition:box-shadow .15s,border-color .15s}.dh-card:hover{border-color:#d1d5db;box-shadow:0 2px 10px #00000012}.dh-card-main{display:flex;align-items:center;padding:14px 16px;gap:16px}.dh-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.dh-card-top,.dh-card-bottom{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dh-card-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.dh-card-meta{display:flex;align-items:center;gap:8px}.dh-card-time-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.dh-card-sep{color:#d1d5db;font-size:12px}.dh-type-pill{font-size:10px;font-weight:700;letter-spacing:.5px;padding:3px 9px;border-radius:20px;text-transform:uppercase;flex-shrink:0;border:1px solid transparent}.dh-type-pill--component{background:var(--primary-light, #fff7ed);color:var(--primary, #f97316);border-color:#fed7aa}.dh-type-pill--promotion{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}.dh-type-pill--rollback{background:#fef2f2;color:#b91c1c;border-color:#fecaca}.dh-type-pill--release{background:#f0f9ff;color:#0369a1;border-color:#bae6fd}.dh-card-title{font-size:14px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dh-card-version{font-size:12px;color:#374151;background:#f3f4f6;padding:2px 8px;border-radius:6px;font-family:Menlo,Monaco,monospace;white-space:nowrap;flex-shrink:0;border:1px solid #e5e7eb}.dh-artifact-type{font-size:11px;color:#374151;background:#f3f4f6;padding:2px 7px;border-radius:20px;border:1px solid #e5e7eb;white-space:nowrap;font-weight:500}.dh-card-time{font-size:12px;font-weight:500;color:#374151;white-space:nowrap}.dh-card-dur{font-size:11px;color:#9ca3af;white-space:nowrap}.dh-env-pill{font-size:11px;font-weight:600;padding:2px 8px;border-radius:5px;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;white-space:nowrap;flex-shrink:0}.dh-env-pill--production{background:#fef2f2;color:#b91c1c;border-color:#fca5a5}.dh-env-pill--staging{background:#fff7ed;color:#c2410c;border-color:#fdba74}.dh-env-pill--qa{background:#fffbeb;color:#92400e;border-color:#fcd34d}.dh-env-pill--development{background:#ecfdf5;color:#047857;border-color:#86efac}.dh-env-pill--sandbox{background:#f1f5f9;color:#475569;border-color:#cbd5e1}.dh-env-pill--default{background:#f3f4f6;color:#4b5563;border-color:#e5e7eb}.dh-status{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;padding:4px 10px;border-radius:20px;white-space:nowrap;flex-shrink:0;border:1px solid transparent}.dh-status--success{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}.dh-status--failed{background:#fff1f2;color:#b91c1c;border-color:#fecaca}.dh-status--running{background:#fffbeb;color:#92400e;border-color:#fde68a}.dh-status--pending{background:#f1f3f5;color:#4b5563;border-color:#e5e7eb}.dh-avatar-wrap{position:relative;display:inline-flex;align-items:center;flex-shrink:0}.dh-avatar-tooltip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#1f2937;color:#fff;font-size:11px;font-weight:500;padding:4px 8px;border-radius:6px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s;z-index:300}.dh-avatar-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:#1f2937}.dh-avatar-wrap:hover .dh-avatar-tooltip{opacity:1}.dh-avatar{width:28px;height:28px;border-radius:50%;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:.3px}.dh-open-btn{width:32px;height:32px;border-radius:8px;border:1px solid #e5e7eb;background:#f9fafb;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#374151;flex-shrink:0;transition:all .15s}.dh-open-btn:hover{background:var(--primary-light, #fff7ed);color:var(--primary, #f97316);border-color:#fed7aa}.dh-expand-btn{width:32px;height:32px;border-radius:8px;border:1px solid #e5e7eb;background:#f9fafb;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6b7280;flex-shrink:0;transition:all .15s}.dh-expand-btn svg{transition:transform .2s}.dh-expand-btn.open svg{transform:rotate(180deg)}.dh-expand-btn:hover{background:var(--primary-light, #fff7ed);color:var(--primary, #f97316);border-color:#fed7aa}.dh-card-detail{border-top:1px solid #f3f4f6;padding:12px 16px;border-radius:0 0 12px 12px;display:flex;flex-direction:column;gap:10px;background:#fafafa}.dh-detail-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dh-detail-row--col{flex-direction:column;align-items:flex-start;gap:6px}.dh-detail-label{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap;min-width:90px}.dh-detail-row--col .dh-detail-label{min-width:unset}.dh-detail-value{font-size:13px;color:#374151;display:flex;align-items:center;gap:6px}.dh-ver{font-size:12px;font-family:Menlo,Monaco,monospace;padding:2px 6px;border-radius:4px}.dh-ver.from{background:#fef2f2;color:#b91c1c}.dh-ver.to{background:#f0fdf4;color:#15803d}.dh-detail-components{display:flex;flex-direction:column;gap:6px}.dh-detail-comp-row{display:flex;align-items:center;gap:6px}.dh-detail-comp-name{font-size:12px;font-weight:600;color:#374151;min-width:120px}.dh-detail-jira{display:flex;flex-wrap:wrap;gap:6px}.dh-jira-pill{font-size:11px;font-weight:600;padding:2px 8px;background:#fff5f0;color:#c2410c;border:1px solid #fcd9c3;border-radius:4px}.dh-jira-more{font-size:11px;color:#9ca3af;padding:2px 6px}.dh-show-more-wrap{display:flex;justify-content:center;padding:16px 0 8px}.dh-show-more{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 20px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.dh-show-more:hover:not(:disabled){border-color:#c2410c;color:#c2410c;background:#fff5f0}.dh-show-more:disabled{cursor:default;opacity:.6}.dh-show-more-count{color:#9ca3af;font-weight:400}.dh-show-more-spinner{width:14px;height:14px;border:2px solid #e5e7eb;border-top-color:#c2410c;border-radius:50%;animation:dh-spin .7s linear infinite;flex-shrink:0}.project-detail-page{min-height:100vh;background:#fafafa;padding:24px}.project-detail-loading,.project-detail-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px;color:#6b7280;font-size:14px}.project-detail-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#f95d03;border-radius:50%;animation:project-detail-spin .8s linear infinite}@keyframes project-detail-spin{to{transform:rotate(360deg)}}.project-detail-back-btn{margin-top:12px;padding:8px 16px;background:#000;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s ease}.project-detail-back-btn:hover{background:#222}.project-detail-header{max-width:1200px;margin:0 auto 24px}.project-detail-back{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;color:#374151;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.project-detail-back:hover{background:#f9fafb;border-color:#d1d5db}.project-detail-content{max-width:1200px;margin:0 auto}.project-detail-hero{display:flex;align-items:flex-start;gap:24px;padding:32px;background:#fff;border:1px solid #e5e7eb;border-radius:16px;margin-bottom:24px}.project-detail-avatar{width:80px;height:80px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f95d03,#fcae81);color:#000;font-size:24px;font-weight:700;flex-shrink:0}.project-detail-info{flex:1}.project-detail-title{font-size:28px;font-weight:700;color:#111827;margin:0 0 8px;letter-spacing:-.02em}.project-detail-description{font-size:15px;color:#6b7280;line-height:1.6;margin:0}.project-detail-meta{display:flex;gap:32px;padding:20px 32px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:24px}.project-detail-meta-item{display:flex;flex-direction:column;gap:4px}.project-detail-meta-label{font-size:12px;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.project-detail-meta-value{font-size:14px;color:#374151;font-weight:500}.project-detail-sections{display:flex;flex-direction:column;gap:24px}.project-detail-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.project-detail-section-title{font-size:16px;font-weight:600;color:#111827;margin:0;padding:16px 24px;border-bottom:1px solid #f1f3f5;background:#f9fafb}.project-detail-section-content{padding:24px;color:#6b7280;font-size:14px;line-height:1.6}@media(max-width:768px){.project-detail-page{padding:16px}.project-detail-hero{flex-direction:column;padding:24px}.project-detail-avatar{width:64px;height:64px;font-size:20px}.project-detail-title{font-size:22px}.project-detail-meta{flex-direction:column;gap:16px;padding:16px 24px}}.rdh-root{display:flex;flex-direction:column;height:100vh;background-image:radial-gradient(circle,#d4d4d0 1px,transparent 1px);background-size:24px 24px;background-color:#f7f7f6;font-family:inherit}.rdh-count{font-size:13px;color:#374151;background:#f3f4f6;border-radius:20px;padding:4px 12px}.rdh-page-header{display:flex;align-items:center;justify-content:space-between;padding:20px 28px 16px;background:transparent;border-bottom:1px solid #e5e7eb}.rdh-page-title{font-size:20px;font-weight:700;color:#111827;margin:0}.rdh-deploy-now-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 18px;background:var(--primary, #f97316);color:#fff;border:none;border-radius:8px;font-size:13px;roun font-weight: 600;cursor:pointer;transition:background .15s;white-space:nowrap}.rdh-deploy-now-btn:hover{background:var(--primary-hover, #e05a0e)}.rdh-filters{display:flex;align-items:center;gap:12px;padding:12px 28px;background:transparent;border-bottom:1px solid #e5e7eb;flex-shrink:0}.rdh-search-wrap{position:relative;flex:1;max-width:360px}.rdh-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.rdh-search{width:100%;padding:7px 12px 7px 32px;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;color:#111827;outline:none;background:#f9fafb;box-sizing:border-box}.rdh-search:focus{border-color:var(--primary, #f97316);background:#fff}.rdh-status-filters{display:flex;gap:6px}.rdh-filter-btn{padding:5px 14px;border-radius:20px;border:1px solid #e5e7eb;background:#fff;font-size:12px;color:#374151;cursor:pointer;font-weight:400}.rdh-filter-btn:hover{background:#f3f4f6}.rdh-filter-btn--active{background:var(--primary-light, #fff7ed);border-color:var(--primary, #f97316);color:var(--primary, #f97316)}.rdh-list-wrap{flex:1;overflow-y:auto;padding:24px 28px}.rdh-empty{text-align:center;color:#9ca3af;font-size:14px;padding:60px 0}.rdh-timeline{display:flex;flex-direction:column;gap:0}.rdh-timeline-row{display:flex;gap:16px;align-items:flex-start}.rdh-timeline-left{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:36px;padding-top:10px}.rdh-timeline-icon{width:36px;height:36px;border-radius:50%;background:#eff2ff;color:#4f46e5;border:1.5px solid #c7d2fe;display:flex;align-items:center;justify-content:center;flex-shrink:0;z-index:1}.rdh-timeline-line{width:2px;flex:1;min-height:16px;background:#e5e7eb;margin-top:4px;margin-bottom:4px}.rdh-card{flex:1;background:#fff;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:10px;overflow:hidden}.rdh-card-main{display:flex;align-items:center;gap:10px;padding:12px 16px;flex-wrap:nowrap}.rdh-type-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.06em;color:#6366f1;background:#eef2ff;border:1px solid #c7d2fe;white-space:nowrap;flex-shrink:0}.rdh-card-version{font-size:13px;font-weight:600;color:#111827;white-space:nowrap}.rdh-card-project{font-size:13px;color:#6b7280;white-space:nowrap}.rdh-env-pill{display:inline-block;padding:2px 10px;border-radius:20px;background:#fff7ed;color:#c2410c;border:1px solid #fed7aa;font-size:11px;font-weight:500;white-space:nowrap;flex-shrink:0}.rdh-card-meta-item{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#6b7280;white-space:nowrap;flex-shrink:0}.rdh-avatar{width:28px;height:28px;border-radius:50%;background:#374151;color:#fff;font-size:11px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.rdh-card-spacer{flex:1}.rdh-card-time{font-size:12px;color:#6b7280;white-space:nowrap;flex-shrink:0}.rdh-card-dur{color:#9ca3af}.rdh-open-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;font-size:12px;color:#374151;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .12s,border-color .12s}.rdh-open-btn:hover{background:#f3f4f6;border-color:#d1d5db}.rdh-expand-btn{width:28px;height:28px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .12s}.rdh-expand-btn:hover{background:#f3f4f6}.rdh-expand-btn svg{transition:transform .2s}.rdh-expand-btn.open svg{transform:rotate(180deg)}.rdh-card-detail{border-top:1px solid #f3f4f6;padding:14px 16px;display:flex;flex-direction:column;gap:12px;background:#fafafa}.rdh-detail-section{display:flex;align-items:flex-start;gap:12px}.rdh-detail-label{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;min-width:96px;padding-top:2px}.rdh-detail-value,.rdh-detail-notes{font-size:13px;color:#374151}.rdh-detail-components{display:flex;flex-direction:column;gap:6px}.rdh-detail-comp-row{display:flex;align-items:center;gap:8px}.rdh-detail-comp-name{font-size:13px;font-weight:500;color:#111827;min-width:120px}.rdh-detail-ver{font-size:11px;font-family:monospace;padding:1px 7px;border-radius:4px}.rdh-detail-ver.from{background:#f3f4f6;color:#6b7280}.rdh-detail-ver.to{background:#dcfce7;color:#15803d}.rdh-detail-jira{display:flex;flex-wrap:wrap;gap:6px}.rdh-jira-pill{padding:2px 8px;border-radius:4px;background:#eff6ff;color:#1d4ed8;font-size:11px;font-weight:500}.rdh-jira-more{font-size:11px;color:#9ca3af;padding-top:2px}.rdh-status{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;padding:4px 10px;border-radius:20px;white-space:nowrap;flex-shrink:0;border:1px solid transparent;background:#f1f3f5;color:#6b7280}.rdh-status--pending{background:#f1f3f5;color:#6b7280;border-color:#e5e7eb}.rdh-status--success{background:#f0fdf4;color:#16a34a;border-color:#bbf7d0}.rdh-status--failed{background:#fff1f2;color:#dc2626;border-color:#fecaca}.rdh-status--running{background:#fffbeb;color:#d97706;border-color:#fde68a}.rl-page{min-height:100vh;background:#f7f7f6;display:flex;flex-direction:column}.rl-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:16px 32px 20px;display:flex;flex-direction:column;gap:14px}.rl-back-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:none;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;padding:0;transition:color .15s;width:fit-content}.rl-back-btn:hover{color:#111827}.rl-header-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.rl-title{font-size:22px;font-weight:700;color:#111827;margin:0}.rl-status-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.3px;text-transform:capitalize}.rl-status-green{background:#dcfce7;color:#15803d}.rl-status-orange{background:#ffedd5;color:#c2410c}.rl-status-red{background:#fee2e2;color:#b91c1c}.rl-status-grey{background:#f3f4f6;color:#6b7280}.rl-header-meta{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.rl-meta-item{display:flex;align-items:center;gap:6px;font-size:13px;color:#374151}.rl-meta-label{font-weight:500;color:#9ca3af}.rl-body{flex:1;padding:28px 32px;display:flex;flex-direction:column;gap:20px;max-width:860px;width:100%}.rl-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px 24px}.rl-card-title{font-size:13px;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.6px;margin-bottom:16px;display:flex;align-items:center;gap:8px}.rl-card-count{background:#f3f4f6;color:#6b7280;font-size:11px;font-weight:600;padding:2px 7px;border-radius:20px;text-transform:none;letter-spacing:0}.rl-description{font-size:14px;color:#4b5563;line-height:1.6;margin:0}.rl-components-list{display:flex;flex-direction:column;gap:12px}.rl-component-row{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid #f3f4f6;border-radius:8px;background:#fafafa}.rl-component-avatar{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.rl-component-info{flex:1;display:flex;flex-direction:column;gap:6px}.rl-component-name{font-size:14px;font-weight:600;color:#111827}.rl-artifact-tags{display:flex;flex-wrap:wrap;gap:6px}.rl-artifact-tag{display:inline-flex;align-items:center;border:1px solid #e5e7eb;border-radius:6px;overflow:hidden;font-size:12px}.rl-artifact-key{background:#f3f4f6;color:#6b7280;padding:2px 7px;font-weight:500;border-right:1px solid #e5e7eb}.rl-artifact-val{background:#fff;color:#374151;padding:2px 7px;font-weight:600;font-family:monospace;font-size:11.5px}.rl-env-list{display:flex;flex-direction:column;gap:10px}.rl-env-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid #f3f4f6;border-radius:8px;background:#fafafa}.rl-env-dot{width:8px;height:8px;border-radius:50%;background:#d1d5db;flex-shrink:0}.rl-env-name{flex:1;font-size:14px;font-weight:500;color:#111827}.rl-env-status{font-size:12px;font-weight:600;padding:2px 9px;border-radius:20px;text-transform:capitalize}.rl-env-time{font-size:12px;color:#9ca3af}.rl-deployments-list{display:flex;flex-direction:column;gap:8px}.rl-deployment-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #f3f4f6;border-radius:8px;background:#fafafa;cursor:pointer;transition:border-color .15s,background .15s}.rl-deployment-row:hover{border-color:#e5e7eb;background:#fff}.rl-deployment-env{font-size:14px;font-weight:600;color:#111827;min-width:120px}.rl-deployment-meta{flex:1;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.rl-dep-status{font-size:12px;font-weight:600;padding:2px 9px;border-radius:20px;text-transform:capitalize}.rl-dep-time{font-size:12px;color:#9ca3af}.rl-dep-by{font-size:12px;color:#6b7280}.rl-deployment-arrow{color:#d1d5db;flex-shrink:0}.rl-deployment-row:hover .rl-deployment-arrow{color:#9ca3af}.rl-loading{display:flex;align-items:center;justify-content:center;height:200px;font-size:14px;color:#9ca3af}.rl-loading-inline,.rl-empty{font-size:13px;color:#9ca3af;padding:8px 0}
