.banner-lights{position:absolute;pointer-events:none;overflow:hidden;z-index:2;isolation:isolate}
.banner-indicator,.banner-headlight{position:absolute;display:block;width:var(--lamp-size);height:calc(var(--lamp-size)*.55);transform:translate(-50%,-50%);border-radius:50%;opacity:0}
.banner-indicator{background:radial-gradient(ellipse,#fff3bd 0%,#ffb52f 28%,#ff950080 55%,transparent 75%);box-shadow:0 0 9px 2px #ffa50070;animation:banner-amber 1.1s ease-in-out 2}
.banner-headlight{width:calc(var(--lamp-size)*2.2);height:calc(var(--lamp-size)*1.5);background:radial-gradient(ellipse,#fff 0%,#eff8ffe0 18%,#cbeaff66 43%,transparent 72%);animation:banner-headlight 3s ease-in-out forwards}
@keyframes banner-amber{0%,100%{opacity:0}25%,55%{opacity:.95}}
@keyframes banner-headlight{0%,27%,70%,100%{opacity:0}42%,51%{opacity:.88}}
@media(prefers-reduced-motion:reduce){.banner-lights{display:none}}

/* Stronger light output; EV uses white for both blink and flash. */
.banner-indicator{box-shadow:0 0 12px 3px #ffa500a6;filter:brightness(1.25)}
.banner-headlight{filter:brightness(1.35);box-shadow:0 0 12px 3px #ecf8ff8c}
.banner-lights[data-energy="EV"] .banner-indicator{background:radial-gradient(ellipse,#fff 0%,#fff 32%,#edf8ffb3 57%,transparent 78%);box-shadow:0 0 13px 3px #f3fbffb3}
@keyframes banner-amber{0%,100%{opacity:0}25%,55%{opacity:1}}
@keyframes banner-headlight{0%,27%,70%,100%{opacity:0}42%,51%{opacity:1}}
