/* Living background (v13-ambient.js): a drifting field in the open space behind
   the content. The canvas sits inside the content region (.app-main), behind
   the content but above the page background, so it actually shows in the open
   areas. Cards and panels keep their solid backgrounds and cover it; the map
   is untouched. Only on when one of the three Living-background choices is set. */
#vxAmb{position:absolute;inset:0;z-index:0;pointer-events:none;display:none}

/* app-main becomes the positioning context; the content rides above the field. */
html[data-livebg="constellation"] .app-main,
html[data-livebg="starfield"] .app-main,
html[data-livebg="nebula"] .app-main{position:relative}
html[data-livebg="constellation"] .app-main > .topbar,
html[data-livebg="starfield"] .app-main > .topbar,
html[data-livebg="nebula"] .app-main > .topbar,
html[data-livebg="constellation"] .app-main > .main-content,
html[data-livebg="starfield"] .app-main > .main-content,
html[data-livebg="nebula"] .app-main > .main-content{position:relative;z-index:1}

/* The content area goes clear so the field shows through its open space; cards
   and panels keep their own solid backgrounds. */
html[data-livebg="constellation"] .main-content,
html[data-livebg="starfield"] .main-content,
html[data-livebg="nebula"] .main-content{background:transparent!important;background-image:none!important}
html[data-livebg="constellation"] body.project-mode .main-content,
html[data-livebg="starfield"] body.project-mode .main-content,
html[data-livebg="nebula"] body.project-mode .main-content{background:transparent!important}

/* Rich colour mode forces .main-content opaque with a more specific !important
   rule; match its specificity so the field still shows (19 Oct). */
html.v-universe[data-mode][data-livebg="constellation"] .main-content,
html.v-universe[data-mode][data-livebg="starfield"] .main-content,
html.v-universe[data-mode][data-livebg="nebula"] .main-content{background:transparent!important;background-image:none!important}
