/* Анимированный левый блок входа (login.html — зелёный, admin-login.html — красный).
   Основа — архив USMS-animation, встроен без iframe. */
body .hero.anim{
  --a-bg1:#12a66c; --a-bg2:#098a50; --a-line:#acffe5; --a-dot:#75f7f1; --a-glow:#a1fff2;
  --a-soft:#d6ffeb; --a-eyebrow:#bcffde; --a-rule:#87f6d2; --a-hover:#a7fff4;
  background:radial-gradient(ellipse at 48% 48%,var(--a-bg1) 0%,var(--a-bg2) 65%);
  overflow:hidden;isolation:isolate;
}
body.usms-admin-login-red .hero.anim{
  --a-bg1:#dc2626; --a-bg2:#a31515; --a-line:#ffd0d0; --a-dot:#ffd2c2; --a-glow:#ffb4a1;
  --a-soft:#ffe6e6; --a-eyebrow:#ffd6d6; --a-rule:#ffb3b3; --a-hover:#ffe0d6;
}
.hero.anim:before{
  content:'';position:absolute;inset:0;z-index:-1;opacity:.5;pointer-events:none;
  background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);
  background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse,#000,transparent 70%);mask-image:radial-gradient(ellipse,#000,transparent 70%);
}
.hero.anim .a-orbit{
  position:absolute;left:50%;top:50%;width:80%;aspect-ratio:1;z-index:-1;pointer-events:none;
  border:1px solid color-mix(in srgb,var(--a-line) 17%,transparent);border-radius:50%;
  transform:translate(-50%,-50%) rotate(-30deg) scaleY(.58);
}
.hero.anim .a-orbit.two{width:105%;transform:translate(-50%,-50%) rotate(30deg) scaleY(.58);}
.hero.anim .a-orbit:after{
  content:'';position:absolute;width:8px;height:8px;border-radius:50%;
  background:var(--a-dot);box-shadow:0 0 22px var(--a-glow);
  offset-path:border-box;animation:aTravel 7s linear infinite;
}
.hero.anim .a-orbit.two:after{animation-delay:-3s;animation-direction:reverse;}
.hero.anim .a-pulse{
  position:absolute;left:50%;top:50%;width:180px;height:180px;margin:-90px 0 0 -90px;z-index:-1;pointer-events:none;
  border:1px solid color-mix(in srgb,var(--a-line) 12%,transparent);border-radius:50%;animation:aPulse 5s linear infinite;
}
.hero.anim .a-pulse.p2{animation-delay:2.5s;}

.hero.anim .a-center{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;}
.hero.anim .a-eyebrow{color:var(--a-eyebrow);letter-spacing:3px;font-size:11px;font-weight:600;margin-bottom:34px;text-transform:uppercase;animation:aReveal 1s 1s both;}
.hero.anim .hero-inner{animation:aReveal 1.3s .2s both;}
.hero.anim .logo-plate{position:relative;}
.hero.anim .logo-plate:after{
  content:'';position:absolute;inset:-10px;border-radius:44px;
  border:1px solid color-mix(in srgb,var(--a-line) 25%,transparent);animation:aBreathe 4s ease-in-out infinite;
}
.hero.anim .rule{background:var(--a-rule);}
.hero.anim .a-tagline{font-family:'Space Grotesk',sans-serif;font-weight:500;font-size:19px;color:var(--a-soft);margin-top:40px;animation:aReveal 1.2s 1.8s both;}
.hero.anim .a-services{margin-top:22px;animation:aReveal 1s 2.5s both;}
.hero.anim .a-row{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:13px;margin:12px 0;}
.hero.anim .a-row a,.hero.anim .a-row span.s{
  font-size:14px;color:#fff;text-decoration:none;padding:4px 0;border-bottom:1px solid transparent;
  transition:border-color .2s,color .2s;
}
.hero.anim .a-row a:hover{color:var(--a-hover);border-bottom-color:var(--a-hover);}
.hero.anim .a-row a:focus-visible{outline:2px solid #fff;outline-offset:4px;}
.hero.anim .a-div{color:color-mix(in srgb,var(--a-soft) 50%,transparent);font-size:13px;}

@keyframes aTravel{to{offset-distance:100%}}
@keyframes aReveal{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@keyframes aPulse{from{transform:scale(.6);opacity:0}20%{opacity:1}to{transform:scale(5);opacity:0}}
@keyframes aBreathe{50%{opacity:.3;transform:scale(1.05)}}

@media (max-width:1100px){
  .hero.anim .logo-plate:after{border-radius:38px;}
  .hero.anim .a-row{gap:8px;}
  .hero.anim .a-row a,.hero.anim .a-row span.s{font-size:12.5px;}
  .hero.anim .a-tagline{font-size:16px;}
}
@media (max-width:860px){
  .hero.anim .a-eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:16px;}
  .hero.anim .logo-plate:after{inset:-6px;border-radius:25px;}
  .hero.anim .a-tagline{font-size:14px;margin-top:18px;}
  .hero.anim .a-services{margin-top:8px;}
  .hero.anim .a-row{margin:6px 0;gap:7px;}
  .hero.anim .a-row a,.hero.anim .a-row span.s{font-size:12px;}
  .hero.anim .a-orbit{width:130%;}
  .hero.anim .a-orbit.two{width:165%;}
  .hero.anim .a-pulse{width:120px;height:120px;margin:-60px 0 0 -60px;}
}
@media (max-width:360px){
  .hero.anim .a-row a,.hero.anim .a-row span.s{font-size:11px;}
}
@media (prefers-reduced-motion:reduce){
  .hero.anim *,.hero.anim *:before,.hero.anim *:after{animation:none!important;}
  .hero.anim .a-pulse{display:none;}
}
