.portal-login-wrapper{perspective:1000px;background-color:#0a1929;background-image:linear-gradient(90deg,#0000 65%,#0b2b52cc 65%),linear-gradient(90deg,#0000 35%,#0d326080 35% 65%,#0000 65%),linear-gradient(#0000 85%,#081e3c99 85% 100%),linear-gradient(90deg,#0a264b66 0% 20%,#0000 20%);background-size:200% 200%;justify-content:center;align-items:center;min-height:100vh;padding:20px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;animation:25s ease-in-out infinite alternate shiftGeometric;display:flex;position:relative;overflow:hidden}@keyframes shiftGeometric{0%{background-position:0 0}25%{background-position:100% 20%}50%{background-position:50% 100%}75%{background-position:20%}to{background-position:0 0}}.portal-ambient-orb{display:none}.portal-login-card{z-index:10;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-sizing:border-box;opacity:0;width:100%;max-width:440px;transform-style:preserve-3d;background:#fffffff2;border:1px solid #fff9;border-radius:0;padding:48px 40px;animation:1.2s cubic-bezier(.16,1,.3,1) forwards cardEntry;position:relative;box-shadow:0 20px 40px -10px #00000014,0 10px 15px -3px #0000000a,inset 0 0 0 1px #ffffff80}@keyframes cardEntry{0%{opacity:0;transform:translateY(60px)rotateX(15deg)scale(.9)}to{opacity:1;transform:translateY(0)rotateX(0)scale(1)}}.portal-login-logo{justify-content:center;align-items:center;margin-bottom:32px;display:flex}.portal-login-logo img{object-fit:contain;height:64px}.portal-login-header{text-align:center;margin-bottom:32px}.portal-login-header h2{color:#111827;letter-spacing:-.5px;margin:0 0 8px;font-size:28px;font-weight:700}.portal-login-header p{color:#6b7280;margin:0;font-size:15px}.portal-form-group.floating{margin-bottom:24px;position:relative}.portal-form-group.floating input{color:#111827;box-sizing:border-box;background-color:#f9fafbcc;border:1.5px solid #e5e7eb;border-radius:0;width:100%;height:56px;padding:24px 16px 8px;font-size:15px;transition:all .3s cubic-bezier(.4,0,.2,1)}.portal-form-group.floating input:focus{background-color:#fff;border-color:#0068b5;outline:none;transform:translateY(-1px);box-shadow:0 0 0 4px #0068b51a,0 4px 12px #0000000d}.portal-form-group.floating label{color:#6b7280;pointer-events:none;margin:0;font-size:15px;font-weight:400;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;top:18px;left:16px}.portal-form-group.floating input:focus+label,.portal-form-group.floating input:not(:placeholder-shown)+label{color:#0068b5;font-size:11px;font-weight:600;top:8px}.portal-btn-primary{color:#fff;cursor:pointer;background-color:#0068b5;background-image:linear-gradient(135deg,#0068b5 0%,#00508a 100%);border:none;border-radius:0;justify-content:center;align-items:center;width:100%;margin-top:8px;padding:16px;font-size:16px;font-weight:600;transition:all .4s cubic-bezier(.34,1.56,.64,1);display:flex;position:relative;overflow:hidden}.portal-btn-primary:after{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:50%;height:100%;transition:all .5s;position:absolute;top:0;left:-100%;transform:skew(-20deg)}.portal-btn-primary:hover:after{left:150%}.portal-btn-primary:hover{transform:translateY(-2px)scale(1.02);box-shadow:0 8px 20px #0068b54d}.portal-btn-primary:active{transition:all .1s;transform:translateY(1px)scale(.96);box-shadow:0 4px 10px #0068b533}.portal-btn-primary:disabled{cursor:not-allowed;box-shadow:none;background:#9ca3af;transform:none}.portal-footer{text-align:center;justify-content:center;align-items:center;gap:16px;margin-top:32px;display:flex}.portal-lang-switcher{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:20px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .3s;display:flex}.portal-lang-switcher:hover{color:#111827;background-color:#f3f4f6cc;transform:translateY(-1px)}.portal-error-message{color:#1c1e21;text-align:left;background-color:#ffebe8;border:1px solid #dd3c10;border-radius:0;margin-bottom:24px;padding:12px;font-family:inherit;font-size:13px;font-weight:400;line-height:1.4;display:block}.portal-error-title{margin-bottom:4px;font-size:14px;font-weight:700}@keyframes shakeError{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-8px)}40%,60%{transform:translate(8px)}}.portal-login-logo{opacity:0;animation:.8s cubic-bezier(.34,1.56,.64,1) .2s forwards springReveal}.portal-login-header{opacity:0;animation:.8s cubic-bezier(.34,1.56,.64,1) .3s forwards springReveal}.portal-form-group:first-child{opacity:0;animation:.8s cubic-bezier(.34,1.56,.64,1) .4s forwards springReveal}.portal-form-group:nth-child(2){opacity:0;animation:.8s cubic-bezier(.34,1.56,.64,1) .5s forwards springReveal}.portal-btn-primary{opacity:0;animation:.8s cubic-bezier(.34,1.56,.64,1) .6s forwards springReveal}.portal-footer{opacity:0;animation:.8s cubic-bezier(.34,1.56,.64,1) .7s forwards springReveal}@keyframes springReveal{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:480px){.portal-login-wrapper{padding:16px}.portal-login-card{border-radius:0;padding:32px 24px}.portal-login-header h2{font-size:24px}.portal-login-header p{font-size:14px}.portal-form-group.floating input{height:52px;padding:20px 14px 6px;font-size:14px}.portal-form-group.floating label{font-size:14px;top:16px;left:14px}.portal-form-group.floating input:focus+label,.portal-form-group.floating input:not(:placeholder-shown)+label{font-size:11px;top:6px}.portal-login-logo{margin-bottom:24px}.portal-login-logo img{height:48px}.portal-btn-primary{padding:14px;font-size:15px}}
