/* CyberGuard — Client self-signup.
   Extracted for cacheable static delivery. */

.cg-signup-wrap { min-height:70vh; display:flex; align-items:flex-start; justify-content:center; gap:24px; flex-wrap:wrap; padding:24px; color:#e8f4ff; }
.cg-signup-card { width:min(760px,96vw); background:linear-gradient(180deg,#0c1728,#08111f); border:1px solid rgba(95,190,255,.24); border-radius:28px; padding:30px; box-shadow:0 28px 70px rgba(0,0,0,.45); }
.cg-signup-card h1 { color:#fff; margin:0 0 8px; font-size:30px; }
.cg-signup-lead { color:#a9cbe7; margin:0 0 16px; line-height:1.55; }
.cg-steps { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 18px; }
.cg-step {
  display:inline-flex; align-items:center; gap:8px; padding:7px 12px; border-radius:999px;
  background:rgba(8,17,31,.9); border:1px solid rgba(95,190,255,.16); color:#9bbbd7; font-size:12px; font-weight:700;
}
.cg-step.active { border-color:rgba(122,238,195,.4); color:#7aeec3; background:rgba(8,122,84,.12); }
.cg-step .n { color:#4bdcff; font-weight:900; }
.cg-selected-banner {
  margin:0 0 18px; padding:14px 16px; border-radius:16px;
  background:linear-gradient(135deg,rgba(8,122,84,.18),rgba(18,57,93,.35));
  border:1px solid rgba(52,211,153,.28); color:#cfeee0; font-size:14px; line-height:1.5;
}
.cg-selected-banner strong { color:#fff; }
.cg-alt-paths {
  display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0 0 20px;
}
.cg-alt {
  display:block; padding:12px 14px; border-radius:14px; text-decoration:none!important;
  background:#091322; border:1px solid rgba(95,190,255,.16); color:#a9cbe7; font-size:12px; line-height:1.4;
}
.cg-alt:hover { border-color:rgba(75,220,255,.35); }
.cg-alt strong { display:block; color:#fff; font-size:13px; margin-bottom:3px; }
.cg-signup-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.cg-field { margin-bottom:14px; }
.cg-field.full { grid-column:1 / -1; }
.cg-field label { display:block; color:#9ec8e8; font-size:12px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:6px; }
.cg-input, .cg-select { width:100%; background:#0f1b2d; color:#fff; border:1px solid rgba(95,190,255,.28); border-radius:12px; padding:12px; }
.cg-packages { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:8px 0 8px; }
.cg-pkg { border:1px solid rgba(95,190,255,.18); border-radius:16px; padding:14px; background:#091322; cursor:pointer; }
.cg-pkg input { margin-right:8px; }
.cg-pkg strong { display:block; color:#fff; font-size:14px; margin-bottom:4px; }
.cg-pkg span { color:#9ec8e8; font-size:12px; line-height:1.4; }
.cg-pkg.selected { border-color:rgba(122,238,195,.45); box-shadow:0 0 0 1px rgba(122,238,195,.18); }
.cg-pkg-hint { margin:0 0 18px; color:#7f9cb5; font-size:12px; line-height:1.45; }
.cg-btn { width:100%; border:0; border-radius:12px; padding:13px 14px; color:#fff !important; font-weight:900; background:linear-gradient(135deg,#087a54,#10b981); cursor:pointer; }
.cg-btn.secondary { background:linear-gradient(135deg,#0d5ea8,#1597d5); margin-top:10px; }
.cg-note { margin-top:16px; background:#091322; border:1px solid rgba(95,190,255,.16); border-radius:14px; padding:12px; color:#9bbbd7; font-size:13px; line-height:1.5; }
.cg-errors { margin:0 0 16px; padding:12px 14px; border-radius:14px; background:rgba(255,107,129,.12); border:1px solid rgba(255,107,129,.28); color:#ffc7d1; }
.cg-errors li { margin:4px 0; }
.cg-login-promo { width:min(300px,96vw); }
.cg-login-promo img { width:100%; height:auto; border-radius:18px; border:1px solid rgba(95,190,255,.24); box-shadow:0 20px 50px rgba(0,0,0,.4); display:block; }
@media(max-width:760px){
  .cg-signup-grid,.cg-packages,.cg-alt-paths { grid-template-columns:1fr; }
  .cg-signup-card { padding:22px 18px; }
  .cg-signup-card h1 { font-size:24px; }
}
