*{box-sizing:border-box}
.auth-page{margin:0;min-height:100vh;background:#f4f7fb;color:#172033;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(320px,42%) 1fr}
.auth-showcase{position:relative;overflow:hidden;padding:clamp(32px,5vw,72px);background:linear-gradient(145deg,var(--cor-secundaria),#172554 58%,var(--cor-primaria));color:#fff}
.auth-showcase:before,.auth-showcase:after{content:"";position:absolute;border-radius:999px;background:rgba(255,255,255,.08)}
.auth-showcase:before{width:420px;height:420px;right:-180px;top:-110px}.auth-showcase:after{width:280px;height:280px;left:-130px;bottom:-80px}
.auth-showcase__inner{position:relative;z-index:1;min-height:calc(100vh - clamp(64px,10vw,144px));display:flex;flex-direction:column}
.auth-brand{display:inline-flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-size:1.15rem}.auth-brand img{display:block;max-width:190px;max-height:54px;object-fit:contain}.auth-brand__mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(255,255,255,.16);font-weight:800}
.auth-showcase__copy{margin:auto 0;max-width:620px}.auth-eyebrow{display:inline-block;color:var(--cor-destaque);font-size:.78rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.auth-showcase h1{margin:16px 0 18px;font-size:clamp(2.1rem,4vw,4rem);line-height:1.04;letter-spacing:-.045em}.auth-showcase p{margin:0;max-width:560px;color:rgba(255,255,255,.78);font-size:1.05rem;line-height:1.75}.auth-features{display:flex;flex-wrap:wrap;gap:12px 24px;color:rgba(255,255,255,.82);font-size:.9rem}
.auth-panel{display:grid;place-items:center;padding:clamp(24px,5vw,72px);background:radial-gradient(circle at top right,rgba(37,99,235,.09),transparent 34%),#f7f9fc}.auth-panel__inner{width:min(100%,720px)}
.auth-card{width:min(100%,500px);margin:auto;padding:clamp(26px,4vw,44px);border:1px solid #e2e8f0;border-radius:24px;background:rgba(255,255,255,.94);box-shadow:0 24px 70px rgba(15,23,42,.12);backdrop-filter:blur(16px)}.auth-card--wide{width:min(100%,720px)}
.auth-card__header{margin-bottom:26px}.auth-card__header h2{margin:8px 0 9px;color:#172033;font-size:clamp(1.65rem,3vw,2.25rem);letter-spacing:-.035em}.auth-card__header p{margin:0;color:#64748b;line-height:1.65}.auth-card__header strong{color:#334155}
.auth-form{display:grid;gap:18px}.auth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.auth-grid__full{grid-column:1/-1}.auth-field{display:grid;gap:8px;color:#334155;font-size:.9rem;font-weight:700}.auth-field small{color:#94a3b8;font-weight:500}.auth-field input{width:100%;height:50px;padding:0 15px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#0f172a;font:inherit;font-weight:500;outline:none;transition:border-color .18s,box-shadow .18s,transform .18s}.auth-field input::placeholder{color:#94a3b8}.auth-field input:focus{border-color:var(--cor-primaria);box-shadow:0 0 0 4px color-mix(in srgb,var(--cor-primaria) 14%,transparent)}
.auth-button{height:52px;border:0;border-radius:13px;background:linear-gradient(135deg,var(--cor-primaria),color-mix(in srgb,var(--cor-primaria) 76%,#7c3aed));color:#fff;font:inherit;font-weight:800;cursor:pointer;box-shadow:0 12px 28px color-mix(in srgb,var(--cor-primaria) 28%,transparent);transition:transform .18s,filter .18s}.auth-button:hover{transform:translateY(-1px);filter:brightness(1.04)}.auth-button:disabled{opacity:.55;cursor:not-allowed;transform:none}
.auth-check{display:flex;align-items:flex-start;gap:11px;color:#64748b;font-size:.86rem;line-height:1.5}.auth-check input{margin-top:4px;accent-color:var(--cor-primaria)}.auth-switch{margin:22px 0 0;text-align:center;color:#64748b;font-size:.92rem}.auth-switch a{color:var(--cor-primaria);font-weight:800;text-decoration:none}.auth-switch a:hover{text-decoration:underline}
.auth-alert{margin-bottom:20px;padding:13px 15px;border-radius:12px;font-size:.9rem;line-height:1.5}.auth-alert--error{border:1px solid #fecaca;background:#fff1f2;color:#b42318}.auth-alert--success{border:1px solid #a7f3d0;background:#ecfdf5;color:#067647}.auth-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:900px){.auth-shell{grid-template-columns:1fr}.auth-showcase{padding:28px;min-height:auto}.auth-showcase__inner{min-height:auto}.auth-showcase__copy{margin:52px 0 34px}.auth-showcase h1{font-size:2.25rem}.auth-features{display:none}.auth-panel{padding:26px 18px 42px}}
@media(max-width:600px){.auth-showcase__copy p{font-size:.95rem}.auth-grid{grid-template-columns:1fr}.auth-grid__full{grid-column:auto}.auth-card{padding:24px 19px;border-radius:19px}.auth-field input{height:48px}}
@media(prefers-color-scheme:dark){.auth-page{background:#07101f;color:#e5edf8}.auth-panel{background:radial-gradient(circle at top right,rgba(37,99,235,.13),transparent 35%),#07101f}.auth-card{border-color:#22304a;background:rgba(15,23,42,.94);box-shadow:0 26px 74px rgba(0,0,0,.28)}.auth-card__header h2{color:#f8fafc}.auth-card__header p,.auth-switch,.auth-check{color:#94a3b8}.auth-card__header strong,.auth-field{color:#dbe4f0}.auth-field input{border-color:#334155;background:#111c30;color:#f8fafc}.auth-alert--error{border-color:#7f1d1d;background:#2b1115;color:#fecaca}.auth-alert--success{border-color:#065f46;background:#09251d;color:#a7f3d0}}
