@layer feature {
	/* .form-group.auth-form-group {
		margin-bottom: 1.25rem;
	} */

	/* -------------------------------------------------------------------------
   회원가입 카드: 단계 네비 폐기(2026-05-07) — 단일 폼, viewport 자연 스크롤
   ------------------------------------------------------------------------- */
	#signup_form.auth-form {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 0.75rem;
	}

	/* #signup_form > .form-section {
		flex: 1 1 auto;
		min-height: 0;
		display: flex;
		flex-direction: column;
		overflow: hidden;
	} */

	/* #signup_form .signup-step:not([hidden]) {
		display: flex !important;
		flex-direction: column;
		flex: 1 1 auto;
		min-height: 0;
		overflow: hidden;
	} */

	/* #signup_form .form-group.auth-form-group {
	flex: 1 1 auto;
	min-height: 0;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	margin-bottom: 0;
	scrollbar-gutter: stable;
} */

	/* #signup_form .signup-step-actions {
		flex-shrink: 0;
		margin-top: 0.75rem;
	} */

	/* #signup_form .signup-form-actions__row {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		width: 100%;
		gap: 0.5rem 1rem;
	}

	#signup_form .signup-form-actions__row > [data-signup-step-prev] {
		flex: 0 0 auto;
		margin-right: auto;
	}

	#signup_form .signup-form-actions__primary {
		display: flex;
		flex: 0 0 auto;
		flex-direction: row;
		margin-left: auto;
		gap: 0.5rem;
	} */

	#signup_form [data-scaffold-form-error].form-error-message {
		flex-shrink: 0;
		margin-top: 0.5rem;
		margin-bottom: 0;
	}

	/* 회원가입: form-group 단위 스텝 위저드 */
	.signup-step-nav {
		width: 100%;
	}

	.signup-step-indicator {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
		gap: 0.5rem 0.75rem;
		padding: 0;
		list-style: none;
	}

	.signup-step-indicator-item {
		display: flex;
		align-items: center;
		gap: 0.35rem;
		max-width: 100%;

		font-size: 0.6875rem;
		line-height: 1.2;
		color: var(--blue-gray-500);
	}

	.signup-step-indicator-item.is-active {
		color: var(--primary);
		font-weight: 700;
	}

	.signup-step-indicator-item.is-done:not(.is-active) {
		color: var(--blue-gray-600);
	}

	.signup-step-indicator-index {
		flex-shrink: 0;
		display: inline-flex;
		justify-content: center;
		align-items: center;

		width: 1.25rem;
		height: 1.25rem;
		border: 1px solid currentColor;
		border-radius: var(--circle);

		font-size: 0.625rem;
		font-weight: 700;
	}

	.signup-step-indicator-item.is-done .signup-step-indicator-index {
		border-color: transparent;
		background: var(--primary, #2563eb);
		color: #fff;
	}

	.signup-step-indicator-label {
		display: inline-block;
		width: fit-content;

		font-size: 0.75rem;
		line-height: 1.125rem;
		white-space: nowrap;
		text-overflow: ellipsis;

		overflow: hidden;
	}

	.signup-step {
		width: 100%;
	}

	.signup-step[hidden] {
		display: none !important;
	}

	/* 기업형일 때 대리인 블록 숨김: .form-row 등 display 규칙이 [hidden]을 이기지 못하게 함 */
	[data-signup-guardian-block][hidden] {
		display: none !important;
	}

	/* 대리인: 1~3세트 동적 추가 */
	.signup-guardian-hint {
		font-size: 0.875rem;
		line-height: 1.25rem;

		color: var(--blue-gray-600);
	}

	.signup-guardian-sets {
		display: flex;
		flex-direction: column;
		gap: 0.625rem;
		width: 100%;
		/* margin-bottom: 0.25rem; */
	}

	.signup-guardian-set:last-child {
		margin-bottom: 1rem;
	}

	.signup-guardian-set-head {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: space-between;
		gap: 0.75rem;

		margin-bottom: 0.25rem;
	}

	.signup-guardian-set-title {
		font-size: 0.875rem;
		font-weight: 500;
	}

	.signup-guardian-remove {
		flex-shrink: 0;
		padding: 0.25rem 0.75rem;
		border: none;
		background: transparent;
		font-size: 0.875rem;
		font-weight: 400;

		color: var(--negative);
		text-decoration: underline;
		text-underline-offset: 2px;
		cursor: pointer;
	}

	.signup-guardian-remove:hover {
		color: var(--negative);
	}

	.signup-guardian-remove[hidden] {
		display: none !important;
	}

	.signup-guardian-add {
		width: 100%;
		max-width: 100%;
	}

	/* 현금영수증: 발급 종류별 단일 입력 토글 */
	[data-signup-cash-receipt-for][hidden] {
		display: none !important;
	}

	/* .signup-step-actions {
		display: flex;
		flex-direction: column;
		gap: 0.75rem;
		width: 100%;
	}

	.signup-step-actions-split {
		flex-direction: row;
		align-items: stretch;
	}

	.signup-step-actions-split .signup-button {
		flex: 1;
		min-width: 0; 
	}*/

	.execute-button.prev,
	.execute-button.next {
		flex: 1;
		width: 100%;
	}

	@media screen and (min-width: 768px) {
		.signup-step-indicator-item {
			font-size: 0.75rem;
		}
	}

	@media screen and (min-width: 1024px) {
	}

	/* 약관 동의: 공급기업 가입(admin-signup)과 동일 — form-input-checkable + 카드·행 간격(feature) */
	.signup-terms-card {
		display: block;
		width: 100%;

		border: 1px solid var(--blue-gray-200);
		border-radius: var(--curved);
	}

	.signup-terms-check-group {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
		gap: 0;

		width: 100%;
	}

	.signup-terms-all,
	.signup-terms-item {
		width: 100%;
		padding: 0.75rem 1rem;

		border-bottom: 1px solid var(--blue-gray-100);
	}

	.signup-terms-item {
		border-bottom: none;
	}

	/* 개별 약관: 라벨 행 + 전문보기 우측 정렬 */
	.signup-terms-item.form-input-checkable-option {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: flex-start;
		gap: 0.5rem;
		min-width: 0;
	}

	.signup-terms-item .form-input-checkable-label {
		min-width: 0;
	}

	.signup-terms-fulltext {
		flex-shrink: 0;
		align-self: center;

		padding: 0.125rem 0;
		margin-left: auto;

		font-size: 0.8125rem;
		line-height: 1.25rem;
		font-weight: 500;
		text-decoration: underline;
		text-underline-offset: 2px;
		white-space: nowrap;

		color: var(--text);
	}

	.signup-terms-fulltext:hover {
		color: var(--primary-dark);
	}

	.signup-terms-fulltext:focus-visible {
		outline: 2px solid var(--primary);
		outline-offset: 2px;
		border-radius: 2px;
	}

	/* agree_all 전용 스캐폴드 필수 박스(시각·레이아웃은 위 약관 묶음과 겹친다) */
	#signup_form .form-box--agreement-contract {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}

	#signup_form .signup-terms-card {
		position: relative;
	}

	#signup_form .signup-button[data-scaffold-form-submit]:disabled {
		opacity: 0.45;
		cursor: not-allowed;
		pointer-events: none;
	}

	.form-error-message {
		margin-bottom: 1.25rem;
	}

	/* 현금영수증: 미선택 입력 행은 JS에서 class 로만 숨김(display:none), 스캐폴드·컴포넌트보다 feature 레이어가 우선한다. */
	[data-signup-cash-receipt-variant].signup-cash-receipt-cell-hidden {
		display: none;
	}

	#signup_form .signup-cash-receipt-type-group.form-input-checkable-group {
		flex-wrap: wrap;
		width: 100%;
	}
}
