:root {
  --oryn-bg: #151311;
  --oryn-surface: rgba(29, 25, 22, 0.94);
  --oryn-surface-soft: rgba(255, 255, 255, 0.035);
  --oryn-cream: #ffefd5;
  --oryn-cream-soft: rgba(255, 239, 213, 0.72);
  --oryn-border: rgba(255, 239, 213, 0.15);
  --oryn-shadow: 0 24px 64px rgba(0, 0, 0, 0.34);
}

html {
  background: var(--oryn-bg);
}

body {
  min-height: 100vh;
  background:
    radial-gradient(circle at 50% -12%, rgba(255, 239, 213, 0.075), transparent 32rem),
    linear-gradient(180deg, #181512 0%, #12100e 100%) !important;
  color: #fff8ed;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.22;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.012) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.012) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(to bottom, black, transparent 75%);
}

.forum-header {
  border-bottom: 1px solid var(--oryn-border) !important;
  background: rgba(15, 13, 11, 0.82) !important;
  box-shadow: 0 14px 38px rgba(0, 0, 0, 0.22) !important;
  backdrop-filter: blur(18px) saturate(120%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(120%) !important;
}

.forum-logo,
.forum-menu-btn,
.lang-switch,
.auth-pills a,
.auth-pills button {
  border-color: rgba(255, 239, 213, 0.2) !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.18) !important;
}

.forum-menu-btn,
.lang-switch {
  background: var(--oryn-cream) !important;
  color: #17120e !important;
}

main {
  width: min(1440px, 100%);
  margin-inline: auto;
}

#news,
.auth-page,
.profile-page,
.admin-create-page,
.topic-page,
.category-page {
  background: transparent !important;
}

#news > h1,
#news > h2,
.category-page > h1,
.topic-page > h1,
.admin-create-page > h1,
.profile-page > h1 {
  color: #fff8ed !important;
  text-wrap: balance;
}

.category-subtitle,
.auth-subtitle,
.topic-meta,
.topic-info,
.community-preview > p {
  color: rgba(255, 248, 237, 0.68) !important;
}

.news-card,
.forum-topic-card,
.topic-row,
.topic-shell,
.comment-card,
.empty-card,
.auth-card,
.community-preview,
.community-card,
.user-admin-card,
.topic-category,
.public-profile-section {
  border: 1px solid var(--oryn-border) !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.035), transparent 45%),
    var(--oryn-surface) !important;
  color: #fff8ed !important;
  box-shadow: var(--oryn-shadow) !important;
}

.comments-section {
  margin-top: 30px !important;
}

.comments-section > h3 {
  margin: 0 0 18px !important;
  color: #fff8ed !important;
  font-size: clamp(1.25rem, 2vw, 1.55rem) !important;
}

.comments-section .comment-card {
  margin: 0 0 18px !important;
  padding: clamp(18px, 2.5vw, 26px) !important;
  overflow: hidden !important;
  border-radius: 22px !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.035), transparent 48%),
    rgba(23, 20, 18, 0.96) !important;
}

.comments-section .comment-head {
  display: flex !important;
  align-items: center !important;
  gap: 13px !important;
  margin-bottom: 16px !important;
}

.comments-section .comment-avatar {
  flex: 0 0 auto;
  width: 58px !important;
  height: 58px !important;
  border: 2px solid var(--oryn-cream) !important;
  border-radius: 50% !important;
}

.comments-section .comment-card p {
  margin: 14px 0 18px !important;
  color: rgba(255, 248, 237, 0.88) !important;
  line-height: 1.65 !important;
}

.comments-section .comment-reactions,
.comments-section .reaction-buttons {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
}

.comments-section > .empty-card {
  width: 100% !important;
  margin: 20px 0 0 !important;
  padding: clamp(24px, 4vw, 38px) !important;
  border-radius: 22px !important;
  text-align: center !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 239, 213, 0.07), transparent 55%),
    rgba(23, 20, 18, 0.9) !important;
}

.comments-section > .empty-card > p {
  margin: 0 0 20px !important;
  color: rgba(255, 248, 237, 0.78) !important;
  font-size: 1rem !important;
}

.comment-login-links {
  width: min(440px, 100%) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.comment-login-links a {
  width: 100% !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 11px 18px !important;
  border: 1px solid rgba(255, 239, 213, 0.28) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.045) !important;
  color: #fff8ed !important;
  font-weight: 850 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.comment-login-links a:last-child {
  border-color: var(--oryn-cream) !important;
  background: var(--oryn-cream) !important;
  color: #17120e !important;
}

.comment-login-links a:hover,
.comment-login-links a:focus-visible {
  transform: translateY(-2px) !important;
  border-color: var(--oryn-cream) !important;
  outline: none !important;
}

.news-card,
.forum-topic-card,
.community-card,
.topic-row,
.user-admin-card,
.public-profile-link {
  transition:
    transform 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease !important;
}

.news-card:hover,
.forum-topic-card:hover,
.community-card:hover,
.topic-row:hover,
.user-admin-card:hover,
.public-profile-link:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(255, 239, 213, 0.38) !important;
  box-shadow: 0 28px 72px rgba(0, 0, 0, 0.42) !important;
}

.community-preview,
.topic-shell,
.auth-card,
.profile-card,
.public-profile-card,
.admin-create-page > .auth-card {
  border-radius: clamp(22px, 3vw, 32px) !important;
}

.community-grid {
  gap: clamp(14px, 2vw, 22px) !important;
}

.community-card {
  border-radius: 22px !important;
}

.community-avatar,
.profile-avatar {
  border-color: var(--oryn-cream) !important;
  box-shadow: 0 0 0 5px rgba(255, 239, 213, 0.055) !important;
}

.community-role,
.admin-status,
.supporter-badge {
  border: 1px solid rgba(255, 239, 213, 0.2);
  box-shadow: none !important;
}

input,
textarea,
select,
.user-search-wrap input,
.comment-form textarea,
.topic-form textarea {
  border: 1px solid rgba(255, 239, 213, 0.17) !important;
  border-radius: 14px !important;
  background: rgba(5, 4, 3, 0.42) !important;
  color: #fff8ed !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025) !important;
}

input::placeholder,
textarea::placeholder {
  color: rgba(255, 248, 237, 0.38) !important;
}

input:focus,
textarea:focus,
select:focus {
  border-color: rgba(255, 239, 213, 0.58) !important;
  outline: 3px solid rgba(255, 239, 213, 0.08) !important;
}

select option {
  background: #171411;
  color: #fff8ed;
}

.auth-submit,
.news-more-btn,
.load-more-btn,
.topic-open-link,
.topic-edit-link,
.topic-delete-link,
.back-home,
.category-actions a,
.topic-actions a,
.topic-actions button,
.comment-form button,
.cookie-btn.primary {
  border: 1px solid var(--oryn-cream) !important;
  border-radius: 999px !important;
  background: var(--oryn-cream) !important;
  color: #17120e !important;
  font-weight: 850 !important;
  box-shadow: 0 10px 26px rgba(255, 239, 213, 0.09) !important;
  transition: transform 0.18s ease, box-shadow 0.18s ease !important;
}

.auth-submit:hover,
.news-more-btn:hover,
.load-more-btn:hover,
.topic-open-link:hover,
.category-actions a:hover,
.comment-form button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 14px 34px rgba(255, 239, 213, 0.14) !important;
}

.chip,
.topic-translate-bar button,
.reaction-btn,
.auth-links a,
.cookie-btn.ghost {
  border: 1px solid rgba(255, 239, 213, 0.18) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.045) !important;
  color: rgba(255, 248, 237, 0.84) !important;
}

.chip.active,
.reaction-btn.active {
  border-color: var(--oryn-cream) !important;
  background: var(--oryn-cream) !important;
  color: #17120e !important;
}

.auth-error {
  border: 1px solid rgba(255, 101, 101, 0.34) !important;
  background: rgba(126, 20, 20, 0.18) !important;
}

.auth-success {
  border: 1px solid rgba(118, 224, 153, 0.32) !important;
  background: rgba(20, 112, 57, 0.17) !important;
}

.site-footer {
  border-top: 1px solid var(--oryn-border) !important;
  background: rgba(10, 8, 7, 0.82) !important;
  color: rgba(255, 248, 237, 0.66) !important;
}

.cookie {
  background: rgba(4, 3, 3, 0.5) !important;
  backdrop-filter: blur(9px) !important;
  -webkit-backdrop-filter: blur(9px) !important;
}

.cookie-card {
  border: 1px solid rgba(255, 239, 213, 0.23) !important;
  border-radius: 25px !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(255, 239, 213, 0.1), transparent 38%),
    rgba(17, 14, 12, 0.97) !important;
  color: #fff8ed !important;
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.52) !important;
}

.scroll-top-btn {
  left: clamp(22px, 2.2vw, 34px) !important;
  right: auto !important;
  bottom: clamp(30px, 4vh, 46px) !important;
  border: 1px solid rgba(255, 239, 213, 0.45) !important;
  background: rgba(19, 16, 14, 0.92) !important;
  color: var(--oryn-cream) !important;
}

@media (max-width: 768px) {
  main {
    width: 100%;
  }

  .forum-header {
    background: rgba(15, 13, 11, 0.94) !important;
  }

  .news-card,
  .forum-topic-card,
  .topic-row,
  .auth-card,
  .community-preview,
  .topic-shell {
    border-radius: 20px !important;
  }

  .community-grid,
  .users-admin-list {
    grid-template-columns: 1fr !important;
  }

  .scroll-top-btn {
    left: 18px !important;
    bottom: 26px !important;
  }

  .comment-login-links {
    grid-template-columns: 1fr !important;
  }
}

@media (min-width: 621px) and (max-width: 1180px) {
  #forumGrid,
  .news-grid {
    width: min(900px, calc(100% - 32px)) !important;
    max-width: 900px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .forum-menu.show,
  body.menu-open .forum-menu {
    position: fixed !important;
    inset: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 280px)) !important;
    grid-auto-rows: minmax(36px, auto) !important;
    place-content: center !important;
    gap: 6px 16px !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    padding: calc(var(--forum-header-height, 74px) + 10px) 20px 18px !important;
    box-sizing: border-box !important;
    overflow-y: auto !important;
  }

  .forum-menu.show a,
  body.menu-open .forum-menu a {
    width: 100% !important;
    padding: 6px 12px !important;
    font-size: clamp(13px, 1.7vh, 17px) !important;
    line-height: 1.1 !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
}

@media (hover: none) and (pointer: coarse) and (min-width: 621px) {
  #forumGrid,
  .news-grid {
    width: min(900px, calc(100% - 32px)) !important;
    max-width: 900px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .forum-menu.show,
  body.menu-open .forum-menu {
    position: fixed !important;
    inset: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 280px)) !important;
    grid-auto-rows: minmax(36px, auto) !important;
    place-content: center !important;
    gap: 6px 16px !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    padding: calc(var(--forum-header-height, 74px) + 10px) 20px 18px !important;
    box-sizing: border-box !important;
    overflow-y: auto !important;
  }

  .forum-menu.show a,
  body.menu-open .forum-menu a {
    width: 100% !important;
    padding: 6px 12px !important;
    font-size: clamp(13px, 1.7vh, 17px) !important;
    line-height: 1.1 !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
}

@media (min-width: 621px) and (max-height: 760px) {
  .forum-menu.show,
  body.menu-open .forum-menu {
    grid-auto-rows: minmax(28px, auto) !important;
    gap: 2px 12px !important;
    padding: calc(var(--forum-header-height, 70px) + 6px) 18px 12px !important;
  }

  .forum-menu.show a,
  body.menu-open .forum-menu a {
    padding: 3px 10px !important;
    font-size: 13px !important;
    line-height: 1.1 !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* Oryn forum navigation and social footer alignment */
.forum-menu.show,
body.menu-open .forum-menu {
  grid-template-columns: repeat(3, minmax(170px, 260px)) !important;
  grid-auto-rows: minmax(44px, auto) !important;
  place-content: center !important;
  gap: 10px 14px !important;
  padding: calc(var(--forum-header-height, 76px) + 18px) 24px 24px !important;
  overflow-y: auto !important;
  background: #ffefd5 !important;
}

.forum-menu.show a,
body.menu-open .forum-menu a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 44px !important;
  padding: 9px 14px !important;
  border: 1px solid rgba(23, 19, 15, 0.14) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.28) !important;
  color: #17130f !important;
  font-size: clamp(13px, 1.15vw, 16px) !important;
  line-height: 1.15 !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

.forum-menu.show a:hover,
.forum-menu.show a:focus-visible,
body.menu-open .forum-menu a:hover,
body.menu-open .forum-menu a:focus-visible {
  background: #17130f !important;
  color: #ffefd5 !important;
  transform: translateY(-2px);
}

.forum-menu.show a.menu-danger,
body.menu-open .forum-menu a.menu-danger {
  border-color: rgba(165, 31, 31, 0.3) !important;
  color: #9d2020 !important;
}

.forum-social-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  margin: 22px auto 6px;
  padding: 12px 16px;
  box-sizing: border-box;
}

.forum-social-footer a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: 1px solid rgba(255, 239, 213, 0.42);
  border-radius: 50%;
  background: rgba(19, 16, 13, 0.72);
  color: #ffefd5;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
  transition: transform 180ms ease, background-color 180ms ease, color 180ms ease;
}

.forum-social-footer a:hover,
.forum-social-footer a:focus-visible {
  background: #ffefd5;
  color: #17130f;
  transform: translateY(-3px);
}

.forum-social-footer svg {
  width: 22px;
  height: 22px;
  fill: currentColor;
}

@media (min-width: 621px) and (max-width: 1180px) {
  .forum-menu.show,
  body.menu-open .forum-menu {
    grid-template-columns: repeat(2, minmax(180px, 280px)) !important;
    grid-auto-rows: minmax(38px, auto) !important;
    gap: 6px 14px !important;
    padding-top: calc(var(--forum-header-height, 74px) + 12px) !important;
  }

  .forum-menu.show a,
  body.menu-open .forum-menu a {
    min-height: 38px !important;
    padding: 6px 11px !important;
    font-size: clamp(12px, 1.6vh, 15px) !important;
  }
}

@media (max-width: 620px) {
  .forum-menu.show,
  body.menu-open .forum-menu {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: minmax(40px, auto) !important;
    align-content: start !important;
    gap: 7px !important;
    padding: calc(var(--forum-header-height, 70px) + 12px) 10px 18px !important;
  }

  .forum-menu.show a,
  body.menu-open .forum-menu a {
    min-height: 40px !important;
    padding: 7px 5px !important;
    font-size: clamp(11px, 3.1vw, 14px) !important;
  }

  .forum-social-footer {
    gap: 10px;
    margin-top: 16px;
  }

  .forum-social-footer a {
    width: 44px;
    height: 44px;
  }
}

/* Exact visual match with the current index.html navigation */
.forum-menu.show,
body.menu-open .forum-menu {
  grid-template-columns: minmax(260px, 660px) !important;
  grid-auto-rows: minmax(38px, auto) !important;
  gap: 0 !important;
  place-content: center !important;
  padding: calc(var(--forum-header-height, 76px) + 18px) 20px 22px !important;
  background: rgba(18, 18, 18, 0.98) !important;
  color: #fff !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}

.forum-menu.show a,
body.menu-open .forum-menu a {
  width: 100% !important;
  min-height: 38px !important;
  padding: 4px 10px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #fff !important;
  font-size: clamp(19px, 2.25vw, 28px) !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.35) !important;
}

.forum-menu.show a:hover,
.forum-menu.show a:focus-visible,
body.menu-open .forum-menu a:hover,
body.menu-open .forum-menu a:focus-visible {
  background: transparent !important;
  color: #ffefd5 !important;
  transform: scale(1.045);
}

.forum-menu.show a.menu-danger,
body.menu-open .forum-menu a.menu-danger {
  color: #ef8b8b !important;
}

body.menu-open .forum-logo {
  background: rgba(255, 255, 255, 0.22) !important;
}

body.menu-open .forum-logo .logo-white {
  display: block !important;
}

body.menu-open .forum-logo .logo-black {
  display: none !important;
}

@media (min-width: 621px) and (max-width: 1180px),
       (hover: none) and (pointer: coarse) and (min-width: 621px) {
  .forum-menu.show,
  body.menu-open .forum-menu {
    grid-template-columns: repeat(2, minmax(180px, 280px)) !important;
    grid-auto-rows: minmax(40px, auto) !important;
    gap: clamp(3px, 0.7vh, 7px) 16px !important;
  }

  .forum-menu.show a,
  body.menu-open .forum-menu a {
    min-height: 40px !important;
    padding: 5px 10px !important;
    font-size: clamp(16px, 2.25vh, 20px) !important;
  }
}

@media (max-width: 620px) {
  .forum-menu.show,
  body.menu-open .forum-menu {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: minmax(39px, auto) !important;
    align-content: start !important;
    gap: 5px 7px !important;
    padding: calc(var(--forum-header-height, 70px) + 14px) 9px 16px !important;
  }

  .forum-menu.show a,
  body.menu-open .forum-menu a {
    min-height: 39px !important;
    padding: 5px 3px !important;
    font-size: clamp(12px, 3.7vw, 16px) !important;
  }
}

@media (min-width: 1181px) and (max-height: 820px) {
  .forum-menu.show,
  body.menu-open .forum-menu {
    grid-auto-rows: minmax(30px, auto) !important;
    padding-top: calc(var(--forum-header-height, 70px) + 8px) !important;
    padding-bottom: 10px !important;
  }

  .forum-menu.show a,
  body.menu-open .forum-menu a {
    min-height: 30px !important;
    padding: 2px 8px !important;
    font-size: clamp(16px, 2.7vh, 22px) !important;
  }
}

@media (max-height: 700px) and (min-width: 621px) {
  .forum-menu.show,
  body.menu-open .forum-menu {
    grid-auto-rows: minmax(32px, auto) !important;
    gap: 4px 12px !important;
    padding-top: calc(var(--forum-header-height, 70px) + 6px) !important;
  }

  .forum-menu.show a,
  body.menu-open .forum-menu a {
    min-height: 32px !important;
    padding: 4px 9px !important;
    font-size: 12px !important;
  }
}

/* Match the main Oryn Pictures fullscreen navigation */
body.menu-open .forum-header {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.forum-menu.show,
body.menu-open .forum-menu {
  background: #ffefd5 !important;
  color: #17130f !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.forum-menu.show a,
body.menu-open .forum-menu a {
  min-height: 46px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #17130f !important;
  font-size: clamp(17px, 2.3vh, 20px) !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  line-height: 1.15 !important;
  text-shadow: none !important;
  transform: none;
}

.forum-menu.show a:hover,
.forum-menu.show a:focus-visible,
body.menu-open .forum-menu a:hover,
body.menu-open .forum-menu a:focus-visible {
  background: rgba(23, 19, 15, 0.08) !important;
  color: #17130f !important;
  transform: scale(1.035);
}

.forum-menu.show a.menu-danger,
body.menu-open .forum-menu a.menu-danger {
  color: #9d2020 !important;
}

body.menu-open .forum-logo {
  background: #ffefd5 !important;
}

body.menu-open .forum-logo .logo-white {
  display: none !important;
}

body.menu-open .forum-logo .logo-black {
  display: block !important;
}

body.menu-open .forum-menu-btn {
  background: #ffefd5 !important;
}

body.menu-open .forum-menu-btn span,
.forum-menu-btn.active span {
  background: #17130f !important;
}

@media (max-width: 620px) {
  .forum-menu.show a,
  body.menu-open .forum-menu a {
    min-height: 40px !important;
    padding: 6px 5px !important;
    font-size: clamp(12px, 3.45vw, 15px) !important;
  }
}

/* FINAL FORUM MENU — must remain the last menu definition */
html body.menu-open nav#forumMenu.forum-menu,
html nav#forumMenu.forum-menu.show {
  position: fixed !important;
  inset: 0 !important;
  z-index: 100000 !important;
  display: grid !important;
  grid-template-columns: minmax(260px, 660px) !important;
  grid-auto-rows: minmax(38px, auto) !important;
  place-content: center !important;
  gap: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;
  margin: 0 !important;
  padding: calc(var(--forum-header-height, 76px) + 18px) 20px 22px !important;
  overflow-y: auto !important;
  background: rgba(18, 18, 18, 0.985) !important;
  color: #fff !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
  transform: scaleY(1) !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

html nav#forumMenu.forum-menu.show > a,
html body.menu-open nav#forumMenu.forum-menu > a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 38px !important;
  margin: 0 !important;
  padding: 4px 10px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #fff !important;
  font-size: clamp(19px, 2.25vw, 28px) !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  line-height: 1.15 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.35) !important;
}

html nav#forumMenu.forum-menu.show > a:hover,
html nav#forumMenu.forum-menu.show > a:focus-visible,
html body.menu-open nav#forumMenu.forum-menu > a:hover,
html body.menu-open nav#forumMenu.forum-menu > a:focus-visible {
  background: transparent !important;
  color: #ffefd5 !important;
  transform: scale(1.045) !important;
}

html body.menu-open .forum-header {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

html body.menu-open .forum-logo {
  background: rgba(255, 255, 255, 0.22) !important;
}

html body.menu-open .forum-logo .logo-white {
  display: block !important;
}

html body.menu-open .forum-logo .logo-black {
  display: none !important;
}

html body.menu-open .forum-menu-btn {
  background: #ffefd5 !important;
}

html body.menu-open .forum-menu-btn span,
html .forum-menu-btn.active span {
  background: #17130f !important;
}

@media (min-width: 621px) and (max-width: 1180px),
       (hover: none) and (pointer: coarse) and (min-width: 621px) {
  html body.menu-open nav#forumMenu.forum-menu,
  html nav#forumMenu.forum-menu.show {
    grid-template-columns: repeat(2, minmax(180px, 280px)) !important;
    grid-auto-rows: minmax(40px, auto) !important;
    gap: clamp(3px, 0.7vh, 7px) 16px !important;
  }

  html nav#forumMenu.forum-menu.show > a,
  html body.menu-open nav#forumMenu.forum-menu > a {
    min-height: 40px !important;
    padding: 5px 10px !important;
    font-size: clamp(16px, 2.25vh, 20px) !important;
  }
}

@media (max-width: 620px) {
  html body.menu-open nav#forumMenu.forum-menu,
  html nav#forumMenu.forum-menu.show {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: minmax(39px, auto) !important;
    align-content: start !important;
    gap: 5px 7px !important;
    padding: calc(var(--forum-header-height, 70px) + 14px) 9px 16px !important;
  }

  html nav#forumMenu.forum-menu.show > a,
  html body.menu-open nav#forumMenu.forum-menu > a {
    min-height: 39px !important;
    padding: 5px 3px !important;
    font-size: clamp(12px, 3.7vw, 16px) !important;
  }
}
