/* Community: shared lists, reading, writing and administrator forms. */
.community-main { padding-top:28px; padding-bottom:32px; }
.community-intro { padding:28px 30px; border-radius:12px; background:linear-gradient(120deg,#242433,#44375c); color:#fff; }
.community-intro .community-eyebrow { color:#e5c892; font-size:11px; font-weight:700; letter-spacing:1.2px; margin:0 0 8px; }
.community-intro h1 { font-size:28px; line-height:1.3; margin:0 0 8px; letter-spacing:-.6px; }
.community-intro p { color:#e0dce7; font-size:14px; line-height:1.7; margin:0; }
.community-intro-compact { padding:24px 28px; }
.community-tabs { display:flex; gap:6px; margin:22px 0 20px; padding:0 0 12px; border-bottom:1px solid #e4e3e8; }
.community-tabs a { display:flex; align-items:center; justify-content:center; padding:11px 18px; border-radius:6px; color:#646371; font-size:14px; font-weight:600; text-decoration:none; white-space:nowrap; }
.community-tabs a:hover { color:#513f70; background:#f5f2f8; }
.community-tabs a[aria-current=page] { background:#44375c; color:#fff; }
.community-board-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.community-board { min-width:0; border:1px solid #e1dfe6; border-radius:10px; background:#fff; }
.community-toolbar { display:flex; justify-content:space-between; align-items:center; gap:14px; padding:20px 22px; border-bottom:1px solid #eeedf1; }
.community-toolbar h2, .community-contact h2, .community-answers h2 { font-size:18px; line-height:1.5; margin:0; letter-spacing:-.3px; }
.community-toolbar small { color:#757380; font-size:13px; font-weight:500; }
.community-toolbar .community-help { margin:4px 0 0; }
.community-write-actions { display:flex; align-items:center; gap:8px; flex-shrink:0; }
.community-button { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:40px; padding:9px 15px; border:1px solid #283647; border-radius:6px; background:#283647; color:#fff; font:inherit; font-size:13px; font-weight:700; text-decoration:none; cursor:pointer; flex-shrink:0; }
.community-button.secondary { background:#fff; color:#37404f; border-color:#d4d3dc; }
.community-button:hover { background:#3b4d63; color:#fff; }
.community-icon { display:inline-block; width:18px; height:18px; flex-shrink:0; vertical-align:middle; }
.community-more, .community-back, .community-actions a { color:#5d477c; text-decoration:none; font-size:13px; font-weight:600; }
.community-more:hover, .community-back:hover, .community-actions a:hover { text-decoration:underline; text-underline-offset:4px; }
.community-more { white-space:nowrap; }
.community-empty { padding:32px 22px; color:#76727f; font-size:14px; line-height:1.8; }
.community-empty strong { display:block; color:#34313d; font-weight:650; }
.community-empty p { margin:8px 0 16px; }
.community-empty-centered { text-align:center; padding:42px 20px 36px; }
.community-empty-centered>.community-icon { display:block; width:32px; height:32px; margin:0 auto 16px; color:#87739f; }
.community-list-summary { padding:15px 22px 10px; color:#7d7887; font-size:12px; }
.community-list-summary strong { color:#5d477c; font-weight:700; }
.community-post-row { display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; padding:17px 22px; border-bottom:1px solid #eeedf1; color:#292b32; text-decoration:none; }
.community-post-row:hover strong { text-decoration:underline; text-underline-offset:4px; color:#513f70; }
.community-post-row strong { font-size:15px; line-height:1.6; overflow-wrap:anywhere; font-weight:650; }
.community-post-row .community-meta { flex-basis:100%; margin:0; }
.community-discussion-row { flex-wrap:nowrap; justify-content:space-between; gap:24px; }
.community-row-main { display:flex; flex-direction:column; gap:8px; min-width:0; flex:1; }
.community-row-title { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 10px; }
.community-tag { display:inline-block; color:#69547f; background:#f1edf5; border-radius:4px; padding:2px 7px; font-size:11px; font-weight:700; line-height:1.6; text-decoration:none; }
.community-row-meta { display:flex; flex-wrap:wrap; align-items:center; gap:6px; font-size:12px; line-height:1.6; color:#817b89; }
.community-avatar { display:inline-flex; align-items:center; justify-content:center; width:21px; height:21px; border-radius:50%; background:#eeebf2; color:#79658b; font-size:10px; font-weight:650; flex-shrink:0; }
.community-meta-separator { color:#c7c2ce; }
.community-reply-count { display:flex; align-items:center; gap:5px; min-width:38px; justify-content:flex-end; color:#8a8195; font-size:12px; flex-shrink:0; }
.community-reply-count .community-icon { width:16px; height:16px; }
.community-meta, .community-help { color:#7c7585; font-size:12px; line-height:1.7; }
.community-help { margin:6px 0; }
.community-contact { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:22px; padding:18px 22px; background:#f6f4f8; border-radius:8px; }
.community-contact h2 { font-size:15px; }
.community-contact p { margin:5px 0 0; color:#7c7585; font-size:13px; line-height:1.6; }
.community-article { margin:20px 0; padding:26px 28px; border:1px solid #e1dfe6; border-radius:10px; background:#fff; }
.community-article h2 { margin:10px 0 12px; font-size:24px; line-height:1.5; letter-spacing:-.5px; overflow-wrap:anywhere; }
.community-article .community-meta { margin:0 0 24px; padding-bottom:18px; border-bottom:1px solid #eeedf1; }
.community-article .community-toolbar { padding:0 0 16px; }
.community-body { white-space:pre-wrap; overflow-wrap:anywhere; font-size:15px; line-height:1.9; color:#37333e; }
.community-answers { margin:20px 0; padding:24px 28px; border:1px solid #e1dfe6; border-radius:10px; background:#fff; }
.community-answer { padding:20px 0; border-bottom:1px solid #eeedf1; }
.community-answer.is-admin { padding:18px; margin:14px 0; background:#f7f5fa; border-left:3px solid #87739f; }
.community-answer .community-meta { margin:0 0 10px; }
.community-message { margin:16px 0; padding:14px 16px; background:#f6f5f8; color:#62596f; font-size:13px; line-height:1.8; border-radius:6px; }
.community-message.error { background:#fff0f0; color:#a32720; }
.community-message a { color:#513f70; }
.community-form { display:flex; flex-direction:column; gap:10px; margin-top:18px; }
.community-form label { margin-top:8px; font-size:14px; font-weight:650; }
.community-form input:not([type=hidden]), .community-form select, .community-form textarea, .community-filter input, .community-filter select, .community-title-search input { box-sizing:border-box; min-width:0; width:100%; padding:11px 12px; border:1px solid #d3cfdc; border-radius:6px; background:#fff; color:#292b32; font:inherit; font-size:16px; }
.community-form textarea { min-height:200px; resize:vertical; line-height:1.8; }
.community-form .community-button { align-self:flex-start; }
.community-honeypot { position:absolute; left:-9999px; }
.community-actions { display:flex; align-items:center; gap:20px; margin-top:16px; }
.community-text-button { padding:8px 0; border:0; background:none; color:#7c7585; font-size:12px; cursor:pointer; }
.community-back { display:inline-block; padding:12px 0; }
.community-filter { display:grid; grid-template-columns:auto minmax(120px,1fr) minmax(130px,1fr) auto; gap:10px; align-items:center; padding:18px 22px; border-bottom:1px solid #eeedf1; }
.community-filter label { font-size:13px; color:#746b80; }
.community-filter .community-help { grid-column:2 / -1; }
.community-filter:has(.community-autocomplete) { grid-template-columns:auto minmax(0,360px) auto; justify-content:start; }
.community-title-search { display:flex; justify-content:center; align-items:center; gap:8px; padding:0 22px 22px; }
.community-title-search input { max-width:340px; min-height:40px; padding:9px 12px; font-size:14px; }
.community-title-search .community-button { padding:9px 12px; }
.community-pagination { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:6px; padding:22px; font-size:13px; color:#817b89; }
.community-pagination a { display:flex; align-items:center; justify-content:center; color:#746b80; text-decoration:none; min-width:32px; min-height:34px; padding:5px 8px; border-radius:5px; }
.community-pagination a[aria-current=page] { background:#44375c; color:#fff; font-weight:700; }
.community-pagination a.is-disabled { color:#c6c0ce; pointer-events:none; }
.community-pagination a[href]:hover { background:#f1edf5; color:#513f70; }
.community-pagination a[aria-current=page]:hover { background:#44375c; color:#fff; }
.community-attachment { display:block; max-width:100%; max-height:900px; margin-top:12px; }
.community-tabs a:focus-visible, .community-button:focus-visible, .community-post-row:focus-visible, .community-notice-row:focus-visible, .community-pagination a:focus-visible, .community-filter :focus-visible, .community-form :focus-visible, .community-title-search :focus-visible { outline:2px solid #87739f; outline-offset:3px; }
.community-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.community-autocomplete { position:relative; min-width:0; }
.community-suggestions { position:absolute; top:calc(100% + 4px); left:0; right:0; z-index:30; max-height:260px; overflow-y:auto; background:#fff; border:1px solid #c2b7cf; border-radius:7px; box-shadow:0 8px 24px #20233518; }
.community-suggestions[hidden] { display:none; }
.community-suggestions button { display:block; width:100%; text-align:left; padding:12px; border:0; border-bottom:1px solid #f0edf3; background:#fff; color:#292b32; font:inherit; cursor:pointer; }
.community-suggestions button:hover, .community-suggestions button[aria-selected=true] { background:#f0edf6; color:#503d70; }
.community-suggestions p { padding:12px; margin:0; font-size:13px; color:#7c7585; }
.community-notice-list { margin:0 0 22px; border-left:3px solid #87739f; background:#f7f4fa; border-radius:0 7px 7px 0; }
.community-notice-row { display:flex; align-items:center; gap:10px; padding:14px 18px; border-bottom:1px solid #ece6f1; text-decoration:none; color:#534361; }
.community-notice-row:last-child { border-bottom:0; }
.community-notice-row strong { flex:1; font-size:13px; line-height:1.6; font-weight:600; overflow-wrap:anywhere; }
.community-notice-row:hover strong { text-decoration:underline; text-underline-offset:4px; }
.community-notice-row .community-tag { background:#e9e1f1; white-space:nowrap; }
.community-notice-arrow { color:#a18eb3; font-size:16px; }
@media(max-width:768px) {
 .community-main { padding-top:20px; }
 .community-intro, .community-intro-compact { padding:20px; }
 .community-intro h1 { font-size:24px; }
 .community-intro p { font-size:13px; }
 .community-tabs { gap:4px; margin:16px 0; }
 .community-tabs a { flex:1; padding:10px 5px; font-size:12px; }
 .community-board-grid { grid-template-columns:minmax(0,1fr); }
 .community-toolbar { flex-wrap:wrap; padding:16px; }
 .community-toolbar h2 { font-size:16px; }
 .community-write-actions { gap:6px; }
 .community-write-actions .community-button { min-height:36px; font-size:12px; padding:7px 10px; }
 .community-post-row { padding:15px 16px; }
 .community-post-row strong { font-size:14px; }
 .community-discussion-row { gap:12px; }
 .community-row-title { gap:6px; }
 .community-row-meta { font-size:11px; }
 .community-reply-count { min-width:26px; }
 .community-article, .community-answers { padding:20px 16px; }
 .community-article h2 { font-size:21px; }
 .community-body { font-size:14px; }
 .community-filter, .community-filter:has(.community-autocomplete) { grid-template-columns:minmax(0,1fr) auto; padding:16px; justify-content:stretch; }
 .community-filter label, .community-filter>input:not([type=hidden]) { grid-column:1 / -1; }
 .community-filter .community-autocomplete { grid-column:1; }
 .community-filter .community-help { grid-column:1 / -1; }
 .community-list-summary { padding:12px 16px 8px; }
 .community-title-search { padding:0 16px 18px; }
 .community-empty-centered { padding:32px 16px; }
 .community-pagination { gap:3px; padding:18px 8px; }
 .community-pagination a { min-width:28px; padding:5px 6px; }
 .community-contact { align-items:flex-start; padding:16px; gap:10px; flex-direction:column; }
 .community-notice-list { margin-bottom:16px; }
 .community-notice-row { flex-wrap:wrap; padding:12px; gap:7px; }
 .community-notice-row .community-meta { display:none; }
 .community-notice-row strong { font-size:12px; }
}

/* A discussion stays inside one reading surface; role is shown as text as well as color. */
.community-thread-byline { display:flex; align-items:center; gap:8px; color:#817b89; font-size:12px; margin:16px 0 22px; }
.community-thread-byline strong { color:#645b6e; font-weight:600; }
.community-thread-byline time { margin-left:auto; }
.community-thread-body { padding:0 0 20px; }
.community-thread-replies.community-answers { padding:22px 0 0; margin:16px 0 0; border:0; border-top:1px dashed #dfd8e6; border-radius:0; }
.community-thread-replies h3 { margin:0 0 16px; font-size:14px; color:#75697f; }
.community-thread-replies h3 span { color:#513f70; }
.community-thread-replies .community-empty { padding:12px 0; }
.community-reply.community-answer { border:0; border-radius:8px; margin:10px 0; padding:16px 18px; background:#f6f4f7; }
.community-reply.community-answer.is-admin { background:#f1edf5; border:0; }
.community-reply.community-answer.is-author { background:#f0f3f8; }
.community-reply-header { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:10px; color:#655e6d; font-size:12px; }
.community-reply-header strong { font-weight:600; }
.community-reply-header time { margin-left:auto; color:#95899f; font-size:11px; }
.community-role { display:inline-flex; align-items:center; padding:3px 9px; border-radius:12px; font-size:11px; font-weight:700; color:#fff; background:#65517f; }
.community-role.is-author { background:#5b7396; }
.community-reply .community-body { font-size:14px; line-height:1.85; }
.community-reply-form textarea { min-height:100px; }
@media(max-width:768px) { .community-reply.community-answer { padding:14px 12px; } .community-thread-byline { flex-wrap:wrap; } .community-thread-byline time { font-size:11px; } .community-reply-header { gap:6px; } .community-reply-header time { flex-basis:100%; margin:0; } }
