/* AIEBA authentication pages — scoped styles to avoid changing other pages. */
.auth-page{--auth-navy:#071b35;--auth-gold:#d9a62e;--auth-ink:#182338;--auth-muted:#647187;--auth-border:#e1e7ef;position:relative;isolation:isolate;overflow:hidden;padding:clamp(32px,5vw,76px) 22px;background:radial-gradient(ellipse at 12% 12%,rgba(217,166,46,.13),transparent 34%),linear-gradient(135deg,#f7f9fc 0%,#fff 55%,#f4f7fb 100%);}
.auth-page:before{content:"";position:absolute;z-index:-1;width:420px;height:420px;right:-190px;top:-180px;border:1px solid rgba(7,27,53,.08);border-radius:50%;box-shadow:0 0 0 42px rgba(7,27,53,.018),0 0 0 84px rgba(7,27,53,.015);pointer-events:none}
.auth-shell{width:min(1120px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.92fr);align-items:stretch;gap:clamp(28px,5vw,72px)}
.auth-intro{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(8px,2vw,28px) 0;color:var(--auth-navy)}
.auth-mark{display:inline-flex;align-items:center;justify-content:center;width:82px;height:82px;padding:9px;background:#fff;border:1px solid rgba(217,166,46,.35);border-radius:22px;box-shadow:0 12px 30px rgba(7,27,53,.08);margin-bottom:34px}
.auth-mark img{display:block;width:100%;height:100%;object-fit:contain}
.auth-kicker{margin:0 0 15px;color:#9a7011;font-size:.76rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.auth-intro h1{max-width:570px;margin:0 0 18px;color:var(--auth-navy);font-size:clamp(2.35rem,4.2vw,4.1rem);font-weight:800;line-height:1.05;letter-spacing:-.045em}
.auth-intro-copy{max-width:510px;margin:0;color:#5d6b80;font-size:1.06rem;line-height:1.8}
.auth-benefits{display:grid;gap:19px;margin:34px 0 28px}
.auth-benefit{display:flex;align-items:flex-start;gap:13px}
.auth-benefit>span{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:rgba(23,132,73,.11);color:#178449;font-weight:900}
.auth-benefit strong,.auth-benefit small{display:block}
.auth-benefit strong{margin:1px 0 4px;color:var(--auth-navy);font-size:.96rem}
.auth-benefit small{color:var(--auth-muted);font-size:.88rem;line-height:1.5}
.auth-intro-foot{margin:auto 0 0;padding-top:14px;color:#778398;font-size:.8rem;letter-spacing:.02em}
.auth-card{align-self:center;width:100%;padding:clamp(25px,3.2vw,43px);border:1px solid rgba(218,225,235,.95);border-radius:24px;background:rgba(255,255,255,.96);box-shadow:0 24px 70px rgba(7,27,53,.10);}
.auth-card-heading{margin-bottom:28px}
.auth-card-heading .eyebrow{margin:0 0 13px;color:#9a7011;font-size:.73rem;font-weight:800;letter-spacing:.15em}
.auth-card-heading h2{margin:0 0 10px;color:var(--auth-ink);font-size:clamp(2rem,3.3vw,2.75rem);font-weight:800;line-height:1.12;letter-spacing:-.04em}
.auth-card-heading>p:last-child{margin:0;color:var(--auth-muted);font-size:.96rem;line-height:1.65}
.auth-form{display:grid;gap:19px}
.auth-field{display:grid;gap:8px;min-width:0}
.auth-field label{color:#26344a;font-size:.9rem;font-weight:700}
.auth-field input{display:block;width:100%;min-width:0;min-height:51px;padding:13px 15px;border:1px solid #d5dce7;border-radius:11px;background:#fff;color:var(--auth-ink);font:inherit;font-size:1rem;line-height:1.4;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.auth-field input::placeholder{color:#9aa5b5}
.auth-field input:hover{border-color:#aeb9c9}
.auth-field input:focus{border-color:var(--auth-gold);box-shadow:0 0 0 4px rgba(217,166,46,.16)}
.auth-field small{color:#738096;font-size:.8rem;line-height:1.55}
.auth-submit{display:flex;align-items:center;justify-content:center;gap:13px;width:100%;min-height:53px;margin-top:3px;padding:14px 18px;border:0;border-radius:12px;background:var(--auth-gold);color:#101b2b;font:inherit;font-weight:800;cursor:pointer;box-shadow:0 8px 18px rgba(217,166,46,.2);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.auth-submit span{font-size:1.2rem;transition:transform .18s ease}
.auth-submit:hover{background:#e5b43f;box-shadow:0 11px 24px rgba(217,166,46,.28);transform:translateY(-1px)}
.auth-submit:hover span{transform:translateX(3px)}
.auth-submit:focus-visible,.auth-card a:focus-visible{outline:3px solid rgba(23,132,73,.5);outline-offset:3px}
.auth-switch{margin:23px 0 0;color:var(--auth-muted);text-align:center;font-size:.92rem;line-height:1.6}
.auth-card a{color:#77580f;text-decoration-thickness:1px;text-underline-offset:3px;font-weight:700}
.auth-card a:hover{color:var(--auth-navy)}
.auth-legal{margin:22px 0 0;padding-top:18px;border-top:1px solid #edf0f5;color:#778398;font-size:.76rem;line-height:1.7}
.auth-legal a{font-weight:600}
.auth-alert{margin:0 0 21px;padding:13px 15px;border:1px solid #f0c8c4;border-radius:11px;background:#fff5f4;color:#8b2e28}
.auth-alert strong{display:block;margin-bottom:4px;font-size:.9rem}
.auth-alert p{margin:0;font-size:.88rem;line-height:1.55}
.auth-security-note{display:flex;gap:12px;margin-top:25px;padding:15px;border:1px solid #e6edf4;border-radius:12px;background:#f7f9fc;color:#6a778a}
.auth-security-note>span{font-size:1.2rem;color:#178449}
.auth-security-note p{margin:0;font-size:.8rem;line-height:1.6}
.auth-security-note strong{color:#25354b}
@media(max-width:900px){.auth-shell{grid-template-columns:minmax(0,1fr) minmax(340px,.95fr);gap:28px}.auth-intro h1{font-size:clamp(2.15rem,4vw,3.1rem)}.auth-card{padding:28px}}
@media(max-width:700px){.auth-page{padding:26px 16px 36px}.auth-shell{max-width:520px;grid-template-columns:minmax(0,1fr);gap:22px}.auth-intro{padding:2px 2px 0}.auth-mark{width:58px;height:58px;padding:6px;margin-bottom:20px;border-radius:16px}.auth-kicker{font-size:.68rem;margin-bottom:10px}.auth-intro h1{max-width:460px;font-size:clamp(2rem,8vw,2.8rem);margin-bottom:12px}.auth-intro-copy{font-size:.94rem;line-height:1.65}.auth-benefits{grid-template-columns:1fr;gap:12px;margin:20px 0 0}.auth-benefit small{font-size:.82rem}.auth-intro-foot{display:none}.auth-card{padding:25px 21px;border-radius:19px}.auth-card-heading{margin-bottom:23px}.auth-card-heading h2{font-size:2rem}.auth-form{gap:17px}.auth-field input{min-height:50px}.auth-switch{margin-top:20px}.auth-legal{margin-top:18px;padding-top:15px}}
@media(max-width:380px){.auth-page{padding-inline:12px}.auth-card{padding:22px 17px}.auth-intro h1{font-size:1.9rem}.auth-card-heading h2{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){.auth-field input,.auth-submit,.auth-submit span{transition:none}}
