/* Prime Creation // compositor allocation contract v9 // route-demand residency
   Resource residency and paint fail-open only. Prime Spatial retains optical ownership.
   PrimeRuntime owns page-specific CSS. PrimePillSystem is body-root viewport chrome and is outside this authority.
   Hidden is the only state allowed to fully suppress a canonical page. */

/* STATIC RECEPTOR MATERIAL FAILOVER
   These API-backed paints keep Page 01 visible before JavaScript repairs an unavailable authored source. */
body.prime-v2 #top.hero[data-prime-receptor="true"]>.receptor-background-box{
  background-color:#02050a!important;
  background-image:url('/api/brand-material?role=background')!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
}
body.prime-v2 #top.hero[data-prime-receptor="true"] .receptor-logo-box{
  background-image:url('/api/brand-material?role=logo')!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:contain!important;
}
body.prime-v2 #top.hero[data-prime-receptor="true"] .receptor-lettering-box{
  background-image:url('/api/brand-material?role=lettering')!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:contain!important;
}

/* TIER 0 // inactive application descendants */
html[data-prime-device-motion-enabled="true"] body.prime-v2 #main[data-app-shell]>.app-window:not(.is-prime-viewport-active):not([data-prime-viewport-active="true"]) *{
  will-change:auto!important;
}

/* TIER 1 // fine-grained readable content */
html[data-prime-device-motion-enabled="true"] body.prime-v2 #main[data-app-shell]>.app-window:is(.is-prime-viewport-active,[data-prime-viewport-active="true"]) :is(h1,h2,h3,h4,h5,h6,p,blockquote,figcaption,dt,dd,label,output,strong,small,em,code):not(.pc-spatial-media):not(.pc-spatial-eye):not(.pc-spatial-eye *),
html[data-prime-device-motion-enabled="true"] body.prime-v2 :is(#lightbox,dialog[open]) :is(h1,h2,h3,h4,h5,h6,p,blockquote,figcaption,dt,dd,label,output,strong,small,em,code):not(.pc-spatial-media):not(.pc-spatial-eye):not(.pc-spatial-eye *){
  will-change:auto!important;
}

/* TIER 2 // Spatial optical stack */
html.prime-mobile-spatial[data-prime-compositor-state="idle"][data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"] body.prime-v2 .pc-spatial-source[data-prime-spatial-main="true"],
html.prime-mobile-spatial[data-prime-compositor-state="idle"][data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"] body.prime-v2 .pc-spatial-pair[data-prime-spatial-pair="true"],
html.prime-mobile-spatial[data-prime-compositor-state="idle"][data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"] body.prime-v2 .pc-spatial-pair[data-prime-spatial-pair="true"]>.pc-spatial-eye[data-prime-spatial-stereo="true"],
html.prime-mobile-spatial[data-prime-compositor-state="idle"][data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"] body.prime-v2 .pc-spatial-texture[data-prime-spatial-texture="true"],
html.prime-mobile-spatial[data-prime-compositor-state="idle"][data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"] body.prime-v2 .pc-spatial-depth-plane[data-prime-spatial-depth-plane]{
  will-change:auto!important;
}

/* TIER 3 // constrained resource policy */
html.prime-mobile-spatial[data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"][data-prime-performance-mode="light"] body.prime-v2 .pc-spatial-pair[data-prime-spatial-pair="true"],
html.prime-mobile-spatial[data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"][data-prime-performance-mode="light"] body.prime-v2 .pc-spatial-pair[data-prime-spatial-pair="true"]>.pc-spatial-eye[data-prime-spatial-stereo="true"],
html.prime-mobile-spatial[data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"][data-prime-performance-mode="light"] body.prime-v2 .pc-spatial-texture[data-prime-spatial-texture="true"],
html.prime-mobile-spatial[data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"][data-prime-runtime-pressure="high"] body.prime-v2 .pc-spatial-pair[data-prime-spatial-pair="true"],
html.prime-mobile-spatial[data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"][data-prime-runtime-pressure="high"] body.prime-v2 .pc-spatial-pair[data-prime-spatial-pair="true"]>.pc-spatial-eye[data-prime-spatial-stereo="true"],
html.prime-mobile-spatial[data-prime-spatial-system-enabled="true"][data-prime-spatial-enabled="true"][data-prime-runtime-pressure="high"] body.prime-v2 .pc-spatial-texture[data-prime-spatial-texture="true"],
html[data-prime-device-motion-enabled="true"][data-prime-performance-mode="light"] body.prime-v2 #main[data-app-shell]>.app-window:is(.is-prime-viewport-active,[data-prime-viewport-active="true"]) :is(img:not(.pc-spatial-source):not(.receptor-background-art):not(.receptor-logo-cutout):not(.receptor-lettering-art):not([data-prime-video-background]),video:not([data-prime-video-background]),canvas,svg):not(.pc-spatial-eye):not(.pc-spatial-eye *),
html[data-prime-device-motion-enabled="true"][data-prime-runtime-pressure="high"] body.prime-v2 #main[data-app-shell]>.app-window:is(.is-prime-viewport-active,[data-prime-viewport-active="true"]) :is(img:not(.pc-spatial-source):not(.receptor-background-art):not(.receptor-logo-cutout):not(.receptor-lettering-art):not([data-prime-video-background]),video:not([data-prime-video-background]),canvas,svg):not(.pc-spatial-eye):not(.pc-spatial-eye *){
  will-change:auto!important;
}

/* PAGE PAINT FAIL-OPEN // route metadata may drift, hidden may not. */
html[data-prime-canon="prime-creation"] body.prime-v2 #main[data-app-shell]>#top.app-window:not([hidden]){
  display:grid!important;visibility:visible!important;opacity:1!important;content-visibility:visible!important;pointer-events:auto!important
}
html[data-prime-canon="prime-creation"] body.prime-v2 #main[data-app-shell]>:is(#intro,#music,#book,#studio).app-window:not([hidden]){
  display:block!important;visibility:visible!important;opacity:1!important;content-visibility:visible!important;pointer-events:auto!important
}
html[data-prime-canon="prime-creation"] body.prime-v2 #main[data-app-shell]>:is(#portfolio,#video,#sprite,#process,#contact).app-window:not([hidden]){
  display:grid!important;visibility:visible!important;opacity:1!important;content-visibility:visible!important;pointer-events:auto!important
}
html[data-prime-canon="prime-creation"] body.prime-v2 #main[data-app-shell]>.app-window[hidden]{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;content-visibility:hidden!important
}

/* REVEAL FAIL-OPEN // readability only. Resource budgeting does not own longform geometry. */
html:not([data-prime-global-ui]) body.prime-v2 #main[data-app-shell]>.app-window:not([hidden]) [data-reveal]{
  opacity:1!important
}
/* Preserve the pre-existing geometry behavior of the two frozen pages exactly. */
html:not([data-prime-global-ui]) body.prime-v2 #main[data-app-shell]>:is(#top,#portfolio).app-window:not([hidden]) [data-reveal]{
  transform:none!important
}

/* RECEPTOR FIRST-PAINT FAIL-OPEN
   Canonical authored brand pixels must never depend on a remote CSS mask.
   Spatial clones and the shine keep their silhouette masks; the authored images do not. */
body.prime-v2 #top.hero[data-prime-receptor="true"] .receptor-logo-cutout,
body.prime-v2 #top.hero[data-prime-receptor="true"] .receptor-lettering-art{
  -webkit-mask:none!important;
  mask:none!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}
html[data-prime-viewport-active="top"] body.prime-v2 #main[data-app-shell]>#top.hero[data-prime-receptor="true"]:not([hidden]) .receptor-brand-group,
html[data-prime-viewport-active="top"] body.prime-v2 #main[data-app-shell]>#top.hero[data-prime-receptor="true"]:not([hidden]) :is(.receptor-logo-box,.receptor-lettering-box){
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
}
html[data-prime-viewport-active="top"] body.prime-v2 #main[data-app-shell]>#top.hero[data-prime-receptor="true"]:not([hidden]) :is(.receptor-logo-box,.receptor-lettering-box){
  align-items:center!important;
  justify-content:center!important;
}
