/* Shared login, registration, and password recovery presentation. */
#auth-page { grid-template-columns:minmax(0,1fr) minmax(0,.95fr);padding:20px;gap:20px;background:#fff;min-height:100svh; }
#auth-page .auth-main { padding:22px clamp(24px,4vw,64px) 14px; }
#auth-page .auth-content { max-width:440px;padding:38px 0; }
#auth-page .auth-content > .back-link { display:inline-block;font-size:.875rem;margin-bottom:28px;color:#56647a; }
.auth-form-emblem { display:flex;align-items:center;justify-content:center;width:58px;height:58px;background:#edf2ff;color:#3d5de0;border:1px solid #dde5fc;border-radius:17px; }
.auth-form-emblem .icon { width:26px;height:26px; }
#auth-page .auth-content > .eyebrow { margin:22px 0 10px;font-size:.75rem;letter-spacing:.13em;color:#3d5de0; }
#auth-page .auth-content h1 { font-size:clamp(2rem,3vw,2.65rem);line-height:1.16;letter-spacing:-.045em; }
#auth-page .auth-intro { font-size:1rem;line-height:1.75;color:#56647a;margin-bottom:26px; }
#auth-page .setup-notice { border:0;border-left:3px solid #b6c5f6;background:#f4f6fc;color:#56647a;font-size:.8125rem;padding:12px 15px;line-height:1.75;border-radius:0 8px 8px 0;margin-bottom:24px; }
#auth-page .auth-content .field label { font-size:.875rem; }
#auth-page .auth-content .field input { height:54px;font-size:1rem;border-color:#ced7e7;border-radius:10px; }
#auth-page .auth-content .field input::placeholder { color:#758096; }
#auth-page .auth-content .button { justify-content:center;min-height:54px;font-size:1rem;border-radius:10px;background:#3d5de0; }
#auth-page .auth-tabs a,#auth-page .google-button { font-size:.875rem; }
#auth-page .auth-switch { font-size:.875rem;margin-top:24px; }
#auth-page .auth-reassurance { font-size:.75rem;line-height:1.7;color:#657187;align-items:flex-start;margin-top:28px;text-align:center; }
#auth-page .auth-reassurance .icon { margin-top:3px; }
#auth-page .auth-footer { font-size:.75rem;flex-wrap:wrap;row-gap:8px;color:#657187; }
#auth-page .auth-aside { align-self:stretch;justify-content:center;padding:clamp(28px,4vw,64px);background:#eef3fc;border-radius:24px;min-width:0; }
#auth-page .auth-aside:before { display:none; }
#auth-page .auth-aside-tag { color:#3d5de0;font-size:.75rem;letter-spacing:.12em; }
#auth-page .auth-aside > h2 { font-size:clamp(2rem,3.4vw,3.2rem);line-height:1.15;letter-spacing:-.045em;margin:20px 0 16px; }
#auth-page .auth-aside > h2 span { color:#3d5de0; }
#auth-page .auth-aside > p { font-size:1rem;line-height:1.75;color:#56647a; }
.auth-career-image { margin:28px 0 0;width:100%;max-width:480px;flex-shrink:0;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 12px 32px #2137640b; }
.auth-career-image img { display:block;width:100%;max-width:100%;height:auto;aspect-ratio:auto;object-fit:contain; }
.auth-career-image figcaption { display:flex;align-items:center;gap:12px;padding:18px 20px;background:#071b35;color:#fff; }
.auth-caption-icon { display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;background:#ffffff12;border:1px solid #ffffff20;border-radius:10px;color:#c1ceff; }
.auth-career-image strong { display:block;font-size:.9375rem;line-height:1.5;font-weight:500; }
.auth-career-image small { display:block;font-size:.75rem;line-height:1.7;color:#c1ccdf;margin-top:3px; }
.auth-price-line { width:100%;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:20px 0;border-bottom:1px solid #d7e0ef;color:#56647a;font-size:.8125rem; }
.auth-price-line strong { color:#071b35;font-size:1.4rem;font-weight:600;letter-spacing:-.035em; }
#auth-page .auth-aside-features { align-self:flex-start;margin-top:18px;padding-top:0;font-size:.8125rem;color:#56647a;flex-wrap:wrap;gap:10px 20px; }
@media(min-width:1600px) { #auth-page .auth-aside { padding-inline:clamp(64px,7vw,140px); } }
@media(max-width:1000px) { #auth-page { padding:12px;gap:10px; }#auth-page .auth-main { padding-inline:24px; }#auth-page .auth-aside { padding:28px; }.auth-career-image figcaption { padding:15px; } }
@media(max-width:760px) { #auth-page { display:block;padding:0; }#auth-page .auth-main { min-height:100svh;padding:25px 24px 22px; }#auth-page .auth-aside { display:none; }#auth-page .auth-content { padding:32px 0; }#auth-page .auth-content h1 { font-size:2.1rem; } }

/* Keep the panel's content in one column the width of the photo, centred, so the price line and checks
   line up with the image instead of stretching across the panel. */
#auth-page .auth-aside { align-items:center; }
#auth-page .auth-aside > * { width:100%;max-width:480px; }
#auth-page .auth-aside > .auth-aside-tag { display:flex; }
#auth-page .auth-aside-features { align-self:center; }
