.rate-link { display: inline-block; margin: .75rem 0 .75rem 1rem; color: var(--gold); text-decoration: underline; text-underline-offset: .25em; }
.home-stats { padding-top: clamp(2rem, 6vw, 4rem); }
.home-stats dd { overflow-wrap: anywhere; font-variant-numeric: tabular-nums; font-size: clamp(1.25rem, 3.2vw, 2.25rem); }
.stats-detail { margin-bottom: 0; font-size: .85rem; }
.community { padding-block: clamp(2rem, 6vw, 4rem); }
.community-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); gap: 1rem; }
.community-grid article { padding: 1.25rem; border: 1px solid var(--line); background: var(--panel); }
.community-grid h3 { margin: 0; font-family: Cinzel, Georgia, serif; }
.community-grid a { display: inline-block; color: var(--gold); text-decoration: underline; text-underline-offset: .25em; margin-right: 1rem; }
.leaderboard { padding-bottom: clamp(2rem, 6vw, 4rem); }
.leaderboard ol { max-width: 52rem; }
.leaderboard li { padding: .75rem 1rem; border-bottom: 1px solid var(--line); }
.leaderboard summary { cursor: pointer; color: var(--gold); }
.castle-section { padding-bottom: clamp(2rem, 6vw, 4rem); }
.castle-table { width: 100%; border-collapse: collapse; text-align: left; background: var(--panel); }
.castle-table th, .castle-table td { padding: .65rem; border-bottom: 1px solid var(--line); vertical-align: top; overflow-wrap: anywhere; }
.castle-table thead th, .castle-table summary { color: var(--gold); }
.castle-table summary { cursor: pointer; }
.castle-table ul { margin: .5rem 0 0; padding-left: 1.15rem; }
