.news-feature { --news-purple:#5946b4; --news-pale:#f3effb; color:var(--text,#262336); min-width:0; }
.news-feature[hidden] { display:none; }
.news-topbar { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; padding:20px 24px; border-bottom:1px solid var(--border,#e4dfeb); }
.news-topbar h2 { margin:0 0 5px; font-size:22px; }
.news-topbar p,.news-muted { color:var(--muted,#777180); font-size:13px; }
.news-topbar p { margin:0; }
.news-actions,.news-detail-tools,.news-interactions,.news-filter-options { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.news-feature button,.news-modal button,.news-modal footer a { border:1px solid #dcd5eb; border-radius:10px; padding:9px 12px; background:#fff; color:#4d416b; font:inherit; font-size:13px; cursor:pointer; }
.news-feature button:hover,.news-modal button:hover { background:var(--news-pale,#f3effb); }
.news-feature button:focus-visible,.news-modal button:focus-visible,.news-modal a:focus-visible { outline:3px solid #aa96ef; outline-offset:2px; }
.news-feature button:disabled,.news-modal button:disabled { cursor:wait; opacity:.55; }
.news-columns { display:grid; grid-template-columns:minmax(280px,360px) minmax(0,1fr); min-height:600px; height:calc(100dvh - 255px); }
.news-list-panel { border-right:1px solid #e4dfeb; padding:16px; overflow:auto; }
.news-tabs { display:flex; gap:6px; }
.news-tabs button { flex:1; white-space:nowrap; }
.news-tabs button[aria-selected=true],.news-interactions button[aria-pressed=true] { background:#ede6fb; border-color:#ad98de; color:#493396; font-weight:700; }
.news-filter-options { margin-top:12px; }
.news-feature select { border:1px solid #ddd6ea; border-radius:8px; padding:7px; background:#fff; font:inherit; font-size:12px; }
.news-list-state { margin:12px 0; min-height:32px; font-size:12px; line-height:1.6; color:#766d87; }
.news-post-list { display:grid; gap:10px; }
.news-post-card { display:flex; flex-direction:column; align-items:flex-start; gap:7px; text-align:left; width:100%; padding:15px!important; background:#fff!important; }
.news-post-card.selected { border-color:#8870ce; box-shadow:0 0 0 1px #8870ce; background:#faf7ff!important; }
.news-post-card strong { font-size:16px; color:#29213b; }
.news-card-body { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; line-height:1.6; color:#5e5769; }
.news-card-meta,.news-card-date,.news-card-place { font-size:12px; color:#83798f; line-height:1.5; }
.news-card-place:empty { display:none; }
.news-more { display:block; width:100%; margin-top:14px; }
.news-feature [hidden] { display:none!important; }
.news-detail-panel { padding:24px 28px 36px; overflow:auto; min-width:0; }
.news-detail-tools { justify-content:flex-end; margin-bottom:24px; }
.news-byline { color:#625774; font-size:14px; margin-bottom:6px; }
.news-detail-content h2 { font-size:25px; margin:20px 0; line-height:1.4; overflow-wrap:anywhere; }
.news-body { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.8; font-size:14px; }
.news-empty { text-align:center; color:#8a8295; padding:48px 20px; font-size:14px; }
.news-lock { border-radius:16px; padding:35px 20px; text-align:center; background:#f7f3fe; line-height:1.8; }
.news-lock small { display:block; margin-top:14px; color:#81728e; }
.news-own-state { color:#6850a0; font-size:13px; }
.news-media-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; margin:20px 0; }
.news-media-image { border-radius:14px!important; overflow:hidden; padding:0!important; position:relative; background:#f5f2f9!important; min-height:150px; }
.news-media-image img { width:100%; height:200px; object-fit:cover; display:block; }
.news-media-image span { display:block; padding:8px; font-size:12px; }
.news-video-button { min-height:90px; background:#f4effb!important; }
.news-interactions { border-bottom:1px solid #e4dfeb; padding-bottom:24px; margin:22px 0; }
.news-comments h3 { margin:0 0 18px; font-size:16px; }
.news-comment { margin-left:calc(var(--reply-depth,0)*18px); padding:13px 15px; border-radius:13px; background:#f5f2fa; margin-bottom:10px; }
.news-comment-heading { display:flex; flex-wrap:wrap; gap:8px; align-items:baseline; margin-bottom:5px; }
.news-comment-heading strong { font-size:13px; }
.news-comment-heading time { font-size:11px; color:#92889e; }
.news-comment-actions { display:flex; gap:9px; align-items:center; margin-top:7px; color:#806e9e; font-size:11px; }
.news-comment-actions button { border:0; padding:3px 0; background:none; font-size:11px; }
.news-reply-to { color:#8a789d; }
.news-comment-form { display:grid; grid-template-columns:1fr auto; gap:10px; margin-top:24px; }
.news-comment-form textarea,.news-comment-form label,.news-reply-label { grid-column:1/-1; }
.news-comment-form small { align-self:center; font-size:11px; color:#8c8298; }
.news-comment-form button[type=submit] { background:#5946b4; border-color:#5946b4; color:white; }
.news-feature textarea,.news-modal textarea,.news-modal input:not([type=checkbox]) { width:100%; box-sizing:border-box; border:1px solid #d9d1e7; border-radius:10px; padding:12px; font:inherit; font-size:14px; line-height:1.6; background:white; color:#302a3e; }
.news-feature textarea,.news-modal textarea { resize:vertical; }
.news-reply-label { font-size:12px; color:#675088; display:flex; justify-content:space-between; align-items:center; }
.news-modal { width:min(620px,calc(100vw - 32px)); max-height:88dvh; padding:0; border:1px solid #ddd4ec; border-radius:20px; box-shadow:0 24px 100px #21163c44; color:#302a3e; background:white; }
.news-modal::backdrop { background:#21163288; }
.news-modal header { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:18px 22px; border-bottom:1px solid #eee8f4; }
.news-modal h2 { font-size:19px; margin:0; }
.news-modal h3 { font-size:16px; margin:0 0 12px; }
.news-modal p { line-height:1.7; font-size:13px; }
.news-modal-body { padding:22px; }
.news-modal footer { display:flex; justify-content:flex-end; gap:12px; padding:16px 22px; border-top:1px solid #eee8f4; }
.news-modal footer a { text-decoration:none; }
.news-rules { white-space:pre-wrap; overflow-wrap:anywhere; font-size:13px; line-height:1.85; margin:16px 0; }
.news-checkbox { display:flex; align-items:center; gap:8px; font-size:14px; line-height:1.6; }
.news-checkbox input { width:18px; height:18px; accent-color:#5946b4; flex-shrink:0; }
.news-error { color:#ad3333!important; }
.news-media-modal { width:min(1060px,calc(100vw - 32px)); }
.news-media-modal video { width:100%; max-height:66dvh; background:#19141f; }
.news-image-full { max-height:66dvh; overflow:auto; text-align:center; }
.news-image-full img { max-width:100%; height:auto; }
.news-notices { display:grid; gap:10px; }
.news-notices button { text-align:left; display:grid; gap:8px; line-height:1.7; }
.news-notices time { color:#93879f; font-size:12px; }
.news-settings-card { border-bottom:1px solid #e8e2ef; padding-bottom:20px; margin-bottom:20px; }
.news-settings-card form { display:grid; gap:12px; }
.news-settings-card small { font-size:12px; color:#887991; line-height:1.7; }
.news-settings-card summary { cursor:pointer; color:#58417e; font-weight:600; }
.news-block-row { display:flex; justify-content:space-between; gap:15px; align-items:center; padding:7px 0; font-size:14px; }
@media(max-width:1050px) { .news-columns { grid-template-columns:280px minmax(0,1fr); } .news-detail-panel { padding:20px; } }
@media(max-width:760px) { .news-columns { display:block; height:auto; } .news-list-panel { max-height:390px; border-right:0; border-bottom:1px solid #e4dfeb; } .news-detail-panel { max-height:none; } .news-topbar { padding:16px; } .news-actions button { font-size:12px; } }
