:root{--bg-primary: #ffffff;--bg-secondary-light: #f5f6f8;--bg-secondary: #edf0f3;--bg-hover: #e6e7e8;--bg-active: #cfd3d6;--bg-tertiary: #e1e5ea;--border: #e5e7eb;--border-input: #d1d5db;--border-secondary: #d1d5db;--text-primary: #111827;--text-secondary: #6b7280;--text-tertiary: #4b5563;--brand: #3b82f6;--brand-tint: #3b82f6;--brand-light: rgba(59, 130, 246, .08);--success: #10b981;--warning: #f59e0b;--error: #ef4444;--destructive: #ef4444;--radius-xs: .25rem;--radius-s: .375rem;--radius-m: .5rem;--radius-l: .75rem;--radius-xl: 1rem;--text-xl: 1.25rem;--text-lg: 1.125rem;--text-m: 1rem;--text-normal: .9375rem;--text-small: .875rem;--background-secondary: #edf0f3}@media (prefers-color-scheme: dark){:root{--bg-primary: #111827;--bg-secondary-light: #1f2937;--bg-secondary: #1f2937;--bg-hover: #2e394b;--bg-active: #324051;--bg-tertiary: #374151;--border: #374151;--border-input: #4b5563;--border-secondary: #4b5563;--text-primary: #f9fafb;--text-secondary: #9ca3af;--text-tertiary: #d1d5db;--brand: #60a5fa;--brand-tint: #60a5fa;--brand-light: rgba(96, 165, 250, .12);--success: #34d399;--warning: #fbbf24;--error: #f87171;--destructive: #f87171;--background-secondary: #1f2937}body{background:#111827;color:#f9fafb}a{color:var(--brand-tint)}a:hover{color:var(--brand)}}*{box-sizing:border-box}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--text-normal);color:var(--text-primary);background:var(--bg-primary)}#root{height:100vh;width:100vw}h1,h2,h3,h4,h5,h6{margin:0 0 1rem;color:var(--text-primary)}p{margin:0 0 .5rem}a{color:var(--brand-tint);text-decoration:none;transition:all .15s ease}a:hover{color:var(--brand)}a:focus{outline:2px solid var(--brand-tint);outline-offset:2px}button{font-family:inherit}.text-capitalize{text-transform:capitalize}*:focus{outline:none;box-shadow:0 0 0 2px var(--brand-tint)}.grid-container{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.col-span-1{grid-column:span 1}.col-span-2{grid-column:span 2}.col-span-3{grid-column:span 3}.col-span-4{grid-column:span 4}@media (max-width: 768px){.grid-container{grid-template-columns:repeat(2,1fr);gap:1rem}.col-span-3,.col-span-4,.col-span-2-tablet{grid-column:span 2}.col-span-1-tablet{grid-column:span 1}}@media (max-width: 680px){.grid-container{grid-template-columns:1fr;gap:1rem}.col-span-1,.col-span-2,.col-span-3,.col-span-4{grid-column:span 1}}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem}.spinner{width:1.5rem;height:1.5rem;border:2px solid var(--border);border-top-color:var(--text-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-message{font-size:.875rem;color:var(--text-secondary)}.nav-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;color:var(--text-tertiary);text-decoration:none;border-radius:.75rem;transition:all .15s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-link-icon{display:flex;align-items:center;flex-shrink:0}.nav-link-lg{font-size:var(--text-xl);font-weight:600}.nav-link-m{font-size:var(--text-lg);font-weight:500}.nav-link:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-link.active{background:var(--bg-active);color:var(--text-primary)}.sidebar{width:20rem;background:var(--bg-secondary);display:flex;flex-direction:column;height:100vh}.sidebar-header{padding:2.5rem .75rem 0rem}.sidebar-nav{flex:1;padding:1.5rem .75rem;display:flex;flex-direction:column;gap:.25rem}.sidebar-footer{padding:0rem .75rem 2.5rem}.app-layout{display:flex;height:100vh;width:100vw}.app-main{flex:1;overflow:auto;padding:2rem 4rem;background:var(--bg-primary);border-radius:1.25rem;box-shadow:inset 0 0 0 5px var(--bg-secondary)}.app-main-fullheight{overflow:hidden;display:flex;flex-direction:column}.button{padding:.5rem 1rem;border:none;border-radius:.75rem;font-size:var(--text-m);font-weight:500;cursor:pointer;transition:all .15s ease;width:auto;display:inline-flex;align-items:center;gap:.375rem}.button svg,.button svg path{fill:currentColor;color:currentColor}.button:disabled{background-color:var(--bg-secondary);cursor:not-allowed}.button-primary{background:#111827;color:#fff}.button-primary:hover:not(:disabled){background:#1f2937}.button-secondary{background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border-input)}.button-secondary:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);border-color:var(--border)}.button-primary-dest{background:#dc2626;color:#fff;border:none}.button-primary-dest:hover:not(:disabled){background:#b91c1c}.button-secondary-dest{background:#fef2f2;color:#ef4444;border:none}.button-secondary-dest:hover:not(:disabled){background:#fee2e2;color:#dc2626}.button-danger{background:#dc2626;color:#fff}.button-danger:hover:not(:disabled){background:#b91c1c}.button-small{padding:.375rem .75rem;font-size:.875rem}.button-medium{padding:.5rem 1rem;font-size:var(--text-m)}.button-large{padding:.625rem 1.25rem;font-size:1rem}.button-icon-only.button-small{padding:.375rem}.button-icon-only.button-medium{padding:.5rem}.button-icon-only.button-large{padding:.625rem}@media (prefers-color-scheme: dark){.button-primary{background:#f9fafb;color:#111827}.button-primary:hover:not(:disabled){background:#e5e7eb}.button-secondary{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-input)}.button-secondary:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);border-color:var(--border)}.button-primary-dest{background:#ef4444;color:#fff}.button-primary-dest:hover:not(:disabled){background:#f87171}.button-secondary-dest{background:#450a0a;color:#f87171}.button-secondary-dest:hover:not(:disabled){background:#7f1d1d;color:#fca5a5}.button-danger{background:#ef4444;color:#fff}.button-danger:hover:not(:disabled){background:#f87171}}.auth-error-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);padding:2rem}.auth-error-card{background:var(--bg-primary);padding:3rem;border-radius:var(--radius-xl);border:1px solid var(--border);max-width:480px;width:100%;text-align:center}.auth-error-card h1{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 1.5rem}.auth-error-message{font-size:var(--text-normal);color:var(--error);background:#ef44441a;border:1px solid rgba(239,68,68,.2);padding:1rem;border-radius:var(--radius-m);margin-bottom:2rem;line-height:1.5}.auth-error-actions{margin-bottom:2rem}.auth-error-actions .button{width:100%;justify-content:center}.auth-error-help{font-size:var(--text-small);color:var(--text-tertiary);line-height:1.5}.input{padding:.75rem 1rem;border:0px solid transparent;border-radius:.65rem;box-shadow:inset 0 0 0 2px transparent;font-size:var(--text-m);background:var(--bg-secondary);color:var(--text-primary);transition:box-shadow .15s ease;width:100%}.input::placeholder{color:var(--text-secondary)}.input:focus{outline:none;box-shadow:inset 0 0 0 2px var(--brand-tint)}.input:disabled{opacity:.5;cursor:not-allowed}.alert{padding:1rem;border-radius:.75rem;font-size:var(--text-m);margin-bottom:1rem;position:relative}.alert-close{position:absolute;top:.5rem;right:.5rem;background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;padding:.25rem .5rem;color:inherit;opacity:.7;transition:opacity .15s ease}.alert-close:hover{opacity:1}.alert-warning{background-color:#fef3c7;color:#92400e}.alert-error{background-color:#fef2f2;color:#dc2626}.alert-info{background-color:#eff6ff;color:#1e40af}.alert-success{background-color:#f0fdf4;color:#166534}@media (prefers-color-scheme: dark){.alert-warning{background-color:#451a03;color:#fbbf24}.alert-error{background-color:#450a0a;color:#fca5a5}.alert-info{background-color:#1e3a8a;color:#93c5fd}.alert-success{background-color:#14532d;color:#86efac}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);padding:2rem}.login-card{background:var(--bg-primary);padding:3rem;border-radius:var(--radius-xl);border:1px solid var(--border);max-width:420px;width:100%}.login-card h1{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 1.5rem;text-align:center}.login-form{display:flex;flex-direction:column;gap:1.25rem}.login-field{display:flex;flex-direction:column;gap:.5rem}.login-field label{font-size:var(--text-small);font-weight:500;color:var(--text-secondary)}.login-error{font-size:var(--text-small);color:var(--error);background:#ef44441a;border:1px solid rgba(239,68,68,.2);padding:.75rem 1rem;border-radius:var(--radius-m);line-height:1.4}.login-form .button{width:100%;justify-content:center;margin-top:.5rem}.login-links{margin-top:1.5rem;text-align:center}.login-links a{font-size:var(--text-small);color:var(--brand);text-decoration:none}.login-links a:hover{text-decoration:underline}.forgot-password-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);padding:2rem}.forgot-password-card{background:var(--bg-primary);padding:3rem;border-radius:var(--radius-xl);border:1px solid var(--border);max-width:420px;width:100%}.forgot-password-card h1{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 1rem;text-align:center}.forgot-password-description{font-size:var(--text-small);color:var(--text-secondary);text-align:center;margin:0 0 1.5rem;line-height:1.5}.forgot-password-form{display:flex;flex-direction:column;gap:1.25rem}.forgot-password-field{display:flex;flex-direction:column;gap:.5rem}.forgot-password-field label{font-size:var(--text-small);font-weight:500;color:var(--text-secondary)}.forgot-password-form .button{width:100%;justify-content:center;margin-top:.5rem}.forgot-password-success{font-size:var(--text-normal);color:var(--text-secondary);background:var(--bg-secondary);padding:1rem;border-radius:var(--radius-m);margin-bottom:1.5rem;line-height:1.5;text-align:center}.forgot-password-success strong{color:var(--text-primary)}.forgot-password-links{margin-top:1.5rem;text-align:center}.forgot-password-links a{font-size:var(--text-small);color:var(--brand);text-decoration:none}.forgot-password-links a:hover{text-decoration:underline}.reset-password-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);padding:2rem}.reset-password-card{background:var(--bg-primary);padding:3rem;border-radius:var(--radius-xl);border:1px solid var(--border);max-width:420px;width:100%}.reset-password-card h1{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 1rem;text-align:center}.reset-password-description{font-size:var(--text-small);color:var(--text-secondary);text-align:center;margin:0 0 1.5rem;line-height:1.5}.reset-password-form{display:flex;flex-direction:column;gap:1.25rem}.reset-password-field{display:flex;flex-direction:column;gap:.5rem}.reset-password-field label{font-size:var(--text-small);font-weight:500;color:var(--text-secondary)}.reset-password-error{font-size:var(--text-small);color:var(--error);background:#ef44441a;border:1px solid rgba(239,68,68,.2);padding:.75rem 1rem;border-radius:var(--radius-m);line-height:1.4}.reset-password-error-message{font-size:var(--text-normal);color:var(--text-secondary);text-align:center;margin-bottom:1.5rem;line-height:1.5}.reset-password-success{font-size:var(--text-normal);color:var(--success);background:#22c55e1a;border:1px solid rgba(34,197,94,.2);padding:1rem;border-radius:var(--radius-m);margin-bottom:1.5rem;line-height:1.5;text-align:center}.reset-password-form .button,.reset-password-card>.button{width:100%;justify-content:center;margin-top:.5rem}.reset-password-links{margin-top:1.5rem;text-align:center}.reset-password-links a{font-size:var(--text-small);color:var(--brand);text-decoration:none}.reset-password-links a:hover{text-decoration:underline}.set-password-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);padding:2rem}.set-password-card{background:var(--bg-primary);padding:3rem;border-radius:var(--radius-xl);border:1px solid var(--border);max-width:420px;width:100%}.set-password-card h1{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 1rem;text-align:center}.set-password-description{font-size:var(--text-small);color:var(--text-secondary);text-align:center;margin:0 0 1.5rem;line-height:1.5}.set-password-form{display:flex;flex-direction:column;gap:1.25rem}.set-password-field{display:flex;flex-direction:column;gap:.5rem}.set-password-field label{font-size:var(--text-small);font-weight:500;color:var(--text-secondary)}.set-password-error{font-size:var(--text-small);color:var(--error);background:#ef44441a;border:1px solid rgba(239,68,68,.2);padding:.75rem 1rem;border-radius:var(--radius-m);line-height:1.4}.set-password-error-message{font-size:var(--text-normal);color:var(--text-secondary);text-align:center;margin-bottom:1.5rem;line-height:1.5}.set-password-success{font-size:var(--text-normal);color:var(--success);background:#22c55e1a;border:1px solid rgba(34,197,94,.2);padding:1rem;border-radius:var(--radius-m);margin-bottom:1.5rem;line-height:1.5;text-align:center}.set-password-form .button,.set-password-card>.button{width:100%;justify-content:center;margin-top:.5rem}.set-password-links{margin-top:1.5rem;text-align:center}.set-password-links a{font-size:var(--text-small);color:var(--brand);text-decoration:none}.set-password-links a:hover{text-decoration:underline}.page-header{padding-top:1.25rem;margin-bottom:2rem;padding-left:1rem;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.page-header__content{display:flex;flex-direction:column;gap:.5rem}.page-header__back{display:inline-flex;align-items:center;gap:.375rem;font-size:var(--text-sm);color:var(--brand-tint);text-decoration:none;background:none;border:none;padding:0;cursor:pointer;font-family:inherit;font-weight:500;transition:opacity .15s ease}.page-header__back:hover{opacity:.8}.page-header__back svg{color:currentColor;flex-shrink:0}.page-header__title{font-size:var(--text-xl);font-weight:600;margin:0}.page-header__subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.page-header__actions{display:flex;align-items:center;gap:.75rem}.section-title{font-size:var(--text-lg);font-weight:600;margin:0 0 1rem;color:var(--text-primary)}.section{margin-bottom:2.5rem}.section-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.section-actions{display:flex;align-items:center;gap:.5rem}.section-content{display:flex;flex-direction:column;gap:.5rem}.section label,.section .section-title{padding-left:1rem!important}.form-field{display:flex;flex-direction:column;gap:.375rem}.form-field-label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.form-field-helper{font-size:.75rem;color:var(--text-secondary);margin-top:.125rem}.select-wrapper{position:relative;width:100%}.select{padding:.5rem 2.5rem .5rem 1rem;border:0px solid transparent;border-radius:.75rem;box-shadow:inset 0 0 0 2px transparent;font-size:var(--text-m);background:var(--bg-secondary);color:var(--text-primary);transition:box-shadow .15s ease;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.select:focus{outline:none;box-shadow:inset 0 0 0 2px var(--brand-tint)}.select:disabled{opacity:.5;cursor:not-allowed}.select-chevron{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--text-secondary)}.select:focus~.select-chevron{color:var(--text-primary)}.detail-list{display:flex;flex-direction:column}.detail-list-row{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid var(--border)}.detail-list-label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.detail-list-value{font-size:.9375rem;color:var(--text-secondary);text-align:right}.table{display:flex;flex-direction:column;width:100%}.table-header{display:grid}.table-header-cell{padding:.75rem 1rem;font-weight:600;font-size:var(--text-small);color:var(--text-primary);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:1}.table-row{display:grid;position:relative;border-bottom:1px solid var(--border)}.table-row-clickable{cursor:pointer;transition:background-color .1s ease;-webkit-user-select:none;user-select:none}.table-row-clickable:hover{background-color:var(--bg-hover)}.table-row-clickable:active{background-color:var(--bg-active)}.table-cell{display:flex;align-items:center;padding:1rem;min-width:0;position:relative}.table-cell-align-left{justify-content:flex-start;text-align:left}.table-cell-align-center{justify-content:center;text-align:center}.table-cell-align-right{justify-content:flex-end;text-align:right}.table-cell-truncate{overflow:hidden}.table-cell-truncate>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.table-cell button,.table-cell [role=button]{position:relative;z-index:1}@media (max-width: 768px){.table-cell{padding:.75rem .5rem;font-size:var(--text-small)}.table-header-cell{padding:.5rem}}.me-org-name{font-size:.9375rem;font-weight:500;color:var(--text-primary)}.me-org-slug{font-size:.875rem;color:var(--text-secondary)}.me-org-role{font-size:.875rem;color:var(--text-secondary);text-transform:capitalize}.me-name-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 768px){.me-name-row{grid-template-columns:1fr;gap:0}}.me-save-section{margin-top:1rem;display:flex;align-items:center;gap:1rem}.me-save-message{font-size:.875rem;padding:.5rem .75rem;border-radius:.375rem}.me-save-message.success{color:#059669;background-color:#d1fae5;border:1px solid #a7f3d0}.me-save-message.error{color:#dc2626;background-color:#fee2e2;border:1px solid #fecaca}.me-org-badge-current{padding:.25rem .75rem;border-radius:var(--radius-m);background-color:var(--brand-light);color:var(--brand);font-size:var(--text-small);font-weight:600}@media (prefers-color-scheme: dark){.me-save-message.success{color:#34d399;background-color:#064e3b;border:1px solid #047857}.me-save-message.error{color:#f87171;background-color:#7f1d1d;border:1px solid #991b1b}}.textarea{padding:.75rem 1rem;border:0px solid transparent;border-radius:.65rem;box-shadow:inset 0 0 0 2px transparent;font-size:var(--text-m);font-family:inherit;background:var(--bg-secondary);color:var(--text-primary);transition:box-shadow .15s ease;width:100%;min-height:100px;resize:vertical}.textarea::placeholder{color:var(--text-secondary)}.textarea:focus{outline:none;box-shadow:inset 0 0 0 2px var(--brand-tint)}.textarea:disabled{opacity:.5;cursor:not-allowed;resize:none}.table-cell-icon{display:flex;align-items:center;gap:.75rem;width:100%;min-width:0}.table-cell-icon__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-secondary)}.table-cell-icon__content{display:flex;flex-direction:column;gap:.125rem;min-width:0;flex:1}.table-cell-icon__title{font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-cell-icon__subtitle{font-size:var(--text-small);color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-cell-status{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:var(--radius-m);font-size:var(--text-small);font-weight:500;white-space:nowrap}.table-cell-status__icon{display:flex;align-items:center;margin-left:-.125rem}.table-cell-status__icon svg{display:block;width:1em;height:1em;fill:currentColor}.table-cell-status--active{background-color:var(--success);background-opacity:.1;color:var(--success);background:#10b9811a}.table-cell-status--inactive{background:var(--bg-secondary);color:var(--text-secondary)}.table-cell-status--processing,.table-cell-status--pending{background:#3b82f61a;color:var(--brand)}.table-cell-status--complete{background:#10b9811a;color:var(--success)}.table-cell-status--failed{background:#ef44441a;color:var(--error)}.table-cell-status--warning{background:#f59e0b1a;color:var(--warning)}.table-cell-date{color:var(--text-secondary);font-size:var(--text-small);white-space:nowrap}.table-cell-actions{display:flex;align-items:center;gap:.5rem;justify-content:flex-end}@media (prefers-color-scheme: dark){.table-cell-status--active{background:#34d39926}.table-cell-status--processing,.table-cell-status--pending{background:#60a5fa26}.table-cell-status--complete{background:#34d39926}.table-cell-status--failed{background:#f8717126}.table-cell-status--warning{background:#fbbf2426}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.empty-state-message{font-size:.875rem;color:var(--text-secondary);margin:0}.empty-state-icon{font-size:2rem;margin-bottom:1rem}.empty-state-icon-warning{color:#92400e}@media (prefers-color-scheme: dark){.empty-state-icon-warning{color:#fbbf24}}.empty-state-title{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.empty-state-description{font-size:.875rem;color:var(--text-secondary);margin:0 0 1rem;max-width:400px}.empty-state-action{margin-top:1rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-view-content{background-color:var(--bg-primary);border-radius:1.5rem;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-dialog-content{background-color:var(--bg-primary);border-radius:1.5rem;max-width:300px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{padding:1.5rem;border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:1.25rem;font-weight:600}.modal-body{padding:1.5rem}@media (max-width: 768px){.modal-view-content,.modal-dialog-content{max-width:100%;margin:1rem}}.invite-member-form{display:flex;flex-direction:column;gap:1.5rem}.remove-modal-content{display:flex;flex-direction:column;gap:1rem}.remove-modal-actions{display:flex;gap:.5rem;justify-content:flex-end}.toggle-wrapper{display:inline-flex;position:relative}.toggle-label{display:inline-flex;align-items:center;gap:.75rem;cursor:pointer}.toggle-input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;z-index:1}.toggle-switch{position:relative;display:inline-block;width:3.125rem;height:1.5rem;background-color:#e5e7eb;border-radius:.75rem;transition:all .15s ease;flex-shrink:0}.toggle-switch:after{content:"";position:absolute;width:1.75rem;height:1.25rem;left:.125rem;top:.125rem;background-color:#fff;border-radius:.625rem;transition:transform .15s ease}.toggle-switch:has(.toggle-input:checked){background-color:#34c759}.toggle-switch:has(.toggle-input:checked):after{transform:translate(1.125rem)}.toggle-switch:has(.toggle-input:focus){outline:none;box-shadow:0 0 0 2px var(--brand-tint)}.toggle-switch:has(.toggle-input:disabled){opacity:.5}.toggle-switch:has(.toggle-input:disabled) .toggle-input{cursor:not-allowed}.toggle-text{font-size:.875rem;font-weight:500;color:var(--text-primary)}@media (prefers-color-scheme: dark){.toggle-switch{background-color:#374151}.toggle-switch:has(.toggle-input:checked){background-color:#34c759}.toggle-switch:after{background-color:#f3f4f6}}.success-criteria-card{border:1px solid var(--border-primary);border-radius:var(--radius-l);background:var(--bg-primary);display:flex;flex-direction:column;gap:1rem}.test-description{color:var(--text-secondary);margin:0}.success-criteria-header h3{margin:0;font-size:var(--text-l);font-weight:600;color:var(--text-primary)}.success-criteria-empty{text-align:center;color:var(--text-secondary);padding:1rem}.test-edit-fields{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;margin-top:1rem}.test-edit-fields .form-group{margin-bottom:0}.test-edit-fields label{display:block;font-size:var(--text-s);font-weight:500;margin-bottom:.5rem;color:var(--text-secondary)}.criteria-actions{display:flex;justify-content:flex-start;gap:.75rem;margin-top:1rem}.message-modal-wrapper .modal-overlay{z-index:2000}.message-dialog-content{display:flex;flex-direction:column;gap:1rem}.message-dialog-content .form-group{margin-bottom:0}.message-dialog-content label{display:block;font-size:var(--text-s);font-weight:500;margin-bottom:.5rem;color:var(--text-secondary)}.message-dialog-footer{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--border)}.add-criterion-dialog-content .form-group{margin-bottom:0}.add-criterion-dialog-content label{display:block;font-size:var(--text-s);font-weight:500;margin-bottom:.5rem;color:var(--text-secondary)}.badge-required,.badge-optional{padding:.125rem .5rem;border-radius:var(--radius-s);font-size:var(--text-xs);font-weight:500}.badge-required{background:#ef44441a;color:var(--error)}.badge-optional{background:var(--bg-tertiary);color:var(--text-secondary)}@media (prefers-color-scheme: dark){.badge-required{background:#f8717126}}.conversation-card{border:1px solid var(--border-primary);border-radius:var(--radius-l);background:var(--bg-primary);display:flex;flex-direction:column}.conversation-header{border-bottom:1px solid var(--border-primary);margin-bottom:1rem}.conversation-header h3{margin:0;font-size:var(--text-l);color:var(--text-primary)}.conversation-body{padding:1.5rem;background:var(--bg-secondary);border-radius:var(--radius-l);display:flex;flex-direction:column;gap:1.5rem}.test-run-controls{display:flex;align-items:center;gap:.75rem;padding-top:1rem;margin-top:.5rem}.test-run-controls>:first-child{margin-right:auto}.test-run-controls-right{display:flex;align-items:center;gap:.75rem;margin-left:auto}.test-run-controls .select-wrapper{width:auto}.test-content-container+.section{margin-top:3rem}.test-content-container{margin-top:1rem;padding:1.5rem;border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--bg-primary);display:flex;flex-direction:column;gap:1.5rem}.messages-area{display:flex;flex-direction:column;gap:1rem}.conversation-empty{text-align:center;color:var(--text-secondary);padding:2rem}.message-editable{display:flex;flex-direction:column;gap:.5rem}.message-turn{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;position:relative;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-m);background:var(--bg-secondary)}.message-turn:last-child{margin-bottom:0}.message-actions{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;opacity:0;transition:opacity .15s ease}.message-editable:hover .message-actions{opacity:1}.turn-actions{display:flex;justify-content:flex-end;margin-top:.5rem;opacity:0;transition:opacity .15s ease}.message-turn:hover .turn-actions{opacity:1}.message-bubble{padding:.75rem 1rem;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-m);color:var(--text-primary);font-size:var(--text-m);line-height:1.6;word-wrap:break-word}.message-bubble p{margin:0 0 .5rem}.message-bubble ul,.message-bubble ol{margin:.5rem 0;padding-left:1.5rem}.message-bubble ul:last-child,.message-bubble ol:last-child{margin-bottom:0}.message-bubble li{margin:.25rem 0}.message-bubble code{background:var(--bg-secondary);padding:.125rem .375rem;border-radius:var(--radius-s);font-size:.9em;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.message-bubble pre{background:var(--bg-secondary);padding:.75rem;border-radius:var(--radius-m);overflow-x:auto;margin:.75rem 0}.message-bubble h1,.message-bubble h2,.message-bubble h3,.message-bubble h4,.message-bubble h5,.message-bubble h6{margin:.75rem 0 .5rem;font-weight:600}.message-bubble h1:first-child,.message-bubble h2:first-child,.message-bubble h3:first-child,.message-bubble h4:first-child,.message-bubble h5:first-child,.message-bubble h6:first-child{margin-top:0}.message-bubble blockquote{margin:.5rem 0;padding-left:1rem;border-left:3px solid var(--border);color:var(--text-secondary)}.conversation-actions{display:flex;justify-content:flex-start;margin-top:.5rem}.message-role-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;color:var(--text-secondary);margin-bottom:.25rem}.message-content{color:var(--text-primary);font-size:var(--text-s)}.message-system .message-bubble,.results-message .result-summary-card{background:var(--bg-primary);border:1px solid var(--border-primary)}.results-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.results-header h4{margin:0;font-size:var(--text-m);font-weight:600}.result-summary-card{border-radius:var(--radius-m);padding:1.25rem;background:var(--bg-primary);border:1px solid var(--border-primary)}.result-summary-card.passed{background:#10b9811a}.result-summary-card.failed,.result-summary-card.error{background:#ef444414}.result-header{display:flex;align-items:center;gap:.5rem;font-size:var(--text-l);font-weight:600;margin-bottom:1rem}.result-header svg{width:1.25rem;height:1.25rem;fill:currentColor}.result-header.passed{color:var(--success)}.result-header.failed,.result-header.error{color:var(--error)}.test-results-table{width:100%;border-collapse:collapse;background:transparent}.test-results-table th,.test-results-table td{text-align:left;padding:.75rem .5rem;border-bottom:1px solid var(--border-primary);vertical-align:top}.test-results-table th{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.test-results-table__row.passed .test-results-table__status{color:var(--success)}.test-results-table__row.failed .test-results-table__status{color:var(--error)}.test-results-table__status{display:inline-flex;align-items:center;gap:.4rem;font-weight:600}.test-results-table__status-icon svg{display:block;width:1rem;height:1rem;fill:currentColor}.test-results-table__details{font-size:var(--text-s);color:var(--text-secondary);display:inline-block;white-space:pre-wrap}.results-empty{font-size:var(--text-s);color:var(--text-secondary)}.test-history-agent-link{background:none;border:none;padding:0;font:inherit;color:var(--brand);text-decoration:none;cursor:pointer;align-self:flex-start;display:inline-flex;align-items:center;gap:.375rem}.test-history-agent-link__icon{color:currentColor;flex-shrink:0}.test-history-agent-link__icon svg,.test-history-agent-link__icon path{fill:currentColor}.test-history-agent-link:hover,.test-history-agent-link:focus-visible{color:var(--brand-dark, var(--brand));text-decoration-color:currentColor}.test-history-results-cell{display:flex;flex-direction:column}.test-history-results{display:flex;flex-direction:column;gap:.35rem}.test-history-results__item{display:flex;align-items:flex-start;gap:.75rem;padding:.35rem 0}.test-history-results__icon{width:1.25rem;height:1.25rem;display:inline-flex;align-items:center;justify-content:center;color:var(--text-primary)}.test-history-results__icon svg{width:1.25rem;height:1.25rem;fill:currentColor}.test-history-results__icon.passed{color:var(--success)}.test-history-results__icon.failed{color:var(--error)}.test-history-results__criterion{font-weight:500;color:var(--text-primary)}.test-history-results__status{display:flex;align-items:center;gap:.5rem;font-size:var(--text-s);color:var(--text-secondary)}.test-history-results__error{display:flex;align-items:center;gap:.5rem;color:var(--error)}.test-history-run-cell{display:flex;align-items:center;gap:.75rem}.test-history-run-cell__time{font-size:var(--text-s);color:var(--text-secondary);white-space:nowrap}.success-criteria-card .table-row .table-cell:last-child button{opacity:0;transition:opacity .15s ease}.success-criteria-card .table-row:hover .table-cell:last-child button{opacity:1}.create-test-modal-wrapper .modal-content{max-width:900px;width:90%}.create-test-modal-content{padding:1rem}.form-section{margin-bottom:1.5rem}.form-section h3{font-size:var(--text-m);font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:var(--text-s);font-weight:500;margin-bottom:.5rem;color:var(--text-secondary)}.form-row{display:flex;gap:1rem;align-items:flex-end;margin-bottom:1rem}.form-row .form-group{flex:1;margin-bottom:0}.conversation-preview{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-m);padding:1rem}.text-secondary{color:var(--text-secondary);font-size:var(--text-s);margin-bottom:.5rem}.message-list{list-style:none;padding:0;margin:0}.message-list li{padding:.25rem 0;font-size:var(--text-s);color:var(--text-secondary)}.message-list li strong{color:var(--text-primary);text-transform:capitalize}.criteria-table-wrapper{margin-bottom:1rem}.criterion-badge{display:inline-block;padding:.125rem .5rem;border-radius:var(--radius-s);font-size:var(--text-xs);font-weight:500}.criterion-badge.required{background:#ef44441a;color:var(--error)}@media (prefers-color-scheme: dark){.criterion-badge.required{background:#f8717126}}.criterion-badge.optional{background:var(--bg-tertiary);color:var(--text-secondary)}.criterion-type{font-size:var(--text-s);color:var(--text-secondary);font-weight:500}.criterion-description{font-size:var(--text-s);color:var(--text-primary)}.add-criterion-button-wrapper{margin-top:1rem}.add-criterion-dialog-content{display:flex;flex-direction:column;gap:1rem}.add-criterion-dialog-footer{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--border)}.add-criterion-modal-wrapper .modal-overlay{z-index:2000}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem;border-top:1px solid var(--border-primary)}.playground-page{height:100%;display:flex;flex-direction:column;overflow:hidden}.playground-empty-state{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem}.empty-state-content{text-align:center}.empty-state-message{font-size:var(--text-m);color:var(--text-secondary);margin-bottom:1.5rem}.playground-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.playground-content .grid-container{height:100%;overflow:hidden}.chat-container{height:100%;display:flex;flex-direction:column;overflow:hidden}.messages-area{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.message{display:flex;flex-direction:column;margin-bottom:1rem;position:relative}.message-user{align-items:flex-end}.message-assistant{align-items:flex-start;width:100%}.message-bubble{font-size:var(--text-m);line-height:1.5;word-wrap:break-word;position:relative}.message-actions{margin-top:.5rem;opacity:0;animation:fadeIn .2s ease-in forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.message-actions button{display:inline-flex;align-items:center;gap:.375rem}.message-user .message-bubble{max-width:40%;padding:.75rem 1rem;border-radius:1.4rem;background:var(--brand-tint);color:#fff}.message-assistant .message-bubble{max-width:80%;color:var(--text-primary)}.message-assistant .message-bubble p{margin:0 0 .25rem}.message-assistant .message-bubble p:last-child{margin-bottom:0}.message-assistant .message-bubble ul,.message-assistant .message-bubble ol{margin:0 0 .25rem;padding-left:1.25rem}.message-assistant .message-bubble ul:last-child,.message-assistant .message-bubble ol:last-child{margin-bottom:0}.message-assistant .message-bubble li{margin:0;padding:.05rem 0}.message-assistant .message-bubble li ul,.message-assistant .message-bubble li ol{margin:.1rem 0 0}.message-assistant .message-bubble ul+p,.message-assistant .message-bubble ol+p{margin-top:.25rem}.message-assistant .message-bubble hr{border:none;border-top:1px solid var(--border);margin:1rem 0}.message-assistant .message-bubble h1,.message-assistant .message-bubble h2,.message-assistant .message-bubble h3,.message-assistant .message-bubble h4,.message-assistant .message-bubble h5,.message-assistant .message-bubble h6{margin:.75rem 0 .375rem}.message-assistant .message-bubble h1:first-child,.message-assistant .message-bubble h2:first-child,.message-assistant .message-bubble h3:first-child,.message-assistant .message-bubble h4:first-child,.message-assistant .message-bubble h5:first-child,.message-assistant .message-bubble h6:first-child{margin-top:0}.message-assistant .message-bubble blockquote{margin:.5rem 0;padding-left:1rem;border-left:3px solid var(--border)}.message-assistant .message-bubble pre{margin:.5rem 0}.message-assistant .message-bubble code{background:var(--bg-secondary);padding:.125rem .25rem;border-radius:var(--radius-s);font-size:.875em}.message-assistant .message-bubble pre code{background:none;padding:0}.input-area{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:var(--bg-primary)}.chat-input{flex:1;padding:.5rem 1rem;border:none;border-radius:1.5rem;background:var(--bg-secondary);color:var(--text-primary);font-family:inherit;font-size:var(--text-m);outline:none;min-height:2.75rem;transition:background .15s ease}.chat-input:focus{background:var(--bg-secondary)}.chat-input:disabled{opacity:.6;cursor:not-allowed;background:var(--bg-secondary)}.chat-input::placeholder{color:var(--text-secondary)}.send-button{width:40px;height:40px;padding:0;border:none;border-radius:50%;background:var(--brand-tint);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;position:relative}.send-button:hover:not(:disabled){background:var(--bg-primary);color:var(--text-primary)}.send-button:disabled{cursor:not-allowed;background:var(--bg-secondary)}.button-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.typing-indicator{display:inline-flex;align-items:center;gap:4px;padding:2px 0}.typing-indicator span{width:8px;height:8px;background:var(--text-secondary);border-radius:50%;animation:typing-bounce 1.4s infinite ease-in-out both}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typing-bounce{0%,80%,to{transform:scale(.8);opacity:.3}40%{transform:scale(1);opacity:.6}}@media (prefers-color-scheme: dark){.send-button:hover:not(:disabled){background:#374151}}@media (max-width: 768px){.chat-container{grid-column:span 2}.message-bubble{max-width:85%}}@media (max-width: 680px){.agent-select{min-width:0;font-size:var(--text-small)}.refresh-button-header{right:.75rem}.chat-container{grid-column:span 1}.message-bubble{max-width:90%}}.loading-messages{padding:2rem;text-align:center;color:var(--text-secondary);font-size:var(--text-m)}.message-bubble p{margin:0 0 .625rem}.message-bubble p:last-child{margin-bottom:0}.message-bubble ul,.message-bubble ol{margin:.625rem 0;padding-left:1.5rem}.message-bubble li{margin-bottom:.375rem}.message-bubble code{background:var(--bg-tertiary);padding:.1875rem .5rem;border-radius:var(--radius-xs);font-size:.875em;font-family:SF Mono,Monaco,Menlo,Courier New,monospace}.message-bubble pre{background:var(--bg-tertiary);padding:1rem;border-radius:var(--radius-m);overflow-x:auto;margin:.75rem 0;border:1px solid var(--border)}.message-bubble pre code{background:none;padding:0}.message-assistant .message-bubble table{border-collapse:collapse;width:100%;margin:.75rem 0;font-size:var(--text-s);overflow:hidden}.message-assistant .message-bubble table:first-child{margin-top:0}.message-assistant .message-bubble table:last-child{margin-bottom:0}.message-assistant .message-bubble th,.message-assistant .message-bubble td{padding:.625rem 1rem;text-align:left;vertical-align:top;background:transparent;border:none;border-bottom:1px solid var(--border)}.message-assistant .message-bubble th{font-weight:600;color:var(--text-primary)}.message-assistant .message-bubble tr:last-child th,.message-assistant .message-bubble tr:last-child td{border-bottom:none}.message-assistant .message-bubble th:first-child,.message-assistant .message-bubble td:first-child{padding-left:0}.message-assistant .message-bubble th:last-child,.message-assistant .message-bubble td:last-child{padding-right:0}@media (max-width: 768px){.message-assistant .message-bubble table{display:block;overflow-x:auto;white-space:nowrap}}.message-bubble a{color:var(--brand-tint);text-decoration:underline;text-underline-offset:2px}.message-bubble a:hover{color:var(--brand);text-decoration:underline}.event-summary-container{margin-bottom:1rem}.event-summary-header{width:100%;padding:.375rem 0;background:none;border:none;display:flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--text-secondary);font-size:var(--text-s);font-weight:400;text-align:left;transition:opacity .15s ease}.event-summary-header:hover{opacity:.8}.event-summary-icon{width:24px;height:24px;fill:currentColor;transition:transform .2s ease;flex-shrink:0}.event-summary-icon.expanded{transform:rotate(90deg)}.event-summary-text{flex:1}.event-details{margin:.5rem 0 0;padding:0}.event-item{padding:8px 0;border-bottom:1px solid var(--color-border-light)}.event-item:last-child{border-bottom:none}.event-header{display:flex;align-items:center;gap:.5rem;margin-bottom:8px}.event-icon{display:flex;align-items:center;width:24px;height:24px;flex-shrink:0;color:var(--text-secondary)}.event-icon svg{width:24px;height:24px;fill:currentColor}.event-type{font-size:var(--text-s);font-weight:400;color:var(--text-secondary)}.event-content{margin-top:4px;margin-left:calc(24px + .5rem)}.event-content.event-reasoning{color:var(--text-secondary);font-size:.875rem;line-height:1.5;font-style:italic}.json-container{position:relative;background:var(--bg-secondary);border:none;border-radius:var(--radius-m);padding:0;margin-top:.25rem}.json-container.collapsed{max-height:5.5rem;overflow-y:auto;overflow-x:hidden}.json-actions{position:absolute;top:.25rem;right:.25rem;display:flex;gap:.25rem;opacity:0;transition:opacity .15s ease}.json-container:hover .json-actions{opacity:1}.json-actions .button-secondary{border:none;background:var(--bg-tertiary)}.json-actions .button-secondary:hover:not(:disabled){background:var(--bg-hover);border:none}.event-tool-args .json-container,.event-tool-result .json-container{margin-top:.25rem}.event-tool-args pre,.event-tool-result pre{font-size:.6875rem;font-family:SF Mono,Monaco,Menlo,Courier New,monospace;overflow-x:auto;max-width:100%;margin:0;padding:0 6rem 0 .75rem;color:var(--text-secondary);background:transparent;border:none;white-space:pre-wrap;word-break:break-word;line-height:1.4}.knowledge-page{display:flex;flex-direction:column;gap:2rem;margin:0 auto}.knowledge-dropzone{border:2px dashed var(--border);border-radius:12px;background:#3b82f60a;padding:2.5rem 2rem;margin-bottom:2rem;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,transform .15s ease;outline:none;text-align:center;-webkit-tap-highlight-color:transparent}.knowledge-dropzone[data-dragging]{border-color:var(--brand-tint);background:#3b82f629;transform:translateY(-2px)}.knowledge-dropzone:focus,.knowledge-dropzone:focus-visible,.knowledge-dropzone:focus-within{border-color:var(--brand-tint);box-shadow:0 0 0 4px #3b82f633}.knowledge-dropzone__content{display:flex;flex-direction:column;gap:.75rem;align-items:center}.knowledge-dropzone__art{display:flex;align-items:center;gap:.75rem}.knowledge-dropzone__icon{display:inline-flex;color:var(--text-primary)}.knowledge-dropzone__icon--document{transform:rotate(-6deg);color:#4f46e5}.knowledge-dropzone__icon--folder{transform:rotate(8deg);color:#16a34a}.knowledge-subtle{color:var(--text-secondary);font-size:.95rem}.knowledge-hint{font-size:.9rem;color:var(--text-secondary)}.knowledge-error{margin:0;padding:.5rem .75rem;border-radius:8px;background:#ef44441f;color:var(--destructive);font-size:.95rem}.knowledge-file-input{display:none}.knowledge-results{display:flex;flex-direction:column;gap:1rem}.knowledge-results__header{display:flex;flex-direction:column;gap:.5rem}.knowledge-results__header h2{margin:0;font-size:1.25rem}.knowledge-results__meta{margin:0;color:var(--text-secondary);font-size:.9rem}.knowledge-results .table{gap:0;border-top:1px solid var(--border);margin-top:.5rem}.knowledge-results .table-row{padding:.75rem 0;border-bottom:1px solid var(--border);gap:1rem;display:grid;grid-template-columns:minmax(250px,1fr) 100px 120px 140px 100px;align-items:center}.knowledge-results .table-row:last-of-type{border-bottom:none}.knowledge-results .table-cell{flex-direction:row;align-items:center;min-width:0}.knowledge-results .table-cell:last-child{justify-content:flex-end}.knowledge-results .table-cell:first-child,.knowledge-results .table-cell:last-child{padding-left:0;padding-right:0}.knowledge-file-cell{display:flex;align-items:center;gap:.75rem;min-width:0}.knowledge-file-cell svg{width:24px;height:24px;flex-shrink:0;color:var(--text-secondary)}.knowledge-file-details{display:flex;flex-direction:column;gap:.125rem;min-width:0}.knowledge-file-name{font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.knowledge-file-name-button{font-weight:500;color:var(--brand-tint);background:none;border:none;padding:0;font-size:inherit;font-family:inherit;cursor:pointer;text-align:left;transition:color .15s ease;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.knowledge-file-name-button:hover{color:var(--brand);text-decoration:underline}.knowledge-file-name-button:active{color:var(--brand)}.knowledge-file-subtitle{display:block;font-size:.875rem;color:var(--text-secondary);font-weight:400;margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-filename-subtitle{margin:-.5rem 0 1rem;font-size:.95rem;color:var(--text-secondary);font-weight:400}.document-content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.document-content-tabs{display:flex;gap:.5rem;border-bottom:2px solid var(--border)}.document-content-tab{padding:.5rem 1rem;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;font-size:.95rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.document-content-tab:hover:not(:disabled){color:var(--text-primary)}.document-content-tab.active{color:var(--brand-tint);border-bottom-color:var(--brand-tint)}.document-content-tab:disabled{opacity:.4;cursor:not-allowed}.document-chunks-content{display:flex;flex-direction:column;gap:1.5rem}.document-chunk-section{display:flex;flex-direction:column;gap:.75rem}.document-chunk-delimiter{padding:.5rem .75rem;background:var(--bg-secondary);border-left:3px solid var(--brand-tint);font-size:.875rem;font-weight:600;color:var(--text-secondary);border-radius:4px}.knowledge-file-status{font-size:.85rem;color:var(--destructive)}.knowledge-file-date{font-size:.9rem;color:var(--text-secondary);white-space:nowrap}.knowledge-language{font-size:.875rem;color:var(--text-secondary);font-variant:small-caps;text-transform:lowercase}.knowledge-status-cell{display:flex;align-items:center;gap:.5rem}.knowledge-status-processing{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary)}.knowledge-status-complete{font-size:.875rem;color:var(--text-secondary)}.knowledge-status-warning-container{display:flex;align-items:center;gap:.5rem}.knowledge-status-warning{font-size:.875rem;color:var(--warning);font-weight:500}.knowledge-status-failed-container{display:flex;align-items:center;gap:.5rem}.knowledge-status-failed{font-size:.875rem;color:var(--destructive)}.knowledge-error-info{display:inline-flex;align-items:center;color:var(--destructive);cursor:help;transition:opacity .15s ease;position:relative}.knowledge-error-info svg{color:currentColor}.knowledge-error-info:hover{opacity:.7}.knowledge-error-info:hover:after{content:attr(data-error);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);padding:.5rem .75rem;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 12px #00000026;font-size:.875rem;white-space:pre-wrap;max-width:300px;z-index:100;pointer-events:none}.knowledge-error-info:hover:before{content:"";position:absolute;left:50%;bottom:calc(100% + 2px);transform:translate(-50%);border:6px solid transparent;border-top-color:var(--border);z-index:100;pointer-events:none}@media (max-width: 720px){.knowledge-results .table-row{grid-template-columns:1fr;gap:.75rem}.knowledge-results .table-cell:last-child{justify-content:flex-start}.knowledge-file-name{white-space:normal}}@media (prefers-color-scheme: dark){.knowledge-dropzone{border-color:#3b82f666;background:#3b82f62e}.knowledge-dropzone[data-dragging]{background:#3b82f647}.knowledge-dropzone:focus,.knowledge-dropzone:focus-visible,.knowledge-dropzone:focus-within{box-shadow:0 0 0 4px #3b82f652}.knowledge-error{background:#ef444433;color:#fca5a5}.knowledge-subtle,.knowledge-hint,.knowledge-file-date{color:var(--text-tertiary)}}.knowledge-collection-button{display:flex;align-items:center;gap:.75rem;padding:0;border:none;background:none;cursor:pointer;text-align:left;min-width:0;-webkit-tap-highlight-color:transparent}.knowledge-collection-button svg{flex-shrink:0;color:var(--text-secondary)}.knowledge-collection-button:hover .knowledge-collection-name{color:var(--brand-tint)}.knowledge-collection-details{display:flex;flex-direction:column;gap:.25rem;min-width:0}.knowledge-collection-name{font-weight:500;font-size:1rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .15s ease}.knowledge-collection-meta{font-size:.875rem;color:var(--text-secondary)}.knowledge-collection-status{display:flex;align-items:center;gap:.5rem}.knowledge-create-form{padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--bg-secondary)}.knowledge-create-form form{display:flex;flex-direction:column;gap:1rem}.knowledge-create-input{padding:.625rem .875rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:1rem;font-family:inherit;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.knowledge-create-input:focus{border-color:var(--brand-tint);box-shadow:0 0 0 3px #3b82f633}.knowledge-create-input::placeholder{color:var(--text-tertiary)}.knowledge-create-actions{display:flex;gap:.5rem}.knowledge-loading{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:3rem 1rem;color:var(--text-secondary)}.knowledge-empty{padding:3rem 1rem;text-align:center;color:var(--text-secondary)}.knowledge-empty p{margin:0;font-size:1rem}@media (prefers-color-scheme: dark){.knowledge-create-form{background:#ffffff08;border-color:#94a3b84d}.knowledge-create-input{background:#0003;border-color:#94a3b84d}.knowledge-create-input:focus{border-color:var(--brand-tint);box-shadow:0 0 0 3px #3b82f652}}.document-metadata{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem;background:var(--bg-primary);border:1px solid var(--border);border-radius:8px}.document-metadata__row{display:flex;gap:1rem;align-items:baseline}.document-metadata__label{font-weight:600;min-width:80px;color:var(--text-secondary, #6b7280)}.document-metadata__path{font-family:var(--font-mono, monospace);font-size:var(--text-sm, .875rem)}.document-status{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;border-radius:4px;font-size:var(--text-sm, .875rem);font-weight:500}.document-status--complete{background:#10b9811a;color:#059669}.document-status--no_content{background:#f59e0b1a;color:#d97706}.document-status--failed{background:#ef44441a;color:#dc2626}.document-status--pending,.document-status--processing,.document-status--extracting,.document-status--chunking,.document-status--generating_qa,.document-status--embedding{background:#3b82f61a;color:var(--brand-tint)}.document-error{color:var(--error);font-size:var(--text-sm, .875rem)}.document-content-section,.document-qa-section,.document-chunks-section{margin-top:1rem}.document-content-section h2,.document-qa-section h2,.document-chunks-section h2{font-size:var(--text-lg, 1.125rem);font-weight:600;margin-bottom:1rem}.document-content{padding:1.5rem;background:var(--bg-primary);border:1px solid var(--border);border-radius:8px;overflow-x:auto}.document-markdown{line-height:1.6}.document-markdown h1{font-size:var(--text-xl, 1.25rem);font-weight:700;margin-top:1.5rem;margin-bottom:.75rem}.document-markdown h1:first-child{margin-top:0}.document-markdown h2{font-size:var(--text-lg, 1.125rem);font-weight:600;margin-top:1.25rem;margin-bottom:.5rem}.document-markdown h3{font-size:var(--text-base, 1rem);font-weight:600;margin-top:1rem;margin-bottom:.5rem}.document-markdown p{margin-bottom:.75rem}.document-markdown code{font-family:var(--font-mono, monospace);font-size:.9em;background:#0000000d;padding:.125rem .25rem;border-radius:3px}.document-markdown pre{background:#0000000d;padding:1rem;border-radius:6px;overflow-x:auto;margin-bottom:.75rem}.document-markdown pre code{background:none;padding:0}.document-markdown ul,.document-markdown ol{margin-bottom:.75rem;padding-left:2rem}.document-markdown li{margin-bottom:.25rem}.document-text{font-family:var(--font-mono, monospace);font-size:var(--text-sm, .875rem);line-height:1.6;white-space:pre-wrap;word-wrap:break-word;margin:0}.document-qa-list{display:flex;flex-direction:column;gap:1rem}.document-qa-item{padding:1.5rem;background:var(--bg-primary);border:1px solid var(--border);border-radius:8px}.document-qa-question{margin-bottom:.75rem;color:var(--text-primary, #1f2937)}.document-qa-question strong{color:var(--brand-tint)}.document-qa-answer{color:var(--text-primary, #1f2937);line-height:1.6}.document-qa-answer strong{color:#059669}.document-qa-confidence{margin-top:.75rem;font-size:var(--text-sm, .875rem);color:var(--text-secondary, #6b7280)}.document-chunks-section{margin-top:2rem}.document-chunks-section summary{cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none;display:flex;align-items:center;gap:.5rem}.document-chunks-section summary::-webkit-details-marker{display:none}.document-chunks-section summary:before{content:"▶";display:inline-block;transition:transform .2s ease}.document-chunks-section[open] summary:before{transform:rotate(90deg)}.document-chunks-section summary:hover{color:var(--brand-tint)}.document-chunks-list{margin-top:1rem;display:flex;flex-direction:column;gap:1rem}.document-chunk-item{padding:1rem;background:var(--bg-primary);border:1px solid var(--border);border-radius:8px}.document-chunk-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.document-chunk-index{font-weight:600;font-size:var(--text-sm, .875rem);color:var(--text-secondary, #6b7280)}.document-chunk-range{font-size:var(--text-xs, .75rem);color:var(--text-tertiary, #9ca3af);font-family:var(--font-mono, monospace)}.document-chunk-context{font-size:var(--text-sm, .875rem);color:var(--text-secondary, #6b7280);font-style:italic;margin-bottom:.5rem}.document-chunk-content{font-size:var(--text-sm, .875rem);line-height:1.6;color:var(--text-primary, #1f2937)}@media (prefers-color-scheme: dark){.knowledge-page{background:#111827;color:#f9fafb}.document-card,.collection-card{background:#1f2937;border-color:#374151}.document-card:hover,.collection-card:hover{background:#2e394b;border-color:#4b5563}.document-chunk-delimiter{background:#1f2937;border-color:#60a5fa}.document-metadata{background:#1f2937}.document-metadata-item label{color:#9ca3af}.document-metadata-item span{color:#f9fafb}}.collection-agent-access__status{display:flex;align-items:center;gap:var(--spacing-md)}.collection-access-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.collection-access-badge--all{background-color:var(--color-success-bg);color:var(--color-success-text)}.collection-access-badge--specific{background-color:var(--color-warning-bg);color:var(--color-warning-text)}.collection-agent-access__loading{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg);color:var(--color-text-secondary)}.collection-agent-access__empty{padding:var(--spacing-lg);text-align:center;color:var(--color-text-secondary)}.collection-agent-access__error{padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md);background-color:var(--color-error-bg);color:var(--color-error-text);border-radius:var(--border-radius-sm)}.collection-agent-access__permission-notice{padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md);background-color:var(--color-info-bg);color:var(--color-info-text);border-radius:var(--border-radius-sm)}.collection-agent-row{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xs) 0}.collection-agent-details{display:flex;flex-direction:column;gap:var(--spacing-xs)}.collection-agent-name{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.collection-agent-status{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.collection-agent-toggle{display:flex;justify-content:flex-end;align-items:center}.collection-agent-access__warning{display:flex;align-items:center;gap:.5rem;background:#fef3c7;color:#92400e;padding:.75rem 1rem;border-radius:.5rem;margin-bottom:1rem;font-size:.875rem;font-weight:500}.collection-agent-access__warning svg{flex-shrink:0}@media (prefers-color-scheme: dark){.collection-agent-access__warning{background:#451a03;color:#fbbf24}}.collection-agent-access__actions{display:flex;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.agents-empty{padding:3rem;text-align:center;color:var(--text-secondary)}.agents-item-row{display:flex;align-items:center;gap:1rem;width:100%;color:var(--text)}.agents-item-details{display:flex;flex-direction:column;gap:.25rem;flex:1}.agents-item-name{font-weight:500;font-size:1rem;color:var(--text-primary)}.agents-item-status{display:flex;align-items:center;min-width:80px}.agents-status-active{color:#34c759;font-weight:500}.agents-status-inactive{color:var(--text-secondary)}.agents-status-inactive-badge{display:inline-block;padding:.25rem .75rem;font-size:.75rem;font-weight:600;border-radius:.375rem;background:#fef3c7;color:#92400e;text-transform:uppercase;letter-spacing:.025em}.agents-item-date{font-size:.875rem;color:var(--text-secondary);white-space:nowrap}.agents-create-form{padding:1.5rem;background:var(--bg-secondary);border-radius:.75rem;margin-bottom:1.5rem}.agents-create-form form{display:flex;flex-direction:column;gap:1rem}.agents-create-input{padding:.75rem 1rem;border:0px solid transparent;border-radius:.65rem;box-shadow:inset 0 0 0 2px transparent;font-size:var(--text-m);background:var(--bg-primary);color:var(--text-primary);transition:box-shadow .15s ease;width:100%}.agents-create-input:focus{outline:none;box-shadow:inset 0 0 0 2px var(--brand-tint)}.agents-create-actions{display:flex;gap:.5rem}.agent-form-buttons{display:flex;gap:1rem;margin-top:2rem}.agent-inactive-warning{display:flex;align-items:center;gap:.5rem;background:#fef3c7;color:#92400e;padding:.75rem 1rem;border-radius:.5rem;margin-top:.5rem;font-size:.875rem;font-weight:500}.agent-inactive-warning svg{flex-shrink:0}@media (prefers-color-scheme: dark){.agent-inactive-warning,.agents-status-inactive-badge{background:#451a03;color:#fbbf24}}.checkbox-wrapper{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem}.checkbox{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:1.25rem;height:1.25rem;border-radius:.25rem;background:var(--bg-secondary);box-shadow:inset 0 0 0 2px var(--border-input);cursor:pointer;transition:all .15s ease;margin:0}.checkbox-icon{position:absolute;pointer-events:none;color:#fff;transition:opacity .15s ease}.checkbox:checked{background:var(--brand-tint);box-shadow:inset 0 0 0 2px var(--brand-tint)}.checkbox:focus{outline:none;box-shadow:inset 0 0 0 2px var(--brand-tint),0 0 0 3px #007aff33}.checkbox:disabled{opacity:.5;cursor:not-allowed}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-text{color:var(--text-primary);font-size:var(--text-m)}.flows-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--color-text-secondary)}.flows-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem;color:var(--color-text-secondary)}.flows-error{padding:1rem;margin:1rem 0;background-color:var(--color-error-bg);color:var(--color-error);border-radius:var(--radius-md)}.flows-create-form{padding:1rem;margin-bottom:1rem;background-color:var(--color-bg-secondary);border-radius:var(--radius-md)}.flows-create-form form{display:flex;flex-direction:column;gap:.75rem}.flows-create-input{padding:.75rem;font-size:1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text)}.flows-create-input:focus{outline:none;border-color:var(--color-primary)}.flows-create-input:disabled{opacity:.6;cursor:not-allowed}.flows-create-actions{display:flex;gap:.5rem}.flows-delete-button{opacity:0;transition:opacity .15s ease}.table-row:hover .flows-delete-button,.flows-delete-button:focus{opacity:1}.flows-delete-button:hover{color:var(--text-destructive)}.flows-delete-modal{display:flex;flex-direction:column;gap:1rem}.flows-delete-warning{color:var(--text-destructive);font-weight:500}.flows-delete-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.5rem}.react-flow{direction:ltr}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;cursor:-webkit-grab;cursor:grab}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow .react-flow__edges{pointer-events:none;overflow:visible}.react-flow__edge-path,.react-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{pointer-events:visibleStroke;cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;-webkit-animation:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:-webkit-grab;cursor:grab}.react-flow__node.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:-webkit-grab;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background:#1a192b;border:1px solid white;border-radius:100%}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:-4px;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{font-size:10px;background:#ffffff80;padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@-webkit-keyframes dashdraw{0%{stroke-dashoffset:10}}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:3px;width:150px;font-size:12px;color:#222;text-align:center;border-width:1px;border-style:solid;border-color:#1a192b;background-color:#fff}.react-flow__node-default.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{border:none;background:#fefefe;border-bottom:1px solid #eee;box-sizing:content-box;display:flex;justify-content:center;align-items:center;width:16px;height:16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:5px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:4px;height:4px;border:1px solid #fff;border-radius:1px;background-color:#3367d9;transform:translate(-50%,-50%)}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:#3367d9;border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.keyvalue-widget{display:flex;flex-direction:column;gap:.5rem}.keyvalue-widget__row{display:flex;gap:.5rem;align-items:center}.keyvalue-widget__input{padding:.5rem .75rem;border:0;border-radius:.5rem;box-shadow:inset 0 0 0 2px transparent;font-size:var(--text-small);background:var(--bg-secondary);color:var(--text-primary);transition:box-shadow .15s ease}.keyvalue-widget__input::placeholder{color:var(--text-secondary)}.keyvalue-widget__input:focus{outline:none;box-shadow:inset 0 0 0 2px var(--brand-tint)}.keyvalue-widget__input:disabled{opacity:.5;cursor:not-allowed}.keyvalue-widget__input--key{flex:1}.keyvalue-widget__input--value{flex:2}.keyvalue-widget__remove{background:none;border:none;font-size:1.25rem;color:var(--text-secondary);cursor:pointer;padding:.25rem;line-height:1;flex-shrink:0}.keyvalue-widget__remove:hover{color:var(--error)}.keyvalue-widget__remove:disabled{opacity:.5;cursor:not-allowed}.keyvalue-widget__add{align-self:flex-start;padding:.375rem .75rem;border:0;border-radius:.5rem;font-size:var(--text-small);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease}.keyvalue-widget__add:hover{background:var(--bg-tertiary);color:var(--text-primary)}.keyvalue-widget__add:disabled{opacity:.5;cursor:not-allowed}.rjsf-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:.375rem;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease}.rjsf-icon-btn:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}.rjsf-icon-btn:disabled{opacity:.4;cursor:not-allowed}.rjsf-icon-btn--danger:hover:not(:disabled){background:var(--error-bg, rgba(239, 68, 68, .1));color:var(--error)}.rjsf-add-btn-row{display:flex;justify-content:flex-start;margin-top:.5rem}.rjsf-add-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border:none;border-radius:.5rem;font-size:var(--text-small);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease}.rjsf-add-btn:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}.rjsf-add-btn:disabled{opacity:.4;cursor:not-allowed}.config-sidebar .array-item{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;margin-bottom:.5rem;background:var(--bg-secondary);border-radius:.5rem}.config-sidebar .array-item>.form-group{flex:1;margin:0}.config-sidebar .array-item-toolbox{display:flex;gap:.25rem;flex-shrink:0}.config-sidebar .array-item-toolbox .btn-group{display:flex;gap:.25rem}.config-sidebar .col-xs-9,.config-sidebar .col-xs-12,.config-sidebar .col-md-10,.config-sidebar .col-xl-11{flex:1;padding:0}.config-sidebar .col-xs-3,.config-sidebar .col-md-2,.config-sidebar .col-xl-1{flex-shrink:0;padding:0}.config-sidebar .row{display:contents}.config-sidebar-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:transparent;z-index:99;pointer-events:none;transition:background-color .2s ease}.config-sidebar-backdrop--open{pointer-events:auto;background-color:#0000001a}.config-sidebar{position:fixed;top:0;right:0;width:360px;max-width:100%;height:100vh;background:var(--bg-primary);border-left:1px solid var(--border);box-shadow:-4px 0 12px #0000001a;z-index:100;display:flex;flex-direction:column;transform:translate(100%);transition:transform .25s ease}.config-sidebar--open{transform:translate(0)}.config-sidebar__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.config-sidebar__header h3{margin:0;font-size:var(--text-lg);font-weight:600}.config-sidebar__close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:.25rem;line-height:1}.config-sidebar__close:hover{color:var(--text-primary)}.config-sidebar__body{flex:1;overflow-y:auto;padding:1.25rem}.config-sidebar .rjsf{display:flex;flex-direction:column;gap:1rem}.config-sidebar .form-group{display:flex;flex-direction:column;gap:.375rem}.config-sidebar .control-label{font-size:var(--text-small);font-weight:500;color:var(--text-primary)}.config-sidebar .field-description{font-size:.75rem;color:var(--text-secondary);margin-top:.125rem}.config-sidebar input[type=text],.config-sidebar input[type=number],.config-sidebar input[type=url]{padding:.75rem 1rem;border:0;border-radius:.65rem;box-shadow:inset 0 0 0 2px transparent;font-size:var(--text-m);background:var(--bg-secondary);color:var(--text-primary);transition:box-shadow .15s ease;width:100%}.config-sidebar input[type=text]::placeholder,.config-sidebar input[type=number]::placeholder,.config-sidebar input[type=url]::placeholder{color:var(--text-secondary)}.config-sidebar input[type=text]:focus,.config-sidebar input[type=number]:focus,.config-sidebar input[type=url]:focus{outline:none;box-shadow:inset 0 0 0 2px var(--brand-tint)}.config-sidebar input[type=text]:disabled,.config-sidebar input[type=number]:disabled,.config-sidebar input[type=url]:disabled{opacity:.5;cursor:not-allowed}.config-sidebar textarea{padding:.75rem 1rem;border:0;border-radius:.65rem;box-shadow:inset 0 0 0 2px transparent;font-size:var(--text-m);font-family:inherit;background:var(--bg-secondary);color:var(--text-primary);transition:box-shadow .15s ease;width:100%;min-height:100px;resize:vertical}.config-sidebar textarea::placeholder{color:var(--text-secondary)}.config-sidebar textarea:focus{outline:none;box-shadow:inset 0 0 0 2px var(--brand-tint)}.config-sidebar textarea:disabled{opacity:.5;cursor:not-allowed}.config-sidebar select{padding:.75rem 2.5rem .75rem 1rem;border:0;border-radius:.65rem;box-shadow:inset 0 0 0 2px transparent;font-size:var(--text-m);background:var(--bg-secondary);color:var(--text-primary);width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center}.config-sidebar select:focus{outline:none;box-shadow:inset 0 0 0 2px var(--brand-tint)}.config-sidebar select:disabled{opacity:.5;cursor:not-allowed}.config-sidebar .errors{display:none}.config-sidebar .error-detail{list-style:none;margin:.25rem 0 0;padding:0}.config-sidebar .error-detail .text-danger{font-size:.75rem;color:var(--error);margin:0;padding:0}.config-sidebar .text-danger{font-size:.75rem;color:var(--error);margin-top:.25rem}.flow-run-panel{position:absolute;right:1rem;top:1rem;bottom:1rem;width:380px;max-width:calc(100% - 2rem);background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;z-index:20;display:flex;flex-direction:column;overflow:hidden}.flow-run-panel__header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.flow-run-panel__header h3{margin:0;font-size:var(--text-base);font-weight:600}.flow-run-panel__close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:.25rem;line-height:1}.flow-run-panel__close:hover{color:var(--text-primary)}.flow-run-panel__body{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:1rem}.flow-run-panel__loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;color:var(--text-secondary)}.flow-run-panel__section{display:flex;flex-direction:column;gap:.5rem}.flow-run-panel__section--error{background:#ef44441a;padding:.75rem;border-radius:var(--radius-sm);border:1px solid rgba(239,68,68,.2)}.flow-run-panel__section-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.flow-run-panel__row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.flow-run-panel__label{font-size:var(--text-small);color:var(--text-secondary)}.flow-run-panel__status{display:inline-flex;align-items:center;padding:.25rem .5rem;font-size:.75rem;font-weight:500;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.025em}.flow-run-panel__status--pending{background:#6b72801a;color:#6b7280}.flow-run-panel__status--running{background:#3b82f61a;color:#3b82f6}.flow-run-panel__status--succeeded{background:#10b9811a;color:#10b981}.flow-run-panel__status--failed{background:#ef44441a;color:#ef4444}.flow-run-panel__message{font-size:var(--text-small);color:var(--text-primary);background:var(--bg-secondary);padding:.75rem;border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word}.flow-run-panel__error{font-size:var(--text-small);color:#ef4444;white-space:pre-wrap;word-break:break-word}.flow-run-panel__json{font-family:var(--font-mono, monospace);font-size:.75rem;background:var(--bg-secondary);padding:.75rem;border-radius:var(--radius-sm);overflow-x:auto;margin:0;white-space:pre-wrap;word-break:break-word}.flow-run-panel__events{display:flex;flex-direction:column;gap:.5rem}.flow-run-panel__events-empty{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;color:var(--text-secondary);font-size:var(--text-small)}.flow-run-panel__event{display:flex;gap:.75rem;padding:.5rem;background:var(--bg-secondary);border-radius:var(--radius-sm);border-left:3px solid var(--border)}.flow-run-panel__event--flow-started{border-left-color:#3b82f6}.flow-run-panel__event--flow-completed.flow-run-panel__event--succeeded{border-left-color:#10b981}.flow-run-panel__event--flow-completed.flow-run-panel__event--failed{border-left-color:#ef4444}.flow-run-panel__event--step.flow-run-panel__event--running{border-left-color:#f59e0b}.flow-run-panel__event--step.flow-run-panel__event--success{border-left-color:#10b981}.flow-run-panel__event--step.flow-run-panel__event--error{border-left-color:#ef4444}.flow-run-panel__event--step-started{border-left-color:#f59e0b}.flow-run-panel__event--step-completed.flow-run-panel__event--success{border-left-color:#10b981}.flow-run-panel__event--step-completed.flow-run-panel__event--error{border-left-color:#ef4444}.flow-run-panel__event-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.75rem}.flow-run-panel__event-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.flow-run-panel__event-header{display:flex;align-items:center;gap:.5rem}.flow-run-panel__event-title{font-size:var(--text-small);color:var(--text-primary)}.flow-run-panel__event-title code{font-family:var(--font-mono, monospace);font-size:.75rem;background:var(--bg-tertiary, var(--bg-primary));padding:.125rem .25rem;border-radius:var(--radius-sm)}.flow-run-panel__event-time{font-size:.625rem;color:var(--text-secondary)}.flow-run-panel__event-duration{font-size:.625rem;color:var(--text-secondary);margin-left:auto}.flow-run-panel__event-toggle{background:none;border:none;font-size:.625rem;color:var(--text-secondary);cursor:pointer;padding:.125rem}.flow-run-panel__event-toggle:hover{color:var(--text-primary)}.flow-run-panel__event-details{margin-top:.5rem;display:flex;flex-direction:column;gap:.5rem}.flow-run-panel__event-section{display:flex;flex-direction:column;gap:.25rem}.flow-run-panel__event-section--error{background:#ef44441a;padding:.5rem;border-radius:var(--radius-sm)}.flow-run-panel__event-section-title{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.flow-run-panel__event-json{font-family:var(--font-mono, monospace);font-size:.625rem;background:var(--bg-primary);padding:.5rem;border-radius:var(--radius-sm);overflow-x:auto;margin:0;max-height:150px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.flow-run-history{position:absolute;left:0;bottom:0;background:var(--bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;z-index:10;display:flex;flex-direction:column;overflow:hidden;will-change:transform;transition:box-shadow .15s ease}.flow-run-history--dragging,.flow-run-history--resizing{transition:none;box-shadow:0 8px 24px #00000040}.flow-run-history__header{display:flex;align-items:center;gap:.5rem;padding:.75rem .75rem .75rem .5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);cursor:grab;-webkit-user-select:none;user-select:none}.flow-run-history--collapsed .flow-run-history__header{border-bottom:none}.flow-run-history--dragging .flow-run-history__header{cursor:grabbing}.flow-run-history__drag-handle{display:flex;align-items:center;justify-content:center;opacity:.4;color:var(--color-text-secondary);transition:opacity .15s ease;flex-shrink:0;padding:.25rem}.flow-run-history__header:hover .flow-run-history__drag-handle{opacity:.7}.flow-run-history__title{flex:1;min-width:0}.flow-run-history__count{background:var(--bg-tertiary, var(--bg-primary));padding:.125rem .375rem;border-radius:var(--radius-sm);font-size:.625rem;flex-shrink:0}.flow-run-history__actions{display:flex;align-items:center;gap:.25rem;margin-left:auto}.flow-run-history__action-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;opacity:.6;transition:opacity .15s ease,background .15s ease}.flow-run-history__action-btn:hover{opacity:1;background:var(--bg-tertiary, rgba(0, 0, 0, .1))}.flow-run-history__list{flex:1;overflow-y:auto;padding:.5rem;display:flex;flex-direction:column;gap:.25rem}.flow-run-history__loading,.flow-run-history__error,.flow-run-history__empty{padding:1rem;text-align:center;color:var(--color-text-secondary);font-size:var(--text-small)}.flow-run-history__error{color:var(--color-error)}.flow-run-history__item{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;text-align:left;width:100%}.flow-run-history__item:hover{background:var(--color-bg-hover, var(--bg-tertiary))}.flow-run-history__item--selected{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary-light, rgba(59, 130, 246, .3))}.flow-run-history__status{flex-shrink:0;width:8px;height:8px;border-radius:50%;background:#6b7280}.flow-run-history__status--pending{background:#6b7280}.flow-run-history__status--running{background:#3b82f6;animation:pulse 1.5s ease-in-out infinite}.flow-run-history__status--succeeded{background:#10b981}.flow-run-history__status--failed{background:#ef4444}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.flow-run-history__item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.flow-run-history__item-message{font-size:.75rem;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flow-run-history__item-time{font-size:.625rem;color:var(--color-text-secondary)}.flow-run-history__resize-handle{position:absolute;top:0;right:0;width:12px;height:12px;cursor:nesw-resize;opacity:0;transition:opacity .15s ease}.flow-run-history:hover .flow-run-history__resize-handle{opacity:.4}.flow-run-history__resize-handle:hover{opacity:.8}.flow-editor{display:flex;flex-direction:column;height:100%}.flow-editor__content{position:relative;flex:1;min-height:0}.flow-editor__canvas{position:absolute;top:0;right:0;bottom:0;left:0}.flow-editor__loading,.flow-editor__error,.flow-editor__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem;text-align:center;color:var(--color-text-secondary)}.flow-editor__error{color:var(--color-error)}.flow-editor__canvas-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1rem;color:var(--color-text-secondary)}.flow-palette{position:absolute;left:0;bottom:0;z-index:10;background:var(--bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;display:flex;flex-direction:column;overflow:hidden;will-change:transform;transition:box-shadow .15s ease}.flow-palette--dragging,.flow-palette--resizing{transition:none;box-shadow:0 8px 24px #00000040}.flow-palette__header{display:flex;align-items:center;gap:.5rem;padding:.75rem .75rem .75rem .5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);cursor:grab;-webkit-user-select:none;user-select:none}.flow-palette--collapsed .flow-palette__header{border-bottom:none}.flow-palette--dragging .flow-palette__header{cursor:grabbing}.flow-palette__drag-handle{display:flex;align-items:center;justify-content:center;opacity:.4;color:var(--color-text-secondary);transition:opacity .15s ease;flex-shrink:0;padding:.25rem}.flow-palette__header:hover .flow-palette__drag-handle{opacity:.7}.flow-palette__title{flex:1;min-width:0}.flow-palette__count{background:var(--bg-tertiary, var(--bg-primary));padding:.125rem .375rem;border-radius:var(--radius-sm);font-size:.625rem;flex-shrink:0}.flow-palette__actions{display:flex;align-items:center;gap:.25rem;margin-left:auto}.flow-palette__action-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;opacity:.6;transition:opacity .15s ease,background .15s ease}.flow-palette__action-btn:hover{opacity:1;background:var(--bg-tertiary, rgba(0, 0, 0, .1))}.flow-palette__items{flex:1;overflow-y:auto;padding:.5rem;display:flex;flex-direction:column;gap:.5rem}.flow-palette__item{padding:.5rem .75rem;font-size:.875rem;background:var(--color-bg);border:1px solid var(--color-border);border-left:3px solid;border-radius:var(--radius-sm);cursor:grab;transition:all .15s ease}.flow-palette__item:hover{background:var(--color-bg-hover, var(--bg-tertiary))}.flow-palette__item:active{cursor:grabbing}.flow-palette__resize-handle{position:absolute;top:0;right:0;width:12px;height:12px;cursor:nesw-resize;opacity:0;transition:opacity .15s ease}.flow-palette:hover .flow-palette__resize-handle{opacity:.4}.flow-palette__resize-handle:hover{opacity:.8}.flow-drag-overlay{position:fixed;pointer-events:none;z-index:1000;opacity:.9}.flow-drag-overlay .flow-node{min-width:150px;box-shadow:0 8px 24px #0003}.flow-node{padding:0;border-radius:var(--radius-md);border:1px solid var(--color-border);background-color:var(--color-bg);min-width:150px;box-shadow:0 2px 4px #0000001a}.react-flow__node{overflow:visible}.flow-node__header{padding:.5rem .75rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#fff;border-radius:var(--radius-md) var(--radius-md) 0 0}.flow-node__body{padding:.75rem;font-size:.875rem;color:var(--color-text);border-top:1px solid var(--color-border)}.flow-node--unknown .flow-node__header{background-color:var(--color-error, #ef4444)}.react-flow__node{cursor:grab}.react-flow__node:active{cursor:grabbing}.react-flow__node.selected .flow-node{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light, rgba(59, 130, 246, .3))}.react-flow__handle{width:12px!important;height:12px!important;background-color:#6b7280!important;border:2px solid #1f2937!important;border-radius:50%!important;opacity:1!important;z-index:10}.react-flow__handle:hover{background-color:var(--color-primary)!important}.react-flow__handle.source{background-color:#10b981!important}.react-flow__handle.target{background-color:#6b7280!important}.flow-handle--left-title{left:-6px!important;right:auto!important;top:20px!important;bottom:auto!important;transform:translate(-50%)!important}.flow-handle--right-center{right:-6px!important;left:auto!important;top:50%!important;bottom:auto!important;transform:translate(50%,-50%)!important}.flow-handle--bottom-center{bottom:-6px!important;top:auto!important;left:50%!important;right:auto!important;transform:translate(-50%,50%)!important;background-color:#8b5cf6!important}.flow-handle--bottom-center:hover{background-color:#7c3aed!important}.react-flow__edge-path{stroke:#64748b;stroke-width:2}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:hover .react-flow__edge-path{stroke:var(--color-primary, #3b82f6)!important}.react-flow__connection-line{stroke:var(--color-primary, #3b82f6)!important;stroke-width:2!important}.flow-editor__actions{display:flex;gap:.5rem}.flow-trigger-modal__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#00000080;z-index:1000}.flow-trigger-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:480px;max-width:calc(100% - 2rem);background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 20px 40px #0000004d;z-index:1001;display:flex;flex-direction:column}.flow-trigger-modal__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.flow-trigger-modal__header h3{margin:0;font-size:var(--text-lg);font-weight:600}.flow-trigger-modal__close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:.25rem;line-height:1}.flow-trigger-modal__close:hover{color:var(--text-primary)}.flow-trigger-modal__body{padding:1.25rem;display:flex;flex-direction:column;gap:.5rem}.flow-trigger-modal__label{font-size:var(--text-small);font-weight:500;color:var(--text-primary)}.flow-trigger-modal__textarea{min-height:100px;resize:vertical;width:100%;padding:.75rem 1rem;border:0;border-radius:.65rem;box-shadow:inset 0 0 0 2px transparent;font-size:var(--text-m);font-family:inherit;background:var(--bg-secondary);color:var(--text-primary);transition:box-shadow .15s ease}.flow-trigger-modal__textarea::placeholder{color:var(--text-secondary)}.flow-trigger-modal__textarea:focus{outline:none;box-shadow:inset 0 0 0 2px var(--brand-tint)}.flow-trigger-modal__footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid var(--border);background:var(--bg-secondary);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.flow-node--multi-port{min-width:180px}.flow-node__ports{display:flex;flex-direction:column;gap:.25rem;padding:.5rem .75rem;border-top:1px solid var(--color-border)}.flow-node__port-row{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;position:relative}.flow-node__port-label{font-size:.75rem;color:var(--color-text-secondary);text-transform:lowercase}.flow-handle--port{position:relative!important;transform:none!important;top:auto!important;right:auto!important;left:auto!important;bottom:auto!important;flex-shrink:0}.tests-name-cell{display:flex;flex-direction:column;gap:.25rem}.tests-name-cell__title{font-weight:600;color:var(--text-primary)}.tests-name-cell__subtitle{color:var(--text-secondary);font-size:var(--text-s)}.tests-last-run{display:flex;align-items:center;gap:.5rem}.tests-last-run__text{font-size:var(--text-s);color:var(--text-secondary);white-space:nowrap}.tests-last-run__badge{display:inline-flex;flex-shrink:0}.tests-row-actions{justify-content:flex-end;opacity:0;transition:opacity .15s ease}.table-row-clickable:hover .tests-row-actions{opacity:1}
