/* Readable defaults and visible, named actions for everyday club tasks. */
:root { font-size: 112.5%; }
body:not(.admin-workspace) :is(input, select, textarea, button, .button) { font-size: 1rem; }
body:not(.admin-workspace) :is(button, .button, summary) { min-height: 48px; }
body:not(.admin-workspace) :is(.meta, .help, figcaption, .breadcrumbs, .thread-excerpt, .following-status, .post-identity time, .post-badge, .thread-activity, .thread-activity .thread-latest, .category-count, .reply-context, .reply-context a, .topic-replies-heading > span) { font-size: .9rem; }
body:not(.admin-workspace) :is(.forum-tabs a, .forum-navigation nav a, .forum-category-nav > a, .forum-search label, .forum-reply-form label, .reply-submit a, .topic-jumps a, .topic-manage summary, .forum-footer-links, .personal-navigation a, .console-account label) { font-size: 1rem; }
body:not(.admin-workspace) :is(input:not([type=checkbox]):not([type=radio]), select, textarea) { border-color: #738a94; }
body:not(.admin-workspace) :is(a, button, summary, input, select, textarea):focus-visible { outline: 3px solid #1e617b; outline-offset: 4px; }
body:not(.admin-workspace) :is(.prose, .help) { max-width: 68ch; }
.masthead .desktop a, .masthead .menu-panel a, .masthead .site-menu > summary, .masthead .profile-toggle, .masthead .profile-panel, .masthead .account-link { font-size: 1rem; }
.masthead .desktop { gap: 0 1.4rem; }
.masthead .area-navigation a, .area-navigation a, .language-menu a { font-size: .9rem; }
.profile-label { font-weight: 600; white-space: nowrap; }
.profile-toggle .profile-name { font-size: .9rem; }
.masthead .profile-panel { width: min(20rem, calc(100% - 2 * var(--space))); }
.header-help { display: inline-flex; min-height: 48px; align-items: center; padding-inline: .5rem; }
.masthead .site-menu[open] .menu-current { color: inherit; }
.masthead .menu-current { font-size: .9rem; }
.masthead .site-menu { margin-bottom: .5rem; }
.home-tasks { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; margin: 0 0 1.5rem; }
.home-tasks > a { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .3rem .5rem; padding: 1rem; min-width: 0; border: 1px solid #738a94; border-radius: .6rem; background: #fff; text-decoration: none; }
.home-tasks strong { font-size: 1.1rem; text-decoration: underline; text-underline-offset: .2em; }
.home-tasks a > span:first-of-type { grid-column: 1; color: var(--ink); font-size: .95rem; line-height: 1.5; }
.home-tasks a > span:last-child { grid-column: 2; grid-row: 1; }
.home-tasks a:hover { background: var(--sky); }
.forum-overview .forum-list-toolbar { justify-content: start; gap: .2rem 1rem; }
.sort-label { color: var(--muted); }
.forum-overview .forum-thread { grid-template-columns: minmax(0, 1fr) 16rem; }
.forum-overview .forum-thread h2 a { text-decoration: underline; text-underline-offset: .2em; }
.thread-open { margin-bottom: .3rem; }
.post-actions .reply-link { display: inline-flex; align-items: center; min-height: 48px; border: 1px solid #738a94; border-radius: .4rem; padding: .4rem .75rem; }
body:not(.admin-workspace) .reply-submit > button[type=submit] { min-width: 9rem; }
.event-facts { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .4rem 1rem; margin-block: 1rem; }
.event-facts dt { font-weight: 600; }
.event-facts dd { margin: 0; overflow-wrap: anywhere; }
.photo-step { border: 0; padding: 0; margin: 0 0 1.8rem; min-width: 0; }
.photo-step > legend { font-size: 1.2rem; font-weight: 600; margin-bottom: .75rem; padding: 0; }
.photo-format-help { margin: .5rem 0 0; }
.photo-format-help p { margin-top: .75rem; }
.trip-photo-form input[type=file] { width: 100%; font-size: .95rem; }
.trip-photo-form input[type=file]::file-selector-button { font: inherit; min-height: 48px; padding: .5rem .75rem; margin: 0 .6rem .3rem 0; border: 1px solid #738a94; border-radius: .4rem; background: var(--sky); color: var(--ink); cursor: pointer; }
.help-topics { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .6rem 1rem; padding: 0 0 1.5rem; border-bottom: 1px solid var(--line); margin-bottom: 2rem; }
.help-topics a { min-height: 48px; display: flex; align-items: center; }
.help-steps { padding-left: 1.6rem; }
.help-steps li { padding-left: .3rem; margin-bottom: .8rem; }
.help-page h2 { scroll-margin-top: 1rem; }
@media (max-width: 65rem) {
  .home-tasks { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 48rem) {
  .masthead .header-tools { display: flex; flex-wrap: wrap; width: 100%; justify-content: start; gap: .25rem .8rem; }
  .masthead .language-menu { width: 100%; margin-left: 0; }
  .profile-toggle .profile-avatar { display: none; }
  .profile-toggle .profile-chevron { display: inline-block; }
  .masthead .profile-toggle { padding: .25rem .4rem; }
  .forum-overview .forum-thread { grid-template-columns: minmax(0,1fr); }
  .thread-activity { width: 100%; }
  .thread-open { justify-content: center; }
  .topic-follow { margin-left: 0; }
}
@media (max-width: 28rem) {
  .home-tasks { grid-template-columns: minmax(0,1fr); gap: .5rem; }
  .home-tasks > a { padding: .7rem .9rem; }
  .help-topics { grid-template-columns: minmax(0,1fr); }
}
/* Keep account forms readable despite the denser editor-workspace defaults. */
.console-workspace:not(.admin-workspace) :is(input, select, textarea):not([type=checkbox]):not([type=radio]):not([type=hidden]) { font-size: 1rem; border-color: #738a94; }
.console-workspace:not(.admin-workspace) label, .console-workspace:not(.admin-workspace) .console-mobile-menu > summary { font-size: 1rem; }
body:not(.admin-workspace) .section-title > a { display: inline-flex; align-items: center; min-height: 48px; }
/* Anchor the account panel to the header, including on wide screens. */
.masthead .header-row { position: relative; }
.masthead .profile-panel { top: 100%; right: 0; }
@media (max-width: 48rem) {
  .topic-toolbar { justify-content: flex-start; gap: .2rem .8rem; }
  .topic-jumps { display: contents; }
}
@media (max-width: 65rem) {
  /* The open account menu must leave the main Menu control clickable. */
  .masthead > .shell { position: relative; }
  .masthead .header-row { position: static; }
}
@media (max-width: 48rem) {
  .topic-toolbar { margin-bottom: .5rem; }
  .forum-post .post-body { padding-top: .75rem; }
}
/* Keep account options in their own space, clear of page links and both menus. */
.masthead { --account-panel-height: min(34rem, calc(100dvh - 7rem)); }
.masthead > .shell { position: relative; }
.masthead .header-row { position: static; }
.masthead:has(.profile-menu[open]) { padding-bottom: var(--account-panel-height); }
.masthead .profile-panel { height: var(--account-panel-height); max-height: none; }
.masthead .menu-current { min-width: 0; overflow-wrap: anywhere; }
body:not(.admin-workspace) .reply-submit > button[type=submit] { min-width: min(9rem, 100%); max-width: 100%; white-space: normal; }
