.auth-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:26px;max-width:980px;margin:0 auto}
.auth-solo{grid-template-columns:minmax(0,490px);justify-content:center}
@media(max-width:767px){
  .auth-layout{grid-template-columns:1fr;gap:16px;max-width:100%}
  .login-head-bare{padding:24px 16px 0}
  .login-body{padding:20px 16px 44px}
  .auth-header{padding:22px 22px 0}
  .auth-body{padding:0 22px 26px}
  .auth-divider{margin-left:22px}
  .form-row{grid-template-columns:1fr}
}
.auth-panel{background:#fff;border-radius:14px;overflow:hidden;
  box-shadow:0 1px 2px rgba(16,24,40,.05), 0 12px 32px -12px rgba(16,24,40,.16)}
.auth-header{padding:26px 34px 0}
.auth-header h2{font-size:1.16rem;font-weight:800;color:#1f2327;margin-bottom:5px;
  letter-spacing:-.01em}
.auth-header p{font-size:.83rem;color:#98a0a8;margin-bottom:22px}
.auth-divider{border:none;border-top:3px solid var(--accent,#1f2327);border-radius:2px;width:34px;
  margin:0 0 24px 34px}
.auth-body{padding:0 34px 34px}
.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.form-row{display:grid;grid-template-columns:1fr;column-gap:16px;row-gap:0}
.form-group label{font-size:.71rem;font-weight:700;color:#6b7480;text-transform:uppercase;letter-spacing:.055em}
.lab-opt{font-weight:600;color:#b0b7bf;text-transform:none;letter-spacing:0;font-size:.94em}
.form-group input{border:1px solid #d7dde3;border-radius:8px;padding:12px 14px;
  font-size:.875rem;color:#39424b;font-family:inherit;background:#fff;
  transition:border-color .13s,box-shadow .13s}
.form-group input::placeholder{color:#b5bcc3}
.form-group input:hover{border-color:#c3ccd5}
.form-group input:focus{outline:none;border-color:#1f4e79;
  box-shadow:0 0 0 3px rgba(31,78,121,.1)}
.form-error{background:#fff3f3;border:1px solid #ffcdd2;border-radius:8px;padding:11px 14px;font-size:.8rem;color:#c62828;margin-bottom:15px}
.btn-auth{width:100%;background:var(--accent,#1f2327);color:#fff;
  border:none;border-radius:8px;font-size:.9rem;font-weight:700;cursor:pointer;
  padding:13px;margin-top:6px;letter-spacing:.01em;
  transition:background .13s,transform .13s}
.btn-auth:hover{background:var(--accent-hover,#33383d)}
.btn-auth:active{transform:translateY(1px)}
.btn-auth:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(var(--accent-rgb,31,35,39),.32)}
.auth-footer{font-size:.78rem;color:#98a0a8;margin-top:14px;text-align:center}
.auth-footer a{color:var(--accent,#1f2327);font-weight:700}
.auth-footer a:hover{text-decoration:underline}
.auth-panel.signup .auth-header p{margin-bottom:22px}
.auth-or{display:flex;align-items:center;gap:12px;margin:20px 0 15px;color:#a6acb3;font-size:.74rem;
  text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.auth-or::before,.auth-or::after{content:"";flex:1;height:1px;background:var(--surface-2,#eeece7)}
.btn-google{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;
            border:1px solid #d7dde3;border-radius:9px;padding:14px 18px;min-height:52px;
            background:#fff;box-sizing:border-box;
            color:#39424b;font-size:.98rem;font-weight:700;cursor:pointer;
            transition:border-color .13s,background .13s}
.btn-google svg{width:22px;height:22px;flex:none}
.btn-google:hover{border-color:#c3ccd5;background:var(--hover,#f8f7f4)}
.btn-google:focus-visible{outline:none;border-color:var(--accent,#1f2327);
  box-shadow:0 0 0 3px rgba(var(--accent-rgb,31,35,39),.13)}
footer{background:#1f2327;color:#aaa;text-align:center;padding:22px 20px;font-size:.85em}
footer a{color:#ccc}
