
/* WWCFAM DO IT ALL CLEAN REBUILD FINAL
   One header, one agreement, no visible broken AI overlays, no duplicate blocking layers. */

html, body {
  max-width: 100% !important;
  overflow-x: hidden !important;
}

*, *::before, *::after {
  box-sizing: border-box !important;
}

/* Broken public overlays / duplicate injected panels */
#wwcfamUnifiedTopShell,
#wwcfamMaxAiWidget,
#wwcfamSmartSearchPanel,
#wwcfamSmartSearchBox,
#wwcfamSmartBoxVoiceInline,
#wwcfamVoiceCommandPanel,
#wwcfamRealGlobalHeader,
#wwcfamGlobalMenuPanel,
.wwcfam-uai-grid,
.wwcfam-uai-hero,
.wwcfam-uai-command,
.wwcfam-ai-command-center,
.wwcfam-max-ai-widget,
.wwcfam-smart-search-panel,
.wwcfam-smartbox-panel,
[data-wwcfam-ai-overlay],
[data-wwcfam-smartbox-overlay],
[data-wwcfam-global-under-header] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Old status/control bubbles that clutter public pages */
#wwcfamAutomationStatus,
#wwcfamRealtimeStatus,
#wwcfamSecurityStatus,
#wwcfamPermissionStatus,
#wwcfamTutorialLaunch,
.wwcfam-tutorial-launch,
#wwcfamSiteTourButton,
.wwcfam-site-tour-button {
  display: none !important;
}

/* Only one visible account strip after the header */
#wwcfamEmergencyAccount ~ #wwcfamEmergencyAccount,
.wwcfam-account-strip ~ .wwcfam-account-strip,
.wwcfam-profile-strip ~ .wwcfam-profile-strip {
  display: none !important;
}

/* Closed menus/backdrops cannot block page clicks */
#wwcfamEmergencyMenu:not(.open),
.wwcfam-universal-panel:not(.open),
.wwcfam-universal-backdrop:not(.open),
#wwcfamFastChatPanel:not(.open) {
  pointer-events: none !important;
}

/* Decorative/effect layers cannot steal clicks */
.wwcfam-bg,
.wwcfam-background,
.wwcfam-stars,
.wwcfam-particles,
.wwcfam-vortex-bg,
.wwcfam-vortex-background,
.wwcfam-orb,
.wwcfam-glow,
.wwcfam-lightning,
.wwcfam-fx,
.wwcfam-effects,
.wwcfam-ambient,
.bg-effects,
.background-effects,
.particles,
.stars,
.vortex-bg,
.vortex-background,
.hero-bg,
.hero-glow,
.hero-orb,
.hero-effects,
.grid-overlay,
.scanlines,
.noise,
.decor,
.decoration {
  pointer-events: none !important;
}

/* Chat full page: never show floating widget on /chat */
body.wwcfam-page-chat .wwcfam-chat-bubble,
body.wwcfam-page-chat .wwcfam-chat-panel,
body.wwcfam-page-chat #wwcfamFastChatRoot,
body.wwcfam-page-chat #wwcfamChatWidget,
body.wwcfam-page-chat #wwcfamSafeChatWidget,
body.wwcfam-page-chat #wwcfamChatPanel,
body.wwcfam-page-chat #wwcfamChatLaunch {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Chat page fit */
body.wwcfam-page-chat .chat-page {
  width: min(1120px, calc(100vw - 14px)) !important;
  margin: 14px auto 80px !important;
  padding: 0 !important;
  position: relative !important;
  z-index: 5 !important;
}

body.wwcfam-page-chat .chat-card {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

body.wwcfam-page-chat .message-list {
  min-height: 360px !important;
  max-height: min(62vh, 620px) !important;
  overflow: auto !important;
}

body.wwcfam-page-chat .composer {
  position: sticky !important;
  bottom: 0 !important;
  z-index: 20 !important;
}

/* SCD and audio pages stay above backgrounds and cannot be blocked */
body.wwcfam-page-scd main,
body.wwcfam-page-scd #app,
body.wwcfam-page-scd .app,
body.wwcfam-page-scd .scd-app,
body.wwcfam-page-audio main,
body.wwcfam-page-audio #app,
body.wwcfam-page-audio .app {
  position: relative !important;
  z-index: 5 !important;
}

/* Magazine buttons clickable */
body.wwcfam-page-magazine a,
body.wwcfam-page-magazine button,
body.wwcfam-page-magazine [role="button"],
body.wwcfam-page-magazine input,
body.wwcfam-page-magazine select,
body.wwcfam-page-magazine textarea,
body.wwcfam-page-magazine label {
  position: relative !important;
  z-index: 50 !important;
  pointer-events: auto !important;
}

/* Account page stays account focused */
body.wwcfam-page-account #wwcfamUnifiedTopShell,
body.wwcfam-page-account [id*="Smart" i],
body.wwcfam-page-account [class*="smart" i],
body.wwcfam-page-account [id*="vortex" i],
body.wwcfam-page-account [class*="vortex" i] {
  display: none !important;
}

@media (max-width: 720px) {
  body.wwcfam-page-chat .chat-page {
    width: 100vw !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.wwcfam-page-chat .chat-card {
    border-radius: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    min-height: calc(100dvh - 74px) !important;
  }

  body.wwcfam-page-chat .message-list {
    max-height: calc(100dvh - 260px) !important;
    min-height: 300px !important;
  }

  body.wwcfam-page-chat .composer {
    padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px)) !important;
  }
}


/* WWCFAM_CHAT_ICON_DEDUPE_ONLY_FINAL
   Keep one floating chat icon only. */
.wwcfam-chat-bubble[data-wwcfam-duplicate="1"],
.wwcfam-chat-panel[data-wwcfam-duplicate="1"],
#wwcfamFastChatRoot[data-wwcfam-duplicate="1"],
#wwcfamChatWidget[data-wwcfam-duplicate="1"],
#wwcfamSafeChatWidget[data-wwcfam-duplicate="1"],
#wwcfamChatLaunch[data-wwcfam-duplicate="1"],
#wwcfamChatPanel[data-wwcfam-duplicate="1"] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

body.wwcfam-page-chat .wwcfam-chat-bubble,
body.wwcfam-page-chat .wwcfam-chat-panel,
body.wwcfam-page-chat #wwcfamFastChatRoot,
body.wwcfam-page-chat #wwcfamChatWidget,
body.wwcfam-page-chat #wwcfamSafeChatWidget,
body.wwcfam-page-chat #wwcfamChatLaunch,
body.wwcfam-page-chat #wwcfamChatPanel {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
