:root{
  --prox-blue:#1976d2;
  --prox-blue-600:#1565c0;
  --prox-blue-700:#0d47a1;
}

.prox-grid{display:grid;grid-template-columns:repeat(2,minmax(240px,1fr));gap:14px;margin-top:8px}
@media (max-width:700px){.prox-grid{grid-template-columns:1fr}}
.prox-field{display:flex;flex-direction:column;gap:6px}
.prox-fieldset{border:1px solid #ddd;border-radius:12px;padding:12px}
.prox-dob{display:grid;grid-template-columns:repeat(3,minmax(100px,1fr));gap:8px}
@media (max-width:500px){.prox-dob{grid-template-columns:repeat(3,1fr)}}
.prox-actions{display:flex;align-items:center;gap:12px;margin-top:16px;flex-wrap:wrap}
.prox-btn{background:var(--prox-blue);color:#fff;border:none;padding:10px 16px;border-radius:10px;cursor:pointer;font-weight:600;display:inline-flex;align-items:center;gap:10px}
.prox-btn:hover{background:var(--prox-blue-600)}
.prox-btn--ghost{background:#fff;color:var(--prox-blue);border:2px solid var(--prox-blue)}
.prox-btn--ghost:hover{color:#fff;background:var(--prox-blue);}
.prox-btn[disabled]{opacity:.6;cursor:not-allowed}
.prox-btn__spinner{width:18px;height:18px;border-radius:50%;border:3px solid #cfe3ff;border-top-color:#fff;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

.prox-progress{margin-bottom:10px}
.prox-progress__track{background:#eee;border-radius:999px;height:10px;overflow:hidden}
.prox-progress__bar{background:var(--prox-blue);height:10px;width:50%;transition:width .3s ease;border-radius:999px}
.prox-progress__labels{display:flex;justify-content:space-between;font-size:12px;margin-top:6px}
.prox-progress__labels span.active{font-weight:700;color:var(--prox-blue)}

.prox-register__msg{margin:10px 0}
.prox-alert{border-radius:10px;padding:12px 14px;border:1px solid #cfd8dc;background:#f7fbff}
.prox-success{border-color:#bbdefb;background:#e3f2fd}
.prox-error{border-color:#ffcdd2;background:#ffebee}
.prox-pre{white-space:pre-wrap;background:#111;color:#eee;padding:8px;border-radius:6px;overflow:auto}

.prox-err{color:#c62828;font-size:12px;min-height:14px}
.prox-step[hidden]{display:none !important}
