
.login-role-note{margin-top:14px;padding:10px 12px;border-radius:11px;background:#f7f8fb;border:1px solid #e5e9ef;color:#687587;font-size:11px;line-height:1.8}.login-role-note b{color:#7b1937}.login-card .portal-entry-badge{display:inline-flex;align-items:center;gap:6px;background:#f8edf1;color:#7b1937;border:1px solid #eed8e0;border-radius:999px;padding:5px 10px;font-size:10px;font-weight:800;margin-bottom:8px}


.login-visual{
  padding:22px!important;
  background:
    radial-gradient(circle at 53% 37%,rgba(0,211,253,.11),transparent 26%),
    radial-gradient(circle at 8% 83%,rgba(196,23,64,.16),transparent 27%),
    linear-gradient(145deg,#041424 0%,#071d32 58%,#082840 100%)!important;
}
.login-visual:after{
  background:
    linear-gradient(160deg,transparent 58%,rgba(143,18,51,.12)),
    linear-gradient(rgba(0,211,253,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,211,253,.035) 1px,transparent 1px)!important;
  background-size:auto,74px 74px,74px 74px!important;
  opacity:1!important;
}
.ravasa-login-orbital{
  position:relative;
  z-index:2;
  width:min(92%,720px);
  aspect-ratio:4/5;
  display:grid;
  place-items:center;
}
.ravasa-login-orbital-glow{
  position:absolute;
  inset:13% 13%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(0,211,253,.18),rgba(0,211,253,.035) 42%,transparent 70%);
  filter:blur(24px);
  animation:ravasaPortalGlow 5.6s ease-in-out infinite;
}
.ravasa-login-orbital-frame{
  position:relative;
  width:100%;
  height:100%;
  overflow:hidden;
  border-radius:28px;
  animation:ravasaPortalFloat 6.8s ease-in-out infinite;
  filter:drop-shadow(0 28px 42px rgba(0,0,0,.28));
}
.ravasa-login-orbital-frame img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center center;
  transform:scale(1.01);
  animation:ravasaPortalBreath 9s ease-in-out infinite;
}
.ravasa-login-orbital-sweep{
  position:absolute;
  inset:-22%;
  pointer-events:none;
  background:linear-gradient(116deg,transparent 43%,rgba(148,232,255,.08) 49%,rgba(148,232,255,.02) 52%,transparent 58%);
  transform:translateX(-70%);
  animation:ravasaPortalSweep 8.5s ease-in-out infinite;
}
@keyframes ravasaPortalFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}
@keyframes ravasaPortalBreath{
  0%,100%{transform:scale(1.01)}
  50%{transform:scale(1.035)}
}
@keyframes ravasaPortalGlow{
  0%,100%{opacity:.58;transform:scale(.98)}
  50%{opacity:1;transform:scale(1.05)}
}
@keyframes ravasaPortalSweep{
  0%,18%{transform:translateX(-72%);opacity:.16}
  50%{transform:translateX(44%);opacity:.65}
  82%,100%{transform:translateX(72%);opacity:.12}
}
@media(max-width:1100px){
  .ravasa-login-orbital{width:min(96%,620px)}
}
@media(max-width:700px){
  .login-visual{min-height:360px!important;padding:12px!important}
  .ravasa-login-orbital{width:min(92vw,440px);aspect-ratio:4/4.6}
  .ravasa-login-orbital-frame{border-radius:20px}
}
@media(prefers-reduced-motion:reduce){
  .ravasa-login-orbital-glow,.ravasa-login-orbital-frame,.ravasa-login-orbital-frame img,.ravasa-login-orbital-sweep{animation:none!important}
}


body.login-page{
  min-height:100vh!important;
  height:100vh;
  overflow:hidden;
  grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr)!important;
  background:#eef2f6!important
}
body.login-page .login-visual.portal-orbit-pane{
  position:relative;
  min-height:100vh;
  height:100vh;
  padding:0!important;
  display:block!important;
  overflow:hidden;
  text-align:initial!important;
  background:
    radial-gradient(circle at 70% 18%,rgba(0,211,253,.13),transparent 28%),
    radial-gradient(circle at 8% 86%,rgba(192,24,61,.22),transparent 32%),
    linear-gradient(145deg,#03101d 0%,#061a2e 54%,#0a2b47 100%)!important
}
body.login-page .login-visual.portal-orbit-pane:after{display:none!important}
.pol-grid{position:absolute;inset:0;pointer-events:none;opacity:.19;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:64px 64px}
.pol-glow{position:absolute;border-radius:50%;filter:blur(72px);pointer-events:none}.pol-glow-cyan{width:360px;height:360px;right:-90px;top:-70px;background:rgba(0,211,253,.15);animation:polGlowCyan 8s ease-in-out infinite}.pol-glow-red{width:300px;height:300px;left:-90px;bottom:-80px;background:rgba(200,28,62,.20);animation:polGlowRed 9s ease-in-out infinite}
/* EXACT CENTER OF THE VISUAL PANEL */
.pol-scene{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(82%,700px);height:min(82vh,700px);direction:ltr;transition:transform .18s ease-out}
.pol-ring,.pol-ellipse{position:absolute;left:50%;top:50%;border-radius:50%;transform-origin:center center;pointer-events:none}.pol-ring{border:1px solid rgba(87,215,255,.16)}
.pol-ring-1{width:230px;height:230px;margin:-115px 0 0 -115px;border-color:rgba(255,255,255,.16);animation:polSpin 17s linear infinite}
.pol-ring-2{width:335px;height:335px;margin:-167.5px 0 0 -167.5px;border-color:rgba(0,211,253,.20);animation:polSpinRev 23s linear infinite}
.pol-ring-3{width:455px;height:455px;margin:-227.5px 0 0 -227.5px;border-color:rgba(255,255,255,.12);animation:polSpin 31s linear infinite}
.pol-ring-4{width:565px;height:565px;margin:-282.5px 0 0 -282.5px;border:1px dotted rgba(0,211,253,.24);animation:polSpinRev 37s linear infinite}
.pol-ellipse{width:600px;height:265px;margin:-132.5px 0 0 -300px;border:1px solid rgba(0,211,253,.26)}.pol-ellipse-a{transform:rotate(-12deg);animation:polEllipseA 28s linear infinite}.pol-ellipse-b{transform:rotate(27deg);border-color:rgba(118,226,255,.14);animation:polEllipseB 34s linear infinite}
.pol-dot{position:absolute;display:block;width:14px;height:14px;border-radius:50%;top:50%;left:100%;transform:translate(-50%,-50%);box-shadow:0 0 0 8px rgba(255,255,255,.025)}.pol-dot.cyan{background:#00D3FD;box-shadow:0 0 18px rgba(0,211,253,.88),0 0 0 9px rgba(0,211,253,.06)}.pol-dot.red{background:#ff405e;box-shadow:0 0 18px rgba(255,64,94,.82),0 0 0 9px rgba(255,64,94,.06)}.pol-dot.white{background:#f4fbff;box-shadow:0 0 18px rgba(244,251,255,.75),0 0 0 9px rgba(255,255,255,.04)}.d2{width:11px;height:11px}.d3{width:13px;height:13px}.d4{width:10px;height:10px}.da,.db{width:11px;height:11px}
.pol-core{position:absolute;left:50%;top:50%;width:220px;height:220px;margin:-110px 0 0 -110px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:radial-gradient(circle at 50% 45%,rgba(14,56,88,.96),rgba(4,19,33,.98) 68%);border:1px solid rgba(104,220,255,.28);box-shadow:0 0 0 10px rgba(0,211,253,.03),0 0 44px rgba(0,211,253,.13),inset 0 0 38px rgba(0,211,253,.07);z-index:5}
.pol-core-aura{position:absolute;inset:-15px;border-radius:50%;border:1px solid rgba(0,211,253,.24);animation:polPulse 3.6s ease-in-out infinite}
.pol-core img{width:128px;height:128px;object-fit:cover;object-position:center center;display:block;border-radius:18px;filter:drop-shadow(0 14px 24px rgba(0,0,0,.28))}
.pol-core strong{margin-top:8px;color:#d8e8f3;font:800 11px/1 Arial,sans-serif;letter-spacing:3px}.pol-core small{margin-top:8px;color:#00D3FD;font:800 8px/1 Arial,sans-serif;letter-spacing:2px}
.pol-label{position:absolute;z-index:8;min-height:46px;padding:0 16px;display:flex;align-items:center;gap:10px;border-radius:999px;background:rgba(4,19,33,.68);border:1px solid rgba(255,255,255,.15);color:#edf8fd;backdrop-filter:blur(12px);box-shadow:0 8px 24px rgba(0,0,0,.16);direction:rtl;font-weight:900;font-size:15px;white-space:nowrap;animation:polLabelFloat 5.2s ease-in-out infinite}.pol-label i{flex:0 0 16px;width:16px;height:16px;border-radius:50%;background:#00D3FD;box-shadow:0 0 15px rgba(0,211,253,.75),0 0 0 7px rgba(0,211,253,.08)}
.pol-label-secure{right:2%;top:18%;animation-delay:-.8s}.pol-label-clients{left:2%;top:16%;animation-delay:-1.8s}.pol-label-partners{right:1%;bottom:22%;animation-delay:-2.7s}.pol-label-coordinators{left:35%;bottom:7%;animation-delay:-3.4s}.pol-label-providers{left:-1%;bottom:24%;animation-delay:-4.1s}.pol-label-providers i{background:#ff405e;box-shadow:0 0 15px rgba(255,64,94,.76),0 0 0 7px rgba(255,64,94,.07)}
.pol-footer-line{position:absolute;left:50%;bottom:0;transform:translateX(-50%);display:flex;gap:12px;align-items:center;color:#8198aa;font:800 10px/1 Arial,sans-serif;letter-spacing:2px;white-space:nowrap}.pol-footer-line b{color:#00D3FD}
body.login-page .login-box{min-height:100vh;height:100vh;padding:32px!important;overflow:auto;background:linear-gradient(180deg,#f4f6f9,#eef2f6)}body.login-page .login-card{margin:auto}
@keyframes polSpin{to{transform:rotate(360deg)}}@keyframes polSpinRev{to{transform:rotate(-360deg)}}@keyframes polEllipseA{from{transform:rotate(-12deg)}to{transform:rotate(348deg)}}@keyframes polEllipseB{from{transform:rotate(27deg)}to{transform:rotate(-333deg)}}@keyframes polPulse{0%,100%{transform:scale(1);opacity:.42}50%{transform:scale(1.045);opacity:1}}@keyframes polLabelFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes polGlowCyan{0%,100%{transform:translate(0,0)}50%{transform:translate(-25px,16px)}}@keyframes polGlowRed{0%,100%{transform:translate(0,0)}50%{transform:translate(20px,-14px)}}
@media(max-height:760px) and (min-width:701px){.pol-scene{width:min(80%,620px);height:min(80vh,620px);top:50%}.pol-ring-4{width:500px;height:500px;margin:-250px 0 0 -250px}.pol-ring-3{width:400px;height:400px;margin:-200px 0 0 -200px}.pol-ring-2{width:305px;height:305px;margin:-152.5px 0 0 -152.5px}.pol-ring-1{width:210px;height:210px;margin:-105px 0 0 -105px}.pol-ellipse{width:520px;height:225px;margin:-112.5px 0 0 -260px}.pol-core{width:188px;height:188px;margin:-94px 0 0 -94px}.pol-core img{width:106px;height:106px}.pol-label{min-height:40px;font-size:13px;padding:0 13px}}
@media(max-width:700px){body.login-page{height:auto;min-height:100vh;overflow:auto;grid-template-columns:1fr!important}body.login-page .login-visual.portal-orbit-pane{min-height:430px!important;height:430px!important;padding:0!important}.pol-scene{width:94%;height:390px;top:50%;left:50%;transform:translate(-50%,-50%)}.pol-ring-4{width:345px;height:345px;margin:-172.5px 0 0 -172.5px}.pol-ring-3{width:290px;height:290px;margin:-145px 0 0 -145px}.pol-ring-2{width:225px;height:225px;margin:-112.5px 0 0 -112.5px}.pol-ring-1{width:162px;height:162px;margin:-81px 0 0 -81px}.pol-ellipse{width:360px;height:160px;margin:-80px 0 0 -180px}.pol-core{width:136px;height:136px;margin:-68px 0 0 -68px}.pol-core img{width:78px;height:78px}.pol-core strong{font-size:7px;letter-spacing:2px}.pol-core small{font-size:6px}.pol-label{min-height:32px;padding:0 9px;font-size:10px;gap:7px}.pol-label i{width:10px;height:10px;flex-basis:10px}.pol-label-secure{right:1%;top:20%}.pol-label-clients{left:1%;top:18%}.pol-label-partners{right:1%;bottom:20%}.pol-label-coordinators{left:33%;bottom:5%}.pol-label-providers{left:0;bottom:21%}.pol-footer-line{display:none}body.login-page .login-box{min-height:auto;height:auto;padding:22px 14px 34px!important}}
@media(prefers-reduced-motion:reduce){.pol-ring,.pol-ellipse,.pol-core-aura,.pol-label,.pol-glow{animation:none!important}}

.ravasa-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;margin-bottom:24px;border:1px solid #e2e7ef;border-radius:13px;background:#f3f5f8}.ravasa-auth-tabs a{padding:10px 5px;border-radius:9px;text-align:center;color:#52647c;text-decoration:none;font-size:13px;font-weight:800;line-height:1.6}.ravasa-auth-tabs a[aria-current=page]{background:#fff;color:#7b1937;box-shadow:0 2px 8px rgba(15,37,61,.08)}.ravasa-auth-tabs a:focus-visible{outline:2px solid #00aaca;outline-offset:2px}.portal-register-card .rap-card{padding:0;margin:0;border:0;background:none;box-shadow:none}.portal-register-intro p{line-height:1.9;margin-bottom:20px}.portal-register-card .rap-form>label:not(.rap-check){display:block;margin:14px 0 7px;font-weight:800;color:#465970;font-size:13px}.portal-register-card .rap-form>input:not([type=hidden]),.portal-register-card .rap-form>select{width:100%;border:1px solid #d8e0e8;border-radius:12px;background:#fff;padding:12px 13px;font:inherit;color:#22364d;outline:none;min-height:44px}.portal-register-card .rap-form>input:focus,.portal-register-card .rap-form>select:focus{border-color:#9e3856;box-shadow:0 0 0 3px rgba(143,18,51,.08)}.portal-register-card .rap-check{display:flex;gap:8px;align-items:flex-start;margin:14px 0;font-size:12px;line-height:1.9}.portal-register-card .rap-check input{flex:none;width:16px;height:16px;margin:4px 0 0;accent-color:#7b1937}.portal-register-card .rap-btn{display:block;width:100%;padding:12px 16px;background:linear-gradient(135deg,#8f1233,#75122d);border:0;border-radius:11px;color:#fff;font:inherit;font-weight:800;text-align:center;cursor:pointer;text-decoration:none;margin:16px 0}.portal-register-card .rap-alert{padding:11px 13px;border-radius:11px;background:#f7f8fb;border:1px solid #e5e9ef;color:#687587;font-size:12px;line-height:1.9;margin:14px 0}.portal-register-card .rap-alert.error{background:#fff0f2;border-color:#e3b2bf;color:#8f1233}.portal-register-card .rap-alert.success{background:#edf9f4;color:#205c45;border-color:#c0ddcf}.portal-register-card .rap-disclaimer{margin-top:16px;font-size:11px;line-height:1.9;color:#687587}.portal-register-card .ltr{direction:ltr;text-align:left}.portal-register-card .rap-otp{font-size:24px!important;letter-spacing:6px}.portal-register-card .rap-success b{overflow-wrap:anywhere}body.login-page .login-box{align-items:safe center}.login-card a{overflow-wrap:anywhere}@media(max-width:700px){body.login-page .login-card{padding:24px 20px;border-radius:20px}.portal-register-intro h2{font-size:24px}.portal-register-card .rap-form>input,.portal-register-card .rap-form>select{font-size:16px!important}}@media(min-width:701px) and (max-width:980px){body.login-page{grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr)!important}}html[data-theme=dark] body.login-page .login-box{background:linear-gradient(180deg,#101d30,#0b1728)}html[data-theme=dark] .login-card{background:#14243a;color:#e7eef7;border-color:#2d415b}html[data-theme=dark] .login-card h2,html[data-theme=dark] .login-card .field label,html[data-theme=dark] .portal-register-card .rap-form>label{color:#e7eef7}html[data-theme=dark] .login-card .muted,html[data-theme=dark] .portal-register-card .rap-disclaimer{color:#a9bbd2}html[data-theme=dark] .ravasa-auth-tabs,html[data-theme=dark] .login-role-note,html[data-theme=dark] .portal-register-card .rap-alert{background:#1b2f49;border-color:#344963;color:#b9c9df}html[data-theme=dark] .ravasa-auth-tabs a{color:#bccbe0}html[data-theme=dark] .ravasa-auth-tabs a[aria-current=page]{background:#293c55;color:#ffc5d6}html[data-theme=dark] .login-card input,html[data-theme=dark] .portal-register-card .rap-form>select{background:#0f2035;color:#edf4ff;border-color:#40536c}html[data-theme=dark] .login-role-note b{color:#ffc5d6}html[data-theme=dark] .portal-register-card .rap-alert.error{background:#482431;color:#ffd0dc;border-color:#75515e}html[data-theme=dark] .portal-register-card .rap-alert.success{background:#183d34;color:#c7eadb;border-color:#44675c}
