/* Card & header */
.sgsf-card{background:#fff;border:1px solid #e8ebff;border-radius:16px;box-shadow:0 12px 30px rgba(0,0,0,.06);padding:1.25rem}
.sgsf-wrap{max-width:880px;margin:0 auto}
.sgsf-header{padding:.25rem .5rem .75rem}
.sgsf-title{color:#1A237E;font:800 1.9rem/1.2 "Segoe UI",system-ui,Arial;margin:0}
.sgsf-sub{color:#475569;margin:.35rem 0 1rem}

/* Progress */
.sgsf-progress{display:flex;gap:.5rem;list-style:none !important;padding:0;margin:0 0 1rem;counter-reset:step}
.sgsf-progress li{flex:1;text-align:center;position:relative;padding:.5rem .25rem .5rem 2rem;background:#f6f7ff;border:1px solid #e8ebff;border-radius:999px;color:#1A237E;font-weight:700}
.sgsf-progress li::before{counter-increment:step;content:counter(step);position:absolute;left:.35rem;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background:#e8ebff;color:#1A237E;display:inline-flex;align-items:center;justify-content:center;font-weight:800}
.sgsf-progress li.active{background:#1A237E;color:#fff;border-color:#1A237E}
.sgsf-progress li.active::before{background:#4DD0E1;color:#1A237E}

/* Steps */
.sgsf-step{display:none;animation:fade .25s ease}
.sgsf-step.active{display:block}
@keyframes fade{from{opacity:.6;transform:translateY(4px)}to{opacity:1;transform:none}}

/* Grid */
.sgsf-grid-3{display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}
.sgsf-grid-2{display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}
.sgsf-full{grid-column:1/-1}

label{display:flex;flex-direction:column;font-weight:600;color:#0d1b2a}
input,select,textarea{margin-top:.35rem !important;padding:.65rem .75rem  !important ;border:1px solid #d9e1ef  !important;border-radius:8px ;font:500 1rem/1.2 "Segoe UI",system-ui,Arial}
.sgsf-fieldset{border:1px solid #e8ebff;border-radius:12px;padding:.75rem}
.sgsf-fieldset legend{padding:0 .35rem;font-weight:800;color:#1A237E}
.sgsf-inline{display:inline-flex;align-items:center;margin-right:1rem;gap:.4rem}
.sgsf-hidden{display:none}

/* Nav buttons */
.sgsf-nav{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1rem}
.sgsf-nav.end{justify-content:space-between;align-items:center}
.sgsf-prev,.sgsf-next,.sgsf-btn{appearance:none;border:0;border-radius:10px;padding:.85rem 1.2rem;font-weight:800;cursor:pointer}
.sgsf-prev{background:#e8ebff;color:#1A237E}
.sgsf-next{background:#4DD0E1;color:#0d1b2a}
.sgsf-btn{background:#1A237E;color:#fff}
.sgsf-prev:hover{filter:brightness(.98)}
.sgsf-next:hover{filter:brightness(.96)}
.sgsf-btn:hover{opacity:.95}
#sgsf-msg{margin-top:.75rem;font-weight:700}

/* Captcha */
.sgsf-captcha{margin: .75rem 0 1rem}
.sgsf-cap-q{display:inline-block;margin:0 .5rem;font-weight:800;color:#1A237E}

/* Help */
.sgsf-wa{color:#4DD0E1;font-weight:700}
.sgsf-help{margin-top:.75rem}

/* Responsive */
@media (max-width:960px){.sgsf-grid-3{grid-template-columns:1fr 1fr}}
@media (max-width:640px){
 .sgsf-grid-3,.sgsf-grid-2{grid-template-columns:1fr}
 .sgsf-progress{flex-wrap:wrap}
}
