.article-editor { min-height: 420px; padding: 18px; border: 1px solid var(--line); border-radius: 9px; background: white; font-size: 14px; line-height: 1.75; outline: none; }
.article-editor:focus { border-color: #b59d35; box-shadow: 0 0 0 3px rgba(240, 212, 90, .28); }
.article-editor:empty::before { color: var(--muted); content: attr(data-placeholder); pointer-events: none; }
.article-editor h2, .article-editor h3 { margin: 22px 0 8px; font-size: 18px; line-height: 1.5; }
.article-editor p { margin: 0 0 14px; }
.article-editor blockquote { margin: 16px 0; padding: 10px 14px; border-left: 4px solid var(--yellow); background: var(--soft); }
.article-editor img { display: block; max-width: 100%; height: auto; margin: 16px auto; border-radius: 9px; }
.article-editor .article-spacer { min-height: 24px; }
.editor-help { margin-top: 8px; color: var(--muted); font-size: 12px; }
.source-import-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: end; }
.import-action { display: grid; gap: 6px; align-items: end; margin-bottom: 14px; }
.import-action output { display: block; max-width: 240px; color: var(--muted); font-size: 12px; line-height: 1.4; }
.source-import-row button { white-space: nowrap; }
.tag-field { display: grid; align-content: start; gap: 8px; margin-bottom: 14px; font-size: 13px; font-weight: 650; }
.tag-presets { display: flex; flex-wrap: wrap; gap: 8px; }
.tag-option { display: inline-flex; align-items: center; gap: 6px; min-height: 38px; margin: 0; padding: 7px 10px; border: 1px solid var(--line); border-radius: 9px; background: white; font-weight: 650; cursor: pointer; }
.tag-option:has(input:checked) { border-color: #dbc147; background: var(--yellow); }
.tag-option input { width: auto; margin: 0; accent-color: var(--ink); }
.custom-tags { margin: 0; color: var(--muted); font-size: 12px; }
@media (max-width: 760px) { .article-editor { min-height: 340px; padding: 14px; } }
@media (max-width: 760px) { .source-import-row { grid-template-columns: 1fr; } .import-action { margin: -4px 0 14px; } .import-action output { max-width: none; } }
