.news-reading { width:100%; max-width:940px; margin:0 auto; }
.news-reading-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 15px; }
.news-reading-toolbar .news-back { margin:0; }
.news-open-chat { display:none; align-items:center; justify-content:center; flex-shrink:0; width:36px; height:36px; border:1px solid var(--line); border-radius:9px; background:var(--surface); color:var(--accent); }
.news-open-chat svg { width:17px; height:17px; }
.chat-collapsed .news-open-chat { display:flex; }
body:has(#news-reading) .restore-chat { display:none!important; }
.news-back { display:inline-flex; align-items:center; gap:8px; min-height:32px; margin:0 0 15px; color:var(--muted); font-size:11px; transition:color 240ms; }
.news-back svg { width:13px; height:13px; transform:rotate(180deg); }
.news-back:hover { color:var(--accent); }
.news-article { min-width:0; border:1px solid var(--line); border-radius:15px; background:var(--surface); overflow:hidden; }
.news-article-head { padding:29px 34px 25px; border-bottom:1px solid var(--line); }
.news-article-category { display:inline-flex; align-items:center; min-height:23px; padding:3px 8px; border:1px solid var(--accent-edge); border-radius:6px; background:var(--accent-wash); color:var(--accent); font-size:10px; line-height:1.5; }
.news-article-head h1 { margin:17px 0 11px; color:var(--text); font:600 32px/1.35 Community,Arial,sans-serif; letter-spacing:-.6px; overflow-wrap:anywhere; }
.news-article-summary { max-width:680px; margin:0; color:var(--secondary); font-size:13px; line-height:1.8; overflow-wrap:anywhere; }
.news-publisher { display:flex; align-items:center; gap:10px; margin-top:23px; }
.news-avatar { display:grid; place-items:center; flex-shrink:0; width:33px; height:33px; padding:0; border:1px solid var(--line); border-radius:50%; overflow:hidden; background:var(--surface-hi); color:var(--secondary); font-size:12px; }
.news-avatar img { display:block; width:100%; height:100%; object-fit:cover; }
.news-publisher > div { display:flex; flex-direction:column; gap:4px; min-width:0; }
.news-publisher .member-name { color:var(--text); font-size:11px; font-weight:550; }
.news-publisher time { color:var(--muted); font-size:10px; line-height:1.5; }
.news-publisher > a { display:flex; align-items:center; gap:6px; align-self:flex-end; min-height:29px; margin-left:auto; padding:5px 7px; border-radius:6px; color:var(--muted); font-size:10px; }
.news-publisher > a svg { width:14px; height:14px; }
.news-publisher > a:hover { background:var(--accent-wash); color:var(--accent); }
.news-article-body { max-width:790px; min-width:0; padding:27px 34px 30px; color:var(--secondary); font-size:14px; line-height:1.95; overflow-wrap:anywhere; }
.news-article-body p { margin:0 0 20px; white-space:pre-line; }
.news-article-body p:last-child { margin-bottom:0; }
.news-article-body h2 { margin:26px 0 12px; color:var(--text); font-size:17px; line-height:1.5; font-weight:600; }
.news-article-body ul { display:grid; gap:7px; padding-left:21px; margin:0 0 22px; }
.news-article-body li::marker { color:var(--accent); }
.news-article-actions { display:flex; align-items:center; flex-wrap:wrap; gap:11px; padding:18px 34px; border-top:1px solid var(--line); }
.news-article-actions button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:38px; padding:8px 12px; border:1px solid transparent; border-radius:8px; color:var(--secondary); font-size:11px; line-height:1.5; transition:color 240ms,background-color 240ms,border-color 240ms; }
.news-article-actions button svg { flex-shrink:0; width:16px; height:16px; }
.news-article-actions .news-thanks { border-color:var(--line); background:var(--surface-hi); }
.news-thanks b { min-width:2ch; font-size:11px; font-weight:500; text-align:right; font-variant-numeric:tabular-nums; }
.news-article-actions .news-thanks:hover,.news-article-actions .news-thanks.is-thanked { border-color:var(--accent-edge); background:var(--accent-wash); color:var(--accent); }
.news-thanks.is-thanked svg { fill:color-mix(in srgb,var(--violet) 25%,transparent); }
.news-article-actions .news-discuss:hover,.news-article-actions .news-share:hover { background:var(--accent-wash); color:var(--accent); }
.news-discuss > span { color:var(--muted); font-size:10px; font-variant-numeric:tabular-nums; }
.news-article-actions .news-share { margin-left:auto; }
.news-share:disabled { cursor:wait; }
.news-action-status { min-height:19px; margin:0 34px 10px; color:var(--accent); font-size:10px; line-height:1.6; }
.news-share-link { display:block; max-width:calc(100% - 68px); width:100%; margin:0 34px 12px; padding:10px; border:1px solid var(--accent-edge); border-radius:7px; background:var(--surface-hi); color:var(--text); font:12px/1.5 Consolas,monospace; }
.news-comments-section { min-width:0; margin-top:25px; padding:25px 29px 28px; border:1px solid var(--line); border-radius:15px; background:var(--surface); scroll-margin-top:calc(var(--top,68px) + 25px); }
.news-comments-head { display:flex; align-items:center; gap:9px; margin-bottom:10px; }
.news-comments-head > svg { width:17px; height:17px; color:var(--accent); }
.news-comments-head h2 { margin:0; color:var(--text); font-size:15px; line-height:1.5; font-weight:600; }
.news-comments-head > span { min-width:2ch; color:var(--muted); font-size:11px; font-variant-numeric:tabular-nums; }
.news-comment { display:flex; align-items:flex-start; gap:12px; min-width:0; padding:21px 4px; border-bottom:1px solid var(--line); border-radius:0; scroll-margin-top:calc(var(--top,68px) + 22px); scroll-margin-bottom:110px; outline:0; transition:background-color 260ms; }
.news-comment.is-target { background:var(--accent-wash); border-radius:9px; }
.news-comment:focus-visible { outline:2px solid var(--accent); outline-offset:3px; border-radius:9px; }
.news-comment-content { flex:1; min-width:0; }
.news-comment-content > header { display:flex; align-items:baseline; flex-wrap:wrap; gap:5px 9px; margin:2px 0 9px; min-width:0; }
.news-comment-content .member-name { color:var(--accent); font-size:11px; font-weight:550; overflow-wrap:anywhere; }
.news-comment-content > header time { margin-left:auto; color:var(--muted); font-size:9px; line-height:1.5; }
.news-comment-content > header > small { color:var(--muted); font-size:8px; }
.news-comment-text { margin:0; color:var(--text); font-size:13px; line-height:1.85; white-space:pre-wrap; overflow-wrap:anywhere; }
.news-comment-actions { display:flex; align-items:center; flex-wrap:wrap; gap:4px 12px; margin-top:8px; }
.news-comment-actions button { padding:2px 0; color:var(--muted); font-size:10px; line-height:1.5; transition:color 220ms; }
.news-comment-actions button:hover { color:var(--accent); }
.news-no-comments { display:flex; flex-direction:column; align-items:center; gap:9px; padding:32px 12px 38px; color:var(--muted); }
.news-no-comments > svg { width:25px; height:25px; color:var(--accent); }
.news-no-comments b { color:var(--secondary); font-size:12px; font-weight:500; }
.news-no-comments span { font-size:11px; line-height:1.6; text-align:center; }
.news-comment-form { display:flex; gap:12px; min-width:0; margin-top:23px; scroll-margin-bottom:100px; }
.news-composer-content { flex:1; min-width:0; }
.news-comment-form textarea,.news-edit-form textarea { display:block; width:100%; min-width:0; min-height:80px; max-height:240px; padding:12px; border:1px solid var(--line); border-radius:9px; background:var(--surface-hi); color:var(--text); font:12px/1.8 Community,Arial,sans-serif; resize:vertical; outline:0; transition:border-color 240ms; scroll-margin-top:calc(var(--top,68px) + 24px); scroll-margin-bottom:120px; }
.news-comment-form textarea:focus,.news-edit-form textarea:focus { border-color:var(--accent-edge); }
.news-comment-form textarea::placeholder { color:var(--muted); }
.news-composer-footer { display:flex; align-items:center; flex-wrap:wrap; gap:8px 10px; margin-top:10px; }
.news-draft-state { margin-right:auto; color:var(--muted); font-size:9px; line-height:1.6; }
.news-char-count { color:var(--muted); font-size:9px; white-space:nowrap; font-variant-numeric:tabular-nums; }
.news-primary { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:37px; max-width:100%; padding:9px 13px; border:1px solid transparent; border-radius:8px; background:var(--violet); color:var(--text); font-size:11px; font-weight:550; line-height:1.5; transition:background-color 240ms,color 240ms; }
.news-primary svg { flex-shrink:0; width:14px; height:14px; }
.news-primary:hover { background:var(--accent-hover); }
.news-primary:disabled { border-color:var(--line); background:var(--surface-hi); color:var(--muted); cursor:default; }
.news-guest { display:flex; justify-content:center; padding:24px 0 0; }
.news-quote { display:flex; align-items:center; gap:8px; min-width:0; margin:0 0 10px; padding:8px 10px; border-left:2px solid var(--accent-edge); border-radius:0 6px 6px 0; background:var(--accent-wash); }
.news-quote > button:first-child { display:flex; flex-direction:column; gap:4px; flex:1; min-width:0; width:0; padding:0; text-align:left; }
.news-quote b { color:var(--accent); font-size:10px; font-weight:550; }
.news-quote span { display:block; max-width:100%; color:var(--muted); font-size:10px; line-height:1.5; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.news-cancel-reply { display:grid; place-items:center; flex-shrink:0; width:27px; height:27px; color:var(--muted); }
.news-cancel-reply svg { width:13px; height:13px; }
.news-reply-label { margin-bottom:8px; color:var(--muted); font-size:10px; line-height:1.5; }
.news-reply-label b { color:var(--accent); font-weight:500; }
.news-edit-form > div { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-top:9px; }
.news-edit-form button { padding:6px 9px; border-radius:6px; color:var(--muted); font-size:10px; }
.news-edit-form .news-small-primary { background:var(--accent-wash); color:var(--accent); }
.news-edit-form .news-small-primary:disabled { opacity:.5; }
.news-delete-confirm { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:10px; padding:9px 10px; border:1px solid var(--line); border-radius:7px; color:var(--secondary); font-size:10px; line-height:1.5; }
.news-delete-confirm button { padding:4px 6px; color:var(--accent); font-size:10px; }
.news-missing { display:flex; align-items:center; flex-direction:column; gap:15px; min-height:420px; justify-content:center; padding:25px; text-align:center; }
.news-missing > span svg { width:38px; height:38px; color:var(--accent); }
.news-missing h1 { margin:0; color:var(--text); font-size:24px; line-height:1.5; }
.news-missing p { margin:0; color:var(--muted); font-size:12px; }
.news-missing a { display:flex; align-items:center; gap:8px; padding:10px 0; color:var(--accent); font-size:12px; }
.news-missing a svg { width:14px; height:14px; }
.news-reading :is(button,a):focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
@media(max-width:1100px) {
 .news-article-head { padding:25px; }
 .news-article-body { padding:23px 25px; }
 .news-article-actions { padding:17px 25px; gap:7px; }
 .news-action-status { margin-left:25px; margin-right:25px; }
 .news-share-link { margin-left:25px; margin-right:25px; max-width:calc(100% - 50px); }
 .news-comments-section { padding:23px; }
}
@media(max-width:760px) {
 .news-open-chat { display:flex; }
 .news-back { margin-bottom:12px; }
 .news-article,.news-comments-section { border-radius:12px; }
 .news-article-head { padding:21px 18px; }
 .news-article-head h1 { font-size:27px; margin-top:14px; }
 .news-article-summary { font-size:12px; }
 .news-publisher { margin-top:18px; }
 .news-article-body { padding:23px 18px; font-size:13px; line-height:1.9; }
 .news-article-body h2 { font-size:16px; }
 .news-article-actions { padding:13px 14px; gap:5px; }
 .news-article-actions button { padding:7px 9px; gap:6px; font-size:10px; }
 .news-article-actions .news-share { margin-left:0; }
 .news-action-status { margin-left:18px; margin-right:18px; }
 .news-share-link { margin-left:18px; margin-right:18px; max-width:calc(100% - 36px); font-size:11px; }
 .news-comments-section { padding:20px 16px; margin-top:18px; }
 .news-comments-head h2 { font-size:14px; }
 .news-comment { gap:9px; padding:19px 0; }
 .news-comment-content > header { gap:4px 8px; }
 .news-comment-content > header time { margin-left:0; font-size:9px; }
 .news-comment-content .member-name { font-size:12px; }
 .news-avatar { width:29px; height:29px; }
 .news-comment-text { font-size:12px; }
 .news-comment-actions { gap:5px 10px; }
 .news-comment-actions button { font-size:10px; }
 .news-comment-form { gap:9px; margin-top:20px; }
 .news-comment-form > .news-avatar { display:none; }
 .news-composer-footer { gap:8px; }
 .news-primary { min-height:37px; font-size:10px; padding:9px 11px; }
 .news-draft-state { font-size:8px; }
 .news-char-count { font-size:8px; }
 .news-primary svg { width:13px; height:13px; }
}
@media(pointer:coarse) { .news-comment-form textarea,.news-edit-form textarea { font-size:16px; } .news-comment-actions button { min-height:30px; } .news-article-actions button,.news-primary { min-height:42px; } }
@media(prefers-reduced-motion:reduce) { .news-reading * { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
