:root{--sp-1: .25rem;--sp-2: .5rem;--sp-3: .75rem;--sp-4: 1rem;--sp-5: 1.25rem;--sp-6: 1.5rem}:root{--ctl-h: 1.75rem;--ctl-pad-x: .625rem;--grid-gap-x: .75rem;--grid-gap-y: .75rem;--label-gap: .25rem}.density-comfortable{--ctl-h: 2.25rem;--ctl-pad-x: .75rem;--grid-gap-x: 1rem;--grid-gap-y: 1rem;--label-gap: .45rem}:root{--input-height-compact: var(--ctl-h);--input-padding-compact: 4px var(--ctl-pad-x);--browse-btn-size-compact: var(--ctl-h)}:root{--w-xs: 6ch;--w-s: 10ch;--w-m: 16ch;--w-l-min: 18rem;--w-l-max: 28rem;--w-xl-min: 24rem;--w-xl-max: 44rem}:root{--rail-w: 13rem;--content-max-w: 96rem;--rail-gap: var(--sp-3)}:root{line-height:1.5;font-weight:400;color-scheme:light dark;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.e-dark-mode{color:#ffffffde;background-color:#242424}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;min-width:320px;min-height:100vh;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif}#root{flex:1;display:flex;flex-direction:column;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#f9f9f9;cursor:pointer;transition:border-color .25s}body.e-dark-mode button{background-color:#1a1a1a}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.grid--line-numbers .e-rowcell:first-child,.grid--line-numbers .e-headercell:first-child .e-headercelldiv{text-align:center!important;justify-content:center!important}:root{--font-scale: 1;--text-primary: #1c1b1f;--text-secondary: #49454f;--text-muted: #49454f;--panel-bg: #ffffff;--form-bg: #ffffff;--surface-raised: #ffffff;--toolbar-bg: #ffffff;--header-bg: #ffffff;--border-color: #79747e;--input-border: #79747e;--input-border-hover: #49454f;--primary-color: #2b5797;--primary-hover: #1d3f6f;--accent: #2b5797;--primary-light: rgba(43, 87, 151, .07);--selection-bg: rgba(43, 87, 151, .1);--btn-secondary-bg: #e7e0ec;--btn-secondary-hover-bg: #c4c7c5;--readonly-bg: #f3f2ef;--error-bg: rgba(179, 38, 30, .1);--error-text: #b3261e;--grid-border: #c4c7c5;--grid-header-bg: #f5f5f5;--grid-header-text: #1c1b1f;--resizer-bg: #c4c7c5;--tab-text: #49454f;--tab-text-active: #1c1b1f;--tab-hover-bg: rgba(0, 0, 0, .04);--tab-active-bg: #ffffff;--tab-active-border: #2b5797;--tab-border: #e0e0e0;--tab-icon: #49454f;--tab-icon-active: #2b5797;--tab-close: #49454f;--tab-close-hover-bg: rgba(0, 0, 0, .08);--tab-close-active-bg: rgba(0, 0, 0, .12);--dirty-indicator: #a63d2f;--focus-ring: #2b5797;--separator-color: rgba(0, 0, 0, .25)}body.e-dark-mode{--text-primary: #e6e1e5;--text-secondary: #cac4cf;--text-muted: #cac4cf;--panel-bg: #1c1b1f;--form-bg: #2b2930;--surface-raised: #2b2930;--toolbar-bg: #1c1b1f;--border-color: #938f99;--input-border: #938f99;--input-border-hover: #cac4cf;--primary-color: #90caf9;--primary-hover: #bbdefb;--accent: #90caf9;--selection-bg: rgba(208, 188, 255, .16);--btn-secondary-bg: #4a4458;--btn-secondary-hover-bg: #5d5970;--readonly-bg: #2b2930;--error-bg: rgba(242, 184, 181, .1);--error-text: #f2b8b5;--grid-border: #49454f;--grid-header-bg: #2b2930;--grid-header-text: #e6e1e5;--resizer-bg: #49454f;--tab-text: #cac4cf;--tab-text-active: #e6e1e5;--tab-hover-bg: rgba(255, 255, 255, .08);--tab-active-bg: #2b2930;--tab-active-border: #90caf9;--tab-border: #49454f;--tab-icon: #cac4cf;--tab-icon-active: #90caf9;--tab-close: #cac4cf;--tab-close-hover-bg: rgba(255, 255, 255, .12);--tab-close-active-bg: rgba(255, 255, 255, .16);--dirty-indicator: #cf6054;--focus-ring: #90caf9;--separator-color: rgba(255, 255, 255, .25)}.e-btn.e-primary,.e-css.e-btn.e-primary,button.e-primary{background-color:var(--primary-color, #1976d2)!important;background-image:none!important;border-color:var(--primary-color, #1976d2)!important;color:#fff!important;box-shadow:none!important}.e-btn.e-primary:hover:not(:disabled),.e-css.e-btn.e-primary:hover:not(:disabled),button.e-primary:hover:not(:disabled){background-color:var(--primary-hover, #1565c0)!important;background-image:none!important;border-color:var(--primary-hover, #1565c0)!important}.e-btn.e-primary:focus,.e-css.e-btn.e-primary:focus,button.e-primary:focus{box-shadow:0 0 0 3px #2b57974d!important}.e-btn.e-primary:disabled,.e-css.e-btn.e-primary:disabled,button.e-primary:disabled{opacity:.6;cursor:not-allowed}.e-btn.e-outline,.e-css.e-btn.e-outline,button.e-outline{background-color:transparent!important;background-image:none!important;border:1px solid #6b7280!important;color:#6b7280!important;box-shadow:none!important}.e-btn.e-outline:hover:not(:disabled),.e-css.e-btn.e-outline:hover:not(:disabled),button.e-outline:hover:not(:disabled){background-color:#6b72801a!important;background-image:none!important}.e-control{font-size:calc(14px * var(--font-scale))!important}.e-btn{font-size:calc(14px * var(--font-scale))!important;padding:calc(6px * var(--font-scale)) calc(12px * var(--font-scale))}.e-input-group input,.e-textbox,.e-numerictextbox{font-size:calc(14px * var(--font-scale))!important}.e-input-group.e-disabled,.e-input-group.e-disabled .e-input,.e-input-group.e-disabled .e-input-group-icon,.e-float-input.e-disabled input,.e-float-input.e-disabled .e-input-group-icon,.e-input-group input:disabled,.e-input-group input[readonly],.e-dropdownlist.e-disabled .e-input,.e-ddl.e-input-group.e-disabled .e-input,.e-autocomplete.e-disabled .e-input,.e-datepicker.e-disabled .e-input,.e-numerictextbox.e-disabled input{background-color:#e5e7eb!important;opacity:1!important;color:var(--text-primary, #1f2937)!important}.e-input-group:not(.e-disabled) .e-input,.e-input-group:not(.e-disabled) input:not(:disabled){background-color:#fff!important}.e-input-group{overflow:hidden!important}.e-input-group.e-disabled{border:1px solid #79747e!important;border-radius:4px!important;background-color:#e5e7eb!important}body.e-dark-mode .e-input-group.e-disabled,body.e-dark-mode .e-input-group.e-disabled .e-input,body.e-dark-mode .e-input-group.e-disabled .e-input-group-icon,body.e-dark-mode .e-float-input.e-disabled input,body.e-dark-mode .e-input-group input:disabled,body.e-dark-mode .e-input-group input[readonly],body.e-dark-mode .e-dropdownlist.e-disabled .e-input,body.e-dark-mode .e-ddl.e-input-group.e-disabled .e-input,body.e-dark-mode .e-autocomplete.e-disabled .e-input,body.e-dark-mode .e-datepicker.e-disabled .e-input,body.e-dark-mode .e-numerictextbox.e-disabled input{background-color:var(--readonly-bg, #2b2930)!important;color:var(--text-primary, #e6e1e5)!important}body.e-dark-mode .e-input-group.e-disabled{border:1px solid var(--border-color-dark, #374151)!important;overflow:hidden!important;border-radius:4px!important}.e-grid .e-gridheader,.e-grid .e-rowcell{font-size:calc(13px * var(--font-scale))!important}.e-dropdown-btn .e-btn-icon,.e-dropdown-btn .e-caret{font-size:calc(12px * var(--font-scale))!important}.e-treeview .e-list-text,.e-treeview .e-list-item,.e-treeview .e-text-content,.integrin-treeview .e-list-text,.integrin-treeview .e-list-item,.integrin-treeview .e-text-content{font-size:calc(14px * var(--font-scale))!important}.e-dlg-header-content{font-size:calc(16px * var(--font-scale))!important}.e-dlg-content{font-size:calc(14px * var(--font-scale))!important}h1{font-size:calc(24px * var(--font-scale))!important}h2{font-size:calc(20px * var(--font-scale))!important}h3{font-size:calc(18px * var(--font-scale))!important}h4,h5,h6{font-size:calc(16px * var(--font-scale))!important}p,span,label,div{font-size:calc(14px * var(--font-scale))}.settings-description,.setting-help{font-size:calc(14px * var(--font-scale))!important}.form-field small{font-size:calc(12px * var(--font-scale))!important}body.e-compact .e-control{padding:4px 8px!important;font-size:calc(12px * var(--font-scale))!important}body.e-compact .e-btn{min-height:24px!important;padding:2px 8px!important;font-size:calc(12px * var(--font-scale))!important}body.e-compact .e-input-group,body.e-compact .e-textbox,body.e-compact .e-numerictextbox{height:28px!important;padding:4px 8px!important;font-size:calc(12px * var(--font-scale))!important}body.e-compact .e-input-group .e-input,body.e-compact .e-textbox .e-input,body.e-compact .e-numerictextbox .e-input{height:26px!important;padding:2px 8px!important}body.e-compact .e-dropdownlist,body.e-compact .e-dropdownbase{height:28px!important;font-size:calc(12px * var(--font-scale))!important}.e-dropdownbase.e-popup .e-content,.e-ddl.e-popup .e-content,.e-popup .e-content{max-height:300px!important;height:auto!important;min-height:100px!important}.e-dropdownbase.e-popup .e-list-item,.e-ddl.e-popup .e-list-item,.e-popup .e-content .e-list-item{min-height:36px!important;height:auto!important;padding:8px 12px!important;font-size:14px!important}.e-dropdownbase.e-popup .e-list-parent,.e-ddl.e-popup .e-list-parent,.e-popup .e-content .e-list-parent,.e-popup .e-content .e-ul{max-height:300px!important;height:auto!important}body.e-compact .e-grid .e-row{height:32px!important}body.e-compact .e-grid .e-headercell,body.e-compact .e-grid .e-rowcell{padding:6px 8px!important;font-size:calc(12px * var(--font-scale))!important}body.e-compact .e-grid .e-gridheader{min-height:36px!important;height:auto!important}body.e-compact .e-treeview .e-list-item{padding:2px 0!important;min-height:28px!important}body.e-compact .e-treeview .e-list-text,body.e-compact .e-treeview .e-icons{font-size:calc(12px * var(--font-scale))!important}body.e-compact .e-dlg-header-content{padding:8px 16px!important;font-size:calc(14px * var(--font-scale))!important}body.e-compact .e-dlg-content{padding:12px 16px!important;font-size:calc(12px * var(--font-scale))!important}body.e-bigger .e-grid .e-row{height:48px}body.e-bigger .e-treeview .e-list-item{min-height:44px}body.e-dark-mode{background-color:#1e1e1e;color:#fff}body.e-dark-mode .e-control{color:#fff}body.e-dark-mode ::-webkit-scrollbar{width:12px;height:12px}body.e-dark-mode ::-webkit-scrollbar-track{background:#2e2e2e}body.e-dark-mode ::-webkit-scrollbar-thumb{background:#555;border-radius:6px}body.e-dark-mode ::-webkit-scrollbar-thumb:hover{background:#666}@media(max-width:768px){.e-control{font-size:calc(13px * var(--font-scale))}.e-btn{min-height:32px;padding:6px 12px}}.e-control:focus,.e-btn:focus,.e-input-group input:focus{outline:2px solid var(--focus-ring, #2b5797);outline-offset:2px}body.e-dark-mode .e-control:focus,body.e-dark-mode .e-btn:focus,body.e-dark-mode .e-input-group input:focus{outline-color:#90caf9}@media(prefers-contrast:high){.e-control{border-width:2px!important}.e-btn{border-width:2px!important;font-weight:600}}body.e-compact .e-control,body.e-compact .e-btn{transition-duration:.1s}.e-dlg-overlay,.e-dialog{will-change:opacity,transform}.e-input-group,.e-control-wrapper,.e-float-input,.e-textbox,.e-numerictextbox,.e-datepicker,.e-dropdownlist{height:32px!important;min-height:32px!important;box-sizing:border-box!important}.e-input-group input,.e-control-wrapper input,.e-float-input input,.e-textbox input,.e-numerictextbox input{height:30px!important;padding:4px 8px!important;box-sizing:border-box!important}.e-input-group.e-control-wrapper.e-ddl,.e-input-group.e-control-wrapper.e-dropdownlist{display:flex!important;align-items:center!important}.e-input-group .e-input-group-icon,.e-ddl .e-input-group-icon,.e-dropdownlist .e-input-group-icon{display:flex!important;align-items:center!important;justify-content:center!important;height:100%!important;min-width:24px!important;padding:0 6px 0 2px!important}.e-input-group .e-input-group-icon .e-icons,.e-ddl .e-input-group-icon .e-icons,.e-dropdownlist .e-ddl-icon{display:flex!important;align-items:center!important;justify-content:center!important;font-size:12px!important;line-height:1!important}.e-input-group.e-control-wrapper.e-date-wrapper,.e-datepicker.e-control-wrapper{display:flex!important;align-items:center!important}.e-date-wrapper .e-input-group-icon.e-date-icon,.e-datepicker .e-input-group-icon.e-date-icon{display:flex!important;align-items:center!important;justify-content:center!important;height:100%!important;min-width:28px!important;padding:0 4px!important;margin:0!important;align-self:center!important}.e-date-wrapper .e-date-icon .e-icons,.e-datepicker .e-date-icon .e-icons{display:flex!important;align-items:center!important;justify-content:center!important;line-height:1!important}.e-input-group,.e-control-wrapper{border:1px solid var(--input-border, #79747e)!important;border-radius:4px!important}.e-input-group:hover,.e-control-wrapper:hover{border-color:var(--input-border-hover, #49454f)!important}.e-input-group.e-input-focus,.e-control-wrapper.e-input-focus{border-color:var(--primary-color, #1976d2)!important;box-shadow:0 0 0 1px var(--primary-color, #1976d2)!important}.e-input-group.e-input-focus:after,.e-input-group.e-input-focus:before,.e-control-wrapper.e-input-focus:after,.e-control-wrapper.e-input-focus:before,.e-ddl.e-input-group.e-input-focus:after,.e-ddl.e-input-group.e-input-focus:before,.e-ddl.e-control-wrapper.e-input-focus:after,.e-ddl.e-control-wrapper.e-input-focus:before{display:none!important}.e-grid .e-headercell{background-color:var(--grid-header-bg, #f5f5f5)!important;font-weight:600!important;text-align:center!important}.e-grid .e-headercelldiv{font-weight:600!important;overflow:visible!important;height:auto!important;text-overflow:unset!important}.e-grid,.e-grid .e-headercell,.e-grid .e-rowcell{border:1px solid var(--grid-border, #c4c7c5)!important}.e-grid table{table-layout:fixed!important}.e-grid .e-gridheader .e-headercell,.e-grid .e-headercell,.e-grid .e-headercelldiv,.e-grid .e-gridheader th,.e-grid th{word-break:keep-all!important;overflow-wrap:break-word!important;white-space:normal!important;-webkit-hyphens:none!important;hyphens:none!important;word-wrap:break-word!important;line-break:strict!important;line-height:1.2!important;padding:8px 4px!important}.e-grid .e-gridcontent .e-rowcell,.e-grid .e-rowcell,.e-grid td{word-break:normal!important;overflow-wrap:normal!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.grid--compact.e-grid .e-gridheader,.grid--compact.e-grid .e-headercontent,.grid--compact.e-grid .e-gridheader .e-table,.grid--compact.e-grid .e-columnheader{height:36px!important}.grid--compact.e-grid .e-columnheader th,.grid--compact.e-grid .e-headercell,.grid--compact.e-grid th.e-headercell{height:36px!important;padding:6px 8px!important;font-size:12px!important;font-weight:600!important;vertical-align:middle!important}.grid--compact.e-grid .e-headercelldiv{line-height:1.4!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;display:flex!important;align-items:center!important;justify-content:center!important;height:100%!important}.grid--compact.e-grid .e-row,.grid--compact.e-grid .e-gridcontent .e-row{height:28px!important;cursor:pointer;transition:background-color .12s ease}.grid--compact.e-grid .e-row td{height:28px!important}.grid--compact.e-grid .e-rowcell,.grid--compact.e-grid td.e-rowcell{padding:4px 8px!important;font-size:14px!important;line-height:1.3!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;vertical-align:middle!important}.grid--compact.e-grid .e-row:hover{background-color:var(--selection-bg, rgba(103, 80, 164, .08))}.e-grid-tooltip,.e-griderror,.e-grid .e-rowcell .e-tooltip-wrap,.e-tooltip-wrap.e-popup,.e-grid .e-tooltip-wrap{background-color:#374151!important;border:none!important;border-radius:4px!important;box-shadow:0 4px 12px #00000040!important;color:#fff!important;font-size:13px!important;padding:8px 12px!important;max-width:400px!important}.e-tooltip-wrap .e-tip-content{background-color:transparent!important;color:#fff!important;padding:0!important}.e-tooltip-wrap .e-arrow-tip,.e-tooltip-wrap .e-arrow-tip-outer,.e-tooltip-wrap .e-arrow-tip-inner{display:none!important}body.e-dark-mode .e-grid-tooltip,body.e-dark-mode .e-griderror,body.e-dark-mode .e-grid .e-rowcell .e-tooltip-wrap,body.e-dark-mode .e-tooltip-wrap.e-popup,body.e-dark-mode .e-grid .e-tooltip-wrap{background-color:#1f2937!important;border:1px solid #4b5563!important;color:#f9fafb!important}body.e-dark-mode .e-tooltip-wrap .e-tip-content{color:#f9fafb!important}.grid--compact.e-grid .e-row.e-active,.grid--compact.e-grid .e-row[aria-selected=true]{background-color:var(--selection-bg, rgba(25, 118, 210, .12))}.e-grid .e-row.grid-row--selected,.e-grid .e-row.grid-row--selected td,.e-grid .e-row.grid-row--selected .e-rowcell{background-color:var(--selection-bg, rgba(25, 118, 210, .12))!important}.grid--line-numbers.e-grid .e-rowcell:first-child{color:var(--text-muted, #49454f);font-weight:500}.grid--centered-headers.e-grid .e-headercell{text-align:center!important;vertical-align:middle!important}.grid--centered-headers.e-grid .e-headercelldiv{text-align:center!important;justify-content:center!important}.status-badge{display:inline-block;padding:2px 6px;font-size:11px;font-weight:600;text-transform:capitalize;border-radius:3px;border:1px solid;white-space:nowrap;line-height:1.2}.e-grid .e-rowcell.e-templatecell[style*="text-align: center"],.e-grid .e-rowcell.e-templatecell[style*="text-align:center"]{text-align:center!important}.e-grid .e-rowcell:has(.status-badge){text-align:center!important}body.e-compact .status-badge{padding:1px 4px;font-size:10px}body.e-bigger .status-badge{padding:4px 10px;font-size:12px}body.e-dark-mode .status-badge{filter:brightness(.9)}.btn--add{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:500;color:var(--primary-color, #1976d2);background-color:var(--primary-light, rgba(103, 80, 164, .08));border:1px solid var(--primary-color, #1976d2);border-radius:6px;cursor:pointer;transition:all .12s ease}.btn--add:hover{background-color:var(--primary-color, #1976d2);color:#fff}.btn--add:focus{outline:2px solid var(--primary-color, #1976d2);outline-offset:2px}.btn--add:disabled{opacity:.5;cursor:not-allowed}.btn--add .btn-icon{width:12px;height:12px}body.e-dark-mode .btn--add{background-color:#6750a433;border-color:var(--primary-color, #1976d2)}body.e-dark-mode .btn--add:hover{background-color:var(--primary-color, #1976d2)}.btn--action{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:none;border:none;border-radius:4px;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .12s ease}.btn--action:hover{background-color:var(--bg-hover, #f3f4f6);color:var(--text-primary, #111827)}.btn--action-danger:hover{background-color:var(--error-bg, #fee2e2);color:var(--error, #dc2626)}.btn--action-save{color:var(--success, #10b981)}.btn--action-save:hover{background-color:var(--success-bg, #d1fae5);color:var(--success-dark, #047857)}body.e-dark-mode .btn--action{color:var(--text-secondary-dark, #9ca3af)}body.e-dark-mode .btn--action:hover{background-color:var(--bg-hover-dark, #374151);color:var(--text-primary-dark, #f3f4f6)}body.e-dark-mode .btn--action-danger:hover{background-color:#dc262633;color:var(--error, #ef4444)}body.e-dark-mode .btn--action-save:hover{background-color:#10b98133}.data-table__wrapper{overflow-x:auto;border:1px solid var(--border-color, #e5e7eb);border-radius:6px}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table__header{padding:10px 12px;text-align:left;font-size:11px;font-weight:600;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.5px;background-color:var(--grid-header-bg, #f0f0f0);border-bottom:1px solid var(--border-color, #e5e7eb);white-space:nowrap}.data-table__header--center{text-align:center}.data-table__header--actions{width:100px;text-align:center}.data-table__row{transition:background-color .12s ease}.data-table__row:hover{background-color:var(--bg-hover, #f3f4f6)}.data-table__row--editing{background-color:var(--edit-bg, #fef3c7)!important}.data-table__row--new{background-color:var(--new-bg, #d1fae5)!important}.data-table__row--saved{animation:row-save-flash 1s ease-out}@keyframes row-save-flash{0%{background-color:var(--success-bg, #d1fae5)}to{background-color:transparent}}.data-table__cell{padding:10px 12px;border-bottom:1px solid var(--border-color, #e5e7eb);vertical-align:middle}.data-table__cell--center{text-align:center}.data-table__cell--actions{text-align:center;white-space:nowrap}body.e-dark-mode .data-table__wrapper{border-color:var(--border-dark, #374151)}body.e-dark-mode .data-table__header{background-color:var(--bg-panel-dark, #1f2937);border-bottom-color:var(--border-dark, #374151);color:var(--text-tertiary-dark, #9ca3af)}body.e-dark-mode .data-table__row:hover{background-color:var(--bg-hover-dark, #374151)}body.e-dark-mode .data-table__row--editing{background-color:#f59e0b33!important}body.e-dark-mode .data-table__row--new{background-color:#10b98133!important}body.e-dark-mode .data-table__row--saved{animation:row-save-flash-dark 1s ease-out}@keyframes row-save-flash-dark{0%{background-color:#10b9814d}to{background-color:transparent}}body.e-dark-mode .data-table__cell{border-bottom-color:var(--border-dark, #374151);color:var(--text-primary-dark, #f3f4f6)}.error-message{padding:12px 16px;background-color:var(--error-bg, #fee2e2);border:1px solid var(--error-border, #fecaca);border-radius:6px;color:var(--error, #dc2626);font-size:13px}body.e-dark-mode .error-message{background-color:var(--error-bg-dark, #450a0a);border-color:var(--error-border-dark, #7f1d1d);color:var(--error-dark, #fca5a5)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;color:var(--text-muted, #6b7280);text-align:center}.empty-state__icon{width:48px;height:48px;margin-bottom:16px;color:var(--text-muted, #9ca3af)}.empty-state__title{font-size:16px;font-weight:500;margin:0 0 8px;color:var(--text-secondary, #4b5563)}.empty-state__text{font-size:14px;margin:0;color:var(--text-muted, #6b7280)}body.e-dark-mode .empty-state{color:var(--text-tertiary-dark, #9ca3af)}body.e-dark-mode .empty-state__icon{color:var(--text-muted-dark, #6b7280)}body.e-dark-mode .empty-state__title{color:var(--text-secondary-dark, #9ca3af)}body.e-dark-mode .empty-state__text{color:var(--text-tertiary-dark, #9ca3af)}.form-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted, #6b7280);margin-bottom:4px}body.e-dark-mode .form-label{color:var(--text-muted, #9ca3af)}.badge--primary{display:inline-block;padding:2px 8px;font-size:10px;font-weight:600;text-transform:uppercase;background-color:var(--primary-light, rgba(25, 118, 210, .12));color:var(--primary-color, #1976d2);border-radius:3px}body.e-dark-mode .badge--primary{background-color:#6750a433}.badge--status{display:inline-block;padding:2px 8px;font-size:10px;font-weight:600;text-transform:uppercase;border-radius:3px}.badge--status-active{background-color:var(--success-bg, #d1fae5);color:var(--success, #10b981)}.badge--status-inactive{background-color:var(--bg-panel, #f3f4f6);color:var(--text-muted, #9ca3af)}body.e-dark-mode .badge--status-active{background-color:#10b98133}body.e-dark-mode .badge--status-inactive{background-color:var(--bg-panel-dark, #1f2937);color:var(--text-muted-dark, #6b7280)}.loading-spinner{width:32px;height:32px;border:3px solid var(--border-color, #e5e7eb);border-top-color:var(--primary-color, #1976d2);border-radius:50%;animation:spin 1s linear infinite}.loading-spinner--small{width:24px;height:24px;border-width:2px}.loading-spinner--large{width:40px;height:40px;border-width:4px}@keyframes spin{to{transform:rotate(360deg)}}body.e-dark-mode .loading-spinner{border-color:var(--border-dark, #374151);border-top-color:var(--primary-color, #1976d2)}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background-color:var(--success, #10b981);flex-shrink:0}.status-dot--inactive{background-color:var(--text-muted, #9ca3af)}.status-dot--large{width:10px;height:10px}.entity-status-badge{display:inline-block;padding:2px 10px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;border-radius:10px;white-space:nowrap}.entity-status-badge--created{background-color:#eceff1;color:#546e7a}.entity-status-badge--draft{background-color:#fff3e0;color:#e65100}.entity-status-badge--invalid{background-color:#ffebee;color:#c62828}.entity-status-badge--valid{background-color:#e8f5e9;color:#2e7d32}.entity-status-badge--finalised{background-color:#f3e5f5;color:#7b1fa2}.entity-status-badge--submitted{background-color:#e3f2fd;color:#1565c0}.entity-status-badge--accepted{background-color:#e0f2f1;color:#00695c}.entity-status-badge--released{background-color:#e8eaf6;color:#283593}body.e-dark-mode .entity-status-badge--created{background-color:#37474f;color:#b0bec5}body.e-dark-mode .entity-status-badge--draft{background-color:#fff3e026;color:#ffb74d}body.e-dark-mode .entity-status-badge--invalid{background-color:#ffebee26;color:#ef9a9a}body.e-dark-mode .entity-status-badge--valid{background-color:#e8f5e926;color:#81c784}body.e-dark-mode .entity-status-badge--finalised{background-color:#f3e5f526;color:#ce93d8}body.e-dark-mode .entity-status-badge--submitted{background-color:#e3f2fd26;color:#64b5f6}body.e-dark-mode .entity-status-badge--accepted{background-color:#e0f2f126;color:#80cbc4}body.e-dark-mode .entity-status-badge--released{background-color:#e8eaf626;color:#9fa8da}body.e-compact .entity-status-badge{padding:1px 6px;font-size:10px}body.e-bigger .entity-status-badge{padding:4px 12px;font-size:12px}.e-grid .e-sortfilterdiv .e-icon-ascending:before{content:""}.e-grid .e-sortfilterdiv .e-icon-descending:before{content:""}:root{--brand-primary: #1B2A4A;--brand-secondary: #2D4A7A;--brand-accent: #4A90D9;--brand-text-on-primary: #FFFFFF}.confirm-dialog.e-dialog .e-dlg-overlay,.e-dialog.confirm-dialog+.e-dlg-overlay{background-color:#0000004d!important}.confirm-dialog.e-dialog{border-radius:8px!important;box-shadow:0 4px 20px #00000026!important;border:1px solid var(--border-color, #e5e7eb)!important}.confirm-dialog .e-dlg-header-content{display:none!important}.confirm-dialog .e-dlg-content{padding:24px!important}.confirm-dialog__content{display:flex;gap:16px;align-items:flex-start}.confirm-dialog__icon{flex-shrink:0;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700}.confirm-dialog__icon--warning{background-color:#fef3c7;color:#92400e}.confirm-dialog__icon--danger{background-color:#fee2e2;color:#991b1b}.confirm-dialog__icon--info{background-color:#dbeafe;color:#1e40af}.confirm-dialog__text{flex:1}.confirm-dialog__title{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--text-primary, #1f2937)}.confirm-dialog__message{margin:0;font-size:14px;color:var(--text-secondary, #4b5563);line-height:1.5}.confirm-dialog__sub-message{margin:12px 0 0;font-size:13px;color:var(--text-secondary, #374151);line-height:1.6;white-space:pre-line}.confirm-dialog .e-footer-content{padding:16px 24px!important;border-top:1px solid var(--border-color, #e5e7eb)!important;background-color:var(--surface-secondary, #f9fafb)!important}.confirm-dialog__footer{display:flex;justify-content:flex-end;gap:12px}.confirm-dialog__btn{min-width:80px!important;padding:8px 16px!important}.confirm-dialog__btn--cancel{background-color:transparent!important}.confirm-dialog__btn--confirm.confirm-dialog__btn--warning{background-color:#f59e0b!important;border-color:#f59e0b!important;color:#fff!important}.confirm-dialog__btn--confirm.confirm-dialog__btn--warning:hover{background-color:#d97706!important;border-color:#d97706!important}.confirm-dialog__btn--confirm.confirm-dialog__btn--danger{background-color:#dc2626!important;border-color:#dc2626!important;color:#fff!important}.confirm-dialog__btn--confirm.confirm-dialog__btn--danger:hover{background-color:#b91c1c!important;border-color:#b91c1c!important}.confirm-dialog__btn--confirm.confirm-dialog__btn--info{background-color:var(--primary-hover, #1565c0)!important;border-color:var(--primary-hover, #1565c0)!important;color:#fff!important}.confirm-dialog__btn--confirm.confirm-dialog__btn--info:hover{background-color:#5b21b6!important;border-color:#5b21b6!important}.quota-banner{display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:6px;font-size:13px;line-height:1.4;margin:0 16px 12px;border:1px solid}.quota-banner--info{background-color:#eff6ff;border-color:#bfdbfe;color:#1e40af}.quota-banner--warning{background-color:#fffbeb;border-color:#fde68a;color:#92400e}.quota-banner--error{background-color:#fef2f2;border-color:#fecaca;color:#991b1b}.quota-banner__icon{flex-shrink:0;display:flex;align-items:center}.quota-banner__message{flex:1;min-width:0}.quota-banner__progress{display:flex;align-items:center;gap:8px;flex-shrink:0}.quota-banner__progress-track{width:80px;height:6px;border-radius:3px;background:#0000001a;overflow:hidden}.quota-banner__progress-fill{height:100%;border-radius:3px;transition:width .3s ease}.quota-banner--info .quota-banner__progress-fill{background:#3b82f6}.quota-banner--warning .quota-banner__progress-fill{background:#f59e0b}.quota-banner--error .quota-banner__progress-fill{background:#ef4444}.quota-banner__progress-label{font-size:12px;font-weight:600;white-space:nowrap}body.e-dark-mode .quota-banner--info{background-color:#1e3a5f;border-color:#2563eb;color:#93c5fd}body.e-dark-mode .quota-banner--warning{background-color:#4a3728;border-color:#d97706;color:#fcd34d}body.e-dark-mode .quota-banner--error{background-color:#4a1d1d;border-color:#991b1b;color:#fca5a5}body.e-dark-mode .quota-banner__progress-track{background:#ffffff26}.upgrade-prompt--inline{display:flex;align-items:center;justify-content:center;padding:40px 24px;border:1px dashed #d1d5db;border-radius:8px;background:#f9fafb;margin:16px}.upgrade-prompt__body{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:380px;gap:8px}.upgrade-prompt__lock-icon{color:#9ca3af;margin-bottom:4px}.upgrade-prompt__title{font-size:16px;font-weight:600;color:#111827;margin:0}.upgrade-prompt__message{font-size:13px;color:#6b7280;line-height:1.5;margin:0}.upgrade-prompt__message strong{color:#374151}.upgrade-prompt__plan-card{width:100%;border:1px solid #e5e7eb;border-radius:8px;padding:14px 16px;margin-top:8px;text-align:left;background:#fff}.upgrade-prompt__plan-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #f3f4f6}.upgrade-prompt__plan-name{font-size:14px;font-weight:600;color:#1e40af}.upgrade-prompt__plan-price{font-size:13px;color:#374151}.upgrade-prompt__plan-currency{font-size:11px;color:#6b7280;margin-right:2px}.upgrade-prompt__plan-amount{font-size:18px;font-weight:700;color:#111827}.upgrade-prompt__plan-period{font-size:12px;color:#9ca3af}.upgrade-prompt__plan-custom{font-size:13px;font-style:italic;color:#6b7280}.upgrade-prompt__plan-features{list-style:none;margin:0;padding:0;font-size:12px;color:#4b5563}.upgrade-prompt__plan-features li{padding:3px 0 3px 18px;position:relative}.upgrade-prompt__plan-features li:before{content:"";position:absolute;left:0;top:8px;width:10px;height:5px;border-left:2px solid #22c55e;border-bottom:2px solid #22c55e;transform:rotate(-45deg)}.upgrade-prompt__plan-more{color:#9ca3af;font-style:italic}.upgrade-prompt__plan-more:before{display:none!important}.upgrade-prompt__actions{display:flex;gap:8px;margin-top:12px}.upgrade-prompt__btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 20px;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;text-decoration:none;min-width:100px;transition:background .15s,border-color .15s}.upgrade-prompt__btn-upgrade{background:#2563eb;color:#fff;border:1px solid #2563eb}.upgrade-prompt__btn-upgrade:hover,.upgrade-prompt__btn-upgrade:active{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.upgrade-prompt__btn-close{background:transparent;color:#374151;border:1px solid #d1d5db}.upgrade-prompt__btn-close:hover,.upgrade-prompt__btn-close:active{background:#f3f4f6;border-color:#9ca3af}.upgrade-prompt-dialog .e-dlg-header{font-size:15px;font-weight:600}body.e-dark-mode .upgrade-prompt--inline{background:#1f2937;border-color:#374151}body.e-dark-mode .upgrade-prompt__lock-icon{color:#6b7280}body.e-dark-mode .upgrade-prompt__title{color:#f3f4f6}body.e-dark-mode .upgrade-prompt__message{color:#9ca3af}body.e-dark-mode .upgrade-prompt__message strong{color:#d1d5db}body.e-dark-mode .upgrade-prompt__plan-card{background:#111827;border-color:#374151}body.e-dark-mode .upgrade-prompt__plan-header{border-color:#374151}body.e-dark-mode .upgrade-prompt__plan-name{color:#60a5fa}body.e-dark-mode .upgrade-prompt__plan-price{color:#d1d5db}body.e-dark-mode .upgrade-prompt__plan-amount{color:#f3f4f6}body.e-dark-mode .upgrade-prompt__plan-features{color:#9ca3af}body.e-dark-mode .upgrade-prompt__btn-close{color:#d1d5db;border-color:#4b5563}body.e-dark-mode .upgrade-prompt__btn-close:hover,body.e-dark-mode .upgrade-prompt__btn-close:active{background:#374151;border-color:#6b7280}.integrin-treeview{padding:0;margin:0;font-family:inherit}.integrin-treeview .e-ul{transition:none!important;animation:none!important}.integrin-treeview.e-treeview .e-list-item{padding:0!important;min-height:26px!important;height:auto!important;margin:0!important}.integrin-treeview.e-treeview .e-fullrow{height:26px!important}.integrin-treeview.e-treeview .e-text-content{display:flex;align-items:center;padding:0!important;min-height:26px!important}.integrin-treeview.e-treeview .e-list-text{font-family:inherit;font-size:14px;line-height:26px!important;min-height:26px!important;padding:0!important}.integrin-treeview .e-icons{font-size:10px;width:16px;height:16px;margin-right:6px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.integrin-treeview.e-treeview .e-list-item>.e-ul{margin-left:20px!important;padding-left:0!important}.integrin-treeview.e-treeview:focus,.integrin-treeview.e-treeview .e-list-item:focus,.integrin-treeview.e-treeview .e-fullrow:focus,.integrin-treeview.e-treeview .e-text-content:focus,.integrin-treeview.e-treeview .e-list-item.e-node-focus,.integrin-treeview.e-treeview .e-list-item.e-node-focus>.e-fullrow,.integrin-treeview.e-treeview .e-list-item.e-node-focus>.e-text-content,.integrin-treeview.e-treeview .e-list-item.e-active,.integrin-treeview.e-treeview .e-list-item.e-active>.e-fullrow,.integrin-treeview.e-treeview .e-list-item.e-active>.e-text-content,.integrin-treeview.e-treeview .e-list-item.e-active.e-node-focus,.integrin-treeview.e-treeview .e-list-item.e-active.e-node-focus>.e-fullrow{outline:none!important;box-shadow:none!important;background-color:transparent!important;background:none!important;border-color:transparent!important}.integrin-treeview.e-treeview .e-list-item:hover>.e-fullrow{background-color:transparent!important}.integrin-treeview.e-treeview .e-list-item>.e-fullrow:hover{background-color:#0000000f!important}.integrin-treeview.e-treeview .e-list-item.nav-current>.e-fullrow,.integrin-treeview.e-treeview .e-list-item.nav-current.e-active>.e-fullrow,.integrin-treeview.e-treeview .e-list-item.nav-current.e-node-focus>.e-fullrow,.integrin-treeview.e-treeview .e-list-item.nav-current.e-active.e-node-focus>.e-fullrow{border-left:3px solid var(--primary-color, #1976d2)!important;background-color:var(--selection-bg, rgba(103, 80, 164, .08))!important}.sidebar-section{margin-top:4px;padding-top:4px}.sidebar-separator{border-top:1px solid var(--separator-color, rgba(0, 0, 0, .25))}.sidebar-section-header{display:flex;align-items:center;height:26px;padding:0 .75rem;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;cursor:context-menu}.sidebar-section-header:hover{background-color:#00000005}.sidebar-container{position:relative;overflow:hidden}.integrin-context-menu .e-menu-item{padding:8px 12px;font-size:14px}.resize-handle:hover{background-color:#2196f3!important}body.e-dark-mode .integrin-treeview .e-list-text,body.e-dark-mode .integrin-treeview .e-icons{color:var(--text-primary-dark, #f3f4f6)}body.e-dark-mode .integrin-treeview .e-list-item>.e-text-content:hover{background-color:#ffffff14}body.e-dark-mode .integrin-treeview.e-treeview .e-list-item:hover>.e-fullrow{background-color:#ffffff14!important}body.e-dark-mode .integrin-treeview.e-treeview .e-list-item.e-node-focus,body.e-dark-mode .integrin-treeview.e-treeview .e-list-item.e-node-focus>.e-fullrow,body.e-dark-mode .integrin-treeview.e-treeview .e-list-item.e-node-focus>.e-text-content,body.e-dark-mode .integrin-treeview.e-treeview .e-list-item.e-active,body.e-dark-mode .integrin-treeview.e-treeview .e-list-item.e-active>.e-fullrow,body.e-dark-mode .integrin-treeview.e-treeview .e-list-item.e-active>.e-text-content,body.e-dark-mode .integrin-treeview.e-treeview .e-list-item.e-active.e-node-focus,body.e-dark-mode .integrin-treeview.e-treeview .e-list-item.e-active.e-node-focus>.e-fullrow{background-color:transparent!important;background:none!important;outline:none!important;box-shadow:none!important;border-color:transparent!important}body.e-dark-mode .integrin-treeview.e-treeview .e-list-item.nav-current>.e-fullrow,body.e-dark-mode .integrin-treeview.e-treeview .e-list-item.nav-current.e-active>.e-fullrow,body.e-dark-mode .integrin-treeview.e-treeview .e-list-item.nav-current.e-node-focus>.e-fullrow,body.e-dark-mode .integrin-treeview.e-treeview .e-list-item.nav-current.e-active.e-node-focus>.e-fullrow{border-left:3px solid var(--primary-color, #90caf9)!important;background-color:var(--selection-bg, rgba(208, 188, 255, .12))!important}body.e-dark-mode .sidebar-section-header{color:var(--text-secondary-dark, #6b7280)}.session-dialog.e-dialog .e-dlg-overlay,.e-dialog.session-dialog+.e-dlg-overlay{background-color:#00000080!important}.session-dialog.e-dialog{border-radius:12px!important;box-shadow:0 8px 30px #0003!important;border:1px solid #e5e7eb!important}.session-dialog .e-dlg-header-content{display:none!important}.session-dialog .e-dlg-content{padding:28px 24px 20px!important}.session-dialog__content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}.session-dialog__icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:#fef3c7;color:#92400e}.session-dialog__icon svg{width:28px;height:28px}.session-dialog__text{display:flex;flex-direction:column;gap:8px}.session-dialog__title{margin:0;font-size:18px;font-weight:600;color:#1f2937}.session-dialog__message{margin:0;font-size:14px;color:#4b5563;line-height:1.6}.session-dialog .e-footer-content{padding:16px 24px 20px!important;border-top:1px solid #e5e7eb!important;background-color:#f9fafb!important;border-radius:0 0 12px 12px!important}.session-dialog__footer{display:flex;justify-content:center}.session-dialog__btn--login{min-width:120px!important;padding:10px 24px!important;font-size:14px!important;font-weight:500!important;background-color:#1976d2!important;border-color:#1976d2!important;color:#fff!important;border-radius:6px!important}.session-dialog__btn--login:hover{background-color:#1565c0!important;border-color:#1565c0!important}.session-dialog__btn--login:focus{box-shadow:0 0 0 3px #1976d24d!important}.session-expiry-warning{position:fixed;top:0;left:0;right:0;z-index:10000;background-color:#fef3cd;border-bottom:1px solid #ffc107;padding:8px 16px;animation:session-warning-slide-down .3s ease-out}@keyframes session-warning-slide-down{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.session-expiry-warning__content{display:flex;align-items:center;justify-content:center;gap:10px;max-width:900px;margin:0 auto}.session-expiry-warning__icon{color:#856404;flex-shrink:0}.session-expiry-warning__text{color:#856404;font-size:13px;font-weight:500;line-height:1.4}.session-expiry-warning__dismiss{flex-shrink:0;padding:4px 12px;border:1px solid #856404;border-radius:4px;background:transparent;color:#856404;font-size:12px;font-weight:600;cursor:pointer;transition:background-color .15s}.session-expiry-warning__dismiss:hover{background-color:#8564041a}
