
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#eef3f8;color:#18324a}
body:before{content:"";position:fixed;inset:0;background:
linear-gradient(135deg,rgba(28,113,180,.08) 0 18%,transparent 18% 65%,rgba(28,113,180,.07) 65% 78%,transparent 78%);z-index:-1}
.shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:28px}
.card{width:100%;max-width:460px;background:rgba(255,255,255,.97);border:1px solid #dbe5ee;border-radius:15px;
box-shadow:0 18px 45px rgba(22,54,80,.16);padding:0;overflow:hidden}

h2{font-size:20px;margin:0 0 7px;text-align:center} .sub{text-align:center;color:#70879a;font-size:13px;margin:0 0 24px}
label{display:block;font-size:12px;font-weight:bold;margin:14px 0 7px;color:#35556d}
input{width:100%;height:44px;border:1px solid #cbd9e4;border-radius:7px;padding:0 12px;font-size:14px;outline:none}
input:focus{border-color:#1683d8;box-shadow:0 0 0 3px rgba(22,131,216,.10)}
.password-wrap{position:relative}.password-wrap input{padding-right:48px}.eye{position:absolute;right:5px;top:5px;height:34px;width:38px;
border:0;background:transparent;color:#537188;cursor:pointer;font-size:18px}
.btn{width:100%;height:45px;border:0;border-radius:7px;background:#0879cf;color:white;font-weight:bold;font-size:14px;cursor:pointer;margin-top:20px}
.btn:hover{background:#066dbb}.btn.secondary{background:#e8f1f8;color:#14547f}
.msg{padding:11px 12px;border-radius:7px;font-size:13px;margin:14px 0}.error{background:#fff1f1;color:#a63838;border:1px solid #f2cccc}
.ok{background:#eef9f1;color:#28713a;border:1px solid #cde9d4}.linkbox{word-break:break-all;background:#f5f8fb;border:1px solid #dbe5ee;padding:12px;border-radius:7px;font-size:12px}
.footer{text-align:center;color:#7b8f9e;font-size:11px;margin-top:25px}.row{display:flex;gap:10px}.row>*{flex:1}
a{color:#0879cf;text-decoration:none}

.login-body{padding:30px 34px 34px}
.login-body h2{margin-top:0}

/* v0.4.1 — correção exclusiva do login:
   cabeçalho institucional passa a ser parte do card, sem "caixa dentro da caixa". */
.card{
  max-width:460px;
  padding:0 !important;
  overflow:hidden;
  border-radius:15px;
}
.card > .ups-brand--login{
  width:100%;
  margin:0;
  border-radius:0 !important;
  padding:31px 30px 28px;
}
.login-body{
  padding:30px 34px 34px;
}
.login-body h2{
  margin:0 0 4px;
}
.login-body .sub{
  margin-top:0;
  margin-bottom:24px;
}
