:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#0f172a;background:#f8fafc;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}a{color:inherit}button,a,input,select{outline-offset:4px}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #93c5fd}button{cursor:pointer}.auth-layout{min-height:100svh;padding:34px 24px;display:flex;flex-direction:column}.auth-header{display:flex;align-items:center;justify-content:space-between;width:min(430px,100%);margin:0 auto;gap:24px}.auth-brand{display:flex;align-items:center;gap:10px;min-width:0;white-space:normal;font-size:19px;line-height:1.12;font-weight:800;letter-spacing:-.8px;text-decoration:none}.auth-brand i{flex-shrink:0;font-style:normal;display:grid;place-items:center;background:#2563eb;color:white;transform:rotate(-6deg);width:36px;height:40px;border-radius:10px}.auth-brand-subtitle{display:block;font-size:13px;letter-spacing:.3px;font-weight:600;margin-top:3px}.auth-language{border:1px solid #e2e8f0;background:#fff;border-radius:8px;padding:8px 10px;color:#555e6f;font-size:12px;cursor:pointer}.auth-content{flex:1;display:flex;align-items:center;justify-content:center;padding:44px 0 70px}.auth-card{width:min(430px,100%);margin:0;background:white;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 12px 40px #22345705;padding:32px}.auth-title{font-size:27px;line-height:1.3;font-weight:800;letter-spacing:-.8px;margin:0 0 26px}.auth-description{font-size:14px;line-height:1.7;color:#64748b;margin:0 0 23px;overflow-wrap:anywhere}.auth-description a{color:#1d4ed8;text-underline-offset:3px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#eff6ff;border-radius:10px;padding:4px;margin-bottom:30px}.auth-tabs button{border:0;border-radius:7px;padding:11px 14px;background:transparent;color:#5e687c;font-size:13px;font-weight:600}.auth-tabs button[aria-selected=true]{background:#fff;color:#1d4ed8;box-shadow:0 2px 5px #2735500a}.auth-field{display:block;margin-bottom:19px;font-size:13px;line-height:1.6;color:#474f5f;font-weight:500}.auth-field input{display:block;width:100%;min-height:48px;padding:12px 13px;background:#fff;border:1px solid #cbd5e1;border-radius:8px;font-size:15px;color:#28303f;margin-top:7px}.auth-field input:focus{border-color:#3b82f6;outline:2px solid #dbeafe;outline-offset:1px}.auth-field input:disabled{background:#f8fafc;color:#767d8a}.auth-field small{display:block;font-size:12px;color:#656f82;font-weight:400;margin-top:6px}.auth-primary,.auth-secondary{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:49px;border:0;border-radius:9px;padding:14px 18px;text-decoration:none;font-size:14px;font-weight:600}.auth-primary{background:#2563eb;color:#fff;margin-top:25px}.auth-primary:hover{background:#1d4ed8}.auth-secondary{background:#eff6ff;color:#1d4ed8;margin-top:12px}.auth-primary:disabled,.auth-secondary:disabled{opacity:.55;cursor:wait}.auth-error,.auth-success{padding:11px 13px;border:1px solid;border-radius:8px;font-size:13px;line-height:1.6;margin:16px 0}.auth-error{background:#fff4f5;border-color:#eed2d6;color:#914453}.auth-success{background:#eff8f2;border-color:#c8e4d3;color:#306a46}.auth-links{border-top:1px solid #e2e8f0;margin-top:27px;padding-top:21px;display:flex;justify-content:center;flex-wrap:wrap;gap:18px;font-size:13px;color:#636f86}.auth-links button{border:0;background:transparent;padding:0;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px}.auth-links a{text-underline-offset:3px}.auth-links button:hover,.auth-links a:hover{color:#1d4ed8}.auth-identity{font-size:14px;color:#656f82;margin:-12px 0 26px;overflow-wrap:anywhere}.auth-help{font-size:13px;line-height:1.7;color:#656f82;margin:16px 0 0}.auth-help summary{cursor:pointer}.auth-help p{margin:12px 0 0}.noscript{padding:24px;text-align:center}.studio-loading{min-height:100svh;display:grid;place-content:center;text-align:center;gap:12px;padding:32px}.studio-loading h1{font-size:24px;margin:0}.studio-loading p{font-size:14px;color:#727780;margin:0}[hidden]{display:none!important}@media(max-width:480px){.auth-layout{padding:24px 18px}.auth-header{padding:0 7px;gap:12px}.auth-content{padding:36px 0 42px}.auth-card{padding:27px 24px;border-radius:15px}.auth-title{font-size:25px}.auth-field input{font-size:16px}.auth-tabs{margin-bottom:26px}}@media(max-height:720px){.auth-content{align-items:flex-start;padding-bottom:20px}}

.auth-email-summary{padding:0 0 25px;margin:0 0 25px;border-bottom:1px solid #e2e8f0}.auth-email-summary h2,.auth-section-title{font-size:16px;line-height:1.4;margin:0 0 12px;font-weight:700}.auth-email-summary p{font-size:14px;line-height:1.6;margin:0;overflow-wrap:anywhere;color:#64748b}.auth-verified{display:inline-block;margin-left:8px;padding:2px 7px;border-radius:5px;background:#eff8f2;color:#306a46;font-size:11px;font-weight:600}.auth-code{font-size:25px!important;letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums}.auth-resend{margin-top:24px;padding-top:20px;border-top:1px solid #e2e8f0}.auth-challenge{min-height:65px;margin-top:18px;max-width:100%}.auth-challenge iframe{max-width:100%}.auth-tabs button:disabled{cursor:wait;opacity:.6}.auth-links button:disabled{cursor:wait;opacity:.6}.auth-resend .auth-help{font-size:12px;margin-top:10px}

/* Optional project support stays separate from sign-in. */
.donation-footer{display:flex;justify-content:center;padding:0 0 6px}
.donation-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 13px;border:1px solid #e2e8f0;border-radius:9px;color:#64748b;background:transparent;text-decoration:none;font-size:12px;font-weight:500;line-height:1.4}
.donation-link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.donation-link:hover{border-color:#bfdbfe;color:#1d4ed8;background:#eff6ff}
.donation-link:focus-visible{outline:3px solid #93c5fd;outline-offset:3px}
@media print{.donation-footer{display:none!important}}
