:root{--primary-purple: #8716e4;--primary-dark-blue: #4451F1;--primary-blue: #008CFF;--primary-gradient: linear-gradient(135deg, var(--primary-purple) 0%, var(--primary-blue) 100%);--text-primary: #333333;--text-secondary: #666666;--text-light: #999999;--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-input: #fafafa;--border-light: #e0e0e0;--shadow-default: 0 20px 40px rgba(0, 0, 0, .1);--shadow-hover: 0 5px 15px rgba(0, 0, 0, .2);--shadow-button: 0 5px 15px rgba(68, 81, 241, .3);--radius-small: 8px;--radius-medium: 15px;--radius-large: 20px;--radius-full: 25px;--transition-default: all .3s ease;--app-vh: calc(100vh / .9)}html{zoom:.9}html,body{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;background-color:var(--bg-secondary)}h1,h2,h3,h4,h5,h6{font-weight:700;color:var(--text-primary)}p{color:var(--text-secondary);line-height:1.6}a{color:var(--primary-blue);text-decoration:none;transition:var(--transition-default)}a:hover{text-decoration:underline}.test-case-parent{color:#8716e4;font-size:larger}input,button{font-family:inherit}input:focus{outline:none}button{cursor:pointer;transition:var(--transition-default)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-column{display:flex;flex-direction:column}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease-out}.notification-portal{position:fixed;top:0;left:0;width:100vw;height:var(--app-vh);z-index:99999;pointer-events:none}.notification-portal .backdrop{position:fixed;inset:0;z-index:99999;background:transparent;pointer-events:auto}.notification-portal .dropdown{position:fixed;width:320px;max-width:calc(100vw - 240px);max-height:calc(var(--app-vh) - 180px);background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000002e;z-index:100000;overflow:hidden;pointer-events:auto;animation:notifSlideIn .2s ease-out}@keyframes notifSlideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.notification-portal .dropdown-header{padding:12px 16px;font-weight:600;border-bottom:1px solid #eee}.notification-portal .dropdown-body{max-height:300px;overflow-y:auto}.notification-portal .empty{padding:32px 16px;text-align:center;color:#999}.notification-portal .notification-item{display:flex;gap:12px;padding:12px 16px;cursor:pointer;border-bottom:1px solid #f5f5f5}.notification-portal .notification-item:hover{background:#f9f9f9}.notification-portal .notification-item.unread{background:#f0f7ff}.notification-portal .notification-item.success .icon{color:#27ae60}.notification-portal .notification-item.error .icon{color:#e74c3c}.notification-portal .content{flex:1}.notification-portal .content .message{margin:0 0 4px;font-size:14px}.notification-portal .content .time{font-size:12px;color:#999}@media (max-width: 768px){.notification-portal .dropdown{width:calc(100vw - 32px);left:16px!important;top:80px!important}}.relink-success-dialog .mat-mdc-dialog-container .mdc-dialog__surface{border-radius:24px!important;padding:0!important;box-shadow:0 1px 8px #00000014,0 4px 8px #0000000a!important}.relink-success-backdrop{background:#0000004d;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}:root{--ngd-colors-gray-100: #ffffff;--ngd-colors-gray-200: #f7f7f7;--ngd-colors-gray-300: #edeff3;--ngd-colors-gray-400: #d5d8e0;--ngd-colors-gray-450: #c2c0c0;--ngd-colors-gray-500: #6f7480;--ngd-colors-gray-600: #4d5059;--ngd-colors-gray-650: #383a40;--ngd-colors-gray-700: #27282b;--ngd-colors-gray-800: #151516;--ngd-colors-acc1-400: #a977ff;--ngd-colors-acc1-500: #9140ff;--ngd-colors-acc1-500-40: rgba(145, 64, 255, .4);--ngd-colors-acc1-500-50: rgba(145, 64, 255, .5);--ngd-colors-acc4-500: #1096e7}:root{--ngd-txt-primary-default: var(--ngd-colors-gray-800);--ngd-diagram-background-color: var(--ngd-colors-gray-200);--ngd-ui-bg-primary-default: var(--ngd-colors-gray-100);--ngd-ui-bg-tertiary-default: var(--ngd-colors-gray-200);--ngd-ui-stroke-primary-focus: var(--ngd-colors-gray-500);--ngd-pt-stroke-primary-default: var(--ngd-colors-gray-600);--ngd-node-bg-primary-default: var(--ngd-colors-gray-100);--ngd-node-stroke-primary-default: var(--ngd-colors-gray-400);--ngd-node-stroke-primary-hover: var(--ngd-colors-acc1-500);--ngd-node-port-fill-default: var(--ngd-colors-gray-100);--ngd-node-port-fill-active: var(--ngd-colors-acc1-500);--ngd-node-port-stroke-default: var(--ngd-colors-gray-500);--ngd-node-port-stroke-active: var(--ngd-colors-gray-100);--ngd-transform-box: var(--ngd-colors-acc4-500);--ngd-focus-ring-node-active: var(--ngd-colors-acc1-500-40);--ngd-button-gray-bg-default: var(--ngd-colors-gray-500);--ngd-button-gray-bg-hover: var(--ngd-colors-gray-600);--ngd-button-gray-bg-active: var(--ngd-colors-gray-650);--ngd-default-edge-label-bg-primary-default: var(--ngd-colors-gray-100);--ngd-background-line-minor-color: var(--ngd-colors-gray-450);--ngd-background-line-major-color: var(--ngd-colors-gray-500);--ngd-ui-border-color: var(--ngd-colors-gray-300)}html[data-theme=dark]{--ngd-txt-primary-default: var(--ngd-colors-gray-100);--ngd-diagram-background-color: var(--ngd-colors-gray-800);--ngd-ui-bg-primary-default: var(--ngd-colors-gray-700);--ngd-ui-bg-tertiary-default: var(--ngd-colors-gray-800);--ngd-ui-stroke-primary-focus: var(--ngd-colors-gray-500);--ngd-pt-stroke-primary-default: var(--ngd-colors-gray-200);--ngd-node-bg-primary-default: var(--ngd-colors-gray-700);--ngd-node-stroke-primary-default: var(--ngd-colors-gray-600);--ngd-node-stroke-primary-hover: var(--ngd-colors-acc1-400);--ngd-node-port-fill-default: var(--ngd-colors-gray-100);--ngd-node-port-fill-active: var(--ngd-colors-acc1-500);--ngd-node-port-stroke-default: var(--ngd-colors-gray-500);--ngd-node-port-stroke-active: var(--ngd-colors-gray-100);--ngd-transform-box: var(--ngd-colors-acc4-500);--ngd-focus-ring-node-active: var(--ngd-colors-acc1-500-40);--ngd-button-gray-bg-default: var(--ngd-colors-gray-650);--ngd-button-gray-bg-hover: var(--ngd-colors-gray-600);--ngd-button-gray-bg-active: var(--ngd-colors-gray-500);--ngd-default-edge-label-bg-primary-default: var(--ngd-colors-gray-700);--ngd-background-line-minor-color: var(--ngd-colors-gray-700);--ngd-background-line-major-color: var(--ngd-colors-gray-600);--ngd-ui-border-color: var(--ngd-colors-gray-700)}:root{--ngd-node-background-color: var(--ngd-node-bg-primary-default);--ngd-node-border-color: var(--ngd-node-stroke-primary-default);--ngd-node-border-color-hover: var(--ngd-node-stroke-primary-hover);--ngd-node-border-radius: .75rem;--ngd-node-border-size: .0625rem;--ngd-group-border-color: var(--ngd-ui-stroke-primary-focus);--ngd-group-border-color-hover: var(--ngd-pt-stroke-primary-default);--ngd-group-border-color-highlight: var(--ngd-colors-acc1-500);--ngd-group-box-shadow-color-highlight: var(--ngd-colors-acc1-500-50);--ngd-group-background-color-highlight: var(--ngd-colors-gray-400);--ngd-group-border-radius: .75rem;--ngd-group-highlight-size: 1.25rem;--ngd-selected-node-box-shadow: 0 0 0 .25rem var(--ngd-focus-ring-node-active);--ngd-rotate-handle-size: 2rem;--ngd-rotate-handle-distance: 2rem;--ngd-rotate-handle-background-color: var(--ngd-button-gray-bg-default);--ngd-rotate-handle-background-color-hover: var(--ngd-button-gray-bg-hover);--ngd-rotate-handle-background-color-active: var(--ngd-button-gray-bg-active);--ngd-rotate-handle-xy: calc(-.7071 * var(--ngd-rotate-handle-distance));--ngd-rotate-handle-top: var(--ngd-rotate-handle-xy);--ngd-rotate-handle-right: var(--ngd-rotate-handle-xy);--ngd-resize-line-border-width: .0625rem;--ngd-resize-line-border-style: solid;--ngd-resize-line-border-color: var(--ngd-transform-box);--ngd-resize-handle-size: .375rem;--ngd-resize-handle-background-color: var(--ngd-ui-bg-primary-default);--ngd-resize-handle-border-size: .0625rem;--ngd-resize-handle-border-style: solid;--ngd-resize-handle-border-color: var(--ngd-transform-box);--ngd-resize-handle-border-radius: 0;--ngd-port-size: .25rem;--ngd-port-background-color: var(--ngd-node-port-fill-default);--ngd-port-border-color: var(--ngd-node-port-stroke-default);--ngd-port-border-size: .125rem;--ngd-port-border-radius: 50%;--ngd-port-background-color-hover: var(--ngd-node-port-fill-active);--ngd-port-border-color-hover: var(--ngd-node-port-stroke-active);--ngd-port-border-size-hover: .25rem;--ngd-default-edge-stroke: var(--ngd-colors-gray-500);--ngd-default-edge-stroke-hover: var(--ngd-colors-gray-700);--ngd-default-edge-stroke-selected: var(--ngd-colors-acc1-500);--ngd-box-selection-border-color: #961ce7;--ngd-box-selection-border-size: 1px;--ngd-box-selection-background: rgba(43, 91, 213, .12);--ngd-default-edge-label-background-color: var(--ngd-default-edge-label-bg-primary-default);--ngd-default-edge-label-color: var(--ngd-txt-primary-default);--ngd-default-edge-label-border-color: var(--ngd-colors-gray-500);--ngd-background-dot-color: var(--ngd-colors-gray-500);--ngd-background-line-minor-width: .5;--ngd-background-line-major-width: 1;--ngd-background-line-minor-opacity: .5;--ngd-background-line-major-opacity: .6}.ng-diagram-port-hoverable .ng-diagram-port:hover,.ng-diagram-port-hoverable .ng-diagram-port.custom-content:hover .content-projection,.ng-diagram-port-hoverable-over-node:hover:not(:has(.ng-diagram-rotate-handle:hover)):not(:has([data-rotating])) .ng-diagram-port.custom-content .content-projection,.ng-diagram-port-hoverable-over-node:hover:not(:has(.ng-diagram-rotate-handle:hover)):not(:has([data-rotating])) .ng-diagram-port{background-color:var(--ngd-port-background-color-hover);border-color:var(--ngd-port-background-color-hover);outline:calc(1px + var(--ngd-port-border-size)) solid var(--ngd-port-background-color-hover);outline-offset:-1px;box-shadow:0 0 0 var(--ngd-port-border-size-hover) var(--ngd-port-border-color-hover)}.ng-diagram-node-wrapper:not(.ng-diagram-node-selected){transition:box-shadow .1s ease-in-out}.ng-diagram-node-wrapper.ng-diagram-group-highlight,.ng-diagram-node-wrapper.ng-diagram-group.ng-diagram-group-highlight{border-color:var(--ngd-group-border-color-highlight);box-shadow:0 0 var(--ngd-group-highlight-size) 0 var(--ngd-group-box-shadow-color-highlight) inset}.ng-diagram-node-wrapper.ng-diagram-node-selected{box-shadow:var(--ngd-selected-node-box-shadow)}ng-diagram *,ng-diagram *:before,ng-diagram *:after{box-sizing:border-box}
