:root { --core-space-bg: #070c10; --core-space-opacity: 0; }
.core-portal { position: fixed; inset: 0; z-index: 0; overflow: hidden; background: transparent; pointer-events: none; }
.core-portal::before { content: ""; position: absolute; inset: 0; background: var(--core-space-bg); opacity: var(--core-space-opacity); }
.core-portal .core-portal-canvas { position: absolute; inset: 0; width: 100%; height: 100%; clip-path: none; pointer-events: none; }
body.core-journey { isolation: isolate; }
body.core-journey > main, body.core-journey > .footer { position: relative; z-index: 1; }
body.core-journey .landing-x, body.core-journey .landing-flow,
body.core-journey .landing-shot, body.core-journey .landing-start,
body.core-journey > .footer { background: transparent; }
body.core-journey .landing-x::before, body.core-journey .landing-x::after { opacity: 0; }
body.core-journey.core-space-draggable,
body.core-journey .core-space-draggable { cursor: grab; }
body.core-journey.core-space-dragging,
body.core-journey.core-space-dragging * { cursor: grabbing; user-select: none; }
