.comments{margin-block:var(--s12);padding-top:var(--s8);border-top:1px solid var(--line-strong);min-width:0;max-width:100%;overflow-wrap:anywhere}
.comments-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s3);justify-content:space-between}.comments-heading h2{margin:0;font-size:1.5rem}.comments-heading>span,.comment-help,.comment-empty,.comment-item time{color:var(--muted)}
.comment-identity,.comment-item>header,.comment-actions,.comment-pagination,.comment-filters{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s2) var(--s4)}
.comment-identity{margin-block:var(--s5)}.comment-identity form{margin-left:auto}.comment-identity img,.comment-item img{border-radius:50%;object-fit:cover;flex:none}
.comment-login,.comment-notice{padding-block:var(--s5)}.comment-notice{border-left:3px solid var(--accent);padding-inline:var(--s4);background:var(--surface)}
.comment-form{display:grid;gap:var(--s4);margin-block:var(--s5)}.comment-form>.button{justify-self:start}.comment-help{font-size:.875rem;margin:0}.comment-editor>label{display:block;margin-bottom:var(--s3);font-weight:600}.comment-editor>label span{font-weight:400;color:var(--muted)}
.comment-toolbar{display:flex;flex-wrap:wrap;gap:var(--s2);padding:var(--s2);border:1px solid var(--line-strong);border-bottom:0;background:var(--surface-2)}
.comment-toolbar button,.comment-actions button,.comment-link,.comment-pagination a,.comment-filters a,.comment-reply-target button,.comment-link-input button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--control);min-width:var(--control);padding:var(--s2) var(--s3);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;text-decoration:none}
.comment-toolbar button:hover,.comment-link:hover,.comment-actions button:hover,.comment-pagination a:hover,.comment-filters a:hover{color:var(--accent);border-color:var(--accent)}.comment-filters a[aria-current=page]{color:var(--accent);border-color:var(--accent)}
.comment-rich,.comment-editor textarea{display:block;min-height:10rem;width:100%;max-width:100%;padding:var(--s4);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font:inherit;overflow-wrap:anywhere;resize:vertical}.comment-rich p{margin:0 0 var(--s3)}
.comment-editor>.comment-help{margin-top:var(--s3)}.comment-reply-target{padding:var(--s3);border-left:3px solid var(--accent);background:var(--surface-2)}.comment-reply-target button{margin-left:var(--s3)}
.comment-link-input{display:flex;flex-wrap:wrap;gap:var(--s2);padding-block:var(--s3)}.comment-link-input input{min-height:var(--control);max-width:100%;background:var(--surface);color:var(--text);border:1px solid var(--line-strong);padding:var(--s2)}
.comment-item{padding-block:var(--s6);border-top:1px solid var(--line);min-width:0;max-width:100%;overflow-wrap:anywhere;scroll-margin-top:6rem}.comment-item>header{font-size:.875rem}.comment-item>header time{margin-left:auto}.comment-admin-badge{color:var(--accent)}
.comment-is-reply{margin-left:var(--s3);padding-left:var(--s3);border-left:1px solid var(--line)}.comment-parent{display:block;margin-block:var(--s3);color:var(--muted);font-size:.875rem}.comment-body{margin-block:var(--s4);overflow-wrap:anywhere;min-width:0;max-width:100%;line-height:1.75}.comment-body p{margin-block:var(--s3)}
.comment-body a{color:var(--accent)}.comment-body pre,.comment-rich pre{overflow-x:auto;max-width:100%;padding:var(--s3);background:var(--surface-2);font-family:var(--mono);white-space:pre;overflow-wrap:normal}.comment-body code{font-family:var(--mono)}.comment-body blockquote,.comment-rich blockquote{margin-inline:0;padding-left:var(--s4);border-left:3px solid var(--line-strong)}
.comment-actions .comment-danger{color:var(--danger)}.comment-actions form{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2)}.comment-filters{margin-block:var(--s5)}.comment-actions span[role=status],[data-form-status]{color:var(--danger)}[data-form-status]:empty{display:none}.comment-pagination{margin-block:var(--s6)}
.comments [hidden],.comment-editor [hidden]{display:none!important}.comments :focus-visible,.comment-item :focus-visible,.comment-filters :focus-visible{outline:2px solid var(--accent);outline-offset:var(--s1)}.comments button:disabled,.comment-actions button:disabled{opacity:.6;cursor:wait}#comments,#admin-reply{scroll-margin-top:6rem}
@media(min-width:48rem){.comments{margin-block:var(--s16)}.comment-is-reply{margin-left:var(--s6);padding-left:var(--s4)}}

/* The toolbar and writing area form one familiar editor surface. */
.comment-editor-surface{position:relative;border:1px solid var(--line-strong);background:var(--surface)}
.comment-editor-surface .comment-toolbar{gap:var(--s1);padding:var(--s2);border:0;border-bottom:1px solid var(--line);background:var(--surface)}
.comment-toolbar button{width:var(--control);height:var(--control);padding:var(--s2);border-color:transparent;background:transparent}
.comment-toolbar svg{width:var(--s5);height:var(--s5);pointer-events:none}
.comment-toolbar button:hover,.comment-toolbar button[aria-pressed=true],.comment-toolbar button[aria-expanded=true]{background:var(--accent-dark);color:var(--accent);border-color:transparent}
.comment-editor-surface .comment-rich,.comment-editor-surface textarea{border:0;background:transparent}
.comment-editor-surface:focus-within{border-color:var(--accent)}
.comment-editor :focus-visible{outline:2px solid var(--accent);outline-offset:calc(-1 * var(--s1))}
.comment-emoji-picker{position:absolute;z-index:2;right:var(--s2);top:var(--comment-toolbar-height,4rem);width:min(22rem,calc(100% - var(--s4)));padding:var(--s2);border:1px solid var(--line-strong);background:var(--surface-2)}
.comment-emoji-heading{display:flex;align-items:center;justify-content:space-between;padding-left:var(--s2);font-size:.875rem;color:var(--muted)}
.comment-emoji-picker button{display:inline-flex;align-items:center;justify-content:center;min-width:var(--control);min-height:var(--control);padding:var(--s1);border:0;background:transparent;color:var(--text);cursor:pointer}
.comment-emoji-picker button:hover,.comment-emoji-picker button:focus-visible{background:var(--accent-dark)}
.comment-emoji-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--control),1fr));gap:var(--s1);max-height:16rem;overflow-y:auto}
.comment-emoji-grid button{font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",var(--sans);font-size:1.5rem}

.email-auth{padding-block:var(--s10) var(--s16);max-width:40rem;overflow-wrap:anywhere}
.email-back{display:inline-flex;align-items:center;min-height:var(--control);color:var(--muted)}
.email-auth h1{font-size:clamp(1.75rem,5vw,2.5rem);line-height:1.25;margin-block:var(--s6) var(--s3)}
.email-intro{margin-block:0 var(--s3)}
.email-form{display:grid;gap:var(--s5);margin-top:var(--s8)}
.email-field{display:grid;gap:var(--s2);min-width:0}.email-field label{font-weight:600}.email-field label span{font-weight:400;color:var(--muted);font-size:.875rem}
.email-field input{display:block;width:100%;min-width:0;min-height:var(--control);padding:var(--s3);font:inherit;border:1px solid var(--line-strong);border-radius:var(--r-sm,4px);background:var(--surface);color:var(--text)}
.email-code-row{display:flex;gap:var(--s3);min-width:0}.email-code-row input{flex:1}.email-code-row button{flex:none}
.email-form>.button{justify-self:start}.email-status{margin:0;color:var(--muted)}.email-status:empty{display:none}.email-error{color:var(--danger)}
.email-auth :focus-visible{outline:2px solid var(--accent);outline-offset:var(--s1)}.email-auth button:disabled{opacity:.6;cursor:not-allowed}
@media(max-width:24rem){.email-code-row{flex-direction:column}.email-code-row button{align-self:start}}
