/* Shared public/auth primitives. Login-specific landing styles live in css/pages/login.css. */
:root{
  --sr-auth-panel-bg:#111a26;
  --sr-auth-panel-bg-strong:#0e1621;
  --sr-auth-panel-border:#1d3042;
  --sr-auth-shadow:0 15px 34px rgba(0,0,0,.18);
  --sr-auth-title:#f1f6fa;
  --sr-auth-text:#93a4b7;
  --sr-auth-muted:#7d93a8;
  --sr-auth-muted-strong:#aebfce;
  --sr-auth-accent:#39bde8;
  --sr-auth-control-bg:#0c141e;
  --sr-auth-control-border:#294157;
  --sr-auth-control-text:#e8eef6;
  --sr-auth-placeholder:#5d7186;
  --sr-auth-primary:#157ba3;
  --sr-auth-primary-hover:#1989b5;
  --sr-auth-primary-border:#249cc8;
  --sr-auth-primary-border-hover:#54c6ec;
  --sr-auth-primary-text:#f2f9fd;
  --sr-auth-danger-bg:rgba(239,89,101,.14);
  --sr-auth-danger-border:#68333a;
  --sr-auth-danger-text:#ff8e97;
  --sr-auth-warning-bg:rgba(244,176,72,.13);
  --sr-auth-warning-border:#6f5320;
  --sr-auth-warning-text:#ffc66b;
  --sr-auth-focus-ring:0 0 0 3px rgba(57,189,232,.16);
  --sr-auth-footer-divider:#33414f;
  --sr-auth-copy:#4a5b6b;
}

.auth-page{
  min-height:100vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:24px 20px;
  box-sizing:border-box;
}

.auth-shell{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:20px;
}

.auth-card{
  width:100%;
  max-width:380px;
  background:linear-gradient(145deg,var(--sr-auth-panel-bg) 0%,var(--sr-auth-panel-bg-strong) 100%);
  border:1px solid var(--sr-auth-panel-border);
  border-radius:14px;
  box-shadow:var(--sr-auth-shadow);
  padding:30px 28px 26px;
  box-sizing:border-box;
}

.auth-brand{display:flex;align-items:center;justify-content:center;gap:9px;margin-bottom:18px;}
.auth-brand__mark{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;background:var(--sr-auth-control-bg);border:1px solid var(--sr-auth-control-border);color:var(--sr-auth-accent);}
.auth-brand__name{color:var(--sr-auth-title);font-size:19px;font-weight:600;letter-spacing:0;}
.login-logo{display:block;max-width:150px;max-height:70px;margin:0 auto 18px;object-fit:contain;}

.auth-eyebrow{margin:0 0 7px;text-align:center;color:var(--sr-auth-accent);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;}
.auth-title,.auth-card h1{margin:0 0 18px;text-align:center;color:var(--sr-auth-title);font-size:23px;font-weight:600;letter-spacing:0;line-height:1.1;}
.auth-text{margin:0 0 18px;color:var(--sr-auth-text);font-size:13px;line-height:1.6;text-align:center;}

.auth-error,.error{margin:0 0 14px;padding:9px 12px;border-radius:10px;background:var(--sr-auth-danger-bg);border:1px solid var(--sr-auth-danger-border);color:var(--sr-auth-danger-text);font-size:13px;text-align:center;}

.auth-form label,.auth-card form label{display:block;margin:0 0 5px;color:var(--sr-auth-muted-strong);font-size:12px;font-weight:600;}
.auth-form input,.auth-card form input{width:100%;height:42px;margin-bottom:13px;padding:0 12px;box-sizing:border-box;background:var(--sr-auth-control-bg);border:1px solid var(--sr-auth-control-border);border-radius:10px;color:var(--sr-auth-control-text);font-size:14px;transition:border-color .16s ease,box-shadow .16s ease;}
.auth-form input::placeholder,.auth-card form input::placeholder{color:var(--sr-auth-placeholder);}
.auth-form input:focus,.auth-card form input:focus{outline:none;border-color:var(--sr-auth-accent);box-shadow:var(--sr-auth-focus-ring);}

.auth-submit{width:100%;height:44px;margin-top:4px;background:var(--sr-auth-primary);border:1px solid var(--sr-auth-primary-border);border-radius:10px;color:var(--sr-auth-primary-text);font-size:14px;font-weight:800;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease;}
.auth-submit:hover{background:var(--sr-auth-primary-hover);border-color:var(--sr-auth-primary-border-hover);transform:translateY(-1px);}

.auth-links{text-align:center;margin-top:13px;}
.auth-links a{color:var(--sr-auth-muted);font-size:12px;text-decoration:none;}
.auth-links a:hover{color:var(--sr-auth-muted-strong);}

.auth-card--legal{max-width:520px;}
.auth-notice{margin:0 0 14px;padding:9px 12px;border-radius:10px;background:var(--sr-auth-warning-bg);border:1px solid var(--sr-auth-warning-border);color:var(--sr-auth-warning-text);font-size:13px;text-align:center;}
.auth-legal-text{color:var(--sr-auth-text);font-size:13px;line-height:1.6;text-align:center;margin:0 0 4px;}

.auth-footer{text-align:center;padding-top:16px;margin-top:14px;}
.auth-footer__links a{color:var(--sr-auth-muted);font-size:12px;text-decoration:none;margin:0 10px;}
.auth-footer__links a:hover{color:var(--sr-auth-muted-strong);}
.auth-footer__links span{color:var(--sr-auth-footer-divider);}
.auth-copy{color:var(--sr-auth-copy);font-size:11px;margin-top:8px;}

@media (max-width:520px){.auth-card{max-width:none;padding:26px 20px 22px;}.auth-title,.auth-card h1{font-size:21px;}}
