/* Wayward Signal native Theme Engine v1.7 - generated; do not hand edit. */
:root {
  --ws-accent: #ff8a3d; --ws-accent-soft: #b56cff; --ws-page-bg: #100815;
  --ws-text-primary: #fff2e8; --ws-text-secondary: #f2ddff; --ws-text-muted: #c9a8d9;
  --ws-surface: rgba(29, 17, 37, 0.64); --ws-surface-soft: rgba(29, 17, 37, 0.5);
  --ws-surface-hover: rgba(29, 17, 37, 0.72); --ws-border: rgba(255, 138, 61, 0.38);
  --ws-blur: 18px; --ws-radius: 14px; --ws-secondary-size: 15px;
  --ws-forum-title-size: 18px; --ws-line-height: 1.62; --ws-content-width: min(1320px, calc(100vw - 32px));
  --ws-brand-mark: url('/styles/wayward-signal/brand-mark-signal-path.svg'); --ws-brand-lockup: url('/styles/wayward-signal/brand-lockup-signal-path.svg'); --ws-visual-tier: sd; --ws-mountain-layer: url('/styles/wayward-signal/theme-mountain-halloween-night.svg'); --ws-mountain-depth-layer: none; --ws-atmosphere-opacity: .82; --ws-effect-layer: url('/styles/wayward-signal/theme-bats-halloween.svg'); --ws-effect-position: center 18%; --ws-effect-size: clamp(1100px, var(--ws-content-width), 3200px) auto; --ws-effect-repeat: no-repeat; --ws-effect-opacity: .92; --ws-effect-animation: wsThemeBatsFlight 18s ease-in-out infinite alternate;
}
@media (min-width: 1500px) { :root { --ws-content-width: min(1680px, calc(100vw - 48px)); } }
@media (min-width: 2200px) { :root { --ws-content-width: min(2200px, calc(100vw - 64px)); } }
@media (min-width: 3200px) { :root { --ws-content-width: min(2800px, calc(100vw - 96px)); } }
@media (min-width: 6000px) { :root { --ws-content-width: min(3200px, calc(100vw - 160px)); } }
html, body { background: var(--ws-page-bg) !important; color: var(--ws-text-primary) !important; }
body { position: relative !important; isolation: isolate; background-image: linear-gradient(180deg, rgba(0,0,0,.06), rgba(0,0,0,0) 44%), var(--ws-mountain-depth-layer), var(--ws-mountain-layer), radial-gradient(circle at 12% 2%, rgba(255, 138, 61, .12), transparent 33%), radial-gradient(circle at 88% 8%, rgba(181, 108, 255, .09), transparent 30%) !important; background-position: 0 0, center 10%, center center, 12% 2%, 88% 8% !important; background-size: auto, cover, cover, auto, auto !important; background-repeat: no-repeat !important; background-attachment: fixed !important; }
body::before { content: ''; position: fixed; inset: -12%; z-index: 0; pointer-events: none; opacity: var(--ws-atmosphere-opacity); background: radial-gradient(ellipse at 18% 12%, rgba(255, 138, 61, .22), transparent 38%), radial-gradient(ellipse at 82% 16%, rgba(181, 108, 255, .18), transparent 34%); transform: translate3d(0, 0, 0) scale(1.06); animation: wsThemeAtmosphereDrift 42s ease-in-out infinite alternate; }
body::after { content: ''; position: fixed; inset: 0; z-index: 0; pointer-events: none; opacity: calc(var(--ws-atmosphere-opacity) * var(--ws-effect-opacity)); background-image: var(--ws-effect-layer); background-position: var(--ws-effect-position); background-size: var(--ws-effect-size); background-repeat: var(--ws-effect-repeat); transform: translate3d(0, 0, 0); animation: var(--ws-effect-animation); }
.p-pageWrapper { position: relative; z-index: 1; }
.p-pageWrapper, .p-body, .p-body-inner { background: transparent !important; }
.p-body-inner { max-width: var(--ws-content-width) !important; }
.node, .structItem, .block-row, .contentRow, .message, .message-cell, .memberHeader, .memberHeader-main, .memberHeader-content, .menu-content, .overlay-content, .formRow { background-color: var(--ws-surface) !important; background-image: linear-gradient(135deg, rgba(255,255,255,.060), rgba(255,255,255,0) 45%) !important; border-color: var(--ws-border) !important; backdrop-filter: blur(var(--ws-blur)) saturate(118%) !important; -webkit-backdrop-filter: blur(var(--ws-blur)) saturate(118%) !important; }
.node, .structItem, .block-row, .contentRow, .message, .memberHeader, .menu-content, .overlay-content { box-shadow: 0 16px 42px rgba(0,0,0,0.34) !important; }
.p-body-main .block-container, .p-body-main .block-body, .nodeList { background: transparent !important; }
.p-body-sidebar .block-container, .p-body-sideNav .block-container { background: var(--ws-surface) !important; border-color: var(--ws-border) !important; border-radius: var(--ws-radius) !important; backdrop-filter: blur(var(--ws-blur)) saturate(118%) !important; box-shadow: 0 16px 42px rgba(0,0,0,0.34) !important; }
.p-body-sidebar .block-row, .p-body-sideNav .block-row, .p-body-sidebar .block-footer, .p-body-sideNav .block-footer { background: transparent !important; box-shadow: none !important; }
.block-header, .block-minorHeader, .block-filterBar, .menu-header, .overlay-title { color: var(--ws-text-primary) !important; background: var(--ws-surface-soft) !important; border-color: var(--ws-border) !important; backdrop-filter: blur(var(--ws-blur)) saturate(118%) !important; text-transform: uppercase; letter-spacing: 0.08em; }
.block-container, .structItemContainer, .message, .memberHeader, .menu-content, .overlay-content, .p-body-sidebar .block-container, .p-body-sideNav .block-container { border-radius: var(--ws-radius) !important; }
.p-header, .p-nav, .p-sectionLinks, .p-staffBar { background: var(--ws-surface-soft) !important; border-color: var(--ws-border) !important; backdrop-filter: blur(var(--ws-blur)) saturate(125%) !important; }
.p-navSticky { background: transparent !important; }
.p-header-logo picture, .p-nav-smallLogo picture, .p-header-logo img, .p-nav-smallLogo img { display: none !important; }
.p-header-logo a::after, .p-nav-smallLogo a::after { content: none !important; display: none !important; }
.p-header-logo a::before { content: ''; position: static !important; inset: auto !important; display: block; width: min(640px, 82vw); height: 120px; background: var(--ws-brand-lockup) center / contain no-repeat !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; filter: drop-shadow(0 0 10px rgba(255, 138, 61, .18)); }
.p-nav-smallLogo a::before { content: ''; position: static !important; inset: auto !important; display: block; width: 46px; height: 46px; background: var(--ws-brand-mark) center / contain no-repeat !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
/* Glass Navigation Deck: use the approved Signal Path studio lockup. */
@media (min-width: 901px) {
  .p-staffBar { background: transparent !important; border-color: transparent !important; backdrop-filter: none !important; }
  .p-staffBar-inner { max-width: var(--ws-content-width); margin: 0 auto; padding-inline: 12px; }
  .p-header { width: min(var(--ws-content-width), calc(100% - 32px)); max-width: none; margin: 18px auto 0; border: 1px solid var(--ws-border) !important; border-bottom: 0 !important; border-radius: var(--ws-radius) var(--ws-radius) 0 0; box-shadow: 0 18px 42px rgba(0,0,0.34) !important; }
  .p-header-inner, .p-nav-inner, .p-sectionLinks-inner { max-width: none !important; }
  .p-header-content { min-height: 82px; padding: 11px 20px !important; }
  .p-header-logo a, .p-nav-smallLogo a { display: inline-flex; align-items: center; }
  .p-header-logo picture, .p-nav-smallLogo picture, .p-header-logo img, .p-nav-smallLogo img { display: none !important; }
  .p-header-logo a::after { content: none !important; display: none !important; }
  .p-header-logo a::before { content: ''; position: static !important; inset: auto !important; display: block; width: min(640px, 82vw); height: 120px; background: var(--ws-brand-lockup) center / contain no-repeat; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; filter: drop-shadow(0 0 10px rgba(255, 138, 61, .18)); }
  .p-nav-smallLogo a::before { content: ''; display: block; width: 46px; height: 46px; background: var(--ws-brand-mark) center / contain no-repeat; }
  .p-navSticky { width: min(var(--ws-content-width), calc(100% - 32px)); max-width: none; margin: 0 auto; }
  .p-nav { border-inline: 1px solid var(--ws-border) !important; border-top: 1px solid rgba(255, 138, 61, .45) !important; }
  .p-nav-inner { min-height: 48px; padding-inline: 14px; }
  .p-sectionLinks { width: min(var(--ws-content-width), calc(100% - 32px)); max-width: none; margin: 0 auto; border: 1px solid var(--ws-border) !important; border-top: 1px solid rgba(255, 138, 61, .45) !important; border-radius: 0 0 var(--ws-radius) var(--ws-radius); box-shadow: 0 18px 42px rgba(0,0,0,0.34) !important; }
  .p-sectionLinks-inner { min-height: 34px; padding-inline: 14px; }
  .p-sectionLinks-list { gap: 14px; }
}
@media (max-width: 900px) {
  html, body { overflow-x: hidden; }
  .p-header, .p-navSticky, .p-sectionLinks { width: 100% !important; max-width: none !important; margin: 0 !important; border-radius: 0 !important; }
  .p-header { box-shadow: none !important; }
  .p-header-content { min-height: 72px; padding: 8px 12px !important; }
  .p-header-logo a::before { width: min(86vw, 360px); height: 68px; }
  .p-nav-smallLogo a::before { width: 36px; height: 36px; }
  .p-nav { border-inline: 0 !important; }
  .p-nav-inner { padding-inline: 10px; }
  .p-sectionLinks { border-inline: 0 !important; box-shadow: none !important; }
  .p-sectionLinks-inner, .p-sectionLinks-inner .hScroller-scroll, .p-nav-scroller .hScroller-scroll { scrollbar-width: none; }
  .p-sectionLinks-inner::-webkit-scrollbar, .p-sectionLinks-inner .hScroller-scroll::-webkit-scrollbar, .p-nav-scroller .hScroller-scroll::-webkit-scrollbar { display: none; width: 0; height: 0; }
  .p-sectionLinks-list { min-width: max-content; padding-inline: 10px; }
  .p-nav-scroller { min-width: 0; }
}

.node:hover, .node-body:hover, .structItem:hover, .block-row:hover { background-color: var(--ws-surface-hover) !important; }
body, .message-body, .bbWrapper, .block-body, .contentRow-main { color: var(--ws-text-primary) !important; line-height: var(--ws-line-height); }
.node-title, .node-title a, .structItem-title, .structItem-title a, .contentRow-title, .contentRow-title a, .message-name, .message-name a, .memberHeader-name { color: var(--ws-text-primary) !important; }
.node-title { font-size: var(--ws-forum-title-size) !important; font-weight: 650 !important; }
.node-description, .node-meta, .node-stats, .node-extra, .structItem-minor, .contentRow-lesser, .message-attribution, .memberHeader-blurb, .p-description, .block-footer, .formRow-explain, .inputGroup-text, .p-body-sidebar .pairs, .p-body-sidebar .contentRow-minor { color: var(--ws-text-secondary) !important; font-size: var(--ws-secondary-size) !important; line-height: var(--ws-line-height) !important; opacity: 1 !important; }
.node-extra-row, .node-extra-date, .structItem-latestDate, .u-muted, .reactionSummary, .message-userExtras { color: var(--ws-text-muted) !important; }
.p-nav-list .p-navEl-link, .p-navgroup-link, .p-sectionLinks-list a, .p-staffBar a, .breadcrumb, .breadcrumb a { color: var(--ws-text-secondary) !important; opacity: .92 !important; }
a, .link, .p-navEl-link:hover, .node-title a:hover, .structItem-title a:hover { color: var(--ws-accent) !important; }
.p-navEl.is-selected .p-navEl-link, .button.button--primary, a.button.button--primary { border-color: rgba(255, 138, 61, .58) !important; box-shadow: 0 0 0 1px rgba(255, 138, 61, .16), 0 0 24px rgba(255, 138, 61, .12) !important; }
.input, select.input, textarea.input, input[type="text"], input[type="search"], input[type="email"], input[type="password"], input[type="url"], input[type="number"] { color: var(--ws-text-primary) !important; background: rgba(29, 17, 37, .78) !important; border-color: var(--ws-border) !important; }
.input::placeholder, textarea.input::placeholder { color: var(--ws-text-muted) !important; opacity: .95 !important; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--ws-accent) !important; outline-offset: 2px; }
@media (max-width: 900px) { :root { --ws-secondary-size: max(13px, 15px); } .p-body-inner { padding-left: 10px !important; padding-right: 10px !important; } }
@keyframes wsThemeAtmosphereDrift { from { transform: translate3d(-1.5%, 0, 0) scale(1.06); } to { transform: translate3d(1.5%, -0.5%, 0) scale(1.12); } }
@keyframes wsThemeBatsFlight { from { transform: translate3d(-2%, 1%, 0) rotate(-1deg); } to { transform: translate3d(2%, -1%, 0) rotate(1deg); } }
@keyframes wsThemeSignalPulse { from { opacity: .72; transform: scale(1); } to { opacity: 1; transform: scale(1.04); } }
@keyframes wsThemeGlassShimmer { from { opacity: .72; transform: translate3d(-2%, 0, 0) skewX(-1deg); } to { opacity: 1; transform: translate3d(2%, -1%, 0) skewX(1deg); } }
@keyframes wsThemeNightDrift { from { opacity: .72; transform: translate3d(-1%, 1%, 0) rotate(-.5deg); } to { opacity: 1; transform: translate3d(1%, -1%, 0) rotate(.5deg); } }
@keyframes wsThemeGridSweep { from { opacity: .72; transform: translate3d(-1%, 0, 0); } to { opacity: 1; transform: translate3d(1%, -1%, 0); } }
@keyframes wsThemeNebulaDrift { from { transform: translate3d(-1%, 0, 0) scale(1); } to { transform: translate3d(1%, -1%, 0) scale(1.08); } }
@keyframes wsThemeAuroraWave { from { transform: translate3d(-2%, 0, 0) rotate(-2deg); } to { transform: translate3d(2%, 1%, 0) rotate(2deg); } }
@keyframes wsThemeBloomFloat { from { transform: translate3d(0, 1%, 0); } to { transform: translate3d(1%, -1%, 0); } }
@keyframes wsThemeTideWave { from { transform: translate3d(-1%, 1%, 0) rotate(-.5deg); } to { transform: translate3d(1%, -1%, 0) rotate(.5deg); } }
@keyframes wsThemeEmberRise { from { opacity: .68; transform: translate3d(-1%, 3%, 0); } to { opacity: 1; transform: translate3d(1%, -3%, 0); } }
@keyframes wsThemeFrostShimmer { from { opacity: .68; transform: translate3d(-2%, 0, 0) rotate(-.5deg); } to { opacity: 1; transform: translate3d(2%, -1%, 0) rotate(.5deg); } }
@keyframes wsThemeHolidaySparkle { from { opacity: .62; transform: scale(1); } to { opacity: 1; transform: scale(1.03); } }
@media (prefers-reduced-motion: reduce) { body::before, body::after { animation: none !important; } }
/* Avatar clarity: member identity imagery is never glass-blurred. */
.memberHeader, .memberHeader-main, .memberHeader-content,
.memberHeader-avatar, .memberHeader-avatar .avatarWrapper,
.memberHeader-avatar .avatar, .memberHeader-avatar img {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  filter: none !important;
  opacity: 1 !important;
}
.memberHeader-avatar img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  image-rendering: auto !important;
}
/* Large profile avatar: preserve the full identity image instead of hiding it in a crop. */
.memberHeader-avatar .avatar.avatar--l {
  border-radius: 16px !important;
  overflow: hidden !important;
  background: #0b1219 !important;
}
.memberHeader-avatar .avatar.avatar--l img {
  object-fit: contain !important;
  object-position: center !important;
  padding: 6px !important;
  background: #0b1219 !important;
}

/* Wayward Signal mobile shell safety patch 2026-09-30. */
.p-nav-smallLogo picture, .p-nav-smallLogo img { display: none !important; }
.p-nav-smallLogo a::before { content: ''; position: static !important; inset: auto !important; display: block; width: 46px; height: 46px; background-color: color-mix(in srgb, var(--ws-accent) 10%, transparent) !important; background-image: var(--ws-brand-mark), radial-gradient(circle, color-mix(in srgb, var(--ws-accent) 26%, transparent) 0 35%, transparent 36%), linear-gradient(90deg, transparent 47%, var(--ws-accent) 48% 52%, transparent 53%), linear-gradient(0deg, transparent 47%, var(--ws-accent) 48% 52%, transparent 53%) !important; background-position: center !important; background-size: contain, 100% 100%, 70% 70%, 70% 70% !important; background-repeat: no-repeat !important; border: 1px solid var(--ws-border) !important; border-radius: 50% !important; box-shadow: 0 0 16px color-mix(in srgb, var(--ws-accent) 10%, transparent) !important; }
@media (max-width: 900px) { .p-nav-smallLogo a::before { width: 36px; height: 36px; } }
@media (max-width: 650px) {
  .p-nav { bottom: max(8px, env(safe-area-inset-bottom)) !important; }
  .p-body-inner { padding-bottom: calc(120px + env(safe-area-inset-bottom)) !important; }
  .menu--account.menu--up { bottom: calc(76px + env(safe-area-inset-bottom)) !important; }
  .menu--account .menu-content { max-height: calc(100dvh - 104px - env(safe-area-inset-bottom)) !important; }
  .offCanvasMenu--blocks .offCanvasMenu-content { box-sizing: border-box; color: var(--ws-text-primary) !important; background: color-mix(in srgb, var(--ws-page-bg) 92%, #06131c) !important; border-right: 1px solid var(--ws-border) !important; padding-bottom: calc(84px + env(safe-area-inset-bottom)) !important; scroll-padding-bottom: calc(84px + env(safe-area-inset-bottom)); }
}

/* Wayward Signal Page Studio dark-surface patch 2026-09-30. */
.ws-page-studio .ws-block-builder,
.ws-page-studio .ws-editor-settings {
  color: var(--ws-text-primary) !important;
  background-color: var(--ws-surface) !important;
  background-image: linear-gradient(135deg, rgba(255,255,255,.045), rgba(255,255,255,0) 45%) !important;
  border-color: var(--ws-border) !important;
  backdrop-filter: blur(var(--ws-blur)) saturate(118%) !important;
  -webkit-backdrop-filter: blur(var(--ws-blur)) saturate(118%) !important;
}
.ws-page-studio .ws-builder-block {
  color: var(--ws-text-primary) !important;
  background: color-mix(in srgb, var(--ws-page-bg) 82%, transparent) !important;
  border-color: var(--ws-border) !important;
}
.ws-page-studio .ws-builder-block-head {
  color: var(--ws-text-primary) !important;
  background: var(--ws-surface-soft) !important;
  border-color: var(--ws-border) !important;
}
.ws-page-studio .ws-builder-toolbar,
.ws-page-studio .ws-builder-block-body { border-color: var(--ws-border) !important; }
.ws-page-studio .ws-builder-intro p,
.ws-page-studio .ws-builder-block-id,
.ws-page-studio .formRow-explain { color: var(--ws-text-secondary) !important; opacity: 1 !important; }

/* Wayward Signal Page Studio preview surface patch 2026-10-01. */
.p-body .ws-managed-page {
  color: var(--ws-text-primary) !important;
  background: color-mix(in srgb, var(--ws-page-bg) 88%, transparent) !important;
  border-color: var(--ws-border) !important;
}
.p-body .ws-managed-page .ws-page-summary,
.p-body .ws-managed-page .ws-page-published,
.p-body .ws-managed-page .ws-page-breadcrumbs,
.p-body .ws-managed-page figcaption { color: var(--ws-text-secondary) !important; opacity: 1 !important; }
