/* Mesmo sistema visual do portal autenticado, com login limpo e rápido. */
:root{--ink:#18302a;--muted:#60766b;--blue:#0b745e;--paper:#edf1ee;--line:#d9e5db;--navy:#10231f}
body{font-family:"Segoe UI Variable Text","Aptos","Segoe UI",sans-serif;background:var(--paper)}
.login-layout{max-width:none;grid-template-columns:minmax(0,48%) minmax(0,52%);gap:0;padding:0;min-height:100svh}
.access-panel{background:#f8faf7;padding:28px clamp(28px,5vw,84px) 16px}
.access-content{max-width:410px;padding:28px 0}.access-content h1{font-size:clamp(37px,3.2vw,53px);font-weight:650;letter-spacing:-.055em;line-height:1.05}
.intro{font-size:14px;line-height:1.55;margin:17px 0 29px}.heading-dot{color:var(--blue)}
.field input{background:#fff;border-color:#cadbd0;border-radius:10px}.field input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0b745e1c}
.text-button{color:var(--blue)}.primary-button{background:var(--blue);border-radius:10px;box-shadow:none;font-size:13px}
.primary-button:hover{background:#075943;box-shadow:0 8px 20px #0b745e25}
.access-footer{min-height:82px}.access-footer .brand-image{width:84px;height:84px;opacity:.9}
@media(max-width:760px){
 .login-layout{display:block}.access-panel{min-height:100svh;padding:24px 25px 16px}
 .access-content{max-width:410px;padding:24px 0}.access-content h1{font-size:clamp(36px,10vw,45px)}
 .brand-story{display:none}.access-footer{min-height:72px}.access-footer .brand-image{width:76px;height:76px}
}
@media(prefers-reduced-motion:reduce){.primary-button{transition:none}}


.reset-back{margin:22px 0 0;text-align:center}
.recovery-note{margin:-8px 0 24px;padding:13px 15px;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:12px;line-height:1.55}

.brand-story:before,.brand-story:after{content:"";position:absolute;z-index:0;pointer-events:none;border:1px solid #a4cdb21c;border-radius:50%;opacity:.48}
.brand-story>*{position:relative;z-index:1}
/* Painel da referência: composição editorial e nota em HTML/CSS. */
.brand-story{margin:0;min-height:100svh;border-radius:0;padding:clamp(32px,5.8vw,84px);gap:50px;background:radial-gradient(ellipse at 100% 0%,#40826788 0%,transparent 50%),radial-gradient(ellipse at 45% 65%,#1a594a66,transparent 53%),linear-gradient(150deg,#082b24,#10392f 55%,#082820)}
.brand-story-content{margin-top:clamp(40px,20vh,220px);width:100%;max-width:680px}
.brand-story h2{font-size:clamp(32px,3.85vw,62px);line-height:1.12;font-weight:700;letter-spacing:-.045em}
.brand-story h2 span{color:#d8f46c}
.brand-story .lead{max-width:none;font-size:clamp(14px,1.25vw,20px);line-height:1.6;margin-top:24px;color:#c3d2cb}
.brand-story:before{width:110%;height:72%;right:-52%;top:17%;border-radius:50%;border-color:#8ec7ab12;box-shadow:0 0 0 45px #9dcfb10a,0 0 0 105px #9dcfb106;transform:rotate(43deg)}
.brand-story:after{width:105%;height:48%;left:-38%;bottom:-24%;border-color:#8ec7ab10;box-shadow:0 0 0 40px #9dcfb10a,0 0 0 86px #9dcfb106;transform:rotate(35deg)}
.login-invoice{position:relative;margin:70px 8px 0;max-width:570px;padding:30px 34px 26px;background:linear-gradient(135deg,#fff,#f8faf9);border:1px solid #e7eeeb;border-radius:20px;color:#112530;transform:rotate(-3deg);box-shadow:0 24px 64px #001e2470,0 0 70px #6ac39d24}
.login-invoice:before{content:"";position:absolute;inset:-26px -35px;z-index:-1;border:1px solid #a0e0bf12;border-radius:90px;background:#71c49c08}
.login-invoice-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:clamp(20px,1.65vw,27px)}
.login-invoice-status{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border-radius:30px;background:#e0f3e5;color:#164e37;font-size:clamp(12px,1.05vw,16px);font-weight:650;white-space:nowrap}
.login-invoice-status svg{width:18px;height:18px;flex-shrink:0}
.login-invoice-amount{font-size:clamp(31px,2.9vw,47px);font-weight:700;letter-spacing:-.045em;margin:26px 0 20px;font-variant-numeric:tabular-nums}
.login-invoice-meta{display:flex;align-items:center;gap:20px;border-top:1px solid #d9e1e0;padding-top:20px;color:#64757e;font-size:clamp(11px,1.08vw,17px)}
.login-invoice-meta span{display:flex;align-items:center;gap:9px;white-space:nowrap}
.login-invoice-meta span+span{border-left:1px solid #d9e1e0;padding-left:20px}
.login-invoice-meta svg{width:23px;height:23px;flex-shrink:0}
.brand-story .tech-note{margin:0;font-size:12px;color:#91aaa0;letter-spacing:0}
@media(min-width:761px) and (max-width:1100px){.brand-story{padding:32px}.login-invoice{padding:24px 22px;margin-inline:0}.login-invoice-meta{gap:12px;flex-wrap:wrap}.login-invoice-meta span+span{border-left:0;padding-left:0}}
@media(min-width:761px) and (max-height:900px){.brand-story-content{margin-top:clamp(24px,8vh,72px)}.login-invoice{margin-top:45px}.brand-story{gap:42px}}
