.apcs-auth-shell {
	padding: 0 0 24px;
	background: transparent;
}

.apcs-auth-shell__page {
	padding: clamp(24px, 3vw, 32px) clamp(20px, 4vw, 40px) clamp(48px, 6vw, 72px);
	background: transparent;
}

.apcs-auth-shell__grid {
	max-width: min(840px, calc(100vw - 48px));
	margin-inline: auto;
}

.apcs-auth-shell__panel {
	border: 1px solid #d7d2cc;
	border-radius: 0;
	background: #fcfbfa;
	box-shadow: none;
	padding: clamp(24px, 3vw, 36px);
}

.apcs-auth-form {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.apcs-auth-form__label {
	margin: 0;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #4c6078;
}

.apcs-auth-form__title {
	margin: 0;
	font-family: "Noto Sans CJK KR", "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "Manrope", sans-serif;
	font-size: clamp(1.7rem, 2.3vw, 2.45rem);
	line-height: 1.02;
	letter-spacing: -0.04em;
	color: #121417;
}

.apcs-auth-form__summary {
	margin: 0;
	max-width: 48ch;
	font-size: 1rem;
	line-height: 1.65;
	color: #58524d;
}

.apcs-auth-form__form {
	display: grid;
	gap: 16px;
}

.apcs-auth-form .woocommerce-form-row,
.apcs-auth-form .form-row {
	margin: 0;
}

.apcs-auth-form .form-row-first,
.apcs-auth-form .form-row-last {
	float: left;
	width: calc(50% - 8px);
}

.apcs-auth-form .form-row-first {
	margin-right: 16px;
}

.apcs-auth-form .clear {
	clear: both;
}

.apcs-auth-form label,
.apcs-auth-form .woocommerce-form-row label {
	display: block;
	margin-bottom: 8px;
	font-size: 0.88rem;
	font-weight: 700;
	color: #121417;
}

.apcs-auth-form input:not([type="checkbox"]),
.apcs-auth-form select,
.apcs-auth-form textarea {
	box-sizing: border-box;
	width: 100%;
	min-height: 52px;
	padding: 14px 16px;
	border: 1px solid #d7d2cc;
	border-radius: 0;
	background: #fff;
	font-size: 0.96rem;
	color: #121417;
	box-shadow: none;
}

.apcs-auth-form input:focus,
.apcs-auth-form select:focus,
.apcs-auth-form textarea:focus {
	outline: 2px solid rgb(76 96 120 / 0.22);
	outline-offset: 2px;
	border-color: #4c6078;
}

.apcs-auth-form small {
	display: block;
	margin-top: 6px;
	font-size: 0.84rem;
	line-height: 1.55;
	color: #6a645f;
}

.apcs-auth-form__actions {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 12px 16px;
	align-items: center;
	padding-top: 12px;
	border-top: 1px solid #ece7e1;
}

.apcs-auth-form__actions .woocommerce-form-login__rememberme {
	margin-right: 0;
	font-size: 0.88rem;
	line-height: 1.4;
	color: #3c3a38;
	grid-column: 1;
}

.apcs-auth-form__actions .button,
.apcs-auth-form__actions .wp-element-button,
.apcs-auth-form__form button[type="submit"] {
	min-height: 52px;
	min-width: 220px;
	padding: 0 24px;
	border: 1px solid #1a2e44;
	border-radius: 0;
	background: #1a2e44;
	color: #fff;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	box-shadow: none;
}

.apcs-auth-form__actions .button,
.apcs-auth-form__actions .wp-element-button {
	grid-column: 2;
	justify-self: end;
}

.apcs-auth-form__actions .button:hover,
.apcs-auth-form__actions .wp-element-button:hover,
.apcs-auth-form__form button[type="submit"]:hover {
	background: #121417;
	border-color: #121417;
}

.apcs-auth-form .woocommerce-LostPassword,
.apcs-auth-form__switch {
	margin: 0;
	font-size: 0.9rem;
	line-height: 1.6;
	color: #58524d;
}

.apcs-auth-form .woocommerce-LostPassword {
	padding-top: 4px;
}

.apcs-auth-form__switch {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	padding-top: 8px;
	border-top: 1px solid #ece7e1;
}

.apcs-auth-form a,
.apcs-auth-shell__note a {
	color: #4c6078;
	text-decoration: none;
	font-weight: 700;
}

.apcs-auth-form a:hover,
.apcs-auth-shell__note a:hover {
	text-decoration: underline;
}

.apcs-auth-shell__redirect-note {
	margin: 1.5rem 0 0;
	padding-top: 1rem;
	border-top: 1px solid #ece7e1;
	font-size: 0.95rem;
	line-height: 1.7;
	color: #475569;
}

.apcs-auth-shell .woocommerce-notices-wrapper,
.apcs-auth-shell .woocommerce-message,
.apcs-auth-shell .woocommerce-error {
	margin-bottom: 18px;
}

.apcs-auth-shell .woocommerce-message,
.apcs-auth-shell .woocommerce-error {
	padding: 14px 16px;
	border-left: 3px solid #4c6078;
	border-radius: 0;
	background: #f6f3f2;
	box-shadow: none;
}

.apcs-auth-shell .woocommerce-error {
	border-left-color: #8a3b34;
}

.apcs-auth-shell .woocommerce-privacy-policy-text {
	font-size: 0.86rem;
	line-height: 1.6;
	color: #6a645f;
}

@media (max-width: 1023px) {
	.apcs-auth-shell__grid {
		max-width: min(840px, calc(100vw - 40px));
	}
}

@media (max-width: 767px) {
	.apcs-auth-shell {
		padding-bottom: 12px;
	}

	.apcs-auth-shell__page {
		padding: 20px 14px 32px;
	}

	.apcs-auth-shell__grid {
		max-width: none;
	}

	.apcs-auth-shell__panel {
		padding: 18px 16px;
	}

	.apcs-auth-form .form-row-first,
	.apcs-auth-form .form-row-last {
		float: none;
		width: 100%;
		margin-right: 0;
	}

	.apcs-auth-form__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.apcs-auth-form__actions .woocommerce-form-login__rememberme {
		margin-right: 0;
	}

	.apcs-auth-form__actions .button,
	.apcs-auth-form__actions .wp-element-button,
	.apcs-auth-form__form button[type="submit"] {
		width: 100%;
		min-width: 0;
	}

	.apcs-auth-form__switch {
		flex-direction: column;
		align-items: flex-start;
	}
}
