/* Keep the lighthouse artwork still. Its lantern projects a bright rotating
   beam above the artwork, so the effect is visible at dashboard size. */
:is(#dashboard-beacon,html[data-beacon-workspace=true] #brand-beacon){--beacon-signal-color:#55e4df;position:relative;isolation:isolate;width:60px;height:60px;min-width:60px;min-height:60px;padding:0;overflow:hidden;background:#102335}
:is(#dashboard-beacon,html[data-beacon-workspace=true] #brand-beacon) img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain}
:is(#dashboard-beacon,html[data-beacon-workspace=true] #brand-beacon) .beacon-alert-sweep,:is(#dashboard-beacon,html[data-beacon-workspace=true] #brand-beacon) .beacon-alert-lamp{display:none;pointer-events:none}
:is(#dashboard-beacon,html[data-beacon-workspace=true] #brand-beacon).is-active{border-color:#61eee0;box-shadow:0 0 12px #55e4df55}
:is(#dashboard-beacon,html[data-beacon-workspace=true] #brand-beacon).is-unacknowledged{animation:dashboard-beacon-flash 1.6s steps(1,end) infinite;animation-delay:var(--ack-phase,0ms)}
:is(#dashboard-beacon,html[data-beacon-workspace=true] #brand-beacon).is-unacknowledged .beacon-alert-sweep{display:block;position:absolute;z-index:2;left:50%;top:30%;width:110px;height:110px;border-radius:50%;background:conic-gradient(from -12deg,transparent 0deg,color-mix(in srgb,var(--beacon-signal-color) 16%,transparent) 8deg,color-mix(in srgb,var(--beacon-signal-color) 80%,transparent) 24deg,color-mix(in srgb,var(--beacon-signal-color) 70%,white) 30deg,transparent 32deg,transparent 180deg,color-mix(in srgb,var(--beacon-signal-color) 16%,transparent) 188deg,color-mix(in srgb,var(--beacon-signal-color) 80%,transparent) 204deg,color-mix(in srgb,var(--beacon-signal-color) 70%,white) 210deg,transparent 212deg);mask-image:radial-gradient(circle,#000 6%,#000e 30%,transparent 66%);animation:dashboard-beacon-sweep 3.2s linear infinite;animation-delay:var(--ack-phase,0ms)}
:is(#dashboard-beacon,html[data-beacon-workspace=true] #brand-beacon).is-unacknowledged .beacon-alert-lamp{display:block;position:absolute;z-index:3;left:calc(50% - 4px);top:calc(30% - 3px);width:8px;height:6px;border-radius:50%;background:var(--beacon-signal-color);box-shadow:0 0 7px 3px color-mix(in srgb,var(--beacon-signal-color) 70%,white),0 0 18px 7px color-mix(in srgb,var(--beacon-signal-color) 70%,transparent);animation:dashboard-beacon-lamp 1.6s steps(1,end) infinite;animation-delay:var(--ack-phase,0ms)}
@keyframes dashboard-beacon-sweep{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes dashboard-beacon-lamp{0%,64%{opacity:1}65%,100%{opacity:.2}}
@keyframes dashboard-beacon-flash{0%,64%{background:color-mix(in srgb,var(--beacon-signal-color) 25%,#102335);border-color:color-mix(in srgb,var(--beacon-signal-color) 70%,white);box-shadow:0 0 18px color-mix(in srgb,var(--beacon-signal-color) 67%,transparent)}65%,100%{background:#102335;border-color:#37627c;box-shadow:none}}
/* This is an alarm indication, not a decorative transition. Reduce sweep
   speed under Windows reduced motion without hiding the pending warning. */
@media(prefers-reduced-motion:reduce){:is(#dashboard-beacon,html[data-beacon-workspace=true] #brand-beacon).is-unacknowledged .beacon-alert-sweep{animation-duration:6.4s}}
