/* Pointer-driven border light; existing card backgrounds and dimensions stay intact. */
.bg-positioned{position:relative}
.bg-surface{--bg-x:50%;--bg-y:0%;--bg-power:0;--bg-a:#c72e34;--bg-b:#f16a70;--bg-c:#f5f5f5}
.bg-surface>.bg-edge{position:absolute;inset:0;z-index:6;pointer-events:none;border-radius:inherit;padding:2px;opacity:var(--bg-power);background:radial-gradient(70px circle at var(--bg-x) var(--bg-y),#fff,var(--bg-b) 34%,transparent 100%),conic-gradient(from 0deg at var(--bg-x) var(--bg-y),var(--bg-a),var(--bg-b),var(--bg-c),var(--bg-a));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;filter:drop-shadow(0 0 5px var(--bg-b));transition:opacity .22s ease}
.bg-surface:focus-within>.bg-edge,.bg-surface:focus-visible>.bg-edge{opacity:.8}
.bg-surface.bg-pressed>.bg-edge{opacity:.85}
@media(prefers-reduced-motion:reduce){.bg-surface>.bg-edge{transition:none}}
@media(forced-colors:active){.bg-edge{display:none}}
