.ds{--ic-bg:#fff;--ic-bg-2:#f6f8fc;--ic-border-2:#dfe5f1;--ic-gold-faint:#eaf0ff;--ic-radius-sm:10px;--ic-teal:#2358dc;--ic-text-1:#0e2347;--ic-text-2:#5b667a;--ic-text-3:#8a93a0;--ic-vital:#ff6b4a;--ic-font-h:'Poppins',system-ui,sans-serif;--ic-font-b:'Poppins',system-ui,sans-serif}
/* Become a Provider (v2): the classic .ic-pf-* / .ic-pw-* form rules (style.css) scoped under .ds and re-coloured. Generated; form markup + JS are unchanged. */
.ds .ic-hp-field{ position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }
.ds .ic-pw-toggle{
  position: absolute; right: 10px; top: 12px; background: none !important; border: none; cursor: pointer;
  color: var(--ic-text-3) !important; padding: 6px; display: flex;
}
.ds .ic-pw-toggle:hover,.ds .ic-pw-toggle:focus{ background: none !important; color: var(--ic-vital) !important; }
.ds .ic-pw-toggle .ic-eye-off{ display: none; }
.ds .ic-pw-toggle.is-showing .ic-eye{ display: none; }
.ds .ic-pw-toggle.is-showing .ic-eye-off{ display: block; }
.ds .ic-pw-strength{ display: none; align-items: center; gap: 8px; margin-top: 8px; }
.ds .ic-pw-strength.is-visible{ display: flex; }
.ds .ic-pw-strength-bar{ display: flex; gap: 4px; flex: 1; }
.ds .ic-pw-strength-bar i{ height: 4px; flex: 1; border-radius: 2px; background: var(--ic-border-2); }
.ds .ic-pw-strength-bar[data-level="0"] i:nth-child(1){ background: #C0392B; }
.ds .ic-pw-strength-bar[data-level="1"] i:nth-child(-n+1){ background: #E67E22; }
.ds .ic-pw-strength-bar[data-level="2"] i:nth-child(-n+2){ background: #F1C40F; }
.ds .ic-pw-strength-bar[data-level="3"] i:nth-child(-n+3){ background: var(--ic-teal); }
.ds .ic-pw-strength-bar[data-level="4"] i:nth-child(-n+4){ background: var(--ic-vital); }
.ds .ic-pw-strength-label{ font-family: var(--ic-font-b); font-size: 0.7rem; font-weight: 700; color: var(--ic-text-3); white-space: nowrap; }
.ds .ic-pf-shell{ max-width: 860px; margin: 0 auto; }
.ds .ic-pf-section-title{
  font-family: var(--ic-font-h); font-size: 1.05rem; font-weight: 800; color: var(--ic-text-1);
  margin: 34px 0 16px; padding-top: 22px; border-top: 1px solid var(--ic-border-2);
}
.ds .ic-pf-form .ic-pf-section-title:first-child{ margin-top: 0; padding-top: 0; border-top: none; }
.ds .ic-pf-grid{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px 20px; }
.ds .ic-pf-field{ display: flex; flex-direction: column; gap: 6px; margin-bottom: 16px; }
.ds .ic-pf-field-wide{ grid-column: 1 / -1; }
.ds .ic-pf-field > span{ font-family: var(--ic-font-b); font-size: 0.78rem; font-weight: 700; color: var(--ic-text-2); }
.ds .ic-pf-field > span em{ font-weight: 400; font-style: normal; color: var(--ic-text-3); }
.ds .ic-pf-field input[type="text"],.ds .ic-pf-field input[type="email"],.ds .ic-pf-field input[type="tel"],.ds .ic-pf-field input[type="number"],.ds .ic-pf-field input[type="password"],.ds .ic-pf-field input[type="file"],.ds .ic-pf-field select,.ds .ic-pf-field textarea{
  width: 100%; box-sizing: border-box; font-family: var(--ic-font-b); font-size: 0.92rem; color: var(--ic-text-1);
  background: var(--ic-bg); border: 1.5px solid var(--ic-border-2); border-radius: var(--ic-radius-sm);
  padding: 12px 14px; outline: none; transition: border-color .2s ease, box-shadow .2s ease;
}
.ds .ic-pf-field textarea{ resize: vertical; font-family: var(--ic-font-b); }
.ds .ic-pf-field input:focus,.ds .ic-pf-field select:focus,.ds .ic-pf-field textarea:focus{
  border-color: var(--ic-vital); box-shadow: 0 0 0 4px var(--ic-gold-faint);
}
.ds .ic-pf-field input:disabled{ background: var(--ic-bg-2); color: var(--ic-text-3); cursor: not-allowed; }
.ds .ic-pf-checkbox-row{ display: flex; flex-wrap: wrap; gap: 18px; padding: 4px 0; }
.ds .ic-pf-hint{ font-family: var(--ic-font-b); font-size: 0.78rem; color: var(--ic-text-3); margin: 4px 0 18px; }
.ds .ic-pf-submit{ margin-top: 8px; }
.ds .ic-pf-field-hint{ font-family: var(--ic-font-b); font-size: 0.74rem; font-style: normal; color: var(--ic-text-3); }
.ds .ic-pf-field-hint.is-error{ color: #C0392B; }
.ds .ic-pf-field-hint.is-ok{ color: #2358DC; }
.ds .ic-pf-pw-wrap{ position: relative; display: block; }
.ds .ic-pf-pw-wrap input{ padding-right: 42px !important; }
.ds .ic-pf-pw-wrap .ic-pw-toggle{
  position: absolute; right: 8px; top: 50%; transform: translateY(-50%);
  background: none !important; border: none; cursor: pointer; color: var(--ic-text-3) !important; padding: 6px; display: flex;
}
.ds .ic-pf-pw-wrap .ic-pw-toggle:hover,.ds .ic-pf-pw-wrap .ic-pw-toggle:focus{ background: none !important; color: var(--ic-vital) !important; }
.ds .ic-pf-pw-wrap .ic-pw-toggle .ic-eye-off{ display: none; }
.ds .ic-pf-pw-wrap .ic-pw-toggle.is-showing .ic-eye{ display: none; }
.ds .ic-pf-pw-wrap .ic-pw-toggle.is-showing .ic-eye-off{ display: flex; }
.ds .ic-pf-other-input{ margin-top: 8px; }
.ds .ic-pf-field .ic-pw-strength{ margin-top: 8px; }
.ds .ic-pf-banner{
  font-family: var(--ic-font-b); font-size: 0.85rem; font-weight: 600; padding: 10px 16px;
  border-radius: var(--ic-radius-sm); margin: 0 0 18px;
}
.ds .ic-pf-banner.is-success{ background: rgba(76,154,255,0.12); color: #2358DC; }
.ds .ic-pf-banner.is-error{ background: rgba(255,107,107,0.12); color: #C0392B; }
.ds .ic-pf-login-line{ font-family: var(--ic-font-b); font-size: 0.86rem; color: var(--ic-text-2); text-align: right; margin: 0 0 18px; }
.ds .ic-pf-login-line a{ color: var(--ic-vital); font-weight: 700; text-decoration: none; }
.ds .ic-pf-login-line a:hover{ text-decoration: underline; }
@media (max-width: 720px){.ds .ic-pf-grid{ grid-template-columns: 1fr; }}
.ds .ic-pf-shell{max-width:920px;margin:0 auto}
.ds .ic-pf-form{background:#fff;border:1px solid var(--ds-hair);border-radius:16px;padding:26px 28px;box-shadow:0 8px 28px rgba(20,33,61,.06)}
.ds .ic-pf-login-line{margin:0 0 14px;font-size:14px;color:var(--ds-mute)}
.ds .ic-pf-login-line a{font-weight:700;color:var(--ds-blue)}
.ds .ic-pf-submit{margin-top:6px}
@media (max-width:640px){.ds .ic-pf-form{padding:18px 16px}}
.ds .ic-pf-form .ic-pf-section-title:first-of-type{margin-top:0;padding-top:0;border-top:none}
.ds .ic-pf-submit{padding:14px 30px;font-size:15px}
