/* Local writing assistance uses the shared HelpDesk theme and editor toolbar. */
.editor-toolbar.has-writing-assistance { flex-wrap:wrap; overflow-x:visible; }
.writing-assistance { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:3px; margin-left:auto; min-width:0; max-width:100%; }
.editor-toolbar .writing-assistance__toggle { gap:7px; white-space:nowrap; font-size:12px; font-weight:600; min-height:35px; }
.writing-assistance__switch { display:inline-block; flex:none; width:29px; height:17px; padding:2px; border:1px solid var(--stroke); border-radius:20px; background:var(--control-bg, #0c1728); }
.writing-assistance__switch::before { content:''; display:block; width:11px; height:11px; border-radius:50%; background:var(--muted); }
.writing-assistance__toggle[aria-checked='true'] .writing-assistance__switch { background:var(--primary-deep, #2563eb); border-color:var(--primary); }
.writing-assistance__toggle[aria-checked='true'] .writing-assistance__switch::before { transform:translateX(12px); background:#fff; }
.editor-toolbar .writing-assistance__count { width:98px; height:35px; flex:0 0 98px; min-width:98px; white-space:nowrap; font-size:11px; font-variant-numeric:tabular-nums; }
.editor-toolbar .writing-assistance__settings { width:35px; }
.writing-assistance button:disabled { cursor:default; opacity:.65; }
.writing-assistance button:focus-visible, .writing-assistance-dialog button:focus-visible, .writing-assistance-dialog :is(input,select,textarea):focus-visible { outline:2px solid var(--focus-color,var(--primary)); outline-offset:2px; }
.writing-assistance__feedback { margin:0; padding:6px 12px; color:var(--muted); font-size:12px; border-bottom:1px solid var(--stroke); }
.writing-assistance__feedback.is-error { color:var(--warning); }
::highlight(siemon-writing-spelling) { text-decoration:underline wavy var(--danger); text-decoration-thickness:1.5px; }
::highlight(siemon-writing-grammar) { text-decoration:underline wavy var(--primary); text-decoration-thickness:1.5px; }
::highlight(siemon-writing-punctuation) { text-decoration:underline dotted var(--warning); text-decoration-thickness:2px; }
.writing-assistance-dialog { box-sizing:border-box; color:var(--text); background:var(--panel-surface,var(--surface)); border:1px solid var(--stroke); border-radius:var(--radius-lg,22px); width:min(640px,calc(100vw - 28px)); max-width:calc(100vw - 28px); max-height:calc(100dvh - 28px); padding:20px; overflow:auto; box-shadow:0 22px 75px rgba(0,0,0,.4); }
.writing-assistance-dialog::backdrop { background:rgba(3,9,18,.65); backdrop-filter:blur(7px); }
.writing-assistance-dialog__header { display:flex; align-items:center; justify-content:space-between; gap:15px; }
.writing-assistance-dialog h2 { font-size:20px; margin:0; }
.writing-assistance-dialog h3 { margin:0 0 5px; overflow-wrap:anywhere; font-size:16px; }
.writing-assistance-dialog .field-help { color:var(--muted); font-size:13px; line-height:1.5; }
.writing-assistance-dialog button { cursor:pointer; }
.writing-assistance-dialog button:disabled { cursor:default; opacity:.65; }
.writing-assistance-dialog__content { min-width:0; }
.writing-assistance-form { display:grid; gap:12px; }
.writing-assistance-form > label:not(.check-line) { font-size:13px; font-weight:650; }
.writing-assistance-form :is(select,textarea) { box-sizing:border-box; width:100%; max-width:100%; padding:10px 12px; border:1px solid var(--control-stroke,var(--stroke)); border-radius:var(--radius-sm,12px); background:var(--control-bg,var(--surface)); color:var(--text); font:inherit; }
.writing-assistance-form textarea { resize:none; min-height:130px; }
.writing-assistance-form .check-line { display:flex; align-items:center; gap:10px; padding:5px 0; }
.writing-assistance-form input[type='checkbox'] { width:18px; height:18px; accent-color:var(--primary); }
.writing-assistance-dialog__status { min-height:1.4em; margin:4px 0; color:var(--warning); font-size:13px; }
.writing-assistance-issues { display:grid; gap:12px; }
.writing-assistance-issue { padding:14px; border:1px solid var(--stroke); border-radius:var(--radius-sm,12px); background:var(--surface); }
.writing-assistance-issue p { margin:6px 0; line-height:1.5; font-size:13px; }
.writing-assistance-context { color:var(--muted); overflow-wrap:anywhere; white-space:pre-wrap; }
.writing-assistance-issue__actions { display:flex; gap:7px; flex-wrap:wrap; margin-top:12px; }
.writing-assistance-issue__actions button { max-width:100%; overflow-wrap:anywhere; }
@media(max-width:680px) {
  .editor-toolbar .writing-assistance { flex:1 0 100%; border-top:1px solid var(--stroke); padding-top:4px; margin-top:3px; }
  .writing-assistance-dialog { padding:16px; }
  .writing-assistance-dialog__header { align-items:flex-start; }
}
@media(forced-colors:active) {
  .writing-assistance__toggle[aria-checked='true'] { border-color:Highlight; }
  .writing-assistance__switch { border-color:ButtonText; }
  .writing-assistance__switch::before { background:ButtonText; }
  ::highlight(siemon-writing-spelling),::highlight(siemon-writing-grammar),::highlight(siemon-writing-punctuation) { text-decoration-color:LinkText; }
}
.writing-admin-form { display:grid; gap:16px; max-width:760px; }
.writing-admin-switch { display:flex; align-items:center; gap:10px; }
.writing-admin-actions { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.writing-admin-status { min-height:1.5em; color:var(--muted); }
