@import url(https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;600;700&family=Rajdhani:wght@400;500;600;700&family=Roboto+Condensed:wght@400;700&display=swap);.dev-region{border:2px dashed #3b82f6;border-radius:4px;margin:4px;position:relative}.dev-region-header{border-color:#8b5cf6}.dev-region-list{border-color:#10b981}.dev-region-detail{border-color:#f59e0b;flex:1 1}.dev-region-label{background:#fff;color:inherit;font-size:11px;font-weight:600;left:8px;padding:0 4px;position:absolute;top:-10px;z-index:10}.dev-region-header .dev-region-label{color:#8b5cf6}.dev-region-list .dev-region-label{color:#10b981}.dev-region-detail .dev-region-label{color:#f59e0b}.dev-subregion{border:1px dashed #94a3b8;border-radius:4px;margin:8px 0;padding:8px;position:relative}.dev-subregion-label{background:#fff;color:#64748b;font-size:10px;font-weight:500;left:8px;padding:0 4px;position:absolute;top:-8px}.dev-legend{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:1rem;padding:1rem}.dev-legend-title{align-items:center;border-bottom:1px solid #e2e8f0;color:#1e293b;display:flex;font-weight:600;gap:8px;margin-bottom:.75rem;padding-bottom:.5rem}.dev-legend-content{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.dev-legend-item{color:#475569;font-size:13px;padding:4px 0}.dev-legend-item strong{color:#1e293b}.rich-text-display{background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;color:#1e293b;font-size:14px;line-height:1.6;max-height:300px;min-height:100px;overflow-y:auto;padding:12px 16px}.rich-text-display.rich-text-empty{align-items:center;color:#94a3b8;display:flex;font-style:italic;justify-content:center;min-height:60px}.rich-text-display.rich-text-plain p{margin:0 0 .5em}.rich-text-display.rich-text-plain p:last-child{margin-bottom:0}.rich-text-display h1,.rich-text-display h2,.rich-text-display h3,.rich-text-display h4{color:#0f172a;margin:.5em 0}.rich-text-display ol,.rich-text-display ul{margin:.5em 0;padding-left:1.5em}.rich-text-display li{margin:.25em 0}.rich-text-display p{margin:.5em 0}.rich-text-display strong{font-weight:600}.rich-text-display em{font-style:italic}.rich-text-display table{border-collapse:collapse;margin:.5em 0;width:100%}.rich-text-display td,.rich-text-display th{border:1px solid #e2e8f0;padding:8px;text-align:left}.rich-text-display th{background:#f1f5f9;font-weight:600}.dev-page{margin:0 auto;max-width:1200px;padding:var(--spacing-lg)}.dev-page.loading{align-items:center;color:var(--color-gray-500);display:flex;justify-content:center;min-height:200px}.dev-page-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:var(--spacing-lg)}.dev-page-title h1{color:var(--color-primary);font-size:var(--text-2xl);margin:0 0 var(--spacing-xs) 0}.dev-page-path{color:var(--color-gray-400);font-family:var(--font-mono);font-size:var(--text-xs)}.dev-page-actions{display:flex;gap:var(--spacing-sm)}.dev-page-error{background-color:var(--color-error-light);border-radius:var(--radius-sm);color:var(--color-error);margin-bottom:var(--spacing-lg);padding:var(--spacing-md)}.dev-page-meta{color:var(--color-gray-500);display:flex;font-size:var(--text-sm);gap:var(--spacing-lg);margin-bottom:var(--spacing-md)}.progress-summary,.unsaved-indicator{font-weight:600}.sprint-editor{background-color:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.6;min-height:500px;padding:var(--spacing-lg);resize:vertical;width:100%}.sprint-editor:focus{border-color:var(--color-primary);outline:none}.sprint-display{background-color:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);padding:var(--spacing-xl)}.sprint-display h1{border-bottom:2px solid var(--color-primary-light);color:var(--color-primary);font-size:var(--text-2xl);margin:0 0 var(--spacing-lg) 0;padding-bottom:var(--spacing-sm)}.sprint-display h2{color:var(--color-gray-700);font-size:var(--text-xl);margin:var(--spacing-xl) 0 var(--spacing-md) 0}.sprint-display h3{color:var(--color-gray-600);font-size:var(--text-lg);margin:var(--spacing-lg) 0 var(--spacing-sm) 0}.sprint-display p{line-height:1.6;margin:var(--spacing-sm) 0}.sprint-display hr{border:none;border-top:1px solid var(--color-gray-200);margin:var(--spacing-xl) 0}.sprint-table{border-collapse:collapse;margin:var(--spacing-md) 0;width:100%}.sprint-table td,.sprint-table th{border:1px solid var(--color-gray-200);padding:var(--spacing-sm) var(--spacing-md);text-align:left}.sprint-table td:first-child,.sprint-table th:first-child{width:35%}.sprint-table td:nth-child(2),.sprint-table th:nth-child(2){text-align:center;width:90px}.sprint-table td:nth-child(3),.sprint-table th:nth-child(3){min-width:200px;width:40%}.sprint-table td:nth-child(4),.sprint-table th:nth-child(4){text-align:center;white-space:nowrap;width:100px}.sprint-table th{background-color:var(--color-primary);color:#fff;font-weight:600}.sprint-table tr:nth-child(2n){background-color:var(--color-gray-50)}.sprint-table td.status-cell{font-weight:600;text-align:center}.sprint-table td.status-pending{background-color:#fff;color:var(--color-gray-600)}.sprint-table td.status-in-progress{animation:in-progress-pulse 2s ease-in-out infinite;background-color:var(--color-warning-light);color:var(--color-warning)}@keyframes in-progress-pulse{0%,to{background-color:var(--color-warning-light)}50%{background-color:#fef08a}}.sprint-table td.status-validate{background-color:var(--color-primary-light);color:var(--color-primary)}.sprint-table td.status-complete{background-color:var(--color-success-light);color:var(--color-success)}.status-validate-wrapper{align-items:center;display:flex;justify-content:center}.validate-dropdown{background-color:initial;border:1px solid var(--color-primary);border-radius:var(--radius-sm);color:var(--color-primary);cursor:pointer;font-size:var(--text-xs);font-weight:500;outline:none;padding:2px 4px}.validate-dropdown:hover{background-color:var(--color-primary);color:#fff}.validate-dropdown:disabled{cursor:not-allowed;opacity:.5}.status-complete-reopenable{cursor:pointer;-webkit-user-select:none;user-select:none}.status-complete-reopenable:hover{text-decoration:underline}.btn-outline{background:#0000;border:1px solid var(--color-gray-300);color:var(--color-gray-600)}.btn-outline:hover{background-color:var(--color-gray-100);border-color:var(--color-gray-400)}.sprint-task{align-items:flex-start;display:flex;gap:var(--spacing-sm);padding:var(--spacing-xs) 0}.sprint-task.completed{color:var(--color-gray-400);text-decoration:line-through}.task-checkbox{color:var(--color-gray-400);flex-shrink:0;width:18px}.task-checkbox.checked{color:var(--color-success)}.sprint-list-item{display:flex;gap:var(--spacing-sm);padding:var(--spacing-xs) 0;padding-left:var(--spacing-md)}.sprint-list-item.numbered{padding-left:0}.sprint-list-item.numbered>span:first-child{color:var(--color-gray-500);min-width:24px}.sprint-note{color:var(--color-gray-400);font-style:italic}.sprint-spacer{height:var(--spacing-sm)}.sprint-ordered-list,.sprint-unordered-list{margin:var(--spacing-sm) 0;padding-left:var(--spacing-xl)}.sprint-ordered-list li,.sprint-unordered-list li{line-height:1.6;margin:var(--spacing-xs) 0}.sprint-add-task-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.sprint-add-task-modal{background-color:var(--color-bg-white);border-radius:var(--radius-md);box-shadow:0 4px 20px #00000026;margin:var(--spacing-lg);max-width:500px;width:100%}.sprint-add-task-modal .modal-header{align-items:center;border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg)}.sprint-add-task-modal .modal-header h3{color:var(--color-gray-800);font-size:var(--text-lg);margin:0}.sprint-add-task-modal .modal-close{background:none;border:none;border-radius:var(--radius-sm);color:var(--color-gray-400);cursor:pointer;padding:var(--spacing-xs)}.sprint-add-task-modal .modal-close:hover{background-color:var(--color-gray-100);color:var(--color-gray-600)}.sprint-add-task-modal .modal-body{padding:var(--spacing-lg)}.sprint-add-task-modal .form-row{margin-bottom:var(--spacing-md)}.sprint-add-task-modal .form-row:last-child{margin-bottom:0}.sprint-add-task-modal .form-row label{color:var(--color-gray-700);display:block;font-size:var(--text-sm);font-weight:500;margin-bottom:var(--spacing-xs)}.sprint-add-task-modal .form-input{border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);padding:var(--spacing-sm) var(--spacing-md);width:100%}.sprint-add-task-modal .form-input:focus{border-color:var(--color-primary);outline:none}.sprint-add-task-modal .form-row-inline{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.sprint-add-task-modal .form-row-inline .form-field{flex:1 1}.sprint-add-task-modal .form-row-inline .form-field label{color:var(--color-gray-700);display:block;font-size:var(--text-sm);font-weight:500;margin-bottom:var(--spacing-xs)}.sprint-add-task-modal .form-textarea{font-family:inherit;line-height:1.5;min-height:100px;resize:vertical}.sprint-add-task-modal .modal-footer{background-color:var(--color-gray-50);border-radius:0 0 var(--radius-md) var(--radius-md);border-top:1px solid var(--color-gray-200);display:flex;gap:var(--spacing-sm);justify-content:flex-end;padding:var(--spacing-md) var(--spacing-lg)}.dev-plan-progress{background-color:var(--color-gray-200);border-radius:4px;height:8px;margin-bottom:var(--spacing-xl);overflow:hidden}.dev-plan-progress-bar{background-color:var(--color-success);height:100%;transition:width .3s ease}.dev-plan-steps{display:flex;flex-direction:column;gap:var(--spacing-sm)}.dev-plan-step{background-color:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);overflow:hidden}.dev-plan-step.status-complete{border-left:4px solid var(--color-success)}.dev-plan-step.status-in-progress{border-left:4px solid var(--color-warning)}.dev-plan-step.status-incomplete{border-left:4px solid var(--color-gray-300)}.dev-plan-step-header{align-items:center;cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-md);-webkit-user-select:none;user-select:none}.dev-plan-step-header:hover{background-color:var(--color-gray-50)}.step-expand-icon{color:var(--color-gray-400);flex-shrink:0}.status-icon{flex-shrink:0}.status-icon.complete{color:var(--color-success)}.status-icon.in-progress{color:var(--color-warning)}.status-icon.incomplete{color:var(--color-gray-400)}.step-number{color:var(--color-gray-500);font-weight:600;min-width:60px}.step-number-editable{border-bottom:1px dashed var(--color-gray-400);cursor:pointer}.step-number-editable:hover{border-bottom-color:var(--color-primary);color:var(--color-primary)}.step-number-edit{align-items:center;color:var(--color-gray-500);display:inline-flex;font-weight:600;gap:4px}.step-number-input{border:1px solid var(--color-primary);border-radius:4px;font-size:inherit;font-weight:600;outline:none;padding:2px 4px;text-align:center;width:50px}.step-number-input:focus{box-shadow:0 0 0 2px var(--color-primary-light)}.step-name{color:var(--color-gray-700);flex:1 1;font-weight:500}.step-status-badge{border-radius:12px;font-size:var(--text-xs);font-weight:500;padding:2px 8px}.step-status-badge.status-complete{background-color:var(--color-success-light);color:var(--color-success)}.step-status-badge.status-in-progress{background-color:var(--color-warning-light);color:var(--color-warning)}.step-status-badge.status-incomplete{background-color:var(--color-gray-100);color:var(--color-gray-500)}.dev-plan-step-body{background-color:var(--color-gray-50);border-top:1px solid var(--color-gray-200);padding:var(--spacing-md) var(--spacing-lg)}.step-description{margin-bottom:var(--spacing-md)}.step-comment strong,.step-description strong{color:var(--color-gray-600);display:block;font-size:var(--text-sm);margin-bottom:var(--spacing-xs)}.step-comment pre,.step-description p{color:var(--color-gray-700);line-height:1.6;margin:0}.step-comment pre{background-color:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-family:inherit;font-size:inherit;padding:var(--spacing-md);white-space:pre-wrap}.step-actions{display:flex;justify-content:flex-end;margin-top:var(--spacing-md)}.btn-danger{background-color:var(--color-error);border:none;color:#fff}.btn-danger:hover{background-color:#b91c1c;background-color:var(--color-error-dark,#b91c1c)}.btn-danger:disabled{background-color:var(--color-gray-300);cursor:not-allowed}.step-header-controls{display:flex;gap:2px;margin-left:auto}.step-edit-btn,.step-move-btn{align-items:center;background:none;border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);color:var(--color-gray-500);cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;transition:all .15s ease;width:24px}.step-edit-btn:hover:not(:disabled),.step-move-btn:hover:not(:disabled){background-color:var(--color-gray-100);border-color:var(--color-gray-400);color:var(--color-gray-700)}.step-edit-btn:disabled,.step-move-btn:disabled{cursor:not-allowed;opacity:.3}.step-edit-btn{margin-left:4px}.step-delete-btn{align-items:center;background:none;border:none;color:var(--color-gray-400);cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;transition:color .15s ease;width:24px}.step-delete-btn:hover:not(:disabled){color:var(--color-error)}.step-delete-btn:disabled{cursor:not-allowed;opacity:.3}.step-edit-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.step-edit-form .form-row{display:flex;flex-direction:column;gap:var(--spacing-xs)}.step-edit-form .form-row label{color:var(--color-gray-600);font-size:var(--text-sm);font-weight:500}.step-edit-form .form-input{border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);padding:var(--spacing-sm)}.step-edit-form textarea.form-input{min-height:60px;resize:vertical}.step-edit-form select.form-input{max-width:200px}.step-edit-form .form-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.schema-controls{align-items:center;display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.schema-search{align-items:center;background-color:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);display:flex;flex:1 1;gap:var(--spacing-sm);max-width:400px;padding:var(--spacing-sm) var(--spacing-md)}.schema-search:focus-within{border-color:var(--color-primary)}.schema-search svg{color:var(--color-gray-400);flex-shrink:0}.schema-search input{background:#0000;border:none;flex:1 1;font-size:var(--text-sm);outline:none}.schema-toggle-btns{display:flex;gap:var(--spacing-sm)}.schema-search-results{color:var(--color-gray-500);font-size:var(--text-sm);margin-bottom:var(--spacing-md)}.schema-tables{display:flex;flex-direction:column;gap:var(--spacing-sm)}.schema-table{background-color:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);overflow:hidden}.schema-table-header{align-items:center;cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-md);transition:background-color .15s ease;-webkit-user-select:none;user-select:none}.schema-table-header:hover{background-color:var(--color-gray-50)}.table-expand-icon{color:var(--color-gray-400);flex-shrink:0}.table-icon{color:var(--color-primary);flex-shrink:0}.table-name{color:var(--color-gray-800);flex:1 1;font-weight:600}.table-meta{align-items:center;color:var(--color-gray-500);display:flex;font-size:var(--text-xs);gap:var(--spacing-sm)}.meta-badge{align-items:center;border-radius:10px;display:inline-flex;font-size:10px;gap:2px;padding:2px 6px}.pk-badge{background-color:var(--color-warning-light);color:var(--color-warning)}.schema-table-body{border-top:1px solid var(--color-gray-200)}.columns-table{border-collapse:collapse;font-size:var(--text-sm);width:100%}.columns-table th{background-color:var(--color-gray-50);border-bottom:1px solid var(--color-gray-200);color:var(--color-gray-600);font-size:var(--text-xs);font-weight:500;letter-spacing:.5px;text-align:left;text-transform:uppercase}.columns-table td,.columns-table th{padding:var(--spacing-sm) var(--spacing-md)}.columns-table td{border-bottom:1px solid var(--color-gray-100)}.columns-table tr:last-child td{border-bottom:none}.columns-table tr.highlight{background-color:var(--color-warning-light)}.col-key{text-align:center}.pk-icon{color:var(--color-warning)}.fk-icon{color:var(--color-primary)}.col-name{color:var(--color-gray-800);font-weight:500}.identity-badge{background-color:var(--color-gray-200);border-radius:3px;color:var(--color-gray-600);font-size:9px;font-weight:400;margin-left:var(--spacing-sm);padding:1px 4px}.col-type{font-family:var(--font-mono);font-size:var(--text-xs)}.col-type.type-number{color:#0369a1}.col-type.type-string{color:#15803d}.col-type.type-date{color:#7c3aed}.col-type.type-boolean{color:#c2410c}.col-type.type-other{color:var(--color-gray-600)}.col-nullable .nullable-yes{color:var(--color-gray-400);font-size:var(--text-xs)}.col-nullable .nullable-no{color:var(--color-error);font-size:var(--text-xs);font-weight:500}.col-fk .fk-link{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:var(--text-xs);padding:0;text-decoration:underline}.col-fk .fk-link:hover{color:var(--color-primary-dark)}.schema-no-results{background-color:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);color:var(--color-gray-500);padding:var(--spacing-xl);text-align:center}.live-badge{align-items:center;background-color:var(--color-success);border-radius:10px;color:#fff;display:inline-flex;font-size:var(--text-xs);font-weight:600;gap:4px;margin-left:var(--spacing-sm);padding:2px 8px;vertical-align:middle}.live-badge svg{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.schema-stats{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-lg)}.schema-stats .stat-item{align-items:center;display:inline-flex;font-weight:500;gap:var(--spacing-xs)}.schema-stats .stat-item.muted{color:var(--color-gray-400);font-weight:400}.schema-active-filters{align-items:center;background-color:var(--color-primary-light);border-radius:var(--radius-sm);display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.schema-active-filters .filter-label{color:var(--color-gray-600);font-size:var(--text-sm);font-weight:500}.schema-active-filters .filter-tag{align-items:center;background-color:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);color:var(--color-gray-700);display:inline-flex;font-size:var(--text-xs);gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm)}.schema-active-filters .filter-tag-remove{background:none;border:none;color:var(--color-gray-400);cursor:pointer;font-size:var(--text-md);line-height:1;margin-left:var(--spacing-xs);padding:0}.schema-active-filters .filter-tag-remove:hover{color:var(--color-error)}.schema-active-filters .clear-all-filters{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:var(--text-xs);padding:var(--spacing-xs);text-decoration:underline}.schema-active-filters .clear-all-filters:hover{color:var(--color-primary-dark)}.schema-results-count{color:var(--color-gray-500);font-size:var(--text-sm);margin-bottom:var(--spacing-sm)}.schema-grid-container{background-color:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);overflow:hidden}.schema-grid-container .data-grid-container{max-height:calc(100vh - 350px);overflow:auto}.schema-grid-container .data-grid{font-size:var(--text-sm)}.schema-grid-container .data-grid td{padding:var(--spacing-sm) var(--spacing-md)}.schema-grid-container .cell-boolean{text-align:center}.schema-grid-container .boolean-display{display:flex;justify-content:center}.schema-grid-container .boolean-check{color:var(--color-success)}.nav-admin-page .dev-page-content{padding-bottom:60px}.nav-tree{gap:2px}.nav-tree,.nav-tree-item{display:flex;flex-direction:column}.nav-tree-row{align-items:center;background-color:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md)}.nav-tree-row.is-new{background-color:var(--color-success-light);border-color:var(--color-success)}.nav-tree-row.is-future{opacity:.7}.nav-tree-expand{align-items:center;background:none;border:none;color:var(--color-gray-500);cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;width:24px}.nav-tree-expand:disabled{cursor:default}.nav-tree-spacer{display:inline-block;width:16px}.nav-tree-label{align-items:center;color:var(--color-gray-800);display:flex;flex:1 1;font-weight:500;gap:var(--spacing-sm)}.nav-tree-badge{border-radius:10px;font-size:10px;font-weight:600;padding:1px 6px;text-transform:uppercase}.nav-tree-badge.future{background-color:var(--color-gray-200);color:var(--color-gray-600)}.nav-tree-badge.admin{background-color:var(--color-warning-light);color:var(--color-warning)}.nav-tree-badge.new{background-color:var(--color-success-light);color:var(--color-success)}.nav-tree-badge.header{background-color:#dbeafe;color:#1d4ed8}.nav-tree-destination{color:var(--color-gray-500);font-family:var(--font-mono);font-size:var(--text-sm);min-width:150px}.nav-tree-controls{display:flex;gap:2px}.nav-tree-controls button{align-items:center;background:none;border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);color:var(--color-gray-500);cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;transition:all .15s ease;width:24px}.nav-tree-controls button:hover:not(:disabled){background-color:var(--color-gray-100);border-color:var(--color-gray-400);color:var(--color-gray-700)}.nav-tree-controls button:disabled{cursor:not-allowed;opacity:.3}.nav-tree-controls button.delete-btn:hover:not(:disabled){background-color:var(--color-error-light);border-color:var(--color-error);color:var(--color-error)}.nav-tree-children{display:flex;flex-direction:column;gap:2px;margin-left:12px;margin-top:2px}.nav-admin-actions{background-color:var(--color-bg-gray);border-top:1px solid var(--color-gray-200);bottom:28px;display:flex;gap:var(--spacing-md);justify-content:flex-end;left:200px;padding:var(--spacing-md) var(--spacing-xl);position:fixed;right:0;z-index:10}.has-changes{color:var(--color-warning);font-weight:500}.form-row-checkbox,.form-row-checkbox label{align-items:center;display:flex}.form-row-checkbox label{color:var(--color-gray-700);cursor:pointer;font-size:var(--text-sm);gap:var(--spacing-sm)}.form-row-checkbox input[type=checkbox]{cursor:pointer;height:16px;width:16px}.actions-cell,.actions-header{text-align:center;width:70px}.actions-cell{padding:var(--spacing-xs)!important}.task-actions{gap:4px}.action-btn,.task-actions{align-items:center;display:flex;justify-content:center}.action-btn{background:none;border:1px solid #0000;border-radius:var(--radius-sm);cursor:pointer;height:24px;padding:0;transition:all .15s ease;width:24px}.action-btn:disabled{cursor:not-allowed;opacity:.4}.action-btn.action-edit{color:var(--color-gray-500)}.action-btn.action-edit:hover:not(:disabled){background-color:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.action-btn.action-delete{color:var(--color-gray-400)}.action-btn.action-delete:hover:not(:disabled){background-color:var(--color-error-light);border-color:var(--color-error);color:var(--color-error)}.action-btn.action-view{color:var(--color-gray-500)}.action-btn.action-view:hover:not(:disabled){background-color:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.sprint-view-modal{max-width:600px}.claude-summary-display{background-color:var(--color-primary-light)!important;border-color:var(--color-primary)!important}.rev-log-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.rev-log-item{background-color:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);overflow:hidden}.rev-log-item-header{align-items:center;cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-md);-webkit-user-select:none;user-select:none}.rev-log-item-header:hover{background-color:var(--color-gray-50)}.rev-expand-icon{color:var(--color-gray-400);flex-shrink:0}.rev-type-badge{border-radius:10px;font-size:10px;font-weight:600;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.rev-type-badge.type-major{background-color:var(--color-primary);color:#fff}.rev-type-badge.type-minor{background-color:var(--color-gray-200);color:var(--color-gray-600)}.rev-version{align-items:center;color:var(--color-primary);display:flex;font-weight:600;gap:4px;min-width:80px}.rev-date{color:var(--color-gray-500);min-width:100px}.rev-date,.rev-summary{align-items:center;display:flex;font-size:var(--text-sm);gap:4px}.rev-summary{color:var(--color-gray-700);flex:1 1}.rev-header-controls{display:flex;gap:2px}.rev-log-item-body{background-color:var(--color-gray-50);border-top:1px solid var(--color-gray-200);padding:var(--spacing-md) var(--spacing-lg)}.rev-changes-list{color:var(--color-gray-700)}.rev-changes-list strong{color:var(--color-gray-600);display:block;font-size:var(--text-sm);margin-bottom:var(--spacing-sm)}.rev-changes-list ul{margin:0;padding-left:var(--spacing-xl)}.rev-changes-list li{line-height:1.6;margin:var(--spacing-xs) 0}.change-line-row{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.change-line-row .form-input{flex:1 1}.btn-icon-subtle{align-items:center;background:none;border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);color:var(--color-gray-400);cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:all .15s ease;width:32px}.btn-icon-subtle:hover:not(:disabled){background-color:var(--color-error-light);border-color:var(--color-error);color:var(--color-error)}.btn-icon-subtle:disabled{cursor:not-allowed;opacity:.3}.standard-view-config-module{display:flex;flex-direction:column;height:100%}.lvc-header{background-color:var(--color-bg-white);border-bottom:1px solid var(--color-gray-200);flex-shrink:0;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md)}.lvc-header,.lvc-header-left{align-items:center;display:flex}.lvc-header-left{gap:var(--spacing-md)}.lvc-header-left h2{color:var(--color-primary);font-size:var(--text-lg);margin:0}.lvc-table-selector{align-items:center;display:inline-flex;position:relative}.lvc-table-selector select{-webkit-appearance:none;appearance:none;background-color:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);min-width:180px;padding:var(--spacing-xs) var(--spacing-xl) var(--spacing-xs) var(--spacing-sm)}.lvc-table-selector .dropdown-icon{color:var(--color-gray-500);pointer-events:none;position:absolute;right:var(--spacing-sm)}.lvc-dropdown-label{color:var(--color-gray-600);font-size:var(--text-xs);font-weight:600;letter-spacing:.5px;margin-right:var(--spacing-xs);text-transform:uppercase}.lvc-table-dropdown-wrapper{align-items:center;display:flex;gap:var(--spacing-xs)}.lvc-custom-dropdown{position:relative}.lvc-dropdown-trigger{align-items:center;background:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--spacing-sm);justify-content:space-between;min-width:180px;padding:var(--spacing-xs) var(--spacing-sm);text-align:left}.lvc-dropdown-trigger:hover:not(:disabled){border-color:var(--color-primary)}.lvc-dropdown-trigger:disabled{cursor:not-allowed;opacity:.6}.lvc-dropdown-panel{background:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);box-shadow:0 4px 12px #00000026;display:flex;flex-direction:column;height:400px;left:0;margin-top:2px;min-height:200px;min-width:280px;overflow:hidden;position:absolute;resize:both;top:100%;width:320px;z-index:100}.lvc-dropdown-search{align-items:center;background:var(--color-gray-50);border-bottom:1px solid var(--color-gray-200);display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm)}.lvc-dropdown-search svg{color:var(--color-gray-400);flex-shrink:0}.lvc-dropdown-search input{background:#0000;border:none;flex:1 1;font-family:var(--font-secondary);font-size:var(--text-sm);outline:none}.lvc-dropdown-search input::placeholder{color:var(--color-gray-400)}.lvc-dropdown-options{flex:1 1;overflow-y:auto}.lvc-dropdown-option{align-items:center;cursor:pointer;display:flex;font-size:var(--text-sm);justify-content:space-between;padding:var(--spacing-xs) var(--spacing-sm)}.lvc-dropdown-option:hover{background:var(--color-gray-100)}.lvc-dropdown-option.selected{background:var(--color-primary-light);color:var(--color-primary)}.lvc-option-name{flex:1 1}.lvc-option-icons{display:flex;gap:4px;margin-left:var(--spacing-sm)}.lvc-dropdown-legend{background:var(--color-gray-100);border-top:1px solid var(--color-gray-200);color:var(--color-gray-600);display:flex;font-size:10px;gap:var(--spacing-md);justify-content:center;padding:var(--spacing-xs) var(--spacing-sm)}.lvc-meta{color:var(--color-gray-500);font-size:var(--text-xs)}.lvc-header-right{align-items:center;display:flex;gap:var(--spacing-sm)}.error-indicator{color:var(--color-error);font-size:var(--text-xs)}.lvc-fields-panel{display:flex;flex-direction:column;transition:background-color .15s ease}.lvc-fields-panel.drag-over{background-color:var(--color-primary-light)}.lvc-panel-meta{border-bottom:1px solid var(--color-gray-100);color:var(--color-gray-400);font-size:10px;padding:0 var(--spacing-sm) var(--spacing-xs)}.lvc-fields-panel .list-scroll{display:flex;flex-direction:column;gap:4px;padding:var(--spacing-sm)}.lvc-search{align-items:center;background-color:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-xs);margin:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm)}.lvc-search input{background:#0000;border:none;flex:1 1;font-size:var(--text-sm);min-width:0;outline:none}.lvc-search button{align-items:center;background:none;border:none;color:var(--color-gray-400);cursor:pointer;display:flex;padding:2px}.lvc-search button:hover{color:var(--color-gray-600)}.lvc-panel-actions{border-bottom:1px solid var(--color-gray-200);display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md)}.lvc-panel-actions .btn{flex:1 1;justify-content:center}.lvc-panel-actions .btn-danger-text{color:var(--color-danger)}.lvc-panel-actions .btn-danger-text:hover{background-color:#fee2e2;background-color:var(--color-danger-light,#fee2e2);border-color:var(--color-danger)}.lvc-field-item{align-items:center;background-color:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);cursor:grab;display:flex;gap:var(--spacing-sm);padding:6px var(--spacing-sm);transition:all .15s ease}.lvc-field-item:hover{background-color:var(--color-gray-100);border-color:var(--color-gray-300)}.lvc-field-item:active{cursor:grabbing}.lvc-field-item .drag-handle{color:var(--color-gray-400);flex-shrink:0}.lvc-field-item .field-name{color:var(--color-gray-700);flex:1 1;font-size:var(--text-xs);font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lvc-field-item .field-badges{align-items:center;display:flex;flex-shrink:0;gap:4px}.lvc-empty{color:var(--color-gray-400);font-size:var(--text-sm);font-style:italic;padding:var(--spacing-lg);text-align:center}.fk-badge{align-items:center;background-color:var(--color-primary-light);color:var(--color-primary);display:inline-flex;gap:2px;max-width:70px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fk-badge,.type-badge{border-radius:8px;font-size:9px;font-weight:600;padding:2px 5px}.type-badge{letter-spacing:.3px;text-transform:uppercase}.type-badge.type-string{background-color:#dcfce7;color:#166534}.type-badge.type-number{background-color:#dbeafe;color:#1e40af}.type-badge.type-date{background-color:#f3e8ff;color:#7c3aed}.type-badge.type-boolean{background-color:#fef9c3;color:#a16207}.type-badge.type-other{background-color:var(--color-gray-200);color:var(--color-gray-600)}.type-badge.small{font-size:8px;padding:1px 4px}.field-type-badge{align-items:center;background-color:var(--color-gray-200);border-radius:3px;color:var(--color-gray-600);display:inline-flex;font-size:9px;font-weight:600;justify-content:center;padding:2px 4px}.field-type-badge.text{background-color:#dbeafe;color:#1d4ed8}.field-type-badge.number{background-color:#fef3c7;color:#b45309}.field-type-badge.date{background-color:#e0e7ff;color:#4338ca}.field-type-badge.checkbox{background-color:#d1fae5;color:#047857}.field-type-badge.textarea{background-color:#f3e8ff;color:#7c3aed}.field-type-badge.dropdown{background-color:#fce7f3;color:#be185d}.field-type-badge.readonly{background-color:var(--color-gray-300);color:var(--color-gray-700)}.field-type-badge.spacer{background-color:var(--color-gray-100);border:1px dashed var(--color-gray-300);color:var(--color-gray-400)}.lvc-canvas-panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}.lvc-settings-bar{align-items:center;background-color:var(--color-gray-50);border-bottom:1px solid var(--color-gray-200);display:flex;flex-shrink:0;flex-wrap:wrap;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.lvc-settings-bar .setting-group{align-items:center;display:flex;gap:var(--spacing-xs)}.lvc-settings-bar .setting-group label{color:var(--color-gray-600);font-size:var(--text-xs);font-weight:500}.lvc-settings-bar .setting-group select{border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);font-size:var(--text-xs);min-width:100px;padding:2px var(--spacing-sm)}.lvc-settings-bar .setting-actions{display:flex;gap:var(--spacing-xs);margin-left:auto}.lvc-canvas-title{color:var(--color-gray-600);font-size:var(--text-sm);font-weight:600}.lvc-form-canvas{flex:1 1;flex-direction:column;overflow-y:auto;padding:var(--spacing-md)}.lvc-canvas-row,.lvc-form-canvas{display:flex;gap:var(--spacing-sm)}.lvc-canvas-row{align-items:flex-start;background-color:var(--color-bg-white);border:2px dashed var(--color-gray-200);border-radius:var(--radius-sm);min-height:60px;padding:var(--spacing-sm);transition:all .15s ease}.lvc-canvas-row.drag-over{background-color:var(--color-primary-light);border-color:var(--color-primary)}.lvc-insert-strip{background-color:#e2e8f0;background-color:var(--color-border,#e2e8f0);border:2px dashed #0000;border-radius:3px;height:6px;margin:1px 0;transition:height .1s,background-color .1s,border-color .1s}.lvc-insert-strip.active{background-color:#e0f0f8;background-color:var(--color-primary-light,#e0f0f8);border-color:#1a5568;border-color:var(--color-primary,#1a5568);height:16px}.lvc-canvas-row .row-label{color:var(--color-gray-400);flex-shrink:0;font-size:10px;font-weight:600;padding-top:8px;text-align:center;width:32px}.lvc-canvas-row .detail-grid-24{align-items:stretch;flex:1 1;min-height:44px}.lvc-drop-hint{align-items:center;border:1px dashed var(--color-gray-300);border-radius:var(--radius-sm);color:var(--color-gray-400);display:flex;font-size:var(--text-xs);font-style:italic;height:44px;justify-content:center}.lvc-placed-field{background-color:var(--color-primary-light);border:1px solid var(--color-primary);border-radius:var(--radius-sm);cursor:grab;display:flex;flex-direction:column;gap:2px;padding:var(--spacing-xs);position:relative;transition:all .15s ease}.lvc-placed-field.label-left{align-items:stretch;flex-direction:row;gap:var(--spacing-xs)}.lvc-placed-field:hover{box-shadow:0 2px 8px #0000001f}.lvc-placed-field:active{cursor:grabbing}.lvc-tile-label{align-items:center;display:flex;gap:3px;min-width:0}.lvc-placed-field.label-left .lvc-tile-label{border-right:1px solid #0000001a;flex-shrink:0;max-width:40%;padding-right:var(--spacing-xs)}.lvc-tile-label .drag-handle{color:var(--color-gray-400);flex-shrink:0}.lvc-tile-label .label-text{color:var(--color-gray-700);font-size:10px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lvc-tile-input{align-items:center;background-color:#ffffffb3;border:1px dashed var(--color-gray-300);border-radius:3px;display:flex;flex:1 1;justify-content:space-between;min-height:22px;padding:3px 6px}.lvc-placed-field.label-left .lvc-tile-input{flex:1 1}.lvc-tile-input .input-icons{align-items:center;display:flex;gap:4px}.lvc-tile-input .input-icon{align-items:center;border-radius:3px;display:inline-flex;font-size:8px;font-weight:700;gap:2px;padding:1px 4px}.lvc-tile-input .input-icon.fk{background-color:var(--color-primary-light);color:var(--color-primary)}.lvc-tile-input .input-icon.type{text-transform:uppercase}.lvc-tile-input .input-icon.type.type-string{background-color:#dcfce7;color:#166534}.lvc-tile-input .input-icon.type.type-number{background-color:#dbeafe;color:#1e40af}.lvc-tile-input .input-icon.type.type-date{background-color:#f3e8ff;color:#7c3aed}.lvc-tile-input .input-icon.type.type-boolean{background-color:#fef9c3;color:#a16207}.lvc-tile-input .input-icon.type.type-other{background-color:var(--color-gray-200);color:var(--color-gray-600)}.lvc-tile-input .colspan-indicator{color:var(--color-gray-500);font-size:14px;font-weight:700;margin-left:auto}.lvc-tile-controls{display:flex;gap:1px;opacity:0;position:absolute;right:2px;top:2px;transition:opacity .15s ease}.lvc-placed-field:hover .lvc-tile-controls{opacity:1}.lvc-tile-controls button{align-items:center;background:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:3px;color:var(--color-gray-500);cursor:pointer;display:flex;height:16px;justify-content:center;padding:0;transition:all .15s ease;width:16px}.lvc-tile-controls button:hover{background-color:var(--color-gray-100);color:var(--color-primary)}.lvc-tile-controls button:last-child:hover{border-color:var(--color-error);color:var(--color-error)}.lvc-section{align-items:center;display:flex;justify-content:space-between}.lvc-section .section-title{font-weight:600}.lvc-section .section-controls{display:flex;gap:2px;opacity:0;transition:opacity .15s ease}.lvc-section:hover .section-controls{opacity:1}.lvc-section-btn{background:#fff3;height:22px;width:22px}.lvc-section-btn:hover:not(:disabled){border-color:#fff9;color:#fff}.lvc-section-btn.delete:hover:not(:disabled){background-color:#ff6b6b33;border-color:#ff6b6b;color:#ff6b6b}.btn-xs{font-size:10px;padding:2px var(--spacing-xs)}.lvc-related-section{background-color:var(--color-bg-white);border-top:1px solid var(--color-gray-200);flex-shrink:0;min-height:120px}.lvc-related-header{align-items:center;background-color:var(--color-gray-50);border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md)}.lvc-related-title{align-items:center;color:var(--color-gray-700);display:flex;font-size:var(--text-sm);font-weight:600;gap:var(--spacing-sm)}.lvc-related-count{color:var(--color-gray-500);font-weight:400}.lvc-related-actions{display:flex;gap:var(--spacing-sm)}.lvc-related-actions .btn{align-items:center;display:flex;gap:4px}.lvc-related-empty{color:var(--color-gray-500);padding:var(--spacing-lg);text-align:center}.lvc-related-empty p{margin:0}.lvc-related-empty .hint{color:var(--color-gray-400);font-size:var(--text-xs);margin-top:var(--spacing-xs)}.lvc-related-tabs{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);padding:var(--spacing-md)}.lvc-related-tab{align-items:center;background-color:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.lvc-related-tab .tab-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.lvc-related-tab .tab-label{color:var(--color-gray-800);font-size:var(--text-sm);font-weight:600}.lvc-related-tab .tab-table{color:var(--color-gray-600);font-size:11px}.lvc-related-tab .tab-columns{color:var(--color-gray-500);font-size:10px}.lvc-related-tab .tab-actions{display:flex;gap:4px}.lvc-related-tab .tab-actions button{align-items:center;background:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);color:var(--color-gray-500);cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;transition:all .15s ease;width:24px}.lvc-related-tab .tab-actions button:hover{background-color:var(--color-gray-100);border-color:var(--color-primary);color:var(--color-primary)}.lvc-related-tab .tab-actions button.delete:hover{border-color:var(--color-error);color:var(--color-error)}.lvc-related-tab .tab-order-controls{display:flex;flex-direction:column;gap:2px}.lvc-related-tab .tab-order-controls button{align-items:center;background:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);color:var(--color-gray-500);cursor:pointer;display:flex;height:20px;justify-content:center;padding:0;transition:all .15s ease;width:20px}.lvc-related-tab .tab-order-controls button:hover:not(:disabled){background-color:var(--color-primary);border-color:var(--color-primary);color:#fff}.lvc-related-tab .tab-order-controls button:disabled{cursor:not-allowed;opacity:.3}.lvc-full-section-header{align-items:center;background-color:var(--color-primary);border-radius:var(--radius-sm);color:#fff;display:flex;font-family:var(--font-secondary);font-size:var(--text-base);font-weight:500;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-lg)}.lvc-full-section-header:first-of-type{margin-top:0}.lvc-full-section-header .lvc-related-count{font-weight:400;opacity:.8}.lvc-section-header-controls{align-items:center;display:flex;gap:var(--spacing-xs);margin-left:auto}.lvc-section-btn{align-items:center;background-color:#fff3;border:1px solid #fff6;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .15s ease;width:28px}.lvc-section-btn:hover:not(:disabled){background-color:#ffffff4d;border-color:#fff}.lvc-section-btn:disabled{cursor:not-allowed;opacity:.3}.lvc-section-btn.danger:hover:not(:disabled){background-color:#ef4444cc;border-color:#fff}.lvc-fields-panel .list-panel-header{gap:var(--spacing-sm);justify-content:flex-start}.lvc-fields-panel .list-panel-header .panel-title{flex:1 1}.lvc-fields-panel .list-panel-header .lvc-section-btn{background-color:var(--color-gray-100);border-color:var(--color-gray-300);color:var(--color-gray-600)}.lvc-fields-panel .list-panel-header .lvc-section-btn:hover:not(:disabled){background-color:var(--color-gray-200);border-color:var(--color-gray-400);color:var(--color-primary)}.lvc-add-circle-btn{align-items:center;background-color:#fff3;border:2px solid #ffffff80;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;margin-left:auto;padding:0;position:relative;transition:all .15s ease;width:32px}.lvc-add-circle-btn:hover{background-color:#ffffff4d;border-color:#fff;transform:scale(1.1)}.lvc-add-circle-btn .plus-overlay{background:#fff;border-radius:50%;bottom:2px;color:var(--color-primary);padding:1px;position:absolute;right:2px}.lvc-related-content{background-color:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:0 0 var(--radius-sm) var(--radius-sm);border-top:none;margin-bottom:var(--spacing-md)}.lvc-related-content .lvc-related-empty{color:var(--color-gray-500);padding:var(--spacing-lg);text-align:center}.lvc-related-content .lvc-related-tabs{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md)}.lvc-related-header-controls{align-items:center;display:flex;gap:var(--spacing-xs);margin-left:auto}.lvc-order-btn{align-items:center;background-color:#fff3;border:1px solid #fff6;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .15s ease;width:28px}.lvc-order-btn:hover:not(:disabled){background-color:#ffffff4d;border-color:#fff}.lvc-order-btn:disabled{cursor:not-allowed;opacity:.3}.lvc-related-tabs-horizontal{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);padding:var(--spacing-md)}.lvc-related-tab-h{align-items:center;background-color:var(--color-gray-100);border:2px solid #0000;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);transition:all .15s ease}.lvc-related-tab-h:hover{background-color:var(--color-gray-200)}.lvc-related-tab-h.selected{background-color:var(--color-primary-light);border-color:var(--color-primary)}.lvc-related-tab-h .tab-info-h{display:flex;flex-direction:column;gap:1px}.lvc-related-tab-h .tab-label{color:var(--color-gray-800);font-size:var(--text-sm);font-weight:600;white-space:nowrap}.lvc-related-tab-h .tab-meta{color:var(--color-gray-500);font-size:10px}.lvc-related-tab-h .tab-actions-h{display:flex;gap:2px;opacity:0;transition:opacity .15s ease}.lvc-related-tab-h.selected .tab-actions-h,.lvc-related-tab-h:hover .tab-actions-h{opacity:1}.lvc-related-tab-h .tab-actions-h button{align-items:center;background:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);color:var(--color-gray-500);cursor:pointer;display:flex;height:20px;justify-content:center;padding:0;transition:all .15s ease;width:20px}.lvc-related-tab-h .tab-actions-h button:hover{background-color:var(--color-gray-100);border-color:var(--color-primary);color:var(--color-primary)}.lvc-related-tab-h .tab-actions-h button.delete:hover{border-color:var(--color-error);color:var(--color-error)}.dual-listbox{align-items:stretch;display:flex;gap:var(--spacing-sm)}.dual-listbox-column{display:flex;flex:1 1;flex-direction:column;min-width:180px}.dual-listbox-column label{color:var(--color-gray-700);font-size:var(--text-sm);font-weight:500;margin-bottom:var(--spacing-xs)}.dual-listbox-list{background-color:var(--color-gray-50);flex:1 1;max-height:220px;min-height:180px;overflow-y:auto;padding:var(--spacing-xs)}.dual-listbox-item,.dual-listbox-list{border:1px solid var(--color-gray-200);border-radius:var(--radius-sm)}.dual-listbox-item{align-items:center;background-color:var(--color-bg-white);cursor:pointer;display:flex;font-size:var(--text-sm);margin-bottom:4px;padding:var(--spacing-xs) var(--spacing-sm);transition:all .15s ease;-webkit-user-select:none;user-select:none}.dual-listbox-item:last-child{margin-bottom:0}.dual-listbox-item:hover{background-color:var(--color-primary-light);border-color:var(--color-primary)}.dual-listbox-item.selected{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff}.dual-listbox-controls{display:flex;flex-direction:column;gap:var(--spacing-xs);justify-content:center;padding:0 var(--spacing-xs)}.dual-listbox-controls button{align-items:center;background-color:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);color:var(--color-gray-600);cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:all .15s ease;width:32px}.dual-listbox-controls button:hover:not(:disabled){background-color:var(--color-primary);border-color:var(--color-primary);color:#fff}.dual-listbox-controls button:disabled{cursor:not-allowed;opacity:.4}.dual-listbox-order{display:flex;flex-direction:column;gap:var(--spacing-xs);justify-content:center;padding-left:var(--spacing-xs)}.dual-listbox-order button{align-items:center;background-color:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);color:var(--color-gray-600);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .15s ease;width:28px}.dual-listbox-order button:hover:not(:disabled){background-color:var(--color-primary);border-color:var(--color-primary);color:#fff}.dual-listbox-order button:disabled{cursor:not-allowed;opacity:.4}.lvc-config-tabs{background-color:var(--color-gray-100);border-bottom:1px solid var(--color-gray-200);padding:var(--spacing-sm) var(--spacing-md)}.lvc-config-tab,.lvc-config-tabs{display:flex;gap:var(--spacing-xs)}.lvc-config-tab{align-items:center;background-color:initial;border:1px solid #0000;border-bottom:none;border-radius:var(--radius-sm) var(--radius-sm) 0 0;color:var(--color-gray-600);cursor:pointer;font-size:var(--text-sm);font-weight:500;padding:var(--spacing-xs) var(--spacing-md);transition:all .15s ease}.lvc-config-tab:hover{background-color:var(--color-gray-200);color:var(--color-primary)}.lvc-config-tab.active{background-color:var(--color-bg-white);border-color:var(--color-gray-200);color:var(--color-primary);margin-bottom:-1px;padding-bottom:calc(var(--spacing-xs) + 1px)}.lvc-datasheet-config{flex:1 1;overflow-y:auto;padding:var(--spacing-md)}.lvc-datasheet-list{background-color:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);overflow:hidden}.lvc-ds-header{background-color:var(--color-gray-200);border-bottom:2px solid var(--color-gray-300);color:var(--color-gray-700);font-size:var(--text-sm);font-weight:600}.lvc-ds-header,.lvc-ds-row{grid-gap:var(--spacing-sm);display:grid;gap:var(--spacing-sm);grid-template-columns:32px 50px 1fr 1fr 80px 110px;padding:var(--spacing-sm) var(--spacing-md)}.lvc-ds-row{align-items:center;border-bottom:1px solid var(--color-gray-100);transition:background-color .15s ease}.lvc-ds-row:last-child{border-bottom:none}.lvc-ds-row:hover{background-color:var(--color-gray-50)}.lvc-ds-row.dragging{background-color:var(--color-primary-light);opacity:.5}.ds-col-drag{align-items:center;color:var(--color-gray-400);cursor:grab;display:flex;justify-content:center}.ds-col-drag:active{cursor:grabbing}.ds-col-visible{align-items:center;display:flex;justify-content:center}.ds-col-visible input[type=checkbox]{cursor:pointer;height:18px;width:18px}.ds-col-field{color:var(--color-gray-800);font-size:var(--text-sm);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-col-label,.ds-col-width{align-items:center;display:flex}.ds-input{border:1px solid var(--color-gray-300);padding:4px 8px;transition:border-color .15s ease}.ds-input:focus{box-shadow:0 0 0 2px var(--color-primary-light)}.ds-input-sm{text-align:center;width:70px}.ds-input-warning{background-color:#fef3c7;border-color:#f59e0b}.ds-col-align{display:flex;gap:2px}.ds-align-btn{align-items:center;background-color:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);color:var(--color-gray-500);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .15s ease;width:28px}.ds-align-btn:hover{background-color:var(--color-gray-100);color:var(--color-gray-700)}.ds-align-btn.active{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-bg-white)}.lvc-ds-empty{padding:var(--spacing-xl);text-align:center}.lvc-ds-empty,.lvc-preview-note{color:var(--color-gray-500);font-size:var(--text-sm)}.lvc-preview-note{font-weight:400;margin-left:var(--spacing-sm)}.lvc-ds-preview-wrapper{border:1px solid var(--color-gray-200);border-radius:var(--radius-md);margin-top:var(--spacing-sm);overflow:hidden}.lvc-ds-preview{background-color:var(--color-bg-white);max-height:300px;overflow:auto}.lvc-ds-preview-table{border-collapse:collapse;font-size:var(--text-sm)}.lvc-ds-preview-table thead{position:-webkit-sticky;position:sticky;top:0;z-index:10}.lvc-ds-preview-table th{background-color:var(--color-gray-200);border-bottom:2px solid var(--color-gray-300);color:var(--color-gray-700);font-weight:600;overflow:hidden;padding:var(--spacing-sm) var(--spacing-md);position:relative;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;white-space:nowrap}.lvc-ds-preview-table th.vertical-header{height:100px;padding:var(--spacing-md) var(--spacing-xs);text-orientation:mixed;transform:rotate(180deg);vertical-align:bottom;white-space:nowrap;writing-mode:vertical-rl}.lvc-ds-preview-table td{border-bottom:1px solid var(--color-gray-100);overflow:hidden;padding:var(--spacing-xs) var(--spacing-md);text-overflow:ellipsis;white-space:nowrap}.lvc-ds-preview-table tbody tr:hover{background-color:var(--color-gray-50)}.lvc-preview-empty-row td{color:var(--color-gray-400);font-style:italic;padding:var(--spacing-lg)!important;text-align:center!important}.lvc-resize-handle{background:#0000;cursor:col-resize;height:100%;position:absolute;right:0;top:0;transition:background-color .15s ease;width:6px}.lvc-resize-handle:active,.lvc-resize-handle:hover{background-color:var(--color-primary)}.modal-content{background-color:var(--color-bg-white);box-shadow:0 4px 20px #0003;margin:var(--spacing-lg);max-height:90vh;overflow-y:auto;width:100%}.modal-content.modal-sm{max-width:400px}.modal-content.modal-lg{max-width:720px}.modal-header{align-items:center;border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg)}.modal-header h3{color:var(--color-gray-800);font-size:var(--text-lg);margin:0}.modal-header button{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--color-gray-400);cursor:pointer;display:flex;justify-content:center;padding:var(--spacing-xs)}.modal-header button:hover{background-color:var(--color-gray-100);color:var(--color-gray-600)}.modal-body{padding:var(--spacing-lg)}.modal-footer{background-color:var(--color-gray-50);border-radius:0 0 var(--radius-md) var(--radius-md);border-top:1px solid var(--color-gray-200);display:flex;gap:var(--spacing-sm);justify-content:flex-end;padding:var(--spacing-md) var(--spacing-lg)}.modal-description{color:var(--color-gray-500);font-size:var(--text-sm);margin:0 0 var(--spacing-md) 0}.form-hint{color:var(--color-gray-400);display:block;font-size:var(--text-xs);margin-top:var(--spacing-xs)}.form-row-2col{grid-gap:var(--spacing-md);grid-template-columns:1fr 1fr}.form-row-2col,.form-row-3col{display:grid;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.form-row-3col{grid-gap:var(--spacing-md);grid-template-columns:1fr 1fr 1fr}.form-row-checkboxes{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-md)}.form-row-checkboxes label{align-items:center;color:var(--color-gray-700);cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--spacing-sm)}.form-row-checkboxes input[type=checkbox]{cursor:pointer;height:16px;width:16px}.btn-success{background-color:var(--color-success);border:none;color:#fff}.btn-success:hover:not(:disabled){background-color:#15803d}.btn-success:disabled{background-color:var(--color-gray-300);cursor:not-allowed}.crud-btn-success{color:var(--color-success)}.crud-btn-success:hover{background-color:var(--color-success-light)}.crud-btn-danger{color:var(--color-danger)}.crud-btn-danger:hover:not(.disabled):not(:disabled){background-color:#fee2e2;background-color:var(--color-danger-light,#fee2e2)}.close-step-info{background-color:var(--color-info-light);border:1px solid var(--color-info);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-md)}.close-step-info p{font-weight:500;margin:0 0 var(--spacing-sm) 0}.close-step-info ul{margin:0;padding-left:var(--spacing-lg)}.close-step-info li{margin-bottom:var(--spacing-xs)}.btn-sm{font-size:var(--text-xs);padding:var(--spacing-xs) var(--spacing-sm)}.success-indicator{color:var(--color-success);font-size:var(--text-xs);font-weight:500}.spinning{animation:spin 1s linear infinite}.unsaved-indicator{color:var(--color-warning);font-size:var(--text-xs);font-weight:500}.lvc-empty-state{align-items:center;color:var(--color-gray-500);display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:var(--spacing-xl) var(--spacing-lg);text-align:center}.lvc-empty-state .empty-state-icon{color:var(--color-gray-300);margin-bottom:var(--spacing-md)}.lvc-empty-state h3{color:var(--color-gray-600);font-size:var(--text-lg);margin:0 0 var(--spacing-sm) 0}.lvc-empty-state p{font-size:var(--text-sm);margin:0;max-width:400px}.modal-warning{background-color:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:var(--radius-sm);color:var(--color-warning);font-weight:500;margin-bottom:var(--spacing-md);padding:var(--spacing-md)}.modal-task-list{margin:var(--spacing-md) 0;padding-left:var(--spacing-xl)}.modal-task-list li{color:var(--color-gray-700);margin:var(--spacing-sm) 0}.modal-task-list li strong{color:var(--color-gray-800)}.dev-module{background-color:var(--color-bg-gray);display:flex;flex-direction:column;height:100%}.dev-module-header{align-items:center;background-color:var(--color-bg-white);border-bottom:1px solid var(--color-gray-200);display:flex;flex-shrink:0;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md)}.dev-module-header-left{align-items:center;display:flex;gap:var(--spacing-md)}.dev-module-header-left h1{color:var(--color-primary);font-size:var(--text-lg);margin:0}.dev-module-meta{color:var(--color-gray-500);font-size:var(--text-sm)}.dev-module-header-right{align-items:center;display:flex;gap:var(--spacing-sm)}.header-owner-filter,.user-selector{position:relative}.header-owner-filter .user-dropdown{left:0;right:auto}.user-selector-btn{align-items:center;display:flex;gap:2px}.user-selector-btn.has-filter{background-color:var(--color-primary-light);color:var(--color-primary)}.user-dropdown{background:#fff;border:1px solid var(--color-gray-200);border-radius:6px;box-shadow:0 4px 12px #00000026;min-width:180px;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:100}.user-dropdown-header{background:var(--color-gray-50);border-bottom:1px solid var(--color-gray-200);color:var(--color-gray-500);font-size:11px;font-weight:600;padding:8px 12px;text-transform:uppercase}.user-dropdown-item{align-items:center;background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;padding:10px 12px;text-align:left;transition:background-color .15s ease;width:100%}.user-dropdown-item:hover{background-color:var(--color-gray-50)}.user-dropdown-item.selected{background-color:var(--color-primary-light);color:var(--color-primary)}.user-dropdown-item.selected .user-name{font-weight:600}.user-name{font-size:14px;min-width:80px}.user-stats{display:flex;font-size:11px;font-weight:600;gap:6px;justify-content:flex-end;min-width:70px}.user-stats .stat-not-started{color:var(--color-gray-500)}.user-stats .stat-pending{color:var(--color-warning)}.user-stats .stat-progress{color:var(--color-primary)}.user-stats .stat-validate{color:var(--color-info)}.user-stats .stat-total{color:var(--color-gray-600)}.user-stats .stat-none{color:var(--color-gray-400)}.user-dropdown-item.unassigned-item{border-top:1px solid var(--color-gray-200);color:var(--color-gray-500)}.dev-module-content{display:flex;flex:1 1;overflow:hidden}.dev-list-panel{flex-direction:column;flex-shrink:0;max-width:450px;min-width:280px;width:350px}.dev-list-panel,.dev-list-panel-collapsed{background-color:var(--color-bg-white);border-right:1px solid var(--color-gray-200);display:flex}.dev-list-panel-collapsed{align-items:flex-start;padding-top:var(--spacing-sm);width:32px}.dev-list-panel-header{align-items:center;border-bottom:1px solid var(--color-gray-100);display:flex;flex-shrink:0;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md)}.dev-list-panel-header .panel-title{color:var(--color-gray-600);font-size:var(--text-sm);font-weight:600;letter-spacing:.5px;text-transform:uppercase}.dev-list-scroll{flex:1 1;overflow-y:auto;padding:var(--spacing-xs)}.dev-list-item{align-items:center;background:none;border:1px solid #0000;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:var(--spacing-sm);margin-bottom:2px;padding:var(--spacing-sm) var(--spacing-md);text-align:left;transition:all .15s ease;width:100%}.dev-list-item:hover{background-color:var(--color-gray-50);border-color:var(--color-gray-200)}.dev-list-item.selected{background-color:var(--color-primary-light);border-color:var(--color-primary)}.dev-list-item .item-status{flex-shrink:0}.dev-list-item .item-number{color:var(--color-gray-500);flex-shrink:0;font-weight:600;min-width:20px}.dev-list-item .item-name{color:var(--color-gray-700);flex:1 1;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dev-list-item.status-complete .item-name{color:var(--color-gray-500)}.dev-list-item .item-primary{color:var(--color-gray-700);flex:1 1;font-size:var(--text-sm);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dev-list-item .item-secondary{color:var(--color-gray-500);flex-shrink:0;font-size:var(--text-xs)}.dev-list-item .item-badge{border-radius:10px;flex-shrink:0;font-size:9px;font-weight:600;padding:2px 6px}.dev-list-item .item-badge.badge-pending{background-color:var(--color-gray-200);color:var(--color-gray-600)}.dev-list-item .item-badge.badge-in-progress{background-color:var(--color-warning-light);color:var(--color-warning)}.dev-list-item .item-badge.badge-validate{background-color:var(--color-primary-light);color:var(--color-primary)}.dev-list-item .item-badge.badge-complete{background-color:var(--color-success-light);color:var(--color-success)}.dev-list-type-filters{background-color:var(--color-gray-50);border-bottom:1px solid var(--color-gray-200);display:flex;flex-wrap:wrap;gap:4px;padding:var(--spacing-sm)}.type-filter-btn{background:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);color:var(--color-gray-600);cursor:pointer;font-size:var(--text-xs);font-weight:500;padding:2px 8px;transition:all .15s}.type-filter-btn:hover{background:var(--color-gray-100);border-color:var(--color-gray-400)}.type-filter-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.type-filter-btn.type-core.active{background:#6366f1;border-color:#6366f1}.type-filter-btn.type-feature.active{background:#8b5cf6;border-color:#8b5cf6}.type-filter-btn.type-milestone.active{background:#f59e0b;border-color:#f59e0b}.type-filter-btn.type-infrastructure.active{background:#10b981;border-color:#10b981}.dev-list-status-filters{background-color:var(--color-gray-50);border-bottom:1px solid var(--color-gray-200);display:flex;flex-wrap:wrap;gap:4px;padding:4px var(--spacing-md)}.status-filter-btn{background:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);color:var(--color-gray-600);cursor:pointer;font-size:var(--text-xs);font-weight:500;padding:2px 8px;transition:all .15s}.status-filter-btn:hover{background:var(--color-gray-100);border-color:var(--color-gray-400)}.status-filter-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.reorder-list{display:flex;flex-direction:column}.reorder-row{align-items:center;border-bottom:1px solid var(--color-gray-100);cursor:grab;display:flex;gap:8px;padding:8px 16px;transition:background .1s}.reorder-row:hover{background:var(--color-gray-50)}.reorder-row.dragging{background:var(--color-primary-light);opacity:.4}.reorder-grip{color:var(--color-gray-400);cursor:grab}.reorder-grip:active{cursor:grabbing}.reorder-pos{color:var(--color-gray-500);font-size:var(--text-sm);font-weight:600;min-width:24px;text-align:center}.reorder-type{align-items:center;border-radius:3px;color:#fff;display:flex;font-size:10px;font-weight:600;height:18px;justify-content:center;width:18px}.reorder-type.type-core{background:#6366f1}.reorder-type.type-feature{background:#8b5cf6}.reorder-type.type-milestone{background:#f59e0b}.reorder-type.type-infrastructure{background:#10b981}.reorder-name{flex:1 1;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reorder-owner{border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);font-size:var(--text-sm);padding:2px 4px;width:100px}.dev-list-item .item-type-badge{align-items:center;border-radius:3px;color:#fff;display:flex;flex-shrink:0;font-size:10px;font-weight:700;height:18px;justify-content:center;width:18px}.item-type-badge.type-core{background:#6366f1}.item-type-badge.type-feature{background:#8b5cf6}.item-type-badge.type-milestone{background:#f59e0b}.item-type-badge.type-infrastructure{background:#10b981}.step-type-badge{border-radius:var(--radius-sm);color:#fff;font-size:var(--text-xs);font-weight:600;padding:2px 8px}.step-type-badge.type-core{background:#6366f1}.step-type-badge.type-feature{background:#8b5cf6}.step-type-badge.type-milestone{background:#f59e0b}.step-type-badge.type-infrastructure{background:#10b981}.dev-list-owner-filter{border-bottom:1px solid var(--color-gray-200);padding:var(--spacing-xs) var(--spacing-md);position:relative}.dev-list-owner-filter .user-dropdown{left:var(--spacing-md);right:auto}.dev-list-item .item-owner-badge{align-items:center;background:var(--color-gray-400);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:10px;font-weight:700;height:18px;justify-content:center;width:18px}.step-owner-badge{background:var(--color-gray-200);border-radius:var(--radius-sm);color:var(--color-gray-700);font-size:var(--text-xs);font-weight:600;padding:2px 8px}.form-row-inline{display:flex;gap:var(--spacing-lg)}.form-row-inline .form-field{flex:1 1}.form-row-inline .form-field label{color:var(--color-gray-600);display:block;font-size:var(--text-sm);font-weight:600;margin-bottom:var(--spacing-xs)}.dev-detail-panel{background-color:var(--color-bg-white);display:flex;flex:1 1;flex-direction:column;overflow:hidden}.dev-detail-header{background-color:var(--color-gray-50);border-bottom:1px solid var(--color-gray-200);flex-shrink:0;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg)}.dev-detail-header,.dev-detail-title{align-items:center;display:flex;gap:var(--spacing-md)}.dev-detail-title{flex:1 1;min-width:0}.dev-detail-title h2{color:var(--color-gray-800);font-size:var(--text-lg);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dev-detail-title .step-number-clickable{color:var(--color-gray-500)}.dev-detail-title .step-number-clickable.editable{border-bottom:1px dashed var(--color-gray-400);cursor:pointer}.dev-detail-title .step-number-clickable.editable:hover{border-bottom-color:var(--color-primary);color:var(--color-primary)}.step-number-edit-inline{align-items:center;color:var(--color-gray-500);display:flex;font-size:var(--text-lg);font-weight:600;gap:var(--spacing-xs)}.step-number-edit-inline .step-number-input{width:60px}.dev-detail-actions{flex-shrink:0;gap:var(--spacing-xs)}.dev-circle-btn{align-items:center;background-color:var(--color-gray-100);border:2px solid var(--color-gray-300);border-radius:50%;color:var(--color-gray-600);cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:all .15s ease;width:32px}.dev-circle-btn:hover:not(:disabled){background-color:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.dev-circle-btn:disabled{cursor:not-allowed;opacity:.4}.dev-circle-btn.success{background-color:#22c55e1a;border-color:var(--color-success);color:var(--color-success)}.dev-circle-btn.success:hover:not(:disabled){background-color:var(--color-success);color:#fff}.dev-circle-btn.warning{background-color:#f973161a;border-color:#f97316;color:#f97316}.dev-circle-btn.warning:hover:not(:disabled){background-color:#f97316;color:#fff}.dev-detail-actions{align-items:center;display:flex;gap:var(--spacing-sm)}.set-step-container{position:relative}.set-step-dropdown{background:var(--color-bg-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;margin-top:var(--spacing-xs);max-height:400px;min-width:280px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.set-step-option{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);text-align:left;transition:background-color .15s ease;width:100%}.set-step-option:hover:not(:disabled){background-color:var(--color-primary-light)}.set-step-option:disabled{cursor:default}.set-step-option.current{background-color:var(--color-primary-light);font-weight:600}.set-step-option .step-num{align-items:center;background-color:var(--color-gray-200);border-radius:var(--radius-sm);color:var(--color-gray-700);display:inline-flex;flex-shrink:0;font-size:var(--text-xs);font-weight:600;height:28px;justify-content:center;width:28px}.set-step-option.current .step-num{background-color:var(--color-primary);color:#fff}.set-step-option .step-name{color:var(--color-gray-700);flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dev-detail-body{flex:1 1;overflow-y:auto;padding:var(--spacing-lg)}.dev-detail-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.dev-detail-form .form-row{display:flex;flex-direction:column;gap:var(--spacing-xs)}.dev-detail-form .form-row label{color:var(--color-gray-600);font-size:var(--text-sm);font-weight:500}.dev-detail-form .form-input{border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);padding:var(--spacing-sm);width:100%}.dev-detail-form .form-input:focus{border-color:var(--color-primary);outline:none}.dev-detail-form textarea.form-input{min-height:60px;resize:vertical}.dev-detail-view{display:flex;flex-direction:column;gap:var(--spacing-lg)}.dev-detail-view .detail-section{display:flex;flex-direction:column;gap:var(--spacing-xs)}.dev-detail-view .detail-section label{color:var(--color-gray-600);font-size:var(--text-sm);font-weight:600;letter-spacing:.5px;text-transform:uppercase}.dev-detail-view .detail-notes,.dev-detail-view .detail-section p{color:var(--color-gray-700);line-height:1.6;margin:0}.dev-detail-view .detail-notes{background-color:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-family:inherit;font-size:inherit;padding:var(--spacing-md);white-space:pre-wrap}.dev-detail-empty{flex:1 1;font-style:italic}.text-muted{color:var(--color-gray-400)}.changes-list{color:var(--color-gray-700);margin:0;padding-left:var(--spacing-xl)}.changes-list li{line-height:1.6;margin:var(--spacing-sm) 0}.changes-list-edit{display:flex;flex-direction:column;gap:var(--spacing-sm)}.dev-list-item .item-badge.type-major{background-color:var(--color-primary);color:#fff}.dev-list-item .item-badge.type-minor{background-color:var(--color-gray-200);color:var(--color-gray-600)}.dev-module-content-full{background-color:var(--color-bg-white);flex:1 1;overflow-y:auto;padding:var(--spacing-lg)}.task-log-page .sprint-display{margin:0 auto;max-width:1200px}.nav-admin-page .dev-module-content-full{padding-bottom:60px}.schema-stats-bar{align-items:center;background-color:var(--color-gray-50);border-bottom:1px solid var(--color-gray-200);display:flex;flex-wrap:wrap;gap:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md)}.schema-stats-bar .stat-item{align-items:center;display:inline-flex;font-size:var(--text-sm);font-weight:500;gap:var(--spacing-xs)}.schema-stats-bar .stat-item.muted{color:var(--color-gray-400);font-weight:400}.schema-viewer-page .dev-module-content-full{padding:var(--spacing-md)}.field-manager-page{display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - var(--footer-height));overflow:hidden}.field-manager-page .dev-module-header{z-index:20}.field-manager-page .dev-module-header,.fm-tabs{flex-shrink:0;position:-webkit-sticky;position:sticky;top:0}.fm-tabs{background:var(--color-gray-100);border-bottom:1px solid var(--color-gray-200);display:flex;gap:var(--spacing-xs);padding:0 var(--spacing-md);z-index:15}.fm-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:var(--color-gray-600);cursor:pointer;display:flex;font-family:inherit;font-size:var(--text-sm);font-weight:500;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);transition:all .15s ease}.fm-tab.active,.fm-tab:hover{color:var(--color-primary)}.fm-tab.active{background:var(--color-bg-white);border-bottom-color:var(--color-primary)}.fm-tab-count{background:var(--color-gray-200);border-radius:10px;color:var(--color-gray-600);font-size:var(--text-xs);padding:2px 6px}.fm-tab.active .fm-tab-count{background:var(--color-primary-light);color:var(--color-primary)}.fm-content{display:flex;flex:1 1;overflow:hidden}.fm-content.list-collapsed .fm-list-panel{min-width:48px;width:48px}.fm-content.list-collapsed .fm-list-count,.fm-content.list-collapsed .fm-list-items,.fm-content.list-collapsed .fm-list-search{display:none}.fm-list-panel{background:var(--color-bg-white);border-right:1px solid var(--color-gray-200);display:flex;flex-direction:column;min-width:260px;transition:width .2s ease;width:260px}.fm-list-header{border-bottom:1px solid var(--color-gray-200);padding:var(--spacing-sm)}.fm-list-header,.fm-list-search{align-items:center;display:flex;gap:var(--spacing-xs)}.fm-list-search{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);flex:1 1;padding:var(--spacing-xs) var(--spacing-sm)}.fm-list-search input{background:#0000;border:none;flex:1 1;font-size:var(--text-sm);outline:none}.fm-list-search svg{color:var(--color-gray-400)}.fm-collapse-btn{background:#0000;border:none;border-radius:var(--radius-sm);color:var(--color-gray-500);cursor:pointer;padding:var(--spacing-xs)}.fm-collapse-btn:hover{background:var(--color-gray-100);color:var(--color-primary)}.fm-list-count{border-bottom:1px solid var(--color-gray-100);color:var(--color-gray-500);font-size:var(--text-xs);padding:var(--spacing-xs) var(--spacing-sm)}.fm-list-items{flex:1 1;overflow-y:auto}.fm-list-item{align-items:center;border-bottom:1px solid var(--color-gray-50);cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);transition:background .1s ease}.fm-list-item:hover{background:var(--color-gray-50)}.fm-list-item.selected{background:var(--color-primary-light);color:var(--color-primary);font-weight:500}.fm-list-item svg{color:var(--color-gray-400);flex-shrink:0}.fm-list-item.selected svg{color:var(--color-primary)}.fm-list-item span:first-of-type{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-list-item-count{background:var(--color-gray-100);border-radius:8px;color:var(--color-gray-400);font-size:var(--text-xs);padding:1px 6px}.fm-list-item.selected .fm-list-item-count{background:var(--color-primary);color:#fff}.fm-detail-panel{background:var(--color-bg-page);display:flex;flex:1 1;flex-direction:column;overflow:hidden}.fm-detail-header{align-items:center;background:var(--color-bg-white);border-bottom:1px solid var(--color-gray-200);display:flex;flex-shrink:0;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg)}.fm-detail-header h2{color:var(--color-primary);font-family:var(--font-primary);font-size:var(--text-lg);margin:0}.fm-detail-count{color:var(--color-gray-500);font-size:var(--text-sm)}.fm-no-selection{align-items:center;color:var(--color-gray-400);display:flex;flex:1 1;flex-direction:column;gap:var(--spacing-md);justify-content:center}.fm-no-selection svg{opacity:.5}.fm-fields-grid{flex:1 1;overflow:auto}.fm-fields-table{background:var(--color-bg-white);border:1px solid var(--color-gray-200);border-collapse:initial;border-radius:var(--radius-md);border-spacing:0;font-size:var(--text-sm);width:100%}.fm-fields-table th{background:var(--color-gray-200);border-bottom:2px solid var(--color-gray-300);color:var(--color-gray-600);font-size:var(--text-xs);font-weight:600;padding:var(--spacing-sm) var(--spacing-md);text-align:left;text-transform:uppercase}.fm-fields-table th:first-child{width:160px}.fm-fields-table th:nth-child(2){width:100px}.fm-fields-table th:nth-child(3){width:150px}.fm-fields-table th:nth-child(4){width:70px}.fm-fields-table th:nth-child(5){width:100px}.fm-fields-table th:nth-child(6){width:80px}.fm-fields-table th:nth-child(7){width:60px}.fm-fields-table th.wrap-header{line-height:1.2;white-space:normal}.fm-fields-table thead{position:-webkit-sticky;position:sticky;top:0;z-index:10}.fm-fields-table thead th{background:var(--color-gray-200)}.fm-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.fm-sortable:hover{background:var(--color-gray-200)}.fm-sortable svg{margin-left:4px;opacity:.7;vertical-align:middle}.fm-sortable.sorted{color:var(--color-primary)}.fm-fields-table td{border-bottom:1px solid var(--color-gray-100);padding:var(--spacing-xs) var(--spacing-md);vertical-align:middle}.fm-fields-table tr:hover{background:var(--color-gray-50)}.fm-fields-table tr.edited{background:var(--color-warning-light)}.fm-field-name{align-items:center;display:flex;font-weight:500;gap:var(--spacing-xs)}.fm-field-name .pk-icon{color:var(--color-warning)}.fm-field-name .fk-icon{color:var(--color-primary)}.fm-field-type{color:var(--color-gray-500);font-family:var(--font-mono);font-size:var(--text-xs)}.fm-input{border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);padding:var(--spacing-xs) var(--spacing-sm);width:100%}.fm-input:focus{border-color:var(--color-primary);outline:none}.fm-input-narrow{width:70px}.fm-select{background:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);min-width:120px;padding:var(--spacing-xs) var(--spacing-sm)}.fm-select:focus{border-color:var(--color-primary);outline:none}.fm-select-wide{max-width:80px;width:80px}.fm-select-narrow{text-align:center;width:60px}.fm-na{color:var(--color-gray-300)}.fm-label-config-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;justify-content:center;padding:var(--spacing-xs);transition:all .15s ease}.fm-label-config-btn:hover{background:var(--color-gray-100)}.fm-label-config-btn.inactive{color:var(--color-gray-300)}.fm-label-config-btn.active{color:var(--color-primary)}.fm-label-config-modal{background:var(--color-bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);left:50%;max-width:90vw;padding:var(--spacing-lg);position:fixed;top:50%;transform:translate(-50%,-50%);width:420px;z-index:1001}.fm-label-config-modal h3{align-items:center;display:flex;font-size:var(--text-lg);gap:var(--spacing-sm);margin:0 0 var(--spacing-md) 0}.fm-label-config-modal .form-group{margin-bottom:var(--spacing-md)}.fm-label-config-modal .form-group label{color:var(--color-gray-700);display:block;font-size:var(--text-sm);font-weight:500;margin-bottom:var(--spacing-xs)}.fm-label-config-modal select{border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);padding:var(--spacing-sm);width:100%}.fm-label-config-modal select:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light);outline:none}.fm-label-config-modal .modal-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-lg)}.fm-checkbox-cell{text-align:center}.fm-checkbox{cursor:pointer;height:16px;width:16px}.fm-settings-panel{flex:1 1;overflow:auto;padding:var(--spacing-lg)}.fm-settings-table{background:var(--color-bg-white);border:1px solid var(--color-gray-200);border-collapse:collapse;border-radius:var(--radius-md);font-size:var(--text-sm);max-width:900px;overflow:hidden;width:100%}.fm-settings-table th{background:var(--color-gray-100);border-bottom:1px solid var(--color-gray-200);color:var(--color-gray-600);font-size:var(--text-xs);font-weight:600;padding:var(--spacing-sm) var(--spacing-md);text-align:left;text-transform:uppercase}.fm-settings-table td{border-bottom:1px solid var(--color-gray-100);padding:var(--spacing-sm) var(--spacing-md)}.fm-settings-table tr:hover{background:var(--color-gray-50)}.fm-settings-table tr.edited{background:var(--color-warning-light)}.fm-setting-key{font-family:var(--font-mono);font-weight:500}.fm-setting-type{color:var(--color-gray-500);font-size:var(--text-xs)}.fm-setting-desc{color:var(--color-gray-600);font-size:var(--text-xs)}.home-tab-bar{background:var(--color-gray-50);border-radius:var(--radius-md);padding:4px}.home-tab,.home-tab-bar{display:flex;gap:var(--spacing-xs)}.home-tab{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--color-gray-500);cursor:pointer;font-size:var(--text-sm);font-weight:500;padding:var(--spacing-sm) var(--spacing-lg);transition:all .2s ease}.home-tab:hover{background:var(--color-gray-100);color:var(--color-gray-700)}.home-tab.active{background:var(--color-bg-white);box-shadow:0 1px 3px #0000001a;color:var(--color-primary)}.home-tab-content{min-height:200px}.dashboard-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(6,1fr);padding:var(--spacing-lg)}.dashboard-tile{background-color:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;min-height:220px;overflow:hidden;padding:var(--spacing-lg);position:relative;transition:all .2s ease}.dashboard-tile:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.dashboard-tile .tile-header{align-items:center;border-bottom:1px solid var(--color-gray-100);display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm)}.dashboard-tile .tile-icon{color:var(--color-primary)}.dashboard-tile .tile-title{color:var(--color-gray-700);font-size:var(--text-sm);font-weight:600}.dashboard-tile .tile-content{align-items:center;display:flex;flex:1 1;justify-content:center}.dashboard-tile .tile-legend{border-top:none;display:flex;flex-wrap:wrap;font-size:11px;gap:var(--spacing-xs) var(--spacing-md);justify-content:center;margin-top:0;max-height:0;opacity:0;overflow:hidden;padding-top:0;transition:max-height .3s ease,opacity .3s ease,margin-top .3s ease,padding-top .3s ease;transition-delay:0s}.dashboard-tile:hover .tile-legend{border-top:1px solid var(--color-gray-100);margin-top:var(--spacing-md);max-height:120px;opacity:1;padding-top:var(--spacing-sm);transition-delay:.6s}.dashboard-tile .legend-item{align-items:center;color:var(--color-gray-600);display:flex;gap:var(--spacing-xs)}.dashboard-tile .legend-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.donut-chart{align-items:center;display:flex;justify-content:center;position:relative}.donut-chart.empty{background:var(--color-gray-200)}.donut-chart .donut-center{align-items:center;background-color:var(--color-bg-white);border-radius:50%;color:var(--color-gray-700);display:flex;font-size:var(--text-lg);font-weight:700;justify-content:center;position:absolute}.tile-simple{align-items:center;color:var(--color-gray-500);display:flex;flex-direction:column;gap:var(--spacing-sm);text-align:center}.tile-simple .tile-simple-icon{color:var(--color-gray-300)}.tile-simple span{font-size:var(--text-xs)}.sparkline-container{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-sm)}.sparkline{display:block}.sparkline-empty{color:var(--color-gray-400);font-size:var(--text-sm);font-style:italic}.sparkline-legend{color:var(--color-gray-500);display:flex;font-size:10px;gap:var(--spacing-md)}.sparkline-legend .legend-line{display:inline-block;height:2px;margin-right:4px;vertical-align:middle;width:16px}.sparkline-legend .legend-line.blue{background-color:#3b82f6}.sparkline-legend .legend-line.orange{background-color:#f97316}.sparkline-legend .legend-line.dashed{background:repeating-linear-gradient(90deg,#f97316,#f97316 3px,#0000 0,#0000 5px)}.badge-display{gap:var(--spacing-lg);justify-content:center}.badge-display,.stat-badge{align-items:center;display:flex}.stat-badge{background-color:var(--color-gray-50);border:2px solid;border-radius:var(--radius-md);flex-direction:column;gap:var(--spacing-xs);min-width:80px;padding:var(--spacing-md)}.stat-badge svg{color:var(--color-gray-500)}.stat-badge .badge-value{color:var(--color-gray-800);font-size:var(--text-2xl);font-weight:700;line-height:1}.stat-badge .badge-label{color:var(--color-gray-500);font-size:10px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.dashboard-error,.dashboard-loading{color:var(--color-gray-500);padding:var(--spacing-xl);text-align:center}.dashboard-error button{margin-top:var(--spacing-md)}.dashboard-tile.clickable{cursor:pointer}.dashboard-tile:not(.clickable){cursor:default}.dashboard-tile:not(.clickable):hover{box-shadow:none;transform:none}.stat-card{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:80px;padding:var(--spacing-sm)}.stat-icon{opacity:.8}.stat-value{color:var(--color-gray-800);font-size:var(--text-2xl);font-weight:700;line-height:1}.stat-label{color:var(--color-gray-500);font-size:10px;letter-spacing:.3px;text-align:center;text-transform:uppercase}.tile-stat-row{align-items:center;display:flex;gap:var(--spacing-sm);justify-content:space-around;width:100%}.horizontal-bar-chart{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%}.bar-row{grid-gap:var(--spacing-sm);align-items:center;display:grid;gap:var(--spacing-sm);grid-template-columns:80px 1fr 40px}.bar-label{color:var(--color-gray-600);font-size:var(--text-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{background-color:var(--color-gray-100);height:16px;overflow:hidden}.bar-fill,.bar-track{border-radius:var(--radius-sm)}.bar-fill{background-color:var(--color-primary);height:100%;min-width:4px;transition:width .3s ease}.bar-value{color:var(--color-gray-700);font-size:var(--text-sm);font-weight:600;text-align:right}.bar-more{font-size:var(--text-xs);padding-top:var(--spacing-xs)}.bar-chart-empty,.bar-more{color:var(--color-gray-400);text-align:center}.bar-chart-empty{font-style:italic;padding:var(--spacing-md)}.ip-address-grid{grid-gap:var(--spacing-md);align-items:start;display:grid;gap:var(--spacing-md);grid-template-columns:repeat(3,1fr) auto;width:100%}.ip-section{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-sm)}.ip-section h4{color:var(--color-gray-600);font-size:var(--text-xs);font-weight:600;margin:0;text-transform:uppercase}.ip-legend{display:flex;flex-direction:column;font-size:10px;gap:2px;max-height:0;opacity:0;overflow:hidden;transition:max-height .3s ease,opacity .3s ease;transition-delay:0s}.dashboard-tile:hover .ip-legend{max-height:150px;opacity:1;transition-delay:.6s}.ip-legend .legend-item{align-items:center;color:var(--color-gray-600);display:flex;gap:var(--spacing-xs)}.ip-legend .legend-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.ip-total{align-items:center;background-color:var(--color-gray-50);border-radius:var(--radius-md);display:flex;flex-direction:column;justify-content:center;min-width:80px;padding:var(--spacing-md)}.ip-total-value{color:var(--color-gray-800);font-size:var(--text-3xl);font-weight:700;line-height:1}.ip-total-label{color:var(--color-gray-500);font-size:9px;margin-top:var(--spacing-xs);text-align:center;text-transform:uppercase}.network-summary-bar{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);justify-content:center}.summary-stat{align-items:center;display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md)}.summary-stat svg{color:var(--color-gray-500)}.summary-value{color:var(--color-gray-800);font-size:var(--text-2xl);font-weight:700}.summary-label{color:var(--color-gray-500);font-size:var(--text-sm)}.summary-bar-tile{min-height:auto!important}.summary-bar-tile .tile-content{justify-content:center}.placeholder-tile{background-color:var(--color-gray-50)!important;border-color:var(--color-gray-300)!important;border-style:dashed!important}.network-section-content{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-md)}.network-stats{display:flex;gap:var(--spacing-xl);justify-content:center;width:100%}.network-stat{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-xs)}.network-stat-value{color:var(--color-gray-800);font-size:var(--text-3xl);font-weight:700;line-height:1}.network-stat-label{color:var(--color-gray-500);font-size:10px;text-transform:uppercase}.network-chart-area{padding:var(--spacing-sm) 0}.network-legend{border-top:none;display:flex;flex-direction:column;gap:4px;max-height:0;opacity:0;overflow:hidden;padding-top:0;transition:max-height .3s ease,opacity .3s ease,padding-top .3s ease;transition-delay:0s;width:100%}.dashboard-tile:hover .network-legend{border-top:1px solid var(--color-gray-100);max-height:200px;opacity:1;padding-top:var(--spacing-sm);transition-delay:.6s}.network-legend .legend-item{align-items:center;display:flex;font-size:var(--text-sm);gap:var(--spacing-sm)}.network-legend .legend-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.network-legend .legend-key{color:var(--color-gray-600);flex:1 1}.network-legend .legend-count{color:var(--color-gray-800);font-weight:600}.recharts-custom-tooltip{align-items:center;background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);box-shadow:0 2px 8px #0000001f;display:flex;font-size:var(--text-sm);gap:6px;padding:6px 10px}.recharts-custom-tooltip .legend-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.recharts-donut-label{fill:var(--color-gray-700);font-size:16px;font-weight:700}.recharts-donut-label-sm{fill:var(--color-gray-700);font-size:12px;font-weight:700}.placeholder-label{color:var(--color-gray-400);font-size:var(--text-sm);font-style:italic}.header-divider{background-color:var(--color-gray-300);height:24px;margin:0 var(--spacing-xs);width:1px}.nav-tree-row.selected{background-color:var(--color-primary-light);border-color:var(--color-primary)}.nav-tree-row:hover:not(.selected){background-color:var(--color-gray-50);cursor:pointer}.task-list-panel{max-width:450px;width:320px}.task-list-panel .dev-list-panel-header{justify-content:flex-end;min-height:auto;padding:var(--spacing-xs) var(--spacing-sm)}.task-status-tabs{background-color:var(--color-gray-50);border-bottom:1px solid var(--color-gray-200);display:flex;flex-wrap:wrap;gap:4px;padding:var(--spacing-sm)}.status-tab{align-items:center;background-color:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);cursor:pointer;display:flex;font-size:11px;font-weight:600;gap:4px;letter-spacing:.3px;padding:6px 10px;text-transform:uppercase;transition:all .15s ease}.status-tab:hover{background-color:var(--color-gray-100)}.status-tab.active{border-width:2px}.status-tab .tab-count{background-color:var(--color-gray-200);border-radius:8px;font-size:10px;padding:1px 5px}.status-tab.tab-not-started.active{background-color:#f9fafb;border-color:#6b7280;color:#374151}.status-tab.tab-not-started .tab-count{background-color:#e5e7eb;color:#374151}.status-tab.tab-pending.active{background-color:#fefce8;border-color:#eab308;color:#a16207}.status-tab.tab-pending .tab-count{background-color:#fef08a;color:#a16207}.status-tab.tab-in-progress.active{background-color:#fff7ed;border-color:#f97316;color:#c2410c}.status-tab.tab-in-progress .tab-count{background-color:#fed7aa;color:#c2410c}.status-tab.tab-validate.active{background-color:#eff6ff;border-color:#3b82f6;color:#1d4ed8}.status-tab.tab-validate .tab-count{background-color:#bfdbfe;color:#1d4ed8}.status-tab.tab-complete.active{background-color:#f0fdf4;border-color:#22c55e;color:#15803d}.status-tab.tab-complete .tab-count{background-color:#bbf7d0;color:#15803d}.status-tab.tab-blocker.active{background-color:#fef2f2;border-color:#ef4444;color:#b91c1c}.status-tab.tab-blocker .tab-count{background-color:#fecaca;color:#b91c1c}.task-list-item-content{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.task-list-item-content .item-primary{color:var(--color-gray-800);font-size:var(--text-sm);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-list-item-content .item-secondary{align-items:center;color:var(--color-gray-500);display:flex;font-size:11px;gap:4px}.task-list-item-content .item-secondary svg{flex-shrink:0}.task-list-empty{color:var(--color-gray-400);font-size:var(--text-sm);padding:var(--spacing-lg);text-align:center}.archive-section{border-top:1px solid var(--color-gray-200);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm)}.archive-header{align-items:center;color:var(--color-gray-500);display:flex;font-size:var(--text-xs);font-weight:600;gap:var(--spacing-xs);letter-spacing:.5px;padding:var(--spacing-xs) var(--spacing-sm);text-transform:uppercase}.archive-list{max-height:200px;overflow-y:auto}.archive-empty,.archive-loading{color:var(--color-gray-400);font-size:var(--text-sm);padding:var(--spacing-md);text-align:center}.archived-item{background-color:var(--color-gray-50);opacity:.7}.archived-item:hover{opacity:1}.task-log-page .crud-btn.active{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff}.blocker-item{background-color:#fef2f2;border-color:#fecaca}.blocker-item .blocker-icon{color:#ef4444;flex-shrink:0}.task-detail-meta{background-color:var(--color-gray-50);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-md);padding:var(--spacing-md)}.task-detail-meta .meta-item{display:flex;flex-direction:column;gap:2px}.task-detail-meta .meta-item label{color:var(--color-gray-500);font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.task-detail-meta .meta-item span{color:var(--color-gray-700);font-size:var(--text-sm)}.task-detail-section{margin-bottom:var(--spacing-md)}.task-detail-section>label{color:var(--color-gray-500);display:block;font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:var(--spacing-xs);text-transform:uppercase}.task-details-content{background-color:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--text-sm);line-height:1.6;padding:var(--spacing-md)}.task-details-content p{margin:0 0 var(--spacing-xs) 0}.task-details-content p:last-child{margin-bottom:0}.task-details-content .no-details{color:var(--color-gray-400);font-style:italic}.claude-summary-section .claude-summary-content{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:var(--radius-sm);color:#166534;font-size:var(--text-sm);line-height:1.6;padding:var(--spacing-md)}.task-status-badge{border-radius:var(--radius-sm);font-size:10px;font-weight:600;letter-spacing:.5px;padding:3px 8px;text-transform:uppercase}.task-status-badge.status-not-started{background-color:#e5e7eb;color:#374151}.task-status-badge.status-pending{background-color:#fef08a;color:#a16207}.task-status-badge.status-in-progress{background-color:#fed7aa;color:#c2410c}.task-status-badge.status-validate{background-color:#bfdbfe;color:#1d4ed8}.task-status-badge.status-complete{background-color:#bbf7d0;color:#15803d}.crud-btn.crud-btn-success{color:#22c55e}.crud-btn.crud-btn-success:hover:not(:disabled){background-color:#f0fdf4;border-color:#22c55e}.crud-btn.crud-btn-warning{color:#f97316}.crud-btn.crud-btn-warning:hover:not(:disabled){background-color:#fff7ed;border-color:#f97316}.dev-detail-empty{align-items:center;color:var(--color-gray-400);display:flex;flex-direction:column;gap:var(--spacing-sm);height:100%;justify-content:center}.dev-detail-empty svg{opacity:.5}.dev-detail-empty p{font-size:var(--text-sm);margin:0}.dev-detail-empty .hint{color:var(--color-gray-300);font-size:12px}.icon-browser-page{display:flex;flex-direction:column;height:100%;overflow:hidden}.icon-browser-page .dev-module-header{align-items:center;background:var(--color-gray-50);border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg)}.icon-browser-page .dev-module-title h1{font-size:1.25rem;margin:0}.icon-browser-page .dev-module-subtitle{color:var(--color-gray-500);font-size:12px}.icon-search-container{align-items:center;background:#fff;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);display:flex;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm)}.icon-search-container:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.icon-search-icon{color:var(--color-gray-400)}.icon-search-input{background:#0000;border:none;font-size:14px;outline:none;width:200px}.icon-browser-page .dev-module-content{flex:1 1;overflow-y:auto;padding:var(--spacing-lg)}.icon-grid{grid-gap:var(--spacing-md);align-content:start;display:grid;gap:var(--spacing-md);grid-template-columns:repeat(6,1fr)}.icon-card{align-items:center;background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md);position:relative;transition:all .15s ease}.icon-card:hover{background:var(--color-primary-light);border-color:var(--color-primary)}.icon-card.copied{background:var(--color-success-light);border-color:var(--color-success)}.icon-preview{align-items:center;color:var(--color-gray-700);display:flex;height:48px;justify-content:center;width:48px}.icon-card:hover .icon-preview{color:var(--color-primary)}.icon-card.copied .icon-preview{color:var(--color-success)}.icon-name{color:var(--color-gray-600);font-family:var(--font-mono);font-size:11px;line-height:1.2;text-align:center;word-break:break-all}.icon-copy-indicator{color:var(--color-gray-400);opacity:0;position:absolute;right:var(--spacing-xs);top:var(--spacing-xs);transition:opacity .15s ease}.icon-card:hover .icon-copy-indicator{opacity:1}.icon-card.copied .icon-copy-indicator{color:var(--color-success);opacity:1}.import-template-page .dev-module-content{flex:1 1;overflow:auto;padding:var(--spacing-lg)}.import-steps-layout{display:flex;gap:var(--spacing-lg);max-width:800px}.import-step-panel{background:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);display:flex;flex:1 1;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-lg)}.import-step-panel.future{opacity:.5}.import-step-header{align-items:center;display:flex;gap:var(--spacing-md)}.import-step-number{align-items:center;background:var(--color-primary);border-radius:50%;color:var(--color-bg-white);display:flex;flex-shrink:0;font-family:var(--font-primary);font-size:var(--text-base);font-weight:600;height:28px;justify-content:center;width:28px}.import-step-header h3{color:var(--color-primary);font-family:var(--font-primary);font-size:var(--text-lg);margin:0}.import-step-desc{color:var(--color-text-secondary);font-family:inherit;font-size:var(--text-sm);margin:0}.import-generate-btn{align-items:center;background:var(--color-primary);border:none;border-radius:var(--radius-md);color:var(--color-bg-white);cursor:pointer;display:inline-flex;font-family:var(--font-primary);font-size:var(--text-sm);font-weight:500;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);transition:background .15s;width:-webkit-fit-content;width:fit-content}.import-generate-btn:hover:not(:disabled){background:var(--color-primary-dark)}.import-generate-btn:disabled{cursor:not-allowed;opacity:.5}.import-progress{display:flex;flex-direction:column;gap:var(--spacing-xs)}.import-progress-bar{background:var(--color-gray-200);border-radius:3px;height:6px;overflow:hidden}.import-progress-fill{background:var(--color-primary);border-radius:3px;height:100%;transition:width .3s ease}.import-progress-text{font-size:var(--text-xs)}.import-dropzone,.import-progress-text{color:var(--color-text-secondary);font-family:inherit}.import-dropzone{align-items:center;border:2px dashed var(--color-gray-300);border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;font-size:var(--text-sm);gap:var(--spacing-sm);justify-content:center;padding:var(--spacing-xl);transition:all .15s}.import-dropzone:hover{background:var(--color-gray-50)}.import-dropzone.drag-over,.import-dropzone:hover{border-color:var(--color-primary);color:var(--color-primary)}.import-dropzone.drag-over{background:#1a55680d}.import-dropzone.validating{border-color:var(--color-gray-300);color:var(--color-text-secondary);cursor:wait}.import-val-result{border:1px solid;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md)}.import-val-result.pass{background:#f0fdf4;border-color:#86efac}.import-val-result.fail{background:#fef2f2;border-color:#fca5a5}.import-val-result.warn{background:#fffbeb;border-color:#fcd34d}.import-val-summary{align-items:center;display:flex;font-family:var(--font-primary);font-size:var(--text-base);font-weight:600;gap:var(--spacing-sm)}.import-val-result.pass .import-val-summary{color:#16a34a}.import-val-result.fail .import-val-summary{color:#dc2626}.import-val-result.warn .import-val-summary{color:#d97706}.import-val-section{display:flex;flex-direction:column;gap:2px}.import-val-section-label{font-family:var(--font-primary);font-size:var(--text-xs);font-weight:700;letter-spacing:.05em;padding:var(--spacing-xs) var(--spacing-sm);text-transform:uppercase}.import-val-section-label.error{color:#dc2626}.import-val-section-label.warning{color:#d97706}.import-val-tabs{display:flex;flex-direction:column;gap:2px}.import-val-tab-row{align-items:center;display:flex;font-size:var(--text-sm);gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm)}.import-val-tab-row.error{color:#b91c1c}.import-val-tab-row.warning{color:#92400e}.import-val-tab-name{flex:1 1}.import-val-tab-count{font-family:var(--font-primary);font-weight:600}.import-val-tab-detail{display:flex;gap:var(--spacing-xs)}.import-val-badge{border-radius:8px;font-family:var(--font-primary);font-size:var(--text-xs);font-weight:600;padding:1px 6px}.import-val-badge.skip{background:#f3f4f6;color:#6b7280}.import-val-badge.update{background:#fff3e0;color:#e65100}.import-val-badge.insert{background:#e8f5e9;color:#2e7d32}.import-val-section-label.records{border-left-color:#1a5568;color:#1a5568}.import-val-tab-row.records{color:#1a5568}.import-val-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.import-execute-btn{align-items:center;background:#1a5568;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:8px 20px;transition:background .15s}.import-execute-btn:hover:not(:disabled){background:#15434f}.import-execute-btn:disabled{cursor:not-allowed;opacity:.6}.import-execution-progress{margin:12px 0}.import-tab-status{gap:2px;margin-top:12px}.import-tab-result-group,.import-tab-status{display:flex;flex-direction:column}.import-tab-row{align-items:center;background:#f8f9fa;border-radius:4px;display:flex;font-size:13px;gap:8px;padding:6px 10px}.import-tab-row.has-errors{background:#fff5f5}.import-tab-row .import-tab-icon{align-items:center;display:flex;flex-shrink:0}.import-tab-row .import-tab-name{flex:1 1;font-weight:500;min-width:140px}.import-tab-badges{display:flex;flex-wrap:wrap;gap:6px}.badge-insert{background:#e8f5e9;color:#2e7d32}.badge-insert,.badge-update{border-radius:10px;display:inline-block;font-size:11px;font-weight:600;padding:1px 8px}.badge-update{background:#fff3e0;color:#e65100}.badge-skip{background:#f5f5f5;color:#757575}.badge-fail,.badge-skip{border-radius:10px;display:inline-block;font-size:11px;font-weight:600;padding:1px 8px}.badge-fail{background:#ffebee;color:#c62828}.import-tab-expand{align-items:center;color:#999;display:flex;flex-shrink:0}.icon-success{color:#2e7d32}.icon-fail{color:#c62828}.icon-warning{color:#e65100}.icon-skip{color:#bdbdbd}.import-error-details{background:#fff8f8;border-left:3px solid #c62828;border-radius:0 4px 4px 0;font-size:12px;margin:0 0 4px 32px;padding:6px 10px}.import-error-row{border-bottom:1px solid #fce4ec;display:flex;gap:12px;padding:3px 0}.import-error-row:last-child{border-bottom:none}.import-error-row .error-op{color:#c62828;font-weight:600;min-width:50px;text-transform:uppercase}.import-error-row .error-key{color:#555;min-width:120px}.import-error-row .error-msg{color:#c62828;flex:1 1}.import-final-result{background:#f1f8e9;border:2px solid #2e7d32;border-radius:6px;margin-top:12px;padding:12px 16px}.import-final-result.has-errors{background:#fff8e1;border-color:#e65100}.import-final-summary{align-items:center;color:#333;display:flex;font-size:15px;font-weight:600;gap:8px}.import-final-counts{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.sync-dashboard-page .dev-module-content{flex:1 1;overflow:auto;padding:var(--spacing-lg)}.sync-steps-layout{align-items:flex-start;display:flex;gap:var(--spacing-lg);width:100%}.sync-steps-layout .import-step-panel{flex:1 1;min-width:0}.sync-db-selector{display:flex;gap:6px}.sync-db-btn{align-items:center;background:var(--color-bg-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:2px;padding:10px 8px;transition:all .15s}.sync-db-btn:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-primary)}.sync-db-btn.active{background:#1a55680f;border-color:var(--color-primary)}.sync-db-btn:disabled{cursor:not-allowed;opacity:.5}.sync-db-label{color:var(--color-text-primary);font-family:var(--font-primary);font-size:var(--text-base);font-weight:700}.sync-db-btn.active .sync-db-label{color:var(--color-primary)}.sync-db-count{color:var(--color-text-secondary);font-size:var(--text-xs)}.sync-direction-list{display:flex;flex-direction:column;gap:4px}.sync-direction-item{align-items:flex-start;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:8px;padding:8px 10px;transition:all .15s}.sync-direction-item.selected,.sync-direction-item:hover:not(.disabled){border-color:var(--color-primary)}.sync-direction-item.selected{background:#1a55680a}.sync-direction-item.disabled{cursor:not-allowed;opacity:.45}.sync-direction-item input[type=radio]{accent-color:var(--color-primary);margin-top:2px}.sync-direction-info{display:flex;flex-direction:column;gap:1px}.sync-direction-label{align-items:center;color:var(--color-text-primary);display:flex;font-size:var(--text-sm);font-weight:600;gap:6px}.sync-direction-desc,.sync-lock-icon{color:var(--color-text-secondary)}.sync-direction-desc{font-size:11px;line-height:1.3}.sync-history-section{border-top:1px solid var(--color-gray-200);padding-top:var(--spacing-sm)}.sync-history-toggle{align-items:center;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;display:flex;font-family:inherit;font-size:var(--text-xs);gap:6px;padding:2px 0}.sync-history-toggle:hover{color:var(--color-primary)}.sync-history-table-wrap{margin-top:6px;overflow-x:auto}.sync-history-table{border-collapse:collapse;font-size:11px;width:100%}.sync-history-table th{border-bottom:1px solid var(--color-gray-200);color:var(--color-text-secondary);font-weight:600;padding:3px 6px;text-align:left;white-space:nowrap}.sync-history-table td{border-bottom:1px solid var(--color-gray-100);padding:3px 6px;white-space:nowrap}.sync-history-table .center{text-align:center}.sync-history-table .right{text-align:right}.sync-no-history{color:var(--color-text-secondary);font-size:var(--text-xs);font-style:italic;margin:6px 0 0}.sync-status-badge{border-radius:10px;display:inline-block;font-family:var(--font-primary);font-size:10px;font-weight:700;padding:1px 8px;text-transform:uppercase}.sync-status-badge.success{background:#e8f5e9;color:#2e7d32}.sync-status-badge.failed{background:#ffebee;color:#c62828}.sync-status-badge.running{background:#e3f2fd;color:#1565c0}.sync-status-badge.dryrun{background:#f3e5f5;color:#7b1fa2}.sync-tier-badge{border-radius:9px;font-size:10px;height:18px;width:26px}.sync-tier-badge,.sync-tier-badge-sm{align-items:center;display:inline-flex;flex-shrink:0;font-family:var(--font-primary);font-weight:700;justify-content:center}.sync-tier-badge-sm{border-radius:7px;font-size:9px;height:15px;margin-right:4px;width:22px}.sync-tier-badge-sm.tier-0,.sync-tier-badge.tier-0{background:#e8eaf6;color:#3949ab}.sync-tier-badge-sm.tier-1,.sync-tier-badge.tier-1{background:#e0f2f1;color:#00796b}.sync-tier-badge-sm.tier-2,.sync-tier-badge.tier-2{background:#fff3e0;color:#e65100}.sync-tier-badge-sm.tier-3,.sync-tier-badge.tier-3{background:#fce4ec;color:#c62828}.sync-tier-badge-sm.tier-4,.sync-tier-badge.tier-4{background:#f3e5f5;color:#7b1fa2}.sync-transform-badge{align-items:center;border-radius:8px;display:inline-flex;flex-shrink:0;font-family:var(--font-primary);font-size:10px;font-weight:600;gap:3px;padding:1px 6px}.sync-transform-badge.straight{background:#f0f4f8;color:#607d8b}.sync-transform-badge.rename{background:#fff3e0;color:#e65100}.sync-transform-badge.explicit{background:#e8eaf6;color:#3949ab}.sync-transform-badge.merge{background:#fce4ec;color:#c62828}.sync-transform-badge.filter{background:#e0f2f1;color:#00796b}.sync-tier-summary{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:3px;padding:8px 10px}.sync-tier-row{align-items:center;display:flex;font-size:var(--text-xs);gap:8px}.sync-tier-row.all-excluded{opacity:.4}.sync-tier-na{color:var(--color-text-secondary);font-size:10px;font-weight:400;opacity:.7}.sync-tier-label{color:var(--color-text-primary);flex:1 1}.sync-tier-count{color:var(--color-text-secondary);font-family:var(--font-primary);font-weight:600}.sync-custom-note{border-top:1px solid var(--color-gray-200);color:var(--color-text-secondary);font-size:10px;font-style:italic;margin-top:2px;padding-top:4px}.sync-action-row{align-items:center;display:flex;gap:12px;justify-content:space-between}.sync-dryrun-toggle{align-items:center;color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:var(--text-xs);gap:6px;-webkit-user-select:none;user-select:none}.sync-dryrun-toggle input{accent-color:var(--color-primary)}.sync-running-status{display:flex;flex-direction:column;gap:10px}.sync-running-header{align-items:center;color:var(--color-primary);display:flex;font-size:var(--text-base);font-weight:600;gap:8px}.sync-current-step{background:var(--color-gray-50);border-radius:var(--radius-sm);padding:4px 8px}.sync-current-step,.sync-running-stats{color:var(--color-text-secondary);font-size:var(--text-xs)}.sync-running-stats{display:flex;gap:16px}.sync-running-stats span{align-items:center;display:flex;gap:4px}.sync-complete-brief{align-items:center;border:1px solid;border-radius:var(--radius-md);display:flex;gap:10px;padding:12px}.sync-complete-brief.success{background:#f0fdf4;border-color:#86efac}.sync-complete-brief.failed{background:#fef2f2;border-color:#fca5a5}.sync-complete-label{font-size:var(--text-sm);font-weight:600}.sync-complete-stats{color:var(--color-text-secondary);font-size:var(--text-xs)}.sync-val-result{border:1px solid;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:6px;padding:var(--spacing-md)}.sync-val-result.success{background:#f0fdf4;border-color:#86efac}.sync-val-result.failed{background:#fef2f2;border-color:#fca5a5}.sync-val-summary{align-items:center;display:flex;font-size:var(--text-sm);font-weight:600;gap:8px}.sync-val-result.success .sync-val-summary{color:#16a34a}.sync-val-result.failed .sync-val-summary{color:#dc2626}.sync-val-error{align-items:flex-start;color:#991b1b;display:flex;font-size:var(--text-xs);gap:6px;line-height:1.4}.sync-val-tiers{display:flex;flex-direction:column;gap:2px}.sync-val-tier-group{border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);overflow:hidden}.sync-val-tier-header{align-items:center;background:var(--color-gray-50);cursor:pointer;display:flex;font-size:var(--text-xs);gap:8px;padding:6px 10px;-webkit-user-select:none;user-select:none}.sync-val-tier-header:hover{background:var(--color-gray-100)}.sync-val-tier-label{color:var(--color-text-primary);flex:1 1;font-weight:600}.sync-val-tier-count{color:var(--color-text-secondary);font-family:var(--font-primary)}.sync-val-tier-status{align-items:center;display:flex}.sync-val-tier-tables{display:flex;flex-direction:column;gap:1px;padding:2px 0}.sync-val-table-row{align-items:center;display:flex;font-size:11px;gap:6px;padding:3px 10px 3px 20px}.sync-val-table-row:hover{background:var(--color-gray-50)}.sync-val-table-icon{align-items:center;display:flex;flex-shrink:0;width:16px}.sync-val-table-name{color:var(--color-text-primary);flex:1 1;font-weight:500}.sync-val-table-rows{color:var(--color-text-secondary);font-family:var(--font-primary);font-size:10px;min-width:60px;text-align:right}.sync-val-full-results{border-top:1px solid var(--color-gray-200);padding-top:var(--spacing-sm)}.sync-val-transforms{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:4px;padding:8px 10px}.sync-val-section-label{color:var(--color-text-secondary);font-size:10px;font-weight:700;letter-spacing:.05em;margin-bottom:2px;text-transform:uppercase}.sync-val-transform-row{align-items:center;display:flex;font-size:11px;gap:8px}.sync-val-transform-table{color:var(--color-text-primary);font-weight:600;min-width:100px}.sync-val-transform-desc{color:var(--color-text-secondary);flex:1 1}.sync-acknowledge-btn{align-items:center;align-self:flex-end;background:var(--color-primary);border:none;border-radius:var(--radius-md);color:var(--color-bg-white);cursor:pointer;display:inline-flex;font-family:var(--font-primary);font-size:var(--text-sm);font-weight:600;gap:6px;padding:8px 20px;transition:background .15s;width:-webkit-fit-content;width:fit-content}.sync-acknowledge-btn:hover{background:var(--color-primary-dark)}.sync-val-no-source{background:#f8f9fa;border:1px solid var(--color-gray-200);border-left:3px solid #9ca3af;border-radius:var(--radius-sm);padding:8px 12px}.sync-val-no-source-header{align-items:center;color:#6b7280;display:flex;font-size:var(--text-xs);font-weight:700;gap:6px;margin-bottom:4px}.sync-val-no-source-list{display:flex;flex-direction:column;gap:2px;padding-left:20px}.sync-val-no-source-item{align-items:center;display:flex;font-size:11px;gap:8px}.sync-val-no-source-name{color:#6b7280;font-weight:600;min-width:110px}.sync-val-no-source-reason{color:#9ca3af;font-style:italic}.sync-pending-ack{align-items:flex-start;background:#fffbeb;border:1px solid #fcd34d;border-radius:var(--radius-sm);color:#92400e;display:flex;font-size:var(--text-xs);gap:8px;line-height:1.4;padding:8px 12px}.sync-ack-inline{background:none;border:none;color:#d97706;cursor:pointer;font-size:inherit;font-weight:600;padding:0;text-decoration:underline}.sync-ack-inline:hover{color:#92400e}.sync-val-table-row.excluded{opacity:.4}.sync-transform-badge.na{background:#f3f4f6;color:#9ca3af}.icon-na{color:#d1d5db}.power-query-page .dev-module-content{flex:1 1;overflow:auto;padding:var(--spacing-lg)}.power-query-views{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-md)}.power-query-views strong{color:var(--color-text-primary);display:block;font-size:var(--text-sm);margin-bottom:var(--spacing-sm)}.power-query-views ul{list-style-type:disc;margin:0;padding-left:var(--spacing-lg)}.power-query-views li{color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.5;margin-bottom:var(--spacing-xs)}.power-query-views code{background:var(--color-gray-100);border-radius:var(--radius-xs);color:var(--color-primary);font-family:var(--font-mono);font-size:12px;padding:2px 6px}.lookup-values-page{display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - var(--footer-height));overflow:hidden}.lookup-values-page .dev-module-header{flex-shrink:0;position:-webkit-sticky;position:sticky;top:0;z-index:20}.lookup-values-page .dev-module-content{flex:1 1;min-height:0;overflow:hidden}.lookup-layout{display:flex;flex:1 1;overflow:hidden}.lookup-category-panel{background:var(--color-bg-white);border-right:1px solid var(--color-gray-200);display:flex;flex-direction:column;min-width:260px;transition:width .2s ease;width:260px}.lookup-category-header{border-bottom:1px solid var(--color-gray-200);flex-shrink:0;padding:var(--spacing-sm)}.lookup-category-header,.lookup-search-box{align-items:center;display:flex;gap:var(--spacing-xs)}.lookup-search-box{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);flex:1 1;padding:var(--spacing-xs) var(--spacing-sm)}.lookup-search-icon{color:var(--color-gray-400);flex-shrink:0}.lookup-search-input{background:#0000;border:none;flex:1 1;font-size:var(--text-sm);outline:none}.lookup-category-list{flex:1 1;overflow-y:auto}.lookup-category-item{align-items:center;background:none;border:none;border-bottom:1px solid var(--color-gray-50);color:var(--color-gray-700);cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);text-align:left;transition:background .1s ease;width:100%}.lookup-category-item:hover{background:var(--color-gray-50)}.lookup-category-item.active{background:var(--color-primary-light);color:var(--color-primary);font-weight:500}.lookup-category-name{flex:1 1;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.lookup-add-category{background:var(--color-gray-50);border-top:1px solid var(--color-gray-200);display:flex;flex-shrink:0;gap:var(--spacing-xs);padding:var(--spacing-sm)}.lookup-add-input{border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);flex:1 1;font-family:inherit;font-size:var(--text-sm);outline:none;padding:var(--spacing-xs) var(--spacing-sm)}.lookup-add-input:focus{border-color:var(--color-primary)}.lookup-add-btn{align-items:center;background:var(--color-primary);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;font-size:var(--text-xs);gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);white-space:nowrap}.lookup-add-btn:disabled{cursor:not-allowed;opacity:.4}.lookup-add-btn:hover:not(:disabled){background:var(--color-primary-dark)}.lookup-values-panel{background:var(--color-bg-page);display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.lookup-values-header{align-items:center;background:var(--color-bg-white);border-bottom:1px solid var(--color-gray-200);display:flex;flex-shrink:0;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg)}.lookup-values-header h3{color:var(--color-primary);font-family:var(--font-primary);font-size:var(--text-lg);margin:0}.lookup-values-count{color:var(--color-gray-500);font-size:var(--text-sm)}.lookup-values-scroll{flex:1 1;min-height:0;overflow:auto}.lookup-values-table{background:var(--color-bg-white);border:1px solid var(--color-gray-200);border-collapse:initial;border-radius:var(--radius-md);border-spacing:0;font-size:var(--text-sm);width:100%}.lookup-values-table thead{position:-webkit-sticky;position:sticky;top:0;z-index:10}.lookup-values-table th,.lookup-values-table thead th{background:var(--color-gray-200)}.lookup-values-table th{border-bottom:1px solid var(--color-gray-200);color:var(--color-gray-600);font-size:var(--text-xs);font-weight:600;padding:var(--spacing-sm) var(--spacing-md);text-align:left;text-transform:uppercase}.lookup-values-table td{border-bottom:1px solid var(--color-gray-100);padding:var(--spacing-xs) var(--spacing-md);vertical-align:middle}.lookup-values-table tr:hover{background:var(--color-gray-50)}.lookup-values-table tr.inactive{opacity:.5}.lookup-order-input{border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);padding:var(--spacing-xs) var(--spacing-sm);text-align:center;width:70px}.lookup-order-input:focus{border-color:var(--color-primary);outline:none}.lookup-value-input{background:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);padding:var(--spacing-xs) var(--spacing-sm);width:100%}.lookup-value-input:focus{border-color:var(--color-primary);outline:none}.lookup-toggle{align-items:center;background:none;border:none;color:var(--color-gray-300);cursor:pointer;display:flex;padding:2px}.lookup-toggle.active{color:var(--color-success)}.lookup-delete-btn{align-items:center;background:none;border:none;color:var(--color-gray-300);cursor:pointer;display:flex;padding:2px}.lookup-delete-btn:hover{color:var(--color-error)}.lookup-add-value{background:var(--color-gray-50);border-top:1px solid var(--color-gray-200);display:flex;flex-shrink:0;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md)}.lookup-empty{align-items:center;color:var(--color-gray-400);display:flex;flex:1 1;flex-direction:column;gap:var(--spacing-md);justify-content:center}.lookup-source-badge{align-items:center;border-radius:var(--radius-sm);display:inline-flex;font-size:var(--text-xs);font-weight:600;gap:3px;letter-spacing:.5px;padding:1px 6px;text-transform:uppercase}.lookup-source-badge.view{background:var(--color-primary-light);color:var(--color-primary)}.lookup-source-badge.query{background:var(--color-warning-light);color:var(--color-warning)}.lookup-source-select{background:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);cursor:pointer;font-family:inherit;font-size:var(--text-sm);padding:var(--spacing-xs) var(--spacing-sm)}.lookup-source-select:focus{border-color:var(--color-primary);outline:none}.lookup-source-config{background:var(--color-primary-light);border-bottom:1px solid var(--color-gray-200);flex-shrink:0;padding:var(--spacing-md) var(--spacing-lg)}.lookup-config-row{align-items:center;display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.lookup-config-row:last-child{margin-bottom:0}.lookup-config-row label{color:var(--color-gray-600);font-size:var(--text-xs);font-weight:600;min-width:120px;white-space:nowrap}.lookup-config-input{border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);flex:1 1;font-family:inherit;font-size:var(--text-sm);padding:var(--spacing-xs) var(--spacing-sm)}.lookup-config-input:focus{border-color:var(--color-primary);outline:none}.lookup-config-textarea{border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);flex:1 1;font-family:var(--font-mono);font-size:var(--text-xs);padding:var(--spacing-xs) var(--spacing-sm);resize:vertical}.lookup-config-textarea:focus{border-color:var(--color-primary);outline:none}.lookup-config-note{color:var(--color-gray-400);font-size:var(--text-xs);margin:var(--spacing-sm) 0 0}.display-settings-page{display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - var(--footer-height));overflow:hidden}.display-settings-page .dev-module-header{flex-shrink:0;position:-webkit-sticky;position:sticky;top:0;z-index:20}.ds-panel{background:var(--color-bg-page);display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.ds-panel-header{align-items:center;background:var(--color-bg-white);border-bottom:1px solid var(--color-gray-200);display:flex;flex-shrink:0;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg)}.ds-panel-header h3{color:var(--color-primary);font-family:var(--font-primary);font-size:var(--text-lg);margin:0}.ds-panel-count{color:var(--color-gray-500);font-size:var(--text-sm)}.ds-scroll{flex:1 1;min-height:0;overflow:auto}.ds-table{background:var(--color-bg-white);border-collapse:initial;border-spacing:0;font-size:var(--text-sm);width:100%}.ds-table thead{position:-webkit-sticky;position:sticky;top:0;z-index:10}.ds-table th,.ds-table thead th{background:var(--color-gray-200)}.ds-table th{border-bottom:1px solid var(--color-gray-200);color:var(--color-gray-600);font-size:var(--text-xs);font-weight:600;padding:var(--spacing-sm) var(--spacing-md);text-align:left;text-transform:uppercase}.ds-table td{border-bottom:1px solid var(--color-gray-100);padding:var(--spacing-xs) var(--spacing-md);vertical-align:middle}.ds-table tr:hover{background:var(--color-gray-50)}.ds-table tr.edited{background:var(--color-warning-light)}.ds-key{color:var(--color-gray-800);font-weight:500}.ds-desc,.ds-type{color:var(--color-gray-500);font-size:var(--text-xs)}.ds-input{background:var(--color-bg-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);padding:var(--spacing-xs) var(--spacing-sm);width:100%}.ds-input:focus{border-color:var(--color-primary);outline:none}.ds-input[type=number]{width:100px}:root{--color-primary:#1a5568;--color-primary-dark:#0f3d4d;--color-primary-light:#e0f2f7;--color-primary-hover:#2d7a8c;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-black:#000;--color-beige-50:#faf8f5;--color-beige-100:#f5f0e8;--color-beige-200:#e8dfd0;--color-maroon:#8b5a2b;--color-maroon-light:#faf5f0;--color-success:#059669;--color-success-light:#d1fae5;--color-warning:#d97706;--color-warning-light:#fef3c7;--color-error:#dc2626;--color-error-light:#fee2e2;--color-bg-page:#f0f4f5;--color-bg-white:#fff;--color-teal-50:#e0f2f7;--color-teal-100:#c5e8f0;--color-teal-200:#a0d8e8;--color-teal-500:#1a5568;--color-teal-700:#0f3d4d;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:0.75rem;--spacing-lg:1rem;--spacing-xl:1.5rem;--radius-sm:0.25rem;--radius-md:0.5rem;--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 6px #00000080;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--font-primary:"Orbitron","Rajdhani",sans-serif;--font-secondary:"Rajdhani","Roboto Condensed",sans-serif;--font-mono:"Roboto Mono",monospace;--header-height:56px;--footer-height:28px;--sidebar-width:280px;--sidebar-width-collapsed:52px}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f0f4f5;background-color:var(--color-bg-page);color:#1f2937;color:var(--color-gray-800);font-family:Rajdhani,Roboto Condensed,sans-serif;font-family:var(--font-secondary);font-weight:500;margin:0}button,input,select,textarea{font-family:inherit;font-weight:inherit}.app-container{background-color:#f0f4f5;background-color:var(--color-bg-page);min-height:100vh}.header{background-color:#1a5568;background-color:var(--color-primary);color:#fff;height:56px;height:var(--header-height);justify-content:space-between;left:0;padding:.75rem 1rem;padding:var(--spacing-md) var(--spacing-lg);position:fixed;right:0;top:0;z-index:100}.header,.header-left{align-items:center;display:flex}.header-left{gap:1rem;gap:var(--spacing-lg)}.header-logo{cursor:pointer;height:40px;transition:opacity .15s ease;width:auto}.header-logo:hover{opacity:.8}.header-title{color:#fff;font-family:Orbitron,Rajdhani,sans-serif;font-family:var(--font-primary);font-size:1.5rem;font-style:normal;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.header-right{align-items:center;display:flex;gap:1rem;gap:var(--spacing-lg)}.header-db-selector{position:relative}.header-db-btn{align-items:center;background-color:#ffffff26;border:1px solid #ffffff4d;border-radius:.25rem;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;font-size:.75rem;font-size:var(--text-xs);gap:.25rem;gap:var(--spacing-xs);padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm);transition:all .15s ease}.header-db-btn:hover{background-color:#ffffff40}.header-db-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-db-dropdown{background-color:#fff;background-color:var(--color-bg-white);border:1px solid #e5e7eb;border:1px solid var(--color-gray-200);border-radius:.25rem;border-radius:var(--radius-sm);box-shadow:0 4px 6px #00000080;box-shadow:var(--shadow-md);margin-top:.25rem;margin-top:var(--spacing-xs);min-width:160px;position:absolute;right:0;top:100%;z-index:200}.header-db-option{background:none;border:none;color:#374151;color:var(--color-gray-700);cursor:pointer;font-size:.875rem;font-size:var(--text-sm);padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);text-align:left;width:100%}.header-db-option:hover{background-color:#f3f4f6;background-color:var(--color-gray-100)}.header-db-option.active{background-color:#e0f2f7;background-color:var(--color-primary-light);color:#1a5568;color:var(--color-primary)}.header-user-menu{position:relative}.header-user-icon{align-items:center;background-color:#ffffff26;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;transition:background-color .15s ease;width:40px}.header-user-icon:hover{background-color:#ffffff40}.header-user-dropdown{background-color:#fff;background-color:var(--color-bg-white);border:1px solid #e5e7eb;border:1px solid var(--color-gray-200);border-radius:.25rem;border-radius:var(--radius-sm);box-shadow:0 4px 6px #00000080;box-shadow:var(--shadow-md);margin-top:.25rem;margin-top:var(--spacing-xs);min-width:160px;overflow:hidden;position:absolute;right:0;top:100%;z-index:200}.header-user-option{align-items:center;background:none;border:none;color:#374151;color:var(--color-gray-700);cursor:pointer;display:flex;font-size:.875rem;font-size:var(--text-sm);gap:.5rem;gap:var(--spacing-sm);padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);text-align:left;width:100%}.header-user-option:hover{background-color:#f3f4f6;background-color:var(--color-gray-100)}.header-dropdown-divider{background-color:#e5e7eb;background-color:var(--color-gray-200);height:1px}.impersonate-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.impersonate-modal{background:#fff;background:var(--color-bg-white);border-radius:.5rem;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:80vh;max-width:90vw;width:400px}.impersonate-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;padding:.75rem;padding:var(--spacing-md)}.impersonate-header h3{color:#1f2937;color:var(--color-gray-800);font-size:1.125rem;font-size:var(--text-lg);margin:0}.impersonate-close{background:none;border:none;color:#6b7280;color:var(--color-gray-500);cursor:pointer;font-size:24px;line-height:1;padding:0}.impersonate-close:hover{color:#374151;color:var(--color-gray-700)}.impersonate-list{flex:1 1;overflow-y:auto;padding:.5rem;padding:var(--spacing-sm)}.impersonate-user{align-items:center;background:none;border:1px solid #0000;border-radius:.25rem;border-radius:var(--radius-sm);cursor:pointer;display:flex;justify-content:space-between;padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);text-align:left;transition:all .15s ease;width:100%}.impersonate-user:hover{background-color:#f3f4f6;background-color:var(--color-gray-100);border-color:#e5e7eb;border-color:var(--color-gray-200)}.impersonate-user.current{background-color:var(--color-primary-50);border-color:var(--color-primary-200)}.impersonate-user-info{display:flex;flex-direction:column;gap:2px}.impersonate-user-name{color:#1f2937;color:var(--color-gray-800);font-size:.875rem;font-size:var(--text-sm);font-weight:500}.impersonate-user-group{color:#6b7280;color:var(--color-gray-500);font-size:.75rem;font-size:var(--text-xs)}.impersonate-current-badge{background-color:var(--color-primary-100);border-radius:.25rem;border-radius:var(--radius-sm);color:var(--color-primary-700);font-size:.75rem;font-size:var(--text-xs);padding:2px 8px}.db-switcher-modal{background:#fff;background:var(--color-bg-white);border-radius:.5rem;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;height:360px;max-width:90vw;width:480px}.db-switcher-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200);display:flex;flex-shrink:0;justify-content:space-between;padding:.75rem;padding:var(--spacing-md)}.db-switcher-header h3{color:#1f2937;color:var(--color-gray-800);font-size:1.125rem;font-size:var(--text-lg);margin:0}.db-switcher-list{flex:1 1;min-height:0;overflow-y:auto;padding:.5rem;padding:var(--spacing-sm)}.db-switcher-row{align-items:center;background:none;border:1px solid #0000;border-radius:.25rem;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:0;padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);text-align:left;transition:all .15s ease;width:100%}.db-switcher-row:hover{background-color:#f3f4f6;background-color:var(--color-gray-100);border-color:#e5e7eb;border-color:var(--color-gray-200)}.db-switcher-row.current{background-color:var(--color-primary-50);border-color:var(--color-primary-200)}.db-switcher-logo{align-items:center;display:flex;flex-shrink:0;justify-content:center;width:40px}.db-switcher-logo img{border-radius:4px;height:28px;object-fit:contain;width:28px}.db-switcher-logo .db-switcher-logo-placeholder{align-items:center;background:#f3f4f6;background:var(--color-gray-100);border-radius:4px;color:#9ca3af;color:var(--color-gray-400);display:flex;font-size:.75rem;font-size:var(--text-xs);font-weight:600;height:28px;justify-content:center;width:28px}.db-switcher-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0;text-align:left}.db-switcher-name{color:#1f2937;color:var(--color-gray-800);font-size:.875rem;font-size:var(--text-sm);font-weight:600}.db-switcher-desc,.db-switcher-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.db-switcher-desc{color:#6b7280;color:var(--color-gray-500)}.db-switcher-badge,.db-switcher-desc{font-size:.75rem;font-size:var(--text-xs)}.db-switcher-badge{background-color:var(--color-primary-100);border-radius:.25rem;border-radius:var(--radius-sm);color:var(--color-primary-700);flex-shrink:0;margin-left:auto;padding:2px 8px}.header-user-info{align-items:flex-end;display:flex;flex-direction:column;gap:2px}.header-impersonation-area{align-items:center;display:flex;gap:0}.header-impersonation-icons{align-items:center;display:flex;flex-direction:column;gap:2px;opacity:0;transition:opacity .15s;width:20px}.header-impersonation-area:hover .header-impersonation-icons{opacity:1}.header-impersonation-text{align-items:flex-end;display:flex;flex-direction:column;gap:2px}.header-imp-btn{align-items:center;background:#ffffff26;border:1px solid #ffffff40;border-radius:3px;cursor:pointer;display:flex;line-height:1;padding:2px}.header-imp-claim{color:#22c55e}.header-imp-claim:hover{background:#22c55e4d;border-color:#22c55e}.header-imp-revert{color:#ef4444}.header-imp-revert:hover{background:#ef44444d;border-color:#ef4444}.header-user-name{font-size:.875rem;font-size:var(--text-sm);font-weight:500}.header-user-group{color:#fffc;font-size:.75rem;font-size:var(--text-xs)}.app-footer{background-color:#1a5568;background-color:var(--color-primary);bottom:0;height:28px;height:var(--footer-height);justify-content:space-between;left:0;padding:0 1rem;padding:0 var(--spacing-lg);position:fixed;right:0;z-index:50}.app-footer,.footer-left{align-items:center;display:flex}.footer-left{gap:.5rem;gap:var(--spacing-sm)}.footer-db-badge,.footer-version{align-items:center;background:#ffffff1a;border-radius:3px;color:#ffffffd9;display:inline-flex;font-size:.75rem;font-size:var(--text-xs);gap:4px;justify-content:center;min-width:72px;padding:2px 10px}.footer-db-badge-preprod,.footer-version-preprod{background:#dc262659;color:#fca5a5}.footer-right{gap:.5rem;gap:var(--spacing-sm)}.footer-center,.footer-right{align-items:center;display:flex}.footer-center{left:50%;position:absolute;transform:translateX(-50%)}.footer-status{animation:statusFadeIn .2s ease-out;color:#ffffffe6;font-size:.875rem;font-size:var(--text-sm)}@keyframes statusFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.footer-add-task-btn{align-items:center;background-color:#ffffff26;border:1px solid #ffffff4d;border-radius:.25rem;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;height:20px;justify-content:center;transition:all .15s ease;width:24px}.footer-add-task-btn:hover{background-color:#ffffff40;border-color:#ffffff80}.footer-help-btn{align-items:center;background-color:#ffffff26;border:1px solid #ffffff4d;border-radius:.25rem;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;height:20px;justify-content:center;transition:all .15s ease;width:24px}.footer-help-btn:hover{background-color:#ffffff40;border-color:#ffffff80}.help-question-mark{font-size:16px;font-weight:700;line-height:1}.alert-bar{flex-direction:column;left:50%;max-width:600px;padding:.75rem;padding:var(--spacing-md);position:fixed;top:0;transform:translateX(-50%);width:100%;z-index:1001}.alert-bar,.alert-item{display:flex;gap:.5rem;gap:var(--spacing-sm)}.alert-item{align-items:center;animation:alertSlideIn .25s ease-out;background-color:#fff;background-color:var(--color-bg-white);border-left:4px solid;border-radius:.5rem;border-radius:var(--radius-md);box-shadow:0 4px 6px #00000080;box-shadow:var(--shadow-md);padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md)}@keyframes alertSlideIn{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.alert-error{background-color:#450a0a;border-color:#991b1b;border-width:2px;box-shadow:0 4px 20px #991b1b66,inset 0 1px 0 #ffffff1a;color:#fecaca}.alert-error .alert-message{color:#fecaca;font-weight:500}.alert-warning{background-color:#fffbeb;border-color:var(--color-status-warning)}.alert-success{background-color:#f0fdf4;border-color:var(--color-status-success)}.alert-info{background-color:#eff6ff;border-color:var(--color-status-info)}.alert-confirm{background-color:#fffbeb;border-color:var(--color-status-warning)}.alert-icon{align-items:center;display:flex;flex-shrink:0}.alert-error .alert-icon{color:#f87171}.alert-warning .alert-icon{color:var(--color-status-warning)}.alert-success .alert-icon{color:var(--color-status-success)}.alert-info .alert-icon{color:var(--color-status-info)}.alert-confirm .alert-icon{color:var(--color-status-warning)}.alert-message{color:var(--color-text-primary);flex:1 1;font-size:.875rem;font-size:var(--text-sm);line-height:1.4}.alert-dismiss{align-items:center;background:#0000;border:none;border-radius:.25rem;border-radius:var(--radius-sm);color:var(--color-text-tertiary);cursor:pointer;display:flex;flex-shrink:0;height:24px;justify-content:center;padding:0;transition:all .15s ease;width:24px}.alert-dismiss:hover{background-color:#0000001a;color:var(--color-text-primary)}.alert-error .alert-dismiss{color:#fca5a5}.alert-error .alert-dismiss:hover{background-color:#ffffff1a;color:#fef2f2}.alert-actions{display:flex;flex-shrink:0;gap:.5rem;gap:var(--spacing-sm)}.alert-btn{border:none;border-radius:.25rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.875rem;font-size:var(--text-sm);font-weight:500;padding:.25rem .75rem;padding:var(--spacing-xs) var(--spacing-md);transition:all .15s ease}.alert-btn-confirm{background-color:#1a5568;background-color:var(--color-primary);color:#fff}.alert-btn-confirm:hover{background-color:#0f3d4d;background-color:var(--color-primary-dark)}.alert-btn-cancel{background-color:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-primary)}.alert-btn-cancel:hover{background-color:var(--color-bg-hover)}.footer-help-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.footer-help-modal{background-color:#fff;background-color:var(--color-bg-white);border-radius:.5rem;border-radius:var(--radius-md);box-shadow:0 4px 6px #00000080;box-shadow:var(--shadow-md);display:flex;flex-direction:column;max-height:90vh;max-width:480px;width:100%}.footer-help-modal .modal-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;padding:1rem;padding:var(--spacing-lg)}.footer-help-modal .modal-header h3{color:#1f2937;color:var(--color-gray-800);font-size:1.125rem;font-size:var(--text-lg);margin:0}.footer-help-modal .modal-close{background:none;border:none;border-radius:.25rem;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-gray-500);cursor:pointer;padding:.25rem;padding:var(--spacing-xs)}.footer-help-modal .modal-close:hover{background-color:#f3f4f6;background-color:var(--color-gray-100);color:#374151;color:var(--color-gray-700)}.footer-help-modal .modal-body{flex:1 1;overflow-y:auto;padding:1rem;padding:var(--spacing-lg)}.footer-help-modal .help-steps{color:#374151;color:var(--color-gray-700);margin:0;padding-left:1rem;padding-left:var(--spacing-lg)}.footer-help-modal .help-steps li{line-height:1.5;margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.footer-help-modal .modal-footer{border-top:1px solid #e5e7eb;border-top:1px solid var(--color-gray-200);display:flex;justify-content:flex-end;padding:1rem;padding:var(--spacing-lg)}.footer-help-modal .help-sections{display:flex;flex-direction:column;gap:.75rem;gap:var(--spacing-md)}.footer-help-modal .help-section{background-color:#f9fafb;background-color:var(--color-gray-50);border-radius:.25rem;border-radius:var(--radius-sm);padding:.75rem;padding:var(--spacing-md)}.footer-help-modal .help-section-heading{color:#1a5568;color:var(--color-primary);font-size:.875rem;font-size:var(--text-sm);font-weight:600;letter-spacing:.5px;margin:0 0 .5rem;margin:0 0 var(--spacing-sm) 0;text-transform:uppercase}.footer-help-modal .help-section-list{color:#374151;color:var(--color-gray-700);font-size:.875rem;font-size:var(--text-sm);margin:0;padding-left:1rem;padding-left:var(--spacing-lg)}.footer-help-modal .help-section-list li{line-height:1.4;margin-bottom:.25rem;margin-bottom:var(--spacing-xs)}.footer-help-modal .help-section-list li:last-child{margin-bottom:0}.footer-help-modal{max-width:560px}.footer-add-task-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.footer-add-task-modal{background-color:#fff;background-color:var(--color-bg-white);border-radius:.5rem;border-radius:var(--radius-md);box-shadow:0 4px 6px #00000080;box-shadow:var(--shadow-md);display:flex;flex-direction:column;max-height:90vh;max-width:600px;width:100%}.footer-add-task-modal .modal-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;padding:1rem;padding:var(--spacing-lg)}.footer-add-task-modal .modal-header h3{color:#1f2937;color:var(--color-gray-800);font-size:1.125rem;font-size:var(--text-lg);margin:0}.footer-add-task-modal .modal-close{background:none;border:none;border-radius:.25rem;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-gray-500);cursor:pointer;padding:.25rem;padding:var(--spacing-xs)}.footer-add-task-modal .modal-close:hover{background-color:#f3f4f6;background-color:var(--color-gray-100);color:#374151;color:var(--color-gray-700)}.footer-add-task-modal .modal-body{flex:1 1;overflow-y:auto;padding:1rem;padding:var(--spacing-lg)}.footer-add-task-modal .modal-error{background-color:#fee2e2;background-color:var(--color-error-light);border-radius:.25rem;border-radius:var(--radius-sm);color:#dc2626;color:var(--color-error);font-size:.875rem;font-size:var(--text-sm);margin-bottom:.75rem;margin-bottom:var(--spacing-md);padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md)}.footer-add-task-modal .form-row-inline{display:flex;gap:.75rem;gap:var(--spacing-md);margin-bottom:.75rem;margin-bottom:var(--spacing-md)}.footer-add-task-modal .form-row-inline .form-field{flex:1 1}.footer-add-task-modal .form-row{margin-bottom:.75rem;margin-bottom:var(--spacing-md)}.footer-add-task-modal .form-field label,.footer-add-task-modal .form-row label{color:#374151;color:var(--color-gray-700);display:block;font-size:.875rem;font-size:var(--text-sm);font-weight:500;margin-bottom:.25rem;margin-bottom:var(--spacing-xs)}.footer-add-task-modal .form-input{border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);font-size:.875rem;font-size:var(--text-sm);padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);width:100%}.footer-add-task-modal .form-input:focus{border-color:#1a5568;border-color:var(--color-primary);outline:none}.footer-add-task-modal .form-input:disabled{background-color:#f3f4f6;background-color:var(--color-gray-100);color:#6b7280;color:var(--color-gray-500)}.footer-add-task-modal .form-textarea{min-height:100px;resize:vertical}.footer-add-task-modal .modal-footer{border-top:1px solid #e5e7eb;border-top:1px solid var(--color-gray-200);display:flex;gap:.5rem;gap:var(--spacing-sm);justify-content:flex-end;padding:1rem;padding:var(--spacing-lg)}.main-layout{bottom:28px;bottom:var(--footer-height);display:flex;left:0;position:fixed;right:0;top:56px;top:var(--header-height)}.sidebar{background-color:#fff;background-color:var(--color-bg-white);box-shadow:0 1px 3px #0006;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;flex-shrink:0;height:100%;transition:width .2s ease;width:280px;width:var(--sidebar-width)}.sidebar.collapsed{width:52px;width:var(--sidebar-width-collapsed)}.sidebar-home-row{align-items:center;background-color:#fff;background-color:var(--color-bg-white);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200);display:flex;flex-shrink:0;justify-content:space-between}.sidebar-home-row .nav-item-home{flex:1 1}.sidebar-collapse-toggle{align-items:center;background:none;border:none;border-radius:.25rem;border-radius:var(--radius-sm);color:#9ca3af;color:var(--color-gray-400);cursor:pointer;display:flex;justify-content:center;margin-right:.25rem;margin-right:var(--spacing-xs);padding:.5rem;padding:var(--spacing-sm);transition:all .15s ease}.sidebar-collapse-toggle:hover{background-color:#f3f4f6;background-color:var(--color-gray-100);color:#4b5563;color:var(--color-gray-600)}.sidebar.collapsed .sidebar-home-row{flex-direction:column;justify-content:center;padding:.25rem 0;padding:var(--spacing-xs) 0}.sidebar.collapsed .sidebar-collapse-toggle{margin-right:0;margin-top:.25rem;margin-top:var(--spacing-xs)}.sidebar-nav{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:.5rem 0;padding:var(--spacing-sm) 0}.sidebar.collapsed .nav-children,.sidebar.collapsed .nav-item-chevron,.sidebar.collapsed .nav-item-label{display:none}.sidebar.collapsed .nav-item{justify-content:center;padding:.5rem;padding:var(--spacing-sm)}.sidebar.collapsed .nav-item-content{justify-content:center}.sidebar.collapsed .nav-item-level-1{padding-left:0}.sidebar.collapsed .nav-item-level-2,.sidebar.collapsed .nav-item-level-3,.sidebar.collapsed .nav-item-level-4{display:none}.sidebar.collapsed .nav-item{position:relative}.sidebar.collapsed .nav-item:hover:after{background-color:#1f2937;background-color:var(--color-gray-800);border-radius:.25rem;border-radius:var(--radius-sm);color:#fff;content:attr(data-tooltip);font-size:.875rem;font-size:var(--text-sm);left:100%;margin-left:.5rem;margin-left:var(--spacing-sm);padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm);position:absolute;top:50%;transform:translateY(-50%);white-space:nowrap;z-index:1000}.sidebar.collapsed .sidebar-footer{padding:.5rem;padding:var(--spacing-sm)}.sidebar.collapsed .expand-toggle-btn span{display:none}.main-content{background-color:#f0f4f5;background-color:var(--color-bg-page);display:flex;flex-direction:column;min-height:0;overflow-y:auto}.sidebar-nav{padding:1rem;padding:var(--spacing-lg)}.sidebar-btn{align-items:center;background:none;border:none;border-radius:.25rem;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:.5rem;gap:var(--spacing-sm);margin-top:.25rem;margin-top:var(--spacing-xs);padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-lg);text-align:left;width:100%}.sidebar-btn:first-child{margin-top:0}.sidebar-btn:hover{background-color:#f3f4f6;background-color:var(--color-gray-100)}.sidebar-btn.active{background-color:#e0f2f7;background-color:var(--color-primary-light)}.main-content{flex:1 1;padding:1.5rem;padding:var(--spacing-xl)}.module-container{background-color:#fff;background-color:var(--color-bg-white);border-radius:.5rem;border-radius:var(--radius-md);box-shadow:0 1px 3px #0006;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:100%;min-height:0}.module-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;padding:1rem;padding:var(--spacing-lg)}.module-header-actions,.module-header-tabs{display:flex;gap:.5rem;gap:var(--spacing-sm)}.module-header-actions{align-items:center}.tab-btn{background:none;border:none;border-bottom:2px solid #0000;color:#6b7280;color:var(--color-gray-500);cursor:pointer;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-lg)}.tab-btn:hover{color:#374151;color:var(--color-gray-700)}.tab-btn.active{border-bottom-color:#1a5568;border-bottom-color:var(--color-primary);color:#1a5568;color:var(--color-primary)}.tab-btn-icon{align-items:center;background:none;border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-gray-500);cursor:pointer;display:flex;justify-content:center;padding:.5rem;padding:var(--spacing-sm);transition:all .15s ease}.tab-btn-icon:hover{border-color:#9ca3af;border-color:var(--color-gray-400);color:#374151;color:var(--color-gray-700)}.tab-btn-icon.active{background-color:#1a5568;background-color:var(--color-primary);border-color:#1a5568;border-color:var(--color-primary);color:#fff}.search-wrapper{position:relative}.search-icon{color:#9ca3af;color:var(--color-gray-400);left:.5rem;left:var(--spacing-sm);position:absolute;top:50%;transform:translateY(-50%)}.search-icon.spinning{animation:spin-search 1s linear infinite;color:#1a5568;color:var(--color-primary)}@keyframes spin-search{0%{transform:translateY(-50%) rotate(0deg)}to{transform:translateY(-50%) rotate(1turn)}}.search-input{border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);font-size:.875rem;font-size:var(--text-sm);padding:.375rem .5rem .375rem 2rem;padding:.375rem var(--spacing-sm) .375rem 2rem;width:200px}.search-input:focus{border-color:#1a5568;border-color:var(--color-primary);outline:none}.list-view{display:flex;flex:1 1;min-height:0;overflow:hidden}.list-panel{padding:1rem;padding:var(--spacing-lg);width:33.333%}.list-item-btn{padding:.75rem 1rem;padding:var(--spacing-md) var(--spacing-lg)}.detail-panel{display:flex;flex:1 1;flex-direction:column;overflow:hidden;padding:1.5rem;padding:var(--spacing-xl);position:relative}.detail-panel.is-resizing{cursor:ns-resize;-webkit-user-select:none;user-select:none}.detail-content{overflow-y:auto;padding-right:.5rem;padding-right:var(--spacing-sm)}.related-section-header{align-items:center;display:flex;justify-content:space-between;margin-top:0;position:relative}.related-section-header.resizable{cursor:ns-resize}.related-section-header .resize-grip{align-items:center;background:#f3f4f6;background:var(--color-gray-100);border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:4px;color:#9ca3af;color:var(--color-gray-400);display:flex;height:14px;left:50%;opacity:0;padding:0 8px;position:absolute;top:-8px;transform:translateX(-50%);transition:opacity .15s ease}.related-section-header.resizable:hover .resize-grip{background:#e5e7eb;background:var(--color-gray-200);color:#4b5563;color:var(--color-gray-600);opacity:1}.related-collapse-btn{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;opacity:.7;padding:2px;transition:opacity .15s ease}.related-collapse-btn:hover{opacity:1}.related-tables-section{display:flex;flex-direction:column;flex-shrink:0;overflow:hidden}.related-tables-section.collapsed{height:auto!important}.related-tables-content{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.detail-section-header{background-color:#1a5568;background-color:var(--color-primary);border-radius:.25rem;border-radius:var(--radius-sm);color:#fff;font-family:Rajdhani,Roboto Condensed,sans-serif;font-family:var(--font-secondary);font-size:1rem;font-size:var(--text-base);font-weight:500;margin-bottom:.75rem;margin-bottom:var(--spacing-md);margin-top:.75rem;margin-top:var(--spacing-md);padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-lg)}.detail-grid-24>.col-span-24:first-child .detail-section-header{margin-top:0}.detail-grid{grid-gap:1rem;grid-gap:var(--spacing-lg);display:grid;gap:1rem;gap:var(--spacing-lg);grid-template-columns:repeat(2,1fr);margin-bottom:1.5rem;margin-bottom:var(--spacing-xl)}.detail-grid-full{grid-column:span 2}.form-group label{display:block;font-size:.875rem;font-size:var(--text-sm);font-weight:500;margin-bottom:.25rem;margin-bottom:var(--spacing-xs)}.form-group.label-left{align-items:center;display:flex;flex-direction:row;gap:.5rem;gap:var(--spacing-sm)}.form-group.label-left label{flex:0 0 auto;margin-bottom:0;min-width:100px;white-space:nowrap}.form-group.label-left .form-input{flex:1 1}.form-group.label-right{align-items:center;display:flex;flex-direction:row-reverse;gap:.5rem;gap:var(--spacing-sm)}.form-group.label-right label{flex:0 0 auto;margin-bottom:0;min-width:100px;white-space:nowrap}.form-group.label-right .form-input{flex:1 1}.form-group.label-bottom{display:flex;flex-direction:column-reverse}.form-group.label-bottom label{margin-bottom:0;margin-top:.25rem;margin-top:var(--spacing-xs)}.form-group.label-align-center label{text-align:center}.form-group.label-align-right label{text-align:right}.form-input{border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);box-sizing:border-box;padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);width:100%}.form-input:focus{border-color:#1a5568;border-color:var(--color-primary);outline:none}.form-input.derived-field,.form-input[readonly]{background-color:#f9fafb;background-color:var(--color-gray-50)}.form-input.derived-field{border-color:#e5e7eb;border-color:var(--color-gray-200);color:#6b7280;color:var(--color-gray-500);cursor:default;font-style:italic}.form-input.dirty{background-color:#fffde7;border-color:#f9a825}input[type=date].date-empty{color:#0000}input[type=date].date-empty:focus{color:inherit}input[type=date].date-empty::-webkit-datetime-edit{color:#0000}input[type=date].date-empty:focus::-webkit-datetime-edit{color:inherit}button.form-input{appearance:none;-webkit-appearance:none;-moz-appearance:none;font:inherit;height:36px;line-height:1;margin:0}select.form-input{background-color:#fff;background-color:var(--color-bg-white);cursor:pointer}.form-input{height:36px}textarea.form-input{height:auto}.form-input-link{align-items:center;background-color:#f9fafb;background-color:var(--color-gray-50);color:#1a5568;color:var(--color-primary);cursor:pointer;display:flex;justify-content:space-between;text-decoration:none}.form-input-link:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;content:"";flex-shrink:0;height:14px;margin-left:.5rem;margin-left:var(--spacing-sm);opacity:.5;width:14px}.form-input-link:hover{background-color:#e0f2f7;background-color:var(--color-primary-light);color:#0f3d4d;color:var(--color-primary-dark)}.form-input.fk-field{align-items:center;background-color:#f9fafb;background-color:var(--color-gray-50);cursor:pointer;display:flex;justify-content:space-between;position:relative;text-align:left}.form-input.fk-field:hover{background-color:#f3f4f6;background-color:var(--color-gray-100)}.form-input.fk-field:focus{border-color:#1a5568;border-color:var(--color-primary);outline:none}.fk-field-value{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fk-field-icon{color:#9ca3af;color:var(--color-gray-400);flex-shrink:0;margin-left:.5rem;margin-left:var(--spacing-sm)}.form-input.fk-field:hover .fk-field-icon,.url-link{color:#1a5568;color:var(--color-primary)}.url-link{cursor:pointer;display:block;overflow:hidden;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.url-link:hover{text-decoration:underline}.readonly-field{background-color:#f9fafb!important;background-color:var(--color-gray-50,#f9fafb)!important}.readonly-cell,.readonly-field{color:#6b7280;color:var(--color-gray-500,#6b7280)}.checkbox-field{align-items:center;display:flex;gap:.5rem;gap:var(--spacing-sm)}.checkbox-field input[type=checkbox]{height:1rem;width:1rem}.data-grid-container{border:1px solid #e5e7eb;border:1px solid var(--color-gray-200);display:flex;flex:1 1;flex-direction:column;min-height:0;position:relative}.data-grid-scroll-area{flex:1 1;min-height:0;overflow:auto}.datasheet-view{display:flex;flex:1 1;flex-direction:column;min-height:0;padding:1rem;padding:var(--spacing-lg)}.no-column-resize .column-resize-handle{display:none!important}.datasheet-pagination{align-items:center;border-top:1px solid #e5e7eb;border-top:1px solid var(--color-gray-200);display:flex;flex-shrink:0;justify-content:space-between;margin-top:.75rem;margin-top:var(--spacing-md);padding:.75rem 0;padding:var(--spacing-md) 0}.datasheet-pagination .pagination-info{color:#6b7280;color:var(--color-gray-500);font-size:.875rem;font-size:var(--text-sm)}.datasheet-pagination .pagination-controls{align-items:center;display:flex;gap:1rem;gap:var(--spacing-lg)}.datasheet-pagination .pagination-pagesize{align-items:center;color:#4b5563;color:var(--color-gray-600);display:flex;font-size:.875rem;font-size:var(--text-sm);gap:.5rem;gap:var(--spacing-sm)}.datasheet-pagination .pagination-pagesize select{background:#fff;border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.875rem;font-size:var(--text-sm);padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm)}.datasheet-pagination .pagination-nav{align-items:center;display:flex;gap:.25rem;gap:var(--spacing-xs)}.datasheet-pagination .pagination-btn{align-items:center;background:#fff;border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);color:#4b5563;color:var(--color-gray-600);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .15s ease;width:32px}.datasheet-pagination .pagination-btn:hover:not(:disabled){background-color:#e0f2f7;background-color:var(--color-primary-light);border-color:#1a5568;border-color:var(--color-primary);color:#1a5568;color:var(--color-primary)}.datasheet-pagination .pagination-btn:disabled{cursor:not-allowed;opacity:.4}.datasheet-pagination .pagination-page-info{color:#4b5563;color:var(--color-gray-600);font-size:.875rem;font-size:var(--text-sm);min-width:100px;padding:0 .5rem;padding:0 var(--spacing-sm);text-align:center}.data-grid{border-collapse:collapse}.data-grid thead{position:-webkit-sticky;position:sticky;top:0;z-index:10}.data-grid th{background-color:#e5e7eb;background-color:var(--color-gray-200);border-bottom:2px solid #d1d5db;border-bottom:2px solid var(--color-gray-300);color:#374151;color:var(--color-gray-700);font-family:Rajdhani,Roboto Condensed,sans-serif;font-family:var(--font-secondary);font-size:.75rem;font-size:var(--text-xs);font-weight:600;letter-spacing:.5px;padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);position:relative;text-align:left;text-transform:uppercase;vertical-align:bottom;white-space:normal}.column-resize-handle{background:#0000;cursor:col-resize;height:100%;position:absolute;right:0;top:0;width:5px;z-index:5}.column-resize-handle:hover,.data-grid-container.is-resizing .column-resize-handle{background:#1a5568;background:var(--color-primary)}.data-grid-container.is-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.data-grid-container.is-resizing *{cursor:col-resize!important}.data-grid td{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200);font-size:.875rem;font-size:var(--text-sm);padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);vertical-align:middle}.data-grid tbody tr{background-color:#fff;background-color:var(--color-bg-white)}.data-grid tbody tr:nth-child(2n){background-color:#f3f4f6;background-color:var(--color-gray-100)}.data-grid tbody tr:hover{background-color:#e0f2f7;background-color:var(--color-teal-50)}.data-grid tbody tr.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.column-label{display:block;line-height:1.3;white-space:normal;word-break:break-word}.filterable-header{cursor:pointer;position:relative}.filterable-header:hover{background:#f3f4f6;background:var(--color-gray-100)}.header-filter-icon{bottom:4px;color:#9ca3af;color:var(--color-gray-400);opacity:0;position:absolute;right:4px;transition:opacity .15s ease}.header-filter-icon.visible{opacity:1}.header-filter-icon.active{fill:#1a5568;fill:var(--color-primary);color:#1a5568;color:var(--color-primary)}.filter-dropdown{background-color:#fff;background-color:var(--color-bg-white);border:1px solid #d1d5db;border:1px solid var(--color-gray-300);box-shadow:0 4px 6px #00000080;box-shadow:var(--shadow-md);display:flex;flex-direction:column;max-height:400px;min-width:240px;position:fixed;z-index:1000}.filter-sort-section{padding:.25rem;padding:var(--spacing-xs)}.filter-sort-btn{align-items:center;background:none;border:none;color:#374151;color:var(--color-gray-700);cursor:pointer;display:flex;font-size:.875rem;font-size:var(--text-sm);gap:.5rem;gap:var(--spacing-sm);padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);text-align:left;width:100%}.filter-sort-btn:hover{background-color:#f3f4f6;background-color:var(--color-gray-100)}.filter-sort-btn.active{background-color:#e0f2f7;background-color:var(--color-primary-light);color:#1a5568;color:var(--color-primary)}.filter-divider{background-color:#d1d5db;background-color:var(--color-gray-300);height:1px;margin:.25rem 0;margin:var(--spacing-xs) 0}.filter-search,.filter-search input{padding:.5rem;padding:var(--spacing-sm)}.filter-search input{border:1px solid #d1d5db;border:1px solid var(--color-gray-300);box-sizing:border-box;font-size:.875rem;font-size:var(--text-sm);width:100%}.filter-search input:focus{border-color:#1a5568;border-color:var(--color-primary);outline:none}.filter-options{background-color:#fff;background-color:var(--color-bg-white);border:1px solid #d1d5db;border:1px solid var(--color-gray-300);flex:1 1;margin:0 .5rem;margin:0 var(--spacing-sm);max-height:200px;overflow-y:auto}.filter-option{align-items:center;cursor:pointer;display:flex;font-size:.875rem;font-size:var(--text-sm);gap:.5rem;gap:var(--spacing-sm);padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm)}.filter-option:hover{background-color:#f3f4f6;background-color:var(--color-gray-100)}.filter-option-select-all{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200)}.filter-option input[type=checkbox]{height:1rem;margin:0;width:1rem}.filter-footer{display:flex;gap:.5rem;gap:var(--spacing-sm);justify-content:flex-end;padding:.5rem;padding:var(--spacing-sm)}.filter-ok-btn{background-color:#f3f4f6;background-color:var(--color-gray-100);border:1px solid #9ca3af;border:1px solid var(--color-gray-400);cursor:pointer;font-size:.875rem;font-size:var(--text-sm);padding:.25rem 1rem;padding:var(--spacing-xs) var(--spacing-lg)}.filter-ok-btn:hover{background-color:#e5e7eb;background-color:var(--color-gray-200)}.filter-cancel-btn{background-color:#f3f4f6;background-color:var(--color-gray-100);border:1px solid #9ca3af;border:1px solid var(--color-gray-400);cursor:pointer;font-size:.875rem;font-size:var(--text-sm);padding:.25rem 1rem;padding:var(--spacing-xs) var(--spacing-lg)}.filter-cancel-btn:hover{background-color:#e5e7eb;background-color:var(--color-gray-200)}.btn{align-items:center;border:none;border-radius:.25rem;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-size:.875rem;font-size:var(--text-sm);gap:.5rem;gap:var(--spacing-sm);padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-lg)}.btn-primary{background-color:#1a5568;background-color:var(--color-primary);color:#fff}.btn-primary:hover{background-color:#0f3d4d;background-color:var(--color-primary-dark)}.btn-secondary{background-color:#e5e7eb;background-color:var(--color-gray-200);color:#374151;color:var(--color-gray-700)}.btn-secondary:hover{background-color:#d1d5db;background-color:var(--color-gray-300)}.btn-icon{align-items:center;background-color:initial;border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-gray-500);cursor:pointer;display:flex;gap:.25rem;gap:var(--spacing-xs);padding:.375rem}.btn-icon:hover{background-color:#f3f4f6;background-color:var(--color-gray-100)}.datasheet-filter-clear{display:flex;justify-content:flex-end;min-width:70px}.clear-filter-btn{align-items:center;background-color:initial;border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-gray-500);cursor:pointer;display:flex;font-size:.75rem;font-size:var(--text-xs);gap:.25rem;gap:var(--spacing-xs);padding:.375rem}.clear-filter-btn span{color:#9ca3af;color:var(--color-gray-400)}.download-dropdown{position:relative}.download-menu{background-color:#fff;background-color:var(--color-bg-white);border:1px solid #e5e7eb;border:1px solid var(--color-gray-200);border-radius:.25rem;border-radius:var(--radius-sm);box-shadow:0 4px 6px #00000080;box-shadow:var(--shadow-md);margin-top:.25rem;margin-top:var(--spacing-xs);min-width:140px;position:absolute;right:0;top:100%;z-index:30}.download-menu-btn{align-items:center;background-color:initial;border:none;cursor:pointer;display:flex;font-size:.875rem;font-size:var(--text-sm);gap:.5rem;gap:var(--spacing-sm);padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);width:100%}.download-menu-btn:hover{background-color:#f3f4f6;background-color:var(--color-gray-100)}.home-container{margin:0 auto;max-width:1200px}.home-header{margin-bottom:2rem;text-align:center}.home-title{color:#1a5568;color:var(--color-primary);font-size:1.875rem;font-size:var(--text-3xl);font-weight:700;letter-spacing:.1em;margin:0 0 .5rem;margin:0 0 var(--spacing-sm) 0}.home-subtitle{color:#6b7280;color:var(--color-gray-500);font-size:1.125rem;font-size:var(--text-lg);margin:0}.home-section{margin-bottom:1.5rem;margin-bottom:var(--spacing-xl)}.section-header{background-color:#1a5568;background-color:var(--color-primary);border-radius:.25rem;border-radius:var(--radius-sm);color:#fff;margin-bottom:1rem;margin-bottom:var(--spacing-lg);padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-lg)}.section-header-title{font-size:1rem;font-size:var(--text-base);font-weight:500;margin:0}.summary-cards{grid-gap:1rem;grid-gap:var(--spacing-lg);display:grid;gap:1rem;gap:var(--spacing-lg);grid-template-columns:repeat(3,1fr);margin-bottom:1rem;margin-bottom:var(--spacing-lg)}.summary-card{align-items:center;background-color:#fff;background-color:var(--color-bg-white);border:1px solid #e5e7eb;border:1px solid var(--color-gray-200);border-radius:.5rem;border-radius:var(--radius-md);cursor:pointer;display:flex;gap:.75rem;gap:var(--spacing-md);padding:1rem;padding:var(--spacing-lg);text-align:left;transition:all .15s ease}.summary-card:hover{border-color:#1a5568;border-color:var(--color-primary);box-shadow:0 4px 6px #00000080;box-shadow:var(--shadow-md)}.summary-card-icon{align-items:center;background-color:#e0f2f7;background-color:var(--color-primary-light);border-radius:.5rem;border-radius:var(--radius-md);color:#1a5568;color:var(--color-primary);display:flex;flex-shrink:0;height:56px;justify-content:center;width:56px}.summary-card-content{display:flex;flex-direction:column;gap:2px}.summary-card-count{color:#1f2937;color:var(--color-gray-800);font-size:1.5rem;font-size:var(--text-2xl);font-weight:700}.summary-card-label{color:#4b5563;color:var(--color-gray-600);font-size:.875rem;font-size:var(--text-sm)}.summary-card-coming-soon{color:#9ca3af;color:var(--color-gray-400);font-size:.75rem;font-size:var(--text-xs);font-style:italic}.search-panel{background-color:#fff;background-color:var(--color-bg-white);border:1px solid #e5e7eb;border:1px solid var(--color-gray-200);border-radius:.5rem;border-radius:var(--radius-md);padding:1.5rem;padding:var(--spacing-xl)}.search-form{display:flex;gap:.75rem;gap:var(--spacing-md);margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.search-input-wrapper{flex:1 1;position:relative}.search-input-icon{color:#9ca3af;color:var(--color-gray-400);left:.75rem;left:var(--spacing-md);position:absolute;top:50%;transform:translateY(-50%)}.search-input-large{border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);font-size:1rem;font-size:var(--text-base);padding:.75rem .75rem .75rem 3rem;padding:var(--spacing-md) var(--spacing-md) var(--spacing-md) 3rem;width:100%}.search-input-large:focus{border-color:#1a5568;border-color:var(--color-primary);outline:none}.search-submit-btn{background-color:#1a5568;background-color:var(--color-primary);border:none;border-radius:.25rem;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:1rem;font-size:var(--text-base);padding:.75rem 1.5rem;padding:var(--spacing-md) var(--spacing-xl);transition:background-color .15s ease}.search-submit-btn:hover{background-color:#0f3d4d;background-color:var(--color-primary-dark)}.search-hint{color:#6b7280;color:var(--color-gray-500);font-size:.875rem;font-size:var(--text-sm);margin:0}.recent-changes-panel{background-color:#fff;background-color:var(--color-bg-white);border:1px solid #e5e7eb;border:1px solid var(--color-gray-200);border-radius:.5rem;border-radius:var(--radius-md);min-height:200px;padding:1.5rem;padding:var(--spacing-xl)}.recent-changes-placeholder{align-items:center;color:#9ca3af;color:var(--color-gray-400);display:flex;flex-direction:column;height:150px;justify-content:center}.recent-changes-icon{margin-bottom:.75rem;margin-bottom:var(--spacing-md)}.recent-changes-text{color:#6b7280;color:var(--color-gray-500);font-size:1rem;font-size:var(--text-base);margin:0 0 .25rem;margin:0 0 var(--spacing-xs) 0}.recent-changes-subtext{color:#9ca3af;color:var(--color-gray-400);font-size:.875rem;font-size:var(--text-sm);margin:0}.module-grid{grid-gap:1rem;grid-gap:var(--spacing-lg);display:grid;gap:1rem;gap:var(--spacing-lg);grid-template-columns:repeat(5,1fr)}.module-grid-6{grid-template-columns:repeat(6,1fr)}.module-btn{background-color:#fff;background-color:var(--color-bg-white);border:2px solid #d1d5db;border:2px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);cursor:pointer;padding:2rem 1.5rem;padding:2rem var(--spacing-xl)}.module-btn:hover{background-color:#e0f2f7;background-color:var(--color-primary-light);border-color:#1a5568;border-color:var(--color-primary)}.module-btn:disabled{cursor:not-allowed;opacity:.3}.padding-lg{padding:1.5rem;padding:var(--spacing-xl)}.loading{color:#6b7280;color:var(--color-gray-500);padding:2rem;text-align:center}.nav-item,.nav-item-container{width:100%}.nav-item{background:none;border:none;color:#374151;color:var(--color-gray-700);cursor:pointer;font-size:.875rem;font-size:var(--text-sm);padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);text-align:left;transition:background-color .15s ease}.nav-item:hover{background-color:#f3f4f6;background-color:var(--color-gray-100)}.nav-item.active{background-color:#e0f2f7;background-color:var(--color-primary-light);color:#1a5568;color:var(--color-primary)}.nav-item-content{align-items:center;display:flex;gap:.25rem;gap:var(--spacing-xs)}.nav-item-chevron{align-items:center;color:#9ca3af;color:var(--color-gray-400);display:flex;justify-content:center;width:18px}.nav-item-spacer{width:18px}.nav-item-icon{color:#6b7280;color:var(--color-gray-500);flex-shrink:0}.nav-item.active .nav-item-icon{color:#1a5568;color:var(--color-primary)}.nav-item-label{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-future-badge{background:#e5e7eb;background:var(--color-gray-200);border-radius:2px;color:#6b7280;color:var(--color-gray-500);flex-shrink:0;font-size:8px;font-weight:600;letter-spacing:.5px;margin-left:auto;padding:1px 4px;text-transform:uppercase}.nav-item-level-1{font-weight:500;padding-left:.75rem;padding-left:var(--spacing-md)}.nav-item-level-2{font-weight:400;padding-left:calc(.75rem + 18px);padding-left:calc(var(--spacing-md) + 18px)}.nav-item-level-3{padding-left:calc(.75rem + 36px);padding-left:calc(var(--spacing-md) + 36px)}.nav-item-level-3,.nav-item-level-4{font-size:.75rem;font-size:var(--text-xs);font-weight:400}.nav-item-level-4{padding-left:calc(.75rem + 52px);padding-left:calc(var(--spacing-md) + 52px)}.nav-children{width:100%}.sidebar-footer{border-top:1px solid #e5e7eb;border-top:1px solid var(--color-gray-200);padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md)}.expand-toggle-btn{align-items:center;background-color:#f3f4f6;background-color:var(--color-gray-100);border:none;border-radius:.25rem;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-gray-500);cursor:pointer;display:flex;font-size:.75rem;font-size:var(--text-xs);gap:.25rem;gap:var(--spacing-xs);justify-content:center;padding:.5rem;padding:var(--spacing-sm);transition:background-color .15s ease;width:100%}.expand-toggle-btn:hover{background-color:#e5e7eb;background-color:var(--color-gray-200)}.under-construction{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;padding:1.5rem;padding:var(--spacing-xl);text-align:center}.under-construction-icon{color:#d1d5db;color:var(--color-gray-300);margin-bottom:1rem;margin-bottom:var(--spacing-lg)}.under-construction-title{color:#374151;color:var(--color-gray-700);font-size:1.5rem;font-size:var(--text-2xl);font-weight:700;margin:0 0 .5rem;margin:0 0 var(--spacing-sm) 0}.under-construction-text{color:#6b7280;color:var(--color-gray-500);font-size:1.125rem;font-size:var(--text-lg);margin:0 0 .25rem;margin:0 0 var(--spacing-xs) 0}.under-construction-subtext{color:#9ca3af;color:var(--color-gray-400);font-size:.875rem;font-size:var(--text-sm);margin:0}.module-header-left h1{color:#1a5568;color:var(--color-primary);font-size:1.125rem;font-size:var(--text-lg);margin:0}.module-header-meta{color:#6b7280;color:var(--color-gray-500);font-size:.875rem;font-size:var(--text-sm)}.crud-btn:hover:not(.disabled){background-color:#e0f2f7;background-color:var(--color-primary-light);border-color:#1a5568;border-color:var(--color-primary)}.crud-btn.disabled{border-color:#e5e7eb;border-color:var(--color-gray-200);color:#d1d5db;color:var(--color-gray-300);cursor:not-allowed;opacity:.5}.module-header-left{align-items:center;display:flex;gap:1rem;gap:var(--spacing-lg)}.module-header-crud,.module-header-datasheet-controls{align-items:center;display:flex;gap:.25rem;gap:var(--spacing-xs)}.crud-btn{align-items:center;background:none;border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:50%;color:#1a5568;color:var(--color-primary);cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:all .15s ease;width:32px}.crud-btn:hover:not(.disabled):not(:disabled){background-color:#e0f2f7;background-color:var(--color-primary-light);border-color:#1a5568;border-color:var(--color-primary)}.crud-btn.disabled,.crud-btn:disabled{border-color:#e5e7eb;border-color:var(--color-gray-200);color:#d1d5db;color:var(--color-gray-300);cursor:not-allowed;opacity:.5}.module-header-edit-toggle{align-items:center;display:flex;gap:.5rem;gap:var(--spacing-sm)}.edit-toggle-btn{align-items:center;background:none;border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-gray-500);cursor:pointer;display:flex;font-size:.875rem;font-size:var(--text-sm);gap:.25rem;gap:var(--spacing-xs);padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm);transition:all .15s ease}.edit-toggle-btn:hover{border-color:#9ca3af;border-color:var(--color-gray-400);color:#374151;color:var(--color-gray-700)}.edit-toggle-btn.active{background-color:#e0f2f7;background-color:var(--color-primary-light);border-color:#1a5568;border-color:var(--color-primary);color:#1a5568;color:var(--color-primary)}.list-panel{border-right:1px solid #e5e7eb;border-right:1px solid var(--color-gray-200);display:flex;flex-direction:column;min-height:0;min-width:220px;padding:0;transition:width .2s ease,min-width .2s ease;width:220px}.list-panel-header{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:flex-end;padding:.5rem;padding:var(--spacing-sm)}.list-panel-collapse-btn{align-items:center;background:none;border:none;border-radius:.25rem;border-radius:var(--radius-sm);color:#9ca3af;color:var(--color-gray-400);cursor:pointer;display:flex;justify-content:center;padding:.25rem;padding:var(--spacing-xs);transition:all .15s ease}.list-panel-collapse-btn:hover{background-color:#f3f4f6;background-color:var(--color-gray-100);color:#4b5563;color:var(--color-gray-600)}.list-scroll{flex:1 1;overflow:hidden;padding:.5rem;padding:var(--spacing-sm)}.list-panel-collapsed{align-items:center;border-right:1px solid #e5e7eb;border-right:1px solid var(--color-gray-200);display:flex;flex-direction:column;min-width:40px;padding-top:.5rem;padding-top:var(--spacing-sm);width:40px}.list-panel-expand-btn{align-items:center;background:none;border:none;border-radius:.25rem;border-radius:var(--radius-sm);color:#9ca3af;color:var(--color-gray-400);cursor:pointer;display:flex;justify-content:center;padding:.25rem;padding:var(--spacing-xs);transition:all .15s ease}.list-panel-expand-btn:hover{background-color:#f3f4f6;background-color:var(--color-gray-100);color:#4b5563;color:var(--color-gray-600)}.list-view.list-collapsed .detail-panel{flex:1 1}.list-item-btn{background:#fff;background:var(--color-bg-white);border:none;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200);cursor:pointer;display:flex;flex-direction:column;gap:2px;min-height:44px;padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);text-align:left;width:100%}.list-item-btn:hover{background-color:#e0f2f7;background-color:var(--color-teal-50)}.list-item-btn.selected{background-color:#e0f2f7;background-color:var(--color-primary-light)}.list-item-primary{color:#1f2937;color:var(--color-gray-800);font-size:.875rem;font-size:var(--text-sm);font-weight:500;line-height:1.3}.list-item-secondary{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#6b7280;color:var(--color-gray-500);display:-webkit-box;font-size:.75rem;font-size:var(--text-xs);line-height:1.3;overflow:hidden}.detail-grid-24{grid-gap:.75rem;grid-gap:var(--spacing-md);display:grid;gap:.75rem;gap:var(--spacing-md);grid-template-columns:repeat(24,1fr);margin-bottom:1.5rem;margin-bottom:var(--spacing-xl)}.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}.col-span-5{grid-column:span 5}.col-span-6{grid-column:span 6}.col-span-7{grid-column:span 7}.col-span-8{grid-column:span 8}.col-span-9{grid-column:span 9}.col-span-10{grid-column:span 10}.col-span-11{grid-column:span 11}.col-span-12{grid-column:span 12}.col-span-13{grid-column:span 13}.col-span-14{grid-column:span 14}.col-span-15{grid-column:span 15}.col-span-16{grid-column:span 16}.col-span-17{grid-column:span 17}.col-span-18{grid-column:span 18}.col-span-19{grid-column:span 19}.col-span-20{grid-column:span 20}.col-span-21{grid-column:span 21}.col-span-22{grid-column:span 22}.col-span-23{grid-column:span 23}.col-span-24{grid-column:span 24}@media (max-width:1200px){.detail-grid-24{grid-template-columns:repeat(12,1fr)}.col-span-1,.col-span-2{grid-column:span 1}.col-span-3,.col-span-4{grid-column:span 2}.col-span-5,.col-span-6{grid-column:span 3}.col-span-7,.col-span-8{grid-column:span 4}.col-span-10,.col-span-9{grid-column:span 5}.col-span-11,.col-span-12{grid-column:span 6}.col-span-13,.col-span-14{grid-column:span 7}.col-span-15,.col-span-16{grid-column:span 8}.col-span-17,.col-span-18{grid-column:span 9}.col-span-19,.col-span-20{grid-column:span 10}.col-span-21,.col-span-22{grid-column:span 11}.col-span-23,.col-span-24{grid-column:span 12}}@media (max-width:768px){.detail-grid-24{grid-template-columns:1fr}.col-span-1,.col-span-10,.col-span-11,.col-span-12,.col-span-13,.col-span-14,.col-span-15,.col-span-16,.col-span-17,.col-span-18,.col-span-19,.col-span-2,.col-span-20,.col-span-21,.col-span-22,.col-span-23,.col-span-24,.col-span-3,.col-span-4,.col-span-5,.col-span-6,.col-span-7,.col-span-8,.col-span-9{grid-column:span 1}}.data-grid.edit-mode td.editable-cell{padding:2px 4px}.data-grid.edit-mode td.editable-cell input,.data-grid.edit-mode td.editable-cell select{background:#fff;border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:3px;font-family:inherit;font-size:inherit;padding:4px 6px;width:100%}.data-grid.edit-mode td.editable-cell input:focus,.data-grid.edit-mode td.editable-cell select:focus{border-color:#1a5568;border-color:var(--color-primary);box-shadow:0 0 0 2px #e0f2f7;box-shadow:0 0 0 2px var(--color-primary-light);outline:none}.data-grid.edit-mode td.editable-cell input[type=checkbox]{cursor:pointer;width:auto}.data-grid.edit-mode td.modified{background-color:#fef3c7!important;background-color:var(--color-warning-light)!important}.data-grid.edit-mode td.modified input,.data-grid.edit-mode td.modified select{background-color:#fef3c7;background-color:var(--color-warning-light);border-color:#d97706;border-color:var(--color-warning)}.data-grid td,.data-grid th{border-right:1px solid #0000000f}.data-grid td:last-child,.data-grid th:last-child{border-right:none}.data-grid-toolbar{background-color:#f9fafb;background-color:var(--color-gray-50);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200);justify-content:flex-end;left:0;min-width:-webkit-fit-content;min-width:fit-content;padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm);right:0;top:0;z-index:20}.data-grid-toolbar,.data-grid-toolbar-inner{align-items:center;display:flex;gap:.5rem;gap:var(--spacing-sm);position:-webkit-sticky;position:sticky}.data-grid-toolbar-inner{right:.5rem;right:var(--spacing-sm)}.column-settings-wrapper{position:relative}.column-settings-btn{align-items:center;background:none;border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-gray-500);cursor:pointer;display:flex;justify-content:center;padding:.25rem;padding:var(--spacing-xs);transition:all .15s ease}.column-settings-btn:hover{background-color:#f3f4f6;background-color:var(--color-gray-100);border-color:#9ca3af;border-color:var(--color-gray-400);color:#374151;color:var(--color-gray-700)}.column-settings-dropdown{background-color:#fff;background-color:var(--color-bg-white);border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);box-shadow:0 4px 6px #00000080;box-shadow:var(--shadow-md);display:flex;flex-direction:column;margin-top:.25rem;margin-top:var(--spacing-xs);max-height:300px;min-width:200px;position:absolute;right:0;top:100%;z-index:100}.column-settings-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200);color:#374151;color:var(--color-gray-700);display:flex;font-size:.875rem;font-size:var(--text-sm);font-weight:500;justify-content:space-between;padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md)}.column-settings-reset{background:none;border:none;border-radius:.25rem;border-radius:var(--radius-sm);color:#1a5568;color:var(--color-primary);cursor:pointer;font-size:.75rem;font-size:var(--text-xs);padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm)}.column-settings-reset:hover{background-color:#e0f2f7;background-color:var(--color-primary-light)}.column-settings-list{flex:1 1;overflow-y:auto;padding:.25rem 0;padding:var(--spacing-xs) 0}.column-settings-item{color:#374151;color:var(--color-gray-700);font-size:.875rem;font-size:var(--text-sm);gap:.25rem;gap:var(--spacing-xs);padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm);transition:background-color .1s ease}.column-settings-item:hover{background-color:#f3f4f6;background-color:var(--color-gray-100)}.column-settings-item.drag-over{background-color:#e0f2f7;background-color:var(--color-primary-light);border-top:2px solid #1a5568;border-top:2px solid var(--color-primary)}.column-settings-item:active{cursor:grabbing}.column-settings-item .drag-handle{color:#9ca3af;color:var(--color-gray-400);flex-shrink:0}.column-visibility-btn{align-items:center;background:none;border:none;border-radius:.25rem;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-gray-500);cursor:pointer;display:flex;justify-content:center;padding:2px}.column-visibility-btn:hover{background-color:#e5e7eb;background-color:var(--color-gray-200);color:#374151;color:var(--color-gray-700)}.column-settings-item .column-hidden{color:#9ca3af;color:var(--color-gray-400);text-decoration:line-through}.data-grid th.header-rotate-45,.data-grid th.header-rotate-90{height:auto;min-height:100px;padding-bottom:.5rem;padding-bottom:var(--spacing-sm);vertical-align:bottom}.data-grid th.header-rotate-45 .header-content{display:inline-block;padding-left:.75rem;padding-left:var(--spacing-md);transform:rotate(-45deg);transform-origin:bottom left;white-space:nowrap}.data-grid th.header-rotate-90 .header-content{display:block;text-orientation:mixed;transform:rotate(180deg);white-space:nowrap;writing-mode:vertical-rl}.data-grid .filter-row,.data-grid .filter-row-cell{background-color:#f9fafb;background-color:var(--color-gray-50)}.data-grid .filter-row-cell{border-bottom:1px solid #d1d5db;border-bottom:1px solid var(--color-gray-300);padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm)}.data-grid .filter-row-input{background-color:#fff;border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);font-size:.75rem;font-size:var(--text-xs);padding:4px 8px;width:100%}.data-grid .filter-row-input:focus{border-color:#1a5568;border-color:var(--color-primary);box-shadow:0 0 0 1px #e0f2f7;box-shadow:0 0 0 1px var(--color-primary-light);outline:none}.data-grid .filter-row-input::placeholder{color:#9ca3af;color:var(--color-gray-400)}.filter-toggle-btn{align-items:center;background:none;border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-gray-500);cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:all .15s ease;width:32px}.filter-toggle-btn:hover{border-color:#9ca3af;border-color:var(--color-gray-400);color:#374151;color:var(--color-gray-700)}.filter-toggle-btn.active{background-color:#1a5568;background-color:var(--color-primary);border-color:#1a5568;border-color:var(--color-primary);color:#fff}.datagrid-edit-toggle,.datagrid-edit-toggle .edit-toggle-btn{align-items:center;display:flex;gap:.25rem;gap:var(--spacing-xs)}.datagrid-edit-toggle .edit-toggle-btn{background:none;border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-gray-500);cursor:pointer;font-size:.875rem;font-size:var(--text-sm);padding:.375rem .5rem;padding:.375rem var(--spacing-sm);transition:all .15s ease}.datagrid-edit-toggle .edit-toggle-btn:hover{border-color:#9ca3af;border-color:var(--color-gray-400);color:#374151;color:var(--color-gray-700)}.datagrid-edit-toggle .edit-toggle-btn.active{background-color:#e0f2f7;background-color:var(--color-primary-light);border-color:#1a5568;border-color:var(--color-primary);color:#1a5568;color:var(--color-primary)}.datagrid-edit-toggle .crud-btn{height:28px;width:28px}.cell-boolean{text-align:center}.boolean-display{align-items:center;display:flex;justify-content:center;min-height:20px}.boolean-check{color:#059669;color:var(--color-success)}.related-tables-title{color:#4b5563;color:var(--color-gray-600);font-family:Rajdhani,Roboto Condensed,sans-serif;font-family:var(--font-secondary);font-size:.875rem;font-size:var(--text-sm);font-weight:600;letter-spacing:.5px;text-transform:uppercase}.related-tables-header{align-items:flex-end;border-bottom:2px solid #e5e7eb;border-bottom:2px solid var(--color-gray-200);display:flex;flex-shrink:0;justify-content:space-between;margin-bottom:.75rem;margin-bottom:var(--spacing-md)}.related-tables-header .filter-toggle-btn{height:28px;margin-bottom:.25rem;margin-bottom:var(--spacing-xs);width:28px}.related-tables-tabs{display:flex;gap:.25rem;gap:var(--spacing-xs)}.related-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:#6b7280;color:var(--color-gray-500);cursor:pointer;font-family:Rajdhani,Roboto Condensed,sans-serif;font-family:var(--font-secondary);font-size:.875rem;font-size:var(--text-sm);font-weight:500;margin-bottom:-2px;padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);transition:all .2s ease}.related-tab:hover{background-color:#f9fafb;background-color:var(--color-gray-50)}.related-tab.active,.related-tab:hover{color:#1a5568;color:var(--color-primary)}.related-tab.active{border-bottom-color:#1a5568;border-bottom-color:var(--color-primary);font-weight:600}.related-tab-count{color:#9ca3af;color:var(--color-gray-400);font-size:.75rem;font-size:var(--text-xs);margin-left:.25rem;margin-left:var(--spacing-xs)}.related-table-grid-container,.related-table-grid-container .data-grid-container{display:flex;flex:1 1;flex-direction:column;min-height:0}.related-table-grid-container .data-grid-container{border:none}.related-table-grid-container .data-grid-scroll-area{flex:1 1;min-height:0;overflow:auto}.related-grid-header{background-color:#f3f4f6;background-color:var(--color-gray-100);display:table-row}.related-grid-row{cursor:pointer;display:table-row}.related-grid-row:hover{background-color:#e0f2f7;background-color:var(--color-primary-light)}.related-grid-row:nth-child(2n){background-color:#f9fafb;background-color:var(--color-gray-50)}.related-grid-row:nth-child(2n):hover{background-color:#e0f2f7;background-color:var(--color-primary-light)}.related-grid-cell{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200);display:table-cell;font-size:.875rem;font-size:var(--text-sm);padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);vertical-align:middle}.related-grid-cell.header-cell{color:#374151;color:var(--color-gray-700);font-family:Rajdhani,Roboto Condensed,sans-serif;font-family:var(--font-secondary);font-size:.75rem;font-size:var(--text-xs);font-weight:600;letter-spacing:.5px;text-transform:uppercase}.related-grid-empty{color:#9ca3af;color:var(--color-gray-400);font-style:italic}.related-grid-empty,.related-grid-no-api{padding:1.5rem;padding:var(--spacing-xl);text-align:center}.related-grid-no-api{align-items:center;background-color:#f9fafb;background-color:var(--color-gray-50);border:1px dashed #d1d5db;border:1px dashed var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:.5rem;gap:var(--spacing-sm)}.related-grid-no-api .no-api-icon{font-size:24px;opacity:.6}.related-grid-no-api .no-api-text{color:#4b5563;color:var(--color-gray-600);font-weight:500}.related-grid-no-api .no-api-hint{color:#9ca3af;color:var(--color-gray-400);font-size:.875rem;font-size:var(--text-sm)}.related-tab.no-api{opacity:.7}.related-tab-pending{color:#d97706;color:var(--color-warning);font-weight:700;margin-left:4px}.fk-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1.5rem;padding:var(--spacing-xl);position:fixed;right:0;top:0;z-index:1000}.fk-modal{background:#fff;background:var(--color-bg-white);border-radius:.5rem;border-radius:var(--radius-md);box-shadow:0 25px 50px #00000040;display:flex;flex-direction:column;max-height:85vh;max-width:1200px;overflow:hidden;transition:transform .15s ease-out;width:90%}.fk-modal-header{align-items:center;background:#1a5568;background:var(--color-primary);color:#fff;display:flex;justify-content:space-between;min-height:48px;padding:.75rem 1rem;padding:var(--spacing-md) var(--spacing-lg)}.fk-modal-title{flex:1 1;min-width:0}.fk-modal-breadcrumb{font-family:Orbitron,Rajdhani,sans-serif;font-family:var(--font-primary);font-size:.875rem;font-size:var(--text-sm);font-weight:500}.breadcrumb-arrow{margin:0 2px;opacity:.6}.breadcrumb-parent{opacity:.7}.breadcrumb-current{font-weight:600}.fk-modal-actions{align-items:center;display:flex;gap:.5rem;gap:var(--spacing-sm)}.fk-modal-btn{align-items:center;background:#ffffff26;border:none;border-radius:.25rem;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;transition:background-color .15s;width:32px}.fk-modal-btn:hover{background:#ffffff40}.fk-modal-body{flex:1 1;overflow-y:auto;padding:1rem;padding:var(--spacing-lg)}.fk-modal-loading{color:#6b7280;color:var(--color-gray-500)}.fk-modal-loading,.fk-modal-not-found{align-items:center;display:flex;justify-content:center;padding:1.5rem;padding:var(--spacing-xl)}.fk-modal-not-found{color:#dc2626;color:var(--color-error);font-weight:500}.fk-modal-related{margin-top:1rem;margin-top:var(--spacing-lg)}.fk-modal-related .related-table-grid-container{max-height:250px;overflow-y:auto}.related-tab .tab-spinner{animation:spin 1s linear infinite;margin-left:6px}.related-tab.loading{opacity:.7}.related-grid-loading{align-items:center;color:#6b7280;color:var(--color-gray-500);display:flex;flex-direction:column;font-size:.875rem;font-size:var(--text-sm);gap:.5rem;gap:var(--spacing-sm);justify-content:center;padding:1.5rem;padding:var(--spacing-xl)}.related-grid-loading .spinning{animation:spin 1s linear infinite;color:#1a5568;color:var(--color-primary)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fk-modal-overlay:has(.fk-modal[style*="translate(15px"]){background-color:#0000008c}.fk-modal-overlay:has(.fk-modal[style*="translate(30px"]){background-color:#0009}.fk-modal-overlay:has(.fk-modal[style*="translate(45px"]){background-color:#000000a6}.list-panel:focus{outline:none}.list-panel:focus-visible{outline:2px solid #1a5568;outline:2px solid var(--color-primary);outline-offset:-2px}.action-menu{position:relative}.action-menu-btn{align-items:center;background:#fff;background:var(--color-bg-white);border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);color:#4b5563;color:var(--color-gray-600);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .15s ease;width:32px}.action-menu-btn:hover:not(.disabled){background:#e0f2f7;background:var(--color-primary-light);border-color:#1a5568;border-color:var(--color-primary);color:#1a5568;color:var(--color-primary)}.action-menu-btn.disabled{background:#f3f4f6;background:var(--color-gray-100);color:#d1d5db;color:var(--color-gray-300);cursor:not-allowed}.action-menu-dropdown{background:#fff;background:var(--color-bg-white);border:1px solid #e5e7eb;border:1px solid var(--color-gray-200);border-radius:.5rem;border-radius:var(--radius-md);box-shadow:0 4px 6px #00000080;box-shadow:var(--shadow-md);margin-top:4px;min-width:150px;overflow:hidden;position:absolute;right:0;top:100%;z-index:100}.action-menu-item{align-items:center;background:none;border:none;color:#374151;color:var(--color-gray-700);cursor:pointer;display:flex;font-family:Rajdhani,Roboto Condensed,sans-serif;font-family:var(--font-secondary);font-size:.875rem;font-size:var(--text-sm);gap:.5rem;gap:var(--spacing-sm);padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);text-align:left;transition:background-color .15s;width:100%}.action-menu-item:hover{background:#f3f4f6;background:var(--color-gray-100)}.action-menu-item-danger{color:#dc2626;color:var(--color-error)}.action-menu-item-danger:hover{background:#fee2e2;background:var(--color-error-light)}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1.5rem;padding:var(--spacing-xl);position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;background:var(--color-bg-white);border-radius:.5rem;border-radius:var(--radius-md);box-shadow:0 25px 50px #00000040;max-width:500px;min-width:400px}.download-modal .modal-header{align-items:center;background:#1a5568;background:var(--color-primary);border-radius:.5rem .5rem 0 0;border-radius:var(--radius-md) var(--radius-md) 0 0;color:#fff;display:flex;justify-content:space-between;padding:.75rem 1rem;padding:var(--spacing-md) var(--spacing-lg)}.download-modal .modal-header h3{color:#fff;font-family:Orbitron,Rajdhani,sans-serif;font-family:var(--font-primary);font-size:1rem;font-size:var(--text-base);font-weight:600;margin:0}.modal-close-btn{align-items:center;background:#ffffff26;border:none;border-radius:.25rem;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;height:28px;justify-content:center;transition:background-color .15s;width:28px}.modal-close-btn:hover{background:#ffffff40}.download-modal .modal-body{padding:1rem;padding:var(--spacing-lg)}.download-modal .form-group{margin-bottom:1rem;margin-bottom:var(--spacing-lg)}.download-modal .form-group:last-child{margin-bottom:0}.download-modal .form-group label{color:#374151;color:var(--color-gray-700);display:block;font-size:.875rem;font-size:var(--text-sm);font-weight:600;margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.download-modal .form-input{border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);font-family:Rajdhani,Roboto Condensed,sans-serif;font-family:var(--font-secondary);font-size:.875rem;font-size:var(--text-sm);padding:.5rem .75rem;padding:var(--spacing-sm) var(--spacing-md);transition:border-color .15s;width:100%}.download-modal .form-input:focus{border-color:#1a5568;border-color:var(--color-primary);outline:none}.download-modal .radio-group{display:flex;gap:1rem;gap:var(--spacing-lg)}.download-modal .radio-label{align-items:center;color:#4b5563;color:var(--color-gray-600);cursor:pointer;display:flex;font-size:.875rem;font-size:var(--text-sm);gap:.25rem;gap:var(--spacing-xs)}.download-modal .radio-label input[type=radio]{accent-color:#1a5568;accent-color:var(--color-primary)}.download-modal .radio-label svg{color:#6b7280;color:var(--color-gray-500)}.download-modal .modal-footer{background:#f9fafb;background:var(--color-gray-50);border-radius:0 0 .5rem .5rem;border-radius:0 0 var(--radius-md) var(--radius-md);border-top:1px solid #e5e7eb;border-top:1px solid var(--color-gray-200);display:flex;gap:.5rem;gap:var(--spacing-sm);justify-content:flex-end;padding:.75rem 1rem;padding:var(--spacing-md) var(--spacing-lg)}.download-modal .btn{border:none;border-radius:.25rem;border-radius:var(--radius-sm);cursor:pointer;font-family:Rajdhani,Roboto Condensed,sans-serif;font-family:var(--font-secondary);font-size:.875rem;font-size:var(--text-sm);font-weight:600;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-lg);transition:all .15s}.download-modal .btn-secondary{background:#e5e7eb;background:var(--color-gray-200);color:#374151;color:var(--color-gray-700)}.download-modal .btn-secondary:hover{background:#d1d5db;background:var(--color-gray-300)}.download-modal .btn-primary{background:#1a5568;background:var(--color-primary);color:#fff}.download-modal .btn-primary:hover{background:#2d7a8c;background:var(--color-primary-hover)}.column-settings-modal{max-width:450px;min-width:350px}.column-settings-modal .modal-header h3{color:#fff}.column-settings-modal .modal-body{max-height:400px;overflow-y:auto;padding:1rem;padding:var(--spacing-lg)}.column-settings-hint{color:#6b7280;color:var(--color-gray-500);font-size:.875rem;font-size:var(--text-sm);margin:0 0 .75rem;margin:0 0 var(--spacing-md) 0}.column-settings-list{display:flex;flex-direction:column;gap:2px}.column-settings-item{align-items:center;background:#f9fafb;background:var(--color-gray-50);border:1px solid #e5e7eb;border:1px solid var(--color-gray-200);border-radius:.25rem;border-radius:var(--radius-sm);cursor:grab;display:flex;gap:.5rem;gap:var(--spacing-sm);padding:.5rem;padding:var(--spacing-sm) var(--spacing-sm);transition:all .15s}.column-settings-item:hover{background:#f3f4f6;background:var(--color-gray-100);border-color:#d1d5db;border-color:var(--color-gray-300)}.column-settings-item.dragging{background:#e0f2f7;background:var(--color-primary-light);border-color:#1a5568;border-color:var(--color-primary);opacity:.5}.column-settings-item.hidden-column{opacity:.6}.column-settings-item.hidden-column .column-label{color:#9ca3af;color:var(--color-gray-400);text-decoration:line-through}.column-drag-handle{color:#9ca3af;color:var(--color-gray-400);cursor:grab}.column-drag-handle:active{cursor:grabbing}.column-label{color:#374151;color:var(--color-gray-700);flex:1 1;font-size:.875rem;font-size:var(--text-sm);font-weight:500}.column-actions{align-items:center;display:flex;gap:2px}.column-move-btn,.column-visibility-btn{align-items:center;background:#0000;border:none;border-radius:.25rem;border-radius:var(--radius-sm);color:#6b7280;color:var(--color-gray-500);cursor:pointer;display:flex;height:24px;justify-content:center;transition:all .15s;width:24px}.column-move-btn:hover:not(:disabled),.column-visibility-btn:hover{background:#e5e7eb;background:var(--color-gray-200);color:#374151;color:var(--color-gray-700)}.column-move-btn:disabled{color:#d1d5db;color:var(--color-gray-300);cursor:not-allowed}.column-visibility-btn.is-hidden{color:#9ca3af;color:var(--color-gray-400)}.column-settings-modal .modal-footer{align-items:center;background:#f9fafb;background:var(--color-gray-50);border-radius:0 0 .5rem .5rem;border-radius:0 0 var(--radius-md) var(--radius-md);border-top:1px solid #e5e7eb;border-top:1px solid var(--color-gray-200);display:flex;justify-content:space-between;padding:.75rem 1rem;padding:var(--spacing-md) var(--spacing-lg)}.modal-footer-right{display:flex;gap:.5rem;gap:var(--spacing-sm)}.column-settings-modal .btn{border:none;border-radius:.25rem;border-radius:var(--radius-sm);cursor:pointer;font-family:Rajdhani,Roboto Condensed,sans-serif;font-family:var(--font-secondary);font-size:.875rem;font-size:var(--text-sm);font-weight:600;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-lg);transition:all .15s}.column-settings-modal .btn-text{background:#0000;color:#4b5563;color:var(--color-gray-600);padding-left:0}.column-settings-modal .btn-text:hover{color:#1f2937;color:var(--color-gray-800)}.column-settings-modal .btn-secondary{background:#e5e7eb;background:var(--color-gray-200);color:#374151;color:var(--color-gray-700)}.column-settings-modal .btn-secondary:hover{background:#d1d5db;background:var(--color-gray-300)}.column-settings-modal .btn-primary{background:#1a5568;background:var(--color-primary);color:#fff}.column-settings-modal .btn-primary:hover{background:#2d7a8c;background:var(--color-primary-hover)}.searchselect-trigger{align-items:center;background:#fff;border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.25rem;border-radius:var(--radius-sm);cursor:pointer;display:flex;font-family:inherit;font-size:inherit;justify-content:space-between;min-height:32px;padding:4px 8px}.searchselect-trigger:hover:not(.disabled){border-color:#2d7a8c;border-color:var(--color-primary-hover)}.searchselect-trigger.open{border-color:#1a5568;border-color:var(--color-primary);box-shadow:0 0 0 2px #e0f2f7;box-shadow:0 0 0 2px var(--color-primary-light)}.searchselect-trigger.disabled{background:#f3f4f6;background:var(--color-gray-100);color:#6b7280;color:var(--color-gray-500);cursor:not-allowed}.searchselect-trigger.dirty{background-color:#fffde7;border-color:#f9a825}.searchselect-value{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.searchselect-chevron,.searchselect-value.placeholder{color:#9ca3af;color:var(--color-gray-400)}.searchselect-chevron{flex-shrink:0;margin-left:4px}.searchselect-dropdown{background:#fff;border:1px solid #d1d5db;border:1px solid var(--color-gray-300);border-radius:.5rem;border-radius:var(--radius-md);box-shadow:0 4px 6px #00000080;box-shadow:var(--shadow-md);display:flex;flex-direction:column;max-height:280px}.searchselect-search{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200);display:flex;gap:8px;padding:8px}.searchselect-search-icon{color:#9ca3af;color:var(--color-gray-400);flex-shrink:0}.searchselect-search-input{border:none;flex:1 1;font-family:inherit;font-size:.875rem;font-size:var(--text-sm);outline:none;padding:4px}.searchselect-search-input::placeholder{color:#9ca3af;color:var(--color-gray-400)}.searchselect-options{flex:1 1;max-height:220px;overflow-y:auto}.searchselect-option{align-items:center;cursor:pointer;display:flex;gap:8px;padding:8px 12px}.searchselect-option:hover{background:#f3f4f6;background:var(--color-gray-100)}.searchselect-option.selected{background:#e0f2f7;background:var(--color-primary-light)}.searchselect-option-check{align-items:center;color:#1a5568;color:var(--color-primary);display:flex;flex-shrink:0;height:16px;justify-content:center;width:16px}.searchselect-option-text{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.searchselect-clear{border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--color-gray-100)}.searchselect-clear,.searchselect-empty{color:#6b7280;color:var(--color-gray-500);font-style:italic}.searchselect-empty{padding:16px;text-align:center}.data-grid.edit-mode td.editable-cell .searchselect-trigger{border:1px solid #d1d5db;border:1px solid var(--color-gray-300);min-height:auto;padding:4px 6px;width:100%}.form-group .searchselect-trigger{width:100%}.delete-checkbox-col{background-color:#e5e7eb;background-color:var(--color-gray-200);padding:0!important;text-align:center;width:40px}.delete-checkbox-col input[type=checkbox]{accent-color:#dc2626;accent-color:var(--color-error);cursor:pointer;height:16px;width:16px}.data-grid.delete-mode tr.selected-for-delete td{background-color:#fee2e2!important;background-color:var(--color-error-light)!important}.data-grid.delete-mode tr.selected-for-delete:hover td{background-color:#fecaca!important}.crud-btn.delete-btn:not(.disabled):not(:disabled){border-color:#dc2626;border-color:var(--color-error);color:#dc2626;color:var(--color-error)}.crud-btn.delete-btn:not(.disabled):not(:disabled):hover{background-color:#fee2e2;background-color:var(--color-error-light)}.splash-screen{align-items:center;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;transition:opacity .7s ease-out;width:100vw;z-index:10000}.splash-fade-out{opacity:0}.splash-sky{animation:splash-sunrise 3s ease-out forwards;background:linear-gradient(180deg,#0a0e1a 0,#1a1040 20%,#3a1555 35%,#8b2a4a 50%,#d4603a 65%,#f0a050 80%,#ffe8a0 95%);inset:0;position:absolute}@keyframes splash-sunrise{0%{filter:brightness(.3)}to{filter:brightness(1)}}.splash-star{animation:splash-shooting-star 1.2s ease-in .8s forwards;background:#fff;border-radius:50%;box-shadow:0 0 6px 2px #fffc,0 0 20px 4px #c8dcff66;height:3px;left:-5%;opacity:0;position:absolute;top:18%;width:3px}.splash-star:after{background:linear-gradient(270deg,#fffc,#0000);content:"";height:1px;position:absolute;right:100%;top:50%;transform:translateY(-50%);width:80px}@keyframes splash-shooting-star{0%{opacity:0;transform:translate(0)}10%{opacity:1}80%{opacity:1}to{opacity:0;transform:translate(45vw,18vh)}}.splash-content{animation:splash-content-fade 1.5s ease-out .3s both;position:relative;text-align:center;z-index:1}@keyframes splash-content-fade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.splash-logo{filter:drop-shadow(0 2px 8px rgba(0,0,0,.3));margin-bottom:24px;width:200px}.splash-brand{color:#fff;font-size:48px;font-weight:300;letter-spacing:12px;margin:0 0 8px;text-shadow:0 2px 20px #0000004d;text-transform:uppercase}.splash-tagline{color:#ffffffb3;font-size:14px;letter-spacing:3px;margin:0;text-transform:uppercase}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:#0003;--rc-drag-bar-size:6px;--rc-border-color:#ffffffb3;--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;display:inline-block;max-width:100%;position:relative}.ReactCrop *,.ReactCrop :after,.ReactCrop :before{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-height:inherit;max-width:100%}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{bottom:0;height:calc(100% + .5px);left:0;pointer-events:none;position:absolute;right:0;top:0;width:calc(100% + .5px)}.ReactCrop__crop-selection{cursor:move;left:0;position:absolute;top:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{border:1px solid #ffffffb3;border:1px solid var(--rc-border-color);bottom:-1px;content:"";left:-1px;opacity:.3;pointer-events:none;position:absolute;right:-1px;top:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;color:#fff}.ReactCrop__crop-selection:focus{outline:2px solid #08f;outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{background-color:#fff6;content:"";display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{height:100%;width:1px}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before{height:1px;width:100%}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{background-color:#0003;background-color:var(--rc-drag-handle-bg-colour);border:1px solid #ffffffb3;border:1px solid var(--rc-border-color);height:12px;height:var(--rc-drag-handle-size);position:absolute;width:12px;width:var(--rc-drag-handle-size)}.ReactCrop__drag-handle:focus{background:#08f;background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;left:0}.ReactCrop .ord-n,.ReactCrop .ord-nw{top:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;left:50%}.ReactCrop .ord-ne{cursor:ne-resize;top:0}.ReactCrop .ord-e,.ReactCrop .ord-ne{right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%}.ReactCrop .ord-se{bottom:0;cursor:se-resize;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;left:50%}.ReactCrop .ord-s,.ReactCrop .ord-sw{bottom:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;left:0}.ReactCrop .ord-w{cursor:w-resize;left:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{height:6px;height:var(--rc-drag-bar-size);left:0;top:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:100%}.ReactCrop__drag-bar.ord-e{height:100%;right:0;top:0;-webkit-transform:translate(50%);transform:translate(50%);width:6px;width:var(--rc-drag-bar-size)}.ReactCrop__drag-bar.ord-s{bottom:0;height:6px;height:var(--rc-drag-bar-size);left:0;-webkit-transform:translateY(50%);transform:translateY(50%);width:100%}.ReactCrop__drag-bar.ord-w{height:100%;left:0;top:0;-webkit-transform:translate(-50%);transform:translate(-50%);width:6px;width:var(--rc-drag-bar-size)}.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w,.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle{display:none}@media (pointer:coarse){.ReactCrop .ord-e,.ReactCrop .ord-n,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{height:24px;height:var(--rc-drag-handle-mobile-size);width:24px;width:var(--rc-drag-handle-mobile-size)}}
/*# sourceMappingURL=main.cc271c58.css.map*/