/* A marca acompanha as cores da preferência visual de cada pessoa. */
.north-mark { display: block; width: 40px; height: 40px; flex: 0 0 auto; color: var(--gold, #e8b23d); }
.north-name { font-family: 'Inter', system-ui, sans-serif; font-size: 28px; font-weight: 600; line-height: 1; letter-spacing: -.8px; }
.site-brand .north-mark { width: 38px; height: 38px; }
.site-brand .north-name { font-size: 26px; }
.north-login-brand { display: flex; align-items: center; justify-content: center; gap: 4px; margin-bottom: 28px; padding-bottom: 24px; border-bottom: 1px solid var(--border); color: var(--text); }
.north-login-brand .north-mark { width: 48px; height: 48px; }
.north-login-brand .north-name { font-size: 36px; letter-spacing: -1.2px; }
.north-tagline { margin: 0 0 8px; color: var(--muted); font-size: 14px; line-height: 1.6; }
.site-brand { text-decoration: none; }
.site-brand:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; border-radius: 8px; }

/* Ajustes exclusivos da tela de entrada. */
body.north-auth { padding: 24px 0; }
#login-submit { margin-top: 16px; min-height: 40px; padding: 8px 14px; font-size: 16px; font-weight: 700; line-height: 1.25; }
.north-login-links { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 12px; margin: 20px 0 0; font-size: 14px; line-height: 1.5; }
.north-login-links a { color: var(--gold); text-decoration: none; }
.north-login-recovery { margin-left: auto; text-align: right; }
.north-login-links a:hover { color: var(--text); }
.north-login-links a:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; border-radius: 2px; }
.north-access-link { color: var(--gold); text-underline-offset: 3px; }
.north-email-note { margin-top: 22px; line-height: 1.5; }
.config-section .north-email-note { margin-top: 20px; }
.config-section p { overflow-wrap: anywhere; }
.north-field-help { color: var(--muted); font-size: 13px; line-height: 1.5; margin: 8px 0 0; }
.north-password-hint { color: var(--muted); font-size: 13px; font-weight: 400; }
.config-form .north-terms-consent { display: flex; align-items: flex-start; gap: 10px; margin: 18px 0 0; color: var(--muted); font-size: 13px; line-height: 1.5; cursor: pointer; }
.config-form .north-terms-consent input[type="checkbox"] { flex: 0 0 18px; width: 18px; height: 18px; padding: 0; margin: 1px 0 0; accent-color: var(--gold); cursor: pointer; }
.config-form .north-terms-consent span { min-width: 0; }
.config-form .north-terms-consent a { color: var(--gold); text-underline-offset: 3px; }
.north-email-address { overflow-wrap: anywhere; }
.north-contact-links{display:flex;flex-wrap:wrap;gap:8px 16px;line-height:1.5;font-size:13px}
.north-contact-links a{color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.north-contact-links a:hover{color:var(--text)}
.north-contact-links a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.north-vendedor{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.public-page footer{box-sizing:border-box}
.public-page footer .north-vendedor{flex-basis:100%}
.north-auth .north-contact-links{border-top:1px solid var(--border);padding-top:18px;margin-top:24px}
.site-sidebar .north-contact-links{margin:14px 0;gap:10px 16px}
.site-sidebar .north-contact-links a:first-child{flex-basis:100%;color:var(--gold);font-weight:600}
.brl{white-space:nowrap}
