/* Estilos exclusivos do login. Arte original recortada por CSS, sem formulário desenhado. */
*{box-sizing:border-box}html{background:#021025}body.login-page{margin:0;min-height:100vh;color:#f5f7fc;font-family:Arial,"Segoe UI",sans-serif;background:radial-gradient(ellipse at 18% 0%,#06234b 0,transparent 55%),radial-gradient(ellipse at 52% 90%,#06214a 0,transparent 47%),#021025}
.login-layout{max-width:1672px;margin:auto;padding:38px 4.5% 36px;display:grid;grid-template-columns:minmax(0,1.88fr) minmax(340px,1fr);column-gap:42px;align-items:start;min-height:100vh}
.login-brand{grid-column:1/-1;margin-bottom:40px}.login-brand p{margin:0;font-size:32px;font-weight:700;letter-spacing:.3px}.login-brand span{color:#ff791d}.login-brand small{display:block;color:#90b4dc;font-size:14px;margin:5px 0 0 4px}
.login-presentation{min-width:0}.login-presentation h1{font-size:clamp(36px,4.7vw,74px);line-height:1.04;letter-spacing:-1.3px;margin:0 0 14px;font-weight:700}.login-subtitle{font-size:clamp(17px,1.8vw,28px);line-height:1.4;color:#9abce4;margin:0}
.login-art{position:relative;aspect-ratio:1060/555;overflow:hidden;margin:20px -12px 0;isolation:isolate}.login-art img{position:absolute;left:0;top:-68.468468%;width:157.73585%;height:auto;max-width:none;pointer-events:none}
.login-panel{padding:clamp(28px,3.5vw,58px) clamp(26px,3.5vw,58px) 40px;border:1px solid #2a5079;border-radius:18px;background:linear-gradient(135deg,#0b2240a6,#031327cc);min-width:0;min-height:580px}
.login-panel h2{font-size:clamp(25px,2.6vw,42px);line-height:1.12;letter-spacing:-.6px;margin:12px 0 12px;white-space:nowrap}.access-subtitle{color:#8fb0d8;font-size:clamp(16px,1.4vw,23px);line-height:1.4;margin:0 0 44px}
.login-form{display:flex;flex-direction:column;gap:30px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:16px}.form-group input{min-width:0;width:100%;height:54px;border:1px solid #2c4b73;border-radius:9px;background:#04152b99;color:#f5f7fc;font:inherit;padding:0 16px;outline:none}.form-group input::placeholder{color:#7698c1;opacity:1}.form-group input:focus{border-color:#72aff5;box-shadow:0 0 0 3px #72aff526}.form-group input:-webkit-autofill{-webkit-text-fill-color:#f5f7fc;box-shadow:0 0 0 100px #091c34 inset;caret-color:white}
.password-field{position:relative}.password-field input{padding-right:52px}.password-toggle{position:absolute;right:5px;top:5px;width:44px;height:44px;background:none;border:0;border-radius:6px;color:#83acd7;cursor:pointer;display:grid;place-items:center}.password-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}
.btn-login{margin-top:4px;min-height:58px;border:0;border-radius:9px;background:linear-gradient(115deg,#ff841f,#ff741c);color:white;font:700 21px Arial,sans-serif;cursor:pointer}.btn-login:hover{background:#ff8e30}.btn-login:focus-visible,.password-toggle:focus-visible{outline:3px solid #90baff;outline-offset:4px}
.login-footer{border-top:1px solid #233d60;margin-top:32px;padding-top:24px;text-align:center;font-size:14px;color:#88acd6}.error-message{border:1px solid #d49155;border-radius:8px;background:#58291288;padding:12px;margin:0 0 18px;color:#ffdbbd;font-size:14px;line-height:1.4}
@media(max-width:1200px){.login-layout{padding:30px 4%;column-gap:26px;grid-template-columns:minmax(0,1.6fr) minmax(310px,1fr)}.login-panel{padding:30px 24px;min-height:530px}.login-panel h2{font-size:27px}.access-subtitle{margin-bottom:34px}.login-presentation h1{font-size:clamp(34px,4.7vw,56px)}}
@media(max-width:760px){.login-layout{display:flex;flex-direction:column;padding:24px 20px;gap:24px}.login-brand{margin:0}.login-brand p{font-size:26px}.login-panel{order:1;width:100%;min-height:0;padding:28px 24px}.login-panel h2{white-space:normal;font-size:28px;margin-top:0}.access-subtitle{margin-bottom:26px}.login-form{gap:24px}.login-presentation{order:2;width:100%}.login-presentation h1{font-size:30px;line-height:1.12}.login-subtitle{font-size:17px}.login-art{margin:12px 0 0}.login-footer{margin-top:26px;padding-top:18px}}
