/* PulseBoard Fusion V8 — permanent sharp rendering and stale-overlay guard. */
:root{--pb-v8-sharp:1}
html,body,main{opacity:1!important;filter:none!important;-webkit-filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}

/* No graphical blur anywhere in the PulseBoard interface. */
body *{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
body:not([data-page="game"]) *{filter:none!important;-webkit-filter:none!important}

/* Remove decorative veils that can make the whole page look cloudy or dark. */
body::before,body::after,.noise,.hero-glow,.loader__veil,.depth-lines,.hero-particle-canvas{display:none!important;content:none!important;background:none!important;opacity:0!important}
.cursor,.cursor-ring{display:none!important}

/* Page content is always fully rendered, even when older reveal scripts fail. */
.reveal,.reveal.in-view,.card-entered,
main>.shell,main>.section,main section,main article,
main .hero,main .hero__top,main .hero__grid,main .hero__copy,main .hero__visual,
main .section-head,main .panel,main .info-card,main .split-card,main .tool-card,
main .case-card,main .media-card,main .catalog-card,main .video-card,
main .footer-box,main .analytics-hero,main .analytics-panel,
main .post-studio-shell,main .post-history-grid,main .post-history-panel,
main .post-list-panel,main .post-editor-panel,main .post-toolbar,
main .story-wall,main .story-card,main .story-card__body,
main .world-pulse,main .world-pulse__grid,main .world-card,
main .world-overlay--info,main .world-selected,
.feature-grid>*,.case-grid>*,.rail-grid>*,.tool-grid>*,.catalog-grid>*,.studio-preview-grid>*{
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  filter:none!important;
  -webkit-filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  mix-blend-mode:normal!important;
  animation:none!important;
  transition:none!important;
}

/* Page loaders are removed permanently; the application renders immediately. */
.loader:not(.loader--game){display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}

/* Hidden menus and dialogs must never leave a dark backdrop behind. */
body:not(.menu-open) .pb-menu-backdrop,
.mobile-menu.pb-astoria-menu:not(.is-open)+.pb-menu-backdrop,
.story-compose-overlay:not(.is-open),
.pulse-trigger-modal:not(.is-open),
.dev-token-modal:not(.is-open){display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}
body:not(.story-overlay-open) .story-compose-overlay:not(.is-open){display:none!important}

/* Open layers remain readable but use a solid, sharp background rather than blur. */
body.menu-open .pb-menu-backdrop,
.story-compose-overlay.is-open .story-compose-overlay__backdrop,
.pulse-trigger-modal.is-open .pulse-trigger-modal__backdrop,
.dev-token-modal.is-open .dev-token-modal__backdrop{
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  background:rgba(2,8,13,.82)!important;
}

/* Cinematic media stays clear. The thumbnail never sits as a dim layer above a playing video. */
.cinematic-intro__embed,.cinematic-intro__video{filter:none!important;opacity:1!important}
.cinematic-intro__embed~.cinematic-intro__poster,
.cinematic-intro__video~.cinematic-intro__poster{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
.cinematic-intro__poster--static{opacity:1!important;visibility:visible!important;mix-blend-mode:normal!important;filter:none!important}
.cinematic-intro__shade{background:linear-gradient(90deg,rgba(3,10,15,.72) 0%,rgba(3,10,15,.38) 34%,rgba(3,10,15,.08) 72%,transparent 100%)!important}
.yt-shell__poster{opacity:1!important;filter:none!important;mix-blend-mode:normal!important}
.yt-shell__shade{background:linear-gradient(180deg,transparent 48%,rgba(2,7,11,.64) 100%)!important}

/* World Atlas and Pulse Stories receive opaque panels for maximum contrast. */
body[data-page="world"] .world-card--atlas-only,
body.world-page .world-card--atlas-only,
body[data-page="posts"] .panel,
body[data-page="posts-studio"] .panel,
body[data-page="posts"] .story-card,
body[data-page="posts-studio"] .story-card{
  background:#081b27!important;
  opacity:1!important;
  filter:none!important;
  backdrop-filter:none!important;
}
body[data-page="world"] .world-canvas,
body.world-page .world-canvas{opacity:1!important;filter:none!important;background-color:#071923!important}

/* Prevent inherited low-opacity states from dimming primary text and media. */
main :where(h1,h2,h3,h4,h5,h6,p,li,span,strong,small,label,input,select,textarea,button,a,img,video,iframe,canvas):not([hidden]){
  filter:none!important;-webkit-filter:none!important;text-shadow:none!important
}
main :where(h1,h2,h3,h4,h5,h6,p,strong,label,input,select,textarea,button,a):not([hidden]){opacity:1!important}

@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
