.form-step { display: none; }
.form-step.active { display: block; }
.form-group { margin-bottom: 1.5rem; }
.form-group label { display: block; margin-bottom: 0.3rem; font-weight: 500; }
.form-group input[type="number"], .form-group input[type="text"] {
    width: 100%;
    padding: 0.75rem;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    font-size: 1rem;
}
.radio-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0.75rem; }
.radio-card { border: 2px solid var(--border); border-radius: var(--radius); padding: 1rem; text-align: center; cursor: pointer; transition: border-color var(--transition); }
.radio-card.selected { border-color: var(--primary); background: var(--primary-light); }
.radio-card input { position: absolute; opacity: 0; pointer-events: none; }
.error-message { color: var(--danger); font-size: 0.85rem; margin-top: 0.25rem; display: none; }
.form-group.has-error input, .form-group.has-error .radio-cards { border-color: var(--danger); }
.form-group.has-error .error-message { display: block; }
.unit-toggle { display: flex; gap: 0.5rem; margin-bottom: 1rem; }
.unit-toggle button { padding: 0.5rem 1rem; border: 1px solid var(--border); background: white; cursor: pointer; border-radius: var(--radius); }
.unit-toggle button.active { background: var(--primary); color: white; }