/* ==========================================================
   ERABYTE EYE — v0.9.9.116 · HORIZONTAL SAFETY CLAMP + OPTICS-COUPLED WINGS
   Validated boot + isolated v0.1.24 aperture + v0.1.10 gaze mechanics.
   ========================================================== */

.ebe-eye {
    --ebe-max-width: 1080px;
    --ebe-core-color: #FFFFFF;
    --ebe-wing-color: #FFFFFF;
    --ebe-glitch-a: #00D9FF;
    --ebe-glitch-b: #FF3E88;

    position: relative;
    width: 100vw;
    max-width: 100vw;
    min-height: 1px;
    left: 50%;
    margin-left: -50vw;
    overflow: visible;
    isolation: isolate;
    line-height: 0;
    user-select: none;
    -webkit-user-select: none;
}

.ebe-eye,
.ebe-eye * {
    box-sizing: border-box;
}

.ebe-eye__rig3d {
    width: 100vw;
    max-width: none;
    margin-inline: 0;
    transform-origin: 50% 50%;
}

.ebe-eye__svg {
    display: block;
    width: 100%;
    height: auto;
    overflow: visible;
    shape-rendering: geometricPrecision;
}

.ebe-eye__svg polygon,
.ebe-eye__svg path,
.ebe-eye__svg use,
.ebe-eye__svg rect {
    shape-rendering: geometricPrecision;
}

.ebe-eye__front,
.ebe-eye__lens-window,
.ebe-eye__lens-carriage,
.ebe-eye__blade-stack,
.ebe-eye__wing-group,
.ebe-eye__ghost,
.ebe-eye__activation-ghost {
    transform-box: view-box;
    transform-origin: 1024px 1012px;
}

.ebe-eye__front [data-ebe-blade],
.ebe-eye__activation-ghost [data-ebe-activation-blade] {
    fill: var(--ebe-core-color);
    stroke: none;
}


.ebe-eye__front [data-ebe-wing-key],
.ebe-eye__activation-ghost [data-ebe-activation-wing] {
    fill: var(--ebe-wing-color);
    stroke: none;
}

.ebe-eye__ghost {
    opacity: 0;
    pointer-events: none;
    mix-blend-mode: screen;
}

.ebe-eye__ghost--a { color: var(--ebe-glitch-a); }
.ebe-eye__ghost--b { color: var(--ebe-glitch-b); }

.ebe-eye__ghost use,
.ebe-eye__ghost [data-ebe-ghost-blade-a],
.ebe-eye__ghost [data-ebe-ghost-blade-b] {
    fill: currentColor;
    stroke: none;
}

.ebe-eye__activation-ghost {
    opacity: 0;
    pointer-events: none;
}

.ebe-eye__activation-ghost use,
.ebe-eye__activation-ghost [data-ebe-activation-blade] {
    fill: #FFFFFF;
}

.ebe-eye__boot-pixels {
    pointer-events: none;
}

.ebe-eye__boot-pixels rect {
    fill: #6CFF8F;
    opacity: 0;
}

@media (max-width: 767px) {
    .ebe-eye,
    .ebe-eye__rig3d {
        width: 100vw;
        max-width: 100vw;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ebe-eye__rig3d {
        transform: none !important;
    }

    .ebe-eye__ghost,
    .ebe-eye__boot-pixels {
        display: none !important;
    }
}




/* v0.9.9.112 — keep the core silhouette in SVG/vector space. */
.ebe-eye__front,
.ebe-eye__front [data-ebe-wing-key],
.ebe-eye__front [data-ebe-blade] {
    shape-rendering: geometricPrecision;
}


/* Full-bleed horizontal stage: do not let Elementor's shortcode/container
 * wrappers crop the outer wing tips before the viewport boundary. */
.elementor-widget-shortcode:has(.ebe-eye),
.elementor-widget-shortcode:has(.ebe-eye) > .elementor-widget-container,
.e-con:has(.ebe-eye) {
    overflow: visible !important;
}

html:has(.ebe-eye),
body:has(.ebe-eye) {
    overflow-x: clip;
}
