:root{--bg: #0f172a;--panel: #111827;--text: #e5e7eb;--muted: #94a3b8;--accent: #22c55e;--box: #1f2937;--box-border: #334155}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji}.layout{display:grid;grid-template-rows:auto 1fr auto;height:100%}.header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--panel);border-bottom:1px solid #1f2937}.title{font-weight:700}.submission-indicator{color:var(--muted);font-weight:500;font-size:.9em}.polling-indicator{margin-left:8px;font-size:14px;animation:spin 2s linear infinite;opacity:.8}.refresh-indicator{margin-left:8px;font-size:14px;animation:pulse 1.5s ease-in-out infinite;opacity:.9;color:var(--accent)}@keyframes pulse{0%,to{opacity:.9}50%{opacity:.4}}.breadcrumb-nav{display:flex;align-items:center;padding:8px 16px;background:var(--panel);border-bottom:1px solid #1f2937;font-size:14px}.breadcrumb-link{background:none;border:none;color:var(--accent);cursor:pointer;padding:4px 8px;border-radius:4px;font-size:14px;text-decoration:none}.breadcrumb-link:hover{background:#22c55e1a}.breadcrumb-separator{color:var(--muted);margin:0 8px}.breadcrumb-current{color:var(--text);font-weight:500}.submissions-list{display:flex;flex-direction:column;gap:12px;margin:16px 0}.submission-item{display:flex;align-items:flex-start;justify-content:space-between;padding:16px;background:var(--box);border:1px solid var(--box-border);border-radius:8px;gap:16px}.submission-details{flex:1;min-width:0}.submission-name{font-weight:600;color:var(--text);font-size:16px;margin-bottom:8px}.submission-description,.submission-purpose{color:var(--muted);font-size:14px;line-height:1.4;margin-bottom:4px}.submission-description{font-style:italic}.submission-purpose{color:#94a3b8}.view-submission-button{background:var(--accent);color:#052e16;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-weight:600;font-size:14px}.view-submission-button:hover{filter:brightness(1.05)}.action-buttons{display:flex;gap:6px;align-items:center;justify-content:center}.delete-submission-button{background:#dc2626;color:#fff;border:none;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;min-width:32px;height:32px}.delete-submission-button:hover{background:#b91c1c;filter:brightness(1.1)}.submissions-table-container{overflow-x:auto;border-radius:8px;border:1px solid var(--box-border)}.submissions-table{width:100%;border-collapse:collapse;background:var(--panel);font-size:14px}.submissions-table th{background:var(--box);color:var(--text);font-weight:600;padding:12px 8px;text-align:left;border-bottom:1px solid var(--box-border);white-space:nowrap;font-size:13px}.submissions-table td{padding:12px 8px;border-bottom:1px solid var(--box-border);color:var(--text);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.submissions-table tr:hover{background:var(--box)}.submissions-table .submission-name{font-weight:600;color:var(--accent);max-width:150px}.submissions-table .submission-description,.submissions-table .submission-purpose{max-width:200px;color:var(--muted);font-style:italic}.submissions-table .submission-academic-direction{max-width:150px}.submissions-table .submission-age{text-align:center;max-width:60px}.submissions-table .submission-date{color:var(--muted);max-width:100px}.submissions-table .submission-actions{text-align:center;max-width:120px}.submissions-table .submission-feedback{max-width:200px;color:var(--muted);font-size:12px;line-height:1.4}@media (max-width: 1200px){.submissions-table th,.submissions-table td{padding:8px 6px;font-size:12px}.submissions-table .submission-description,.submissions-table .submission-purpose,.submissions-table .submission-academic-direction{max-width:120px}.submissions-table .submission-feedback{max-width:150px}}@media (max-width: 768px){.submissions-table-container{font-size:11px}.submissions-table th,.submissions-table td{padding:6px 4px}.submissions-table .submission-feedback{max-width:100px;font-size:10px}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.controls select{margin-left:8px;padding:6px 10px;border-radius:6px;background:var(--box);color:var(--text);border:1px solid var(--box-border)}.content{display:grid;grid-template-columns:220px 1fr minmax(50px,500px);gap:16px;padding:16px}.main-panel{background:var(--panel);border:1px solid #1f2937;border-radius:10px;padding:12px}.side-panel{background:var(--panel);border:1px solid #1f2937;border-radius:10px;padding:12px;overflow:auto}.chat-panel{background:var(--panel);border:1px solid #1f2937;border-radius:10px;overflow:hidden}.footer{text-align:center;padding:8px;color:var(--muted);border-top:1px solid #1f2937}.graph{display:grid;gap:12px}.breadcrumbs-container{display:flex;align-items:center;margin-bottom:16px;gap:16px}.breadcrumbs{color:var(--muted)}.crumb{cursor:pointer}.crumb.active{color:var(--text);cursor:default}.breadcrumb-actions{display:flex;align-items:center;gap:12px}.suggestions-summary{display:flex;align-items:center}.suggestions-count{font-size:12px;color:var(--muted);background:#94a3b81a;padding:4px 8px;border-radius:12px;border:1px solid rgba(148,163,184,.2)}.btn-sm{padding:4px 8px;font-size:11px;border-radius:4px;background:var(--accent);color:#052e16;border:none;cursor:pointer;font-weight:600}.btn-sm:hover{filter:brightness(1.05)}.step-lane{display:flex;align-items:center;gap:12px;flex-wrap:nowrap;padding-bottom:6px;border-bottom:1px dashed #334155;margin-bottom:12px;overflow-x:auto;overflow-y:hidden}.step-lane:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.step-lane .step-wrapper,.step-lane .insert-btn{flex:0 0 auto;margin-top:16px}.step-lane.virtual-level{border-bottom:2px dashed #334155;margin-bottom:8px;padding-bottom:8px;opacity:.8;position:relative}.virtual-level-label{position:absolute;left:0;top:-20px;font-size:12px;color:var(--muted);font-weight:500;background:var(--bg);padding:4px 8px;border-radius:6px;border:1px solid var(--box-border)}.step-lane::-webkit-scrollbar{width:8px;height:8px}.step-lane::-webkit-scrollbar-track{background:var(--bg);border-radius:4px}.step-lane::-webkit-scrollbar-thumb{background:var(--box-border);border-radius:4px}.step-lane::-webkit-scrollbar-thumb:hover{background:var(--muted)}.step-box{background:var(--box);border:1px solid var(--box-border);border-radius:10px;padding:12px;width:180px;height:80px;display:grid;gap:8px;position:relative;box-sizing:border-box}.mode-toggle{margin-bottom:16px}.mode-label{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.mode-buttons{display:flex;background:var(--box);border:1px solid var(--box-border);border-radius:6px;padding:4px;gap:2px;width:100%}.mode-btn{flex:1;display:flex;align-items:center;justify-content:center;padding:6px 10px;background:transparent;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease;color:var(--muted);font-size:14px;font-weight:500;position:relative}.mode-btn:hover{background:#ffffff0d}.mode-btn.active{background:var(--accent);color:#052e16;font-weight:700}.mode-btn.debug{color:#f97316;border:1px solid rgba(249,115,22,.2)}.mode-btn.debug:hover{background:#f973161a;border-color:#f973164d}.mode-btn.debug.active{background:#f97316;color:#fff;border-color:#f97316}.mode-badge{position:absolute;top:-6px;right:-6px;background:#ef4444;color:#fff;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;border:2px solid var(--panel)}.mode-help{margin-top:8px}.mode-help-text{font-size:11px;color:var(--muted);font-style:italic;opacity:.8}.selection-count{color:var(--accent);font-weight:600;opacity:1}.entity-suggestion-row{background:#22c55e1a;border:1px solid #22c55e;border-radius:6px;margin:4px 0;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:8px}.suggestion-name{font-weight:600;color:var(--text);flex:1}.mini-icon.approve{background:#22c55e;color:#052e16}.mini-icon.reject{background:#ef4444;color:#fff}.bulk-actions{margin-top:16px;padding:12px;background:var(--box);border:1px solid var(--box-border);border-radius:8px}.bulk-actions-title{font-size:12px;color:var(--muted);margin-bottom:8px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.bulk-action-buttons{display:flex;gap:8px}.btn-sm.approve-all{background:#22c55e;color:#052e16}.btn-sm.reject-all{background:#ef4444;color:#fff}.step-box.suggestion-post{background:#22c55e1a;border-color:#22c55e}.step-box.suggestion-patch{background:#f59e0b1a;border-color:#f59e0b}.step-box.suggestion-delete{background:#ef44441a;border-color:#ef4444}.patch-changes-tooltip{max-width:400px}.tooltip-header{font-weight:700;margin-bottom:12px;color:#f59e0b;font-size:14px;text-align:center}.label-with-info{display:flex;align-items:center;gap:6px}.info-button{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#6b7280;color:#fff;font-size:12px;font-weight:700;border:none;cursor:help;position:relative;transition:background-color .2s}.info-button:hover{background:#4b5563}.info-button .tooltip-content{visibility:hidden;opacity:0;position:absolute;bottom:125%;left:20%;transform:translate(-20%);background:#1f2937;color:#fff;padding:12px 16px;border-radius:6px;font-size:13px;font-weight:400;width:400px;text-align:left;z-index:9999;box-shadow:0 4px 6px #0000001a;transition:opacity .2s,visibility .2s;line-height:1.4}.info-button .tooltip-content:after{content:"";position:absolute;top:100%;left:20%;transform:translate(-20%);border:5px solid transparent;border-top-color:#1f2937}.info-button:hover .tooltip-content{visibility:visible;opacity:1}.changes-table{width:100%;border-collapse:collapse;margin-bottom:12px;font-size:12px}.changes-table th{background:#94a3b81a;color:var(--text);font-weight:600;padding:6px 8px;text-align:left;border-bottom:1px solid rgba(148,163,184,.3)}.changes-table td{padding:6px 8px;border-bottom:1px solid rgba(148,163,184,.1);vertical-align:top}.changes-table .attribute-name{font-weight:600;color:var(--text);width:25%}.changes-table .old-value{color:#ef4444;width:30%;word-break:break-word}.changes-table .arrow{color:#f59e0b;font-weight:700;text-align:center;width:10%}.changes-table .new-value{color:#22c55e;width:30%;word-break:break-word}.suggestion-actions{display:flex;gap:8px;margin-top:8px}.suggestion-actions .approve-btn,.suggestion-actions .reject-btn{flex:1;padding:6px 12px;font-size:12px;border-radius:6px;cursor:pointer;font-weight:600;border:none}.suggestion-actions .approve-btn{background:#22c55e33;color:#16a34a;border:1px solid rgba(34,197,94,.3)}.suggestion-actions .approve-btn:hover{background:#22c55e4d;border-color:#22c55e80}.suggestion-actions .reject-btn{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.suggestion-actions .reject-btn:hover{background:#ef44444d;border-color:#ef444480}.step-title{font-weight:600}.btn{background:var(--accent);color:#052e16;border:none;padding:6px 10px;border-radius:6px;cursor:pointer;font-weight:600}.btn:hover{filter:brightness(1.05)}.btn-active{background:#16a34a;color:#fff;box-shadow:0 0 0 2px #22c55e4d;animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 #22c55e66}70%{box-shadow:0 0 0 6px #22c55e00}to{box-shadow:0 0 #22c55e00}}.lists{display:grid;gap:12px}.list-title{font-weight:700;margin-bottom:6px}.list ul{list-style:none;padding:0;margin:0}.list li{color:var(--muted);padding:2px 0;position:relative}.list li.highlight{color:var(--text);background:#22c55e14;border-left:3px solid var(--accent);padding-left:6px;border-radius:4px}.list li.suggested-delete{background:#ef444414;border:1px solid rgba(239,68,68,.5);border-radius:6px}.badge{display:inline-block;font-size:10px;font-weight:700;padding:1px 4px;border-radius:4px;margin-left:6px;vertical-align:middle}.badge-in{background:#1e40af;color:#dbeafe}.badge-out{background:#7c2d12;color:#ffedd5}.focus-row{display:flex;gap:6px;flex-wrap:wrap}.focus-row.left{margin-bottom:16px}.chip{background:transparent;color:var(--muted);border:1px solid var(--box-border);padding:2px 6px;border-radius:999px;cursor:pointer;font-size:12px}.chip-selected{background:var(--accent);color:#052e16;border-color:var(--accent);font-weight:700}.step-box.dimmed{opacity:.4;filter:grayscale(.3);transition:opacity .3s ease,filter .3s ease}.step-box.dimmed:hover{opacity:.6;filter:grayscale(.1)}.insert-btn.dimmed,.insert-sub-btn.dimmed{opacity:.2;pointer-events:none;cursor:default;transition:opacity .3s ease}.step-lane.active-layer{border:3px solid var(--accent);border-radius:12px;background:#22c55e0d;box-shadow:0 0 0 1px #22c55e33,0 0 20px #22c55e1a;position:relative;margin:8px 0;padding:16px 12px}.step-row{display:flex;justify-content:space-between;align-items:center;gap:8px;height:100%}.step-title-section{display:flex;align-items:center;gap:8px;flex:1;height:100%;justify-content:center}.step-title{font-weight:600;display:flex;align-items:center;gap:6px;text-align:center;line-height:1.2}.multiple-suggestions-indicator{color:#f59e0b;font-size:12px;opacity:.8;cursor:help}.step-suggestion-buttons{display:flex;gap:2px;align-items:center;background:#0000001a;padding:2px;border-radius:4px}.step-suggestion-buttons .approve-btn.minimal,.step-suggestion-buttons .reject-btn.minimal{width:18px;height:18px;border-radius:3px;border:none;cursor:pointer;font-size:9px;font-weight:600;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.step-suggestion-buttons .approve-btn.minimal{background:#22c55e33;color:#16a34a;border:1px solid rgba(34,197,94,.3)}.step-suggestion-buttons .approve-btn.minimal:hover{background:#22c55e4d;border-color:#22c55e80}.step-suggestion-buttons .reject-btn.minimal{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.step-suggestion-buttons .reject-btn.minimal:hover{background:#ef44444d;border-color:#ef444480}.edit-btn{background:transparent;color:var(--muted);border:1px solid var(--box-border);width:28px;height:28px;border-radius:6px;cursor:pointer;transition:all .2s ease}.edit-btn:hover{color:var(--text);background:#0b1220;border-color:var(--text)}.absolute-top-right{position:absolute;top:0;right:0;border-radius:0 10px 0 6px}.absolute-bottom-right{position:absolute;bottom:0;right:0;border-radius:6px 0 10px}.chevron{background:transparent;color:var(--text);border:1px solid var(--box-border);width:28px;height:28px;border-radius:6px;cursor:pointer}.chevron:hover{background:#0b1220}.chevron-active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent) inset;color:#052e16;background:var(--accent)}.chevron-empty{color:#9ca3af;border:1px dashed #6b7280;opacity:.7}.chevron-empty:hover{opacity:1;background:#0b1220;border-color:#9ca3af}.chevron-has-substeps{color:#93c5fd;border:1px solid #93c5fd;background:#60a5fa26;font-weight:600}.chevron-has-substeps:hover{background:#60a5fa40;border-color:#bfdbfe;color:#bfdbfe}.insert-btn{background:transparent;color:var(--muted);border:1px dashed var(--box-border);width:26px;height:26px;border-radius:999px;cursor:pointer;font-size:16px;display:inline-flex;align-items:center;justify-content:center;transform:translateY(-16px)}.insert-btn:hover{color:var(--text);border-color:var(--text)}.below-actions{display:flex;justify-content:center;margin-top:6px}.insert-sub-btn{background:transparent;color:var(--muted);border:1px dashed var(--box-border);padding:2px 18px;border-radius:999px;cursor:pointer;font-size:12px;margin-bottom:10px}.insert-sub-btn:hover{color:var(--text);border-color:var(--text)}.left-bottom{margin-top:16px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:none;align-items:center;justify-content:center;z-index:2000}.modal-overlay.visible{display:flex}.modal{background:var(--panel);color:var(--text);border:1px solid #1f2937;border-radius:12px;width:680px;max-width:92vw;box-shadow:0 12px 40px #00000080}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #1f2937}.modal-title{font-weight:700;font-size:16px}.modal-body{padding:12px 14px;display:grid;gap:16px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 14px;border-top:1px solid #1f2937}.btn{background:var(--box);color:var(--text);border:1px solid var(--box-border);padding:6px 10px;border-radius:8px;cursor:pointer}.btn:hover{background:#0b1220}.btn-primary{background:var(--accent);color:#052e16;border-color:var(--accent);font-weight:700}.btn-primary:hover{filter:brightness(1.05)}.btn-danger{background:#ef4444;color:#fff;border-color:#ef4444}.btn-danger:hover{filter:brightness(1.05)}.input{width:100%;background:var(--box);color:var(--text);border:1px solid var(--box-border);border-radius:8px;padding:8px 10px;outline:none}.input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #22c55e33}.chips-input{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-height:40px;padding:6px 8px;background:var(--box);border:1px solid var(--box-border);border-radius:8px}.chips-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px #22c55e33}.chips-input input{flex:1;min-width:140px;background:transparent;color:var(--text);border:none;outline:none;padding:6px 4px}.token{display:inline-flex;align-items:center;gap:6px;background:#0b1220;color:var(--text);border:1px solid var(--box-border);border-radius:999px;padding:4px 8px;font-size:12px}.token-remove{background:transparent;color:var(--muted);border:none;cursor:pointer}.token-remove:hover{color:var(--text)}.suggestions{position:absolute;background:var(--box);color:var(--text);border:1px solid var(--box-border);border-radius:8px;margin-top:4px;width:100%;max-height:200px;overflow:auto;z-index:2100}.suggestion-item{padding:8px 10px;cursor:pointer}.suggestion-item:hover{background:#0b1220}.mini-icon{background:transparent;color:var(--muted);border:1px solid var(--box-border);width:22px;height:22px;border-radius:6px;cursor:pointer;font-size:12px;display:inline-flex;align-items:center;justify-content:center}.mini-icon:hover{color:var(--text);background:#0b1220}.mini-icon.danger{border-color:#ef4444;color:#ef4444}.mini-icon.danger:hover{background:#ef44441a}.entity-selector{position:relative;margin-bottom:16px}.entity-selector-label{display:block;font-size:14px;font-weight:600;color:var(--text);margin-bottom:6px}.entity-selector-input{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px;border:1px solid var(--box-border);border-radius:6px;background:var(--box);min-height:40px;cursor:text;transition:border-color .2s}.entity-selector-input:focus-within{border-color:var(--primary);outline:none}.entity-token{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:var(--primary);color:#fff;border:1px solid var(--box-border);border-radius:16px;font-size:12px;font-weight:500}.entity-token-remove{background:none;border:none;color:#fff;cursor:pointer;padding:0;font-size:14px;line-height:1;opacity:.8;transition:opacity .2s}.entity-token-remove:hover{opacity:1}.entity-selector-field{flex:1;min-width:120px;border:none;background:transparent;color:var(--text);font-size:14px;outline:none}.entity-selector-field::placeholder{color:var(--muted)}.entity-selector-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--box);border:1px solid var(--box-border);border-radius:6px;box-shadow:0 4px 12px #00000026;max-height:200px;overflow-y:auto;z-index:1000;margin-top:4px}.entity-option{padding:8px 12px;cursor:pointer;transition:background-color .2s;border-bottom:1px solid var(--box-border)}.entity-option:last-child{border-bottom:none}.entity-option:hover{background:var(--hover)}.entity-option-create{color:var(--primary);font-weight:500}.entity-option-empty{color:var(--muted);font-style:italic;cursor:default}.entity-option-empty:hover{background:transparent}.form-group{margin-bottom:16px}.form-section{margin-bottom:24px;padding:16px;background:var(--box);border-radius:8px;border:1px solid var(--box-border)}.form-section-title{margin:0 0 8px;color:var(--text);font-size:16px;font-weight:600}.form-section-description{margin:0 0 16px;color:var(--muted);font-size:14px;line-height:1.4}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 768px){.form-row{grid-template-columns:1fr}}.form-group label{display:block;font-size:14px;font-weight:600;color:var(--text);margin-bottom:6px}.form-group input{width:100%;padding:8px 12px;border:1px solid var(--box-border);border-radius:6px;background:var(--box);color:var(--text);font-size:14px;transition:border-color .2s}.form-group input:focus{border-color:var(--primary);outline:none}.error-message{color:#ef4444;background:#ef44441a;padding:8px 12px;border-radius:6px;margin-bottom:16px;font-size:14px}.data-objects-section{margin-top:20px}.data-objects-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.data-input-selector .entity-selector-label:after{content:" (IN)";color:var(--primary);font-weight:400}.data-output-selector .entity-selector-label:after{content:" (OUT)";color:var(--primary);font-weight:400}.modal-actions{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid var(--box-border)}.action-buttons{display:flex;gap:8px}.process-selector{margin-bottom:16px}.process-selector label{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.process-controls{display:flex;gap:6px;align-items:center}.process-selector select{flex:1;padding:6px 30px 6px 10px;border-radius:6px;background:var(--box);color:var(--text);border:1px solid var(--box-border);font-size:14px;max-width:180px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 8px center;background-size:16px}.process-selector select option{max-width:200px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.process-buttons{display:flex;gap:2px}.btn-icon{width:28px;height:28px;padding:0;border:1px solid var(--box-border);border-radius:4px;background:var(--box);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .2s ease;flex-shrink:0}.btn-icon:hover:not(:disabled){background:#0b1220;border-color:var(--text)}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-icon.btn-danger{color:#ef4444;border-color:#ef4444}.btn-icon.btn-danger:hover:not(:disabled){background:#ef44441a}.settings-dropdown{position:relative;display:inline-block}.settings-trigger{background:var(--box);color:var(--text);border:1px solid var(--box-border);display:flex;align-items:center;gap:4px}.settings-trigger:hover{background:#0b1220;border-color:var(--text)}.settings-dropdown-menu{position:absolute;top:100%;right:0;background:var(--panel);border:1px solid var(--box-border);border-radius:8px;box-shadow:0 4px 12px #0000004d;z-index:1000;min-width:180px;margin-top:4px}.settings-dropdown-item{display:block;width:100%;background:none;border:none;color:var(--text);padding:12px 16px;text-align:left;cursor:pointer;transition:background-color .2s ease;font-size:14px;font-weight:500;border-radius:0}.settings-dropdown-item:first-child{border-top-left-radius:8px;border-top-right-radius:8px}.settings-dropdown-item:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}.settings-dropdown-item:hover:not(:disabled){background:#0b1220}.settings-dropdown-item.active{background:#16a34a;color:#fff}.settings-dropdown-item.active:hover{background:#15803d}.settings-dropdown-item.danger{color:#ef4444}.settings-dropdown-item.danger:hover:not(:disabled){background:#ef44441a}.settings-dropdown-item:disabled{opacity:.5;cursor:not-allowed}.focus-section{margin-bottom:20px}.focus-label{font-size:12px;color:var(--muted);margin-bottom:6px}.controls{display:flex;align-items:center;gap:8px}.btn-success{background:#16a34a;color:#fff}.btn-success:hover{background:#15803d}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.btn-sm.btn-success{background:#16a34a;color:#fff}.btn-sm.btn-success:hover{background:#15803d}.btn-sm.btn-danger{background:#ef4444;color:#fff}.btn-sm.btn-danger:hover{background:#dc2626}@media (max-width: 768px){.data-objects-grid{grid-template-columns:1fr;gap:12px}.modal-actions{flex-direction:column;gap:12px;align-items:stretch}.action-buttons{justify-content:center}.process-controls{flex-direction:column;gap:8px}.process-buttons{justify-content:center}.process-selector select{max-width:none;width:100%}.breadcrumbs-container{flex-direction:column;gap:12px;align-items:stretch}.breadcrumb-actions{justify-content:center}.bulk-action-buttons{flex-direction:column;width:100%}.btn-sm{width:100%;padding:6px 12px;font-size:12px}.btn-icon{width:32px;height:32px;font-size:14px}}.entity-suggestions-panel{padding:16px;background:#f8f9fa;border-radius:8px;margin-top:16px}.entity-suggestions-panel h3{margin:0 0 16px;color:#333;font-size:18px;font-weight:600}.no-suggestions{color:#666;font-style:italic;text-align:center;padding:20px}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.bulk-actions{display:flex;gap:8px}.btn-sm{padding:4px 8px;font-size:12px;border-radius:4px}.btn-success{background-color:#28a745;color:#fff;border:1px solid #28a745}.btn-success:hover{background-color:#218838;border-color:#1e7e34}.btn-danger{background-color:#dc3545;color:#fff;border:1px solid #dc3545}.btn-danger:hover{background-color:#c82333;border-color:#bd2130}.suggestions-list{display:flex;flex-direction:column;gap:12px}.suggestion-item{background:#fff;border:1px solid #dee2e6;border-radius:6px;padding:12px;box-shadow:0 1px 3px #0000001a}.suggestion-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.suggestion-type{display:flex;gap:8px;align-items:center}.badge{padding:2px 6px;border-radius:12px;font-size:10px;font-weight:600;text-transform:uppercase}.badge-post{background-color:#28a745;color:#fff}.badge-patch{background-color:#ffc107;color:#212529}.badge-delete{background-color:#dc3545;color:#fff}.entity-type-badge{background-color:#6c757d;color:#fff;padding:2px 6px;border-radius:12px;font-size:10px;font-weight:600}.suggestion-actions{display:flex;gap:4px}.suggestion-content{font-size:14px}.suggestion-description{font-weight:600;margin-bottom:8px;color:#333}.suggestion-rationale{margin-bottom:8px;color:#666;font-size:13px}.suggestion-entities{margin-bottom:4px;color:#555;font-size:13px}.suggestion-entities strong{color:#333}.home-page{min-height:100vh;display:flex;flex-direction:column;background:var(--bg)}.home-header{background:var(--panel);border-bottom:1px solid #1f2937;padding:12px 0}.home-header-content{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center}.home-header-title{color:var(--text);font-size:18px;font-weight:700;margin:0}.home-nav-button{background:var(--box);color:var(--text);border:1px solid var(--box-border);padding:8px 12px;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s ease}.home-nav-button:hover{background:#0b1220;border-color:var(--text)}.home-nav-button.danger{color:#ef4444;border-color:#ef4444;background:transparent}.home-nav-button.danger:hover{background:#ef44441a}.home-content{max-width:1000px;width:100%;padding:20px;margin:20px auto;background:var(--panel);border:1px solid #1f2937;border-radius:12px;box-shadow:0 10px 30px #0003}.home-title{font-size:36px;font-weight:800;color:var(--text);margin:0 0 12px}.home-description{font-size:16px;color:var(--muted);line-height:1.6;margin:0 0 24px}.home-button{background:var(--accent);color:#052e16;border:none;padding:12px 18px;font-size:16px;font-weight:700;border-radius:8px;cursor:pointer;transition:all .2s ease}.home-button:hover{filter:brightness(1.05)}.home-button:active{transform:translateY(0)}.submission-info{background:var(--panel);border:1px solid var(--box-border);border-radius:12px;padding:24px;margin:32px auto}.submission-info h3{margin:0 0 16px;color:var(--text);font-size:18px}.submission-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.submission-header h3{margin:0}.refresh-button{background:var(--box);color:var(--text);border:1px solid var(--box-border);padding:8px 12px;border-radius:6px;cursor:pointer;font-size:16px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:40px}.refresh-button:hover{background:var(--accent);color:#052e16;border-color:var(--accent)}.refresh-button:disabled{opacity:.6;cursor:not-allowed}.submission-header-actions{display:flex;align-items:center;gap:8px}.export-button{background:var(--box);color:var(--text);border:1px solid var(--box-border);padding:8px 12px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.export-button:hover:not(:disabled){background:var(--accent);color:#052e16;border-color:var(--accent)}.export-button:disabled{opacity:.6;cursor:not-allowed}.current-submission{background:var(--box);border:1px solid var(--box-border);border-radius:8px;padding:16px;margin-bottom:20px}.current-submission p{margin:8px 0;color:var(--muted)}.create-submission-button{background:var(--accent);color:#052e16;border:none;padding:12px 18px;font-size:16px;font-weight:700;border-radius:8px;cursor:pointer;transition:all .2s ease}.create-submission-button:hover{filter:brightness(1.05)}.guide{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;margin:24px 0 8px}.guide-section{background:var(--box);border:1px solid var(--box-border);border-radius:12px;padding:16px}.guide-section h3{margin:0 0 10px;font-size:16px;color:var(--text)}.guide-list,.guide-steps{margin:0;padding-left:18px;color:var(--muted);line-height:1.6}.features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.feature-card{background:var(--box);border:1px solid var(--box-border);border-radius:10px;padding:12px}.feature-title{font-weight:700;color:var(--text);margin-bottom:4px}.feature-text{color:var(--muted);font-size:14px}.home-cta{display:flex;gap:12px;justify-content:center;align-items:center;margin-top:16px}@media (max-width: 900px){.home-content{padding:20px;margin:20px auto}.guide,.features-grid{grid-template-columns:1fr}.home-title{font-size:28px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:var(--panel);border:1px solid var(--box-border);border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000004d}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--box-border)}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--text)}.modal-close-button{background:none;border:none;color:var(--muted);font-size:24px;cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.modal-close-button:hover{background:#94a3b81a;color:var(--text)}.modal-form{padding:24px}.form-group{margin-bottom:20px}.form-label{display:block;margin-bottom:8px;font-weight:500;color:var(--text);font-size:14px}.form-input,.form-textarea{width:100%;padding:12px;background:var(--box);border:1px solid var(--box-border);border-radius:6px;color:var(--text);font-size:14px;transition:border-color .2s}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #22c55e1a}.form-input.error,.form-textarea.error{border-color:#ef4444}.form-textarea{resize:vertical;min-height:80px;font-family:inherit}.error-message{display:block;margin-top:6px;color:#ef4444;font-size:12px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid var(--box-border)}.modal-button{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.modal-button:disabled{opacity:.6;cursor:not-allowed}.modal-button.primary{background:var(--accent);color:#000}.modal-button.primary:hover:not(:disabled){background:#16a34a}.modal-button.secondary{background:var(--box);color:var(--text);border:1px solid var(--box-border)}.modal-button.secondary:hover:not(:disabled){background:#374151}.modal-header h3{margin:0;font-size:1.5rem;font-weight:600;color:var(--text)}.modal-close{background:none;border:none;color:var(--muted);font-size:24px;cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.modal-close:hover{background:#94a3b81a;color:var(--text)}.modal-body{padding:24px}.modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:20px 24px;border-top:1px solid var(--box-border)}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text);font-size:14px}.form-group input,.form-group textarea{width:100%;padding:12px;background:var(--box);border:1px solid var(--box-border);border-radius:6px;color:var(--text);font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #22c55e1a}.form-group textarea{resize:vertical;min-height:80px;font-family:inherit}.progress-indicators{display:flex;justify-content:center;gap:8px;margin-bottom:20px}.progress-dot{width:10px;height:10px;border-radius:50%;background:var(--box-border);transition:all .3s ease}.progress-dot.active{background:var(--accent);box-shadow:0 0 0 3px #22c55e33}.section-content{min-height:400px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:16px}.welcome-hero{max-width:600px}.hero-title{font-size:40px;font-weight:800;color:var(--text);margin:0 0 16px;background:linear-gradient(135deg,var(--accent),#16a34a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:16px;color:var(--muted);line-height:1.5;margin:0 0 24px}.start-button{background:var(--accent);color:#052e16;border:none;padding:12px 24px;font-size:16px;font-weight:700;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #22c55e4d}.start-button:hover{filter:brightness(1.05);transform:translateY(-2px);box-shadow:0 6px 16px #22c55e66}.section-title{font-size:28px;font-weight:700;color:var(--text);margin:0 0 20px}.tutorial-content{display:grid;gap:16px;max-width:800px;margin-bottom:20px}.tutorial-step{display:flex;align-items:flex-start;gap:16px;text-align:left;background:var(--box);border:1px solid var(--box-border);border-radius:8px;padding:16px}.step-number{background:var(--accent);color:#052e16;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}.step-content h3{margin:0 0 6px;color:var(--text);font-size:16px;font-weight:600}.step-content p{margin:0;color:var(--muted);line-height:1.4;font-size:14px}.practice-scenario{max-width:800px;margin-bottom:20px}.scenario-card{background:var(--box);border:1px solid var(--box-border);border-radius:8px;padding:20px;text-align:left}.scenario-card h3{margin:0 0 12px;color:var(--text);font-size:20px;font-weight:600;text-align:center}.scenario-card>p{margin:0 0 16px;color:var(--muted);line-height:1.5;font-size:15px;text-align:center}.scenario-instructions,.scenario-guidelines{margin-bottom:16px}.scenario-instructions h4,.scenario-guidelines h4{margin:0 0 8px;color:var(--text);font-size:16px;font-weight:600}.instruction-item{margin-bottom:8px;padding:8px 12px;background:#22c55e0d;border-left:3px solid var(--accent);border-radius:4px;font-size:14px;line-height:1.4}.instruction-item strong{color:var(--text);font-weight:600}.scenario-guidelines ul{margin:0;padding-left:20px;color:var(--muted);font-size:14px}.scenario-guidelines li{margin-bottom:4px;line-height:1.4}.scenario-outcome{margin-top:16px;padding:12px;background:#22c55e1a;border:1px solid rgba(34,197,94,.3);border-radius:6px;font-size:14px;line-height:1.4;color:var(--muted)}.scenario-outcome strong{color:var(--text);font-weight:600}.user-info-section{max-width:600px;margin-bottom:24px}.user-info-intro{text-align:center;color:var(--muted);font-size:14px;line-height:1.5;margin-bottom:20px}.user-info-form{background:var(--box);border:1px solid var(--box-border);border-radius:8px;padding:20px;margin-bottom:24px}.submission-details-section{max-width:600px;margin-bottom:24px}.submission-details-intro{text-align:center;color:var(--muted);font-size:14px;line-height:1.5;margin-bottom:20px}.submission-details-form{background:var(--box);border:1px solid var(--box-border);border-radius:8px;padding:20px;margin-bottom:24px}.form-row{display:flex;gap:16px;margin-bottom:16px}.form-group{margin-bottom:16px;flex:1}.form-group:last-child{margin-bottom:0}.form-label{display:block;margin-bottom:6px;font-weight:500;color:var(--text);font-size:14px}.form-input,.form-select{width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--box-border);border-radius:6px;color:var(--text);font-size:14px;transition:border-color .2s}.form-input:focus,.form-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #22c55e1a}.form-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:40px}.start-options{display:flex;gap:16px;max-width:800px;margin-bottom:20px}.start-option-card{flex:1;background:var(--box);border:1px solid var(--box-border);border-radius:8px;padding:16px;text-align:center}.start-option-card.primary{border-color:var(--accent);background:#22c55e0d}.start-option-card h3{margin:0 0 8px;color:var(--text);font-size:16px;font-weight:600}.start-option-card p{margin:0 0 16px;color:var(--muted);line-height:1.4;font-size:14px}.start-option-button{background:var(--accent);color:#052e16;border:none;padding:10px 20px;font-size:14px;font-weight:600;border-radius:6px;cursor:pointer;transition:all .2s ease;width:100%}.start-option-button:hover{filter:brightness(1.05)}.start-option-button.secondary{background:var(--box);color:var(--text);border:1px solid var(--box-border)}.start-option-button.secondary:hover{background:#374151}.section-navigation{display:flex;gap:12px;justify-content:center;margin-top:auto}.nav-button{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.nav-button.primary{background:var(--accent);color:#052e16}.nav-button.primary:hover{filter:brightness(1.05)}.nav-button.secondary{background:var(--box);color:var(--text);border:1px solid var(--box-border)}.nav-button.secondary:hover{background:#374151}.start-submission-button{font-weight:700;font-size:16px;padding:12px 32px}.start-submission-button.disabled{opacity:.5;cursor:not-allowed}.start-submission-button.disabled:hover{filter:none}.user-agreement{margin-top:20px;padding:16px;background:#22c55e0d;border:1px solid rgba(34,197,94,.2);border-radius:8px}.agreement-checkbox{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-size:14px;line-height:1.5}.agreement-checkbox input[type=checkbox]{display:none}.checkmark{width:20px;height:20px;border:2px solid var(--box-border);border-radius:4px;background:var(--bg);position:relative;flex-shrink:0;transition:all .2s ease}.agreement-checkbox input[type=checkbox]:checked+.checkmark{background:var(--accent);border-color:var(--accent)}.agreement-checkbox input[type=checkbox]:checked+.checkmark:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#052e16;font-weight:700;font-size:12px}.agreement-text{color:var(--muted)}@media (max-width: 768px){.hero-title{font-size:32px}.section-title{font-size:24px}.tutorial-step{flex-direction:column;text-align:center}.scenario-card{padding:16px}.start-options,.section-navigation{flex-direction:column}.nav-button{width:100%}.section-content{min-height:350px;padding:12px}.home-content{padding:16px;margin:12px auto}.user-info-form{padding:16px}.form-row{flex-direction:column;gap:0}.user-agreement{padding:12px}.agreement-checkbox{font-size:13px;gap:10px}}
