:root{--accent:#ff385c;--accent-soft:#fff1f3;--ink:#222;--muted:#6a6a6a;--line:#ddd;--paper:#fff;--stage:#f7f7f7;--soft:#f2f2f2}
*{box-sizing:border-box}
html{min-height:100%;background:var(--stage)}
body{min-height:100vh;margin:0;color:var(--ink);background:var(--stage);font-family:Inter,"Helvetica Neue",Arial,sans-serif}
button,input{font:inherit}
button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.auth-page{display:grid;min-height:100vh;grid-template-columns:repeat(2,minmax(0,1fr))}
.auth-panel{display:flex;min-height:100vh;padding:32px clamp(28px,6vw,76px);flex-direction:column;background:var(--paper);align-items: flex-end;}
.auth-brand{display:inline-flex;width:100%;max-width:420px;margin: 0;align-items:center}
.auth-brand img{display:block;width: 165px;height:auto}
.auth-content{width:100%;max-width:420px;margin: auto 0;}
.auth-content h1{margin:0;font-size: clamp(32px,4vw,32px);line-height:1.08;letter-spacing:-.035em}
.auth-intro{max-width:38ch;margin:12px 0 30px;color:var(--muted);font-size:14px;line-height:1.6}
.auth-form{display:grid;gap:18px}
.auth-form label{display:grid;gap:8px;font-size:12px;font-weight:650}
.auth-form input[type="email"],.auth-form input[type="text"],.auth-form input[type="password"]{width:100%;height:48px;padding:0 14px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--paper);font-size:14px;outline:0;font-weight: 500;}
.auth-form input:-webkit-autofill,.auth-form input:-webkit-autofill:hover,.auth-form input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);caret-color:var(--ink);box-shadow:0 0 0 1000px var(--paper) inset}
.auth-form input:autofill{color:var(--ink);background:var(--paper)}
.auth-form input:focus{border-color:var(--ink);/* box-shadow:0 0 0 3px rgba(34,34,34,.08); */}
.auth-password-field{position:relative;display:block}
.auth-password-field input{padding-right:48px}
.auth-password-toggle{position:absolute;top:50%;right:4px;width:40px;height:40px;padding:0;display:grid;place-items:center;transform:translateY(-50%);border:0;border-radius:50%;color:var(--ink);background:transparent;cursor:pointer;font-size:16px}
.auth-password-toggle:hover{}
.auth-password-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:0}
.auth-options{display:flex;align-items:center;justify-content:space-between;gap:18px;color:var(--muted);font-size:12px}
.auth-options label{position:relative;display:flex;min-height:18px;padding-left:26px;align-items:center;font-weight:400;cursor:pointer}
.auth-options label::before{content:"";position:absolute;left:0;top:50%;width:18px;height:18px;transform:translateY(-50%);border:1px solid var(--ink);border-radius:3px;background:var(--paper)}
.auth-options label::after{content:"\f00c";font-family:"Font Awesome 7 Pro";position:absolute;left: 0;top:50%;width: 18px;height: 18px;opacity:0;color: #fff;transform: translateY(-50%);text-align: center;line-height: 18px;}
.auth-options label:has(input:checked)::before{background:var(--ink)}
.auth-options label:has(input:checked)::after{opacity:1}
.auth-options label:has(input:focus-visible)::before{outline:2px solid var(--ink);outline-offset:3px}
.auth-options input[type="checkbox"]{position:absolute;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}
.auth-page a{color:var(--ink);text-underline-offset:3px}
.auth-submit{display:inline-flex;min-height:48px;padding:0 22px;align-items:center;justify-content:center;border:1px solid var(--accent);border-radius:999px;color:var(--paper);background:var(--accent);font-size:14px;font-weight:700;cursor:pointer;transition:background-color 120ms ease-out,border-color 120ms ease-out,transform 80ms ease-out}
.auth-submit:hover{border-color:var(--ink);background:var(--ink)}
.auth-submit:active{transform:scale(.99)}
.auth-alert{margin:0 0 22px;padding:13px 15px;border: 1px solid var(--accent);border-radius:10px;color: var(--accent);background: var(--accent-soft);font-size: 12px;line-height:1.5;font-weight: 600;text-align: center;}
.auth-alert.is-success{border-color:var(--line);color:var(--ink);background:var(--soft)}
.auth-links{display:flex;margin-top:24px;align-items:center;flex-wrap:wrap;gap:7px;color:var(--muted);font-size:12px}
.auth-aside{display:flex;padding:32px clamp(28px,6vw,76px);align-items:center;background:var(--accent)}
.auth-aside div{max-width:650px}
.auth-aside span{display:inline-flex;margin-bottom:20px;padding:7px 11px;border:0;border-radius:999px;color:#fff;background:rgba(255,255,255,.18);font-size:11px}
.auth-aside h2{max-width:12ch;margin:0;color:#fff;font-size: clamp(40px,6vw,62px);line-height:.98;letter-spacing:-.05em}
.auth-aside p{max-width:48ch;margin:24px 0 0;color:rgba(255,255,255,.82);font-size:15px;line-height:1.65}
@media(max-width:820px){.auth-page{grid-template-columns:1fr}.auth-panel{min-height:100vh;padding:28px 22px}.auth-content{margin:auto}.auth-aside{display:none}}
