
:root{color-scheme:light;--paper:#fff5f5;--ink:#35232f;--muted:#796a74;--berry:#bd2754;--berry-dark:#a41f48;--line:#eadfe3;--pink:#ffd7df}
*{box-sizing:border-box}
html{height:100%;overflow:hidden;overscroll-behavior:none}
body{margin:0;height:100vh;height:100dvh;min-height:0;overflow:hidden;display:grid;grid-template-rows:76px minmax(0,1fr) 38px;background:var(--paper);color:var(--ink);font:14px/1.5 'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased}
button,input{font:inherit;color:inherit}
button{cursor:pointer;-webkit-tap-highlight-color:transparent}
button:disabled{cursor:wait;opacity:.62}
button:focus-visible{outline:3px solid var(--berry);outline-offset:4px}
input:focus{outline:0;border-color:var(--berry);box-shadow:0 0 0 3px #bd275418}
h1,h2,h3,p{margin:0}
[hidden]{display:none!important}
.signin-header{display:flex;align-items:center;justify-content:space-between;padding:0 34px;gap:20px}
.brand{display:flex;align-items:center;gap:10px;font-size:36px;font-weight:900;letter-spacing:-1.8px;line-height:1;color:var(--ink)}
.brand-dot{color:var(--berry);margin-left:-10px}
.bond-mark{width:40px;height:32px;display:inline-block;position:relative;margin-right:1px}
.bond-mark i{position:absolute;top:2px;width:25px;height:31px;border:3px solid var(--berry);border-radius:50%;transform:rotate(-16deg)}
.bond-mark i+i{left:15px;transform:rotate(16deg);border-color:#eaa1b2}
.header-note{font-size:12px;font-weight:500;color:var(--muted);margin-left:auto}
.header-heart{color:var(--berry);font-size:27px;line-height:1}
.signin-layout{min-height:0;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(360px,1fr);gap:22px;padding:0 26px 8px;max-width:1600px;width:100%;margin:auto;height:100%}
.signin-welcome{position:relative;isolation:isolate;min-height:0;overflow:hidden;border-radius:28px;background:#7f6655;color:#fff;box-shadow:0 8px 25px #5429370a}
.welcome-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%;z-index:-3}
.photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,#20111732 0%,transparent 35%,#22101950 57%,#21101cdd 100%);z-index:-2}
.photo-topline{position:absolute;left:28px;right:24px;top:25px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.friendship-label{display:flex;align-items:center;gap:8px;border:1px solid #ffffff4f;background:#35232f40;backdrop-filter:blur(12px);border-radius:30px;padding:8px 12px;font-size:9px;font-weight:700;letter-spacing:1.25px}
.friendship-label>span{color:var(--pink);font-size:15px}
.photo-heart{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--pink);color:var(--berry);font:38px/1 Arial,sans-serif;transform:rotate(12deg);box-shadow:0 3px 16px #2c142b15}
.welcome-copy{position:absolute;bottom:32px;left:34px;right:24px}
.welcome-copy h1{font-size:clamp(44px,5.1vw,80px);font-weight:800;letter-spacing:-3.2px;line-height:.99;margin:0 0 19px;max-width:670px}
.welcome-copy h1 em{font-style:normal;color:var(--pink)}
.welcome-copy>p{font-size:14px;line-height:1.6;color:#fff3f5}
.connection-tags{display:flex;gap:8px;margin-top:21px;flex-wrap:wrap}
.connection-tags span{border:1px solid #ffffff50;border-radius:30px;padding:7px 12px;font-size:10px;backdrop-filter:blur(8px);background:#ffffff12;color:#fff9fb}
.signin-card{min-width:0;min-height:0;max-height:100%;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;border:1px solid #eedfe5;border-radius:28px;background:#fffdfd;padding:32px clamp(24px,4vw,64px);display:flex;flex-direction:column;justify-content:center;box-shadow:0 8px 30px #87374e04}
.signin-card>*{flex-shrink:0}
.eyebrow{color:var(--berry);font-size:9px;font-weight:750;letter-spacing:1.8px;text-align:center;margin-bottom:13px}
.signin-card h2{font-size:clamp(27px,2.8vw,40px);font-weight:800;letter-spacing:-1.3px;line-height:1.12;text-align:center;margin-bottom:8px;min-height:1.12em}
.signin-intro{color:var(--muted);font-size:13px;line-height:20px;text-align:center;min-height:40px;margin-bottom:16px}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#f4edf0;border-radius:99px;padding:4px;height:46px;margin-bottom:22px;flex-shrink:0}
.auth-tabs button{border:0;background:transparent;border-radius:99px;font-size:12px;font-weight:650;color:var(--muted);white-space:nowrap;padding:0 6px;transition:background .15s,color .15s,box-shadow .15s}
.auth-tabs button[aria-pressed=true]{background:white;color:var(--ink);box-shadow:0 2px 7px #3c202b0d}
.auth-tabs button:hover{color:var(--berry)}
.form-field{margin:0 0 14px}
.form-field label{display:block;font-size:12px;font-weight:650;line-height:16px;margin:0 0 7px}
.form-field input{display:block;width:100%;height:46px;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--ink);padding:0 15px;font-size:14px;transition:border-color .15s,box-shadow .15s}
.form-field input::placeholder{color:#9a8c94;opacity:1}
.auth-password-slot{height:83px;display:grid;align-items:start}
.email-step-note{font-size:12px;line-height:19px;color:var(--muted);background:#fbf1f4;border:1px solid #f4e5eb;border-radius:13px;padding:13px 15px;min-height:69px;margin:0}
.button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:48px;border:0;border-radius:99px;font-size:13px;font-weight:750;transition:background .15s,box-shadow .15s}
.primary{color:white;background:var(--berry);box-shadow:0 5px 12px #bd27541a}
.primary:hover:not(:disabled){background:var(--berry-dark);box-shadow:0 6px 16px #bd27542e}
.auth-help-slot{height:34px;display:grid;place-items:center}
.text-link{display:block;border:0;background:none;padding:5px 2px;color:var(--berry);font-size:11px;font-weight:650;text-align:center;margin:9px auto 0}
.text-link:hover{text-decoration:underline;text-underline-offset:3px}
.auth-help-slot .text-link{margin:0}
.auth-feedback{min-height:40px;padding-top:4px;text-align:center}
.auth-status,.form-error{font-size:11px;line-height:16px;color:var(--muted);margin:0}
.form-error{color:#ac2046;font-weight:500}
.auth-status:empty,.form-error:empty{display:none}
.signin-assurance{display:flex;justify-content:center;align-items:center;gap:7px;border-top:1px solid #f1e9ed;padding-top:14px;color:var(--muted);font-size:10px;text-align:center}
.signin-assurance svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.signin-footer{display:flex;align-items:center;justify-content:space-between;padding:0 34px;color:var(--muted);font-size:10px}
.signin-footer>span>span{color:var(--berry);margin-left:4px}
#code-form,#reset-form{text-align:center}
#code-form h3,#reset-form h3{font-size:21px;font-weight:750;letter-spacing:-.5px;line-height:1.2;margin-bottom:10px}
#code-description,.signin-small{font-size:12px;line-height:1.6;color:var(--muted);margin-bottom:18px;overflow-wrap:anywhere}
#code-description strong{font-weight:600;color:var(--ink)}
#code-form .form-field,#reset-form .form-field{text-align:left}
#signin-code{text-align:center;font-size:23px;letter-spacing:5px}
.mail-illustration{font-size:28px;color:var(--berry);margin:0 auto 10px}
#code-form .signin-small{margin-top:14px;margin-bottom:0;font-size:10px}
#reset-form>.text-link{margin-bottom:0}

@media(min-height:850px){.signin-layout{padding-bottom:15px;gap:28px}.signin-header{padding-left:40px;padding-right:40px}.signin-card{padding-top:48px;padding-bottom:48px}.welcome-copy{bottom:46px;left:42px}.photo-topline{left:36px;right:30px;top:30px}.signin-card h2{margin-bottom:12px}.signin-intro{margin-bottom:24px}}
@media(max-height:740px){body{grid-template-rows:64px minmax(0,1fr) 30px}.signin-card{padding:24px clamp(22px,3vw,44px)}.eyebrow{margin-bottom:10px}.signin-card h2{font-size:30px}.signin-intro{min-height:20px;font-size:12px;margin-bottom:17px}.auth-tabs{height:42px;margin-bottom:18px}.signin-assurance{display:none}.welcome-copy h1{font-size:clamp(42px,5vw,68px)}.welcome-copy{left:30px;bottom:27px}.photo-topline{left:24px;top:22px}.connection-tags{margin-top:17px}}
@media(max-height:600px){body{grid-template-rows:54px minmax(0,1fr) 26px}.signin-layout{padding:0 20px 5px;gap:16px}.signin-header{padding:0 26px}.brand{font-size:30px}.bond-mark{transform:scale(.85);margin-right:-3px}.signin-card{padding:18px 25px;border-radius:23px}.eyebrow,.signin-intro{display:none}.signin-card h2{font-size:28px;margin-bottom:17px}.auth-tabs{height:38px;margin-bottom:16px}.form-field{margin-bottom:12px}.form-field label{font-size:11px;line-height:14px;margin-bottom:5px}.form-field input{height:40px;font-size:13px;border-radius:11px}.auth-password-slot{height:71px}.email-step-note{font-size:11px;line-height:17px;padding:11px 13px;min-height:59px;border-radius:11px}.button{height:42px;font-size:12px}.auth-help-slot{height:29px}.auth-feedback{min-height:34px}.auth-status,.form-error{font-size:10px;line-height:14px}.signin-welcome{border-radius:23px}.welcome-copy{left:26px;bottom:24px}.welcome-copy h1{font-size:clamp(38px,4.9vw,58px);letter-spacing:-2px;margin-bottom:14px}.welcome-copy>p{font-size:12px}.connection-tags{margin-top:16px}.connection-tags span{font-size:9px;padding:5px 10px}.photo-topline{left:22px;right:18px;top:18px}.friendship-label{font-size:8px;letter-spacing:.8px;padding:6px 9px}.photo-heart{height:38px;width:38px;font-size:31px}.signin-footer{padding:0 27px;font-size:9px}.mail-illustration{display:none}#code-form h3,#reset-form h3{font-size:18px}#code-description,.signin-small{margin-bottom:12px}#code-form .signin-small{margin-top:8px}}
@media(max-width:780px){body{grid-template-rows:64px minmax(0,1fr) 30px}.signin-header{padding:0 24px}.header-note{font-size:11px}.signin-layout{grid-template-columns:minmax(0,1fr);max-width:480px;padding:0 18px 8px;gap:0}.signin-welcome{display:none}.signin-card{padding:26px 25px;justify-content:center;background:#fffdfdf5;border-radius:25px;max-height:100%;box-shadow:0 12px 44px #9d375a08}.signin-header .brand{font-size:32px}.signin-card h2{font-size:31px}.form-field input{font-size:16px}.signin-footer{padding:0 24px;justify-content:center;font-size:9px}.signin-footer>span{display:none}.header-heart{margin-left:auto}.header-note{display:none}.eyebrow{font-size:8px}.signin-intro{font-size:12px}.signin-assurance{font-size:9px}}
@media(max-width:780px) and (max-height:600px){body{grid-template-rows:51px minmax(0,1fr) 23px}.signin-card{padding:16px 22px}.signin-card h2{font-size:27px}.signin-header .brand{font-size:29px}.signin-layout{padding-bottom:3px}}
@media(max-height:460px){body{grid-template-rows:44px minmax(0,1fr) 0}.signin-footer{display:none}.signin-card{justify-content:flex-start;padding-top:14px;padding-bottom:14px}.signin-card h2{font-size:24px;margin-bottom:12px}.auth-tabs{margin-bottom:12px}.auth-feedback{min-height:28px}.welcome-copy h1{font-size:37px}.connection-tags,.friendship-label{display:none}.welcome-copy>p{font-size:11px}.photo-topline{justify-content:flex-end}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}}
