/* Telas de "esqueci minha senha" e detalhes da tela de login. Complementa style.css. */
.field-row{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.forgot-link,.auth-back{color:var(--accent);font-size:13px;font-weight:600;text-decoration:none}
.forgot-link:hover,.auth-back:hover{text-decoration:underline}
.auth-back{display:inline-block;margin-top:16px}
.authbox h2{margin-bottom:8px}
.authbox>p.muted{line-height:1.5}
.authbox input{padding:11px;min-height:44px;font-size:16px}
.authbox .btn-block{display:block;width:100%;text-align:center;margin-top:15px;padding:11px}
.authbox button[type=submit]{padding:11px}
.authbox button[disabled]{opacity:.7;cursor:progress}
.authbox input[aria-invalid=true]{border-color:var(--danger)}
.flash[hidden]{display:none}
.pw-field{position:relative}
.pw-field input{padding-right:78px}
.pw-field .pw-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);margin:2px 0 0;width:auto;padding:6px 10px;background:transparent;border:0;color:var(--accent);font-size:12px;font-weight:700;cursor:pointer}
.pw-field .pw-toggle:focus-visible{outline:3px solid #9ad3b4;outline-offset:1px}
.rules{list-style:none;margin:12px 0 2px;padding:0;display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--muted)}
.rules li::before{content:"○";display:inline-block;width:18px}
.rules li.ok{color:#175743}
.rules li.ok::before{content:"✓";font-weight:700;color:var(--accent)}
.auth-icon{width:48px;height:48px;border-radius:50%;background:var(--accent2);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;margin-bottom:14px}
.auth-icon.warn{background:#fff4dc;color:#8a5c14}
.auth-tips{margin:0 0 6px;padding-left:18px;color:var(--muted);font-size:13px;line-height:1.6}
.authbox a:focus-visible,.authbox button:focus-visible,.authbox input:focus-visible{outline:3px solid #9ad3b4;outline-offset:2px}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0;margin:-1px}
.login-hint{margin:10px 0 0;font-size:13px;color:var(--muted)}
.login-hint a{color:var(--accent);font-weight:600}
.loginbox .link-btn{display:inline;width:auto;margin:0;padding:0;background:none;border:0;color:var(--accent);font:inherit;font-weight:700;text-decoration:underline;cursor:pointer;min-height:0}
.suggest{margin:8px 0 0;font-size:13px;color:#8a5c14}
.suggest[hidden],.caps-warn[hidden]{display:none}
.caps-warn{margin:8px 0 0;font-size:13px;color:#8a5c14;font-weight:600}
.meter{height:6px;background:#e4ece7;border-radius:99px;overflow:hidden;margin-top:10px}
.meter span{display:block;height:100%;width:0;border-radius:99px;background:#a33b3b;transition:width .2s,background-color .2s}
.meter[data-level="1"] span{width:25%;background:#a33b3b}
.meter[data-level="2"] span{width:50%;background:#c98a1a}
.meter[data-level="3"] span{width:75%;background:#3f9a63}
.meter[data-level="4"] span{width:100%;background:var(--accent)}
.meter-label{margin:4px 0 0;min-height:18px;font-size:12px;color:var(--muted)}
.tip{margin:12px 0 0;font-size:12px;color:var(--muted);line-height:1.5}
.loginbox .secondary.btn-block-btn{display:block;background:#fff;border:1px solid var(--line);color:var(--ink);margin-top:12px;min-height:44px}
.loginbox .secondary.btn-block-btn[disabled]{color:var(--muted);cursor:not-allowed;opacity:1}
.auth-sep{margin:0 6px;color:var(--muted)}
.authbox .btn-block{min-height:44px}
@media (prefers-reduced-motion:reduce){.meter span{transition:none}}
