/* Compact, square-edged community panels; shared fantasy backdrop is unchanged. */
.community-view { position: relative; margin-left: clamp(250px, 21vw, 315px); min-width: 0; container-type: inline-size; color: #dcded4; font: 14px/1.5 Arial, sans-serif; }
.community-view[hidden] { display: none; }
.community-page-heading { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; border-bottom: 1px solid #686244; padding-bottom: 10px; margin-bottom: 12px; }
.community-page-heading h1 { margin: 0; font: bold 24px/1.25 Arial, sans-serif; color: #e4d0a0; overflow-wrap: anywhere; }
.community-eyebrow { color: #ab9c79; font-size: 12px; letter-spacing: .1em; }
.community-panel { border: 1px solid #515446; background: #262d28; margin: 0 0 12px; min-width: 0; }
.community-panel-heading { margin: 0; padding: 7px 10px; background: #3c4237; border-top: 3px solid #5d614a; border-bottom: 1px solid #141b17; color: #ecdfbd; font: bold 14px/1.4 Arial, sans-serif; }
.community-copy { margin: 0; padding: 15px 12px; color: #bac0b3; }
.community-test-note { color: #bbac88; margin: 12px 0; font-size: 12px; }
.community-link { color: #a7d2c5; text-decoration: none; }
.community-link:hover { color: #f2d495; text-decoration: underline; }
.community-tabs { display: flex; flex-wrap: wrap; border: 1px solid #515446; background: #1b251f; }
.community-tabs a { padding: 7px 12px; }
.community-tabs a[aria-current=page] { color: #f3de9e; background: #49452f; box-shadow: inset 0 -2px #bd9c54; }
.community-table-wrap { overflow-x: auto; }
.community-table { width: 100%; border-collapse: collapse; text-align: left; font-size: 14px; }
.community-table th, .community-table td { padding: 6px 10px; border-bottom: 1px solid #454b40; border-right: 1px solid #454b40; overflow-wrap: anywhere; }
.community-table th { font-weight: 600; }
.community-table tbody th { width: 34%; }
.community-table tr:nth-child(even) { background: #222923; }
.community-table thead { background: #30382e; color: #c5bea6; }
.community-table td { color: #b8c3b6; }
.community-disclosure > summary { cursor: pointer; }
.community-button { margin: 10px; padding: 9px 12px; border: 1px solid #6e674b; background: #353b31; color: #aaa995; font: 14px Arial, sans-serif; }
.community-button:disabled { cursor: not-allowed; opacity: .65; }
.community-view a:focus-visible, .community-view summary:focus-visible { outline: 2px solid #dfbd72; outline-offset: -2px; }
.profile-identity { color: #979f91; font-size: 12px; overflow-wrap: anywhere; margin: 0 0 14px; }
.profile-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; align-items: start; }
.profile-stack { min-width: 0; }
.profile-nameplate { margin: 10px 10px 0; padding: 5px 8px; background: #1b241e; border-left: 3px solid #8d7950; color: #d7c18b; overflow-wrap: anywhere; }
.profile-user { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(95px, 1fr); padding: 10px; gap: 10px; }
.profile-portrait { min-height: 260px; border: 3px solid #434c3c; background: #121c17; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; color: #999f90; gap: 8px; }
.profile-portrait small, .profile-counter small, .profile-award small { color: #9ba38f; font-size: 12px; }
.profile-counters { display: grid; gap: 8px; }
.profile-counter { text-align: center; display: grid; background: #1a231d; border-top: 3px solid #454d3e; padding: 5px; }
.profile-counter strong { color: #d9c692; font-size: 25px; }
.profile-actions { display: flex; flex-wrap: wrap; gap: 8px; padding: 12px; }
.profile-actions a, .profile-actions button { margin: 0; padding: 8px 10px; border: 1px solid #696449; background: #323b30; }
.profile-awards { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; padding: 12px; }
.profile-award { display: grid; text-align: center; padding: 8px 4px; border: 1px solid #575b44; background: #1b261e; }
.profile-award strong { font-size: 12px; overflow-wrap: anywhere; color: #c8b681; }
.profile-award > span { font-size: 22px; color: #6f7c62; }
.wiki-layout { display: grid; grid-template-columns: minmax(150px, .6fr) minmax(0, 1.4fr); gap: 12px; align-items: start; }
.wiki-contents { display: grid; padding: 8px; }
.wiki-contents a { padding: 8px 4px; border-bottom: 1px solid #424c3d; }
.forum-tools { display: flex; justify-content: flex-end; }
.account-chip > a { color: #e8dcc5; font-weight: bold; }
/* Reserve the full height of the expanded community navigation on existing pages too. */
@media (min-width: 1051px) { html body .game-stage { min-height: 1540px; height: auto; } }
@media (max-width: 1050px) {
  .community-view { margin: 0; grid-column: 2; }
  html[data-page=profile] .game-stage, html[data-page=wiki] .game-stage, html[data-page=rules] .game-stage, html[data-page=forums] .game-stage, html[data-page=discord] .game-stage, html[data-page=staff] .game-stage, html[data-page=credits] .game-stage { padding-top: 24px; align-content: start; }
}
@media (max-width: 720px) {
  .community-view { grid-column: 1; }
  .left-menu.primary-menu { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .left-menu.primary-menu .panel-title { display: block; grid-column: 1 / -1; margin: 10px 8px 0; }
  .left-menu.primary-menu .menu-item { font-size: 12px; }
  .left-menu.primary-menu .menu-item span { font-size: 14px; }
}
@container (max-width: 600px) {
  .profile-columns, .wiki-layout { grid-template-columns: 1fr; }
  .profile-awards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
