*{box-sizing:border-box}
:root{--blue:#064b91;--blue-dark:#052e5d;--navy:#03264a;--yellow:#ffc400;--text:#122d49;--muted:#718196;--line:#dce6ef;--bg:#f4f8fc}
html,body{margin:0;min-height:100%;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--text)}
body{min-height:100vh;background:var(--bg)}
.erp-login{min-height:100vh;display:grid;grid-template-columns:minmax(480px,1.03fr) minmax(520px,.97fr)}
.erp-showcase{position:relative;min-height:100vh;overflow:hidden;background:linear-gradient(145deg,#073f79 0%,#052e5d 56%,#031d39 100%);color:#fff}
.erp-showcase:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.07);border-radius:50%;right:-160px;top:-170px;box-shadow:0 0 0 80px rgba(255,255,255,.025),0 0 0 165px rgba(255,255,255,.018)}
.erp-showcase:after{content:"";position:absolute;left:-15%;right:-15%;bottom:-180px;height:350px;background:linear-gradient(90deg,rgba(255,196,0,.18),rgba(255,196,0,.03));transform:rotate(-7deg)}
.showcase-overlay{position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(12,112,206,.37),transparent 34%),linear-gradient(180deg,transparent 50%,rgba(0,0,0,.16))}
.showcase-content{position:relative;z-index:2;min-height:100vh;padding:clamp(38px,5vw,72px);display:flex;flex-direction:column}
.system-brand{display:flex;align-items:center;gap:14px}
.system-logo{width:58px;height:58px;border-radius:15px;background:#fff;display:grid;place-items:center;color:var(--blue);font-size:18px;font-weight:1000;box-shadow:0 10px 30px rgba(0,0,0,.17);overflow:hidden}
.system-logo img{width:100%;height:100%;object-fit:contain;padding:5px}
.system-brand-text{display:flex;flex-direction:column;gap:2px}.system-brand-text small{font-size:10px;font-weight:850;letter-spacing:1.8px;color:#9fc5e9}.system-brand-text strong{font-size:18px}
.hero-copy{margin:auto 0;max-width:620px;padding:50px 0 35px}.hero-kicker{display:inline-flex;border-left:4px solid var(--yellow);padding-left:10px;font-size:11px;font-weight:900;letter-spacing:2px;color:#b9d7f2}
.hero-copy h1{font-size:clamp(42px,4.2vw,68px);line-height:1.02;letter-spacing:-2.3px;margin:17px 0 22px}.hero-copy h1 em{font-style:normal;color:var(--yellow)}
.hero-copy p{font-size:15px;line-height:1.7;color:#c7dbef;max-width:560px;margin:0}
.feature-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:34px}
.feature-strip>div{min-height:94px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);border-radius:12px;padding:15px;display:grid;grid-template-columns:30px 1fr;grid-template-rows:auto auto;column-gap:8px;align-content:center;backdrop-filter:blur(4px)}
.feature-strip>div>span{grid-row:1/3;font-size:24px;color:var(--yellow);align-self:center}.feature-strip b{font-size:12px}.feature-strip small{font-size:9px;color:#a9c5df;margin-top:2px}
.showcase-footer{display:flex;align-items:center;gap:8px;font-size:10px;color:#9cb9d5}.status-dot{width:7px;height:7px;border-radius:50%;background:#47d682;box-shadow:0 0 0 4px rgba(71,214,130,.11)}
.login-area{min-height:100vh;padding:30px clamp(45px,6vw,90px);display:flex;flex-direction:column;background:linear-gradient(145deg,#fff 0%,#f7faff 75%,#fffbea 145%)}
.login-top{display:flex;justify-content:flex-end;gap:8px}.secure-pill,.version-pill{font-size:9px;font-weight:850;letter-spacing:.5px;border:1px solid var(--line);padding:7px 9px;border-radius:999px;color:#6e8095;background:#fff}.secure-pill{color:#278158}
.login-box{width:min(480px,100%);margin:auto}
.mobile-brand{display:none}
.login-heading{display:grid;grid-template-columns:54px 1fr;gap:15px;align-items:start;margin-bottom:28px}
.access-icon{width:54px;height:54px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--blue),#0a67bb);color:var(--yellow);font-size:24px;box-shadow:0 11px 25px rgba(6,75,145,.22)}
.login-heading span{font-size:10px;font-weight:950;color:var(--blue);letter-spacing:1.7px}.login-heading h2{font-size:31px;letter-spacing:-.8px;margin:3px 0 6px;color:#102c48}.login-heading p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.login-alert{display:flex;align-items:center;gap:9px;padding:11px 13px;border-radius:9px;margin-bottom:14px;font-size:12px;font-weight:750}.login-alert span{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-weight:950}.login-alert.erro{background:#fff0f0;color:#9d2929;border:1px solid #ffd3d3}.login-alert.erro span{background:#d93434;color:#fff}.login-alert.ok{background:#ecf9f1;color:#187242;border:1px solid #ccebd8}
.login-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 18px 50px rgba(23,58,94,.085);position:relative}
.login-card:before{content:"";position:absolute;top:-1px;left:24px;right:24px;height:3px;border-radius:0 0 5px 5px;background:linear-gradient(90deg,var(--blue),#1382d5 65%,var(--yellow))}
.input-group{display:block;margin-bottom:17px}.field-label{display:block;font-size:11px;font-weight:850;color:#2c4864;margin-bottom:7px}
.input-wrap{height:52px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;border:1px solid #cbd8e5;border-radius:10px;background:#fbfdff;transition:.18s;overflow:hidden}.input-wrap:focus-within{border-color:#0a65b9;box-shadow:0 0 0 3px rgba(10,101,185,.10);background:#fff}
.input-wrap i{font-style:normal;text-align:center;font-size:14px;opacity:.7;border-right:1px solid #e5ebf1}.input-wrap input{width:100%;height:100%;border:0;outline:0;background:transparent;padding:0 12px;font-size:14px;color:#17324d}.input-wrap input::placeholder{color:#9aa9b7}
.show-password{height:100%;width:43px;border:0;background:transparent;color:#668099;font-size:16px;cursor:pointer}.show-password:hover{background:#f1f6fb}
.login-options{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:#8090a0;margin:0 1px 17px}
.login-submit{width:100%;height:55px;border:0;border-radius:10px;background:linear-gradient(90deg,#07529c,#0868bb);color:#fff;font-size:12px;font-weight:950;letter-spacing:.5px;display:flex;align-items:center;justify-content:center;gap:13px;cursor:pointer;box-shadow:0 10px 25px rgba(6,75,145,.22);border-bottom:4px solid var(--yellow);transition:.18s}
.login-submit b{font-size:20px;line-height:1}.login-submit:hover{transform:translateY(-1px);filter:brightness(1.04)}.login-submit:active{transform:translateY(0)}.login-submit.loading{opacity:.75;pointer-events:none}
.access-switch{margin-top:21px}.switch-line{display:flex;align-items:center;gap:8px;margin-bottom:10px}.switch-line span{height:1px;flex:1;background:#dfe7ef}.switch-line small{font-size:8px;font-weight:850;letter-spacing:1.3px;color:#9aa8b7}
.access-switch>a{text-decoration:none;color:inherit;display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;border:1px solid #dfe7ef;background:#fff;border-radius:11px;padding:10px 12px;transition:.18s}
.access-switch>a:hover{border-color:#a9c9e7;box-shadow:0 7px 20px rgba(19,62,103,.07);transform:translateY(-1px)}
.access-switch i{width:34px;height:34px;border-radius:8px;background:#eef6fd;color:var(--blue);display:grid;place-items:center;font-style:normal;font-weight:900}.access-switch span b,.access-switch span small{display:block}.access-switch span b{font-size:11px}.access-switch span small{font-size:9px;color:#8795a5;margin-top:2px}.access-switch strong{color:var(--blue)}
.company-mini{text-align:center;margin-top:19px;min-height:20px;color:#8a98a7;font-size:9px;display:flex;justify-content:center;gap:6px;flex-wrap:wrap}.company-mini b{color:#5f7183}.company-mini span+span:before{content:"•";margin-right:6px;color:#c1c9d1}
.login-copyright{text-align:center;margin-top:auto;padding-top:20px;color:#8b9aab}.login-copyright span{display:block;font-size:10px;font-weight:850;color:#627488}.login-copyright small{font-size:8px}
@media(max-width:1050px){.erp-login{grid-template-columns:.85fr 1.15fr}.showcase-content{padding:42px}.feature-strip{grid-template-columns:1fr}.feature-strip>div{min-height:65px}.hero-copy h1{font-size:42px}}
@media(max-width:780px){.erp-login{display:block}.erp-showcase{display:none}.login-area{min-height:100vh;padding:20px}.login-top{display:none}.login-box{margin:auto}.mobile-brand{display:flex;align-items:center;gap:10px;margin-bottom:30px}.mobile-logo{width:45px;height:45px;border-radius:11px;background:var(--blue);color:var(--yellow);display:grid;place-items:center;font-size:12px;font-weight:950}.mobile-brand b{font-size:15px}.login-heading h2{font-size:27px}.login-card{padding:20px}.login-copyright{margin-top:35px}}
@media(max-height:760px) and (min-width:781px){.showcase-content{padding-top:30px;padding-bottom:30px}.hero-copy{padding:25px 0}.hero-copy h1{font-size:42px}.feature-strip{margin-bottom:18px}.login-area{padding-top:20px;padding-bottom:20px}.login-heading{margin-bottom:16px}.login-card{padding:19px}.input-group{margin-bottom:12px}.login-box{width:min(450px,100%)}}
