#editor{--editor-bg:#fff;--editor-surface:#fff;--editor-surface-soft:#f8fafc;--editor-border:#d1d5db;--editor-border-soft:#e5e7eb;--editor-border-strong:#9ca3af;--editor-dashed:#cbd5e1;--editor-text:#111827;--editor-text-muted:#6b7280;--editor-text-soft:#9ca3af;--editor-primary:#2563eb;--editor-primary-soft:#eff6ff;--editor-danger:#dc2626;--editor-danger-soft:#fef2f2;--editor-danger-soft-hover:#fee2e2}#editor .form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}#editor .form-label{color:var(--editor-text);font-size:.875rem;font-weight:600;line-height:1.25rem}#editor .form-label.required:after{color:var(--editor-danger);content:" *"}#editor .input-wrapper{position:relative;width:100%}#editor .input-icon{color:var(--editor-text-soft);font-size:1.1rem;left:12px;line-height:1;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}#editor .form-input{background:var(--editor-surface);border:1px solid var(--editor-border);border-radius:8px;color:var(--editor-text);font-size:.95rem;line-height:1.4;padding:10px 12px;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;width:100%}#editor .form-input.with-icon{padding-left:38px}#editor .form-input::-moz-placeholder{color:var(--editor-text-soft)}#editor .form-input::placeholder{color:var(--editor-text-soft)}#editor .form-input:hover{border-color:var(--editor-border-strong)}#editor .form-input:focus{border-color:var(--editor-primary);outline:none}#editor .form-input:disabled,#editor .form-input[readonly]{background:var(--editor-surface-soft);border-color:var(--editor-border-soft);color:var(--editor-text-muted);cursor:not-allowed}#editor .form-input-color{cursor:pointer;height:44px;padding:6px}#editor .form-input-color.with-icon{padding-left:38px}#editor .form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;padding-right:38px}#editor .form-textarea{min-height:110px;resize:vertical}#editor .textarea-icon{top:16px;transform:none}#editor .form-meta{align-items:center;display:flex;gap:8px;justify-content:space-between}#editor .form-counter{color:var(--editor-text-soft);font-size:.75rem;line-height:1rem;margin-left:auto}#editor .switch-wrapper{align-items:center;display:flex;gap:10px}#editor .switch-label{margin:0}#editor .switch{display:inline-flex;height:26px;position:relative;width:46px}#editor .switch input{height:0;opacity:0;width:0}#editor .switch-slider{background:var(--editor-border);border-radius:999px;cursor:pointer;top:0;right:0;bottom:0;left:0;position:absolute;transition:background-color .2s ease}#editor .switch-slider:before{background:#fff;border-radius:50%;content:"";height:20px;left:3px;position:absolute;top:3px;transition:transform .2s ease;width:20px}#editor .switch input:checked+.switch-slider{background:var(--editor-primary)}#editor .switch input:checked+.switch-slider:before{transform:translate(20px)}#editor .switch input:disabled+.switch-slider{cursor:not-allowed;opacity:.6}#editor .upload-wrapper{display:flex;flex-direction:column;gap:12px}#editor .upload-native-input{display:none}#editor .upload-trigger{align-items:center;background:var(--editor-surface);border:1px solid var(--editor-border);border-radius:8px;color:var(--editor-text);cursor:pointer;display:inline-flex;gap:8px;justify-content:center;padding:10px 14px;transition:border-color .2s ease,background-color .2s ease;width:-moz-fit-content;width:fit-content}#editor .upload-trigger:hover{background:var(--editor-surface-soft);border-color:var(--editor-border-strong)}#editor .upload-trigger:disabled{border-color:var(--editor-border-soft);color:var(--editor-text-soft);cursor:not-allowed}#editor .upload-trigger.upload-trigger-secondary,#editor .upload-trigger:disabled{background:var(--editor-surface-soft)}#editor .upload-trigger.danger{background:var(--editor-danger-soft);border-color:#fecaca;color:var(--editor-danger)}#editor .upload-trigger.danger:hover{background:var(--editor-danger-soft-hover);border-color:#fca5a5}#editor .upload-dropzone{align-items:center;background:var(--editor-surface-soft);border:2px dashed var(--editor-dashed);border-radius:14px;display:flex;flex-direction:column;gap:6px;justify-content:center;min-height:180px;padding:20px;text-align:center;transition:border-color .2s ease,background-color .2s ease}#editor .upload-dropzone.is-drag-over{background:#eef2ff;border-color:#6366f1}#editor .upload-dropzone.is-disabled{opacity:.7}#editor .upload-dropzone-reference{background:var(--editor-surface-soft);border-radius:16px;gap:4px;min-height:200px}#editor .upload-dropzone-file-icon{align-items:center;background:#e2e8f0;border-radius:12px;color:#0f766e;display:inline-flex;font-size:2rem;height:64px;justify-content:center;margin-bottom:8px;width:64px}#editor .upload-dropzone-icon{color:var(--editor-text-muted);font-size:1.4rem}#editor .upload-dropzone-title{color:var(--editor-text);font-size:1rem;font-weight:600;margin:0}#editor .upload-dropzone-subtitle{color:var(--editor-text-muted);font-size:.82rem;margin:0}#editor .upload-browse-link{background:none;border:none;color:#0f766e;cursor:pointer;font-weight:700;margin-left:4px;padding:0;text-decoration:none}#editor .upload-browse-link:hover{text-decoration:underline}#editor .upload-browse-link:disabled{color:#9ca3af;cursor:not-allowed;text-decoration:none}#editor .upload-preview{border:1px dashed var(--editor-border);border-radius:8px;color:var(--editor-text-muted);font-size:.875rem;padding:10px}#editor .upload-preview-empty{background:var(--editor-surface-soft)}#editor .upload-preview-image{align-items:center;display:flex;flex-direction:column;gap:12px;justify-content:center;min-height:120px}#editor .upload-preview-image img{border-radius:6px;max-height:200px;max-width:100%;-o-object-fit:contain;object-fit:contain}#editor .upload-actions{align-items:center;display:flex;gap:8px}#editor .upload-file-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}#editor .upload-file-item{align-items:center;background:var(--editor-surface-soft);border:1px solid var(--editor-border-soft);border-radius:10px;display:flex;gap:12px;justify-content:space-between;padding:12px}#editor .upload-file-item-left{align-items:center;display:flex;gap:10px;min-width:0}#editor .upload-file-icon{align-items:center;background:#64748b;border-radius:6px;color:#fff;display:inline-flex;font-size:.7rem;font-weight:700;height:30px;justify-content:center;letter-spacing:.02em;min-width:42px;padding:0 8px}#editor .upload-file-icon.is-image{background:#0ea5e9}#editor .upload-file-icon.is-video{background:#f59e0b}#editor .upload-file-icon.is-audio{background:#10b981}#editor .upload-file-icon.is-pdf{background:#ef4444}#editor .upload-file-icon.is-doc{background:#3b82f6}#editor .upload-file-icon.is-sheet{background:#22c55e}#editor .upload-file-icon.is-slide{background:#f97316}#editor .upload-file-icon.is-archive{background:#8b5cf6}#editor .upload-file-meta{min-width:0}#editor .upload-file-name{color:var(--editor-text);font-size:.9rem;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#editor .upload-file-size{color:var(--editor-text-muted);font-size:.78rem;margin:2px 0 0}#editor .upload-file-remove{align-items:center;background:transparent;border:none;border-radius:50%;color:var(--editor-text-muted);cursor:pointer;display:inline-flex;height:30px;justify-content:center;transition:color .2s ease,background-color .2s ease;width:30px}#editor .upload-file-remove:hover{background:var(--editor-danger-soft-hover);color:#ef4444}#editor .upload-file-remove:disabled{background:transparent;color:#9ca3af;cursor:not-allowed}#editor .form-helper-text{color:var(--editor-text-muted);font-size:.75rem;line-height:1rem;margin-top:-2px}html[data-bs-theme=dark] #editor{--editor-bg:#0f172a;--editor-surface:#111827;--editor-surface-soft:#1f2937;--editor-border:#334155;--editor-border-soft:#475569;--editor-border-strong:#64748b;--editor-dashed:#475569;--editor-text:#e5e7eb;--editor-text-muted:#94a3b8;--editor-text-soft:#64748b;--editor-primary:#60a5fa;--editor-primary-soft:rgba(59,130,246,.2);--editor-danger:#f87171;--editor-danger-soft:rgba(220,38,38,.15);--editor-danger-soft-hover:rgba(220,38,38,.25)}
