.auth-page{background:var(--eg-bg);font-family:var(--eg-font-body);min-height:100vh}.auth-layout{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.auth-brand{background:linear-gradient(135deg,var(--eg-ink) 0,var(--eg-ink-mid) 55%,var(--eg-action) 100%);color:var(--eg-surface);display:flex;flex-direction:column;justify-content:center;padding:4rem 8%;position:relative}.auth-brand__logo{align-items:center;background:#fff;border-radius:12px;box-shadow:0 8px 24px #0000002e;display:inline-flex;left:8%;padding:.45rem .7rem;position:absolute;text-decoration:none;top:2rem}.auth-brand__logo img{display:block;height:48px;width:auto}.auth-brand__kicker{color:var(--eg-accent);font-size:.78rem;font-weight:800;letter-spacing:.12em;margin-bottom:1.25rem;text-transform:uppercase}.auth-brand h1{font-family:var(--eg-font-display);font-size:clamp(2rem,4.5vw,3.25rem);font-weight:400;line-height:1.1;margin:0 0 1.25rem;max-width:14ch}.auth-brand h1 strong{color:var(--eg-accent);display:block;font-weight:500}.auth-brand p{color:#ffffffd1;font-size:1.05rem;line-height:1.75;margin:0;max-width:32rem}.auth-brand__back{color:var(--eg-surface);display:inline-block;font-size:.9rem;font-weight:600;margin-top:2rem;text-decoration:none}.auth-form-side{align-items:center;display:flex;justify-content:center;padding:3rem 2rem}.auth-card{background:var(--eg-surface);border:1px solid var(--eg-border);border-radius:var(--eg-radius-lg);box-shadow:var(--eg-shadow-md);max-width:28rem;padding:2.75rem 2.25rem;width:100%}.auth-card__kicker{color:var(--eg-accent);font-size:var(--eg-text-kicker);font-weight:800;letter-spacing:var(--eg-tracking-kicker);text-transform:uppercase}.auth-card h2{color:var(--eg-ink);font-family:var(--eg-font-display);font-size:clamp(1.75rem,3vw,2.25rem);margin:.75rem 0 .5rem}.auth-card__intro{color:var(--eg-muted);font-size:.95rem;line-height:1.65;margin-bottom:1.5rem}.auth-alert{border-radius:var(--eg-radius-sm);font-size:.88rem;margin-bottom:1rem;padding:.75rem .9rem}.auth-alert--error{background:var(--eg-error-bg);border:1px solid var(--eg-error-border);color:var(--eg-error)}.auth-alert--success{background:var(--eg-success-bg);border:1px solid var(--eg-success-border);color:var(--eg-success)}.auth-field{margin-bottom:1.15rem}.auth-field label{color:var(--eg-ink);display:block;font-size:.86rem;font-weight:700;margin-bottom:.45rem}.auth-field input{border:1px solid var(--eg-field-border);border-radius:var(--eg-radius-sm);box-sizing:border-box;font-family:inherit;font-size:.92rem;outline:none;padding:.8rem .9rem;transition:border-color var(--eg-duration-fast) ease,box-shadow var(--eg-duration-fast) ease;width:100%}.auth-field input:focus{border-color:var(--eg-action);box-shadow:0 0 0 4px #2563eb14}.auth-row{font-size:.82rem;gap:1rem;justify-content:space-between;margin:.25rem 0 1.25rem}.auth-check,.auth-row{align-items:center;display:flex}.auth-check{color:var(--eg-muted);gap:.4rem}.auth-link{background:none;color:var(--eg-action);font-size:inherit;font-weight:600;padding:0;text-decoration:none}.auth-link,.auth-submit{border:none;cursor:pointer;font-family:inherit}.auth-submit{background:var(--eg-accent);border-radius:var(--eg-radius-sm);color:var(--eg-surface);font-size:1rem;font-weight:700;padding:.9rem 1.25rem;transition:transform var(--eg-duration-normal) ease,box-shadow var(--eg-duration-normal) ease;width:100%}.auth-submit:hover:not(:disabled){box-shadow:0 8px 22px #f28c2847;transform:translateY(-1px)}.auth-submit:disabled{cursor:not-allowed;opacity:.7}.auth-foot{color:var(--eg-muted);font-size:.84rem;margin:1.25rem 0 0;text-align:center}.auth-foot a{color:var(--eg-action);font-weight:700;text-decoration:none}.auth-password-strength{font-size:.78rem;font-weight:600;margin:.45rem 0 0}.auth-password-strength--weak{color:var(--eg-error)}.auth-password-strength--medium{color:var(--eg-accent)}.auth-password-strength--strong{color:var(--eg-success)}@media(max-width:768px){.auth-layout{grid-template-columns:1fr}.auth-brand{min-height:auto;padding:6rem 1.75rem 3rem}.auth-brand__logo{left:1.75rem;top:1.5rem}.auth-form-side{padding:2rem 1.25rem}.auth-card{padding:2rem 1.5rem}.auth-row{align-items:flex-start;flex-direction:column}}
