[data-page=signin] { background:var(--raise); }
.auth-layout { display:grid; grid-template-columns:1fr 1fr; gap:0; max-width:1440px; padding:24px; min-height:calc(100vh - 148px); }
.auth-story { position:relative; overflow:hidden; border-radius:20px; padding:52px 54px 30px; background:var(--navy); color:#fff; }
.auth-story > .eyebrow { color:#d1a284; font-size:10px; position:relative; z-index:1; }
.auth-story h2 { color:#fff; font-size:clamp(36px,3.5vw,48px); line-height:1.25; letter-spacing:-.045em; margin:23px 0; position:relative; z-index:1; }
.auth-story h2 em { font-family:var(--read); font-weight:400; color:#f7bc94; font-size:1.13em; }
.auth-description { font-size:13px; color:#becbdd; line-height:1.8; max-width:345px; position:relative; z-index:1; }
.auth-story::before { content:""; position:absolute; width:400px; height:400px; border:1px solid #ffffff0d; border-radius:50%; right:-255px; top:115px; box-shadow:0 0 0 45px #ffffff03,0 0 0 90px #ffffff02; }
.auth-reading-card { position:relative; margin:35px 0; background:#ffffff08; border:1px solid #ffffff18; border-radius:13px; padding:23px 25px; max-width:390px; }
.auth-card-label { display:flex; gap:7px; align-items:center; color:#c7d4e3; font-size:10px; }
.auth-dot { display:block; width:6px; height:6px; background:#8bccad; border-radius:50%; }
.auth-reading-card p { font:400 28px/1.7 var(--read); color:#fff; margin:19px 0 15px; letter-spacing:-.02em; }
.auth-reading-card .muted { color:#a6b4c7; }
.auth-reading-card mark { color:#192b40; background:#f7c8a3; padding:1px 4px; border-radius:3px; }
.auth-wave { display:flex; align-items:center; gap:4px; height:24px; }
.auth-wave i { width:3px; height:5px; background:#e9b594; border-radius:2px; }
.auth-wave i:nth-child(3n) { height:21px; }
.auth-wave i:nth-child(2n) { height:13px; }
.auth-wave i:nth-child(5) { height:26px; }
.auth-features { display:grid; gap:12px; font-size:12px; color:#d0dceb; position:relative; }
.auth-features > span { display:flex; align-items:center; gap:9px; }
.auth-features .icon { width:14px; height:14px; color:#f5b488; }
.auth-story-foot { display:block; color:#a7b8cd; font-size:10px; margin-top:35px; }
.auth-form-wrap { display:flex; align-items:center; justify-content:center; padding:40px 48px; }
.auth-form-content { width:100%; max-width:390px; }
.auth-mini-logo { margin-bottom:24px; }
.auth-form-content h1 { font-size:32px; letter-spacing:-.045em; margin:0 0 11px; }
.auth-form-content .eyebrow { font-size:10px; margin-bottom:12px; }
.auth-sub { color:var(--quiet); font-size:13px; line-height:1.75; margin:0 0 25px; }
.auth-tabs { display:flex; gap:4px; padding:4px; background:var(--paper); border:1px solid var(--rule); border-radius:10px; margin-bottom:26px; }
.auth-tabs button { flex:1; padding:9px 10px; border:0; border-radius:7px; background:transparent; font-size:12px; font-weight:500; color:var(--quiet); }
.auth-tabs button[aria-pressed=true] { background:var(--raise); color:var(--ink); box-shadow:0 2px 5px #1b293512; }
.auth-tabs button:disabled { cursor:wait; }
.auth-form-content label { font-size:12px; margin-top:19px; }
.auth-form-content input { min-height:47px; font-size:13px; }
.password-field { position:relative; }
.password-field input { padding-right:64px; }
.password-field button { position:absolute; right:8px; top:7px; min-width:44px; min-height:32px; padding:4px;
  background:transparent; border:0; font-size:11px; font-weight:500; color:var(--quiet); border-radius:5px; }
.password-field button:hover { color:var(--mark); background:var(--paper); }
.field-hint { font-size:11px; color:var(--quiet); margin:7px 0 0; }
.auth-submit { margin-top:25px; min-height:46px; font-size:13px; }
.auth-terms { font-size:11px; line-height:1.75; color:var(--quiet); margin:17px 0 0; }
.switch { font-size:12px; color:var(--quiet); text-align:center; margin:24px 0; }
.switch a { color:var(--mark); font-weight:500; text-decoration:none; }
.auth-reassurance { display:flex; align-items:center; justify-content:center; gap:7px; border-top:1px solid var(--rule); padding-top:22px; font-size:10px; color:var(--quiet); }
.auth-reassurance .icon { width:13px; height:13px; }
@media(max-width:1050px) {
  .auth-story { padding:38px 35px 30px; }
  .auth-form-wrap { padding:30px; }
  .auth-story h2 { font-size:38px; }
}
@media(max-width:760px) {
  .auth-layout { grid-template-columns:1fr; padding:0; min-height:calc(100vh - 140px); }
  .auth-story { display:none; }
  .auth-form-wrap { padding:35px 26px 44px; }
  .auth-form-content { max-width:410px; }
  .auth-mini-logo { margin-bottom:20px; }
}
