/* Consolidado: login; fonte ativa única. */
:root{--ip743-auth-font:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;}
html{min-width:320px;min-height:100%;background:var(--ip743-auth-bg)!important;}
body.ip-ui{min-height:100svh!important;margin:0!important;font-family:var(--ip743-auth-font)!important;color:var(--ip743-auth-text)!important;}
body.ip-ui *, body.ip-ui *::before, body.ip-ui *::after{box-sizing:border-box;}
body.ip-ui .ip-login-shell{min-width:0!important;height:auto!important;margin:auto!important;color:var(--ip743-auth-text)!important;transform:none!important;}
body.ip-ui .ip-login-brand, body.ip-ui .ip-login-panel{min-width:0!important;width:auto!important;max-width:none!important;height:auto!important;transform:none!important;}
body.ip-ui .ip-login-brand{position:relative!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important;gap:24px!important;border:0!important;border-right:1px solid var(--ip743-auth-border)!important;box-shadow:none!important;}
body.ip-ui .ip-login-brand::before{content:""!important;position:absolute!important;width:340px!important;height:340px!important;right:-150px!important;bottom:-160px!important;border:56px solid color-mix(in srgb, var(--ip75-primary) 2%, var(--ip75-border))!important;border-radius:50%!important;pointer-events:none!important;}
body.ip-ui .ip-login-brand::after{content:""!important;position:absolute!important;width:170px!important;height:170px!important;right:-55px!important;top:-80px!important;border:1px solid color-mix(in srgb, var(--ip75-primary) 4%, var(--ip75-border))!important;border-radius:50%!important;pointer-events:none!important;}
body.ip-ui .ip-login-brand-top, body.ip-ui .ip-login-brand-main, body.ip-ui .ip-login-brand-foot{position:relative!important;z-index:1!important;}
body.ip-ui .ip-login-brand-top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;}
body.ip-ui .ip-login-identity{display:flex!important;align-items:center!important;gap:11px!important;min-width:0!important;}
body.ip-ui .ip-login-mark{width:42px!important;height:42px!important;display:grid!important;place-items:center!important;flex:0 0 42px!important;overflow:hidden!important;color:var(--ip75-on-primary)!important;background:var(--ip743-auth-primary)!important;border:1px solid color-mix(in srgb, var(--ip75-primary) 5%, var(--ip75-border))!important;border-radius:12px!important;box-shadow:var(--ip75-shadow-xs)!important;}
body.ip-ui .ip-login-mark img{width:34px!important;height:34px!important;object-fit:contain!important;}
body.ip-ui .ip-login-identity-copy{min-width:0!important;}
body.ip-ui .ip-login-identity-copy strong{display:block!important;color:var(--ip743-auth-strong)!important;font-size:14px!important;font-weight:700!important;line-height:1.2!important;}
body.ip-ui .ip-login-identity-copy span{display:block!important;margin-top:2px!important;color:var(--ip743-auth-muted)!important;font-size:11px!important;font-weight:650!important;letter-spacing:.06em!important;text-transform:uppercase!important;}
body.ip-ui .ip-login-version{padding:4px 7px!important;border:1px solid var(--ip743-auth-border)!important;border-radius:999px!important;font-size:11px!important;font-weight:650!important;white-space:nowrap!important;}
body.ip-ui .ip-login-brand-main{display:grid!important;align-content:center!important;gap:12px!important;max-width:520px!important;}
body.ip-ui .ip-login-eyebrow{width:fit-content!important;padding:5px 8px!important;color:var(--ip743-auth-primary)!important;background:var(--ip743-auth-primary-soft)!important;border:1px solid var(--ip75-border)!important;border-radius:999px!important;font-size:11px!important;font-weight:700!important;letter-spacing:.05em!important;text-transform:uppercase!important;}
body.ip-ui .ip-login-brand-main h1{margin:0!important;color:var(--ip743-auth-strong)!important;font-family:var(--ip743-auth-font)!important;font-weight:700!important;letter-spacing:-.035em!important;}
body.ip-ui .ip-login-brand-main > p{max-width:500px!important;margin:0!important;color:var(--ip743-auth-muted)!important;font-size:13px!important;line-height:1.58!important;}
body.ip-ui .ip-login-capability{min-width:0!important;color:var(--ip743-auth-text)!important;box-shadow:none!important;}
body.ip-ui .ip-login-capability-icon{width:28px!important;height:28px!important;display:grid!important;place-items:center!important;margin-bottom:8px!important;color:var(--ip743-auth-primary)!important;background:var(--ip743-auth-primary-soft)!important;border-radius:8px!important;}
body.ip-ui .ip-login-capability-icon svg{width:15px!important;height:15px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;}
body.ip-ui .ip-login-capability strong{display:block!important;color:var(--ip743-auth-strong)!important;font-size:11px!important;font-weight:700!important;}
body.ip-ui .ip-login-capability span, body.ip-ui .ip-login-capability p{display:block!important;margin:3px 0 0!important;color:var(--ip743-auth-muted)!important;font-size:11px!important;line-height:1.35!important;}
body.ip-ui .ip-login-brand-foot{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;color:var(--ip743-auth-muted)!important;font-size:11px!important;}
body.ip-ui .ip-login-panel{border:0!important;box-shadow:none!important;}
body.ip-ui .ip-login-panel-head{margin-bottom:24px!important;}
body.ip-ui .ip-login-panel-head h2{margin:0!important;font-family:var(--ip743-auth-font)!important;font-weight:700!important;letter-spacing:-.025em!important;line-height:1.2!important;}
body.ip-ui .ip-login-panel-head p{margin:7px 0 0!important;line-height:1.5!important;}
body.ip-ui .ip-login-alert{margin:0 0 16px!important;padding:10px 12px!important;color:var(--ip743-auth-danger)!important;background:var(--ip743-auth-danger-soft)!important;border:1px solid color-mix(in srgb, var(--ip75-warning) 30%, var(--ip75-border))!important;border-radius:10px!important;font-size:11.5px!important;line-height:1.4!important;}
body.ip-ui .ip-login-form{margin:0!important;}
body.ip-ui .ip-login-field{display:flex!important;flex-direction:column!important;gap:6px!important;}
body.ip-ui .ip-login-field-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;}
body.ip-ui .ip-login-field label{margin:0!important;color:var(--ip743-auth-text)!important;font-size:11.5px!important;font-weight:690!important;}
body.ip-ui .ip-login-input-wrap{position:relative!important;min-width:0!important;}
body.ip-ui .ip-login-input-icon{position:absolute!important;z-index:2!important;left:12px!important;top:50%!important;width:18px!important;height:18px!important;display:grid!important;place-items:center!important;color:var(--ip743-auth-muted)!important;transform:translateY(-50%)!important;pointer-events:none!important;}
body.ip-ui .ip-login-input-icon svg{width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;}
body.ip-ui .ip-login-input-wrap input{width:100%!important;min-width:0!important;height:44px!important;min-height:44px!important;margin:0!important;padding:0 44px 0 40px!important;border:1px solid var(--ip743-auth-border-strong)!important;border-radius:10px!important;box-shadow:none!important;font-family:var(--ip743-auth-font)!important;font-size:13px!important;outline:none!important;transition:border-color .15s ease, box-shadow .15s ease!important;}
body.ip-ui .ip-login-password-toggle{min-height:0!important;padding:0!important;color:var(--ip743-auth-primary)!important;background:transparent!important;border:0!important;font-size:11px!important;font-weight:680!important;}
body.ip-ui .ip-login-password-toggle-icon{position:absolute!important;z-index:3!important;right:7px!important;top:50%!important;width:31px!important;height:31px!important;display:grid!important;place-items:center!important;padding:0!important;color:var(--ip743-auth-muted)!important;background:transparent!important;border:0!important;border-radius:8px!important;transform:translateY(-50%)!important;}
body.ip-ui .ip-login-password-toggle-icon:hover{color:var(--ip743-auth-primary)!important;background:var(--ip743-auth-primary-soft)!important;}
body.ip-ui .ip-login-password-toggle-icon svg{width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;}
body.ip-ui .ip-login-submit{width:100%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;margin:2px 0 0!important;padding:0 16px!important;border:1px solid var(--ip743-auth-primary)!important;font-family:var(--ip743-auth-font)!important;font-size:12.5px!important;font-weight:700!important;cursor:pointer!important;transition:background .15s ease, transform .15s ease, box-shadow .15s ease!important;}
body.ip-ui .ip-login-submit:hover{box-shadow:var(--ip75-shadow-xs)!important;transform:translateY(-1px)!important;}
body.ip-ui .ip-login-submit:active{transform:translateY(0)!important;}
body.ip-ui .ip-login-security{display:flex!important;align-items:flex-start!important;gap:9px!important;margin-top:18px!important;padding:10px 11px!important;color:var(--ip743-auth-muted)!important;background:var(--ip743-auth-soft)!important;border:1px solid var(--ip743-auth-border)!important;border-radius:10px!important;font-size:11px!important;line-height:1.4!important;}
body.ip-ui .ip-login-security-icon{width:25px!important;height:25px!important;display:grid!important;place-items:center!important;flex:0 0 25px!important;color:var(--ip743-auth-primary)!important;background:var(--ip743-auth-primary-soft)!important;border-radius:7px!important;}
body.ip-ui .ip-login-security-icon svg{width:14px!important;height:14px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;}
body.ip-ui .ip-login-footnote{margin-top:15px!important;color:var(--ip743-auth-muted)!important;font-size:11px!important;text-align:center!important;}
@media (max-height: 720px) and (min-width: 901px){
body.ip-ui .ip-login-shell{min-height:0!important;}
body.ip-ui .ip-login-brand{padding-top:24px!important;padding-bottom:24px!important;}
body.ip-ui .ip-login-panel{padding-top:30px!important;padding-bottom:30px!important;}
body.ip-ui .ip-login-capabilities{margin-top:0!important;}
body.ip-ui .ip-login-capability{padding:9px!important;}
body.ip-ui .ip-login-brand-main h1{font-size:28px!important;}
}
@media (max-width: 900px){
body.ip-ui{padding:12px!important;}
body.ip-ui .ip-login-shell{border-radius:12px!important;}
body.ip-ui .ip-login-brand{padding:17px 20px!important;border-right:0!important;border-bottom:1px solid var(--ip743-auth-border)!important;}
body.ip-ui .ip-login-brand-main, body.ip-ui .ip-login-brand-foot{display:none!important;}
body.ip-ui .ip-login-brand-top{width:100%!important;}
}
@media (max-width: 520px){
body.ip-ui{place-items:start center!important;padding:0!important;background:var(--ip743-auth-surface)!important;}
body.ip-ui .ip-login-shell{width:100%!important;min-height:100svh!important;border:0!important;border-radius:0!important;box-shadow:none!important;}
body.ip-ui .ip-login-brand{padding:16px 18px!important;}
body.ip-ui .ip-login-version{display:none!important;}
body.ip-ui .ip-login-panel{justify-content:flex-start!important;padding:32px 20px 24px!important;}
body.ip-ui .ip-login-panel-head h2{font-size:21px!important;}
}
body.ip-ui{box-sizing:border-box!important;}
@media (max-width: 900px){
body.ip-ui .ip-login-brand{min-height:0!important;max-height:none!important;}
}
@media (max-width: 520px){
body.ip-ui .ip-login-brand{min-height:0!important;height:auto!important;}
body.ip-ui .ip-login-shell{grid-template-rows:auto minmax(0, 1fr)!important;align-content:stretch!important;}
}
:root{--ip743-auth-bg:var(--ip75-surface);--ip743-auth-surface:var(--ip75-surface);--ip743-auth-soft:var(--ip75-surface-muted);--ip743-auth-text:var(--ip75-text);--ip743-auth-strong:var(--ip75-text);--ip743-auth-muted:var(--ip75-muted);--ip743-auth-border:var(--ip75-border);--ip743-auth-border-strong:var(--ip75-border);--ip743-auth-primary:var(--ip75-primary);--ip743-auth-primary-hover:var(--ip75-primary);--ip743-auth-primary-soft:var(--ip75-primary-soft);--ip743-auth-danger:var(--ip75-danger);--ip743-auth-danger-soft:var(--ip75-danger-soft);--ip743-auth-shadow:0 28px 84px color-mix(in srgb, var(--ip75-text) 14%, transparent);}
html[data-theme="dark"]{color-scheme:dark;--ip743-auth-bg:var(--ip75-surface);--ip743-auth-surface:var(--ip75-surface);--ip743-auth-soft:var(--ip75-surface-muted);--ip743-auth-text:var(--ip75-text);--ip743-auth-strong:var(--ip75-muted);--ip743-auth-muted:var(--ip75-muted);--ip743-auth-border:var(--ip75-border);--ip743-auth-border-strong:var(--ip75-border);--ip743-auth-primary:var(--ip75-primary);--ip743-auth-primary-hover:var(--ip75-primary);--ip743-auth-primary-soft:color-mix(in srgb, var(--ip75-primary-soft) 18%, transparent);--ip743-auth-danger:var(--ip75-danger);--ip743-auth-danger-soft:color-mix(in srgb, var(--ip75-danger-soft) 20%, transparent);--ip743-auth-shadow:0 34px 100px color-mix(in srgb, var(--ip75-text) 52%, transparent);}
html, body.ip-ui{color-scheme:light;}
html[data-theme="dark"], html[data-theme="dark"] body.ip-ui{color-scheme:dark;}
body.ip-ui{position:relative!important;isolation:isolate;}
body.ip-ui::before{content:"";position:fixed;z-index:-1;inset:0;pointer-events:none;background-image:linear-gradient(color-mix(in srgb, var(--ip75-surface) 4%, transparent) 1px, transparent 1px),
    linear-gradient(90deg, color-mix(in srgb, var(--ip75-surface) 4%, transparent) 1px, transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom, color-mix(in srgb, var(--ip75-text) 75%, transparent), transparent 88%);}
html[data-theme="dark"] body.ip-ui .ip-login-brand{background:linear-gradient(150deg, var(--ip75-bg), var(--ip75-bg))!important;}
body.ip-ui .ip-login-theme-toggle{position:absolute;top:16px;right:16px;z-index:5;width:36px;height:36px;display:inline-grid;place-items:center;padding:0;color:var(--ip743-auth-muted);background:var(--ip743-auth-soft);border:1px solid var(--ip743-auth-border);border-radius:10px;box-shadow:var(--ip75-shadow-xs);cursor:pointer;transition:color .15s ease, background .15s ease, border-color .15s ease, transform .15s ease;}
body.ip-ui .ip-login-theme-toggle:hover{color:var(--ip743-auth-primary);background:var(--ip743-auth-primary-soft);border-color:color-mix(in srgb, var(--ip743-auth-primary) 35%, var(--ip743-auth-border));transform:translateY(-1px);}
body.ip-ui .ip-login-theme-toggle svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
body.ip-ui .ip-login-theme-toggle .theme-sun, html[data-theme="dark"] body.ip-ui .ip-login-theme-toggle .theme-moon{display:none;}
html[data-theme="dark"] body.ip-ui .ip-login-theme-toggle .theme-sun{display:block;}
body.ip-ui .ip-login-version{color:var(--ip743-auth-muted)!important;background:color-mix(in srgb, var(--ip743-auth-surface) 82%, transparent)!important;border-color:var(--ip743-auth-border)!important;}
body.ip-ui .ip-login-eyebrow{border-color:color-mix(in srgb, var(--ip743-auth-primary) 32%, var(--ip743-auth-border))!important;}
body.ip-ui .ip-login-input-wrap input{color:var(--ip743-auth-strong)!important;background:var(--ip743-auth-surface)!important;border-color:var(--ip743-auth-border-strong)!important;}
body.ip-ui .ip-login-input-wrap input::placeholder{color:color-mix(in srgb, var(--ip743-auth-muted) 75%, transparent)!important;}
body.ip-ui .ip-login-input-wrap input:focus{border-color:var(--ip743-auth-primary)!important;box-shadow:var(--ip75-focus)!important;}
body.ip-ui .ip-login-submit{border-color:color-mix(in srgb, var(--ip75-primary) 30%, var(--ip75-border))!important;box-shadow:var(--ip75-shadow-xs)!important;}
body.ip-ui .ip-login-submit:hover{background:var(--ip75-primary)!important;border-color:color-mix(in srgb, var(--ip75-primary) 30%, var(--ip75-border))!important;}
body.ip-ui :where(button, input):focus-visible{outline:2px solid var(--ip743-auth-primary)!important;outline-offset:2px!important;}
html[data-theme="dark"] body.ip-ui .ip-login-brand::before{border-color:color-mix(in srgb, var(--ip75-primary) 2%, var(--ip75-border))!important;}
html[data-theme="dark"] body.ip-ui .ip-login-brand::after{border-color:color-mix(in srgb, var(--ip75-primary) 3%, var(--ip75-border))!important;}
@media (max-width: 900px){
body.ip-ui .ip-login-shell{width:min(500px, 100%)!important;grid-template-columns:minmax(0, 1fr)!important;min-height:0!important;}
body.ip-ui .ip-login-brand{display:none!important;}
body.ip-ui .ip-login-panel{padding:42px 34px 34px!important;}
}
@media (max-width: 560px){
body.ip-ui{display:block!important;padding:0!important;background:var(--ip743-auth-surface)!important;}
body.ip-ui::before{display:none;}
body.ip-ui .ip-login-shell{width:100%!important;min-height:100dvh!important;border:0!important;border-radius:0!important;box-shadow:none!important;}
body.ip-ui .ip-login-panel{min-height:100dvh!important;justify-content:center!important;padding:58px 22px 28px!important;}
body.ip-ui .ip-login-theme-toggle{top:14px;right:14px;}
body.ip-ui .ip-login-panel-head h2{font-size:21px!important;}
body.ip-ui .ip-login-input-wrap input{font-size:16px!important;}
}
@media (max-height: 650px) and (min-width: 901px){
body.ip-ui{place-items:start center!important;}
body.ip-ui .ip-login-shell{margin-block:12px!important;}
body.ip-ui .ip-login-brand{padding:24px 30px!important;}
body.ip-ui .ip-login-panel{padding:30px 40px!important;}
body.ip-ui .ip-login-brand-main h1{font-size:25px!important;}
body.ip-ui .ip-login-capability{padding:8px!important;}
body.ip-ui .ip-login-panel-head{margin-bottom:16px!important;}
body.ip-ui .ip-login-form{gap:12px!important;}
}
@media (prefers-reduced-motion: reduce){
body.ip-ui *, body.ip-ui *::before, body.ip-ui *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;}
}
:root{--auth-bg:var(--ip75-surface);--auth-surface:var(--ip75-surface);--auth-text:var(--ip75-text);--auth-muted:var(--ip75-muted);--auth-border:var(--ip75-border);--auth-primary:var(--ip75-primary);--auth-side:var(--ip75-text);}
html[data-theme="dark"]{--auth-bg:var(--ip75-surface);--auth-surface:var(--ip75-surface);--auth-text:var(--ip75-text);--auth-muted:var(--ip75-muted);--auth-border:var(--ip75-border);--auth-primary:var(--ip75-primary);--auth-side:var(--ip75-text);}
body.ip-ui{display:grid!important;place-items:center!important;padding:20px!important;background:var(--auth-bg)!important;overflow:auto!important;}
body.ip-ui .ip-login-shell{width:min(980px,100%)!important;min-height:560px!important;max-height:calc(100dvh - 40px)!important;display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr)!important;overflow:hidden!important;border:1px solid var(--auth-border)!important;border-radius:12px!important;background:var(--auth-surface)!important;box-shadow:var(--ip75-shadow-xs)!important;}
body.ip-ui .ip-login-brand{min-width:0!important;padding:28px!important;background:var(--auth-side)!important;color:var(--ip75-on-primary)!important;overflow:hidden!important;}
body.ip-ui .ip-login-brand-main{margin:auto 0!important;}
body.ip-ui .ip-login-brand-main h1{max-width:480px!important;font-size:clamp(25px,3vw,38px)!important;line-height:1.08!important;}
body.ip-ui .ip-login-brand-main p{max-width:520px!important;font-size:13px!important;line-height:1.55!important;}
body.ip-ui .ip-login-capabilities{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:22px!important;}
body.ip-ui .ip-login-capability{min-height:58px!important;padding:10px!important;border-radius:10px!important;background:color-mix(in srgb, var(--ip75-surface) 6%, transparent)!important;border:1px solid color-mix(in srgb, var(--ip75-border) 8%, transparent)!important;}
body.ip-ui .ip-login-panel{position:relative!important;display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:0!important;padding:34px!important;background:var(--auth-surface)!important;color:var(--auth-text)!important;overflow:auto!important;}
body.ip-ui .ip-login-panel-head h2{font-size:24px!important;color:var(--auth-text)!important;}
body.ip-ui .ip-login-panel-head p{font-size:12.5px!important;color:var(--auth-muted)!important;}
body.ip-ui .ip-login-form{display:flex!important;flex-direction:column!important;gap:12px!important;margin-top:18px!important;}
body.ip-ui .ip-login-field input{min-height:42px!important;height:42px!important;border-radius:9px!important;background:var(--auth-surface)!important;color:var(--auth-text)!important;border:1px solid var(--auth-border)!important;}
body.ip-ui .ip-login-submit{min-height:42px!important;border-radius:9px!important;background:var(--ip75-primary)!important;color:var(--ip75-on-primary)!important;}
body.ip-ui .ip-login-theme-toggle{top:16px!important;right:16px!important;width:34px!important;height:34px!important;}
@media (max-width: 820px){
body.ip-ui{padding:10px!important;}
body.ip-ui .ip-login-shell{width:min(460px,100%)!important;min-height:0!important;max-height:none!important;grid-template-columns:1fr!important;}
body.ip-ui .ip-login-brand{display:none!important;}
body.ip-ui .ip-login-panel{min-height:min(620px,calc(100dvh - 20px))!important;padding:28px 22px!important;}
}
@media (max-height: 650px) and (min-width: 821px){
body.ip-ui .ip-login-shell{min-height:0!important;height:calc(100dvh - 24px)!important;}
body.ip-ui .ip-login-brand{padding:22px!important;}
body.ip-ui .ip-login-capabilities{display:none!important;}
body.ip-ui .ip-login-panel{padding:24px 30px!important;}
}
body.ip-ui .ip-login-submit svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;}
body.ip-ui .ip-login-security strong{display:block;}
