:root{--rose:#ad6d68;--rose-dark:#6a3738;--ink:#4c3430;--muted:#836963;--line:#eddbd7;--cream:#fffaf7;--paper:#ffffff}*{box-sizing:border-box}html{font-family:system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink)}body{margin:0;min-height:100vh;background:linear-gradient(155deg,#fff6f0,#fbe5e1 55%,#fff9f5);font-size:14px;line-height:1.55}input,button{font:inherit}a{color:inherit}.decor{position:fixed;inset:0;pointer-events:none;overflow:hidden}.blob{position:absolute;border-radius:50%;opacity:.35;filter:blur(45px)}.one{background:#eaa4ac;width:390px;height:390px;right:-100px;top:-170px}.two{background:#f4cab4;width:360px;height:360px;left:-160px;bottom:-100px}.shell{position:relative;width:min(520px,calc(100% - 30px));margin:clamp(28px,7vh,75px) auto 30px}.back{display:inline-block;margin-bottom:20px;text-decoration:none;font-size:12px;font-weight:750;color:var(--rose-dark)}.card{border:1px solid rgba(173,109,104,.23);box-shadow:0 24px 80px #743c3923;background:var(--paper);border-radius:24px;padding:clamp(22px,5vw,42px)}.top{display:flex;align-items:center;gap:19px}.monogram{display:grid;place-items:center;width:64px;height:64px;flex:none;border-radius:18px;background:#fae9e5;color:var(--rose-dark);font:italic 35px/1 Georgia,serif}.monogram span{color:#bc7b76;font:18px Georgia;align-self:center;margin-left:-19px;margin-top:28px}.eyebrow{color:var(--rose);font-weight:850;font-size:10px;letter-spacing:.17em}h1{font:normal clamp(24px,5vw,31px)/1.15 Georgia,serif;margin:6px 0 7px}h2{font:normal 25px/1.2 Georgia,serif;margin:17px 0 7px}.subtitle{font-size:12px;color:var(--muted);margin:0}.badge{display:inline-block;margin:26px 0 12px;border:1px solid #e8c9c3;border-radius:100px;padding:6px 12px;background:#fff8f4;color:#845954;font-size:11px;font-weight:700}.msg{background:#fff7eb;border-radius:10px;padding:11px 12px;font-size:12px;color:#845c38;margin:8px 0 12px}.msg:empty{display:none}.msg.error{background:#fff0f0;color:#a52b38}.msg.ok{background:#effaf2;color:#256a43}form[hidden]{display:none}form{display:flex;flex-direction:column;gap:9px}.helper{font-size:12px;color:var(--muted);margin:0 0 10px}.helper.muted{margin-top:8px}label{font-weight:750;font-size:12px;margin-top:5px}input{min-height:48px;border:1px solid #dfc9c2;border-radius:11px;background:#fff;outline-offset:3px;padding:10px 12px;color:var(--ink)}input:focus{outline:2px solid #b97a77;border-color:#b97a77}.primary{margin-top:14px;background:var(--rose-dark);color:#fff;border:0;border-radius:12px;padding:14px 18px;font-weight:750;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.primary:disabled{opacity:.6;cursor:wait}.foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px;border-top:1px solid var(--line);padding-top:19px;margin-top:25px;color:var(--muted);font-size:10px}@media(max-width:425px){.card{border-radius:18px}.top{gap:12px}.monogram{width:50px;height:50px;font-size:29px}.subtitle{font-size:11px}}

/* Visual aprovado em 20/10/2026: título livre, sem monograma; funcionalidade de autenticação preservada. */
.shell{width:min(575px,calc(100% - 30px));margin:clamp(25px,5.5vh,55px) auto 30px}
.card{padding:clamp(25px,4vw,46px)}
.top{display:block}
.eyebrow{font-size:11px;letter-spacing:.14em}
h1{font-size:clamp(28px,4.4vw,36px);line-height:1.18;margin:6px 0 9px}
h2{font-size:clamp(25px,4vw,28px);margin:18px 0 9px}
.subtitle{font-size:13px;line-height:1.55;margin:0}
.brand-heart{display:block;color:#bd7875;font:23px/1 Georgia,serif;margin:2px 0 0 4px}
.badge{margin:12px 0 13px}
@media(max-width:425px){.card{padding:24px 21px}.shell{width:calc(100% - 24px);margin:20px auto 24px}h1{font-size:29px}.subtitle{font-size:12px}}

/* Mostrar ou ocultar senha sem alterar valores nem enviar dados. */
.pwd-field{position:relative;width:100%}
.pwd-field input{display:block;width:100%;padding-right:94px}
.pwd-toggle{position:absolute;right:9px;top:50%;transform:translateY(-50%);border:0;border-radius:7px;background:transparent;color:#75443e;font-size:12px;font-weight:750;padding:7px;cursor:pointer}
.pwd-toggle:hover{text-decoration:underline}
.pwd-toggle:focus-visible{outline:2px solid #b97a77;outline-offset:2px}
