.auth-page{min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:clamp(1rem,5vw,3rem);background:var(--background)}.auth-stack{width:min(100%,28rem)}.auth-brand{display:grid;justify-items:center;gap:.25rem;margin-bottom:1.5rem;color:var(--color-deep-plum);font-family:var(--font-display);font-size:1.55rem;letter-spacing:.08em;line-height:1.2;text-decoration:none}.auth-brand span{color:var(--ink-muted);font-family:var(--font-body);font-size:.8125rem;font-weight:500;letter-spacing:0}.auth-card{padding:clamp(1.5rem,5vw,2.5rem);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-medium)}.auth-card form>label{display:block;font-size:var(--text-small);font-weight:600}.auth-card form>label .input{margin-top:.4rem}.auth-card form>button{width:100%}.auth-card fieldset{display:grid;gap:.25rem}.auth-card fieldset label{display:flex;align-items:center;gap:.4rem;min-height:2rem}.auth-card fieldset input{width:1rem;height:1rem;accent-color:var(--color-deep-plum)}.auth-header{margin-bottom:1.75rem}.auth-header h1{margin:0 0 .5rem;font-family:var(--font-display);font-size:clamp(2rem,5vw,2.5rem);font-weight:400;line-height:1.12}.auth-header p{margin:0}.auth-footer{display:grid;gap:.5rem;margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid var(--border-hairline);text-align:center;font-size:var(--text-small)}.auth-footer p{margin:0}.auth-footer a,.auth-secondary-link{color:var(--color-deep-plum);font-weight:700;text-underline-offset:.2em}.auth-footer a:hover,.auth-secondary-link:hover{text-decoration-thickness:2px}.auth-password-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem}@media (max-width:360px){.auth-card{padding:1.25rem}.auth-brand{font-size:1.3rem}}.auth-page{--background:#fffaf7;--surface:#fffdfb;--ink:#261923;--ink-muted:#4c394e;--border:#b4a6ba;--border-hairline:#b4a6ba;--color-deep-plum:#24487e;--font-display:"Cormorant Garamond",Georgia,serif;--font-body:Inter,system-ui,sans-serif;--text-small:.9375rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;color:var(--ink);font:1rem/1.65 var(--font-body);background:radial-gradient(ellipse at 15% 15%,#f9edf3,transparent 55%),radial-gradient(ellipse at 90% 25%,#edf2ff,transparent 50%),radial-gradient(ellipse at 50% 100%,#f1eaf7,transparent 55%),var(--background)}.auth-page *{box-sizing:border-box}.auth-stack{width:min(100%,32rem)}.auth-brand{margin-bottom:1.75rem;letter-spacing:0;text-align:center}.auth-brand img{display:block;width:156px;height:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 8px 18px #56356812)}.auth-brand span{font-family:var(--font-display);font-size:1.125rem;color:#563568;margin-top:.5rem}.auth-card{position:relative;border-radius:26px;box-shadow:0 18px 48px #56356812}.auth-card:before{content:"";position:absolute;inset:7px;border:1px solid var(--border);border-radius:20px;pointer-events:none;opacity:.6}.auth-card>*{position:relative}.auth-header{text-align:center}.auth-header h1{font-size:clamp(2.25rem,5vw,3rem);font-weight:600;line-height:1.15;color:#261923}.auth-header p{max-width:40ch;margin:0 auto;color:var(--ink-muted)}.auth-signin-form{display:grid;gap:.75rem}.auth-password-heading label,.auth-signin-form>label{font-size:1rem;font-weight:600}.auth-card .input{display:block;width:100%;min-height:50px;padding:.8rem 1rem;border:1px solid #78657f;border-radius:12px;background:#fffdfb;color:#261923;font:inherit}.auth-help{margin:0 0 .5rem;font-size:.9375rem;color:#4c394e}.auth-email-consent{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem 0;color:#4c394e;font-size:.9375rem!important;font-weight:400!important;line-height:1.6}.auth-email-consent input{flex:0 0 22px;width:22px;height:22px;margin:.2rem 0;accent-color:#24487e}.auth-card .btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;width:100%;padding:.8rem 1.15rem;border:1px solid #24487e;border-radius:26px;background:#24487e;color:#fff;font:600 1rem/1.4 var(--font-body);text-decoration:none;cursor:pointer}.auth-card .btn:hover{background:#193b6d;box-shadow:0 5px 14px #24487e18}.auth-method{border:0;background:transparent;color:#563568;text-decoration:underline;text-underline-offset:4px;min-height:48px;padding:.65rem;font:600 .9375rem/1.5 var(--font-body);cursor:pointer}.auth-card button:disabled,.auth-card button[aria-disabled=true]{background:#eee8ee;color:#4c394e;cursor:wait;box-shadow:none}.auth-page :is(a,button,input):focus-visible{outline:3px solid #24487e;outline-offset:4px}.auth-error,.auth-message{border:1px solid #78657f;border-radius:12px;padding:1rem;margin:.25rem 0;color:#261923;background:#f9edf3;font-size:.9375rem;overflow-wrap:anywhere}.auth-message{background:#edf8f2;color:#28523f}.auth-footer,.auth-footer a{color:#24487e}.auth-projects{list-style:none;margin:0;padding:0;display:grid;gap:1rem}.auth-projects li{border:1px solid #b4a6ba;border-radius:16px;padding:1.25rem;background:#edf2ff}.auth-projects h2{font-family:var(--font-display);font-size:1.8rem;margin:0 0 .5rem;color:#261923}.auth-projects p{margin:0 0 1rem;color:#4c394e}@media(max-width:360px){.auth-brand img{width:132px}.auth-header h1{font-size:2.25rem}.auth-page{padding:1rem}.auth-card{padding:1.5rem 1.25rem}}@media(prefers-reduced-motion:reduce){.auth-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.auth-client-entry{display:grid;gap:.6rem;margin:0 0 1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-hairline)}.auth-client-entry p{margin:0;text-align:center;font-size:.9375rem;color:#4c394e}.auth-client-entry .auth-client-link{background:#edf2ff;color:#24487e}.auth-client-entry .auth-client-link:hover{background:#dfe8fc;color:#193b6d}.auth-return{display:inline-flex;align-items:center;justify-content:center;text-align:center}