/*
  FLAMESTATE PUZZLE 34
  One global light/dark theme across homepage, shop, account,
  community and administration.
*/

:root {
  --fs-red: #ce0000;
  --fs-red-bright: #f12828;
  --fs-black: #050505;
  --fs-white: #f7f7f4;
  --fs-theme-speed: 180ms;
}

html {
  color-scheme: dark;
  background: #050505;
}

html[data-theme="light"] {
  color-scheme: light;
  background: #f3f3ef;
}

html.fs-theme-boot *,
html.fs-theme-boot *::before,
html.fs-theme-boot *::after {
  transition: none !important;
  animation-duration: 0s !important;
  animation-delay: 0s !important;
}

html:not(.fs-theme-ready) .fs-theme-dock {
  visibility: hidden;
}

.fs-theme-thumb,
.fs-theme-track {
  transition: transform .18s ease, background-color .18s ease,
    border-color .18s ease !important;
}

img,
video,
canvas,
iframe,
[data-fs-theme-image] {
  filter: none !important;
}

[data-fs-theme-image] {
  display: block;
}

.fs-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* iPhone-style global switch */
.fs-theme-dock {
  position: fixed;
  z-index: 950;
  right: max(14px, env(safe-area-inset-right, 0px));
  bottom: max(14px, env(safe-area-inset-bottom, 0px));
  min-height: 43px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  border: 1px solid rgba(255, 255, 255, .20);
  border-radius: 999px;
  background: rgba(5, 5, 5, .88);
  color: #fff;
  box-shadow: 0 16px 48px rgba(0, 0, 0, .38);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.fs-theme-label {
  font-size: .57rem;
  font-weight: 900;
  letter-spacing: .09em;
  user-select: none;
}

.fs-theme-label-light {
  color: #939393;
}

.fs-theme-switch {
  position: relative;
  width: 52px;
  height: 29px;
  flex: 0 0 auto;
}

.fs-theme-switch input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.fs-theme-track {
  position: absolute;
  inset: 0;
  overflow: hidden;
  border: 1px solid #444;
  border-radius: 999px;
  background: #1b1b1b;
  cursor: pointer;
  touch-action: manipulation;
}

.fs-theme-thumb {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 23px;
  height: 23px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #fff;
  color: #090909;
  box-shadow: 0 3px 12px rgba(0, 0, 0, .38);
  transition: transform .22s ease, background .22s ease;
}

.fs-theme-sun {
  display: none;
}

.fs-theme-switch input:checked + .fs-theme-track {
  border-color: #aaa;
  background: #eee;
}

.fs-theme-switch input:checked + .fs-theme-track .fs-theme-thumb {
  transform: translateX(23px);
  background: #111;
  color: #fff;
}

.fs-theme-switch input:checked + .fs-theme-track .fs-theme-moon {
  display: none;
}

.fs-theme-switch input:checked + .fs-theme-track .fs-theme-sun {
  display: inline;
}

html[data-theme="light"] .fs-theme-dock {
  border-color: rgba(0, 0, 0, .17);
  background: rgba(255, 255, 255, .91);
  color: #151515;
  box-shadow: 0 16px 44px rgba(30, 40, 50, .18);
}

html[data-theme="light"] .fs-theme-label-dark {
  color: #8b8b8b;
}

html[data-theme="light"] .fs-theme-label-light {
  color: #111;
}

/* ------------------------------------------------------------------
   HOMEPAGE
   ------------------------------------------------------------------ */
.fs-area-home[data-theme="light"] {
  --bg: #f3f3ef;
  --panel: #fff;
  --panel2: #f7f7f3;
  --line: #d7d7d1;
  --text: #151515;
  --muted: #62625e;
}

.fs-area-home[data-theme="light"] body {
  background: #f3f3ef !important;
  color: #151515 !important;
}

.fs-area-home[data-theme="light"] .header {
  border-color: #d6d6d0 !important;
  background: rgba(248, 248, 244, .94) !important;
}

.fs-area-home[data-theme="light"] .nav a {
  color: #5e5e59 !important;
}

.fs-area-home[data-theme="light"] .nav a:hover {
  color: #000 !important;
}

.fs-area-home[data-theme="light"] .nav-shop {
  border-color: #cb2a2a !important;
  background: #fff !important;
  color: #a10000 !important;
}

.fs-area-home[data-theme="light"] .menu-toggle,
.fs-area-home[data-theme="light"] .menu-toggle span {
  color: #111 !important;
}

.fs-area-home[data-theme="light"] .menu-toggle span {
  background: #111 !important;
}

.fs-area-home[data-theme="light"] .hero {
  border-color: #d6d6d0 !important;
  background: #f4f4f0 !important;
}

.fs-area-home[data-theme="light"] .hero-copy {
  background:
    radial-gradient(circle at 100% 0, rgba(205, 0, 0, .08), transparent 40%),
    linear-gradient(145deg, #fff, #efefea) !important;
}

.fs-area-home[data-theme="light"] .hero-image {
  background: #e5eef4 !important;
}

.fs-area-home[data-theme="light"] .button.secondary {
  border-color: #c8c8c2 !important;
  background: #fff !important;
  color: #151515 !important;
}

.fs-area-home[data-theme="light"] .section-index {
  color: #e2e2dc !important;
  -webkit-text-stroke-color: #bdbdb7 !important;
}

.fs-area-home[data-theme="light"] .world-card {
  border-color: #d3d3cc !important;
  background:
    radial-gradient(circle at 75% 25%, rgba(180, 0, 0, .08), transparent 42%),
    linear-gradient(145deg, #fff, #ecece7) !important;
}

.fs-area-home[data-theme="light"] .world-card:hover {
  background:
    radial-gradient(circle at 70% 25%, rgba(210, 0, 0, .12), transparent 45%),
    linear-gradient(145deg, #fff, #e5e5df) !important;
}

.fs-area-home[data-theme="light"] .product,
.fs-area-home[data-theme="light"] .community-live-card,
.fs-area-home[data-theme="light"] .social-card,
.fs-area-home[data-theme="light"] .spotify-shell {
  border-color: #d5d5cf !important;
  background: #fff !important;
  color: #161616 !important;
  box-shadow: 0 18px 45px rgba(35, 40, 45, .08);
}

.fs-area-home[data-theme="light"] .product-image {
  background:
    radial-gradient(circle, rgba(200, 0, 0, .09), transparent 52%),
    #f3f3ef !important;
}

.fs-area-home[data-theme="light"] .community-live-section {
  border-color: #d3d3cd !important;
  background: #ecece7 !important;
}

.fs-area-home[data-theme="light"] .community-live-stats a,
.fs-area-home[data-theme="light"] .community-offline {
  border-color: #d1d1ca !important;
  background: #fff !important;
  color: #181818 !important;
}

.fs-area-home[data-theme="light"] .community-live-card small,
.fs-area-home[data-theme="light"] .community-live-card span,
.fs-area-home[data-theme="light"] .community-live-stats span {
  color: #696964 !important;
}

.fs-area-home[data-theme="light"] .events {
  border-color: #d5bdbd !important;
  background:
    radial-gradient(circle at 15% 50%, rgba(190, 0, 0, .09), transparent 30rem),
    #fff !important;
}

.fs-area-home[data-theme="light"] .footer {
  border-color: #d2d2cc !important;
  background: #e9e9e4 !important;
}

.fs-area-home[data-theme="light"] .footer a,
.fs-area-home[data-theme="light"] .footer p {
  color: #5f5f5a !important;
}

@media (max-width: 980px) {
  .fs-area-home[data-theme="light"] .nav {
    background: #f6f6f2 !important;
  }

  .fs-area-home[data-theme="light"] .nav a {
    border-color: #d8d8d2 !important;
    color: #171717 !important;
  }

  .fs-area-home[data-theme="light"] .nav .nav-shop {
    border-color: #c91c1c !important;
    background: #fff !important;
    color: #9f0000 !important;
  }
}

/* ------------------------------------------------------------------
   SHOP
   ------------------------------------------------------------------ */
.fs-area-shop body {
  background-attachment: fixed !important;
}

.fs-area-shop[data-theme="dark"] body {
  background:
    linear-gradient(rgba(4, 4, 4, .78), rgba(4, 4, 4, .92)),
    url('/assets/images/theme/road-dark.png') center top / cover fixed
    !important;
}

.fs-area-shop[data-theme="light"] body {
  background:
    linear-gradient(rgba(248, 248, 244, .74), rgba(248, 248, 244, .93)),
    url('/assets/images/theme/road-light.png') center top / cover fixed
    !important;
  color: #181818 !important;
}

.fs-area-shop[data-theme="dark"] .hero {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, .90), rgba(0, 0, 0, .28)),
    url('/assets/images/theme/road-dark.png') center / cover !important;
}

.fs-area-shop[data-theme="light"] .hero {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, .94), rgba(255, 255, 255, .30)),
    url('/assets/images/theme/road-light.png') center / cover !important;
  color: #111 !important;
}

.fs-area-shop[data-theme="light"] .shop-header,
.fs-area-shop[data-theme="light"] .drop-strip,
.fs-area-shop[data-theme="light"] .launch-control-banner {
  border-color: #d4d4ce !important;
  background: rgba(250, 250, 247, .95) !important;
  color: #161616 !important;
}

.fs-area-shop[data-theme="light"] .shop-header a,
.fs-area-shop[data-theme="light"] .shop-header button,
.fs-area-shop[data-theme="light"] .contract-button,
.fs-area-shop[data-theme="light"] .hero p,
.fs-area-shop[data-theme="light"] .drop-copy,
.fs-area-shop[data-theme="light"] .filters,
.fs-area-shop[data-theme="light"] .sort-select {
  color: #242424 !important;
}

.fs-area-shop[data-theme="light"] .product-card,
.fs-area-shop[data-theme="light"] .heat-meter,
.fs-area-shop[data-theme="light"] .flame-reward,
.fs-area-shop[data-theme="light"] .shop-benefits,
.fs-area-shop[data-theme="light"] .quick-modal,
.fs-area-shop[data-theme="light"] .wishlist-panel,
.fs-area-shop[data-theme="light"] .contract-paper {
  border-color: #d3d3cd !important;
  background-color: rgba(255, 255, 255, .96) !important;
  color: #171717 !important;
  box-shadow: 0 22px 58px rgba(25, 32, 38, .13) !important;
}

.fs-area-shop[data-theme="light"] .product-card,
.fs-area-shop[data-theme="light"] .quick-modal {
  background:
    radial-gradient(circle at 70% 0, rgba(190, 0, 0, .07), transparent 45%),
    rgba(255, 255, 255, .97) !important;
}

.fs-area-shop[data-theme="light"] .product-media,
.fs-area-shop[data-theme="light"] .quick-visual,
.fs-area-shop[data-theme="light"] .wish-thumb {
  background:
    radial-gradient(circle, rgba(190, 0, 0, .10), transparent 56%),
    #eeeeea !important;
}

.fs-area-shop[data-theme="light"] .product-card *,
.fs-area-shop[data-theme="light"] .contract-paper *,
.fs-area-shop[data-theme="light"] .quick-modal * {
  text-shadow: none;
}

.fs-area-shop[data-theme="light"] input,
.fs-area-shop[data-theme="light"] select,
.fs-area-shop[data-theme="light"] textarea,
.fs-area-shop[data-theme="light"] .search-popover {
  border-color: #c9c9c3 !important;
  background: #fff !important;
  color: #151515 !important;
}

.fs-area-shop[data-theme="light"] .contract-back,
.fs-area-shop[data-theme="light"] .filter-pill,
.fs-area-shop[data-theme="light"] .icon-action {
  border-color: #c9c9c3 !important;
  background: #f5f5f1 !important;
  color: #202020 !important;
}

.fs-area-shop[data-theme="light"] .contract-item,
.fs-area-shop[data-theme="light"] .wishlist-item,
.fs-area-shop[data-theme="light"] .shop-benefits div {
  border-color: #d7d7d1 !important;
}

.fs-area-shop[data-theme="light"] .backdrop {
  background: rgba(30, 35, 40, .30) !important;
}

/* ------------------------------------------------------------------
   ACCOUNT
   ------------------------------------------------------------------ */
.fs-area-account[data-theme="dark"] .account-page {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, .83), rgba(0, 0, 0, .48)),
    url('/assets/images/theme/road-dark.png') center / cover fixed
    !important;
}

.fs-area-account[data-theme="light"] .account-page {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, .86), rgba(255, 255, 255, .48)),
    url('/assets/images/theme/road-light.png') center / cover fixed
    !important;
  color: #181818 !important;
}

.fs-area-account[data-theme="light"] .account-card,
.fs-area-account[data-theme="light"] .auth-card,
.fs-area-account[data-theme="light"] .reset-card,
.fs-area-account[data-theme="light"] .verify-card,
.fs-area-account[data-theme="light"] .security-card,
.fs-area-account[data-theme="light"] .order-card {
  border-color: #d1d1cb !important;
  background: rgba(255, 255, 255, .94) !important;
  color: #171717 !important;
  box-shadow: 0 24px 70px rgba(28, 38, 48, .16) !important;
}

.fs-area-account[data-theme="light"] input,
.fs-area-account[data-theme="light"] select,
.fs-area-account[data-theme="light"] textarea {
  border-color: #c9c9c3 !important;
  background: #fff !important;
  color: #171717 !important;
}

.fs-area-account[data-theme="light"] label,
.fs-area-account[data-theme="light"] p,
.fs-area-account[data-theme="light"] small {
  color: #5e5e59 !important;
}

/* Dashboard already has paired account images. Global theme only syncs it. */
.fs-area-account[data-theme="light"] body[data-theme="light"] {
  color: #151515;
}

/* ------------------------------------------------------------------
   COMMUNITY
   ------------------------------------------------------------------ */
.fs-area-community[data-theme="dark"] body {
  background:
    linear-gradient(rgba(3, 3, 3, .76), rgba(3, 3, 3, .94)),
    url('/assets/images/theme/road-dark.png') center top / cover fixed
    !important;
}

.fs-area-community[data-theme="light"] {
  --bg: #f2f2ee;
  --panel: rgba(255, 255, 255, .93);
  --line: #d0d0ca;
  --muted: #666661;
}

.fs-area-community[data-theme="light"] body {
  background:
    linear-gradient(rgba(246, 246, 242, .74), rgba(246, 246, 242, .94)),
    url('/assets/images/theme/road-light.png') center top / cover fixed
    !important;
  color: #171717 !important;
}

.fs-area-community[data-theme="light"] .fc-header {
  border-color: #d0d0ca !important;
  background: rgba(250, 250, 247, .94) !important;
  box-shadow: 0 8px 30px rgba(35, 40, 45, .08);
}

.fs-area-community[data-theme="light"] .fc-brand {
  color: #151515 !important;
}

.fs-area-community[data-theme="light"] .fc-nav a {
  color: #5d5d58 !important;
}

.fs-area-community[data-theme="light"] .fc-nav a:hover,
.fs-area-community[data-theme="light"] .fc-nav a.active {
  background: #f2dede !important;
  color: #8f0000 !important;
}

.fs-area-community[data-theme="light"] .fc-menu {
  border-color: #c7c7c1 !important;
  background: #fff !important;
  color: #171717 !important;
}

.fs-area-community[data-theme="light"] .fc-hero-main {
  background:
    linear-gradient(110deg, rgba(255, 255, 255, .96), rgba(255, 255, 255, .50)),
    url('/assets/images/theme/road-light.png') center / cover !important;
}

.fs-area-community[data-theme="dark"] .fc-hero-main {
  background:
    linear-gradient(110deg, rgba(0, 0, 0, .96), rgba(0, 0, 0, .44)),
    url('/assets/images/theme/road-dark.png') center / cover !important;
}

.fs-area-community[data-theme="light"] .fc-panel,
.fs-area-community[data-theme="light"] .fc-post,
.fs-area-community[data-theme="light"] .fc-profile-card,
.fs-area-community[data-theme="light"] .fc-vehicle-card,
.fs-area-community[data-theme="light"] .fc-crew-card,
.fs-area-community[data-theme="light"] .fc-event-card,
.fs-area-community[data-theme="light"] .fc-chat-layout,
.fs-area-community[data-theme="light"] .fc-hub-card,
.fs-area-community[data-theme="light"] .fc-profile-instagram,
.fs-area-community[data-theme="light"] .fc-profile-edit-form {
  border-color: #d0d0ca !important;
  background: rgba(255, 255, 255, .94) !important;
  color: #171717 !important;
  box-shadow: 0 20px 55px rgba(28, 36, 44, .10) !important;
}

.fs-area-community[data-theme="light"] .fc-profile-card,
.fs-area-community[data-theme="light"] .fc-vehicle-card,
.fs-area-community[data-theme="light"] .fc-crew-card,
.fs-area-community[data-theme="light"] .fc-event-card,
.fs-area-community[data-theme="light"] .fc-hub-card,
.fs-area-community[data-theme="light"] .fc-post a,
.fs-area-community[data-theme="light"] .fc-list-row a,
.fs-area-community[data-theme="light"] .fc-owner-row {
  color: #161616 !important;
}

.fs-area-community[data-theme="light"] .fc-post > header,
.fs-area-community[data-theme="light"] .fc-post > footer,
.fs-area-community[data-theme="light"] .fc-chat-list,
.fs-area-community[data-theme="light"] .fc-chat-head,
.fs-area-community[data-theme="light"] .fc-chat-compose,
.fs-area-community[data-theme="light"] .fc-list-row,
.fs-area-community[data-theme="light"] .fc-profile-tabs,
.fs-area-community[data-theme="light"] .fc-mobile-tabbar {
  border-color: #d2d2cc !important;
  background: rgba(250, 250, 247, .97) !important;
  color: #171717 !important;
}

.fs-area-community[data-theme="light"] .fc-chat-messages {
  background:
    radial-gradient(circle at 50% 0, rgba(170, 0, 0, .055), transparent 45%),
    #efefeb !important;
}

.fs-area-community[data-theme="light"] .fc-message {
  border-color: #d2d2cc !important;
  background: #fff !important;
  color: #171717 !important;
}

.fs-area-community[data-theme="light"] .fc-message.mine {
  border-color: #d5aaaa !important;
  background: #f8e9e9 !important;
}

.fs-area-community[data-theme="light"] input,
.fs-area-community[data-theme="light"] textarea,
.fs-area-community[data-theme="light"] select,
.fs-area-community[data-theme="light"] .fc-profile-search input,
.fs-area-community[data-theme="light"] .fc-chat-compose textarea {
  border-color: #c8c8c2 !important;
  background: #fff !important;
  color: #151515 !important;
}

.fs-area-community[data-theme="light"] .fc-profile-avatar,
.fs-area-community[data-theme="light"] .fc-avatar {
  border-color: #f5f5f1 !important;
}

.fs-area-community[data-theme="light"] .fc-profile-banner {
  border-color: #d1d1cb !important;
  background:
    radial-gradient(circle at 50% 20%, rgba(170, 0, 0, .11), transparent 45%),
    linear-gradient(135deg, #fff, #e9e9e4 62%) !important;
}

.fs-area-community[data-theme="light"] .fc-profile-tabs a {
  color: #777772 !important;
}

.fs-area-community[data-theme="light"] .fc-profile-tabs a.active {
  color: #111 !important;
}

.fs-area-community[data-theme="light"] .fc-profile-tabs a.active::before {
  background: #111 !important;
}

.fs-area-community[data-theme="light"] .fc-profile-post-tile,
.fs-area-community[data-theme="light"] .fc-profile-vehicle-tile,
.fs-area-community[data-theme="light"] .fc-profile-crew-tile {
  background: #e8e8e3 !important;
}

.fs-area-community[data-theme="light"] .fc-footer {
  border-color: #d0d0ca !important;
  background: #e7e7e2 !important;
  color: #171717 !important;
}

.fs-area-community[data-theme="light"] .fc-footer a {
  color: #5d5d58 !important;
}

@media (max-width: 900px) {
  .fs-area-community[data-theme="light"] .fc-nav {
    border-color: #d0d0ca !important;
    background: #f7f7f3 !important;
  }
}

/* ------------------------------------------------------------------
   ADMINISTRATION
   ------------------------------------------------------------------ */
.fs-area-admin[data-theme="light"] body {
  background: #efefeb !important;
  color: #181818 !important;
}

.fs-area-admin[data-theme="light"] .layout {
  background: #efefeb !important;
}

.fs-area-admin[data-theme="light"] .sidebar {
  border-color: #d0d0ca !important;
  background: #fafaf7 !important;
  color: #181818 !important;
}

.fs-area-admin[data-theme="light"] .sidebar a {
  color: #555550 !important;
}

.fs-area-admin[data-theme="light"] .sidebar a.active,
.fs-area-admin[data-theme="light"] .sidebar a:hover {
  background: #f4dddd !important;
  color: #8e0000 !important;
}

.fs-area-admin[data-theme="light"] .content {
  color: #181818 !important;
}

.fs-area-admin[data-theme="light"] .card,
.fs-area-admin[data-theme="light"] .stat,
.fs-area-admin[data-theme="light"] .panel,
.fs-area-admin[data-theme="light"] .admin-card,
.fs-area-admin[data-theme="light"] .community-card,
.fs-area-admin[data-theme="light"] .validator-card,
.fs-area-admin[data-theme="light"] .shipping-stat,
.fs-area-admin[data-theme="light"] .shipping-order,
.fs-area-admin[data-theme="light"] .social-provider-card,
.fs-area-admin[data-theme="light"] .account-control-stat,
.fs-area-admin[data-theme="light"] .account-customer-link,
.fs-area-admin[data-theme="light"] .account-info,
.fs-area-admin[data-theme="light"] .account-preferences > div,
.fs-area-admin[data-theme="light"] .outbox-message,
.fs-area-admin[data-theme="light"] .overall-banner,
.fs-area-admin[data-theme="light"] .check-group,
.fs-area-admin[data-theme="light"] .backup-item {
  border-color: #d1d1cb !important;
  background: #fff !important;
  color: #181818 !important;
  box-shadow: 0 15px 42px rgba(30, 38, 45, .07);
}

.fs-area-admin[data-theme="light"] input,
.fs-area-admin[data-theme="light"] textarea,
.fs-area-admin[data-theme="light"] select,
.fs-area-admin[data-theme="light"] code,
.fs-area-admin[data-theme="light"] pre,
.fs-area-admin[data-theme="light"] .redirect-box {
  border-color: #c8c8c2 !important;
  background: #f8f8f4 !important;
  color: #171717 !important;
}

.fs-area-admin[data-theme="light"] table,
.fs-area-admin[data-theme="light"] th,
.fs-area-admin[data-theme="light"] td,
.fs-area-admin[data-theme="light"] .check-row,
.fs-area-admin[data-theme="light"] .shipping-event {
  border-color: #d4d4ce !important;
  color: #202020 !important;
}

.fs-area-admin[data-theme="light"] .head,
.fs-area-admin[data-theme="light"] .check-group h3 {
  border-color: #d1d1cb !important;
  background: #f8f8f4 !important;
  color: #181818 !important;
}

/* Fixed bars must not cover mobile community controls. */
@media (max-width: 767px) {
  .fs-area-community .fs-theme-dock {
    right: max(8px, env(safe-area-inset-right, 0px));
    bottom: calc(72px + env(safe-area-inset-bottom, 0px));
    padding: 6px 8px;
  }

  .fs-area-community .fs-theme-label {
    display: none;
  }

  .fs-area-home .fs-theme-dock,
  .fs-area-shop .fs-theme-dock,
  .fs-area-account .fs-theme-dock,
  .fs-area-admin .fs-theme-dock {
    right: max(9px, env(safe-area-inset-right, 0px));
    bottom: max(9px, env(safe-area-inset-bottom, 0px));
  }
}

@media (max-width: 430px) {
  .fs-theme-dock {
    min-height: 39px;
    gap: 5px;
    padding: 5px 7px;
  }

  .fs-theme-label {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  html,
  body,
  header,
  nav,
  main,
  section,
  article,
  aside,
  footer,
  div,
  a,
  button,
  input,
  select,
  textarea,
  .fs-theme-thumb {
    transition: none !important;
  }
}


/* PUZZLE 35A — stable first paint */
html[data-theme="dark"],
html[data-theme="dark"] body {
  background-color: #050505;
}

html[data-theme="light"],
html[data-theme="light"] body {
  background-color: #f3f3ef;
}

html.fs-theme-boot body {
  visibility: visible;
}

html[data-theme="dark"] {
  --fs-page-bg: #050505;
  --fs-surface: #0b0b0b;
  --fs-surface-strong: #050505;
  --fs-text: #f6f6f4;
  --fs-muted: #9d9d99;
  --fs-line: #2b2b2b;
}

html[data-theme="light"] {
  --fs-page-bg: #f3f3ef;
  --fs-surface: #ffffff;
  --fs-surface-strong: #fafaf7;
  --fs-text: #171717;
  --fs-muted: #61615c;
  --fs-line: #d2d2cc;
}


/* ================================================================
   PUZZLE 35B — HOME / SHOP / ACCOUNT FINAL THEME CORRECTION
   ================================================================ */

.fs-theme-picture {
  position: absolute;
  inset: 0;
  display: block;
  overflow: hidden;
}

.fs-theme-picture > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  filter: none !important;
}

html[data-theme="dark"] .fs-theme-light-image,
html[data-theme="light"] .fs-theme-dark-image {
  display: none !important;
}

html[data-theme="dark"] .fs-theme-dark-image,
html[data-theme="light"] .fs-theme-light-image {
  display: block !important;
}

/* Homepage real image pair. */
.fs-area-home .hero-image {
  position: relative;
}

.fs-area-home .hero-image .fs-theme-picture {
  position: absolute;
}

/* Shop: actual day/night image, not a white filter over the night image. */
.fs-area-shop .hero {
  background: #050505 !important;
}

.fs-area-shop .hero > .fs-theme-picture {
  z-index: 0;
}

.fs-area-shop .hero-grid,
.fs-area-shop .hero-lines,
.fs-area-shop .hero-overlay,
.fs-area-shop .hero-fire,
.fs-area-shop .hero-content,
.fs-area-shop .hero-corners {
  position: absolute;
}

.fs-area-shop .hero-content,
.fs-area-shop .hero-corners {
  z-index: 3;
}

.fs-area-shop[data-theme="dark"] .hero-overlay {
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(0,0,0,.88) 0%, rgba(0,0,0,.38) 55%, rgba(0,0,0,.18)),
    linear-gradient(0deg, rgba(5,5,5,.84), transparent 42%) !important;
}

.fs-area-shop[data-theme="light"] .hero-overlay {
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(255,255,252,.90) 0%, rgba(255,255,252,.42) 48%, rgba(255,255,252,.08)),
    linear-gradient(0deg, rgba(243,243,239,.55), transparent 42%) !important;
}

.fs-area-shop[data-theme="light"] .hero h1,
.fs-area-shop[data-theme="light"] .hero-kicker,
.fs-area-shop[data-theme="light"] .hero p,
.fs-area-shop[data-theme="light"] .hero-corners {
  color: #161616 !important;
  text-shadow: none !important;
}

.fs-area-shop[data-theme="light"] .hero h1 em,
.fs-area-shop[data-theme="light"] .hero-kicker span {
  color: #b40000 !important;
}

.fs-area-shop[data-theme="light"] body {
  background:
    linear-gradient(rgba(246,246,242,.42), rgba(246,246,242,.66)),
    url('/assets/images/theme/road-light.png') center top / cover fixed
    !important;
}

.fs-area-shop[data-theme="dark"] body {
  background:
    linear-gradient(rgba(3,3,3,.36), rgba(3,3,3,.66)),
    url('/assets/images/theme/road-dark.png') center top / cover fixed
    !important;
}

.fs-area-shop[data-theme="light"] main {
  color: #171717 !important;
}

.fs-area-shop[data-theme="light"] .drop-head,
.fs-area-shop[data-theme="light"] .product-stage,
.fs-area-shop[data-theme="light"] .product-story-band,
.fs-area-shop[data-theme="light"] .order-status-access {
  background: rgba(246,246,242,.88) !important;
  color: #171717 !important;
}

.fs-area-shop[data-theme="light"] .compact-shop-tools {
  border-color: #c9c9c3 !important;
  background: rgba(18,18,18,.96) !important;
  color: #fff !important;
}

.fs-area-shop[data-theme="light"] .compact-shop-tools *,
.fs-area-shop[data-theme="light"] .compact-shop-tools button,
.fs-area-shop[data-theme="light"] .compact-shop-tools label {
  color: inherit;
}

.fs-area-shop[data-theme="light"] .product-grid {
  background: rgba(246,246,242,.72) !important;
}

.fs-area-shop[data-theme="light"] .product-card {
  border-color: #c9c9c3 !important;
  background: rgba(255,255,255,.97) !important;
  color: #171717 !important;
}

.fs-area-shop[data-theme="light"] .product-card h3,
.fs-area-shop[data-theme="light"] .product-card .price,
.fs-area-shop[data-theme="light"] .product-card .card-topline,
.fs-area-shop[data-theme="light"] .product-card .heart {
  color: #171717 !important;
}

.fs-area-shop[data-theme="light"] .product-card p,
.fs-area-shop[data-theme="light"] .product-card small,
.fs-area-shop[data-theme="light"] .product-card .category,
.fs-area-shop[data-theme="light"] .product-card .variant-line {
  color: #5f5f5a !important;
}

.fs-area-shop[data-theme="light"] .shop-benefits,
.fs-area-shop[data-theme="light"] .flame-reward,
.fs-area-shop[data-theme="light"] .order-status-access {
  border-color: #d0d0ca !important;
  background: rgba(255,255,255,.94) !important;
  color: #171717 !important;
}

/* Account: keep the original red night meet and sunny day meet. */
.fs-area-account body {
  background: transparent !important;
}

.fs-area-account .page-bg {
  z-index: 0 !important;
  opacity: 1 !important;
  filter: none !important;
  transition: none !important;
}

.fs-area-account .header,
.fs-area-account .shell,
.fs-area-account .footer {
  position: relative;
  z-index: 2;
}

.fs-area-account[data-theme="dark"] .page-bg {
  background-color: #020202 !important;
  background-image: url('/assets/images/account-dashboard-night.png') !important;
}

.fs-area-account[data-theme="light"] .page-bg {
  background-color: #e7eef2 !important;
  background-image: url('/assets/images/account-dashboard-day.png') !important;
}

.fs-area-account[data-theme="dark"] .account-page {
  background:
    url('/assets/images/account-dashboard-night.png') center / cover fixed
    !important;
}

.fs-area-account[data-theme="light"] .account-page {
  background:
    url('/assets/images/account-dashboard-day.png') center / cover fixed
    !important;
}

.fs-area-account[data-theme="dark"] body {
  --page-text: #f6f6f4;
  --muted: #aaa;
  --panel: rgba(7,7,7,.89);
  --panel-strong: rgba(5,5,5,.96);
  --line: rgba(255,255,255,.17);
  --soft: rgba(255,255,255,.065);
  --field: rgba(4,4,4,.96);
  color: var(--page-text) !important;
}

.fs-area-account[data-theme="light"] body {
  --page-text: #171717;
  --muted: #5f625f;
  --panel: rgba(255,255,255,.90);
  --panel-strong: rgba(255,255,255,.97);
  --line: rgba(15,15,15,.18);
  --soft: rgba(15,15,15,.055);
  --field: rgba(255,255,255,.98);
  color: var(--page-text) !important;
}

.fs-area-account[data-theme="light"] .header {
  border-color: rgba(0,0,0,.15) !important;
  background: rgba(255,255,255,.95) !important;
  color: #171717 !important;
}

.fs-area-account[data-theme="light"] .header .wordmark,
.fs-area-account[data-theme="light"] .theme-control,
.fs-area-account[data-theme="light"] .contract,
.fs-area-account[data-theme="light"] .icon-link,
.fs-area-account[data-theme="light"] .account-chip {
  color: #171717 !important;
}

.fs-area-account[data-theme="light"] .contract,
.fs-area-account[data-theme="light"] .icon-link,
.fs-area-account[data-theme="light"] .account-chip {
  border-color: #c6a5a5 !important;
  background: rgba(255,255,255,.88) !important;
}

.fs-area-account[data-theme="light"] .sidebar,
.fs-area-account[data-theme="light"] .card,
.fs-area-account[data-theme="light"] .page-title {
  border-color: rgba(0,0,0,.17) !important;
  background: rgba(255,255,255,.91) !important;
  color: #171717 !important;
}

.fs-area-account[data-theme="light"] .side-button,
.fs-area-account[data-theme="light"] .quick-item,
.fs-area-account[data-theme="light"] .wish-actions button,
.fs-area-account[data-theme="light"] .wish-actions a,
.fs-area-account[data-theme="light"] .btn {
  color: #171717 !important;
}

.fs-area-account[data-theme="light"] .muted,
.fs-area-account[data-theme="light"] label,
.fs-area-account[data-theme="light"] .page-title p,
.fs-area-account[data-theme="light"] small {
  color: #5f625f !important;
}

.fs-area-account[data-theme="light"] input,
.fs-area-account[data-theme="light"] textarea,
.fs-area-account[data-theme="light"] select {
  border-color: rgba(0,0,0,.19) !important;
  background: rgba(255,255,255,.98) !important;
  color: #171717 !important;
}

.fs-area-account[data-theme="light"] .order-visual,
.fs-area-account[data-theme="light"] .wish-image {
  background-color: #f0f0eb !important;
  color: #171717 !important;
}

.fs-area-account[data-theme="light"] .footer {
  border-color: rgba(0,0,0,.16) !important;
  background: rgba(255,255,255,.95) !important;
  color: #171717 !important;
}

.fs-area-account[data-theme="light"] .footer a,
.fs-area-account[data-theme="light"] .footer p {
  color: #62625d !important;
}

@media (max-width: 720px) {
  .fs-area-account .page-bg,
  .fs-area-account .account-page {
    background-attachment: scroll !important;
    background-position: center top !important;
  }
}


/* ================================================================
   PUZZLE 35C — COMMUNITY / ADMIN / RESPONSIVE FINAL CORRECTION
   ================================================================ */

/* Community always uses the real road pair. */
.fs-area-community[data-theme="dark"] body {
  --bg: #050505;
  --panel: rgba(9,9,9,.94);
  --line: #2b2b2b;
  --muted: #9a9a96;
  background:
    linear-gradient(rgba(3,3,3,.48), rgba(3,3,3,.75)),
    url('/assets/images/theme/road-dark.png') center top / cover fixed
    !important;
  color: #f5f5f3 !important;
}

.fs-area-community[data-theme="light"] body {
  --bg: #f2f2ee;
  --panel: rgba(255,255,255,.94);
  --line: #d0d0ca;
  --muted: #64645f;
  background:
    linear-gradient(rgba(246,246,242,.48), rgba(246,246,242,.76)),
    url('/assets/images/theme/road-light.png') center top / cover fixed
    !important;
  color: #171717 !important;
}

.fs-area-community[data-theme="dark"] .fc-hero-main {
  background:
    linear-gradient(100deg, rgba(0,0,0,.92), rgba(0,0,0,.28)),
    url('/assets/images/theme/road-dark.png') center / cover
    !important;
}

.fs-area-community[data-theme="light"] .fc-hero-main {
  background:
    linear-gradient(100deg, rgba(255,255,252,.90), rgba(255,255,252,.28)),
    url('/assets/images/theme/road-light.png') center / cover
    !important;
  color: #171717 !important;
}

.fs-area-community[data-theme="light"] .fc-hero-main h1,
.fs-area-community[data-theme="light"] .fc-page-head h1,
.fs-area-community[data-theme="light"] .fc-profile-title-row h1,
.fs-area-community[data-theme="light"] .fc-profile-bio,
.fs-area-community[data-theme="light"] .fc-panel h2,
.fs-area-community[data-theme="light"] .fc-panel h3,
.fs-area-community[data-theme="light"] .fc-post-copy,
.fs-area-community[data-theme="light"] .fc-comment,
.fs-area-community[data-theme="light"] .fc-message p {
  color: #171717 !important;
  text-shadow: none !important;
}

.fs-area-community[data-theme="light"] .fc-hero p,
.fs-area-community[data-theme="light"] .fc-page-head p,
.fs-area-community[data-theme="light"] .fc-profile-bio small,
.fs-area-community[data-theme="light"] .fc-profile-handle,
.fs-area-community[data-theme="light"] .fc-meta,
.fs-area-community[data-theme="light"] .fc-post small,
.fs-area-community[data-theme="light"] .fc-comment small,
.fs-area-community[data-theme="light"] .fc-message header,
.fs-area-community[data-theme="light"] .fc-hub-card small {
  color: #62625d !important;
}

.fs-area-community[data-theme="light"] .fc-panel,
.fs-area-community[data-theme="light"] .fc-post,
.fs-area-community[data-theme="light"] .fc-profile-card,
.fs-area-community[data-theme="light"] .fc-vehicle-card,
.fs-area-community[data-theme="light"] .fc-crew-card,
.fs-area-community[data-theme="light"] .fc-event-card,
.fs-area-community[data-theme="light"] .fc-chat-layout,
.fs-area-community[data-theme="light"] .fc-hub-card,
.fs-area-community[data-theme="light"] .fc-profile-instagram,
.fs-area-community[data-theme="light"] .fc-profile-edit-form,
.fs-area-community[data-theme="light"] .fc-list-row,
.fs-area-community[data-theme="light"] .fc-member,
.fs-area-community[data-theme="light"] .fc-live-community a {
  border-color: #d0d0ca !important;
  background: rgba(255,255,255,.95) !important;
  color: #171717 !important;
  box-shadow: 0 18px 50px rgba(30,38,45,.10) !important;
}

.fs-area-community[data-theme="light"] .fc-hub-card:hover,
.fs-area-community[data-theme="light"] .fc-hub-card:focus-visible {
  border-color: #b72828 !important;
  background: #fff5f5 !important;
}

.fs-area-community[data-theme="light"] .fc-profile-card h3,
.fs-area-community[data-theme="light"] .fc-profile-card a,
.fs-area-community[data-theme="light"] .fc-post > header > a,
.fs-area-community[data-theme="light"] .fc-list-row a,
.fs-area-community[data-theme="light"] .fc-crew-card,
.fs-area-community[data-theme="light"] .fc-event-card,
.fs-area-community[data-theme="light"] .fc-vehicle-card,
.fs-area-community[data-theme="light"] .fc-conversation-link,
.fs-area-community[data-theme="light"] .fc-owner-row {
  color: #171717 !important;
}

.fs-area-community[data-theme="light"] .fc-header,
.fs-area-community[data-theme="light"] .fc-profile-tabs,
.fs-area-community[data-theme="light"] .fc-mobile-tabbar,
.fs-area-community[data-theme="light"] .fc-chat-head,
.fs-area-community[data-theme="light"] .fc-chat-compose,
.fs-area-community[data-theme="light"] .fc-chat-list,
.fs-area-community[data-theme="light"] .fc-post > header,
.fs-area-community[data-theme="light"] .fc-post > footer {
  border-color: #d0d0ca !important;
  background: rgba(250,250,247,.97) !important;
  color: #171717 !important;
}

.fs-area-community[data-theme="light"] .fc-brand,
.fs-area-community[data-theme="light"] .fc-nav a,
.fs-area-community[data-theme="light"] .fc-menu,
.fs-area-community[data-theme="light"] .fc-mobile-tabbar a.active {
  color: #171717 !important;
}

.fs-area-community[data-theme="light"] .fc-nav a:hover,
.fs-area-community[data-theme="light"] .fc-nav a.active {
  background: #f3dede !important;
  color: #8e0000 !important;
}

.fs-area-community[data-theme="light"] .fc-menu {
  border-color: #c8c8c2 !important;
  background: #fff !important;
}

.fs-area-community[data-theme="light"] .fc-chat-messages {
  background:
    radial-gradient(circle at 50% 0, rgba(170,0,0,.06), transparent 45%),
    #efefeb !important;
}

.fs-area-community[data-theme="light"] .fc-message {
  border-color: #d1d1cb !important;
  background: #fff !important;
  color: #171717 !important;
}

.fs-area-community[data-theme="light"] .fc-message.mine {
  border-color: #d5aaaa !important;
  background: #f7e8e8 !important;
}

.fs-area-community[data-theme="light"] input,
.fs-area-community[data-theme="light"] textarea,
.fs-area-community[data-theme="light"] select,
.fs-area-community[data-theme="light"] .fc-profile-search input,
.fs-area-community[data-theme="light"] .fc-chat-compose textarea,
.fs-area-community[data-theme="light"] .fc-new-chat select {
  border-color: #c8c8c2 !important;
  background: #fff !important;
  color: #171717 !important;
}

.fs-area-community[data-theme="light"] .fc-profile-avatar,
.fs-area-community[data-theme="light"] .fc-avatar,
.fs-area-community[data-theme="light"] .fc-crew-logo {
  border-color: #f5f5f1 !important;
}

.fs-area-community[data-theme="light"] .fc-profile-banner,
.fs-area-community[data-theme="light"] .fc-profile-cover,
.fs-area-community[data-theme="light"] .fc-profile-large-cover,
.fs-area-community[data-theme="light"] .fc-crew-cover,
.fs-area-community[data-theme="light"] .fc-event-cover,
.fs-area-community[data-theme="light"] .fc-crew-hero-cover {
  border-color: #d0d0ca !important;
  background-color: #e9e9e4 !important;
}

.fs-area-community[data-theme="light"] .fc-profile-tabs a {
  color: #74746f !important;
}

.fs-area-community[data-theme="light"] .fc-profile-tabs a.active {
  color: #111 !important;
}

.fs-area-community[data-theme="light"] .fc-profile-tabs a.active::before {
  background: #111 !important;
}

.fs-area-community[data-theme="light"] .fc-profile-post-tile,
.fs-area-community[data-theme="light"] .fc-profile-vehicle-tile,
.fs-area-community[data-theme="light"] .fc-profile-crew-tile,
.fs-area-community[data-theme="light"] .fc-profile-text-tile {
  background-color: #e8e8e3 !important;
  color: #171717 !important;
}

.fs-area-community[data-theme="light"] .fc-footer {
  border-color: #d0d0ca !important;
  background: rgba(242,242,238,.97) !important;
  color: #171717 !important;
}

.fs-area-community[data-theme="light"] .fc-footer a {
  color: #5f5f5a !important;
}

/* Admin light mode with exact foreground contrast. */
.fs-area-admin[data-theme="dark"] body {
  background: #050505 !important;
  color: #f5f5f3 !important;
}

.fs-area-admin[data-theme="light"] body,
.fs-area-admin[data-theme="light"] .layout,
.fs-area-admin[data-theme="light"] .content {
  background: #efefeb !important;
  color: #171717 !important;
}

.fs-area-admin[data-theme="light"] .sidebar,
.fs-area-admin[data-theme="light"] .head,
.fs-area-admin[data-theme="light"] .card,
.fs-area-admin[data-theme="light"] .stat,
.fs-area-admin[data-theme="light"] .panel,
.fs-area-admin[data-theme="light"] .admin-card,
.fs-area-admin[data-theme="light"] .community-card,
.fs-area-admin[data-theme="light"] .validator-card,
.fs-area-admin[data-theme="light"] .shipping-stat,
.fs-area-admin[data-theme="light"] .shipping-order,
.fs-area-admin[data-theme="light"] .social-provider-card,
.fs-area-admin[data-theme="light"] .account-control-stat,
.fs-area-admin[data-theme="light"] .account-customer-link,
.fs-area-admin[data-theme="light"] .account-info,
.fs-area-admin[data-theme="light"] .outbox-message,
.fs-area-admin[data-theme="light"] .overall-banner,
.fs-area-admin[data-theme="light"] .check-group,
.fs-area-admin[data-theme="light"] .backup-item {
  border-color: #d0d0ca !important;
  background: #fff !important;
  color: #171717 !important;
  box-shadow: 0 14px 40px rgba(30,38,45,.08) !important;
}

.fs-area-admin[data-theme="light"] .sidebar a,
.fs-area-admin[data-theme="light"] .content a,
.fs-area-admin[data-theme="light"] table,
.fs-area-admin[data-theme="light"] th,
.fs-area-admin[data-theme="light"] td,
.fs-area-admin[data-theme="light"] label,
.fs-area-admin[data-theme="light"] p,
.fs-area-admin[data-theme="light"] small {
  color: #343430 !important;
}

.fs-area-admin[data-theme="light"] .sidebar a:hover,
.fs-area-admin[data-theme="light"] .sidebar a.active {
  background: #f4dddd !important;
  color: #8e0000 !important;
}

.fs-area-admin[data-theme="light"] input,
.fs-area-admin[data-theme="light"] textarea,
.fs-area-admin[data-theme="light"] select,
.fs-area-admin[data-theme="light"] code,
.fs-area-admin[data-theme="light"] pre,
.fs-area-admin[data-theme="light"] .redirect-box {
  border-color: #c8c8c2 !important;
  background: #f8f8f4 !important;
  color: #171717 !important;
}

.fs-area-admin[data-theme="light"] table,
.fs-area-admin[data-theme="light"] th,
.fs-area-admin[data-theme="light"] td,
.fs-area-admin[data-theme="light"] .check-row,
.fs-area-admin[data-theme="light"] .shipping-event {
  border-color: #d1d1cb !important;
}

/* Responsive background and switch placement. */
@media (max-width: 900px) {
  .fs-area-community[data-theme="dark"] body,
  .fs-area-community[data-theme="light"] body {
    background-attachment: scroll !important;
    background-position: center top !important;
  }

  .fs-area-community[data-theme="light"] .fc-nav {
    border-color: #d0d0ca !important;
    background: #f8f8f4 !important;
  }
}

@media (max-width: 767px) {
  .fs-area-community .fs-theme-dock {
    bottom: calc(74px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .fs-area-community[data-theme="light"] .fc-shell {
    background: rgba(246,246,242,.38);
  }
}


/* ================================================================
   PUZZLE 35D — LIGHT THEME TEXT CONTRAST FINAL FIX
   Fixes buttons/links that inherited white text on white surfaces.
   ================================================================ */

/*
 * Neutral outlined community actions:
 * + BEITRAG, SUCHEN, ALLE CREWS, ALLE EVENTS, CREW CHAT and similar.
 */
.fs-area-community[data-theme="light"] .fc-btn:not(.primary):not(.danger) {
  border-color: #a93a3a !important;
  background: rgba(255, 255, 255, .94) !important;
  color: #171717 !important;
  text-shadow: none !important;
}

.fs-area-community[data-theme="light"] .fc-btn:not(.primary):not(.danger):hover,
.fs-area-community[data-theme="light"] .fc-btn:not(.primary):not(.danger):focus-visible {
  border-color: #c50000 !important;
  background: #fff0f0 !important;
  color: #8b0000 !important;
}

/* Red and destructive buttons intentionally retain white text. */
.fs-area-community[data-theme="light"] .fc-btn.primary,
.fs-area-community[data-theme="light"] .fc-btn.danger,
.fs-area-community[data-theme="light"] .fc-count,
.fs-area-community[data-theme="light"] .fc-unread {
  color: #fff !important;
  text-shadow: none !important;
}

.fs-area-community[data-theme="light"] .fc-btn.primary {
  border-color: #ce2424 !important;
  background: #ac0000 !important;
}

.fs-area-community[data-theme="light"] .fc-btn.primary:hover,
.fs-area-community[data-theme="light"] .fc-btn.primary:focus-visible {
  background: #cf0000 !important;
}

.fs-area-community[data-theme="light"] .fc-btn.danger {
  border-color: #8c2222 !important;
  background: #4f0909 !important;
}

/* Ghost actions need a visible foreground on light cards. */
.fs-area-community[data-theme="light"] .fc-btn.ghost {
  border-color: #bdbdb7 !important;
  background: #f3f3ef !important;
  color: #4f4f4a !important;
}

/* Inline white styles from older community templates. */
.fs-area-community[data-theme="light"] .fc-panel a[style*="color:#fff"],
.fs-area-community[data-theme="light"] .fc-panel a[style*="color: #fff"],
.fs-area-community[data-theme="light"] .fc-comment a[style*="color:#fff"],
.fs-area-community[data-theme="light"] .fc-comment a[style*="color: #fff"],
.fs-area-community[data-theme="light"] .fc-member[style*="color:#fff"],
.fs-area-community[data-theme="light"] .fc-member[style*="color: #fff"] {
  color: #171717 !important;
  text-shadow: none !important;
}

/* Older muted inline styles remain readable instead of becoming too pale. */
.fs-area-community[data-theme="light"] small[style*="color:#888"],
.fs-area-community[data-theme="light"] small[style*="color: #888"],
.fs-area-community[data-theme="light"] small[style*="color:#777"],
.fs-area-community[data-theme="light"] small[style*="color: #777"] {
  color: #656560 !important;
}

/* Hub, status, card and empty-state content. */
.fs-area-community[data-theme="light"] .fc-hub-card b,
.fs-area-community[data-theme="light"] .fc-live-community a,
.fs-area-community[data-theme="light"] .fc-live-community a b,
.fs-area-community[data-theme="light"] .fc-panel > h1,
.fs-area-community[data-theme="light"] .fc-panel > h2,
.fs-area-community[data-theme="light"] .fc-panel > h3,
.fs-area-community[data-theme="light"] .fc-empty,
.fs-area-community[data-theme="light"] .fc-list-row,
.fs-area-community[data-theme="light"] .fc-list-row b {
  color: #171717 !important;
  text-shadow: none !important;
}

.fs-area-community[data-theme="light"] .fc-live-community span,
.fs-area-community[data-theme="light"] .fc-empty,
.fs-area-community[data-theme="light"] .fc-list-row small {
  color: #686863 !important;
}

/* Search/start-chat controls shown in the supplied screenshots. */
.fs-area-community[data-theme="light"] .fc-new-chat .fc-btn:not(.primary),
.fs-area-community[data-theme="light"] .fc-profile-search .fc-btn:not(.primary),
.fs-area-community[data-theme="light"] form.fc-profile-search .fc-btn {
  border-color: #a93a3a !important;
  background: #fff !important;
  color: #171717 !important;
}

.fs-area-community[data-theme="light"] .fc-new-chat .fc-btn.primary {
  color: #fff !important;
}

/* General community links on white cards, excluding intentional controls. */
.fs-area-community[data-theme="light"] .fc-panel a:not(.fc-btn):not(.fc-profile-action):not(.fc-profile-menu-action),
.fs-area-community[data-theme="light"] .fc-list-row a:not(.fc-btn),
.fs-area-community[data-theme="light"] .fc-comment a:not(.fc-btn),
.fs-area-community[data-theme="light"] .fc-member {
  color: #171717 !important;
}

/* Keep red reaction/brand accents red instead of allowing inherited white. */
.fs-area-community[data-theme="light"] .fc-eyebrow,
.fs-area-community[data-theme="light"] .fc-post-category,
.fs-area-community[data-theme="light"] .fc-react.active,
.fs-area-community[data-theme="light"] .fc-verified {
  color: #b60000 !important;
}

/* Inputs and placeholders need separate foreground colors. */
.fs-area-community[data-theme="light"] input::placeholder,
.fs-area-community[data-theme="light"] textarea::placeholder {
  color: #777772 !important;
  opacity: 1 !important;
}

.fs-area-community[data-theme="light"] option {
  background: #fff !important;
  color: #171717 !important;
}

/*
 * Dark theme safeguard: outlined buttons stay white after the light rules
 * above and primary buttons remain clearly readable.
 */
.fs-area-community[data-theme="dark"] .fc-btn,
.fs-area-community[data-theme="dark"] .fc-panel a[style*="color:#fff"],
.fs-area-community[data-theme="dark"] .fc-panel a[style*="color: #fff"],
.fs-area-community[data-theme="dark"] .fc-member[style*="color:#fff"],
.fs-area-community[data-theme="dark"] .fc-member[style*="color: #fff"] {
  color: #fff !important;
}

/* Keyboard accessibility for both themes. */
.fs-area-community .fc-btn:focus-visible,
.fs-area-community .fc-panel a:focus-visible,
.fs-area-community .fc-hub-card:focus-visible {
  outline: 3px solid rgba(225, 0, 0, .34) !important;
  outline-offset: 2px !important;
}
