:root{
  --bg:#f3eee5;--card:#fbf8f2;--ink:#2c2e32;--muted:#6f716f;--line:#ddd4c7;
  --primary:#6866a8;--primary-dark:#56548f;--sage:#718c7a;--gold:#b28a4d;--danger:#a6524d;
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}
body{min-height:100vh}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(320px,1fr) minmax(380px,560px);gap:56px;align-items:center;max-width:1180px;margin:auto;padding:48px}
.auth-intro{padding:24px}.brand{font-size:42px;font-weight:800;letter-spacing:-1.5px}.claim{font-size:20px;margin:8px 0 34px;color:var(--muted)}
.auth-intro h1{font-size:clamp(34px,5vw,58px);line-height:1.02;margin:0 0 18px;letter-spacing:-1.8px}.auth-intro p{font-size:18px;line-height:1.65;color:var(--muted);max-width:620px}.trust{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.trust span{background:#e8e3d9;border:1px solid var(--line);border-radius:999px;padding:9px 13px;font-size:13px;font-weight:650}
.auth-card{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:0 24px 70px rgba(53,45,38,.12)}.auth-card h2{font-size:28px;margin:0 0 7px}.sub{color:var(--muted);margin:0 0 24px;line-height:1.5}.tabs{display:flex;gap:8px;background:#eee8df;border-radius:14px;padding:5px;margin:0 0 24px;overflow:auto}.tabs button{border:0;background:transparent;border-radius:10px;padding:10px 12px;font-weight:700;color:var(--muted);cursor:pointer;white-space:nowrap}.tabs button.active{background:var(--card);color:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.06)}
.panel[hidden]{display:none}.field{display:grid;gap:7px;margin-bottom:16px}.field label{font-size:13px;font-weight:750}.field input{width:100%;border:1px solid var(--line);border-radius:13px;background:#fffdf9;padding:13px 14px;font-size:16px;outline:none}.field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(104,102,168,.13)}.btn{width:100%;border:0;border-radius:13px;padding:13px 16px;font-size:15px;font-weight:800;cursor:pointer;background:var(--primary);color:white}.btn:hover{background:var(--primary-dark)}.btn.secondary{background:#e8e3d9;color:var(--ink)}.row{display:flex;gap:10px}.row>*{flex:1}.msg{margin-top:15px;border-radius:12px;padding:12px 13px;font-size:14px;line-height:1.45}.msg.ok{background:#e8f0e9;color:#315d3c}.msg.err{background:#f6e7e5;color:#7d3833}.msg.info{background:#ecebf6;color:#4e4d80}.check{display:flex;gap:10px;align-items:flex-start;margin:12px 0 16px;font-size:13px;line-height:1.45;color:var(--muted)}.check input{margin-top:3px}.foot{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);font-size:12px;line-height:1.55;color:var(--muted)}
@media(max-width:900px){.auth-shell{grid-template-columns:1fr;padding:24px;gap:20px}.auth-intro{padding:8px}.auth-intro h1{font-size:38px}.brand{font-size:34px}.claim{margin-bottom:20px}.auth-card{padding:24px;border-radius:22px}}
@media(max-width:520px){.auth-shell{padding:14px}.auth-intro p,.trust{display:none}.auth-intro h1{font-size:30px;margin-bottom:4px}.claim{font-size:16px}.auth-card{padding:20px}.row{display:grid}}
