 :root{--navy:oklch(0.23 0.048 253);--navy2:oklch(0.28 0.055 253);
   --gold:oklch(0.73 0.125 92);--ink:oklch(0.26 0.022 253);
   --mut:oklch(0.47 0.02 253);--line:oklch(0.9 0.008 253)}
 *{box-sizing:border-box}
 body{font-family:"IBM Plex Sans",system-ui,sans-serif;background:var(--navy);
   display:grid;place-items:center;min-height:100vh;margin:0;padding:20px}
 .login{width:min(360px,100%)}
 .marca{text-align:center;margin-bottom:22px}
 .marca img{height:88px;width:auto}
 .marca h1{font-family:"IBM Plex Serif",Georgia,serif;font-weight:600;
   font-size:16px;color:oklch(0.85 0.04 253);margin:14px 0 2px;letter-spacing:.04em}
 .marca p{margin:0;font-size:13px;color:oklch(0.72 0.03 253)}
 form{background:#fff;padding:26px 24px;border-radius:14px}
 label{display:block;font-size:12px;font-weight:600;color:var(--mut);
   margin:12px 0 5px;text-transform:uppercase;letter-spacing:.05em}
 label:first-of-type{margin-top:0}
 input:not([type=checkbox]){width:100%;font:inherit;font-size:15px;padding:11px 12px;
   border:1px solid var(--line);border-radius:9px;color:var(--ink)}
 input:focus-visible{outline:2px solid var(--navy2);outline-offset:1px}
 /* "mostrar senha": rótulo normal (os outros labels são caixa-alta espaçada) */
 label.mostrar{display:flex;align-items:center;gap:6px;font-size:12.5px;margin-top:6px;cursor:pointer;text-transform:none;letter-spacing:0}
 label.mostrar input{width:16px;height:16px;margin:0;accent-color:var(--navy2)}
 button{width:100%;font:inherit;font-weight:600;font-size:15px;padding:12px;
   margin-top:18px;background:oklch(0.34 0.062 253);color:#fff;border:0;
   border-radius:9px;cursor:pointer;transition:background .15s}
 button:hover{background:oklch(0.4 0.07 253)}
 .erro{background:oklch(0.96 0.018 15);border:1px solid oklch(0.85 0.05 15);
   color:oklch(0.5 0.13 15);font-size:13px;border-radius:9px;
   padding:9px 12px;margin-bottom:12px}
 .pe{font-size:12px;color:oklch(0.62 0.03 253);text-align:center;margin-top:16px}
 .pe.pe-sub{margin-top:6px}
 .pe a{color:oklch(0.8 0.1 92);text-decoration:none;font-weight:500}
 .pe a:hover{text-decoration:underline}
