/* GoWebsited Forms — Dark Theme: Navy #1A1A2E + Neon Green #00E676 */
.gw-form-wrap{max-width:640px;margin:0 auto !important;padding:0 16px !important;padding-bottom:60px !important}
.gw-form-progress{height:4px;background:#2a2a4a;border-radius:4px;margin-bottom:8px;overflow:hidden}
.gw-form-progress-bar{height:100%;background:#00E676;border-radius:4px;transition:width .4s ease}
.gw-form-step-label{font-size:13px;color:#B0B0CC;margin-bottom:32px;text-align:right;display:block}
.gw-form-step-label .gw-step-num{display:inline !important;width:auto !important;height:auto !important;border-radius:0 !important;background:none !important;border:none !important;font-size:inherit !important;font-weight:700 !important;color:#00E676 !important;padding:0 !important;margin:0 !important;align-items:initial !important;justify-content:initial !important;flex-shrink:initial !important}
.gw-form h2{font-size:28px;font-weight:700;color:#FFFFFF;margin:0 0 4px}
.gw-form .gw-subtitle{color:#B0B0CC;font-size:15px;margin:0 0 28px}
.gw-form label{display:block;font-size:15px;font-weight:600;color:#FFFFFF;margin-bottom:20px}
.gw-form .req{color:#00E676;font-weight:700}
.gw-form input[type="text"],
.gw-form input[type="email"],
.gw-form input[type="tel"],
.gw-form input[type="url"],
.gw-form input[type="date"],
.gw-form select,
.gw-form textarea{display:block;width:100%;margin-top:6px;padding:12px 14px;border:2px solid #2a2a4a;border-radius:8px;font-size:15px;font-family:inherit;color:#FFFFFF;background:#16213E;transition:border-color .2s}
.gw-form input:focus,
.gw-form select:focus,
.gw-form textarea:focus{outline:none;border-color:#00E676}
.gw-form input[type="file"]{display:block;margin-top:6px;padding:10px 0;font-size:14px;border:none;color:#B0B0CC}
.gw-form textarea{resize:vertical;min-height:60px}
.gw-form select{appearance:auto;cursor:pointer}
.gw-form input::placeholder,
.gw-form textarea::placeholder{color:#666}

/* Checkbox group */
.gw-checkbox-group{border:none;padding:0;margin:0 0 20px}
.gw-checkbox-group legend{font-size:15px;font-weight:600;color:#FFFFFF;margin-bottom:10px}
.gw-check{display:inline-flex;align-items:center;gap:6px;font-weight:400;margin:0 16px 8px 0;font-size:14px;cursor:pointer;color:#E0E0F0}
.gw-check input[type="checkbox"]{width:18px;height:18px;accent-color:#00E676;margin:0}

/* Buttons */
.gw-btn-row{display:flex;gap:12px;margin-top:28px;justify-content:flex-end}
.gw-btn{padding:14px 32px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}
.gw-next,.gw-submit{background:#00E676;color:#1A1A2E}
.gw-next:hover,.gw-submit:hover{background:#00C864;color:#1A1A2E}
.gw-back{background:transparent;color:#B0B0CC;border:2px solid #2a2a4a}
.gw-back:hover{border-color:#00E676;color:#FFFFFF}

/* Pages */
.gw-form-step{display:none}
.gw-form-step.active{display:block;animation:gwFadeIn .3s ease}
@keyframes gwFadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

/* Conditional fields */
.gw-conditional{margin-top:-8px;margin-bottom:20px;padding:12px 16px;background:#16213E;border-radius:8px}

/* Success */
.gw-form-success{text-align:center;padding:60px 20px}
.gw-success-icon{width:72px;height:72px;margin:0 auto 20px;border-radius:50%;background:#00E676;color:#1A1A2E;font-size:36px;font-weight:700;display:flex;align-items:center;justify-content:center}
.gw-form-success h2{font-size:28px;color:#FFFFFF;margin:0 0 12px}
.gw-form-success .gw-success-msg{color:#B0B0CC;font-size:16px;line-height:1.6;max-width:480px;margin:0 auto}

/* Loading state */
.gw-btn.loading{opacity:.6;pointer-events:none}
.gw-btn.loading::after{content:" ⏳"}

/* Validation */
.gw-form input:invalid.touched,
.gw-form select:invalid.touched,
.gw-form textarea:invalid.touched{border-color:#e74c3c}

/* Mobile */
@media(max-width:600px){
  .gw-form h2{font-size:22px}
  .gw-btn{padding:12px 24px;font-size:15px}
  .gw-btn-row{flex-direction:column-reverse}
  .gw-btn-row .gw-btn{width:100%;text-align:center}
  .gw-check{display:flex;margin:0 0 8px}
}

/* File sharing hint text */
.gw-hint { font-size: 13px; color: #8888aa; margin-top: 4px; margin-bottom: 4px; }
.gw-hint a { text-decoration: underline; }
.gw-hint strong { color: #ccc; }
.gw-hint-box { background: rgba(255,255,255,0.03); border: 1px solid #2a2a4a; border-radius: 8px; padding: 12px 16px; margin-top: 8px; }
.gw-hint-box .gw-hint { margin-bottom: 3px; }
.gw-warning { color: #FFB74D !important; margin-top: 8px !important; }
