.code-mirror-editor{border:1px solid #ccc;border-radius:4px;min-height:300px}.code-mirror-editor .cm-editor{min-height:300px}.code-mirror-editor .cm-focused{outline:0}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.25rem;font-weight:600;color:#374151}.form-control{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;line-height:1.25rem;background-color:#fff}.form-control:focus{outline:0;border-color:#3b82f6;box-shadow:0 0 0 3px rgb(59 130 246 / 10%)}.concept-scheme-editor{padding:1rem;border:1px solid #e5e7eb;border-radius:.5rem;background-color:#f9fafb}.concept-scheme-editor h3{margin-top:0;margin-bottom:1rem;color:#111827}.top-concepts-list{max-height:100px;overflow-y:auto;border:1px solid #d1d5db;border-radius:.375rem;padding:.5rem;background-color:#fff}.top-concept-item{padding:.25rem;margin-bottom:.25rem;background-color:#f3f4f6;border-radius:.25rem;font-size:.75rem;color:#4b5563}.btn{padding:.5rem 1rem;border:1px solid transparent;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;text-align:center;text-decoration:none;display:inline-block;transition:all .15s ease-in-out}.btn-primary{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.btn-primary:hover{background-color:#2563eb;border-color:#2563eb}.btn-secondary{background-color:#6b7280;border-color:#6b7280;color:#fff}.btn-secondary:hover{background-color:#4b5563;border-color:#4b5563}.btn-danger{background-color:#ef4444;border-color:#ef4444;color:#fff}.btn-danger:hover{background-color:#dc2626;border-color:#dc2626}.btn-sm{padding:.25rem .5rem;font-size:.75rem}.language-input{border:1px solid #d1d5db;border-radius:.375rem;padding:.75rem;background-color:#fff}.language-input-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.language-input-header label{margin-bottom:0;font-weight:600}.language-input-row{display:flex;gap:.5rem;align-items:center;margin-bottom:.5rem}.label-input{flex:1}.language-select{width:150px;flex-shrink:0}.empty-state{text-align:center;color:#6b7280;font-style:italic;padding:1rem}.concept-editor{display:flex;gap:1rem;height:100%}.concept-list-panel{width:300px;border:1px solid #e5e7eb;border-radius:.5rem;background-color:#f9fafb;display:flex;flex-direction:column}.concept-list-header{padding:1rem;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.concept-list-header h3{margin:0;font-size:1.125rem}.concept-list{flex:1;overflow-y:auto;padding:.5rem}.concept-item{border:1px solid #e5e7eb;border-radius:.375rem;margin-bottom:.5rem;background-color:#fff;position:relative;transition:all .15s ease-in-out;display:flex;align-items:center;justify-content:space-between}.concept-item:hover{border-color:#3b82f6;background-color:#f8fafc}.concept-item.selected{border-color:#3b82f6;background-color:#eff6ff}.concept-content{flex:1;padding:.75rem;cursor:pointer}.concept-content:hover{background-color:inherit}.concept-label{font-weight:500;color:#111827;margin-bottom:.25rem}.concept-uri{font-size:.75rem;color:#6b7280;margin-bottom:.5rem;word-break:break-all}.concept-delete{margin:.5rem;flex-shrink:0}.concept-details-panel{flex:1;border:1px solid #e5e7eb;border-radius:.5rem;background-color:#f9fafb;padding:1rem;overflow-y:auto}.concept-details-panel h3{margin-top:0;margin-bottom:1rem}.empty-selection{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;text-align:center;color:#6b7280}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif;background-color:#f8fafc}.skos-editor{height:100vh;display:flex;flex-direction:column}.app-header{background-color:#1f2937;color:#fff;padding:1rem 2rem;border-bottom:1px solid #374151}.header-content{display:flex;justify-content:space-between;align-items:center}.header-left{display:flex;align-items:center;gap:1rem}.logo-link{display:flex;align-items:center;text-decoration:none;transition:opacity .2s ease}.logo-link:hover{opacity:.8}.header-logo{height:40px;width:auto}.header-text h1{margin:0 0 .25rem;font-size:1.5rem;font-weight:600}.header-text p{margin:0;opacity:.8;font-size:.875rem}.header-actions{display:flex;gap:.5rem}.editor-layout{flex:1;display:flex;gap:1rem;padding:1rem;min-height:0}.center-panel,.left-panel,.right-panel{display:flex;flex-direction:column;background-color:#fff;border-radius:.5rem;border:1px solid #e5e7eb;overflow:hidden}.left-panel{flex:1;min-width:400px}.center-panel{width:350px;flex-shrink:0}.right-panel{flex:1;min-width:500px}.right-panel .concept-editor{flex:1}.panel-header{background-color:#f9fafb;padding:1rem;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.panel-header h2{margin:0;font-size:1.125rem;font-weight:600;color:#111827}.panel-actions{display:flex;gap:.5rem}.error-message{background-color:#fee2e2;border:1px solid #fecaca;color:#991b1b;padding:.75rem;border-radius:.375rem;margin:1rem;font-size:.875rem}.left-panel .code-mirror-editor{flex:1;border:none;border-radius:0;margin:0}.left-panel .code-mirror-editor .cm-editor{height:100%;min-height:200px}.modal-overlay{position:fixed;inset:0;background-color:rgb(0 0 0 / 50%);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-dialog{background:#fff;border-radius:.375rem;box-shadow:0 .5rem 1rem rgb(0 0 0 / 15%);max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem 1rem 0;border-bottom:1px solid #e5e7eb}.modal-header h3{margin:0 0 1rem;line-height:1.5;color:#111827}.close-btn{background:0 0;border:none;font-size:1.5rem;font-weight:700;line-height:1;color:#6b7280;opacity:.5;cursor:pointer;margin:-1rem -1rem -1rem auto;padding:1rem}.close-btn:hover{opacity:.75}.modal-body{padding:1rem}.modal-body h4{margin-top:0;margin-bottom:1rem;color:#374151}.modal-footer{display:flex;align-items:center;justify-content:flex-end;padding:.75rem 1rem 1rem;border-top:1px solid #e5e7eb}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-label{margin-bottom:0}.form-text{display:block;margin-top:.25rem;font-size:.75rem;color:#6b7280}.text-muted{color:#6b7280!important}@media (width <= 1200px){.editor-layout{flex-direction:column;gap:1rem}.center-panel,.left-panel,.right-panel{width:100%;flex:none}.left-panel .code-mirror-editor .cm-editor{min-height:200px}.concept-editor{height:60vh}}