/* Stomaris — autentificare, aliniata cu interfata aplicatiei. */
body.login-page{
 margin:0;background:radial-gradient(ellipse at 12% 5%,rgba(0,138,171,.09),transparent 48%),radial-gradient(ellipse at 95% 85%,rgba(0,51,128,.06),transparent 46%),#f5f7fa;
 color:#172033;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.login-page .app{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
.login-page .login-main{flex:1;display:flex;align-items:center;justify-content:center;width:100%;max-width:none;margin:0;padding:36px 20px;background:transparent;box-sizing:border-box}
.login-page .login-wrap{width:100%;max-width:460px;margin:0;padding:0;box-sizing:border-box}
.login-page .login-card{position:relative;overflow:hidden;padding:32px;background:#fff;border:1px solid #dfe8f1;border-radius:16px;box-shadow:0 16px 44px rgba(15,23,42,.07);box-sizing:border-box}
.login-page .login-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#003380,#008aab,#2ad4ff)}
.login-page .login-top{display:flex;align-items:center;gap:15px;margin:0 0 28px}
.login-page .login-top>div{min-width:0}
.login-page .login-logo{width:68px;height:68px;object-fit:contain;flex:0 0 68px}
.login-page .login-title{margin:0;color:#172033;font-size:25px;font-weight:750;line-height:1.2;letter-spacing:-.025em}
.login-page .login-sub{margin-top:6px;color:#68768a;font-size:13px;font-weight:500;line-height:1.5}
.login-page .login-form{display:grid;gap:18px;margin:0}
.login-page .login-form label{display:block;margin:0 0 7px;font-size:13px;font-weight:650;line-height:1.5;color:#334155}
.login-page .login-form input:not([type="hidden"]){display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 13px;border:1px solid #d7e2ee;border-radius:10px;background:#fbfdff;color:#172033;font:inherit;font-size:16px;outline:none;box-shadow:none;transition:border-color .15s,box-shadow .15s,background .15s}
.login-page .login-form input:focus{border-color:#008aab;background:#fff;box-shadow:0 0 0 3px rgba(0,138,171,.13)}
.login-page .login-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:46px;padding:11px 16px;border:1px solid #007c99;border-radius:10px;background:#008aab;color:#fff;font:inherit;font-size:14px;font-weight:650;box-shadow:0 5px 14px rgba(0,138,171,.16);cursor:pointer;transition:background .15s,box-shadow .15s}
.login-page .login-btn:hover:not(:disabled){background:#007893;opacity:1;box-shadow:0 7px 18px rgba(0,138,171,.2)}
.login-page .login-btn:focus-visible{outline:3px solid rgba(0,138,171,.28);outline-offset:3px}
.login-page .login-btn:disabled,.login-page .login-form input:disabled{opacity:.6;cursor:not-allowed}
.login-page .login-foot{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:3px 0 0;padding-top:17px;border-top:1px solid #edf1f5;font-size:13px;line-height:1.5}
.login-page .login-foot a{color:#003380;font-weight:600;text-decoration:none}
.login-page .login-foot a:hover{text-decoration:underline;color:#008aab}
.login-page .login-foot a:focus-visible{outline:2px solid #008aab;outline-offset:3px;border-radius:3px}
.login-page .login-foot>span{color:#b0becd}
.login-page .login-success{padding:12px 14px;margin:0 0 18px;border:1px solid #bbdfd5;border-radius:10px;background:#effaf6;color:#17634d;font-size:13px;line-height:1.6}
.login-page .results-bar{margin-bottom:18px;padding:12px 14px;border:1px solid #f1d7ad;border-radius:10px;background:#fff9ee;color:#805721;font-size:13px;line-height:1.6}
.login-page .results-left{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.login-page .results-left .chip{max-width:100%;white-space:normal;overflow-wrap:anywhere;background:transparent;border:0;padding:0;font-size:13px}
.login-page .app-footer{flex-shrink:0;background:transparent;border-top:0;color:#68768a;font-size:12px}
@media(max-width:520px){
 .login-page .login-main{padding:24px 16px}
 .login-page .login-card{padding:26px 22px;border-radius:14px}
 .login-page .login-top{gap:12px;margin-bottom:24px}
 .login-page .login-logo{width:58px;height:58px;flex-basis:58px}
 .login-page .login-title{font-size:23px}
 .login-page .login-sub{font-size:12px}
 .login-page .login-foot{font-size:12px;gap:7px}
 .login-page .footer-inner{flex-wrap:wrap;justify-content:center;gap:5px 12px;text-align:center}
}
@media(prefers-reduced-motion:reduce){.login-page .login-btn,.login-page .login-form input{transition:none}}
