.script-editor {
  position: relative;
  display: flex;
  flex-direction: column;
  background: #fff;
}
.script-editor__toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 10000;
}
.script-editor__validation-badge {
  padding: 2px 8px;
  font-size: 12px;
  color: #f59e0b;
  background: #fef3c7;
  border-radius: 4px;
  font-weight: 500;
}
.script-editor__validation-badge--error {
  color: #dc2626;
  background: #fee2e2;
}
.script-editor__content {
  position: relative;
  flex: 1;
  min-height: 0;
  overflow: hidden;
  background: #fff;
}
.script-editor__content .monaco-editor .monaco-scrollable-element > .scrollbar.vertical {
  width: 14px !important;
  background: transparent !important;
}
.script-editor__content .monaco-editor .monaco-scrollable-element > .scrollbar.vertical .slider {
  width: 8px !important;
  left: 3px !important;
  background: rgba(0, 0, 0, 0.2) !important;
  border-radius: 4px;
  transition: background 0.2s ease;
}
.script-editor__content .monaco-editor .monaco-scrollable-element > .scrollbar.vertical:hover .slider {
  background: rgba(0, 0, 0, 0.3) !important;
}
.script-editor__content .monaco-editor .monaco-scrollable-element > .scrollbar.vertical.active .slider {
  background: rgba(0, 0, 0, 0.4) !important;
}
.script-editor__content .monaco-editor .monaco-scrollable-element > .scrollbar.horizontal {
  display: none !important;
}
.script-editor__content .monaco-editor .monaco-hover,
.script-editor__content .monaco-editor .monaco-editor-hover,
.script-editor__content .monaco-editor .suggest-widget,
.script-editor__content .monaco-editor .parameter-hints-widget,
.script-editor__content .monaco-editor .zone-widget {
  z-index: var(--editor-z-index, 1000) !important;
}
.script-editor__errors {
  padding: 8px 12px;
  background: #fef2f2;
  border-top: 1px solid #fecaca;
  max-height: 100px;
  overflow-y: auto;
}
.script-editor__error-item {
  display: flex;
  align-items: flex-start;
  gap: 4px;
  padding: 2px 0;
  font-size: 12px;
  color: #dc2626;
  line-height: 1.4;
}
.script-editor__error-item:not(:last-child) {
  border-bottom: 1px solid #fee2e2;
  padding-bottom: 4px;
  margin-bottom: 4px;
}
.script-editor__error-path {
  font-family: 'Menlo', 'Monaco', 'Courier New', monospace;
  font-weight: 500;
  color: #991b1b;
  flex-shrink: 0;
}
.script-editor__error-message {
  color: #b91c1c;
}
