.auth-login{grid-template-columns:1fr 1fr;height:100vh;display:grid;overflow:hidden}.auth-visual{background:var(--bg);height:100%;min-height:0;position:relative;overflow:hidden}.auth-visual img{object-fit:cover;width:100%;height:100%;display:block}.auth-visual:after{content:"";background:linear-gradient(180deg, transparent 45%, color-mix(in srgb, var(--bg) 82%, transparent) 100%), linear-gradient(90deg, transparent 0%, transparent 60%, var(--bg) 100%);pointer-events:none;position:absolute;inset:0}.auth-visual-overlay{z-index:2;flex-direction:column;justify-content:flex-end;gap:12px;padding:48px;display:flex;position:absolute;inset:0}.auth-visual-overlay h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-display);color:var(--on-photo);text-shadow:0 2px 20px #000c;max-width:420px;margin:0}.auth-visual-overlay p{color:var(--on-photo-2);font-size:var(--fs-xl);line-height:var(--lh-normal);text-shadow:0 1px 12px #000000e6;max-width:380px;margin:0}.auth-form-side{place-items:center;height:100%;min-height:0;padding:24px 20px;display:grid;overflow-y:auto}.auth-card{border:1px solid var(--line-2);border-radius:var(--radius);background:var(--panel);width:min(100%,460px);animation:predicto-enter var(--motion-slow) var(--ease-out) both;--auth-gap:clamp(8px, 1.6vh, 16px);--auth-block:clamp(12px, 2.2vh, 22px);--auth-sub-block:clamp(10px, 2vh, 22px);padding:26px 26px 24px}.auth-sub{margin:0 0 var(--auth-sub-block)}.auth-card label{margin:var(--auth-gap) 0}.auth-checkbox{margin:var(--auth-block) 0!important}.auth-card hr{margin:0 0 var(--auth-block)}.auth-alt{margin:var(--auth-block) 0 0}@media (max-height:760px){.auth-form-side{padding:14px 20px}.auth-card{padding:18px 22px 16px}.auth-card hr{display:none}.auth-brand{margin-bottom:6px}.auth-card h1{font-size:var(--fs-2xl)}.auth-sub{font-size:var(--fs-md)}.auth-card input[type=text],.auth-card input[type=email],.auth-card input[type=password],.auth-card button{min-height:40px}}@media (max-height:690px){.auth-form-side{padding:10px 16px}.auth-card{padding:14px 18px 12px}.auth-brand{font-size:var(--fs-2xl);margin-bottom:4px}.auth-sub{display:none}.auth-card label{gap:4px}}.auth-brand{font-size:var(--fs-display-sm);margin-bottom:14px}.auth-brand span{color:var(--text)}.auth-brand strong{color:var(--brand)}.auth-card hr{border:0;border-top:1px solid var(--line-2);margin:0 0 22px}.auth-card h1{font-family:var(--font-display);font-size:var(--fs-display-md);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-display);line-height:var(--lh-display);margin:0 0 8px}.auth-sub{color:var(--muted);line-height:var(--lh-normal);font-size:var(--fs-xl);margin:0 0 22px}.auth-card label{color:var(--text-2);font-weight:var(--fw-semibold);font-size:var(--fs-sm);gap:6px;margin:16px 0;display:grid}.auth-card input[type=text],.auth-card input[type=email],.auth-card input[type=password]{border:1px solid var(--line-2);border-radius:var(--radius-xs);background:var(--surface-3);min-height:44px;color:var(--text);font:inherit;font-size:var(--fs-md);transition:border-color var(--motion-fast), background var(--motion-fast);padding:10px 12px}.auth-card input::placeholder{color:var(--dim)}.auth-card input:hover{border-color:var(--line-strong)}.auth-card input:focus-visible{border-color:var(--brand);outline-offset:0}.auth-card input[aria-invalid=true]{border-color:var(--negative)}.auth-checkbox{line-height:var(--lh-normal);align-items:start;font-size:var(--fs-sm)!important;font-weight:var(--fw-medium)!important;color:var(--muted)!important;grid-template-columns:auto 1fr!important;gap:10px!important;margin:20px 0!important;display:grid!important}.auth-checkbox input{width:18px;height:18px;margin-top:3px}.field-error{color:var(--negative);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.auth-card button{border:1px solid var(--brand);border-radius:var(--radius-xs);background:var(--brand);width:100%;min-height:44px;color:var(--brand-ink);font:inherit;font-size:var(--fs-md);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--motion-fast), border-color var(--motion-fast);margin-top:6px;padding:0 18px}.auth-card button:hover:not(:disabled){border-color:var(--brand-hover);background:var(--brand-hover)}.auth-card button:disabled{opacity:.5;cursor:not-allowed}.auth-alt{text-align:center;color:var(--muted);font-size:var(--fs-lg);margin:20px 0 0}.auth-alt a{color:var(--brand);font-weight:var(--fw-semibold)}.auth-alt a:hover,.auth-alt a:focus-visible,.auth-inline-link a:hover,.auth-inline-link a:focus-visible{text-decoration:underline}.auth-alt a:focus-visible,.auth-inline-link a:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.auth-inline-link{text-align:right;font-size:var(--fs-lg);margin:-8px 0 14px}.auth-inline-link a{color:var(--brand);font-weight:var(--fw-semibold)}.auth-success{color:var(--green);font-weight:var(--fw-semibold)}@media (max-width:900px){.auth-login{grid-template-columns:1fr;height:auto;min-height:100vh;overflow:visible}.auth-visual{display:none}.auth-form-side{height:auto;min-height:0;padding:24px 20px 48px;overflow-y:visible}}@media (max-width:520px){.auth-login{height:auto;min-height:100vh;padding:0;overflow:visible}.auth-form-side{height:auto;min-height:0;padding:12px 14px 32px;overflow-y:visible}.auth-card{border-radius:var(--radius);padding:18px 16px}.auth-card h1{font-size:var(--fs-2xl);letter-spacing:-.03em}.auth-brand{font-size:var(--fs-2xl);margin-bottom:8px}}a.auth-brand{color:inherit;text-decoration:none}a.auth-brand:focus-visible{outline:2px solid var(--brand);outline-offset:4px;border-radius:var(--radius-xs)}.auth-home-link{margin:var(--auth-gap,12px) 0 0;text-align:center;font-size:var(--fs-sm)}.auth-home-link a{min-height:44px;color:var(--muted);font-weight:var(--fw-semibold);align-items:center;display:inline-flex}.auth-home-link a:hover,.auth-home-link a:focus-visible{color:var(--text);text-decoration:underline}.auth-submit-link{border-radius:var(--radius-xs);background:var(--brand);width:100%;min-height:44px;color:var(--brand-ink);font-size:var(--fs-md);font-weight:var(--fw-semibold);justify-content:center;align-items:center;margin-top:6px;padding:0 18px;text-decoration:none;display:flex}.auth-submit-link:hover{background:var(--brand-hover)}.auth-submit-link:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
