body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--dark-bg:#121212;--dark-surface:#1e1e1e;--dark-surface-lighter:#2a2a2a;--dark-border:#3a3a3a;--dark-text:#e0e0e0;--dark-text-secondary:#b0b0b0;--primary-blue:#4a90e2;--primary-blue-hover:#3a80d2;--success-green:#28a745;--error-red:#dc3545;--button-bg:#4169e1;--button-hover:#345bd3;--modal-bg:#000000bf;--tooltip-icon-bg:#3a6ea5;--tooltip-icon-text:#fff;--tooltip-content-bg:#2c3e50;--tooltip-content-border:#4a90e2;--tooltip-content-text:#e0e0e0;--tooltip-shadow:#4980c040}body{background-color:#121212;background-color:var(--dark-bg);color:#e0e0e0;color:var(--dark-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;margin:0;padding:0}.App{margin:0 auto;max-width:95vw;overflow-x:hidden;padding:20px}.App-header{justify-content:space-between;margin-bottom:40px;text-align:center}.App-header,.header-controls{align-items:center;display:flex}.header-controls{gap:10px}.upload-button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .3s}.upload-button:hover{background-color:#45a049}.file-indicator{color:#4caf50;font-size:14px;font-weight:700}.App-header h1{color:#e0e0e0;color:var(--dark-text);font-size:2rem;margin-bottom:.5rem}.view-mode-links{background-color:#4a90e21a;border:1px solid #4a90e233;border-radius:8px;display:none;gap:20px;justify-content:center;margin-top:15px;padding:10px}.view-mode-links a{border-radius:4px;color:#4a90e2!important;color:var(--primary-blue)!important;font-weight:500;padding:8px 16px;text-decoration:none!important;transition:all .3s ease}.view-mode-links a:hover{background-color:#4a90e233;color:#3a80d2!important;color:var(--primary-blue-hover)!important}.view-mode-links a.active{background-color:#4a90e2;background-color:var(--primary-blue);color:#fff!important}@media (max-width:768px){.view-mode-links{flex-direction:column;gap:10px;padding:15px}.view-mode-links a{padding:12px 16px;text-align:center}}main{grid-gap:40px;display:grid;gap:40px}@media (min-width:992px){main{grid-template-columns:1fr 1fr}}.form-container{background-color:#1e1e1e;background-color:var(--dark-surface);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:8px;box-shadow:0 4px 12px #0000004d;box-sizing:border-box;margin:0 auto;max-width:75vw;overflow-x:hidden;padding:32px;width:100%}.form-container h2{border-bottom:1px solid #3a3a3a;border-bottom:1px solid var(--dark-border);color:#e0e0e0;color:var(--dark-text);font-size:1.5rem;font-weight:500;margin-bottom:20px;margin-top:0;padding-bottom:10px}.form-group{margin-bottom:24px;position:relative}.form-group label{color:#b0b0b0;color:var(--dark-text-secondary);display:block;font-size:.9rem;font-weight:500;margin-bottom:8px}.form-group span.required{color:#dc3545;color:var(--error-red);margin-left:5px}.form-group input,.form-group select,.form-group textarea{background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:4px;color:#e0e0e0;color:var(--dark-text);font-size:16px;padding:12px;transition:border-color .3s,box-shadow .3s}.form-group input[required],.form-group select[required],.form-group textarea[required],.role-field input[required]{background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border-color:#3a3a3a;border-color:var(--dark-border)}.date-input:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.subfield-input:focus,.tag-input-row input:focus{border-color:#4a90e2;border-color:var(--primary-blue);box-shadow:0 0 0 2px #4a90e240;outline:none}textarea{min-height:60px;resize:vertical}select{-webkit-appearance:none;appearance:none;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='%23b0b0b0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px}.form-action-buttons{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.cancel-button,.submit-button{border-radius:4px;cursor:pointer;font-size:16px;font-weight:500;padding:12px 20px;transition:background-color .3s}.submit-button{background-color:#4169e1;background-color:var(--button-bg);border:none;color:#fff}.submit-button:hover{background-color:#345bd3;background-color:var(--button-hover)}.submit-button:disabled{background-color:#3a3a3a;background-color:var(--dark-border);cursor:not-allowed}.form-container .submit-button{background-color:#4169e1;background-color:var(--button-bg)}.cancel-button{background-color:initial;border:1px solid #3a3a3a;border:1px solid var(--dark-border);color:#e0e0e0;color:var(--dark-text)}.cancel-button:hover{background-color:#ffffff1a}.success-message{background-color:#28a74533;border:1px solid #28a7454d;border-radius:4px;color:#5bcc7a;margin-bottom:16px;padding:12px}.error-message{background-color:#dc354533;border:1px solid #dc35454d;border-radius:4px;color:#ee7783;line-height:1.5;margin-bottom:16px;max-height:200px;overflow-y:auto;padding:12px;white-space:pre-line}.data-table-container{background-color:#1e1e1e;background-color:var(--dark-surface);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:8px;box-shadow:0 4px 12px #0000004d;box-sizing:border-box;padding:24px;width:100%}.table-header{align-items:center;border-bottom:1px solid #3a3a3a;border-bottom:1px solid var(--dark-border);display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:10px;padding-right:16px}.table-header h2{color:#e0e0e0;color:var(--dark-text);font-size:1.5rem;font-weight:500;margin:0}.table-actions{display:flex;gap:10px}.clear-button,.download-button{border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .3s}.download-button{background-color:#28a745;background-color:var(--success-green);border:none;color:#fff}.download-button:hover{background-color:#218838}.download-button:disabled{background-color:#264d33;cursor:not-allowed}.download-button.semantic-export{background-color:#2196f3;margin-left:8px}.download-button.semantic-export:hover{background-color:#1976d2}.download-button.semantic-export:disabled{background-color:#1565c0;cursor:not-allowed}.modal-body.turtle-mode{max-height:70vh;overflow-y:auto;padding:20px}.turtle-form-container{width:100%}.turtle-textarea{border:2px solid #3a3a3a;border:2px solid var(--dark-border);border-radius:4px;box-sizing:border-box;color:var(--text-color);font-family:Courier New,monospace;line-height:1.4;min-height:400px;padding:12px;resize:vertical;width:100%}.turtle-textarea:focus{border-color:var(--primary-color)}.turtle-textarea::placeholder{color:#888;font-style:italic}.clear-button{background-color:#dc3545;background-color:var(--error-red);border:none;color:#fff}.clear-button:disabled,.clear-button:hover{background-color:#5c2a30}.clear-button:disabled{cursor:not-allowed}.table-scroll{overflow-x:auto}.data-table{border-collapse:initial;border-spacing:0;min-width:600px;width:100%}.data-table td,.data-table th{padding:12px 16px;text-align:left}.data-table th{background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border-bottom:1px solid #3a3a3a;border-bottom:1px solid var(--dark-border);color:#b0b0b0;color:var(--dark-text-secondary);font-size:.8rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.data-table tbody tr{transition:background-color .3s}.data-table tbody tr:hover{background-color:#ffffff0d}.data-table td{border-bottom:1px solid #3a3a3a;border-bottom:1px solid var(--dark-border);color:#e0e0e0;color:var(--dark-text)}.browser-info{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-data{color:#b0b0b0;color:var(--dark-text-secondary);font-style:italic;padding:30px 0;text-align:center}.modal-overlay{align-items:center;background-color:#000000bf;background-color:var(--modal-bg);bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background-color:#1e1e1e;background-color:var(--dark-surface);border-radius:8px;box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0003;display:flex;flex-direction:column;max-height:90vh;max-width:75vw;overflow:hidden;width:75%}.modal-content.with-ai-panel{max-width:85vw}.modal-content.turtle-mode-wide{max-width:90vw;width:90%}.resize-handle{background:#0000;transition:background .2s}.resize-handle:hover{background:#4169e14d}.resize-handle.resize-se{background:#0000;bottom:0;position:absolute;right:0}.resize-handle.resize-se:after{border-color:#0000 #0000 #ffffff4d;border-style:solid;border-width:0 0 12px 12px;bottom:2px;content:"";height:0;position:absolute;right:2px;width:0}.resize-handle.resize-se:hover:after{border-color:#0000 #0000 #4169e199}.modal-content-wrapper{display:flex;flex:1 1;overflow:visible}.form-panel{flex:1 1;overflow-y:auto;padding-right:12px}.ai-suggestions-panel{align-self:flex-start;background-color:#121212;background-color:var(--dark-bg);border-left:1px solid #3a3a3a;border-left:1px solid var(--dark-border);display:flex;flex-direction:column;max-height:100vh;position:-webkit-sticky;position:sticky;top:0;width:355px}.ai-panel-overlay{align-items:center;animation:fadeIn .2s ease-in;background-color:#000000d9;bottom:0;display:flex;justify-content:center;left:0;padding:40px;position:fixed;right:0;top:0;z-index:2000}.ai-panel-expanded-container{animation:slideIn .3s ease-out;border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:8px;box-shadow:0 20px 60px #00000080;flex-direction:column;height:80vh;max-height:800px;max-width:90vw;width:800px}.ai-panel-expanded-container,.ai-panel-header{background-color:#1e1e1e;background-color:var(--dark-surface);display:flex}.ai-panel-header{align-items:flex-start;border-bottom:1px solid #3a3a3a;border-bottom:1px solid var(--dark-border);justify-content:space-between;padding:16px}.ai-panel-header-left{flex:1 1}.ai-panel-header h3{color:#e0e0e0;color:var(--dark-text);font-size:1.1rem;margin:0 0 8px}.active-field-indicator{color:#b0b0b0;color:var(--dark-text-secondary);font-size:.9rem}.ai-panel-expand-button{background:#4169e133;border:1px solid #4a90e2;border:1px solid var(--primary-blue);border-radius:4px;color:#4a90e2;color:var(--primary-blue);cursor:pointer;flex-shrink:0;font-size:12px;margin-left:12px;padding:6px 12px;transition:all .2s ease;white-space:nowrap}.ai-panel-expand-button:hover{background:#4169e14d;transform:scale(1.05)}.ai-panel-expand-button:active{transform:scale(.95)}.ai-panel-expanded-container .ai-panel-header{background-color:#121212;background-color:var(--dark-bg);border-bottom:2px solid #4a90e2;border-bottom:2px solid var(--primary-blue);flex-shrink:0;padding:20px 24px}.ai-panel-expanded-container .ai-panel-header h3{font-size:1.3rem;margin-bottom:10px}.ai-panel-expanded-container .ai-panel-content{background:#1e1e1e;background:var(--dark-surface);flex:1 1;overflow-y:auto;padding:24px}.ai-panel-close-button{background:#dc3545;background:var(--error-red);border:none;border-radius:4px;color:#fff;cursor:pointer;flex-shrink:0;font-size:13px;margin-left:12px;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.ai-panel-close-button:hover{background:#c82333;transform:scale(1.05)}.ai-panel-close-button:active{transform:scale(.95)}.ai-panel-content{background:linear-gradient(#121212 30%,#0000) top,linear-gradient(#0000,#121212 70%) bottom,radial-gradient(farthest-side at 50% 0,#00000080,#0000) top,radial-gradient(farthest-side at 50% 100%,#00000080,#0000) bottom;background:linear-gradient(var(--dark-bg) 30%,#0000) top,linear-gradient(#0000,var(--dark-bg) 70%) bottom,radial-gradient(farthest-side at 50% 0,#00000080,#0000) top,radial-gradient(farthest-side at 50% 100%,#00000080,#0000) bottom;background-attachment:local,local,scroll,scroll;background-repeat:no-repeat;background-size:100% 40px,100% 40px,100% 14px,100% 14px;flex:1 1;min-height:0;overflow-x:hidden;overflow-y:scroll!important;padding:16px;position:relative;scrollbar-color:#4169e1 #1a1a1a;scrollbar-width:auto}.ai-panel-content::-webkit-scrollbar{height:14px;width:14px}.ai-panel-content::-webkit-scrollbar-track{background:#1a1a1a;border-left:1px solid #333}.ai-panel-content::-webkit-scrollbar-thumb{background:#4169e1;border:2px solid #1a1a1a;border-radius:7px;min-height:50px}.ai-panel-content::-webkit-scrollbar-thumb:hover{background:#5a89ff}.ai-panel-content::-webkit-scrollbar-thumb:active{background:#3153c9}.ai-panel-content::-webkit-scrollbar-corner{background:#1a1a1a}.ai-scroll-indicator{align-items:center;background:linear-gradient(0deg,#121212f2 0,#0000);bottom:0;display:flex;height:50px;justify-content:center;left:0;pointer-events:none;position:absolute;right:0;transition:opacity .3s ease;z-index:10}.ai-scroll-indicator-icon{animation:bounce 2s infinite;color:#4169e1;font-size:24px}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.ai-waiting-message{color:#666;font-style:italic;padding:20px;text-align:center}.processing-overlay{align-items:center;background-color:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:10000}.processing-content{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;max-width:400px;padding:40px;text-align:center;width:90%}.processing-content h3{color:#333;font-size:24px;margin:20px 0 10px}.processing-content p{color:#666;font-size:16px;margin:0 0 20px}.processing-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:50px;margin:0 auto;width:50px}.processing-timer{color:#007bff;font-family:Courier New,monospace;font-size:14px;font-weight:700;margin-top:15px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.suggestions-header{color:#b0b0b0;color:var(--dark-text-secondary);font-size:.9rem;font-style:italic;margin-bottom:12px}.ai-suggestions-list{display:flex;flex-direction:column;gap:8px}.suggestion-card{background-color:#1e1e1e;background-color:var(--dark-surface);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:12px;margin-bottom:16px;overflow:hidden;transition:all .2s ease}.suggestion-card:hover{border-color:#4a90e2;border-color:var(--primary-blue);box-shadow:0 4px 12px #4a90e226;transform:translateY(-2px)}.suggestion-value{background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border:none;border-bottom:1px solid #3a3a3a;border-bottom:1px solid var(--dark-border);color:#e0e0e0;color:var(--dark-text);cursor:pointer;font-size:1rem;font-weight:600;padding:16px 20px;transition:all .2s ease}.suggestion-value:hover{background-color:#4a90e2;background-color:var(--primary-blue);color:#fff}.add-all-container{border-bottom:2px solid #3a3a3a;border-bottom:2px solid var(--dark-border);margin-bottom:16px;padding-bottom:16px}.add-all-button{background:linear-gradient(135deg,#4a90e2,#5a8fd9);background:linear-gradient(135deg,var(--primary-blue) 0,#5a8fd9 100%);border:none;border-radius:8px;box-shadow:0 2px 8px #4a90e24d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 20px;transition:all .2s ease;width:100%}.add-all-button:hover{background:linear-gradient(135deg,#5a8fd9,#4a90e2);background:linear-gradient(135deg,#5a8fd9 0,var(--primary-blue) 100%);box-shadow:0 4px 12px #4a90e266;transform:translateY(-2px)}.add-all-button:active{transform:translateY(0)}.llm-mode-toggle-container{background-color:#1e1e1e;background-color:var(--dark-surface);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:8px;margin:16px 0;padding:12px}.llm-mode-toggle-label{align-items:center;cursor:pointer;display:flex;gap:12px;-webkit-user-select:none;user-select:none}.llm-mode-checkbox{accent-color:#4a90e2;accent-color:var(--primary-blue);cursor:pointer;height:20px;width:20px}.llm-mode-text{color:#e0e0e0;color:var(--dark-text);font-size:1rem;font-weight:500}.llm-mode-toggle-label:hover .llm-mode-text{color:#4a90e2;color:var(--primary-blue)}.prompt-preview-section{background-color:#1e1e1e;background-color:var(--dark-surface);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:8px;margin:12px 0;overflow:hidden}.prompt-preview-toggle{align-items:center;background:#2a2a2a;background:var(--dark-surface-lighter);border:none;color:#e0e0e0;color:var(--dark-text);cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;padding:12px 16px;text-align:left;transition:background-color .2s ease;width:100%}.prompt-preview-toggle:hover{background-color:#1e1e1e;background-color:var(--dark-surface);color:#4a90e2;color:var(--primary-blue)}.prompt-preview-content{background-color:#121212;background-color:var(--dark-bg);border-top:1px solid #3a3a3a;border-top:1px solid var(--dark-border);max-height:400px;overflow-y:auto}.prompt-preview-content pre{word-wrap:break-word;color:#b0b0b0;color:var(--dark-text-secondary);font-family:Monaco,Courier New,monospace;font-size:.85rem;line-height:1.6;margin:0;padding:16px;white-space:pre-wrap}.suggestion-explanation{color:#b0b0b0;color:var(--dark-text-secondary);font-size:.9rem;font-style:italic;line-height:1.5;padding:12px 20px}.no-answers-found,.suggestion-explanation{background-color:#1e1e1e;background-color:var(--dark-surface)}.no-answers-found{border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:8px;padding:20px;text-align:center}.no-answers-title{color:#e0e0e0;color:var(--dark-text);font-size:1rem;font-weight:600;margin-bottom:12px}.no-answers-explanation{color:#b0b0b0;color:var(--dark-text-secondary);font-size:.9rem;font-style:italic;line-height:1.5}.ai-panel-placeholder{font-style:italic}.ai-panel-placeholder,.waiting-for-narrative-message{color:#b0b0b0;color:var(--dark-text-secondary);padding:40px 20px;text-align:center}.waiting-icon{font-size:3rem;margin-bottom:16px}.waiting-text strong{color:#e0e0e0;color:var(--dark-text);display:block;font-size:1.1rem;margin-bottom:12px}.waiting-text p{font-style:italic;line-height:1.5;margin:0}.large-modal .modal-content{max-width:80vw}.modal-header{align-items:center;border-bottom:1px solid #3a3a3a;border-bottom:1px solid var(--dark-border);display:flex;flex-shrink:0;justify-content:space-between;padding:10px 24px}.modal-header-controls{align-items:flex-start;display:flex;gap:12px;justify-content:flex-end}.upload-section{display:flex;flex-direction:column;gap:8px}.upload-controls{align-items:center;display:flex;gap:12px}.upload-status{align-items:flex-end;display:flex;flex-direction:column;gap:6px;justify-content:flex-start;min-height:60px}.processing-indicator{animation:pulse 1.5s ease-in-out infinite alternate;color:orange;font-size:.9rem;font-weight:500}.suggestions-ready-indicator{color:#28a745;font-size:12px;font-weight:500;margin-left:10px}.processing-stats{align-items:flex-end;background-color:#000000b3;border:1px solid #ffffff1a;border-radius:6px;display:flex;flex-direction:column;gap:4px;min-width:200px;padding:8px}.openai-time-text,.processing-time-text{color:#ccc;font-family:Arial,sans-serif;font-size:11px;font-weight:400}.bypass-validation-container{margin-top:12px;text-align:center}.bypass-validation-container .checkbox-wrapper{align-items:center;color:#b0b0b0;color:var(--dark-text-secondary);display:flex;font-size:14px;gap:8px;justify-content:center}.bypass-validation-container .checkbox-wrapper input[type=checkbox]{height:16px;margin:0;width:16px}.bypass-validation-container .checkbox-label{color:#b0b0b0;color:var(--dark-text-secondary);font-size:14px}.modal-header h2{color:#e0e0e0;color:var(--dark-text);font-size:1.5rem;margin:0}.modal-close-button{align-items:center;background:none;border:none;color:#b0b0b0;color:var(--dark-text-secondary);cursor:pointer;display:flex;font-size:24px;justify-content:center;line-height:1;margin-left:16px;padding:0}.modal-body{max-height:calc(95vh - 130px);overflow-y:auto;overscroll-behavior:contain}.modal-body,.modal-body.with-ai-panel{padding:16px 24px 24px}.large-modal .modal-body{max-height:calc(95vh - 130px)}.modal-body>form>.form-group:first-of-type{margin-top:8px;padding-top:8px}.modal-footer{border-top:1px solid #3a3a3a;border-top:1px solid var(--dark-border);flex-shrink:0;gap:12px;justify-content:flex-end;padding:16px 24px}@media (min-height:1000px){.modal-content{max-height:80vh}.modal-body{max-height:calc(80vh - 130px)}}@media (max-width:768px){.modal-overlay{padding:10px}.modal-content{max-height:95vh;width:95%}.modal-body{max-height:calc(95vh - 120px);padding:16px}.modal-footer,.modal-header{padding:12px 16px}}.file-upload{position:relative}.file-upload-label{align-items:center;background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:4px;cursor:pointer;display:flex;justify-content:space-between;padding:12px}.file-upload-input{cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.file-name{color:#b0b0b0;color:var(--dark-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.browse-button{background-color:#ffffff1a;border:none;border-radius:4px;color:#e0e0e0;color:var(--dark-text);cursor:pointer;font-size:14px;padding:8px 16px}.form-row{display:flex;gap:16px;margin-bottom:16px}.half-width{flex:1 1;min-width:0}.array-item{align-items:center;display:flex;gap:8px;margin-bottom:8px}.array-item input,.array-item select,.array-item textarea{flex:1 1;min-width:0}.add-button{background-color:#4a90e2;background-color:var(--primary-blue);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;margin-top:8px;padding:8px 12px;transition:background-color .3s}.add-button:hover{background-color:#3a80d2;background-color:var(--primary-blue-hover)}.edit-button{background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:4px;color:#e0e0e0;color:var(--dark-text);cursor:pointer;font-size:13px;margin-top:8px;padding:4px 8px;transition:background-color .3s}.edit-button:hover{background-color:#ffffff1a}.remove-button{align-items:center;background-color:#dc3545;background-color:var(--error-red);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:28px;justify-content:center;width:28px}.remove-button:hover{background-color:#c82333}.remove-button:disabled{background-color:#5c2a30;cursor:not-allowed}.role-item{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 2fr auto}.form-tabs{border-bottom:1px solid #3a3a3a;border-bottom:1px solid var(--dark-border);display:flex;margin-bottom:24px;overflow-x:auto}.tab-button{background:none;border:none;color:#b0b0b0;color:var(--dark-text-secondary);cursor:pointer;font-size:14px;padding:12px 16px;position:relative;transition:color .3s;white-space:nowrap}.tab-button:hover{color:#e0e0e0;color:var(--dark-text)}.tab-button.active{color:#4a90e2;color:var(--primary-blue)}.tab-button.active:after{background-color:#4a90e2;background-color:var(--primary-blue);bottom:-1px;content:"";height:2px;left:0;position:absolute;right:0}.checkbox-wrapper{align-items:center;cursor:pointer;display:flex}.checkbox-wrapper input[type=checkbox]{cursor:pointer;height:18px;margin-right:8px;width:18px}.field-description{font-size:13px;margin-bottom:12px}.field-description,.field-hint{color:#b0b0b0;color:var(--dark-text-secondary);margin-top:4px}.field-hint{display:none;font-size:12px;order:3}.form-section{margin-bottom:20px}.section-title{border-bottom:1px solid #3a3a3a;border-bottom:1px solid var(--dark-border);color:#e0e0e0;color:var(--dark-text);font-size:1.2rem;font-weight:500;margin-bottom:16px;margin-top:0;padding-bottom:8px}.form-section h3.section-title+.field-indicator{display:inline-block;margin-bottom:16px;margin-top:-16px}.tag-input-container{display:flex;flex-direction:column;margin-bottom:4px}.tag-list{display:flex;flex-wrap:wrap;gap:8px;min-height:0;order:2}.tag-list:not(:empty){margin-top:12px;min-height:32px}.tag-item{align-items:center;background-color:#4a90e21a;border:1px solid #4caf5099;border-radius:16px;display:flex;font-size:14px;padding:4px 8px 4px 12px}.tag-text{line-height:1.4;margin-right:8px;word-break:break-word}.tag-item .date-tag{font-family:monospace;letter-spacing:0}.tag-remove{align-items:center;background:none;border:none;color:#b0b0b0;color:var(--dark-text-secondary);cursor:pointer;display:flex;font-size:16px;height:20px;justify-content:center;padding:0;transition:color .2s;width:20px}.tag-remove:hover{color:#dc3545;color:var(--error-red)}.tag-input-row{display:flex;gap:8px;order:1}.tag-input-row input,.tag-input-row input[type=url]{flex:1 1}.tag-add-button{align-items:center;background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:4px;color:#e0e0e0;color:var(--dark-text);cursor:pointer;display:flex;font-size:18px;height:38px;justify-content:center;width:32px}.tag-add-button:hover{background-color:#ffffff1a}.role-section{background-color:#ffffff05;border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:8px;margin-bottom:24px;padding:24px}.role-label{border-bottom:1px solid #3a3a3a;border-bottom:1px solid var(--dark-border);color:#e0e0e0;color:var(--dark-text);font-weight:500;margin-bottom:12px;padding-bottom:8px}.role-fields{flex-wrap:wrap}.role-field{flex:1 1;min-width:150px}.role-section .form-group{margin-top:0;padding-right:24px}.role-section .form-group:first-child{margin-top:0}.role-section .form-group+.form-group{margin-top:20px}.role-section .form-group input,.role-section .form-group select,.role-section .form-group textarea{width:calc(100% - 24px)}.subfield-label{color:#b0b0b0;color:var(--dark-text-secondary);display:block;font-size:.85rem;margin-bottom:4px}.subfield-input{background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border:1px solid #3a3a3a;border:1px solid var(--dark-border);color:#e0e0e0;color:var(--dark-text);transition:border-color .3s,box-shadow .3s;width:100%}.subfield-input:focus{border-color:#4a90e2;border-color:var(--primary-blue);box-shadow:0 0 0 2px #4a90e240}@media (max-width:768px){.role-fields{flex-direction:column;gap:8px}.role-field{width:100%}}.field-indicator{border-radius:4px;display:inline-block;font-size:.75rem;font-weight:400;margin-left:6px;padding:2px 6px;vertical-align:middle}.required-indicator{background-color:#f0505026;border:1px solid #f050504d;color:#e57373}.optional-indicator{background-color:#64646426;border:1px solid #6464644d;color:#9e9e9e}label{align-items:center;display:flex;flex-wrap:wrap;margin-bottom:6px}@media (max-width:500px){.field-indicator{font-size:.7rem;margin-left:0;margin-top:2px}label{align-items:flex-start;flex-direction:column}}.date-input-container{align-items:center!important;display:flex!important;gap:8px!important;position:relative}.date-input{background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:4px;color:#e0e0e0;color:var(--dark-text);flex:1 1;font-family:monospace;font-size:16px;max-width:140px;min-width:120px;padding:12px;transition:border-color .3s,box-shadow .3s;width:auto!important}.date-input::placeholder{color:#b0b0b0;color:var(--dark-text-secondary);opacity:.7}.date-input:invalid{background-color:#dc35451a;border-color:#dc3545;border-color:var(--error-red)}.date-input::-webkit-calendar-picker-indicator{display:none}.date-picker-control{appearance:none!important;-webkit-appearance:none!important;background-color:#2a2a2a!important;background-color:var(--dark-surface-lighter)!important;border:1px solid #3a3a3a!important;border:1px solid var(--dark-border)!important;border-radius:4px!important;color:#0000!important;cursor:pointer!important;display:inline-block!important;flex-grow:0!important;flex-shrink:0!important;font-size:0!important;height:32px!important;line-height:0!important;margin:0!important;max-width:32px!important;min-width:32px!important;opacity:1!important;overflow:hidden!important;padding:0!important;position:relative!important;text-indent:-9999px!important;vertical-align:middle!important;width:32px!important}.date-picker-control::-webkit-clear-button,.date-picker-control::-webkit-datetime-edit,.date-picker-control::-webkit-datetime-edit-day-field,.date-picker-control::-webkit-datetime-edit-fields-wrapper,.date-picker-control::-webkit-datetime-edit-month-field,.date-picker-control::-webkit-datetime-edit-text,.date-picker-control::-webkit-datetime-edit-year-field,.date-picker-control::-webkit-inner-spin-button{display:none!important;height:0!important;margin:0!important;opacity:0!important;padding:0!important;pointer-events:none!important;position:absolute!important;visibility:hidden!important;width:0!important}.date-picker-control:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e0e0e0'%3E%3Cpath d='M19 3h-1V1h-2v2H8V1H6v2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7v-5z'/%3E%3C/svg%3E")!important;background-position:50%!important;background-repeat:no-repeat!important;background-size:contain!important;content:""!important;height:16px!important;left:50%!important;pointer-events:none!important;position:absolute!important;top:50%!important;transform:translate(-50%,-50%)!important;width:16px!important;z-index:1!important}.date-picker-control::-webkit-calendar-picker-indicator{bottom:0!important;cursor:pointer!important;height:100%!important;left:0!important;margin:0!important;opacity:0!important;padding:0!important;position:absolute!important;right:0!important;top:0!important;width:100%!important;z-index:2!important}.date-picker-control:hover{background-color:#ffffff1a!important}.date-picker-control:focus,.date-picker-control:hover{border-color:#4a90e2!important;border-color:var(--primary-blue)!important}.date-picker-control:focus{box-shadow:0 0 0 2px #4a90e240!important;outline:none!important}.date-error-message{animation:fadeIn .2s ease-in;color:#dc3545;color:var(--error-red);font-size:.85rem;font-weight:500;margin-top:4px}.date-error-message:before{content:"⚠️ ";font-size:.85em}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.date-input{font-size:14px;max-width:130px;min-width:110px;padding:10px}.date-picker-control{height:28px!important;max-width:28px!important;min-width:28px!important;width:28px!important}.date-picker-control:before{height:14px!important;width:14px!important}.date-input-container{flex-wrap:nowrap}}.distributions-list{display:flex;flex-direction:column;gap:16px;margin:24px 0}.distributions-list:not(:empty){margin-bottom:16px}.distribution-item{background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:6px;margin-bottom:12px;overflow:hidden;padding:16px;position:relative}.distribution-item:before{background:#4a90e2;background:var(--primary-blue);border-radius:4px 0 0 4px;bottom:-1px;content:"";left:-1px;opacity:.5;position:absolute;top:-1px;width:4px}.distribution-header{align-items:center;background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border-bottom:1px solid #3a3a3a;border-bottom:1px solid var(--dark-border);display:flex;justify-content:space-between;padding:10px 12px}.distribution-title{color:#e0e0e0;color:var(--dark-text);font-size:.95em;font-weight:500}.distribution-actions{align-items:center;display:flex;gap:8px}.distribution-preview{font-size:.9em;padding:12px}.distribution-field{margin-bottom:6px}.field-label{color:#b0b0b0;color:var(--dark-text-secondary);font-size:.85em;margin-right:6px}.field-value{color:#e0e0e0;color:var(--dark-text)}.distribution-form{background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border-left:3px solid #3a3a3a;border-left:3px solid var(--dark-border);border-radius:6px;margin:20px 24px;max-width:100%;padding:32px;position:relative}.distribution-form-header{border-bottom:1px solid #3a3a3a;border-bottom:1px solid var(--dark-border);margin-bottom:16px;padding-bottom:8px}.distribution-form-header h4{color:#e0e0e0;color:var(--dark-text);font-size:1.1rem;font-weight:500;margin:0}.distribution-form .form-group{margin-bottom:12px;margin-left:12px;padding-right:24px;position:relative}.distribution-form .form-group:before{background:#3a3a3a;background:var(--dark-border);bottom:0;content:"";left:-12px;position:absolute;top:0;width:2px}.distribution-form .form-group label{font-size:.9em;font-weight:400}.distribution-form .subfield-input{background-color:#1e1e1e;background-color:var(--dark-surface);font-size:.95em;padding:8px 10px;width:calc(100% - 24px)}.distribution-form textarea.subfield-input{min-height:50px}.saved-drafts-section{background-color:#1e1e1e;background-color:var(--dark-surface);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:8px;box-shadow:0 4px 12px #0000004d;box-sizing:border-box;grid-column:1/-1;margin-top:40px;padding:24px;width:100%}.draft-actions{display:flex;gap:8px}.delete-button,.load-button,.save-draft-button{border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .3s}.load-button{background-color:#4a90e2;background-color:var(--primary-blue);border:none;color:#fff}.load-button:hover{background-color:#3a80d2;background-color:var(--primary-blue-hover)}.delete-button{background-color:#dc3545;background-color:var(--error-red);border:none;color:#fff}.delete-button:hover{background-color:#c82333}.save-draft-button{background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border:1px solid #3a3a3a;border:1px solid var(--dark-border);color:#e0e0e0;color:var(--dark-text)}.save-draft-button:hover{background-color:#ffffff1a}label[data-tooltip]{position:relative}label[data-tooltip]:after{background-color:#3a6ea5;background-color:var(--tooltip-icon-bg);border-radius:50%;box-shadow:0 1px 3px #0000004d;color:#fff;color:var(--tooltip-icon-text);content:"i";cursor:help;display:inline-block;font-family:Georgia,serif;font-size:11px;font-style:italic;font-weight:700;height:16px;line-height:16px;margin-left:8px;text-align:center;transition:all .2s ease;vertical-align:middle;width:16px}label[data-tooltip]:focus:after,label[data-tooltip]:hover:after{animation:pulse 1.5s infinite;background-color:#4a90e2;transform:scale(1.1)}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}label[data-tooltip]:focus:before,label[data-tooltip]:hover:before{background-color:#2c3e50;background-color:var(--tooltip-content-bg);border:1px solid #4a90e2;border:1px solid var(--tooltip-content-border);border-radius:6px;bottom:100%;box-shadow:0 4px 12px #4980c040;box-shadow:0 4px 12px var(--tooltip-shadow);color:#e0e0e0;color:var(--tooltip-content-text);content:attr(data-tooltip);font-size:.85rem;font-style:normal;font-weight:400;left:0;line-height:1.4;margin-bottom:5px;padding:12px;pointer-events:none;position:absolute;text-align:left;width:220px;z-index:101}label[data-tooltip]:hover:before{border-color:#5a9aea}@media (min-width:768px){.form-group:nth-child(2n) label[data-tooltip]:before{left:auto;right:0}}@media (max-width:767px){label[data-tooltip]:before{max-width:calc(100vw - 40px);width:180px}}.ai-suggestion-tooltip{cursor:pointer;display:inline-block;font-size:16px;margin-left:8px;position:relative;transition:transform .2s ease}.ai-suggestion-tooltip:hover{transform:scale(1.2)}.ai-suggestion-tooltip[data-ai-tooltip]{position:relative}.ai-suggestion-tooltip[data-ai-tooltip]:hover:before{background-color:#2d3748;border:1px solid #4299e1;border-radius:6px;bottom:100%;box-shadow:0 4px 12px #4299e14d;color:#e2e8f0;content:attr(data-ai-tooltip);font-size:.85rem;font-weight:400;left:0;line-height:1.4;margin-bottom:8px;padding:12px;pointer-events:none;position:absolute;text-align:left;white-space:normal;width:250px;z-index:102}.ai-toggle-container{align-items:center;display:flex;margin-right:auto}.ai-toggle-label{align-items:center;color:#e0e0e0;color:var(--dark-text);cursor:pointer;display:flex;font-size:.9rem;margin:0}.ai-toggle-checkbox{margin-right:8px;transform:scale(1.2)}.modal-footer{align-items:center;display:flex;gap:10px}.floating-message{right:20px}.floating-message>div{border-radius:8px;box-shadow:0 6px 16px #0003;display:flex;flex-direction:column;margin-bottom:10px;padding:20px;text-align:left}.message-content{flex:1 1;font-weight:500;line-height:1.5;margin-bottom:20px;max-height:70vh;overflow-y:auto;white-space:pre-line}.floating-message .success-message{background:linear-gradient(#28a745d9,#28a745d9),#1e1e1e;background:linear-gradient(#28a745d9,#28a745d9),var(--dark-surface);border:1px solid #28a7454d;color:#fff}.floating-message .error-message{background:linear-gradient(#f0505026,#f0505026),#1e1e1e;background:linear-gradient(#f0505026,#f0505026),var(--dark-surface);border:1px solid #f050504d;color:#e57373}.message-actions{display:flex;justify-content:center;padding-top:8px}.message-close-button{align-self:center;background:#ffffff26;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;font-size:15px;font-weight:500;min-width:-webkit-fit-content;min-width:fit-content;padding:8px 16px;transition:all .2s ease;width:auto}.floating-message .error-message .message-close-button{color:#e0e0e0}.message-close-button:hover{background:#ffffff40;border-color:#fff6}@media (max-width:768px){.floating-message{bottom:20px;left:5%;max-width:90%;min-width:250px;right:5%;top:auto;transform:none}.floating-message>div{padding:12px 16px}.message-content{font-size:14px}}.form-group input,.form-group select,.form-group textarea{margin-right:24px;width:calc(100% - 24px)}.saved-drafts-section>.data-table-container{background-color:initial;border:none;box-shadow:none;padding:0}.floating-message{animation:slideIn .3s ease-out forwards;left:50%;max-width:500px;min-width:300px;position:fixed;top:20px;transform:translateX(-50%);z-index:2000}@media (max-width:768px){.floating-message{left:5%;margin:0 auto;max-width:90%;min-width:250px;right:5%;transform:none;width:90%}.floating-message>div{padding:12px 16px}.message-content{font-size:14px}}.radio-input{margin-right:5px}.radio-group{flex-direction:row;gap:20px;margin-top:5px}.radio-group,.radio-label{align-items:center;display:flex}.radio-label{cursor:pointer;gap:5px}.tag-input-error{border-color:#dc3545!important;box-shadow:0 0 0 .2rem #dc354540!important}.iri-error-message{animation:fadeIn .2s ease-in;color:var(--error-red);font-size:.85rem;font-weight:500}.iri-error-message:before{content:"⚠️ ";font-size:.85em}.date-input-valid{border-color:#28a745!important;box-shadow:0 0 0 .2rem #28a74540!important}.form-control.form-input-valid,.form-input-valid,.subfield-input.form-input-valid,.tag-input-valid,.tag-input.form-input-valid,input.form-control.form-input-valid,input.form-input-valid,textarea.form-control.form-input-valid,textarea.form-input-valid{background-color:#2a2a2a!important;background-color:var(--dark-surface-lighter)!important;border-color:#4caf50!important;box-shadow:0 0 0 1px #4caf504d!important}.form-control.form-input-error,.form-input-error,.subfield-input.form-input-error,.tag-input-error,.tag-input.input-error,input.form-control.form-input-error,input.form-input-error,textarea.form-control.form-input-error,textarea.form-input-error{background-color:#ff525214!important;border-color:#ff5252!important;box-shadow:0 0 0 2px #ff525280!important}label:has(+.form-control.form-input-valid) .field-indicator,label:has(+.form-input-valid) .field-indicator,label:has(+.tag-input-container input.form-input-valid) .field-indicator,label:has(+.tag-input-container input.tag-input-valid) .field-indicator,label:has(+div .form-control.form-input-valid) .field-indicator,label:has(+div input.form-input-valid) .field-indicator,label:has(+div textarea.form-input-valid) .field-indicator,label:has(+input.form-input-valid) .field-indicator,label:has(+select.form-input-valid) .field-indicator,label:has(+textarea.form-input-valid) .field-indicator,label:has(~.form-input-valid) .field-indicator{background-color:#28a74526!important;border:1px solid #28a7454d!important;color:#4caf50!important}label:has(+.checkbox-group input:checked) .field-indicator,label:has(+.tag-input-container .tag-list .tag-item) .field-indicator,label:has(+.tag-input-row select.form-input-valid) .field-indicator,label:has(+div .tag-list .tag-item) .field-indicator,label:has(+div select.form-input-valid) .field-indicator{background-color:#28a74526!important;border:1px solid #28a7454d!important;color:#4caf50!important}.form-section:has(+.roles-list .distribution-item) .field-indicator{background-color:#28a74526!important;border:1px solid #28a7454d!important;color:#4caf50!important}.form-section:has(+.distributions-list .distribution-item) .field-indicator,.form-section:has(.distributions-list .distribution-item) .field-indicator{background-color:#28a74526!important;border:1px solid #28a7454d!important;color:#4caf50!important}label:has(+.form-control.form-input-error) .field-indicator,label:has(+.form-input-error) .field-indicator,label:has(+.tag-input-container .tag-input-row input.form-input-error) .field-indicator,label:has(+.tag-input-container .tag-input.form-input-error) .field-indicator,label:has(+.tag-input-container input.form-input-error) .field-indicator,label:has(+div .form-control.form-input-error) .field-indicator,label:has(+div input.form-input-error) .field-indicator,label:has(+div textarea.form-input-error) .field-indicator,label:has(+input.form-input-error) .field-indicator,label:has(+select.form-input-error) .field-indicator,label:has(+textarea.form-input-error) .field-indicator,label:has(~.form-input-error) .field-indicator{background-color:#ff525233!important;border:1px solid #ff525280!important;color:#ff5252!important}.tag-item-valid{border:1px solid #4caf5099!important;box-shadow:none!important}.tag-item-invalid{background-color:#ff525226!important;border:2px solid #ff5252!important;box-shadow:0 0 0 2px #ff52524d!important}.tag-item-invalid .tag-text{color:#ff5252!important;font-weight:500}.tag-item-invalid .tag-remove{color:#ff5252!important}.tag-validation-error{background-color:#ff52521a;border-left:3px solid #ff5252;border-radius:4px;color:#ff5252;font-size:12px;margin-bottom:8px;margin-left:12px;margin-top:4px;padding:4px 8px}.uuid-display{background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border-left:4px solid #28a745;border-left:4px solid var(--success-green);border-radius:4px;color:#28a745;color:var(--success-green);font-size:16px;margin:5px 0;max-width:100%;padding:10px 15px;width:100%}.uuid-display,.version-id-display{font-family:monospace;overflow-x:auto;white-space:nowrap}.version-id-display{color:#b0b0b0;color:var(--dark-text-secondary);display:block;font-size:12px;margin-top:4px}.toggle-container input[type=checkbox]{-webkit-appearance:none;appearance:none;background-color:#ccc;border-radius:12px;cursor:pointer;height:24px;outline:none;position:relative;transition:background-color .3s;width:44px}.toggle-container input[type=checkbox]:checked{background-color:#4a90e2}.toggle-container input[type=checkbox]:before{background-color:#fff;border-radius:50%;content:"";height:20px;left:2px;position:absolute;top:2px;transition:transform .3s;width:20px}.toggle-container input[type=checkbox]:checked:before{transform:translateX(20px)}.checkbox-group{border:1px solid #ddd;border-radius:4px;display:flex;flex-direction:row;gap:20px;padding:8px}.checkbox-group.form-input-valid{border-color:#4caf50}.checkbox-label{align-items:center;cursor:pointer;display:flex}.checkbox-input{cursor:pointer;margin-right:8px}.toggle-container{align-items:center;display:flex;gap:10px;margin-bottom:12px}.toggle-container span{color:#b0b0b0;color:var(--dark-text-secondary);font-size:.9em}.toggle-switch-container{align-items:center;display:flex;gap:8px}.toggle-option{cursor:default;font-size:.9em;transition:color .3s ease,font-weight .3s ease}.toggle-option.active{color:#4a90e2;color:var(--primary-blue);font-weight:700}.toggle-option.inactive{color:#b0b0b0;color:var(--dark-text-secondary);font-weight:400}.toggle-switch{display:inline-block;height:24px;position:relative;width:50px}.toggle-switch input{height:0;opacity:0;width:0}.slider{background-color:#3a3a3a;background-color:var(--dark-border);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.4s}.slider.active{background-color:#4a90e2;background-color:var(--primary-blue);border-color:#4a90e2;border-color:var(--primary-blue)}.slider:before{background-color:#e0e0e0;background-color:var(--dark-text);border-radius:50%;bottom:3px;box-shadow:0 1px 3px #0000004d;content:"";height:18px;left:3px;position:absolute;transition:.4s;width:18px}.slider.active:before{background-color:#fff;transform:translateX(26px)}.role-fields{gap:12px}.role-field,.role-fields{display:flex;flex-direction:column}.role-field{gap:4px}.subfield-label{color:#333;font-size:.9em;font-weight:500}.subfield-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;transition:border-color .3s ease}.subfield-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.subfield-input.input-error{border-color:#dc3545}.subfield-input.input-valid{border-color:#28a745}.iri-error-message{color:#dc3545;font-size:.85em;margin-top:4px}.role-section{border:1px solid #e0e0e0;border-radius:6px;margin:16px 0;padding:16px}.role-label{color:#333;display:block;font-weight:600;margin-bottom:8px}.toggle-buttons{border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:4px;display:flex;gap:0;margin-bottom:16px;overflow:hidden}.toggle-btn{background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border:none;border-right:1px solid #3a3a3a;border-right:1px solid var(--dark-border);color:#b0b0b0;color:var(--dark-text-secondary);cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:8px 16px;transition:all .3s ease}.toggle-btn:last-child{border-right:none}.toggle-btn:hover{background-color:#ffffff1a;color:#e0e0e0;color:var(--dark-text)}.toggle-btn.active{background-color:#4a90e2;background-color:var(--primary-blue);color:#fff}.toggle-btn.active:hover{background-color:#3a80d2;background-color:var(--primary-blue-hover)}.input-with-button{display:flex;flex-direction:column;gap:8px}.input-with-button .form-input{margin-bottom:0}.input-with-button .add-button:disabled{background-color:#3a3a3a;background-color:var(--dark-border);cursor:not-allowed;opacity:.6}.unified-input-container{display:flex;flex-direction:column;gap:8px}.unified-input-field{align-items:center;background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border:2px dashed #3a3a3a;border:2px dashed var(--dark-border);border-radius:8px;display:flex;padding:12px;position:relative;transition:all .3s ease}.unified-input-field:hover{background-color:#4a90e20d;border-color:#4a90e2;border-color:var(--primary-blue)}.unified-input-field.drag-over{background-color:#4a90e21a;border-color:#4a90e2;border-color:var(--primary-blue);border-style:solid}.unified-input-field.error{background-color:#dc35450d;border-color:#dc3545;border-color:var(--error-red)}.unified-input-field.valid{background-color:#28a7450d;border-color:#28a745;border-color:var(--success-green)}.unified-text-input{background:#0000;border:none;color:#e0e0e0;color:var(--dark-text);flex:1 1;font-size:16px;margin-right:12px;outline:none;padding:4px 8px}.unified-text-input::placeholder{color:#b0b0b0;color:var(--dark-text-secondary);opacity:.8}.unified-input-actions{align-items:center;display:flex;gap:8px}.unified-input-actions .add-button{font-size:14px;margin:0;padding:6px 12px}.unified-input-actions .browse-button{align-items:center;background-color:#ffffff1a;border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:4px;cursor:pointer;display:flex;font-size:16px;justify-content:center;padding:6px 8px;transition:background-color .3s}.unified-input-actions .browse-button:hover{background-color:#fff3}.confirmation-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}.confirmation-dialog{background-color:#1e1e1e;background-color:var(--dark-surface);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:8px;box-shadow:0 4px 20px #0000004d;max-width:500px;padding:24px;width:90%}.confirmation-dialog h3{color:#e0e0e0;color:var(--dark-text);font-size:18px;margin:0 0 12px}.confirmation-dialog p{color:#b0b0b0;color:var(--dark-text-secondary);line-height:1.5;margin:0 0 16px}.sparql-confirmation-preview{background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:4px;font-size:14px;margin:16px 0;padding:12px}.sparql-confirmation-preview div{color:#b0b0b0;color:var(--dark-text-secondary);margin:4px 0}.sparql-confirmation-preview strong{color:#e0e0e0;color:var(--dark-text);font-weight:600}.confirmation-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.confirm-button{background-color:#4a90e2;background-color:var(--primary-blue);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .3s}.confirm-button:hover{background-color:#3a80d2;background-color:var(--primary-blue-hover)}.confirmation-actions .cancel-button{background-color:initial;border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:4px;color:#b0b0b0;color:var(--dark-text-secondary);cursor:pointer;font-size:14px;padding:8px 16px;transition:all .3s}.confirmation-actions .cancel-button:hover{background-color:#ffffff1a;color:#e0e0e0;color:var(--dark-text)}.tag-input,.tag-input-container input,.tag-input-container input.tag-input-valid,.tag-input.tag-input-valid,input.tag-input,input.tag-input.tag-input-valid{background-color:#2a2a2a!important;background-color:var(--dark-surface-lighter)!important;border-color:#3a3a3a!important;border-color:var(--dark-border)!important;box-shadow:none!important}.tag-input-container input.tag-input-valid:focus,.tag-input-container input:focus,.tag-input.tag-input-valid:focus,.tag-input:focus,input.tag-input.tag-input-valid:focus,input.tag-input:focus{border-color:#4a90e2!important;border-color:var(--primary-blue)!important;box-shadow:0 0 0 2px #4a90e240!important}.turtle-validation-panel{border:2px solid;border-radius:8px;margin-top:15px;padding:15px;transition:all .3s ease}.turtle-validation-panel::-webkit-scrollbar{width:10px}.turtle-validation-panel::-webkit-scrollbar-track{background:#2a2a2a;background:var(--dark-surface-lighter);border-radius:4px}.turtle-validation-panel::-webkit-scrollbar-thumb{background:#3a3a3a;background:var(--dark-border);border-radius:4px}.turtle-validation-panel::-webkit-scrollbar-thumb:hover{background:#4a4a4a}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.turtle-editor-container{background-color:#1e1e1e;background-color:var(--dark-surface);border:1px solid #3a3a3a;border:1px solid var(--dark-border);border-radius:4px;display:flex;overflow:hidden}.line-numbers{background-color:#2a2a2a;background-color:var(--dark-surface-lighter);border-right:1px solid #3a3a3a;border-right:1px solid var(--dark-border);color:#b0b0b0;color:var(--dark-text-secondary);font-family:Courier New,Courier,monospace;font-size:14px;line-height:1.5;padding:10px 8px;text-align:right;-webkit-user-select:none;user-select:none}.line-numbers::-webkit-scrollbar{display:none}.line-number{height:21px}.turtle-textarea{background-color:#121212;background-color:var(--dark-bg);border:none!important;color:#e0e0e0;color:var(--dark-text);flex:1 1;font-family:Courier New,Courier,monospace;font-size:14px;line-height:1.5;padding:10px;resize:none}.turtle-textarea::-webkit-scrollbar{height:14px;width:14px}.turtle-textarea::-webkit-scrollbar-track{background:#2a2a2a;background:var(--dark-surface-lighter);border-radius:4px}.turtle-textarea::-webkit-scrollbar-thumb{background:#4169e1;border:2px solid #2a2a2a;border:2px solid var(--dark-surface-lighter);border-radius:4px}.turtle-textarea::-webkit-scrollbar-thumb:hover{background:#345bd3}.turtle-textarea::-webkit-scrollbar-corner{background:#2a2a2a;background:var(--dark-surface-lighter)}.turtle-textarea:focus{box-shadow:none!important;outline:none}.turtle-textarea-always-scroll{overflow-y:scroll!important}.turtle-textarea-always-scroll::-webkit-scrollbar{display:block!important;width:14px!important}.turtle-textarea-always-scroll::-webkit-scrollbar-track{background:#2a2a2a!important;background:var(--dark-surface-lighter)!important;border-radius:4px!important}.turtle-textarea-always-scroll::-webkit-scrollbar-thumb{background:#4169e1!important;border:2px solid #2a2a2a!important;border:2px solid var(--dark-surface-lighter)!important;border-radius:4px!important;min-height:40px!important}.turtle-textarea-always-scroll::-webkit-scrollbar-thumb:hover{background:#345bd3!important}.cm-editor{background-color:#121212!important;background-color:var(--dark-bg)!important;color:#e0e0e0!important;color:var(--dark-text)!important;height:100%}.cm-scroller{font-family:Courier New,Courier,monospace!important;font-size:14px!important;line-height:1.5!important;overflow:auto!important}.cm-gutters{background-color:#2a2a2a!important;background-color:var(--dark-surface-lighter)!important;border-right:1px solid #3a3a3a!important;border-right:1px solid var(--dark-border)!important;color:#b0b0b0!important;color:var(--dark-text-secondary)!important}.cm-activeLineGutter{background-color:#4a90e21a!important}.cm-activeLine{background-color:#4a90e20d!important}.cm-selectionBackground{background-color:#4a90e24d!important}.cm-cursor{border-left-color:#e0e0e0!important;border-left-color:var(--dark-text)!important}.cm-keyword{color:#c678dd!important}.cm-atom,.cm-number{color:#d19a66!important}.cm-def{color:#61afef!important}.cm-variable{color:#e06c75!important}.cm-variable-2{color:#56b6c2!important}.cm-variable-3{color:#c678dd!important}.cm-property{color:#61afef!important}.cm-operator{color:#abb2bf!important}.cm-comment{color:#5c6370!important;font-style:italic!important}.cm-string,.cm-string-2{color:#98c379!important}.cm-meta,.cm-qualifier{color:#e5c07b!important}.cm-builtin{color:#e06c75!important}.cm-bracket{color:#abb2bf!important}.cm-tag{color:#e06c75!important}.cm-attribute{color:#d19a66!important}.cm-link{color:#56b6c2!important;text-decoration:underline!important}.cm-scroller::-webkit-scrollbar{height:14px;width:14px}.cm-scroller::-webkit-scrollbar-track{background:#2a2a2a;background:var(--dark-surface-lighter);border-radius:4px}.cm-scroller::-webkit-scrollbar-thumb{background:#4169e1;border:2px solid #2a2a2a;border:2px solid var(--dark-surface-lighter);border-radius:4px}.cm-scroller::-webkit-scrollbar-thumb:hover{background:#345bd3}.cm-scroller::-webkit-scrollbar-corner{background:#2a2a2a;background:var(--dark-surface-lighter)}.json-display{background-color:#1e1e1e;border-radius:6px;color:#d4d4d4;font-family:Fira Code,Consolas,Monaco,monospace;font-size:13px;line-height:1.6;margin:0;overflow-wrap:break-word;overflow-x:hidden;padding:12px;text-align:left;white-space:pre-wrap;word-break:break-word}.json-key{color:#9cdcfe;font-weight:600}.json-string,.json-value{color:#ce9178}.json-number{color:#b5cea8}.json-boolean,.json-null{color:#569cd6}.suggestion-value{display:block;text-align:left;width:100%}
/*# sourceMappingURL=main.19fb962c.css.map*/