/* 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 14px; 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-selected-price-row {
  display:grid; grid-template-columns:1.2fr 1fr; gap:12px; margin:0 0 10px;
}
.cg-due-label {
  display:block; font-size:10px; font-weight:900; letter-spacing:.1em;
  text-transform:uppercase; color:#7aeec3; margin-bottom:3px;
}
.cg-due-amount { display:block; font-size:1.7rem; font-weight:1000; color:#fff; line-height:1.1; }
.cg-then-amount { display:block; font-size:1.2rem; font-weight:900; color:#e2e8f0; line-height:1.2; }
.cg-selected-then { border-left:1px solid rgba(94,190,255,.16); padding-left:12px; }
.cg-selected-plan-name { margin:0 0 4px; font-size:13px; color:#cfeee0; }
.cg-invoice-math {
  margin:8px 0 0; font-size:13px; color:#b7e8d4; line-height:1.45;
}
.cg-invoice-math strong { color:#fff; }
.cg-banner-switch { margin:8px 0 0; font-size:12px; color:#9ec8e8; }
@media(max-width:560px){
  .cg-selected-price-row { grid-template-columns:1fr; }
  .cg-selected-then { border-left:0; padding-left:0; border-top:1px solid rgba(94,190,255,.14); padding-top:8px; }
}
.cg-sensor-box {
  margin:0 0 16px; padding:14px 16px; border-radius:16px;
  background:#091322; border:1px solid rgba(95,190,255,.2); color:#a9cbe7; font-size:13px; line-height:1.5;
}
.cg-sensor-title { margin:0 0 6px; color:#fff; font-size:14px; }
.cg-sensor-box p { margin:0 0 8px; }
.cg-sensor-box p:last-child { margin-bottom:0; }
.cg-sensor-box strong { color:#fff; }
.cg-sensor-skip { color:#9ec8e8; }
.cg-sensor-skip em { color:#7aeec3; font-style:normal; font-weight:700; }
.cg-alt-paths {
  display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0 0 10px;
}
.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-alt-scan {
  border-color:rgba(122,238,195,.28);
  background:linear-gradient(160deg,rgba(8,40,32,.55),#091322);
}
.cg-alt-deep {
  margin:0 0 18px; font-size:12px; color:#7f9cb5; line-height:1.45;
}
.cg-alt-deep a { color:#5ebfff; font-weight:700; text-decoration:none; }
.cg-alt-deep a:hover { text-decoration:underline; }
.cg-pkg-price { display:block; color:#7aeec3; font-weight:900; font-size:15px; margin:4px 0 2px; }
.cg-pkg-first { display:block; color:#e8f4ff; font-size:12px; font-weight:700; }
.cg-pkg-math { display:block; color:#7f9cb5; font-size:11px; margin-top:2px; line-height:1.35; }
.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; }
}
