/* DLBattle animated logo — ult crystal that flips in 3D, soul orbs orbiting it, and a sheen across the wordmark.
   Markup: <a class="logo dlx"><span class="lx-emb"><svg class="lx-hex">…</svg><span class="lx-orbit"><i></i><i></i><i></i></span></span>
           <span class="lx-word"><b>DL</b><em>BATTLE</em></span></a> */
.logo.dlx{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:#efe6cf;line-height:1;flex:none}
.dlx .lx-emb{display:block;position:relative;width:40px;height:40px;flex:none;perspective:220px}
.dlx .lx-hex{display:block;width:100%;height:100%;transform-origin:50% 50%;
  animation:lxFlip 6s cubic-bezier(.6,0,.3,1) infinite,lxGlow 3s ease-in-out infinite;filter:drop-shadow(0 0 6px rgba(61,242,165,.55))}
@keyframes lxFlip{0%,58%{transform:rotateY(0)}78%{transform:rotateY(200deg) scale(1.08)}88%{transform:rotateY(350deg)}100%{transform:rotateY(360deg)}}
@keyframes lxGlow{50%{filter:drop-shadow(0 0 13px rgba(61,242,165,.95)) brightness(1.15)}}
/* tilted elliptical orbit around the crystal; orbs shrink and dim on the far side */
.dlx .lx-orbit{position:absolute;left:50%;top:50%;width:0;height:0;transform:rotate(-22deg);pointer-events:none}
.dlx .lx-orbit i{position:absolute;left:0;top:0;width:5px;height:5px;margin:-2.5px 0 0 -2.5px;border-radius:50%;
  background:radial-gradient(circle,#fff 0 30%,#3df2a5 70%);box-shadow:0 0 8px 2px rgba(61,242,165,.8);
  offset-path:path('M -27 0 A 27 9 0 1 1 27 0 A 27 9 0 1 1 -27 0');offset-rotate:0deg;animation:lxOrbit 3.6s linear infinite}
.dlx .lx-orbit i:nth-child(2){animation-delay:-1.2s;width:4px;height:4px}
.dlx .lx-orbit i:nth-child(3){animation-delay:-2.4s;width:3px;height:3px;background:radial-gradient(circle,#fff 0 30%,#f5c25a 70%);box-shadow:0 0 8px 2px rgba(245,194,90,.75)}
@keyframes lxOrbit{0%{offset-distance:0%;opacity:1;transform:scale(1)}25%{opacity:.25;transform:scale(.55)}50%{offset-distance:50%;opacity:1;transform:scale(1)}75%{transform:scale(1.25)}100%{offset-distance:100%;opacity:1;transform:scale(1)}}
/* wordmark */
.dlx .lx-word{display:flex;align-items:center;gap:7px;font-family:Oswald,Impact,sans-serif;font-weight:700;text-transform:uppercase;white-space:nowrap;line-height:1}
/* "DL" sits in a solid green block, "BATTLE" plain and upright next to it */
.dlx .lx-word b{font-weight:700;font-size:22px;letter-spacing:1px;color:#04120c;background:#3df2a5;padding:4px 6px 3px;box-shadow:0 0 18px rgba(61,242,165,.25)}
.dlx .lx-word em{font-style:normal;font-weight:700;font-size:24px;letter-spacing:1.5px;color:#efe6cf;text-shadow:0 2px 0 rgba(0,0,0,.6)}
.logo.dlx:hover .lx-hex{animation-duration:1.6s,1.5s}
.logo.dlx:focus-visible{outline:2px solid #3df2a5;outline-offset:4px}
@media (max-width:640px){
  .dlx .lx-emb{width:32px;height:32px}
  .dlx .lx-word b{font-size:18px;padding:3px 5px 2px}.dlx .lx-word em{font-size:19px;letter-spacing:1px}
  .dlx .lx-orbit i{offset-path:path('M -22 0 A 22 7 0 1 1 22 0 A 22 7 0 1 1 -22 0')}
}
@media (prefers-reduced-motion:reduce){.dlx .lx-hex,.dlx .lx-orbit i,.dlx .lx-word em{animation:none!important}.dlx .lx-orbit{display:none}}
