training-body-editor.component.scss 1.7 KB

123456789101112131415161718
  1. :host { display: block; min-width: 0; }
  2. .editor { overflow: hidden; border: 1px solid var(--line, #d8e4df); border-radius: 12px; background: #fff; }
  3. .editor:focus-within { border-color: #176c55; box-shadow: 0 0 0 2px #176c5520; }
  4. .tools { display: flex; flex-wrap: wrap; gap: 4px; padding: 8px; border-bottom: 1px solid #d8e4df; background: #f1f7f4; }
  5. button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 40px; padding: 8px 10px; border: 1px solid transparent; border-radius: 6px; color: #314a41; background: transparent; font: inherit; font-size: 13px; white-space: nowrap; cursor: pointer; }
  6. lucide-icon { display: inline-flex; flex-shrink: 0; }
  7. button:hover:not(:disabled) { background: #e0ece6; }
  8. button:focus-visible { outline: 2px solid #176c55; outline-offset: -2px; }
  9. button:disabled { opacity: .5; cursor: wait; }
  10. .add-images { color: #fff; background: #176c55; }
  11. .add-images:hover:not(:disabled) { background: #125640; }
  12. .body { min-height: 320px; max-height: 65vh; overflow-y: auto; padding: 16px; outline: none; color: #263a32; font-size: 16px; font-weight: 400; line-height: 1.8; overflow-wrap: anywhere; }
  13. .body:empty::before { content: attr(data-placeholder); color: #687b72; pointer-events: none; }
  14. // Chinese system fonts commonly have no italic face. Override the global synthesis reset only in rich text.
  15. .body { font-synthesis: style; }
  16. :host ::ng-deep .body img { display: inline-block; max-width: 100%; height: auto; }
  17. :host ::ng-deep .body blockquote { margin: 12px 0; padding-left: 14px; border-left: 3px solid #176c55; color: #52685d; }
  18. small { display: block; margin-top: 8px; color: #60716b; font-size: 12px; line-height: 1.6; font-weight: 400; }