/* The light palette follows the compact catalogue in website/referencia. */
body.theme-1 {
  --github-primary: #2e76a9;
  --github-secondary: #53697a;
  --github-info: #2e76a9;
  --github-bg-primary: #f1f3f5;
  --github-bg-secondary: #f7f8f9;
  --github-bg-tertiary: #fff;
  --github-border-primary: #dfe3e7;
  --github-border-secondary: #cbd3da;
  --github-text-primary: #273340;
  --github-text-secondary: #58697a;
  --github-text-muted: #647382;
  --github-text-primary: #273340;
  --github-text-secondary: #58697a;
  --github-text-muted: #647382;
  --bs-info-rgb: 46, 118, 169;
  --bs-link-color: #2879b9;
  --bs-link-hover-color: #205f91;
  --bs-btn-hover-color: #fff;
  --bs-body-color-rgb: 39, 51, 64;
  --bs-body-color: #273340;
  --bs-secondary: #53697a;
  --bs-secondary-rgb: 83, 105, 122;
  --bs-secondary-bg-subtle: #edf1f4;
  --bs-secondary-border-subtle: #cbd3da;
  --bs-light: #f7f8f9;
  --bs-light-rgb: 247, 248, 249;
  --bs-dark: #273340;
  --bs-dark-rgb: 39, 51, 64;
  --color-primary: #2e76a9;
  --color-primary-light: #569ac8;
  --border-card: #dfe3e7;
  --border-navbar: #dfe3e7;
  --hover-bg: #edf3f7;
  --bs-body-bg: #f1f3f5;
  --bs-body-bg-rgb: 241, 243, 245;
  --bg-card: #fff;
  --bg-card-header: #fff;
  --bg-secondary: #f7f8f9;
  --bg-form: #fff;
  --border-primary: #dfe3e7;
  --border-secondary: #cbd3da;
  --text-primary: #273340;
  --text-primary-rgb: 39, 51, 64;
  --text-secondary: #58697a;
  --text-muted: #647382;
  --text-accent: #2879b9;
  --bs-primary: #2e76a9;
  --bs-primary-rgb: 46, 118, 169;
  --bs-primary-bg-subtle: #e8f2f9;
  --bs-info: #2e76a9;
  --gradient-primary: #2e76a9;
  --gradient-primary-hover: #286d9f;
  --gradient-info: #2e76a9;
  --gradient-info-hover: #286d9f;
  --gradient-body: #f1f3f5;
  --gradient-header: #fff;
  --color-primary-dark: #286d9f;
  --text-inverse: #fff;
  --github-bg-emphasis: #e4ebf1;
  --github-bg-muted: #f1f3f5;
  --github-text-emphasis: #202b35;
  --github-border-muted: #dfe3e7;
  --bs-primary-text-emphasis: #205f91;
  --bs-primary-border-subtle: #a9cce2;
  --bs-focus-ring-color: rgba(46, 118, 169, .25);
  --bs-link-color-rgb: 40, 121, 185;
  --bs-link-hover-color-rgb: 32, 95, 145;
  --bs-pagination-active-bg: #2e76a9;
  --bs-pagination-active-border-color: #2e76a9;
  --bs-pagination-active-color: #fff;
  --bs-pagination-color: #205f91;
  --bs-pagination-hover-color: #205f91;
  --bs-dropdown-link-active-bg: #2e76a9;
  --bs-dropdown-link-active-color: #fff;
  --bs-list-group-active-bg: #2e76a9;
  --bs-list-group-active-border-color: #2e76a9;
  --bs-list-group-active-color: #fff;
  --hover-bg-secondary: #e4ebf1;
  --hover-navbar: #e8f2f9;
  --hover-card: #f7f8f9;
  --hover-card-header: #e8f2f9;
  --hover-nav-link: #e8f2f9;
  --hover-dropdown: #e8f2f9;
  --active-bg: #d8e9f5;
  --focus-color: #2e76a9;
  --focus-shadow: rgba(46, 118, 169, .25);
  --focus-shadow-strong: rgba(46, 118, 169, .4);
  --gradient-card-header: #fff;
  --gradient-card: #fff;
  --gradient-navbar: #fff;
  --message-sent: #2e76a9;
  --pm-bg-sent: #e8f2f9;
  --pm-bg-received: #f7f8f9;
  --pm-border-sent: #a9cce2;
  --reaction-hover: rgba(46, 118, 169, .12);
  --reaction-active: rgba(46, 118, 169, .18);
}
/* Egyedi, skinenként hangolt paletták. A tárolt numerikus skin ID-k változatlanok. */
body.theme-2 { --skin-accent: #76d0a3; --skin-accent-rgb: 118,208,163; --skin-bg: #0c1a18; --skin-card: #142725; --skin-text: #ebfaf5; --skin-border: #294a43; --skin-secondary: #beded1; --skin-muted: #80a59a; }
body.theme-3 { --skin-accent: #f18a83; --skin-accent-rgb: 241,138,131; --skin-bg: #1b1117; --skin-card: #291a22; --skin-text: #fbeef0; --skin-border: #553540; --skin-secondary: #e8bec4; --skin-muted: #b28f9a; }
body.theme-4 { --skin-accent: #5568ae; --skin-accent-rgb: 85,104,174; --skin-bg: #f2f2fa; --skin-card: #ffffff; --skin-text: #252a49; --skin-border: #d0d5eb; --skin-secondary: #4e5775; --skin-muted: #656d86; }
body.theme-5 { --skin-accent: #c49fe8; --skin-accent-rgb: 196,159,232; --skin-bg: #17121f; --skin-card: #251c31; --skin-text: #f6f0fa; --skin-border: #443650; --skin-secondary: #dacbe6; --skin-muted: #a99bb6; }
body.theme-6 { --skin-accent: #e2b267; --skin-accent-rgb: 226,178,103; --skin-bg: #1c1812; --skin-card: #2b2419; --skin-text: #fff5e8; --skin-border: #594a32; --skin-secondary: #e5d2ae; --skin-muted: #ae9b7d; }
body.theme-7 { --skin-accent: #63cbd4; --skin-accent-rgb: 99,203,212; --skin-bg: #0c1c24; --skin-card: #152d36; --skin-text: #e7f8fa; --skin-border: #31535b; --skin-secondary: #b5dfe2; --skin-muted: #81aeb3; }
body.theme-8 { --skin-accent: #f494aa; --skin-accent-rgb: 244,148,170; --skin-bg: #22151c; --skin-card: #35212b; --skin-text: #fff0f4; --skin-border: #684553; --skin-secondary: #eec1ce; --skin-muted: #b995a1; }
body.theme-9 { --skin-accent: #94b8ef; --skin-accent-rgb: 148,184,239; --skin-bg: #101827; --skin-card: #1a2538; --skin-text: #edf3ff; --skin-border: #354969; --skin-secondary: #bdd0ee; --skin-muted: #92a8c9; }
body.theme-10 { --skin-accent: #9bd7cb; --skin-accent-rgb: 155,215,203; --skin-bg: #090b0f; --skin-card: #14191f; --skin-text: #e9edf2; --skin-border: #303843; --skin-secondary: #adb8c3; --skin-muted: #87939f; --ui-on-accent: #071312; }
body.theme-1, body.theme-4 { --ui-on-accent: #fff; }
body { --ui-on-success: #fff; --ui-on-danger: #fff; --ui-on-warning: #fff; }
body:not(.theme-1) { --ui-on-success: #080b0f; --ui-on-danger: #080b0f; --ui-on-warning: #080b0f; }
body.theme-3 { --ui-on-success: #fff; --ui-on-danger: #fff; }
body.theme-2 { --ui-on-accent: #10221b; }
body.theme-3 { --ui-on-accent: #2a1517; }
body.theme-5 { --ui-on-accent: #201626; }
body.theme-6 { --ui-on-accent: #261b0d; }
body.theme-7 { --ui-on-accent: #10262b; }
body.theme-8 { --ui-on-accent: #2a151e; }
body.theme-9 { --ui-on-accent: #142238; }
body:not(.theme-1) {
  --bs-primary: var(--skin-accent);
  --bs-primary-rgb: var(--skin-accent-rgb);
  --bs-primary-bg-subtle: rgba(var(--skin-accent-rgb), .13);
  --bs-primary-border-subtle: rgba(var(--skin-accent-rgb), .35);
  --bs-body-bg: var(--skin-bg);
  --bs-body-color: var(--skin-text);
  --bs-link-color: var(--skin-accent);
  --bs-link-hover-color: var(--skin-text);
  --bg-primary: var(--skin-bg);
  --bg-card: var(--skin-card);
  --bg-card-header: var(--skin-card);
  --bg-navbar: var(--skin-card);
  --bg-form: var(--skin-card);
  --bg-secondary: var(--skin-card);
  --border-primary: var(--skin-border);
  --border-secondary: var(--skin-border);
  --border-card: var(--skin-border);
  --border-navbar: var(--skin-border);
  --hover-bg: var(--bs-primary-bg-subtle);
  --hover-dropdown: var(--bs-primary-bg-subtle);
  --text-primary: var(--skin-text);
  --text-secondary: var(--skin-secondary);
  --text-muted: var(--skin-muted);
  --text-accent: var(--skin-accent);
  --color-primary: var(--skin-accent);
  --color-primary-light: var(--skin-accent);
  --color-primary-dark: var(--skin-accent);
  --gradient-header: var(--skin-card);
  --gradient-body: var(--skin-bg);
  --gradient-primary: var(--skin-accent);
  --gradient-primary-hover: var(--skin-accent);
  --gradient-info: var(--skin-accent);
  --gradient-info-hover: var(--skin-accent);
  --bs-info: var(--skin-accent);
  --bs-btn-hover-color: var(--ui-on-accent);
}
body:not(.theme-1) :is(.btn-primary, .btn-info) { color: var(--ui-on-accent) !important; }
body:not(.theme-1) :is(.btn-primary, .btn-info):hover { color: var(--ui-on-accent) !important; }
body:not(.theme-1) :is(.btn-secondary, .btn-light) { background: var(--bg-card) !important; border-color: var(--border-primary) !important; color: var(--text-primary) !important; }
body:not(.theme-1) :is(.btn-secondary, .btn-light):hover { background: var(--bs-primary-bg-subtle) !important; border-color: var(--bs-primary-border-subtle) !important; color: var(--text-primary) !important; }
body .btn-success { background: var(--bs-success) !important; border-color: var(--bs-success) !important; color: var(--ui-on-success) !important; }
body .btn-danger { background: var(--bs-danger) !important; border-color: var(--bs-danger) !important; color: var(--ui-on-danger) !important; }
body .btn-warning { background: var(--bs-warning) !important; border-color: var(--bs-warning) !important; color: var(--ui-on-warning) !important; }
body :is(.btn-success, .btn-danger, .btn-warning):hover { filter: brightness(1.04); }
body .badge.bg-success { color: var(--ui-on-success) !important; }
body .badge.bg-danger { color: var(--ui-on-danger) !important; }
body .badge.bg-warning { color: var(--ui-on-warning) !important; }
body .btn-outline-primary { border-color: var(--bs-primary) !important; background: transparent !important; color: var(--bs-primary) !important; }
body .btn-outline-primary:hover, body .btn-outline-primary:active { background: var(--bs-primary) !important; color: var(--ui-on-accent) !important; }
body .btn-outline-secondary { border-color: var(--border-secondary) !important; background: transparent !important; color: var(--text-primary) !important; }
body .btn-outline-secondary:hover, body .btn-outline-secondary:active { background: var(--bs-primary-bg-subtle) !important; color: var(--text-primary) !important; }
body .btn-link { background: transparent !important; color: var(--bs-primary) !important; }
body.theme-1 .btn-light { color: var(--text-primary) !important; }
body {
  background: var(--bs-body-bg) !important;
  color: var(--text-primary);
}
body > .container {
  max-width: 1440px;
  width: calc(100% - clamp(1rem, 3vw, 3rem));
  padding-inline: 0;
  margin-inline: auto;
}
.site-content :is(.form-control, .form-select, .form-check-input):focus,
.site-content :is(.form-control, .form-select, .form-check-input):focus-visible {
  border-color: var(--bs-primary) !important;
  box-shadow: 0 0 0 .18rem rgba(var(--bs-primary-rgb), .19) !important;
}
body.theme-1 :is(.btn-primary, .btn-info, .page-item.active .page-link, .list-group-item.active, .dropdown-item.active, .dropdown-item:active) {
  background: #2e76a9 !important;
  border-color: #2e76a9 !important;
  color: #fff !important;
}
body.theme-1 :is(.btn-primary:hover, .btn-primary:active, .btn-info:hover, .btn-info:active) {
  background: #205f91 !important;
  border-color: #205f91 !important;
  color: #fff !important;
}
body.theme-1 :is(.btn-outline-primary:hover, .btn-outline-primary:active) { background: #2e76a9 !important; border-color: #2e76a9 !important; color: #fff !important; }
body.theme-1 :is(.btn-secondary, .btn-secondary:hover, .btn-secondary:active) { background: #53697a !important; border-color: #53697a !important; color: #fff !important; }
body.theme-1 :is(.btn:focus-visible, .nav-link:focus-visible, .page-link:focus-visible, .dropdown-item:focus-visible) { outline: 2px solid #2e76a9; outline-offset: 2px; box-shadow: 0 0 0 .18rem rgba(46, 118, 169, .18) !important; }
body.theme-1 ::selection { background: #c8e1f3; color: #273340; }
body.theme-1 #tooltip { border-color: #405465; background: #273340; color: #fff; box-shadow: 0 4px 12px rgba(39, 51, 64, .18); }
.navbar-logo-wrapper {
  position: relative;
  top: auto;
  left: auto;
  bottom: auto;
  width: 100%;
  margin: 0 0 1.1rem;
  border: 0;
  border-bottom: 1px solid var(--border-primary);
  border-radius: 0;
  background: var(--bg-card);
  box-shadow: none;
  display: block;
  overflow: visible;
  z-index: 1030;
}
.navbar-logo-wrapper .navbar {
  flex: none;
  align-items: center;
  min-height: 0;
  padding: 0;
  background: transparent !important;
  border-radius: 0 !important;
}
.navbar-logo-wrapper .navbar > .container-fluid {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: .3rem;
  max-width: 1440px;
  width: calc(100% - clamp(1rem, 3vw, 3rem));
  min-height: 48px;
  margin-inline: auto;
  padding-inline: 0;
}
.navbar-logo-wrapper .navbar-collapse {
  flex-direction: row;
  align-items: center;
  min-width: 0;
  flex-wrap: nowrap;
}
.navbar-logo-wrapper .navbar-nav {
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0;
}
.navbar-logo-wrapper .navbar-nav.ms-auto {
  margin-top: 0 !important;
  margin-left: .35rem !important;
  border-top: 0;
  padding-top: 0;
}
.navbar-logo-wrapper .navbar-brand {
  display: inline-flex !important;
  align-items: center;
  gap: .65rem;
  margin: 0;
  padding: .15rem .7rem .15rem 0;
  color: var(--text-primary);
  font-family: inherit;
  text-decoration: none;
  white-space: nowrap;
}
.brand-mark {
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: .25rem;
  background: var(--bs-primary);
  color: var(--bs-body-bg);
  font-weight: 800;
  letter-spacing: -.08em;
}
.brand-copy { display: flex; flex-direction: column; line-height: 1.05; }
.brand-copy strong { font-size: 1.08rem; font-weight: 800; letter-spacing: -.04em; }
.brand-copy small { margin-top: .22rem; color: var(--text-secondary); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
.brand-symbol { position: relative; display: grid; flex: 0 0 2.1rem; place-items: center; width: 2.1rem; height: 2.1rem; border: 2px solid var(--bs-primary); border-radius: 50%; background: var(--bs-primary-bg-subtle); color: var(--bs-primary); }
.brand-symbol::before { content: ''; position: absolute; width: .5rem; height: .5rem; top: -.2rem; right: .05rem; border: 2px solid var(--bg-card); border-radius: 50%; background: var(--bs-primary); }
.brand-symbol span { width: .22rem; height: 1rem; border-radius: 1rem; background: currentColor; transform: rotate(25deg); }
.navbar-logo-wrapper .navbar-brand:hover .brand-symbol, .navbar-logo-wrapper .navbar-brand:focus-visible .brand-symbol { background: var(--bs-primary); color: var(--bg-card); }
.navbar-logo-wrapper .navbar-brand:focus-visible { outline: 3px solid var(--bs-primary); outline-offset: 3px; }
.navbar-logo-wrapper .navbar-toggler-icon { background-image: none; display: grid; place-items: center; }
.navbar-logo-wrapper .navbar-toggler-icon::after { content: '☰'; color: var(--text-primary); font-size: 1.45rem; line-height: 1; }
.navbar-logo-wrapper .nav-link {
  padding: .85rem .45rem !important;
  border-radius: 0 !important;
  font-size: .78rem;
  font-weight: 500;
  color: var(--text-secondary);
}
.navbar-logo-wrapper button.nav-link { border: 0; background: transparent; cursor: pointer; font-family: inherit; }
.navbar-logo-wrapper .nav-link.active {
  background: var(--bs-primary-bg-subtle) !important;
  color: var(--text-primary) !important;
  box-shadow: inset 0 -2px 0 var(--bs-primary);
}
.navbar-logo-wrapper .nav-link:hover { background: var(--bs-primary-bg-subtle) !important; color: var(--bs-primary) !important; }
.navbar-logo-wrapper .nav-link:focus, .navbar-logo-wrapper .navbar-toggler:focus { outline: 2px solid var(--bs-primary); outline-offset: 2px; box-shadow: none !important; }
.navbar-logo-wrapper .nav-search {
  display: flex;
  position: relative;
  flex: 0 1 320px;
  min-width: 220px;
  height: 40px;
  margin-left: auto;
  border: 1px solid var(--border-primary);
  border-radius: .45rem;
  background: var(--bg-form);
  transition: border-color .18s ease, box-shadow .18s ease;
}
.navbar-logo-wrapper .nav-search input {
  width: 100%;
  min-width: 0;
  padding: 0 .8rem;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--text-primary);
  font-size: .82rem;
}
.navbar-logo-wrapper .nav-search button {
  display: grid;
  place-items: center;
  width: 40px;
  flex: 0 0 40px;
  border: 0;
  border-left: 1px solid var(--border-primary);
  border-radius: 0 .4rem .4rem 0;
  background: var(--bs-primary-bg-subtle);
  color: var(--bs-primary);
  cursor: pointer;
}
.navbar-logo-wrapper .nav-search:focus-within { border-color: var(--bs-primary); box-shadow: 0 0 0 .16rem rgba(var(--bs-primary-rgb), .15); }
.navbar-logo-wrapper .nav-search button:hover, .navbar-logo-wrapper .nav-search button:focus-visible { background: var(--bs-primary); color: var(--ui-on-accent); }
.navbar-logo-wrapper .nav-search-compact { display: none; }
.nav-search-results {
  position: absolute;
  z-index: 1060;
  top: calc(100% + .4rem);
  left: 0;
  width: min(28rem, calc(100vw - 1rem));
  max-height: min(27rem, calc(100dvh - 5rem));
  overflow-y: auto;
  border: 1px solid var(--border-primary);
  border-radius: .55rem;
  background: var(--bg-card);
  box-shadow: 0 16px 36px rgba(0,0,0,.18);
}
.nav-search-results[hidden] { display: none; }
.nav-search-heading, .nav-search-empty { margin: 0; padding: .75rem .9rem; color: var(--text-secondary); font-size: .76rem; }
.nav-search-heading { background: var(--bg-secondary); font-weight: 750; letter-spacing: .04em; }
.nav-search-results a { display: flex; align-items: center; justify-content: space-between; gap: .7rem; padding: .7rem .9rem; border-top: 1px solid var(--border-primary); color: var(--text-primary); font-size: .82rem; text-decoration: none; }
.nav-search-results a:hover, .nav-search-results a.is-active { background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.nav-search-result-name { min-width: 0; overflow-wrap: anywhere; }
.nav-search-results small { flex: 0 0 auto; max-width: 35%; overflow: hidden; color: var(--text-secondary); text-overflow: ellipsis; white-space: nowrap; }
.navbar-logo-wrapper .navbar-nav .dropdown-menu {
  position: absolute !important;
  max-height: none;
  overflow: visible;
  background: var(--bg-card);
  box-shadow: 0 18px 40px rgba(0, 0, 0, .18);
  border: 1px solid var(--border-primary);
  border-radius: .3rem;
  color: var(--text-primary);
}
.navbar-logo-wrapper #moreNav + .dropdown-menu { width: 12rem !important; }
.navbar-logo-wrapper #moreNav + .dropdown-menu .dropdown-item {
  color: var(--text-primary);
  padding: .55rem .8rem;
  font-size: .82rem;
}
.navbar-logo-wrapper #moreNav + .dropdown-menu .dropdown-item:hover,
.navbar-logo-wrapper #moreNav + .dropdown-menu .dropdown-item:focus-visible {
  background: var(--bs-primary-bg-subtle) !important;
  color: var(--text-primary) !important;
  border-left: 0;
  transform: none;
}
.navbar-logo-wrapper .nav-account { align-items: center; gap: .3rem; }
.navbar-logo-wrapper .nav-message-link,
.navbar-logo-wrapper .notification-trigger,
.navbar-logo-wrapper .theme-trigger,
.navbar-logo-wrapper .account-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  min-height: 36px;
  margin-block: .25rem;
  padding: .35rem .55rem !important;
  border: 1px solid transparent;
  border-radius: .3rem !important;
  background: transparent;
  color: var(--text-primary);
  white-space: nowrap;
}
.navbar-logo-wrapper .nav-message-link:hover,
.navbar-logo-wrapper .notification-trigger:hover,
.navbar-logo-wrapper .notification-trigger.show,
.navbar-logo-wrapper .theme-trigger:hover,
.navbar-logo-wrapper .theme-trigger.show,
.navbar-logo-wrapper .account-trigger:hover,
.navbar-logo-wrapper .account-trigger.show {
  border-color: var(--border-primary);
  background: var(--bg-card) !important;
  color: var(--text-primary) !important;
}
.navbar-logo-wrapper .nav-icon-link { position: relative; width: 36px; min-width: 36px; padding: .35rem !important; font-size: .95rem; cursor: pointer; }
.navbar-logo-wrapper .nav-icon-link .badge {
  position: absolute;
  top: -.15rem;
  right: -.3rem;
  min-width: 1.2rem;
  border-radius: .3rem;
  background: var(--bs-primary);
  color: var(--ui-on-accent);
  font-size: .65rem;
}
.navbar-logo-wrapper .nav-theme { margin-left: .2rem; }
.navbar-logo-wrapper .theme-dropdown .theme-menu { width: min(20rem, calc(100vw - 1rem)) !important; max-height: min(25rem, calc(100dvh - 58px)) !important; overflow-y: auto !important; padding: 0 !important; right: 0; left: auto; }
.theme-menu-heading { padding: .65rem .8rem; border-bottom: 1px solid var(--border-primary); color: var(--text-secondary); font-size: .72rem; font-weight: 700; }
.theme-menu-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .2rem; padding: .45rem; }
.navbar-logo-wrapper .theme-menu .theme-option { display: flex; align-items: center; gap: .5rem; min-width: 0; padding: .52rem; border: 1px solid transparent; border-radius: .25rem; background: transparent; color: var(--text-primary); font-size: .78rem; text-align: left; white-space: normal; }
.navbar-logo-wrapper .theme-menu .theme-option:hover, .navbar-logo-wrapper .theme-menu .theme-option:focus-visible, .navbar-logo-wrapper .theme-menu .theme-option[aria-pressed="true"] { border-color: var(--bs-primary-border-subtle); background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.navbar-logo-wrapper .theme-menu .theme-option:disabled { opacity: .65; cursor: wait; }
.theme-option .fa-check { margin-left: auto; color: var(--bs-primary); }
.theme-swatch { flex: 0 0 .9rem; width: .9rem; height: .9rem; border: 1px solid rgba(0,0,0,.12); border-radius: 50%; background: var(--theme-swatch); }
.theme-swatch-1 { --theme-swatch: #2e76a9; }
.theme-swatch-2 { --theme-swatch: #76d0a3; }
.theme-swatch-3 { --theme-swatch: #f18a83; }
.theme-swatch-4 { --theme-swatch: #5568ae; }
.theme-swatch-5 { --theme-swatch: #c49fe8; }
.theme-swatch-6 { --theme-swatch: #e2b267; }
.theme-swatch-7 { --theme-swatch: #63cbd4; }
.theme-swatch-8 { --theme-swatch: #f494aa; }
.theme-swatch-9 { --theme-swatch: #94b8ef; }
.theme-menu-status { margin: 0; padding: .55rem .8rem; border-top: 1px solid var(--border-primary); color: var(--text-primary); font-size: .75rem; }
.theme-menu-status[hidden] { display: none; }
.navbar-logo-wrapper .navbar-nav .notification-menu { width: min(20rem, calc(100vw - 1rem)) !important; max-height: min(28rem, calc(100dvh - 58px)) !important; overflow-y: auto !important; padding: 0 !important; right: 0; left: auto; }
.notification-heading { padding: .65rem .85rem; border-bottom: 1px solid var(--border-primary); color: var(--text-primary); font-size: .82rem; font-weight: 750; }
.notification-empty { margin: 0; padding: .85rem; color: var(--text-secondary); font-size: .78rem; }
.notification-list { margin: 0; padding: 0; list-style: none; }
.notification-list li[hidden], .notification-empty[hidden], .nav-icon-link .badge[hidden] { display: none !important; }
.notification-list a { display: flex; align-items: center; gap: .7rem; padding: .65rem .85rem; border-bottom: 1px solid var(--border-primary); color: var(--text-primary); font-size: .8rem; text-decoration: none; }
.notification-list li:last-child a { border-bottom: 0; }
.notification-list a i { width: 1rem; color: var(--bs-primary); text-align: center; }
.notification-list a:hover, .notification-list a:focus-visible { background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.notification-list strong { color: var(--bs-primary); }
.account-trigger-icon { display: grid; place-items: center; width: 1.6rem; height: 1.6rem; border: 1px solid var(--bs-primary-border-subtle); border-radius: 50%; background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.account-trigger-name { display: inline-block; max-width: 9rem; overflow: hidden; text-overflow: ellipsis; font-size: .82rem; font-weight: 650; }
.navbar-logo-wrapper .account-dropdown .account-menu {
  width: min(22rem, calc(100vw - 1rem)) !important;
  max-height: calc(100dvh - 58px) !important;
  overflow: hidden !important;
  overscroll-behavior: contain;
  padding: 0;
  right: 0;
  left: auto;
  font-size: .8rem;
}
.navbar-logo-wrapper .account-dropdown .account-menu.show { display: flex; flex-direction: column; }
.account-menu-heading { padding: .55rem .8rem; border-bottom: 1px solid var(--border-primary); color: var(--text-secondary); font-size: .7rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.account-menu-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); min-height: 0; overflow-y: auto; padding: .35rem; gap: .15rem; }
.account-menu-links a { display: flex; align-items: center; gap: .55rem; min-width: 0; padding: .45rem .55rem; border-radius: .15rem; color: var(--text-primary); text-decoration: none; font-size: .78rem; }
.account-menu-links a i { flex: 0 0 1rem; color: var(--text-secondary); text-align: center; }
.account-menu-links a:hover, .account-menu-links a:focus-visible { background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.account-menu-footer { display: grid; flex: 0 0 auto; gap: .35rem; padding: .55rem .8rem .65rem; border-top: 1px solid var(--border-primary); }
.account-logout { display: inline-flex; align-items: center; gap: .45rem; padding: .38rem .45rem; color: var(--text-primary); text-decoration: none; white-space: nowrap; font-size: .78rem; }
.account-logout:hover { background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.site-content {
  margin-left: 0;
  padding: 0 0 1rem;
}
.forum-page > .forum-container, .forum-page .forum-container { width: 100%; max-width: none !important; margin-inline: 0 !important; }
.site-content h1, .site-content h2, .site-content h3 { font-family: inherit !important; }
.tracker-hero {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 1rem;
  padding: 1.1rem 1.25rem;
  border: 1px solid var(--border-primary);
  border-radius: .3rem;
  background: var(--bg-card);
}
.tracker-hero-kicker {
  color: var(--bs-primary);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.tracker-hero h1 {
  max-width: 22ch;
  margin: .25rem 0;
  color: var(--text-primary);
  font-family: inherit;
  font-size: clamp(1.35rem, 2.4vw, 1.8rem);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -.045em;
}
.tracker-hero p { max-width: 65ch; margin: 0; color: var(--text-secondary); }
.tracker-hero-actions { display: flex; flex-wrap: wrap; gap: .6rem; flex-shrink: 0; }
.site-panel, .card {
  border: 1px solid var(--border-primary);
  border-radius: .3rem;
  background: var(--bg-card);
  box-shadow: none;
  overflow: hidden;
}
body.theme-1 .site-panel, body.theme-1 .card { border-radius: 2px; }
.site-panel-header, .card-header {
  padding: .55rem .8rem !important;
  border-bottom: 1px solid var(--border-primary);
  background: var(--bg-card-header) !important;
  color: var(--text-primary);
  font-size: .85rem;
  font-weight: 750;
  letter-spacing: .02em;
  text-transform: none;
}
.card-header, .site-panel-header, .modal-title, .accordion-button { font-family: var(--bs-body-font-family) !important; letter-spacing: normal; }
.card-header::after, .site-panel-header::after { content: none !important; display: none !important; }
.btn { border-radius: .25rem !important; letter-spacing: normal; text-transform: none; }
.badge { border-radius: .2rem; letter-spacing: normal; }
.site-panel-body { padding: .75rem; }
.site-panel { border-left: 1px solid var(--border-primary); }
.site-content .card { margin-top: .7rem !important; margin-bottom: .7rem !important; }
.site-content .card-body { padding: .75rem; }
.site-content .table { --bs-table-bg: transparent; font-size: .83rem; }
.site-content .table > :not(caption) > * > * { padding: .42rem .4rem; border-color: var(--border-primary); }
.site-content .table tbody tr:nth-child(2n) { background: var(--bg-secondary); }
.browse-search-card { width: 100%; margin-inline: auto !important; border-radius: .5rem; }
.browse-search-card > .card-header.browse-search-header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.25rem !important; background: var(--bg-secondary) !important; }
.browse-search-heading { display: flex; align-items: center; gap: .85rem; min-width: 0; }
.browse-search-symbol { display: grid; flex: 0 0 2.6rem; place-items: center; height: 2.6rem; border-radius: .6rem; background: var(--bs-primary-bg-subtle); color: var(--bs-primary); }
.browse-search-heading h1 { margin: .05rem 0; font-size: clamp(1rem, 1.5vw, 1.3rem); font-weight: 780; }
.browse-search-heading p { margin: 0; color: var(--text-secondary); font-size: .78rem; font-weight: 400; }
.browse-search-card .browse-reset { padding: .45rem .7rem; border: 1px solid var(--border-primary); border-radius: .35rem; background: var(--bg-card); color: var(--text-primary); font-size: .76rem; white-space: nowrap; }
.browse-search-card .browse-reset:hover { background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.browse-search-card > .card-body > form > .row { margin-block: .35rem !important; }
.browse-search-card .form-control, .browse-search-card .form-select { min-height: 2.5rem; padding-block: .45rem; font-size: .83rem; border-radius: .35rem; }
.browse-search-card .form-label { margin-bottom: .35rem; font-size: .78rem; font-weight: 700; }
.browse-query-wrap { position: relative; }
.browse-query-wrap > svg { position: absolute; top: 50%; left: .85rem; color: var(--text-secondary); transform: translateY(-50%); pointer-events: none; }
.browse-query-wrap .form-control { padding-left: 2.4rem; }
.browse-search-card .card { border: 1px solid var(--border-primary); border-radius: .4rem; margin: 0 !important; background: var(--bg-secondary); }
.browse-search-card .card-header { padding: .65rem .85rem !important; }
.browse-search-card .card-body { padding: .75rem .85rem; }
.browse-search-card > .card-body { padding: clamp(.9rem, 2vw, 1.4rem); }
.browse-search-card .browse-filter-heading { display: flex; justify-content: space-between; align-items: center; gap: .5rem; }
.browse-search-card .browse-filter-toggle { padding: .3rem .6rem; border: 1px solid var(--border-primary); background: var(--bg-card); color: var(--text-primary); font-size: .72rem; }
.browse-search-card .browse-filter-toggle:hover { background: var(--bs-primary-bg-subtle); border-color: var(--bs-primary-border-subtle); color: var(--text-primary); }
.browse-search-card .browse-filter-submit { padding: .65rem 1.5rem; border: 1px solid var(--bs-primary); background: var(--bs-primary); color: var(--ui-on-accent); font-size: .85rem; font-weight: 700; }
.browse-search-card .browse-filter-submit:hover { filter: brightness(.92); color: var(--ui-on-accent); }
.browse-search-card .chip-group { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: .3rem .55rem; }
.browse-search-card .chip-group .chip-label { display: flex; align-items: center; gap: .35rem; min-height: 25px; margin: 0; padding: .1rem .15rem; border-radius: .2rem; background: transparent; color: var(--text-primary); font-size: .75rem; font-weight: 500; cursor: pointer; user-select: none; }
.browse-search-card .chip-group .chip-label:hover { background: var(--bs-primary-bg-subtle); }
.browse-search-card .chip-group .chip-label::before { content: ''; flex: 0 0 15px; width: 15px; height: 15px; border: 1px solid var(--border-primary); border-radius: 2px; background: var(--bg-card); background-image: none; }
.browse-search-card .chip-group .chip-label:hover::before { border-color: var(--bs-primary); background: var(--bg-card); }
.browse-search-card .chip-group .chip-text, .browse-search-card .chip-group .chip-label:hover .chip-text, .browse-search-card .chip-group .btn-check:checked + .chip-label .chip-text { padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--text-primary); line-height: 1.35; }
.browse-search-card .chip-group .btn-check:checked + .chip-label::before { content: '✓'; display: grid; place-items: center; border-color: var(--bs-primary); background: var(--bs-primary); background-image: none; color: var(--ui-on-accent); font-size: 12px; font-weight: 800; line-height: 1; }
.browse-search-card .chip-group .btn-check:focus-visible + .chip-label { outline: 2px solid var(--bs-primary); outline-offset: 1px; }
.browse-poster-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 145px), 1fr)); gap: .85rem; }
.browse-poster-card { min-width: 0; display: flex; flex-direction: column; border: 1px solid var(--border-primary); background: var(--bg-card); }
.browse-poster-image { display: block; background: var(--bg-secondary); }
.browse-poster-image img { display: block; width: 100%; aspect-ratio: 2 / 3; object-fit: cover; }
.browse-poster-info { display: flex; flex: 1; flex-direction: column; gap: .25rem; padding: .4rem .45rem .45rem; }
.browse-poster-title { display: -webkit-box; min-height: 2.1rem; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: .76rem; font-weight: 650; line-height: 1.35; text-decoration: none; overflow-wrap: anywhere; }
.browse-poster-tags { display: flex; flex-wrap: wrap; gap: .2rem; font-size: .67rem; }
.browse-poster-tags .badge { font-size: .65rem; font-weight: 500; text-decoration: none; }
.browse-poster-meta { color: var(--text-secondary); font-size: .68rem; line-height: 1.25; }
.browse-poster-peers { display: flex; gap: .75rem; color: var(--text-secondary); font-size: .7rem; font-variant-numeric: tabular-nums; }
.browse-poster-actions { display: flex; gap: .22rem; margin-top: auto; padding-top: .2rem; }
.browse-poster-actions .btn { padding: .18rem .35rem; font-size: .7rem; }
.browse-poster-actions .status-badge { display: inline-flex; max-width: 100%; padding: .24rem; overflow: hidden; font-size: .7rem; white-space: nowrap; }
.category-group-title { grid-column: 1 / -1; margin-top: .4rem; padding-bottom: .2rem; border-bottom: 1px solid var(--border-primary); color: var(--text-secondary); font-size: .75rem; font-weight: 750; text-transform: uppercase; }
.category-symbol { display: inline-grid; place-items: center; width: 1.65rem; height: 1.65rem; border-radius: .25rem; background: var(--bs-primary-bg-subtle); color: var(--bs-primary); font-size: .88rem; }
/* Rank colors inherit the selected skin's text and accent colors. */
body [class^="class_"], body [class*=" class_"] { font-weight: 650; text-shadow: none; animation: none; }
body .class_0 { color: var(--text-muted); }
body .class_1 { color: var(--text-secondary); }
body .class_2 { color: var(--text-primary); }
body .class_3 { color: color-mix(in srgb, var(--bs-primary) 45%, var(--text-primary)); }
body .class_4 { color: color-mix(in srgb, var(--bs-primary) 60%, var(--text-primary)); }
body .class_5 { color: color-mix(in srgb, var(--bs-primary) 75%, var(--text-primary)); }
body .class_6 { color: color-mix(in srgb, var(--bs-info) 65%, var(--text-primary)); }
body .class_7 { color: color-mix(in srgb, var(--bs-warning) 60%, var(--text-primary)); }
body .class_8 { color: color-mix(in srgb, var(--bs-danger) 65%, var(--text-primary)); }
body .class_9, body .class_11 { color: color-mix(in srgb, var(--bs-primary) 75%, var(--text-primary)); }
body .class_10 { color: color-mix(in srgb, var(--bs-danger) 75%, var(--text-primary)); }
body :is(.class_4, .class_5, .class_6, .class_7, .class_8, .class_9, .class_10, .class_11) {
  display: inline-block;
  padding: .08em .45em;
  border: 1px solid currentColor;
  border-radius: .2rem;
  background: var(--bg-card);
  line-height: 1.4;
}
/* Each skin owns its rank palette; staff previews use the same variables. */
body.theme-1 { --rank-member: #405465; --rank-veteran: #326f9b; --rank-vip: #7a57a3; --rank-uploader: #227d65; --rank-helpdesk: #3977a7; --rank-moderator: #a26a16; --rank-admin: #b14753; --rank-developer: #594ca3; --rank-owner: #922e59; }
body.theme-2 { --rank-member: #c6e4d5; --rank-veteran: #8bd8b0; --rank-vip: #cab5f0; --rank-uploader: #6de0b3; --rank-helpdesk: #81cbdc; --rank-moderator: #e1c785; --rank-admin: #f29a9d; --rank-developer: #b7b0f2; --rank-owner: #f2b6d4; }
body.theme-3 { --rank-member: #e5c8ce; --rank-veteran: #f2b0a4; --rank-vip: #d9a7e9; --rank-uploader: #9dd6bb; --rank-helpdesk: #a8c9e6; --rank-moderator: #e8c48c; --rank-admin: #f19192; --rank-developer: #c3b1ec; --rank-owner: #f4adc6; }
body.theme-4 { --rank-member: #414965; --rank-veteran: #5267ae; --rank-vip: #8359ad; --rank-uploader: #287c75; --rank-helpdesk: #3274a6; --rank-moderator: #9c6c22; --rank-admin: #b04466; --rank-developer: #4b4caa; --rank-owner: #8d315f; }
body.theme-5 { --rank-member: #dfd2e9; --rank-veteran: #c5b2e9; --rank-vip: #d2a6ed; --rank-uploader: #a4dbc6; --rank-helpdesk: #b7caed; --rank-moderator: #e5c69b; --rank-admin: #eda8b4; --rank-developer: #b5aaf5; --rank-owner: #efa5d8; }
body.theme-6 { --rank-member: #e8d9bf; --rank-veteran: #d5bf93; --rank-vip: #d8b9e3; --rank-uploader: #a6d4b4; --rank-helpdesk: #a4c9dd; --rank-moderator: #ebc375; --rank-admin: #ec9f8c; --rank-developer: #b9b4ed; --rank-owner: #e6a1b5; }
body.theme-7 { --rank-member: #c4e1e5; --rank-veteran: #91d0d8; --rank-vip: #c4ade5; --rank-uploader: #8cddba; --rank-helpdesk: #7ccfe3; --rank-moderator: #dbc68f; --rank-admin: #efa7a1; --rank-developer: #aebcef; --rank-owner: #e9b4d2; }
body.theme-8 { --rank-member: #efd5df; --rank-veteran: #ebb6c7; --rank-vip: #d6b0ee; --rank-uploader: #a8d7c0; --rank-helpdesk: #b5cfec; --rank-moderator: #e5c59b; --rank-admin: #f39bad; --rank-developer: #bdb5ed; --rank-owner: #f3a4cc; }
body.theme-9 { --rank-member: #d3dff1; --rank-veteran: #a9c7f0; --rank-vip: #c6b1f2; --rank-uploader: #98ddbf; --rank-helpdesk: #9ecde9; --rank-moderator: #e0c992; --rank-admin: #eca8ae; --rank-developer: #adbbf3; --rank-owner: #eab5d5; }
body .class_1 { color: var(--rank-member); }
body .class_2, body .class_3 { color: var(--rank-veteran); }
body .class_4 { color: var(--rank-vip); }
body .class_5 { color: var(--rank-uploader); }
body .class_6 { color: var(--rank-helpdesk); }
body .class_7 { color: var(--rank-moderator); }
body .class_8 { color: var(--rank-admin); }
body .class_9 { color: var(--rank-developer); }
body .class_10 { color: var(--rank-owner); }
.home-layout > .col-md-8, .home-layout > .col-md-4 { min-width: 0; }
.leaderboard-list { margin: 0; padding-left: 1.65rem; }
.leaderboard-list li { padding: .58rem .2rem; border-bottom: 1px solid var(--border-primary); }
.leaderboard-list li:last-child { border-bottom: 0; }
.leaderboard-list li::marker { color: var(--bs-primary); font-weight: 800; }
.leaderboard-list li, .leaderboard-user { gap: .75rem; }
.leaderboard-list li { display: list-item; }
.leaderboard-list li strong { float: right; color: var(--bs-primary); font-variant-numeric: tabular-nums; }
.leaderboard-user a { text-decoration: none; font-weight: 700; }
#categories, #mufajok { overflow: visible; }
#toggleCategories, #toggleMufajok { display: inline-flex !important; align-items: center; }
.chip-text { border: 1px solid var(--border-primary); }
.page-hero h1 { max-width: none; }
.auth-shell { width: 100%; max-width: 1120px; margin: 1rem auto 3rem; }
.auth-shell .card { width: 100%; max-width: none; margin-inline: auto; }
.auth-shell .card-body { padding: clamp(1.25rem, 3vw, 2.2rem); }
.auth-shell .card-body > form { width: 100%; max-width: 900px; margin-inline: auto; }
.auth-shell form > label { margin-top: .8rem; font-weight: 700; }
.auth-shell form > .form-control { min-height: 2.75rem; }
.auth-shell .container { width: 100%; margin: 1rem 0 !important; padding: 0; }
.system-notice { display: flex; align-items: flex-start; gap: 1rem; width: 100%; min-height: 9rem; margin: 1rem 0 2rem; padding: clamp(1.25rem, 3vw, 2rem); border: 1px solid var(--border-primary); border-left: 4px solid var(--bs-danger); border-radius: .45rem; background: var(--bg-card); color: var(--text-primary); }
.system-notice-icon { display: grid; flex: 0 0 2.8rem; place-items: center; height: 2.8rem; border-radius: .6rem; background: var(--bs-danger-bg-subtle); color: var(--bs-danger); font-size: 1.15rem; }
.system-notice-content { min-width: 0; }
.system-notice h1 { margin: .25rem 0 .55rem; color: var(--text-primary); font-size: clamp(1.2rem, 2vw, 1.55rem); }
.system-notice-text { max-width: 85ch; color: var(--text-secondary); font-size: .9rem; line-height: 1.6; overflow-wrap: anywhere; }
.system-notice-text > :last-child { margin-bottom: 0; }
@media (max-width: 575.98px) { .system-notice { gap: .75rem; } .system-notice-icon { flex-basis: 2.2rem; height: 2.2rem; } }
.bonus-summary .card-body { background: linear-gradient(110deg, var(--bs-primary-bg-subtle), var(--bg-card)); }
.bonus-summary .col-md-6 + .col-md-6 { border-left: 1px solid var(--border-primary); }
.bonus-summary h2 { color: var(--bs-primary); font-size: clamp(2rem, 3.5vw, 3rem); }
.bonus-transfer .form-control, .bonus-transfer .btn { min-height: 2.7rem; }
.bonus-options #optionsContainer { gap: .65rem 0; }
.wiki-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 1rem; align-items: start; }
.wiki-grid .card { margin: 0 !important; height: 100%; }
.wiki-links { margin: 0; padding: 0; list-style: none; }
.wiki-links li + li { border-top: 1px solid var(--border-primary); }
.wiki-links a { display: block; padding: .65rem 0; font-weight: 650; text-decoration: none; }
.wiki-links a:hover { color: var(--bs-primary); }
.profile-card .card-body { padding: clamp(1rem, 2vw, 1.75rem); }
.profile-card .col-lg-3 { background: var(--bs-primary-bg-subtle); border-radius: .9rem; padding: 1rem; }
.profile-card .avatar { width: min(100%, 200px); height: auto !important; aspect-ratio: 4 / 5; border-radius: .85rem !important; object-fit: cover; }
.profile-card .col-lg-9 > .row { border-bottom: 1px solid var(--border-primary); padding: .55rem 0; }
.member-profile { display: grid; gap: 1rem; margin-block: .75rem 1.5rem; }
.member-profile-header { display: grid; grid-template-columns: 120px minmax(0, 1fr) auto; align-items: center; gap: 1.25rem; padding: 1.2rem; border: 1px solid var(--border-primary); background: var(--bg-card); }
.member-profile-avatar { width: 120px; height: 120px; object-fit: cover; border: 1px solid var(--border-primary); background: var(--bg-secondary); }
.member-profile-heading h1 { margin: .15rem 0 .35rem; font-size: clamp(1.35rem, 3vw, 2rem); overflow-wrap: anywhere; }
.member-profile-heading p { margin: .5rem 0 0; color: var(--text-secondary); }
.member-profile-badges, .member-profile-actions { display: flex; flex-wrap: wrap; gap: .35rem; align-items: center; }
.member-profile-actions { max-width: 300px; justify-content: flex-end; }
.member-profile-actions .btn { font-size: .78rem; }
.member-flag { display: inline-flex; padding: .1rem .45rem; border: 1px solid var(--border-primary); color: var(--text-secondary); font-size: .75rem; }
.member-flag-warning { color: var(--bs-warning); }
.member-flag-danger { color: var(--bs-danger); }
.member-profile-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.member-profile-grid .card { margin: 0 !important; }
.member-facts dl { margin: 0; }
.member-facts dl > div { display: flex; justify-content: space-between; gap: 1rem; padding: .5rem 0; border-bottom: 1px solid var(--border-primary); }
.member-facts dl > div:last-child { border-bottom: 0; }
.member-facts dt { color: var(--text-secondary); font-weight: 500; }
.member-facts dd { margin: 0; text-align: right; overflow-wrap: anywhere; }
.member-facts dd small { display: block; color: var(--text-muted); }
.member-stat-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; }
.member-stat-grid > div { display: flex; flex-direction: column; gap: .3rem; padding: .75rem; background: var(--bg-secondary); }
.member-stat-grid span { color: var(--text-secondary); font-size: .78rem; }
.member-stat-grid strong { color: var(--text-primary); font-size: 1.05rem; font-variant-numeric: tabular-nums; }
.member-stats small { display: block; margin-top: .75rem; color: var(--text-muted); }
.member-activity-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); gap: .5rem; }
.member-activity-item { display: flex; align-items: center; gap: .6rem; padding: .65rem .75rem; border: 1px solid var(--border-primary); background: var(--bg-secondary); text-decoration: none; }
.member-activity-item i { color: var(--bs-primary); }
.member-activity-item span { flex: 1; }
.member-activity-item strong { font-variant-numeric: tabular-nums; }
.invite-layout { display: grid; gap: 1rem; margin-bottom: 2rem; }
.invite-layout .card { margin: 0 !important; }
.invite-stat-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .65rem; margin-bottom: 1rem; }
.invite-stat-grid > div { display: flex; flex-direction: column; padding: .8rem; background: var(--bg-secondary); }
.invite-stat-grid strong { font-size: 1.3rem; font-variant-numeric: tabular-nums; }
.invite-stat-grid span { color: var(--text-secondary); font-size: .78rem; }
.invite-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.invite-row { display: flex; align-items: center; gap: 1rem; padding: .8rem 0; border-bottom: 1px solid var(--border-primary); }
.invite-row:last-child { border-bottom: 0; }
.invite-link-area { flex: 1; min-width: 0; }
.invite-link-area label { display: block; margin-bottom: .3rem; font-weight: 650; font-size: .8rem; }
.invite-link-area small { display: block; margin-top: .25rem; color: var(--text-muted); }
.invite-link-input { display: flex; gap: .4rem; }
.invite-link-input input { min-width: 0; font-size: .82rem; }
.invite-link-input button { white-space: nowrap; }
#uploadForm .card-body { padding: clamp(1rem, 2vw, 2rem); }
#uploadForm .form-label { font-weight: 700; }
#uploadForm .form-control, #uploadForm .form-select { min-height: 2.7rem; }
.btn:focus-visible, .nav-link:focus-visible, #toggleCategories:focus-visible, #toggleMufajok:focus-visible {
  outline: 3px solid var(--bs-primary);
  outline-offset: 2px;
}
@media (max-width: 1599.98px) {
  .navbar-logo-wrapper .navbar { padding: 0; }
  .navbar-logo-wrapper .index-link { display: list-item; }
  .navbar-logo-wrapper { margin: 0 0 1rem; }
  .navbar-logo-wrapper .navbar > .container-fluid { flex-wrap: wrap; }
  .navbar-logo-wrapper .navbar-brand { order: 1; }
  .navbar-logo-wrapper form.nav-search-compact { order: 2; }
  .navbar-logo-wrapper .navbar-toggler { order: 4; }
  .navbar-logo-wrapper .navbar-collapse { order: 5; width: 100%; flex-basis: 100%; flex-direction: column; align-items: stretch; }
  .navbar-logo-wrapper .navbar-collapse:not(.show):not(.collapsing) { display: none !important; }
  .navbar-logo-wrapper .navbar-collapse.show { display: flex !important; max-height: calc(100dvh - 56px); overflow-y: auto; overscroll-behavior: contain; }
  .navbar-logo-wrapper .navbar-collapse.collapsing { overflow: hidden; }
  .navbar-logo-wrapper .navbar-toggler { display: inline-flex !important; align-items: center; justify-content: center; width: 40px; height: 36px; margin-left: auto; padding: 0; }
  .navbar-logo-wrapper form.nav-search-compact { display: flex !important; flex: 0 1 360px; width: min(360px, 40vw); min-width: 180px; margin: .3rem .6rem .3rem auto; }
  .navbar-logo-wrapper .navbar-toggler { margin-left: 0; }
  .navbar-logo-wrapper .nav-link { padding: .28rem .7rem !important; line-height: 1.2; }
  .navbar-logo-wrapper .navbar-nav, .navbar-logo-wrapper .navbar-nav.ms-auto { flex-direction: column; align-items: stretch; width: 100%; }
  .navbar-logo-wrapper .navbar-nav.ms-auto { border-top: 1px solid var(--border-primary); padding-top: .5rem; margin-top: .5rem !important; margin-left: 0 !important; }
  .navbar-logo-wrapper .nav-search { flex: 0 0 100%; width: 100%; min-width: 0; margin: .5rem 0; }
  .navbar-logo-wrapper .navbar-collapse .nav-search { display: none; }
  .navbar-logo-wrapper .navbar-nav .dropdown-menu { position: static !important; width: 100% !important; max-height: none; overflow: visible; box-shadow: none; transform: none !important; }
  .navbar-logo-wrapper #moreNav + .dropdown-menu { width: 100% !important; }
  .navbar-logo-wrapper .navbar-nav .notification-menu { width: 100% !important; max-height: min(22rem, calc(100dvh - 180px)) !important; overflow-y: auto !important; }
  .navbar-logo-wrapper .nav-theme { order: 3; flex: 0 0 auto; flex-direction: row; align-items: center; width: auto; margin-left: 0; }
  .navbar-logo-wrapper .nav-theme .theme-menu { position: absolute !important; width: min(20rem, calc(100vw - 1rem)) !important; max-height: min(25rem, calc(100dvh - 58px)) !important; overflow-y: auto !important; box-shadow: 0 18px 40px rgba(0, 0, 0, .18); transform: none !important; }
  .navbar-logo-wrapper .nav-account { align-items: stretch; gap: 0; }
  .navbar-logo-wrapper .nav-icon-link { justify-content: center; width: 36px; margin: 0 .3rem; }
  .navbar-logo-wrapper .account-trigger { justify-content: flex-start; width: 100%; margin: 0; }
  .navbar-logo-wrapper .account-dropdown .account-menu { width: 100% !important; max-height: none !important; }
  .navbar-logo-wrapper .account-menu-links { grid-template-columns: 1fr; }
  .navbar-logo-wrapper .account-menu-heading { display: none; }
  .site-content { padding: 0 0 1rem; }
  .tracker-hero { align-items: start; flex-direction: column; }
}
@media (max-width: 575.98px) { .brand-copy small { display: none; } }
@media (max-height: 500px) {
  .navbar-logo-wrapper .account-menu-heading { display: none; }
  .navbar-logo-wrapper .account-menu-footer { grid-template-columns: minmax(0, 1fr) auto; align-items: center; padding: .35rem .5rem; }
}
@media (max-width: 650px) {
  .navbar-logo-wrapper .navbar-brand { order: 1; }
  .navbar-logo-wrapper .nav-theme { order: 2; margin-left: auto; }
  .navbar-logo-wrapper .navbar-toggler { order: 3; margin-left: 0; }
  .navbar-logo-wrapper form.nav-search-compact { order: 4; flex: 0 0 100%; width: 100%; margin: .25rem 0 .5rem; }
  .navbar-logo-wrapper .navbar-collapse { order: 5; }
}
@media (max-width: 800px) {
  .member-profile-header { grid-template-columns: 88px minmax(0, 1fr); }
  .member-profile-avatar { width: 88px; height: 88px; }
  .member-profile-actions { grid-column: 1 / -1; max-width: none; justify-content: flex-start; }
  .member-profile-grid { grid-template-columns: 1fr; }
}
@media (max-width: 600px) { .browse-poster-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem; } }
@media (max-width: 575.98px) {
  .invite-stat-grid { grid-template-columns: 1fr; }
  .invite-row { align-items: stretch; flex-direction: column; }
  .invite-link-input { flex-wrap: wrap; }
  .invite-link-input input { flex-basis: 100%; }
  .member-profile-header { grid-template-columns: 1fr; }
  .member-profile-avatar { width: 104px; height: 104px; }
  .bonus-summary .col-md-6 + .col-md-6 { border-left: 0; border-top: 1px solid var(--border-primary); }
  .tracker-hero-actions, .tracker-hero-actions .btn { width: 100%; }
  .leaderboard-list li strong { float: none; display: block; margin-top: .2rem; }
}

/* Community pages share one compact, skin-aware layout. */
.community-page { display: grid; gap: 1.2rem; margin: .75rem 0 2rem; }
.community-hero { padding: clamp(1.2rem, 3vw, 2rem); border: 1px solid var(--border-primary); background: linear-gradient(135deg, var(--bs-primary-bg-subtle), var(--bg-card) 65%); }
.community-hero h1 { margin: .2rem 0 .4rem; font-size: clamp(1.65rem, 3vw, 2.35rem); }
.community-hero p { max-width: 65ch; margin: 0; color: var(--text-secondary); }
.community-hero .btn { margin-top: .9rem; }
.community-summary { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: 1rem; }
.community-summary span { padding: .35rem .7rem; border: 1px solid var(--border-primary); background: var(--bg-card); color: var(--text-secondary); font-size: .8rem; }
.community-summary strong { color: var(--bs-primary); }
.community-panel { min-width: 0; border: 1px solid var(--border-primary); background: var(--bg-card); }
.community-panel-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.2rem; border-bottom: 1px solid var(--border-primary); }
.community-panel-heading h2 { margin: .15rem 0 0; font-size: 1.1rem; }
.community-empty { margin: 0; padding: 1.4rem; color: var(--text-secondary); }
.people-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 330px), 1fr)); gap: .7rem; padding: .9rem; }
.person-card { display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: .75rem; align-items: start; padding: .85rem; border: 1px solid var(--border-primary); background: var(--bg-secondary); }
.person-avatar { width: 58px; height: 58px; object-fit: cover; border: 1px solid var(--border-primary); }
.person-main { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: .2rem; }
.person-name { max-width: 100%; font-size: .95rem; font-weight: 750; text-decoration: none; overflow-wrap: anywhere; }
.person-rank, .person-meta, .person-state { color: var(--text-secondary); font-size: .76rem; }
.person-state { color: var(--bs-primary); }
.person-actions { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: .4rem; padding-top: .3rem; }
.person-card-compact { grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
.person-card-compact .person-actions { grid-column: auto; padding: 0; }
.helpdesk-layout { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(280px, .85fr); gap: 1rem; align-items: start; }
.helpdesk-form { display: grid; gap: .45rem; padding: 1.2rem; }
.helpdesk-form .form-label { margin: .6rem 0 0; font-weight: 700; }
.helpdesk-form .btn { justify-self: start; margin-top: .8rem; }
.helpdesk-ticket-list { max-height: 640px; overflow: auto; }
.helpdesk-ticket { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .2rem .5rem; padding: .85rem 1rem; border-bottom: 1px solid var(--border-primary); color: var(--text-primary); text-decoration: none; }
.helpdesk-ticket:hover { background: var(--bs-primary-bg-subtle); }
.helpdesk-ticket-title { font-weight: 700; overflow-wrap: anywhere; }
.helpdesk-ticket-meta { grid-column: 1 / -1; grid-row: 2; color: var(--text-secondary); font-size: .76rem; }
.helpdesk-ticket .badge { align-self: start; }
.staff-chips { display: flex; flex-wrap: wrap; gap: .5rem; padding: 1rem; }
.staff-chip { display: flex; flex-direction: column; gap: .15rem; padding: .55rem .7rem; border: 1px solid var(--border-primary); background: var(--bg-secondary); text-decoration: none; }
.staff-chip small { color: var(--text-secondary); }
.settings-page .card { overflow: hidden; }
.settings-page .card-body { padding: clamp(1rem, 2vw, 1.6rem); }
.settings-page .form-control, .settings-page .form-select { min-height: 2.65rem; }
.settings-page .form-label { color: var(--text-primary); }
#commentSection { max-width: none; }
#commentSection > .card { border: 1px solid var(--border-primary); box-shadow: none !important; }
#commentSection > .card > .card-header { background: var(--bg-card-header) !important; color: var(--text-primary) !important; border-bottom: 1px solid var(--border-primary); }
#commentSection .comment-card { margin-left: 0; border-left: 3px solid var(--bs-primary) !important; box-shadow: none !important; }
#commentSection .comment-card > .card-header { background: var(--bg-secondary) !important; }
#commentSection .comment-card > .card-body { gap: .6rem; }
#commentSection .comment-avatar-container { width: 68px !important; min-width: 68px !important; }
#commentSection .comment-avatar-container img { width: 56px !important; height: 56px !important; border-radius: 50% !important; }
#commentSection .comment-text-content { min-width: 0; line-height: 1.55; }
#commentSection textarea { min-height: 120px; }
.helpdesk-page + .card { margin-top: 1rem; }
@media (max-width: 800px) { .helpdesk-layout { grid-template-columns: 1fr; } }
@media (max-width: 575.98px) { .community-panel-heading { align-items: flex-start; flex-direction: column; } .person-card-compact { grid-template-columns: 1fr; } .person-card-compact .person-actions { grid-column: 1; } #commentSection .comment-avatar-container { width: 100% !important; min-width: 0 !important; text-align: left !important; } }
.settings-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem 1rem; }
.settings-form > div:not(.alert) { min-width: 0; margin: 0 !important; padding: .75rem; border: 1px solid var(--border-primary); background: var(--bg-secondary); }
.settings-form > div:has(textarea), .settings-form > .alert, .settings-form > div:last-child { grid-column: 1 / -1; }
.settings-form > div:last-child { padding: 0; border: 0; background: transparent; text-align: left !important; }
.settings-form .form-subtext { color: var(--text-secondary) !important; font-size: .76rem; }
@media (max-width: 700px) { .settings-form { grid-template-columns: 1fr; } }
.rank-preview { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); gap: .5rem; padding: 1rem; }
.rank-preview-row { display: flex; align-items: center; justify-content: space-between; gap: .6rem; padding: .7rem; border: 1px solid var(--border-primary); background: var(--bg-secondary); }
.rank-preview-row > span { color: var(--text-secondary); font-size: .8rem; }
.rank-color-form .rank-preview { grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)); }
.rank-color-form .rank-preview-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; cursor: default; }
.rank-color-form .rank-preview-row .form-control { grid-column: 1 / -1; }
.rank-color-actions { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .75rem; padding: 1rem 1.2rem; border-top: 1px solid var(--border-primary); }
.rank-color-actions p { margin: 0; color: var(--text-secondary); font-size: .8rem; }
.helpdesk-thread .card, .helpdesk-admin .card { margin: 0 !important; border: 1px solid var(--border-primary); box-shadow: none; }
.helpdesk-thread .card-header, .helpdesk-admin .card-header { background: var(--bg-card-header); color: var(--text-primary); }
.helpdesk-thread .card-body > ul { margin: 0 !important; padding: 0 !important; font-size: .85rem !important; }
.helpdesk-thread .card-body > ul li { padding: .25rem 0; }
.helpdesk-thread .message { max-width: min(100%, 760px); margin: .6rem 0; padding: .85rem 1rem; border: 1px solid var(--border-primary); border-left: 3px solid var(--bs-primary); background: var(--bg-secondary); overflow-wrap: anywhere; }
.helpdesk-thread .message.sender { margin-left: auto; background: var(--bs-primary-bg-subtle); }
.helpdesk-thread .message.receiver { margin-right: auto; }
.helpdesk-thread .message-user { display: flex; align-items: center; flex-wrap: wrap; gap: .45rem; margin-bottom: .5rem; }
.helpdesk-thread .message-user .avatar { width: 32px; height: 32px; object-fit: cover; border-radius: 50%; }
.helpdesk-thread .date-time { color: var(--text-muted); font-size: .76rem; }
.helpdesk-thread .message-text { line-height: 1.55; }
.helpdesk-thread textarea { min-height: 160px; }
.helpdesk-admin .table-responsive { min-width: 0; }

/* Requests use a compact list instead of the old poster card grid. */
.requests-page { display: grid; gap: .8rem; margin: .7rem 0 2rem; }
.requests-intro { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1.15rem 1.3rem; border: 1px solid var(--border-primary); background: var(--bg-card); }
.requests-eyebrow { color: var(--text-secondary); font-size: .7rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.requests-intro h1 { margin: .2rem 0 .25rem; color: var(--text-primary); font-size: clamp(1.4rem, 2.5vw, 1.8rem); font-weight: 800; }
.requests-intro p { max-width: 65ch; margin: 0; color: var(--text-secondary); font-size: .85rem; }
.requests-intro-actions { display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; flex-shrink: 0; }
.requests-primary-action, .requests-filter-submit { border: 1px solid var(--bs-primary); background: var(--bs-primary); color: var(--ui-on-accent); font-size: .82rem; font-weight: 700; }
.requests-primary-action:hover, .requests-filter-submit:hover { filter: brightness(.92); color: var(--ui-on-accent); }
.requests-text-link { color: var(--text-primary); font-size: .78rem; font-weight: 650; text-decoration: none; }
.requests-text-link:hover { color: var(--bs-primary); }
.requests-filters { display: grid; grid-template-columns: minmax(170px, 1.7fr) minmax(150px, 1fr) minmax(150px, 1fr) auto; align-items: end; gap: .55rem; padding: .75rem; border: 1px solid var(--border-primary); background: var(--bg-card); }
.requests-filters > div { min-width: 0; }
.requests-filters label { display: block; margin-bottom: .2rem; color: var(--text-secondary); font-size: .72rem; font-weight: 650; }
.requests-filters :is(.form-control, .form-select) { min-height: 2.1rem; padding-block: .25rem; border-color: var(--border-primary); border-radius: .2rem; background-color: var(--bg-card); color: var(--text-primary); font-size: .8rem; }
.requests-filters :is(.form-control, .form-select)::placeholder { color: var(--text-muted); }
.requests-filter-submit { min-height: 2.1rem; padding: .25rem .75rem; white-space: nowrap; }
.requests-results { min-width: 0; border: 1px solid var(--border-primary); background: var(--bg-card); }
.requests-results-heading { display: flex; justify-content: space-between; align-items: center; gap: .75rem; padding: .65rem .85rem; border-bottom: 1px solid var(--border-primary); }
.requests-results-heading h2 { margin: .12rem 0 0; color: var(--text-primary); font-size: .98rem; font-weight: 750; }
.requests-results-heading h2 small { margin-left: .3rem; color: var(--text-secondary); font-size: .68rem; font-weight: 500; }
.requests-sort { display: flex; gap: .3rem; }
.requests-sort a { padding: .35rem .55rem; border: 1px solid var(--border-primary); color: var(--text-secondary); font-size: .73rem; text-decoration: none; white-space: nowrap; }
.requests-sort a:hover, .requests-sort a.is-active { border-color: var(--bs-primary-border-subtle); background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.requests-empty { margin: 0; padding: 1.3rem; color: var(--text-secondary); }
.requests-list { display: grid; }
.request-row { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: .75rem; align-items: center; min-width: 0; padding: .65rem .85rem; border-bottom: 1px solid var(--border-primary); }
.request-row:last-child { border-bottom: 0; }
.request-row:hover { background: var(--bs-primary-bg-subtle); }
.request-row-poster { width: 64px; height: 88px; overflow: hidden; background: var(--bg-secondary); }
.request-row-poster img { display: block; width: 100%; height: 100%; object-fit: cover; }
.request-row-main { min-width: 0; }
.request-row-topline { display: flex; align-items: center; flex-wrap: wrap; gap: .4rem .65rem; color: var(--text-secondary); font-size: .7rem; }
.request-category { color: var(--bs-primary); font-weight: 700; }
.request-row h3 { margin: .25rem 0 .45rem; font-size: .9rem; font-weight: 750; overflow-wrap: anywhere; }
.request-row h3 a { color: var(--text-primary); text-decoration: none; }
.request-row h3 a:hover { color: var(--bs-primary); }
.request-row-meta { display: flex; flex-wrap: wrap; gap: .2rem .8rem; color: var(--text-secondary); font-size: .73rem; }
.request-row-meta strong { color: var(--text-primary); }
.request-row-fulfiller { margin: .25rem 0 0; color: var(--text-secondary); font-size: .72rem; }
.request-row-actions { display: flex; flex-direction: column; align-items: flex-end; gap: .35rem; }
.request-state { display: inline-flex; align-items: center; gap: .3rem; padding: .25rem .45rem; border: 1px solid var(--border-primary); color: var(--text-secondary); font-size: .7rem; font-weight: 650; text-decoration: none; white-space: nowrap; }
.request-state.is-complete { border-color: var(--bs-primary-border-subtle); background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.request-state.is-complete:hover { color: var(--bs-primary); }
.request-admin-actions { display: flex; gap: .25rem; }
.request-admin-actions a { display: grid; place-items: center; width: 1.7rem; height: 1.7rem; border: 1px solid var(--border-primary); color: var(--text-secondary); text-decoration: none; }
.request-admin-actions a:hover { background: var(--bg-card); color: var(--text-primary); }
.requests-results > .pagination, .requests-results > nav, .requests-results > .pager { margin: .6rem .85rem; }
@media (max-width: 850px) { .requests-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); } .requests-filter-search { grid-column: 1 / -1; } .requests-filter-submit { justify-self: start; } }
@media (max-width: 650px) { .requests-intro { align-items: flex-start; flex-direction: column; } .request-row { grid-template-columns: 55px minmax(0, 1fr); gap: .5rem; } .request-row-poster { width: 55px; height: 77px; } .request-row-actions { grid-column: 2; align-items: flex-start; flex-direction: row; flex-wrap: wrap; } }
@media (max-width: 440px) { .requests-filters { grid-template-columns: 1fr; } .requests-filter-search { grid-column: auto; } .requests-results-heading { align-items: flex-start; flex-direction: column; } }
.requests-back { display: flex; align-items: center; gap: .35rem; width: max-content; margin-bottom: .45rem; color: var(--text-secondary); font-size: .76rem; text-decoration: none; }
.request-detail-page .requests-eyebrow { display: block; }
.requests-back:hover { color: var(--bs-primary); }
.request-form-page { max-width: 920px; margin-inline: auto; }
.request-form { border: 1px solid var(--border-primary); background: var(--bg-card); }
.request-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem 1rem; padding: 1.1rem; }
.request-form-grid > div { min-width: 0; }
.request-form-wide { grid-column: 1 / -1; }
.request-form-grid .form-label, .request-detail-forms label { display: block; margin-bottom: .3rem; color: var(--text-primary); font-size: .8rem; font-weight: 700; }
.request-form-grid :is(.form-control, .form-select), .request-detail-form-row .form-control { border-color: var(--border-primary); border-radius: .2rem; background-color: var(--bg-card); color: var(--text-primary); font-size: .82rem; }
.request-form-grid small { display: block; margin-top: .25rem; color: var(--text-secondary); font-size: .72rem; }
.request-form-grid small a { color: var(--bs-primary); }
.request-form-actions { display: flex; align-items: center; gap: .8rem; padding: .85rem 1.1rem; border-top: 1px solid var(--border-primary); }
.request-form-actions a { color: var(--text-secondary); font-size: .8rem; text-decoration: none; }
.request-form-actions a:hover { color: var(--text-primary); }
.request-detail-page { max-width: 1100px; margin-inline: auto; }
.request-detail-page .requests-intro h1 { max-width: 35ch; overflow-wrap: anywhere; }
.request-secondary-action { border: 1px solid var(--border-primary); background: var(--bg-card); color: var(--text-primary); font-size: .78rem; }
.request-secondary-action:hover { background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.request-detail-grid { display: grid; grid-template-columns: minmax(155px, 205px) minmax(0, 1fr); gap: 1rem; align-items: start; }
.request-detail-poster { padding: .6rem; border: 1px solid var(--border-primary); background: var(--bg-card); }
.request-detail-poster img { display: block; width: 100%; aspect-ratio: 2 / 3; object-fit: cover; }
.request-detail-main { min-width: 0; border: 1px solid var(--border-primary); background: var(--bg-card); }
.request-detail-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .5rem; padding: 1rem; }
.request-detail-summary > div { display: flex; flex-direction: column; gap: .2rem; min-width: 0; }
.request-detail-summary span { color: var(--text-secondary); font-size: .72rem; }
.request-detail-summary strong { color: var(--text-primary); font-size: .88rem; overflow-wrap: anywhere; }
.request-detail-status { display: flex; align-items: center; flex-wrap: wrap; gap: .45rem .85rem; padding: .7rem 1rem; border-top: 1px solid var(--border-primary); }
.request-detail-status small { color: var(--text-secondary); font-size: .73rem; }
.request-detail-description { padding: 1rem; border-top: 1px solid var(--border-primary); }
.request-detail-description h2 { margin: 0 0 .65rem; color: var(--text-primary); font-size: 1rem; font-weight: 750; }
.request-detail-description > div { color: var(--text-primary); line-height: 1.5; overflow-wrap: anywhere; }
.request-detail-forms { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; padding: 1rem; border-top: 1px solid var(--border-primary); }
.request-detail-form-row { display: flex; gap: .45rem; }
.request-detail-form-row .form-control { min-width: 0; }
.request-detail-form-row .btn { flex: 0 0 auto; }
@media (max-width: 750px) { .request-detail-grid { grid-template-columns: 125px minmax(0, 1fr); } .request-detail-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); } .request-detail-forms { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .request-detail-grid { grid-template-columns: 1fr; } .request-detail-poster { width: 140px; } .request-form-grid { grid-template-columns: 1fr; } .request-form-wide { grid-column: auto; } .request-detail-form-row { flex-wrap: wrap; } .request-detail-form-row .btn { width: 100%; } }

/* Shared treatment for the older table, form, moderation and detail views. */
.site-content :is(.form-control, .form-select, .input-group-text) { border-color: var(--border-primary); background-color: var(--bg-form); color: var(--text-primary); border-radius: .25rem; }
.site-content :is(.form-control, .form-select)::placeholder { color: var(--text-muted); opacity: 1; }
.site-content .form-text { color: var(--text-secondary); }
.site-content .table-responsive { max-width: 100%; border: 1px solid var(--border-primary); }
.site-content .table { margin-bottom: 0; color: var(--text-primary); }
.site-content .table thead th { border-bottom: 1px solid var(--border-primary); background: var(--bg-secondary); color: var(--text-secondary); font-size: .72rem; font-weight: 750; letter-spacing: .04em; text-transform: uppercase; }
.site-content .table tbody tr:hover { background: var(--bs-primary-bg-subtle); }
.site-content .table a:not(.btn) { text-decoration: none; }
.site-content :is(.list-group-item, .accordion-item, .modal-content) { border-color: var(--border-primary); background: var(--bg-card); color: var(--text-primary); }
.site-content .list-group-item-action:hover { background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.site-content .nav-tabs { gap: .25rem; border-bottom: 1px solid var(--border-primary); }
.site-content .nav-tabs .nav-link { border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: transparent; color: var(--text-secondary); }
.site-content .nav-tabs .nav-link:hover, .site-content .nav-tabs .nav-link:focus-visible { background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.site-content .nav-tabs .nav-link.active { border-bottom-color: var(--bs-primary); background: transparent; color: var(--text-primary); font-weight: 700; }
.site-content .page-link { border-color: var(--border-primary); background: var(--bg-card); color: var(--bs-primary); }
.site-content .page-link:hover { background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.site-content .page-item.active .page-link { border-color: var(--bs-primary); background: var(--bs-primary); color: var(--ui-on-accent); }
.site-content .progress { background: var(--bg-secondary); border: 1px solid var(--border-primary); border-radius: 2px; }
.site-content .progress-bar { background: var(--bs-primary); color: var(--ui-on-accent); }
.site-content .user-card { border: 1px solid var(--border-primary); border-left: 3px solid var(--bs-primary); background: var(--bg-card); color: var(--text-primary); }
.site-content .user-card .user-info { display: grid; gap: .15rem; font-size: .8rem; }
.site-content .user-card .user-info a { width: fit-content; text-decoration: none; }
.site-content .user-card .user-info a:hover { text-decoration: underline; }
.site-content .uploader-progress { height: 8px; width: 100%; }
.site-content .uploader-progress .progress-bar { min-width: 0; }
.staff-dashboard .card-header { padding: .7rem 1rem !important; }
.staff-dashboard .card-body { padding: .4rem 1rem 1rem; }
.staff-dashboard .staff-dashboard-row { display: grid; grid-template-columns: minmax(195px, 270px) minmax(0, 1fr); align-items: center; gap: .75rem; margin: 0; padding: .6rem 0; border-bottom: 1px solid var(--border-primary); }
.staff-dashboard .staff-dashboard-row:last-child { border-bottom: 0; }
.staff-dashboard .staff-dashboard-row > div { width: auto; max-width: none; margin: 0 !important; padding: 0; color: var(--text-secondary); font-size: .8rem; }
.staff-dashboard .staff-dashboard-row .staff-dashboard-link { display: flex; align-items: center; justify-content: flex-start; width: 100%; min-height: 2.25rem; padding: .4rem .7rem; text-align: left; }
@media (max-width: 700px) { .staff-dashboard .staff-dashboard-row { grid-template-columns: 1fr; gap: .35rem; } }

.rss-panel { border: 1px solid var(--border-primary); border-radius: .4rem; background: var(--bg-card); }
.rss-panel-summary { display: flex; align-items: center; gap: .75rem; padding: .75rem 1rem; cursor: pointer; list-style: none; }
.rss-panel-summary::-webkit-details-marker { display: none; }
.rss-panel-summary:focus-visible { outline: 2px solid var(--bs-primary); outline-offset: 2px; }
.rss-panel-icon { display: grid; flex: 0 0 2rem; place-items: center; height: 2rem; border-radius: .35rem; background: var(--bs-primary-bg-subtle); color: var(--bs-primary); }
.rss-panel-title { display: grid; gap: .12rem; min-width: 0; }
.rss-panel-title strong { color: var(--text-primary); font-size: .87rem; }
.rss-panel-title small { color: var(--text-secondary); font-size: .75rem; }
.rss-panel-toggle { margin-left: auto; color: var(--text-secondary); transition: transform .2s ease; }
.rss-panel[open] .rss-panel-toggle { transform: rotate(180deg); }
.rss-panel-body { padding: 1rem; border-top: 1px solid var(--border-primary); }
.rss-panel-hint { margin: 0 0 .8rem; color: var(--text-secondary); font-size: .82rem; }
.rss-panel-copy { display: flex; gap: .5rem; }
.rss-panel-copy input { min-width: 0; }
.rss-panel-copy button { white-space: nowrap; }
.rss-panel-status { min-height: 1.3em; margin: .35rem 0; color: var(--text-secondary); font-size: .78rem; }
.rss-panel-private { display: flex; gap: .4rem; margin: .4rem 0 0; color: var(--text-secondary); font-size: .75rem; }

.staff-tools { display: grid; gap: 1.2rem; }
.staff-tools-section, .staff-settings-form { border: 1px solid var(--border-primary); border-radius: .4rem; background: var(--bg-card); }
.staff-tools-section { padding: 1rem; }
.staff-tools-heading { display: flex; justify-content: space-between; align-items: end; gap: .8rem; margin-bottom: .9rem; }
.staff-tools-heading h2 { margin: .1rem 0 0; font-size: 1.1rem; }
.staff-tools-heading p { margin: 0; color: var(--text-secondary); font-size: .8rem; }
.staff-tools-kicker { color: var(--text-secondary); font-size: .72rem; }
.staff-tools-grid, .staff-settings-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: .65rem; }
.staff-tool { display: flex; align-items: center; gap: .75rem; min-width: 0; padding: .85rem; border: 1px solid var(--border-primary); border-radius: .35rem; background: var(--bg-secondary); color: var(--text-primary); text-decoration: none; }
.staff-tool:hover, .staff-tool:focus-visible { border-color: var(--bs-primary); background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.staff-tool-icon, .staff-setting-icon { display: grid; flex: 0 0 2.25rem; place-items: center; width: 2.25rem; height: 2.25rem; border-radius: .3rem; background: var(--bs-primary-bg-subtle); color: var(--bs-primary); }
.staff-tool-copy, .staff-setting-copy { display: grid; gap: .2rem; min-width: 0; }
.staff-tool-copy strong, .staff-setting-copy strong { font-size: .85rem; }
.staff-tool-copy small, .staff-setting-copy small { color: var(--text-secondary); font-size: .74rem; line-height: 1.35; }
.staff-tool-arrow { margin-left: auto; color: var(--text-secondary); font-size: .72rem; }
.staff-settings-form { padding: 1rem; }
.staff-setting { display: flex; align-items: center; gap: .7rem; min-width: 0; padding: .85rem; border: 1px solid var(--border-primary); border-radius: .35rem; background: var(--bg-secondary); cursor: pointer; }
.staff-setting:has(input:checked) { border-color: var(--bs-primary-border-subtle); }
.staff-setting-control { display: grid; justify-items: center; gap: .15rem; margin-left: auto; white-space: nowrap; color: var(--text-secondary); font-size: .68rem; }
.staff-setting-control .form-check-input { float: none; margin: 0; cursor: pointer; }
.staff-settings-actions { display: flex; justify-content: flex-end; margin-top: 1rem; }
@media (max-width: 600px) { .rss-panel-copy { flex-wrap: wrap; } .rss-panel-copy input, .rss-panel-copy button { width: 100%; } .staff-tools-heading { align-items: start; flex-direction: column; } }

.home-intro { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin: .5rem 0 1rem; }
.home-tabs { display: inline-flex; flex-wrap: wrap; gap: .3rem; max-width: 100%; margin: .25rem 0 1rem; padding: .3rem; border: 1px solid var(--border-primary); border-radius: .55rem; background: var(--bg-card); }
.home-tab { display: inline-flex; align-items: center; gap: .5rem; min-height: 2.4rem; padding: .45rem .9rem; border: 0; border-radius: .35rem; background: transparent; color: var(--text-secondary); font-size: .84rem; font-weight: 700; cursor: pointer; }
.home-tab:hover { background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
.home-tab.is-active { background: var(--bs-primary); color: var(--ui-on-accent); }
.home-tab:focus-visible { outline: 2px solid var(--bs-primary); outline-offset: 2px; }
.home-tab-count { display: grid; place-items: center; min-width: 1.25rem; height: 1.25rem; padding: 0 .2rem; border-radius: 50%; background: var(--bg-card); color: var(--bs-primary); font-size: .67rem; }
.home-tab-panel[hidden] { display: none !important; }
.home-intro h1 { margin: .15rem 0; font-size: clamp(1.35rem, 2vw, 1.85rem); }
.home-intro p { margin: 0; color: var(--text-secondary); font-size: .84rem; }
.home-shelves { display: grid; gap: 1rem; }
.home-shelf, .home-news { min-width: 0; padding: 1rem; border: 1px solid var(--border-primary); border-radius: .4rem; background: var(--bg-card); }
.home-shelf-heading { display: flex; justify-content: space-between; align-items: end; gap: .8rem; margin-bottom: .8rem; }
.home-shelf-heading h2 { margin: .15rem 0 0; font-size: 1.08rem; }
.home-shelf-heading > a { color: var(--text-accent); font-size: .78rem; font-weight: 650; text-decoration: none; white-space: nowrap; }
.home-shelf-heading > a:hover { text-decoration: underline; }
.home-shelf-kicker { color: var(--text-secondary); font-size: .72rem; }
.home-shelf-kicker i { color: var(--bs-primary); }
.home-shelf-content { display: grid; grid-template-columns: minmax(0, 1fr) minmax(210px, 25%); gap: 1rem; min-width: 0; }
.home-shelf-content > * { min-width: 0; }
.home-recent { min-width: 0; padding: .75rem; border: 1px solid var(--border-primary); border-radius: .35rem; background: var(--bg-secondary); }
.home-recent h3 { margin: 0 0 .55rem; color: var(--text-primary); font-size: .84rem; }
.home-recent ol { display: grid; gap: .15rem; margin: 0; padding: 0; list-style: none; }
.home-recent li + li { border-top: 1px solid var(--border-primary); }
.home-recent a { display: flex; justify-content: space-between; gap: .5rem; min-width: 0; padding: .4rem 0; color: var(--text-primary); font-size: .74rem; text-decoration: none; }
.home-recent a:hover { color: var(--text-accent); }
.home-recent a span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.home-recent a small { flex: none; color: var(--text-secondary); white-space: nowrap; }
.home-recent p { color: var(--text-secondary); font-size: .78rem; }
.home-poster-track { display: grid; grid-auto-columns: clamp(125px, 14vw, 165px); grid-auto-flow: column; gap: .65rem; overflow-x: auto; padding: .15rem .1rem .5rem; scroll-snap-type: x proximity; scrollbar-color: var(--border-secondary) transparent; }
.home-poster-track:focus-visible { outline: 2px solid var(--bs-primary); outline-offset: 2px; }
.home-poster { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid var(--border-primary); border-radius: .35rem; background: var(--bg-secondary); color: var(--text-primary); text-decoration: none; scroll-snap-align: start; }
.home-poster:hover, .home-poster:focus-visible { border-color: var(--bs-primary); color: var(--text-primary); }
.home-poster-art { display: block; position: relative; background: var(--bg-secondary); }
.home-poster-art img { display: block; width: 100%; aspect-ratio: 2 / 3; object-fit: cover; }
.home-poster-editions { position: absolute; right: .4rem; bottom: .4rem; max-width: calc(100% - .8rem); padding: .28rem .45rem; border-radius: .25rem; background: var(--bg-card); color: var(--text-primary); box-shadow: 0 2px 8px rgba(0,0,0,.18); font-size: .66rem; font-weight: 800; white-space: nowrap; }
.home-poster strong { display: -webkit-box; min-height: 3.2em; margin: .45rem .5rem .2rem; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: .75rem; line-height: 1.55; overflow-wrap: anywhere; }
.home-poster-meta { display: flex; justify-content: space-between; gap: .3rem; margin: auto .5rem .5rem; color: var(--text-secondary); font-size: .7rem; }
.home-poster-meta i { color: var(--bs-primary); }
.home-poster-main { display: block; color: inherit; text-decoration: none; }
.home-poster-main:hover { color: var(--bs-primary); }
.home-poster-variants { margin: 0 .45rem .5rem; font-size: .7rem; }
.home-poster-variants summary { cursor: pointer; color: var(--bs-primary); font-weight: 700; }
.home-poster-variants ul { max-height: 9rem; margin: .25rem 0 0; padding: 0; overflow: auto; list-style: none; }
.home-poster-variants li + li { border-top: 1px solid var(--border-primary); }
.home-poster-variants a { display: block; padding: .25rem 0; color: var(--text-primary); overflow-wrap: anywhere; }
.site-banner-list { display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem; margin: .75rem 0 1rem; }
.site-banner-list a { display: block; max-width: min(100%, 600px); overflow: hidden; border: 1px solid var(--border-primary); border-radius: .5rem; background: var(--bg-card); }
.site-banner-list img { display: block; max-width: 100%; max-height: 170px; object-fit: contain; }
.home-site-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin: 1rem 0; }
.home-site-stats > div { display: grid; gap: .1rem; padding: .8rem 1rem; border: 1px solid var(--border-primary); border-radius: .45rem; background: var(--bg-card); }
.home-site-stats strong { color: var(--bs-primary); font-size: 1.25rem; }
.home-site-stats span { color: var(--text-secondary); font-size: .8rem; }
.home-recent-comments { margin: 1.25rem 0; padding: 1rem; border: 1px solid var(--border-primary); border-radius: .5rem; background: var(--bg-card); }
.home-recent-comments ul { display: grid; gap: .2rem; margin: .7rem 0 0; padding: 0; list-style: none; }
.home-recent-comments li { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .35rem; padding: .45rem 0; border-top: 1px solid var(--border-primary); font-size: .82rem; }
.home-recent-comments li span, .home-news-read-note { color: var(--text-secondary); }
.home-news-read-note { margin: 0 0 .8rem; font-size: .82rem; }
.age-rating-badge { display: inline-block; padding: .2em .45em; border: 1px solid var(--border-primary); border-radius: .3rem; color: var(--text-primary); font-size: .7rem; font-weight: 700; }
.media-attributes { display: grid; gap: .85rem; margin: 1rem 0; }
.media-attribute-row { display: grid; grid-template-columns: minmax(7rem, 11rem) minmax(0, 1fr); align-items: center; gap: .75rem; }
.media-attribute-row label, .media-label-groups > strong { color: var(--text-primary); font-weight: 700; }
.media-label-groups { display: grid; gap: .45rem; padding: .9rem; border: 1px solid var(--border-primary); border-radius: .45rem; background: var(--bg-secondary); }
.media-label-groups small { color: var(--text-secondary); }
.media-label-group { min-width: 0; padding: 0; border: 0; }
.media-label-group[hidden], .external-field[hidden] { display: none !important; }
.media-label-group legend { margin: .25rem 0 .5rem; color: var(--text-secondary); font-size: .82rem; font-weight: 700; }
.media-label-options { display: flex; flex-wrap: wrap; gap: .35rem; }
.media-label-options label { display: inline-flex; align-items: center; gap: .35rem; padding: .3rem .55rem; border: 1px solid var(--border-primary); border-radius: 999px; background: var(--bg-card); color: var(--text-primary); font-size: .78rem; cursor: pointer; }
.media-label-options label:has(input:checked) { border-color: var(--bs-primary); background: var(--bs-primary-bg-subtle); }
.rss-panel { background: var(--bg-secondary); box-shadow: 0 2px 10px rgba(0,0,0,.05); }
.rss-panel[open] { border-color: var(--bs-primary); }
.browse-fixed-family { display: inline-flex; align-items: center; gap: .5rem; max-width: 100%; margin: .55rem 0 .2rem; padding: .42rem .7rem; border: 1px solid var(--bs-primary); border-radius: .4rem; background: var(--bs-primary-bg-subtle); color: var(--text-primary); font-size: .83rem; font-weight: 700; }
.browse-fixed-family i { color: var(--bs-primary); }
.forum-page .forum-pagination, .forum-page .forum-stats { width: 100%; max-width: 100%; margin-inline: 0; }
@media (max-width: 600px) { .home-site-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } .site-banner-list img { max-height: 110px; } .media-attribute-row { grid-template-columns: 1fr; gap: .25rem; } }
.home-shelf-empty { margin: 0; padding: 1rem; border: 1px dashed var(--border-primary); border-radius: .3rem; color: var(--text-secondary); font-size: .8rem; }
.home-news-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .7rem; }
.home-news-card { display: flex; flex-direction: column; min-width: 0; padding: 1rem; border: 1px solid var(--border-primary); border-radius: .4rem; background: var(--bg-secondary); overflow-wrap: anywhere; }
.home-news-featured { grid-column: 1 / -1; border-color: var(--bs-primary-border-subtle); background: var(--bs-primary-bg-subtle); }
.home-news-meta { display: flex; align-items: center; justify-content: space-between; gap: .5rem; margin-bottom: .65rem; color: var(--text-secondary); font-size: .73rem; }
.home-news-meta span { display: inline-flex; align-items: center; gap: .4rem; color: var(--bs-primary); font-weight: 750; }
.home-news-card h3 { margin: 0 0 .5rem; color: var(--text-primary); font-size: 1rem; line-height: 1.3; }
.home-news-featured h3 { font-size: clamp(1.1rem, 1.5vw, 1.35rem); }
.home-news-preview { display: -webkit-box; margin: 0 0 .9rem; overflow: hidden; color: var(--text-secondary); font-size: .83rem; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.home-news-details { margin-top: auto; }
.home-news-details summary { display: inline-flex; align-items: center; gap: .4rem; color: var(--text-accent); font-size: .78rem; font-weight: 700; cursor: pointer; list-style: none; }
.home-news-details summary::-webkit-details-marker { display: none; }
.home-news-details summary:focus-visible { outline: 2px solid var(--bs-primary); outline-offset: 3px; }
.home-news-details summary i { font-size: .67rem; }
.home-news-details[open] summary i { transform: rotate(90deg); }
.home-news-body { margin-top: .85rem; padding-top: .85rem; border-top: 1px solid var(--border-primary); color: var(--text-primary); font-size: .84rem; line-height: 1.6; overflow-wrap: anywhere; }
.home-news-body :is(img, iframe, video) { max-width: 100%; height: auto; }
.home-news-body :is(pre, table) { display: block; max-width: 100%; overflow-x: auto; }
.home-news-body > :last-child { margin-bottom: 0; }
.community-page { width: 100%; max-width: none; margin: 0 auto; }
.community-page .site-panel { margin: 0; }
.community-count { color: var(--text-secondary); font-size: .8rem; }
.online-users { display: flex; flex-wrap: wrap; gap: .55rem; }
.online-user-item { padding: .45rem .65rem; border: 1px solid var(--border-primary); border-radius: .3rem; background: var(--bg-secondary); font-size: .82rem; }
@media (max-width: 900px) { .home-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 900px) { .home-shelf-content { grid-template-columns: 1fr; } .home-recent ol { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 .8rem; } }
@media (max-width: 600px) { .home-intro { align-items: start; flex-direction: column; } .home-shelf, .home-news { padding: .75rem; } .home-poster-track { grid-auto-columns: 125px; } .home-news-grid { grid-template-columns: 1fr; } .home-news-featured { grid-column: auto; } .browse-search-card > .browse-search-header { align-items: flex-start; flex-direction: column; } .browse-search-card .browse-reset { align-self: flex-start; } }
@media (max-width: 575.98px) { .site-content .user-card > .d-flex { align-items: flex-start !important; flex-direction: column; gap: .65rem; } }

/* Page-level details formerly embedded in the PHP templates. */
#chat_uzenetek { height: clamp(340px, 43vh, 520px); overflow-y: auto; text-align: left; font-size: .88rem; }
#chat_uzenetek:empty::before { content: 'Még nincs üzenet az üzenőfalon.'; display: block; padding: 1rem; color: var(--text-secondary); text-align: center; }
.chat-readonly-hint { margin: 0; padding: .8rem 1rem; border: 1px solid var(--border-primary); border-radius: .3rem; background: var(--bg-secondary); color: var(--text-secondary); font-size: .85rem; }
.custom-input { width: 100%; }
.kiemelt-viewport { position: relative; width: 100%; overflow: hidden; }
.kiemelt-track { display: flex; width: max-content; animation: kiemelt-scroll 40s linear infinite; }
.kiemelt-viewport:hover .kiemelt-track { animation-play-state: paused; }
.kiemelt-item { flex-shrink: 0; width: 150px; padding: 4px 12px; text-align: center; }
.kiemelt-item img { width: 125px; height: 177px; object-fit: cover; transition: transform .2s ease; }
.kiemelt-item:hover img { transform: scale(1.04); }
@keyframes kiemelt-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* Staff tools share the same spacing, surfaces and skin palette. */
body.page-staffpanel .site-content, body.page-seedbonus .site-content { min-width: 0; }
body.page-staffpanel .site-content .card, body.page-seedbonus .bonus-admin .card { border: 1px solid var(--border-primary); border-radius: .55rem; background: var(--bg-card); box-shadow: none; color: var(--text-primary); }
body.page-staffpanel .site-content .card-header, body.page-seedbonus .bonus-admin .card-header { padding: .8rem 1rem; border-bottom: 1px solid var(--border-primary); background: var(--bg-secondary); color: var(--text-primary); font-size: .88rem; font-weight: 750; }
body.page-staffpanel .site-content .card-header :is(h2,h3,h4,h5), body.page-seedbonus .bonus-admin .card-header :is(h2,h3,h4,h5) { margin: 0; font-size: inherit; }
body.page-staffpanel .site-content .card-body { min-width: 0; }
body.page-staffpanel .site-content .table-responsive, body.page-seedbonus .bonus-admin .table-responsive { border: 1px solid var(--border-primary); border-radius: .4rem; }
body.page-staffpanel .site-content table, body.page-seedbonus .bonus-admin table { margin: 0; color: var(--text-primary); }
body.page-staffpanel .site-content table thead, body.page-seedbonus .bonus-admin table thead { background: var(--bg-secondary); }
body.page-staffpanel .site-content table :is(th,td), body.page-seedbonus .bonus-admin table :is(th,td) { padding: .65rem .8rem; border-color: var(--border-primary); vertical-align: middle; overflow-wrap: anywhere; }
body.page-staffpanel .site-content .text-muted, body.page-seedbonus .bonus-admin .text-muted { color: var(--text-secondary) !important; }
.staff-detail-page, .bonus-admin { display: grid; gap: 1rem; min-width: 0; padding-bottom: 1rem; }
.staff-detail-page > .page-hero, .bonus-admin > .page-hero { margin-bottom: 0 !important; }
.staff-detail-page .site-panel, .bonus-admin .site-panel { min-width: 0; margin: 0; }
.staff-detail-page .site-panel-body, .bonus-admin .site-panel-body { min-width: 0; }
.staff-empty { margin: 0; padding: 1.15rem; border: 1px dashed var(--border-primary); border-radius: .4rem; background: var(--bg-secondary); color: var(--text-secondary); text-align: center; }
.staff-form-panel .site-panel-body { padding: 1rem; }
.staff-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.staff-form-grid > * { display: grid; align-content: start; gap: .35rem; min-width: 0; color: var(--text-primary); font-size: .82rem; font-weight: 650; }
.staff-form-grid > * small { color: var(--text-secondary); font-size: .72rem; font-weight: 400; }
.staff-form-grid .staff-form-wide { grid-column: 1 / -1; }
.staff-form-actions { display: flex; justify-content: flex-end; gap: .5rem; margin-top: 1rem; }
.staff-rank-fieldset { margin: 0 0 1rem; padding: 0; border: 0; }
.staff-rank-fieldset legend { margin-bottom: .5rem; color: var(--text-primary); font-size: .84rem; font-weight: 750; }
.staff-rank-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: .5rem; }
.staff-rank-option { display: flex; align-items: center; gap: .55rem; min-width: 0; padding: .65rem .7rem; border: 1px solid var(--border-primary); border-radius: .4rem; background: var(--bg-secondary); cursor: pointer; }
.staff-rank-option:has(input:checked) { border-color: var(--bs-primary); background: var(--bs-primary-bg-subtle); }
.staff-rank-option input { flex: none; accent-color: var(--bs-primary); }
.staff-rank-option span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .76rem; font-weight: 700; }
.staff-inline-option { display: inline-flex; align-items: center; gap: .5rem; margin-top: 1rem; color: var(--text-secondary); font-size: .82rem; }
.staff-inline-option input { accent-color: var(--bs-primary); }
.staff-banner-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: .8rem; }
.staff-banner-card { display: grid; align-content: start; gap: .65rem; min-width: 0; padding: .7rem; border: 1px solid var(--border-primary); border-radius: .45rem; background: var(--bg-secondary); }
.staff-banner-card > img { width: 100%; aspect-ratio: 16 / 6; object-fit: contain; border-radius: .25rem; background: var(--bg-card); }
.staff-banner-info { display: grid; gap: .2rem; min-width: 0; font-size: .8rem; }
.staff-banner-info a { overflow: hidden; color: var(--text-accent); text-overflow: ellipsis; white-space: nowrap; }
.staff-banner-card form { justify-self: end; }
.staff-smiley-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: .65rem; }
.staff-smiley-card { display: flex; align-items: center; gap: .6rem; min-width: 0; padding: .6rem; border: 1px solid var(--border-primary); border-radius: .4rem; background: var(--bg-secondary); }
.staff-smiley-art { display: grid; flex: 0 0 40px; place-items: center; width: 40px; height: 40px; border-radius: .3rem; background: var(--bg-card); }
.staff-smiley-art img { max-width: 36px; max-height: 36px; object-fit: contain; }
.staff-smiley-card code { min-width: 0; overflow: hidden; color: var(--text-primary); text-overflow: ellipsis; white-space: nowrap; }
.staff-smiley-card form { margin-left: auto; }
.staff-settings-form { display: grid; gap: 1rem; }
.staff-settings-section { min-width: 0; }
.staff-settings-section + .staff-settings-section { padding-top: 1rem; border-top: 1px solid var(--border-primary); }
.staff-settings-section > header { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: .65rem; }
.staff-settings-section h2 { margin: 0; color: var(--text-primary); font-size: 1rem; }
.staff-settings-section > header span { color: var(--text-secondary); font-size: .73rem; }
.staff-pm-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .65rem; }
.staff-pm-stats > div { display: grid; gap: .2rem; min-width: 0; padding: .8rem; border: 1px solid var(--border-primary); border-radius: .4rem; background: var(--bg-card); }
.staff-pm-stats strong { min-width: 0; overflow-wrap: anywhere; color: var(--text-primary); font-size: clamp(.88rem, 1.3vw, 1.2rem); }
.staff-pm-stats span { color: var(--text-secondary); font-size: .72rem; }
.staff-pm-people { display: flex; flex-wrap: wrap; gap: .7rem; }
.staff-pm-person { display: flex; align-items: center; gap: .65rem; min-width: min(100%, 220px); padding: .55rem .7rem; border: 1px solid var(--border-primary); border-radius: .4rem; background: var(--bg-secondary); }
.staff-pm-person img { flex: none; width: 40px; height: 40px; border-radius: 50%; object-fit: cover; }
.staff-pm-person > div { display: grid; gap: .1rem; min-width: 0; }
.staff-pm-person a, .staff-pm-person strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .82rem; }
.staff-pm-person small { color: var(--text-secondary); font-size: .7rem; }
.staff-pm-thread .site-panel-body { display: grid; gap: .75rem; }
.staff-pm-message { min-width: 0; padding: .85rem; border: 1px solid var(--border-primary); border-radius: .45rem; background: var(--bg-secondary); overflow-wrap: anywhere; scroll-margin-top: 5rem; }
.staff-pm-message.is-target { border-color: var(--bs-primary); box-shadow: inset 3px 0 var(--bs-primary); }
.staff-pm-message.is-unread { background: var(--bs-primary-bg-subtle); }
.staff-pm-message-head { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: .4rem 1rem; padding-bottom: .55rem; border-bottom: 1px solid var(--border-primary); }
.staff-pm-message-party, .staff-pm-message-meta { display: inline-flex; align-items: center; flex-wrap: wrap; gap: .4rem; min-width: 0; font-size: .77rem; }
.staff-pm-message-party a, .staff-pm-message-party strong { font-weight: 750; text-decoration: none; }
.staff-pm-message-party i, .staff-pm-message-meta { color: var(--text-secondary); }
.staff-pm-label { padding: .16rem .4rem; border-radius: .25rem; background: var(--bs-primary-bg-subtle); color: var(--text-accent); font-size: .65rem; font-weight: 750; }
.staff-pm-reply { display: flex; align-items: center; flex-wrap: wrap; gap: .4rem; margin-top: .65rem; padding: .55rem; border-left: 2px solid var(--bs-primary); background: var(--bg-card); color: var(--text-secondary); font-size: .73rem; }
.staff-pm-reply a { margin-left: auto; color: var(--text-accent); }
.staff-pm-message-body { padding: .8rem 0; color: var(--text-primary); font-size: .84rem; line-height: 1.55; }
.staff-pm-message-body :is(img,video,iframe) { max-width: 100%; }
.staff-pm-reactions { display: flex; flex-wrap: wrap; gap: .35rem; }
.staff-pm-reactions span { padding: .2rem .45rem; border-radius: .3rem; background: var(--bg-card); font-size: .75rem; }
.staff-pm-message-actions { display: flex; justify-content: flex-end; gap: .8rem; padding-top: .5rem; border-top: 1px solid var(--border-primary); font-size: .72rem; }
.staff-pm-message-actions a { color: var(--text-accent); }
.staff-pm-message-actions a:last-child { color: var(--bs-danger); }
.staff-pm-message-actions form { margin: 0; }
.staff-pm-message-actions button { padding: 0; border: 0; background: transparent; color: var(--bs-danger); font: inherit; cursor: pointer; }
body.page-staffpanel .message-card .card-header { flex-wrap: wrap; gap: .5rem; }
body.page-staffpanel .message-card .card-body, body.page-staffpanel .message-card .card-header { min-width: 0; }
.staff-anchor-nav { display: flex; flex-wrap: wrap; gap: .4rem; }
.staff-anchor-nav a { padding: .5rem .7rem; border: 1px solid var(--border-primary); border-radius: .35rem; background: var(--bg-card); color: var(--text-primary); font-size: .77rem; text-decoration: none; }
.staff-anchor-nav a:hover { border-color: var(--bs-primary); color: var(--text-accent); }
.staff-create-option { border: 1px solid var(--border-primary); border-radius: .4rem; background: var(--bg-secondary); }
.bonus-admin .page-hero > div { min-width: 0; }
.bonus-admin .staff-setting { display: grid; grid-template-columns: minmax(0, 1fr); align-content: start; gap: .6rem; cursor: default; }
.bonus-admin .staff-setting-copy strong { overflow-wrap: anywhere; }
.bonus-admin .staff-setting :is(.form-control, .form-select) { width: 100%; min-width: 0; }
.staff-create-option > summary { padding: .8rem; color: var(--text-accent); font-size: .83rem; font-weight: 750; cursor: pointer; }
.staff-option-form { padding: 1rem; border-top: 1px solid var(--border-primary); }
.staff-option-list { display: grid; gap: .7rem; margin-top: .8rem; }
.staff-option-item { min-width: 0; padding: .8rem; border: 1px solid var(--border-primary); border-radius: .4rem; background: var(--bg-secondary); }
.staff-option-heading { display: flex; justify-content: space-between; align-items: start; gap: .6rem; }
.staff-option-heading strong { color: var(--text-primary); font-size: .85rem; }
.staff-option-heading p { margin: .25rem 0; color: var(--text-secondary); font-size: .75rem; }
.staff-option-heading small { color: var(--text-secondary); font-size: .72rem; }
.staff-state { flex: none; padding: .2rem .45rem; border-radius: .25rem; background: var(--bg-card); color: var(--text-secondary); font-size: .68rem; font-weight: 750; }
.staff-state.is-on { background: var(--bs-primary-bg-subtle); color: var(--text-accent); }
.staff-option-actions { display: flex; flex-wrap: wrap; align-items: start; gap: .4rem; margin-top: .7rem; }
.staff-option-actions details { flex: 1 1 100%; order: 1; }
.staff-option-actions details:not([open]) { flex: 0 0 auto; order: 0; }
.staff-option-actions details summary { list-style: none; cursor: pointer; }
.staff-option-actions details summary::-webkit-details-marker { display: none; }
.staff-option-actions details .staff-option-form { margin-top: .65rem; border: 1px solid var(--border-primary); border-radius: .4rem; background: var(--bg-card); }
.staff-subheading { margin: 1rem 0 .5rem; font-size: .92rem; }
.staff-popular-options { display: grid; gap: .2rem; }
.staff-popular-options > div { display: flex; justify-content: space-between; gap: .7rem; padding: .55rem 0; border-top: 1px solid var(--border-primary); font-size: .78rem; }
@media (max-width: 700px) { .staff-form-grid, .staff-pm-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 460px) { .staff-form-grid, .staff-pm-stats { grid-template-columns: 1fr; } .staff-form-actions { justify-content: stretch; } .staff-form-actions .btn { width: 100%; } }
.nfo-container { max-width: 100%; }
.nfo-content { overflow-x: auto; white-space: pre; word-wrap: normal; word-break: normal; }
@media (max-width: 768px) { .nfo-container { padding: 10px !important; } .nfo-content { font-size: 8pt !important; line-height: 11px !important; } }
.site-content .list-group-item { transition: background-color .2s ease; }
.site-content .list-group-item:hover { background: var(--bs-primary-bg-subtle) !important; }
@media (min-width: 991px) { .table-desktop { display: block; overflow-x: auto; } .table-mobile { display: none; } }
@media (max-width: 990px) { .table-desktop { display: none; } .table-mobile { display: block; overflow-x: auto; } }
.table-desktop table, .table-mobile table { width: 100%; }
.back-to-top { position: fixed; right: clamp(1rem, 3vw, 2rem); bottom: 1rem; z-index: 1020; display: grid; place-items: center; width: 2.6rem; height: 2.6rem; border: 1px solid var(--bs-primary); border-radius: .25rem; background: var(--bs-primary); color: var(--ui-on-accent); cursor: pointer; box-shadow: 0 4px 16px rgba(0, 0, 0, .16); }
.back-to-top[hidden] { display: none !important; }
.back-to-top:hover, .back-to-top:focus-visible { filter: brightness(.92); outline: 2px solid var(--bs-primary); outline-offset: 2px; }
.torrent-leech-icon { color: var(--bs-danger); }
.guide-client-icon, .torrent-reseed-icon { color: var(--bs-primary); }

/* News, community, search filters and staff tools */
.home-news-card.is-unread { border-left: 4px solid var(--bs-primary); }
.home-news-card-footer { display: flex; justify-content: space-between; gap: .6rem; align-items: center; margin-top: auto; font-size: .76rem; }
.home-news-card-footer a { color: var(--text-accent); font-weight: 700; text-decoration: none; }
.home-news-card-footer span { color: var(--text-secondary); white-space: nowrap; }
.news-detail { max-width: 100%; }
.news-detail .site-panel { margin: 0 0 1rem; }
.news-detail-body { padding: clamp(1rem, 2vw, 1.6rem) !important; line-height: 1.65; overflow-wrap: anywhere; }
.news-detail-body :is(img, video, iframe) { max-width: 100%; height: auto; }
.news-detail-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 1rem; padding: .8rem 1rem; border-top: 1px solid var(--border-primary); }
.news-detail-actions a { color: var(--text-accent); text-decoration: none; }
.news-comments { display: grid; gap: .7rem; }
.news-comment { padding: .85rem 1rem; border: 1px solid var(--border-primary); border-radius: .35rem; background: var(--bg-secondary); overflow-wrap: anywhere; }
.news-comment header, .chat-message-head, .chatlog-entry header { display: flex; align-items: center; flex-wrap: wrap; gap: .55rem; margin-bottom: .3rem; }
.news-comment time, .chat-message-head time, .chatlog-entry time { margin-left: auto; color: var(--text-muted); font-size: .72rem; }
.news-comment-form { display: grid; gap: .55rem; margin-top: .6rem; }
.news-comment-form button { justify-self: start; }
.staff-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem; }
.staff-form-grid label, .staff-form-stack label { display: grid; gap: .3rem; font-weight: 700; font-size: .82rem; }
.staff-form-grid label small { color: var(--text-secondary); font-weight: 400; }
.staff-form-wide { grid-column: 1 / -1; }
.staff-form-actions { display: flex; justify-content: end; }
.staff-news-list, .staff-ban-list { display: grid; gap: .55rem; }
.staff-news-row, .staff-ban-row { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; padding: .8rem; border: 1px solid var(--border-primary); border-radius: .35rem; background: var(--bg-secondary); }
.staff-news-row > div, .staff-ban-row > div { flex: 1 1 240px; min-width: 0; }
.staff-news-row strong, .staff-news-row small { display: block; overflow-wrap: anywhere; }
.staff-news-row small, .staff-ban-row small { margin-top: .3rem; color: var(--text-secondary); font-size: .72rem; }
.staff-ban-row p { margin: .25rem 0; overflow-wrap: anywhere; }
.staff-state { padding: .3rem .55rem; border-radius: .25rem; background: var(--bg-card); color: var(--text-secondary); font-size: .7rem; font-weight: 700; }
.staff-state.is-on { background: var(--bs-primary-bg-subtle); color: var(--text-accent); }
.staff-two-column { display: grid; grid-template-columns: minmax(240px, 1fr) minmax(0, 2fr); align-items: start; gap: 1rem; }
.staff-two-column .site-panel { margin: 0; }
.staff-form-stack { display: grid; gap: .8rem; }
.staff-form-stack button { justify-self: start; }
.staff-setting-select { flex-wrap: wrap; }
.staff-setting-select select { flex: 1 1 100%; }
.chat-panel .site-panel-body { padding: .8rem; }
#chat_uzenetek { display: flex; flex-direction: column-reverse; gap: .55rem; height: clamp(320px, 42vh, 500px); padding: .3rem; border: 1px solid var(--border-primary); border-radius: .35rem; background: var(--bg-secondary); }
.chat_uzenet { flex: none; padding: .65rem .8rem; border: 1px solid var(--border-primary); border-radius: .4rem; background: var(--bg-card); overflow-wrap: anywhere; }
.chat-message-head > a { font-weight: 750; text-decoration: none; }
.chat-message-head time { margin-left: 0; }
.chat-message-actions { display: inline-flex; gap: .15rem; margin-left: auto; }
.chat-message-actions button { border: 0; padding: .2rem .35rem; border-radius: .25rem; background: transparent; color: var(--text-secondary); }
.chat-message-actions button:hover { background: var(--bs-primary-bg-subtle); color: var(--text-accent); }
.chat-message-body { line-height: 1.5; }
.chat-compose { display: flex; gap: .4rem; margin-top: .7rem; }
.chat-compose input { min-width: 0; }
.chat-tools { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .55rem; }
.chat-picker { margin-top: .55rem; padding: .6rem; border: 1px solid var(--border-primary); border-radius: .35rem; background: var(--bg-secondary); }
.chat-picker[hidden], .chat-edit[hidden] { display: none !important; }
.chat-smilies, .chat-greetings { display: flex; flex-wrap: wrap; gap: .4rem; max-height: 180px; overflow-y: auto; }
.chat-smiley { display: grid; place-items: center; min-width: 42px; min-height: 42px; border: 1px solid var(--border-primary); border-radius: .3rem; background: var(--bg-card); }
.chat-smiley img { max-width: 30px; max-height: 30px; }
.chatlog-layout { display: grid; grid-template-columns: minmax(180px, 230px) minmax(0, 1fr); gap: 1rem; }
.chatlog-layout .site-panel { margin: 0; }
.chatlog-dates { display: grid; gap: .3rem; max-height: 60vh; overflow-y: auto; }
.chatlog-date { display: flex; justify-content: space-between; gap: .5rem; padding: .5rem; border-radius: .3rem; color: var(--text-primary); text-decoration: none; }
.chatlog-date.is-active, .chatlog-date:hover { background: var(--bs-primary-bg-subtle); }
.chatlog-date span { color: var(--text-secondary); font-size: .72rem; }
.chatlog-entries { display: grid; gap: .55rem; max-height: 68vh; overflow-y: auto; }
.chatlog-entry { padding: .7rem .8rem; border: 1px solid var(--border-primary); border-radius: .35rem; background: var(--bg-secondary); overflow-wrap: anywhere; }
.browse-quick-filters { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .5rem; margin: .7rem 0; }
.browse-filter-details { min-width: 0; border: 1px solid var(--border-primary); border-radius: .35rem; background: var(--bg-secondary); }
.browse-filter-details summary { display: flex; align-items: center; gap: .45rem; padding: .6rem .7rem; color: var(--text-primary); font-size: .8rem; font-weight: 700; cursor: pointer; list-style: none; }
.browse-filter-details summary::-webkit-details-marker { display: none; }
.browse-filter-details summary i { margin-left: auto; font-size: .65rem; }
.browse-filter-details[open] summary i { transform: rotate(180deg); }
.browse-filter-count { display: grid; place-items: center; min-width: 1.2rem; height: 1.2rem; border-radius: 100%; background: var(--bs-primary); color: var(--ui-on-accent); font-size: .65rem; }
.browse-filter-options { display: flex; flex-wrap: wrap; gap: .3rem; max-height: 175px; overflow-y: auto; padding: .5rem .65rem; border-top: 1px solid var(--border-primary); }
.browse-search-card #categories .chip-group { display: flex; flex-wrap: wrap; gap: .35rem; }
.sitelog-search-fields { display: grid; grid-template-columns: minmax(0, 1fr) minmax(140px, 240px) auto; gap: .5rem; }
.sitelog-list { display: grid; gap: .55rem; margin: .8rem 0; }
.sitelog-entry { min-width: 0; padding: .75rem .9rem; border: 1px solid var(--border-primary); border-radius: .35rem; background: var(--bg-secondary); }
.sitelog-entry header { display: flex; align-items: center; flex-wrap: wrap; gap: .4rem .7rem; margin-bottom: .45rem; }
.sitelog-entry header time { margin-left: auto; color: var(--text-secondary); font-size: .75rem; }
.sitelog-category { padding: .2rem .45rem; border-radius: .25rem; background: var(--bs-primary-bg-subtle); color: var(--text-accent); font-size: .7rem; }
.sitelog-message { overflow-wrap: anywhere; }
.sitelog-entry small { color: var(--text-muted); }
@media (max-width: 700px) {
  .staff-two-column, .chatlog-layout { grid-template-columns: 1fr; }
  .browse-quick-filters { grid-template-columns: 1fr; }
  .sitelog-search-fields { grid-template-columns: 1fr; }
  .staff-form-grid { grid-template-columns: 1fr; }
  .staff-form-wide { grid-column: auto; }
  .home-tabs { display: flex; width: 100%; }
  .home-tab { flex: 1 1 auto; justify-content: center; padding: .45rem .55rem; }
  .navbar-logo-wrapper .navbar > .container-fluid { gap: .3rem; }
  .navbar-logo-wrapper .navbar-brand { min-width: 0; max-width: calc(100% - 112px); }
  .navbar-logo-wrapper .navbar-collapse.show { max-height: calc(100dvh - 110px); padding-bottom: .75rem; }
  .navbar-logo-wrapper .navbar-nav .nav-link { min-height: 38px; display: flex; align-items: center; }
  .navbar-logo-wrapper .nav-account { flex-direction: row !important; flex-wrap: wrap; align-items: center !important; }
  .navbar-logo-wrapper .nav-account > .nav-item { flex: 0 0 auto; }
  .navbar-logo-wrapper .nav-account > .account-dropdown { flex: 1 1 100%; }
  .navbar-logo-wrapper .nav-account .dropdown-menu { position: static !important; }
}
.navbar-logo-wrapper .nav-rule-item { display: flex; align-items: center; position: relative; }
.navbar-logo-wrapper .nav-rule-item .nav-rule-toggle { display: grid; place-items: center; align-self: center; width: 25px; height: 27px; padding: 0; border: 0; border-radius: .25rem; background: transparent; color: var(--text-secondary); font-size: .65rem; }
.navbar-logo-wrapper .nav-rule-item .nav-rule-toggle:hover, .navbar-logo-wrapper .nav-rule-item .nav-rule-toggle:focus-visible { background: var(--bs-primary-bg-subtle); color: var(--text-primary); }
@media (max-width: 1599.98px) { .navbar-logo-wrapper .nav-rule-item .nav-link { flex: 1; } .navbar-logo-wrapper .nav-rule-item .dropdown-menu { flex: 0 0 100%; } .navbar-logo-wrapper .nav-rule-item { flex-wrap: wrap; } }

/* Compact identity shared by every palette. */
.navbar-logo-wrapper .navbar-brand { gap: .58rem; padding: .25rem .7rem .25rem 0; min-height: 3rem; }
.navbar-logo-wrapper .brand-symbol { flex: 0 0 2.65rem; width: 2.65rem; height: 2.65rem; border: 0; border-radius: .72rem; color: #fff; background: linear-gradient(145deg, var(--bs-primary), var(--color-primary-dark)); box-shadow: 0 3px 10px rgba(0,0,0,.16), inset 0 1px rgba(255,255,255,.26); transform: rotate(-5deg); transition: transform .2s, box-shadow .2s; }
.navbar-logo-wrapper .brand-symbol::before { display: none; }
.navbar-logo-wrapper .brand-symbol svg { width: 1.95rem; height: 1.95rem; transform: rotate(5deg); }
.navbar-logo-wrapper .navbar-brand:hover .brand-symbol, .navbar-logo-wrapper .navbar-brand:focus-visible .brand-symbol { color: #fff; background: linear-gradient(145deg, var(--color-primary-light), var(--bs-primary)); transform: rotate(0) translateY(-1px); box-shadow: 0 5px 14px rgba(0,0,0,.22); }
.navbar-logo-wrapper .brand-copy strong { font-size: 1.12rem; font-weight: 800; letter-spacing: -.035em; color: var(--text-primary); }
.navbar-logo-wrapper .brand-initial { color: var(--bs-primary); }
.navbar-logo-wrapper .brand-copy small { font-size: .57rem; letter-spacing: .13em; font-weight: 700; white-space: nowrap; }
.theme-swatch-10 { --theme-swatch: #9bd7cb; background: linear-gradient(135deg, #090b0f 50%, #9bd7cb 50%); border-color: #566b68; }
body.theme-10 { --rank-member: #dce4e8; --rank-veteran: #a7ccc5; --rank-vip: #d3bce5; --rank-uploader: #a9e5c5; --rank-helpdesk: #9fd4e7; --rank-moderator: #e5ce96; --rank-admin: #f0a99e; --rank-developer: #b9c8fa; --rank-owner: #e9b4cb; }
@media (max-width: 575.98px) { .navbar-logo-wrapper .brand-symbol { flex-basis: 2.2rem; width: 2.2rem; height: 2.2rem; } .navbar-logo-wrapper .brand-symbol svg { width: 1.65rem; height: 1.65rem; } }

.site-pagination { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: .32rem; margin: 1rem 0; }
.site-pagination a, .site-pagination span { display: inline-grid; place-items: center; min-width: 2.25rem; min-height: 2.25rem; padding: .2rem .45rem; border: 1px solid var(--border-primary); border-radius: .5rem; color: var(--text-primary); background: var(--bg-card); font-size: .82rem; font-weight: 650; text-decoration: none; }
.site-pagination a:hover, .site-pagination a:focus-visible { border-color: var(--bs-primary); background: var(--bs-primary-bg-subtle); color: var(--text-primary); outline: none; }
.site-pagination .is-current { border-color: var(--bs-primary); background: var(--bs-primary); color: var(--text-inverse); }
.site-pagination .is-disabled, .site-pagination .site-page-ellipsis { opacity: .48; }
body .forum-page .forum-item:hover, body .forum-page .topic-item:hover { transform: none; background: var(--hover-card); box-shadow: inset 3px 0 var(--bs-primary); }
body .forum-page .forum-item:hover .forum-title a, body .forum-page .topic-item:hover .topic-title a, body .forum-page .post-item:hover .post-content a { color: var(--bs-link-color); }
body .forum-page .forum-item:hover .forum-title a:hover, body .forum-page .topic-item:hover .topic-title a:hover, body .forum-page .post-item:hover .post-content a:hover { color: var(--bs-link-hover-color); }
body .forum-page .post-item:hover { box-shadow: none; border-color: var(--border-secondary); }
body .forum-page .dropdown-item:hover, body .forum-page .dropdown-item:focus-visible { background: var(--hover-dropdown); color: var(--text-primary); }

.forum-page .forum-stats-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; border: 1px solid var(--border-primary); border-radius: .55rem; overflow: hidden; background: var(--bg-card); }
.forum-page .forum-stats-grid .stat-item { display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: .85rem .5rem; border: 0; border-right: 1px solid var(--border-primary); background: transparent; cursor: default; transition: none; }
.forum-page .forum-stats-grid .stat-item:last-child { border-right: 0; }
.forum-page .forum-stats-grid .stat-item:hover { background: transparent; transform: none; }
.forum-page .forum-stats-grid .stat-number { margin-bottom: .28rem; color: var(--text-accent); font-family: inherit; font-size: clamp(1.05rem, 2vw, 1.4rem); font-variant-numeric: tabular-nums; line-height: 1.2; }
.forum-page .forum-stats-grid .stat-label { color: var(--text-secondary); font-size: .68rem; line-height: 1.35; }
@media (max-width: 575.98px) { .forum-page .forum-stats-grid .stat-item { padding: .7rem .2rem; } .forum-page .forum-stats-grid .stat-label { font-size: .57rem; letter-spacing: 0; } }
