.community-page {
    background: var(--portal-color-background, #f7f4ec);
    color: var(--portal-color-text, #243326);
}
.community-page h1,.community-page h2,.community-page h3 { color: var(--portal-color-heading, #174f2b); }
.community-hero {
    padding: clamp(4rem, 8vw, 8rem) 0;
    background:
        radial-gradient(circle at 82% 18%, color-mix(in srgb, var(--portal-color-accent, #b68a55) 25%, transparent), transparent 30%),
        linear-gradient(135deg, var(--portal-color-surface, #fff), var(--portal-color-background, #f7f4ec));
    border-bottom: 1px solid var(--portal-color-border, #ddd6c7);
}
.community-hero__grid { display:grid; grid-template-columns:minmax(0,1fr) 19rem; gap:clamp(2rem,6vw,6rem); align-items:end; }
.community-eyebrow { text-transform:uppercase; letter-spacing:.16em; font-weight:800; font-size:.75rem; color:var(--portal-color-accent, #8b6b45); }
.community-hero h1,.community-area-hero h1,.community-topic-hero h1 { max-width:16ch; font-size:clamp(2.6rem,6vw,5.8rem); line-height:.98; letter-spacing:-.055em; margin:.5rem 0 1.5rem; }
.community-hero__lead,.community-topic-lead { max-width:48rem; font-size:clamp(1.05rem,2vw,1.35rem); line-height:1.7; color:var(--portal-color-muted, #667064); }
.community-actions { display:flex; flex-wrap:wrap; align-items:center; gap:1rem; margin-top:2rem; }
.community-login-hint { max-width:25rem; font-size:.9rem; color:var(--portal-color-muted, #667064); }
.community-hero__summary { display:grid; gap:.75rem; padding:1.5rem; border:1px solid var(--portal-color-border, #ddd6c7); border-radius:1.5rem; background:color-mix(in srgb, var(--portal-color-surface, #fff) 88%, transparent); box-shadow:var(--portal-shadow-card, 0 18px 50px rgba(0,0,0,.08)); }
.community-hero__summary strong { font-size:1.1rem; }
.community-hero__summary span { padding-top:.75rem; border-top:1px solid var(--portal-color-border, #ddd6c7); }
.community-section-heading { display:flex; justify-content:space-between; gap:2rem; margin-bottom:2rem; }
.community-section-heading h2 { font-size:clamp(2rem,4vw,3.4rem); margin:.25rem 0 .75rem; letter-spacing:-.04em; }
.community-section-heading p { max-width:52rem; color:var(--portal-color-muted, #667064); }
.community-area-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.25rem; }
.community-area-card { position:relative; min-height:18rem; padding:1.75rem; display:flex; flex-direction:column; border:1px solid var(--portal-color-border, #ddd6c7); border-radius:1.5rem; background:var(--portal-color-surface, #fff); color:inherit; text-decoration:none; box-shadow:var(--portal-shadow-card, 0 14px 35px rgba(0,0,0,.06)); transition:transform .2s ease,box-shadow .2s ease; overflow:hidden; }
.community-area-card:hover { transform:translateY(-4px); box-shadow:var(--portal-shadow-elevated, 0 24px 55px rgba(0,0,0,.12)); }
.community-area-card__number { position:absolute; right:1.25rem; top:1rem; font-size:3.8rem; font-weight:900; opacity:.07; }
.community-area-card__icon { width:2.8rem; height:2.8rem; display:grid; place-items:center; border-radius:50%; background:var(--portal-color-primary-soft, #e5efe6); color:var(--portal-color-primary, #174f2b); font-size:1.35rem; }
.community-area-card h3 { margin:2rem 0 .7rem; font-size:1.35rem; }
.community-area-card p { color:var(--portal-color-muted, #667064); line-height:1.65; }
.community-area-card__link { margin-top:auto; padding-top:1.25rem; font-weight:800; color:var(--portal-color-primary, #174f2b); }
.community-section--soft { background:var(--portal-color-surface-soft, #eee9de); }
.community-featured-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.community-layout { display:grid; grid-template-columns:minmax(0,1fr) 20rem; gap:2.5rem; align-items:start; }
.community-topic-list { display:grid; gap:1rem; }
.community-topic-card { padding:1.5rem; border:1px solid var(--portal-color-border, #ddd6c7); border-radius:1.3rem; background:var(--portal-color-surface, #fff); box-shadow:var(--portal-shadow-card, 0 12px 30px rgba(0,0,0,.05)); }
.community-topic-card--featured { min-height:15rem; display:flex; flex-direction:column; }
.community-topic-card__meta { display:flex; flex-wrap:wrap; align-items:center; gap:.65rem; color:var(--portal-color-muted, #667064); font-size:.82rem; font-weight:700; }
.community-topic-card h3 { margin:.75rem 0; font-size:1.35rem; }
.community-topic-card h3 a { color:inherit; text-decoration:none; }
.community-topic-card p { color:var(--portal-color-muted, #667064); line-height:1.65; }
.community-topic-card footer { display:flex; flex-wrap:wrap; gap:1rem; align-items:center; margin-top:auto; padding-top:1rem; font-size:.85rem; color:var(--portal-color-muted, #667064); }
.community-topic-card footer a { margin-left:auto; color:var(--portal-color-primary, #174f2b); font-weight:800; text-decoration:none; }
.community-badge { display:inline-flex; padding:.3rem .6rem; border-radius:999px; background:var(--portal-color-surface-soft, #eee9de); font-size:.75rem; font-weight:800; }
.community-badge--official { background:var(--portal-color-primary, #174f2b); color:var(--portal-color-on-primary, #fff); }
.community-badge--resolved { background:var(--portal-color-success-soft, #dcebdd); color:var(--portal-color-success, #245c30); }
.community-sidebar { display:grid; gap:1rem; position:sticky; top:6rem; }
.community-sidebar-card { padding:1.4rem; border:1px solid var(--portal-color-border, #ddd6c7); border-radius:1.3rem; background:var(--portal-color-surface, #fff); }
.community-sidebar-card--promise { background:var(--portal-color-primary, #174f2b); color:var(--portal-color-on-primary, #fff); }
.community-sidebar-card--promise h3 { color:inherit; }
.community-space-list { display:grid; gap:.75rem; }
.community-space-list div { display:flex; gap:.6rem; align-items:center; padding:.75rem 0; border-top:1px solid var(--portal-color-border, #ddd6c7); }
.community-area-hero,.community-topic-hero { padding:4.5rem 0 3.5rem; background:var(--portal-color-surface, #fff); border-bottom:1px solid var(--portal-color-border, #ddd6c7); }
.community-area-hero p { max-width:45rem; font-size:1.15rem; color:var(--portal-color-muted, #667064); }
.community-back { display:inline-block; margin-bottom:2rem; color:var(--portal-color-primary, #174f2b); font-weight:800; text-decoration:none; }
.community-topic-shell { max-width:57rem; }
.community-topic-meta { display:flex; gap:.7rem; flex-wrap:wrap; align-items:center; color:var(--portal-color-muted, #667064); }
.community-topic-body,.community-answer { padding:clamp(1.3rem,3vw,2.4rem); border:1px solid var(--portal-color-border, #ddd6c7); border-radius:1.5rem; background:var(--portal-color-surface, #fff); }
.community-author { display:flex; gap:.9rem; align-items:center; margin-bottom:1.5rem; }
.community-avatar { width:2.8rem; height:2.8rem; display:grid; place-items:center; border-radius:50%; background:var(--portal-color-primary, #174f2b); color:var(--portal-color-on-primary, #fff); font-weight:900; }
.community-author div { display:grid; }
.community-author span { color:var(--portal-color-muted, #667064); font-size:.85rem; }
.community-richtext { line-height:1.85; font-size:1.06rem; }
.community-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin:2rem 0 0; }
.community-facts div { padding:1rem; border-radius:1rem; background:var(--portal-color-surface-soft, #eee9de); }
.community-facts dt { font-size:.75rem; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.community-facts dd { margin:.35rem 0 0; }
.community-topic-actions { display:flex; flex-wrap:wrap; gap:.7rem; margin-top:2rem; padding-top:1.3rem; border-top:1px solid var(--portal-color-border, #ddd6c7); }
.community-topic-actions button { border:1px solid var(--portal-color-border, #ddd6c7); border-radius:999px; background:transparent; padding:.55rem .9rem; font:inherit; cursor:pointer; }
.community-answers { display:grid; gap:1rem; margin-top:2rem; }
.community-answers h2 span { color:var(--portal-color-muted, #667064); }
.community-answer--solution { border-color:var(--portal-color-success, #245c30); box-shadow:inset .25rem 0 0 var(--portal-color-success, #245c30); }
.community-empty { padding:3rem; text-align:center; border:1px dashed var(--portal-color-border, #ddd6c7); border-radius:1.3rem; background:var(--portal-color-surface, #fff); color:var(--portal-color-muted, #667064); }
@media (max-width: 980px) {
    .community-hero__grid,.community-layout { grid-template-columns:1fr; }
    .community-area-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .community-sidebar { position:static; }
}
@media (max-width: 680px) {
    .community-area-grid,.community-featured-grid,.community-facts { grid-template-columns:1fr; }
    .community-area-card { min-height:15rem; }
    .community-topic-card footer a { width:100%; margin-left:0; }
}
