/* Shared sign-in, registration and account-recovery presentation. */
:root{color-scheme:dark;--background:#111112;--foreground:#f6f5f3;--muted:#a5a4ab;--accent:#a799ff;--accent-strong:#c0b6ff;--accent-soft:#2c2642;--border:#3c3b40;--danger:#ffb7b7}
*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--foreground);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}h1,h2,p{margin:0}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-strong);text-decoration:underline;text-underline-offset:4px}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.auth-page{display:grid;grid-template-columns:1fr 1fr;min-height:100svh;max-width:1600px;margin:auto}.auth-main{display:flex;flex-direction:column;min-width:0;padding:42px clamp(32px,6.25vw,120px) 26px;min-height:100svh}.auth-brand-row{margin-bottom:48px}.brand{display:inline-flex;align-items:center;gap:11px;color:#fff;font-size:36px;letter-spacing:-1.5px;font-weight:650;line-height:1}.brand:hover{color:#fff;text-decoration:none}.repite-brand__mark{display:block;flex-shrink:0;width:36px;height:36px;object-fit:contain}.auth-card{width:100%;max-width:420px;margin:auto 0}.auth-heading{margin-bottom:30px}.form-eyebrow{font-size:10px!important;letter-spacing:2px;font-weight:650;color:var(--accent)!important;margin-bottom:14px}.auth-heading h1{font-size:clamp(30px,2.5vw,40px);font-weight:550;line-height:1.14;letter-spacing:-1.3px;max-width:400px}.auth-heading>p:last-child{font-size:14px;line-height:1.6;color:var(--muted);margin-top:13px;max-width:370px}form{display:grid;gap:18px}label{display:grid;gap:9px;font-size:13px;font-weight:500;color:#e6e4e9}input{width:100%;min-height:50px;border:1px solid var(--border);border-radius:7px;padding:0 14px;background:#1c1c1f;color:var(--foreground);font:inherit;font-size:15px;transition:border-color .15s,background .15s}input::placeholder{color:#85838d;opacity:1;font-size:14px}input:hover{border-color:#63616b}input:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent);background:#222126}input:-webkit-autofill{-webkit-text-fill-color:#f6f5f3;box-shadow:0 0 0 1000px #25232d inset}button{min-height:50px;width:100%;border:1px solid transparent;border-radius:7px;background:#7960ea;color:#fff;font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}button[type=submit]{margin-top:6px}button:hover{background:#8b74f3}button:active{background:#6950d4}.auth-secondary{font-size:12px;text-align:right;margin-top:-3px}.auth-footer{margin-top:26px;font-size:13px;line-height:1.6;color:var(--muted)}.auth-footer a{font-weight:600;margin-left:4px}.field-help{font-size:11px;color:var(--muted);font-weight:400;line-height:1.5}.error,.success{padding:12px 14px;border-radius:6px;font-size:13px;line-height:1.5}.error{background:#331e22;border:1px solid #684047;color:var(--danger)}.success{background:#182f27;border:1px solid #345e4b;color:#a6e3c7}.auth-card>.error{margin-bottom:20px}.auth-legal{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:54px;font-size:10px;line-height:1.5;color:#85838d;max-width:420px}.auth-legal nav{display:flex;gap:16px}.auth-legal a{color:#aaa8b1}.auth-story{position:relative;min-height:100%;overflow:hidden;border-radius:100px 0 0 0;background:#e4dfd2;display:flex;flex-direction:column}.auth-photo{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 50%}.story-copy{position:relative;margin-top:auto;background:#e4dfd2;color:#26271f;padding:30px 44px 32px;z-index:1}.story-label{font-size:10px;letter-spacing:1.7px;font-weight:650;margin-bottom:12px}.story-copy h2{font-size:34px;line-height:1.05;letter-spacing:-1px;font-weight:500}.story-copy>p:not(.story-label){font-size:13px;line-height:1.6;margin-top:12px;color:#5c5d52}.proof{font-size:11px;font-weight:550;margin-top:24px;display:flex;gap:12px;color:#45463b}.proof span{color:#9a9b8c}
@media(min-width:1600px){.auth-card{max-width:460px}.auth-heading h1{font-size:40px;max-width:460px}.auth-main{padding-top:56px}}
@media(max-width:1050px){.auth-main{padding:32px 36px 22px}.auth-story{border-top-left-radius:64px}.story-copy{padding:28px}.story-copy h2{font-size:30px}}
@media(max-width:760px){.auth-page{display:block}.auth-main{min-height:100svh;padding:30px 24px 24px;max-width:500px;margin:auto}.auth-story{display:none}.auth-brand-row{margin-bottom:48px}.brand{font-size:30px}.repite-brand__mark{width:30px;height:30px}.auth-card{margin:0;max-width:none}.auth-heading h1{font-size:34px;max-width:350px}.auth-heading{margin-bottom:28px}.auth-legal{margin-top:auto;padding-top:48px;max-width:none}.auth-footer{margin-bottom:30px}.auth-secondary{font-size:13px}}
@media(prefers-reduced-motion:reduce){input,button{transition:none}}

@media(min-width:761px) and (max-height:900px){.auth-main{padding-top:32px}.auth-brand-row{margin-bottom:32px}.auth-legal{margin-top:32px}form{gap:15px}.auth-heading{margin-bottom:24px}.auth-footer{margin-top:22px}}


.google-login-button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 44px;
  padding: 10px 16px;
  border: 1px solid #747775;
  border-radius: 6px;
  background: #fff;
  color: #1f1f1f;
  font-family: "Google Sans", Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
}
.google-login-button:hover { background: #f8faff; }
.google-login-button:focus-visible { outline: 3px solid #4285f4; outline-offset: 3px; }
.google-login-button img { flex-shrink: 0; }
.auth-divider { text-align: center; color: #aaa7b1; font-size: 13px; margin: 16px 0; }
