/* Shared login artwork. Images retain their original proportions and pixels. */
/* One form contract; preserve native fields, validation, CSRF and second steps. */
body[data-dr-login-motion] form {font-family:Inter,'Segoe UI',system-ui,sans-serif!important;color:var(--dr2-text,#223449);width:100%;box-sizing:border-box}
body[data-dr-login-motion] form label {font:600 12px/1.4 Inter,'Segoe UI',system-ui,sans-serif!important;color:var(--dr2-text,#223449)!important}
body[data-dr-login-motion] form :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]),select) {
  box-sizing:border-box;width:100%;min-height:42px!important;height:42px!important;
  border:1px solid var(--dr2-line,#cbd6e2)!important;border-radius:10px!important;
  background:var(--dr2-surface,#fbfcfe)!important;color:var(--dr2-text,#223449)!important;
  font:400 13px/1.4 Inter,'Segoe UI',system-ui,sans-serif!important;padding:10px 12px!important;
}
body[data-dr-login-motion] form input[type=password] {padding-right:64px!important}
body[data-dr-login-motion] form :is(input,select):focus-visible {outline:2px solid var(--dr2-primary,#126b85)!important;outline-offset:2px}
body[data-dr-login-motion] form :is(button[type=submit],input[type=submit],#submitBtn) {
  min-height:44px!important;border:0!important;border-radius:10px!important;width:100%;
  padding:11px 16px!important;font:650 14px/1.4 Inter,'Segoe UI',system-ui,sans-serif!important;
  background:var(--dr2-primary,#126b85)!important;color:#fff!important;
  box-shadow:0 5px 14px #126b8520!important;
}
body[data-dr-login-motion] form :is(button[type=submit],input[type=submit],#submitBtn):disabled {opacity:.6;cursor:not-allowed}
body[data-dr-login-motion="quala"] form :is(input:not([type=hidden]),select) {min-height:38px!important;height:38px!important}
body[data-dr-login-motion] .dr-motion-panel {
  position:relative!important; isolation:isolate; box-sizing:border-box;
  padding:clamp(24px,4vw,64px)!important; min-width:0; min-height:0!important;
  background:linear-gradient(135deg,#d9efec 0%,#e4ecf9 52%,#eee3f5 100%)!important;
  color:#183448!important; border-color:#cbdde4!important;
  display:flex!important; align-items:center; justify-content:center!important;
}
body[data-dr-login-motion] .dr-motion-panel::before,
body[data-dr-login-motion] .dr-motion-panel::after{content:none!important}
body[data-dr-login-motion] .dr-motion-content{width:100%;max-width:650px;position:relative;z-index:1}
body[data-dr-login-motion] .dr-motion-system{
  display:block!important;margin:0 0 18px!important;padding:0!important;
  font:700 12px/1.4 system-ui,sans-serif!important;text-transform:uppercase;
  letter-spacing:.18em;color:#176c71!important;text-align:left!important;
}
body[data-dr-login-motion] .dr-motion-title{
  display:block!important;margin:0!important;padding:0!important;max-width:17ch;
  font-family:inherit;font-size:clamp(28px,3vw,46px)!important;line-height:1.12!important;
  letter-spacing:-.035em!important;font-weight:750!important;color:#183448!important;text-align:left!important;
}
body[data-dr-login-motion] .dr-login-merge{
  --dr-merge-height:clamp(220px,29vh,310px);
  position:relative;width:100%;height:var(--dr-merge-height);
  margin:clamp(24px,4vh,46px) 0 0;isolation:auto;
}
body[data-dr-login-motion] .dr-login-merge::before{
  content:'';position:absolute;inset:-24px -12px;border-radius:50%;z-index:-1;
  background:radial-gradient(ellipse,#a8d6d680,transparent 68%);
}
body[data-dr-login-motion] .dr-merge-mark{
  box-sizing:border-box;position:absolute;top:50%;width:44%;aspect-ratio:1.15;
  translate:0 -50%;min-width:0;padding:14px;
  background:transparent!important;will-change:auto;
}
/* Keep the complete mark inside its reserved stage, including short viewports. */
body[data-dr-login-motion] .dr-merge-fusion{left:50%;translate:-50% -50%;width:min(68%,300px,var(--dr-merge-height));max-width:300px;aspect-ratio:1;padding:0;mix-blend-mode:normal}
body[data-dr-login-motion] .dr-merge-fusion>.dr-merge-whole{border-radius:24px!important;box-shadow:0 16px 40px #36547712!important}
body[data-dr-login-motion] .dr-merge-whole{border-radius:12px!important}
body[data-dr-login-motion] .dr-merge-mark img{
  display:block!important;width:100%!important;height:100%!important;max-width:100%!important;
  max-height:100%!important;margin:0!important;padding:0!important;object-fit:contain!important;
  border:0!important;border-radius:0!important;filter:none!important;transform:none!important;
  background:white!important;box-shadow:none!important;
}
/* Real logo geometry moves continuously: no bitmap fragments or clip masks. */
body[data-dr-login-motion] .dr-logo-vectors{position:absolute;inset:0;display:block!important;width:100%!important;height:100%!important;overflow:visible;opacity:0;pointer-events:none}
.dr-vector-resource{transform:translate(25px,70px) scale(.82);transform-origin:0 0}
.dr-vector-solutions{transform:translate(455px,70px) scale(.82);transform-origin:0 0}
.dr-vector-fused-links{opacity:0;stroke-dasharray:250;stroke-dashoffset:250}
.dr-motion-ready .dr-logo-vectors{animation:dr-vector-stage 4.8s linear both}
.dr-motion-ready .dr-vector-resource{animation:dr-resource-join 4.8s cubic-bezier(.42,0,.22,1) both}
.dr-motion-ready .dr-vector-solutions{animation:dr-solutions-join 4.8s cubic-bezier(.42,0,.22,1) both}
.dr-motion-ready .dr-vector-frame{animation:dr-frame-union 4.8s ease both}
.dr-motion-ready .dr-vector-original-links{animation:dr-links-reflow 4.8s ease both}
.dr-motion-ready .dr-vector-fused-links{animation:dr-links-connect 4.8s ease both}
.dr-motion-ready .dr-vector-node{animation:dr-node-move 4.8s cubic-bezier(.42,0,.22,1) both}
.dr-node-0{--node-x:-6px;--node-y:22px}
.dr-node-1{--node-x:-35px;--node-y:24px}
.dr-node-2{--node-x:-98px;--node-y:22px}
.dr-node-3{--node-x:-28px;--node-y:21px}
.dr-node-4{--node-x:-58px;--node-y:-54px}
.dr-motion-ready .dr-merge-fusion>.dr-merge-whole{animation:dr-approved-mark 4.8s ease both}
body[data-dr-login-motion] .dr-motion-fallback .dr-logo-vectors{opacity:1}
body[data-dr-login-motion] .dr-motion-fallback .dr-merge-fusion{visibility:hidden}
@keyframes dr-vector-stage{0%,78%{opacity:1}94%,100%{opacity:0}}
@keyframes dr-resource-join{0%,18%{transform:translate(25px,70px) scale(.82)}72%,100%{transform:translate(204px,12px) scale(1.15)}}
@keyframes dr-solutions-join{0%,18%{transform:translate(455px,70px) scale(.82)}72%,100%{transform:translate(204px,12px) scale(1.15)}}
@keyframes dr-frame-union{0%,42%{opacity:1}72%,100%{opacity:0}}
@keyframes dr-links-reflow{0%,35%{opacity:1}65%,100%{opacity:0}}
@keyframes dr-links-connect{0%,38%{opacity:0;stroke-dashoffset:250}72%,100%{opacity:1;stroke-dashoffset:0}}
@keyframes dr-node-move{0%,25%{transform:translate(0,0);stroke:#60b9d8}72%,100%{transform:translate(var(--node-x),var(--node-y));stroke:#219aaa}}
@keyframes dr-approved-mark{0%,78%{opacity:0}94%,100%{opacity:1}}
/* A single-card login receives a companion panel; the original card stays intact. */
body[data-dr-login-motion] .dr-motion-shell{
  display:grid;grid-template-columns:1.1fr 1fr;width:min(1120px,100%);margin:auto;
  border:1px solid var(--dr2-line,#cbdde4);border-radius:24px;background:var(--dr2-surface,#f8fafb);
  position:relative;z-index:1;min-width:0;box-shadow:0 20px 65px #36547715;
}
body[data-dr-login-motion] .dr-motion-shell>.dr-motion-panel{border-radius:24px 0 0 24px}
body[data-dr-login-motion] .dr-motion-shell>.dr-motion-form{
  width:100%!important;max-width:none!important;min-width:0!important;min-height:0!important;
  margin:0!important;box-shadow:none!important;border:0!important;border-radius:0 24px 24px 0;
  align-self:center;box-sizing:border-box;transform:none!important;
}
body[data-dr-login-motion] .login-wrap:has(>.dr-motion-shell){width:100%!important;max-width:1120px!important;margin-inline:auto!important}
html:has(body[data-dr-login-motion]),body[data-dr-login-motion]{height:auto!important;min-height:100dvh;max-height:none!important;overflow:auto!important}
body[data-dr-login-motion] .shell{height:auto!important;min-height:min(660px,calc(100dvh - 28px))!important;max-height:none!important;overflow:visible!important}
body[data-dr-login-motion] .shell>.login{overflow:visible!important;max-height:none!important}
/* Keep decoration out of the way of credentials on narrow screens. */
@media(max-width:980px){
  body[data-dr-login-motion] .dr-motion-panel{display:none!important}
  body[data-dr-login-motion] .dr-motion-shell{display:block;max-width:500px}
  body[data-dr-login-motion] .dr-motion-shell>.dr-motion-form{border-radius:24px}
}
@media(max-height:760px) and (min-width:981px){
  body[data-dr-login-motion] .dr-motion-panel{padding:28px!important}
  body[data-dr-login-motion] .dr-motion-title{font-size:clamp(26px,2.5vw,36px)!important}
  body[data-dr-login-motion] .dr-login-merge{margin-top:26px}
  body[data-dr-login-motion] .dr-login-merge{--dr-merge-height:220px}
}
@media(prefers-reduced-motion:reduce){
  body[data-dr-login-motion] .dr-login-merge *{animation:none!important;transform:none!important}
  body[data-dr-login-motion] .dr-logo-vectors{visibility:hidden!important;opacity:0!important}
  body[data-dr-login-motion] .dr-merge-fusion>.dr-merge-whole{visibility:visible!important;opacity:1!important}
}
