.registration-workspace { grid-template-columns: 255px minmax(0,1fr); gap: 32px; }
.registration-workspace .form-area { background: white; border: 1px solid var(--smap-border); border-top: 3px solid var(--brand-green); padding: 32px; box-shadow: 0 8px 24px rgba(18,69,40,.04); }
.registration-workspace .form-steps { border-radius: 6px; overflow: hidden; }
.registration-step-title { display: flex; gap: 10px; align-items: center; padding: 20px 16px; background: var(--brand-green-dark); color: white; font-size: 13px; }
.registration-step-title>i { font-size: 23px; color: #ffb366; }
.registration-workspace .form-steps button { padding: 18px 14px; gap: 10px; font-size: 13px; min-height: 62px; }
.registration-workspace .form-steps button>span { flex: 1; }
.step-completion { visibility: hidden; color: var(--brand-green); font-size: 15px !important; }
.form-steps button.complete .step-completion { visibility: visible; }
.registration-progress { display: flex; gap: 18px; align-items: center; padding-bottom: 22px; margin-bottom: 24px; border-bottom: 1px solid var(--smap-border); }
.registration-progress>span { font-size: 12px; font-weight: 600; color: var(--brand-green); white-space: nowrap; }
.registration-progress progress { width: 100%; height: 6px; border: 0; background: #e8efea; border-radius: 3px; overflow: hidden; }
.registration-progress progress::-webkit-progress-bar { background: #e8efea; }
.registration-progress progress::-webkit-progress-value { background: var(--brand-green); }
.registration-progress progress::-moz-progress-bar { background: var(--brand-green); }
.registration-workspace .form-area h2 { font-size: 23px; }
.registration-workspace .form-area .lead { line-height: 1.7; }
.registration-subheading { display: flex; gap: 9px; align-items: center; font-size: 17px; line-height: 1.5; margin: 28px 0 20px; padding-top: 24px; border-top: 1px solid var(--smap-border); }
.registration-subheading i { color: var(--brand-green); }
.registration-workspace .form-grid { gap: 22px 25px; }
.registration-workspace input, .registration-workspace select { min-height: 48px; }
.registration-workspace input[type=checkbox] { min-height: 0; }
.registration-workspace .consent { padding-top: 16px; border-top: 1px solid var(--smap-border); line-height: 1.75; }
.registration-document { padding: 0 0 18px; border-bottom: 1px solid var(--smap-border); }
.registration-document label>i { color: var(--brand-green); font-size: 17px; margin-right: 6px; }
.registration-document input[type=file] { padding: 8px; font-size: 12px; }
.registration-document input::file-selector-button { border: 0; padding: 7px 10px; border-radius: 3px; background: var(--brand-green-soft); color: var(--brand-green-dark); margin-right: 10px; cursor: pointer; }
.registration-document.valid::after { display: none; }
@media(max-width:1000px){.registration-workspace { grid-template-columns: 220px minmax(0,1fr); gap: 20px; }.registration-workspace .form-area { padding: 24px; }}
@media(max-width:760px){.registration-workspace { grid-template-columns: minmax(0,1fr); }.registration-workspace .form-area { padding: 22px 18px; }.registration-step-title { grid-column: 1 / -1; }.registration-workspace .form-steps { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); position: static; }.registration-workspace .form-steps button { padding: 13px 10px; font-size: 11px; gap: 7px; min-height: 56px; }.registration-workspace .form-steps button:last-child { grid-column: 1 / -1; }.registration-workspace .form-grid { grid-template-columns: minmax(0,1fr); }}
