/*! PLF v0.1.0 | MIT */
/*! PLF icons: Tabler Icons v3.50.0, commit 6904efd245391ad396df17654738f52f6da8c40e.
MIT License

Copyright (c) 2020-2026 Paweł Kuna

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
/* extension: rich text editor */
[data-plf-root] :is(.editor, [data-plf-part~="editor"]) {
  display: flex;
  min-width: 0px;
  flex-direction: column;
  border: var(--plf-border-width) solid var(--plf-editor-border, var(--plf-input-border, var(--plf-color-input)));
  border-radius: var(--plf-editor-radius, var(--plf-input-radius, var(--plf-radius-lg)));
  background: var(--plf-editor-bg, var(--plf-input-bg, var(--plf-color-field)));
  color: var(--plf-editor-color, var(--plf-input-color, var(--plf-color-text)));
  box-shadow: var(--plf-input-shadow, var(--plf-shadow-xs));
  font: var(--plf-input-font-weight) var(--plf-control-font-size)/var(--plf-line-height) var(--plf-font-family);
  transition: border-color var(--plf-duration-fast) var(--plf-easing);
}
[data-plf-root] :is(.editor, [data-plf-part~="editor"]):where(:hover:not([data-plf-disabled], [data-plf-readonly])) {
  border-color: var(--plf-input-hover-border, var(--plf-editor-border, var(--plf-input-border, var(--plf-color-input-hover))));
}
[data-plf-root] :is(.editor, [data-plf-part~="editor"]):has(> :where(:is(.editor-content, [data-plf-part~="editor-content"], textarea):focus)) {
  outline: var(--plf-editor-focus-width, var(--plf-input-focus-width, var(--plf-focus-width))) solid var(--plf-editor-focus-color, var(--plf-input-focus-color, var(--plf-focus-color)));
  outline-offset: var(--plf-input-focus-offset, max(0px, calc(var(--plf-focus-offset) - var(--plf-focus-width))));
}
[data-plf-root] :is(.editor, [data-plf-part~="editor"]):has(> :where([aria-invalid="true"])) {
  border-color: var(--plf-editor-invalid-border, var(--plf-input-invalid-border, var(--plf-color-danger)));
}
[data-plf-root] :is(.editor, [data-plf-part~="editor"])[data-plf-readonly] {
  background-color: var(--plf-color-surface-raised);
}
[data-plf-root] :is(.editor, [data-plf-part~="editor"])[data-plf-disabled] {
  cursor: not-allowed;
  background-color: var(--plf-color-surface-muted);
  color: var(--plf-color-text-muted);
}
[data-plf-root] :is(.editor-toolbar, [data-plf-part~="editor-toolbar"]) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--plf-space-1);
  padding: var(--plf-space-1);
  border-block-end: var(--plf-border-width) solid var(--plf-editor-toolbar-border, var(--plf-color-border-subtle));
}
[data-plf-root] :is(.editor-tool, [data-plf-part~="editor-tool"]):is(:disabled, [aria-disabled="true"]):where(:not([aria-pressed])) {
  border-color: var(--plf-button-border, var(--_plf-button-default-border));
  background: var(--plf-button-bg, var(--_plf-button-default-bg));
  color: var(--plf-button-color, var(--_plf-button-default-color));
  opacity: 0.5;
}
[data-plf-root] [data-plf-part~="editor-heading-2-icon"] {
  --_plf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 12a2 2 0 1 1 4 0c0 .591 -.417 1.318 -.816 1.858l-3.184 4.143l4 0'/%3E%3Cpath d='M4 6v12'/%3E%3Cpath d='M12 6v12'/%3E%3Cpath d='M11 18h2'/%3E%3Cpath d='M3 18h2'/%3E%3Cpath d='M4 12h8'/%3E%3Cpath d='M3 6h2'/%3E%3Cpath d='M11 6h2'/%3E%3C/svg%3E");
}
[data-plf-root] [data-plf-part~="editor-heading-3-icon"] {
  --_plf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 14a2 2 0 1 0 -2 -2'/%3E%3Cpath d='M17 16a2 2 0 1 0 2 -2'/%3E%3Cpath d='M4 6v12'/%3E%3Cpath d='M12 6v12'/%3E%3Cpath d='M11 18h2'/%3E%3Cpath d='M3 18h2'/%3E%3Cpath d='M4 12h8'/%3E%3Cpath d='M3 6h2'/%3E%3Cpath d='M11 6h2'/%3E%3C/svg%3E");
}
[data-plf-root] [data-plf-part~="editor-bold-icon"] {
  --_plf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 5h6a3.5 3.5 0 0 1 0 7h-6l0 -7'/%3E%3Cpath d='M13 12h1a3.5 3.5 0 0 1 0 7h-7v-7'/%3E%3C/svg%3E");
}
[data-plf-root] [data-plf-part~="editor-italic-icon"] {
  --_plf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 5l6 0'/%3E%3Cpath d='M7 19l6 0'/%3E%3Cpath d='M14 5l-4 14'/%3E%3C/svg%3E");
}
[data-plf-root] [data-plf-part~="editor-underline-icon"] {
  --_plf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 5v5a5 5 0 0 0 10 0v-5'/%3E%3Cpath d='M5 19h14'/%3E%3C/svg%3E");
}
[data-plf-root] [data-plf-part~="editor-strike-icon"] {
  --_plf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l14 0'/%3E%3Cpath d='M16 6.5a4 2 0 0 0 -4 -1.5h-1a3.5 3.5 0 0 0 0 7h2a3.5 3.5 0 0 1 0 7h-1.5a4 2 0 0 1 -4 -1.5'/%3E%3C/svg%3E");
}
[data-plf-root] [data-plf-part~="editor-code-icon"] {
  --_plf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 4l-5 8l5 8'/%3E%3Cpath d='M16 4l5 8l-5 8'/%3E%3C/svg%3E");
}
[data-plf-root] [data-plf-part~="editor-link-icon"] {
  --_plf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 15l6 -6'/%3E%3Cpath d='M11 6l.463 -.536a5 5 0 0 1 7.071 7.072l-.534 .464'/%3E%3Cpath d='M13 18l-.397 .534a5.068 5.068 0 0 1 -7.127 0a4.972 4.972 0 0 1 0 -7.071l.524 -.463'/%3E%3C/svg%3E");
}
[data-plf-root] [data-plf-part~="editor-bullet-list-icon"] {
  --_plf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l11 0'/%3E%3Cpath d='M9 12l11 0'/%3E%3Cpath d='M9 18l11 0'/%3E%3Cpath d='M5 6l0 .01'/%3E%3Cpath d='M5 12l0 .01'/%3E%3Cpath d='M5 18l0 .01'/%3E%3C/svg%3E");
}
[data-plf-root] [data-plf-part~="editor-ordered-list-icon"] {
  --_plf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 6h9'/%3E%3Cpath d='M11 12h9'/%3E%3Cpath d='M12 18h8'/%3E%3Cpath d='M4 16a2 2 0 1 1 4 0c0 .591 -.5 1 -1 1.5l-3 2.5h4'/%3E%3Cpath d='M6 10v-6l-2 2'/%3E%3C/svg%3E");
}
[data-plf-root] [data-plf-part~="editor-blockquote-icon"] {
  --_plf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 15h15'/%3E%3Cpath d='M21 19h-15'/%3E%3Cpath d='M15 11h6'/%3E%3Cpath d='M21 7h-6'/%3E%3Cpath d='M9 9h1a1 1 0 1 1 -1 1v-2.5a2 2 0 0 1 2 -2'/%3E%3Cpath d='M3 9h1a1 1 0 1 1 -1 1v-2.5a2 2 0 0 1 2 -2'/%3E%3C/svg%3E");
}
[data-plf-root] [data-plf-part~="editor-undo-icon"] {
  --_plf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 14l-4 -4l4 -4'/%3E%3Cpath d='M5 10h11a4 4 0 1 1 0 8h-1'/%3E%3C/svg%3E");
}
[data-plf-root] [data-plf-part~="editor-redo-icon"] {
  --_plf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 14l4 -4l-4 -4'/%3E%3Cpath d='M19 10h-11a4 4 0 1 0 0 8h1'/%3E%3C/svg%3E");
}
[data-plf-root] [data-plf-part~="editor-html-icon"] {
  --_plf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 8l-4 4l4 4'/%3E%3Cpath d='M17 8l4 4l-4 4'/%3E%3Cpath d='M14 4l-4 16'/%3E%3C/svg%3E");
}
[data-plf-root] :is(.editor-separator, [data-plf-part~="editor-separator"]) {
  flex: none;
  inline-size: var(--plf-border-width);
  block-size: calc(1.25 * var(--plf-rem));
  margin-inline: var(--plf-space-1);
  background: var(--plf-editor-toolbar-border, var(--plf-color-border-subtle));
}
[data-plf-root] :is(.editor-link-panel, [data-plf-part~="editor-link-panel"]) {
  display: grid;
  gap: var(--plf-space-2);
}
[data-plf-root] :is(.editor-link-panel, [data-plf-part~="editor-link-panel"]) > :where(label) {
  font: var(--plf-font-weight-medium) var(--plf-font-size-sm)/var(--plf-line-height) var(--plf-font-family);
}
[data-plf-root] :is(.editor-link-panel, [data-plf-part~="editor-link-panel"]) > :where(p) {
  margin: 0;
  color: var(--plf-color-danger-text);
  font-size: var(--plf-font-size-sm);
}
[data-plf-root] :is(.editor-link-panel, [data-plf-part~="editor-link-panel"]) > :where(div) {
  display: flex;
  justify-content: flex-end;
  gap: var(--plf-space-2);
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) {
  position: relative;
  cursor: text;
  min-block-size: calc(var(--_plf-editor-rows, 6) * 1lh + 2 * var(--plf-space-2));
  max-block-size: var(--plf-editor-max-height, none);
  padding: var(--plf-space-2) var(--plf-space-3);
  overflow-y: auto;
  outline: none;
  overflow-wrap: break-word;
  white-space: break-spaces;
  font-variant-ligatures: none;
  font-feature-settings: "liga" 0;
}
[data-plf-root] :is(.editor, [data-plf-part~="editor"]):where([data-plf-disabled]) :is(.editor-content, [data-plf-part~="editor-content"]) {
  cursor: inherit;
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) > :where(p, h2, h3, ul, ol, blockquote) {
  margin-block: var(--plf-prose-block-gap, var(--plf-space-3)) 0;
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) > :where(:first-child) {
  margin-block-start: 0;
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) :where(h2, h3) {
  font-weight: var(--plf-font-weight-semibold);
  line-height: var(--plf-line-height-tight);
  letter-spacing: -0.025em;
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) :where(h2) {
  font-size: var(--plf-prose-h2-size, 1.875em);
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) :where(h3) {
  font-size: var(--plf-prose-h3-size, 1.5em);
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) :where(ul, ol) {
  padding-inline-start: var(--plf-space-6);
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) :where(ul) {
  list-style-type: disc;
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) :where(ol) {
  list-style-type: decimal;
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) :where(li) {
  position: relative;
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) :where(li + li) {
  margin-block-start: var(--plf-space-1);
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) :where(li, blockquote) > :where(p) {
  margin-block: 0;
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) :where(blockquote) > :where(p + p) {
  margin-block-start: var(--plf-prose-block-gap, var(--plf-space-3));
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) :where(blockquote) {
  margin-inline: 0;
  padding-inline-start: var(--plf-space-6);
  border-inline-start: calc(2 * var(--plf-border-width)) solid var(--plf-color-border);
  font-style: italic;
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) :where(a) {
  color: var(--plf-color-primary-text);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) :where(code) {
  padding: 0.15em 0.35em;
  border-radius: var(--plf-radius-md);
  background: var(--plf-prose-code-bg, var(--plf-color-surface-muted));
  color: var(--plf-prose-code-color, var(--plf-color-text));
  font-family: var(--plf-font-family-mono);
  font-size: 0.875em;
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) :where(img) {
  display: inline;
  margin: 0;
  border: none;
}
[data-plf-root] :is(.editor, [data-plf-part~="editor"]) > textarea:not([data-plf-part]) {
  min-block-size: calc(var(--_plf-editor-rows, 6) * 1lh + 2 * var(--plf-space-2));
  margin: 0;
  padding: var(--plf-space-2) var(--plf-space-3);
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  outline: none;
  color: inherit;
  font: var(--plf-font-size-sm)/var(--plf-line-height) var(--plf-font-family-mono);
}
[data-plf-root] :is(.editor-content, [data-plf-part~="editor-content"]) > :where(p:only-child[data-placeholder])::before {
  pointer-events: none;
  content: attr(data-placeholder);
  float: inline-start;
  block-size: 0;
  color: var(--plf-color-text-muted);
}
[data-plf-root] :is(.editor-status, [data-plf-part~="editor-status"]) {
  position: absolute;
  overflow: hidden;
  white-space: nowrap;
  inline-size: 1px;
  block-size: 1px;
  padding: 0;
  clip-path: inset(50%);
}
@media (forced-colors: active) {
  [data-plf-root] :is(.editor, [data-plf-part~="editor"]):has(> :where(:is(.editor-content, [data-plf-part~="editor-content"], textarea):focus)) {
    outline: var(--plf-input-focus-width, var(--plf-focus-width)) solid Highlight;
  }
  [data-plf-root] :is(.editor-tool, [data-plf-part~="editor-tool"])[aria-pressed="true"] {
    forced-color-adjust: none;
    background: Highlight;
    color: HighlightText;
  }
}
