/*
 * Native Discuz member forms, presented responsively inside the
 * uszhaofang theme.  This file changes layout only: form actions,
 * validation, captcha and authentication continue to use Discuz core.
 */

body.pg_register,
body.pg_logging {
	overflow-x: hidden;
}

body.pg_register #main-content,
body.pg_logging #main-content {
	min-width: 0;
}

body.pg_register.usz-global-chrome #main-content.usz-native-main #ct.wp,
body.pg_logging.usz-global-chrome #main-content.usz-native-main #ct.wp {
	float: none;
	width: calc(100% - 32px) !important;
	max-width: 820px !important;
	min-width: 0 !important;
	margin: 28px auto 48px !important;
	padding: 0 !important;
	box-sizing: border-box;
}

body.pg_register #ct > .mn,
body.pg_logging #ct > .mn,
body.pg_logging #main_message {
	float: none;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

body.pg_register #main_message,
body.pg_logging #main_message > .bm {
	margin: 0;
	border: 1px solid #dfe5eb;
	border-radius: 6px;
	background: #fff;
	overflow: hidden;
}

body.pg_register #main_hnav,
body.pg_logging #main_message > .bm > .bm_h {
	display: flex;
	min-height: 56px;
	height: auto;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 0 24px;
	border: 0;
	border-bottom: 1px solid #e4e8ed;
	background: #fff;
	line-height: 1.4;
	white-space: normal;
	overflow: visible;
	box-sizing: border-box;
}

body.pg_register #main_hnav h3,
body.pg_logging #main_message > .bm > .bm_h h3 {
	order: 1;
	margin: 0;
	font-size: 20px;
	font-weight: 700;
	color: #17253a;
}

body.pg_register #main_hnav .y,
body.pg_logging #main_message > .bm > .bm_h .y {
	order: 2;
	float: none;
	margin: 0;
	font-size: 14px;
}

body.pg_register #layer_reg,
body.pg_logging #main_message > .bm > div > [id^="main_messaqge_"] {
	padding: 22px 24px 26px;
	box-sizing: border-box;
}

body.pg_register #reginfo_a > .rfm,
body.pg_register #layer_reginfo_b > .rfm,
body.pg_logging .rfm,
#fwin_login .rfm {
	width: 100% !important;
	margin: 0 !important;
	padding: 10px 0 !important;
	border: 0 !important;
	border-bottom: 1px solid #edf0f3 !important;
	box-sizing: border-box;
}

body.pg_register .rfm table,
body.pg_register .rfm tbody,
body.pg_logging .rfm table,
body.pg_logging .rfm tbody,
#fwin_login .rfm table,
#fwin_login .rfm tbody {
	display: block;
	width: 100% !important;
	box-sizing: border-box;
}

body.pg_register .rfm tr,
body.pg_logging .rfm tr {
	display: grid;
	width: 100%;
	grid-template-columns: 132px minmax(220px, 340px) minmax(0, 1fr);
	align-items: start;
	column-gap: 14px;
	box-sizing: border-box;
}

body.pg_register .rfm th,
body.pg_register .rfm td,
body.pg_logging .rfm th,
body.pg_logging .rfm td,
#fwin_login .rfm th,
#fwin_login .rfm td {
	display: block;
	width: auto !important;
	min-width: 0;
	padding: 0 !important;
	line-height: 1.45;
	box-sizing: border-box;
}

body.pg_register .rfm th,
body.pg_logging .rfm th,
#fwin_login .rfm th {
	min-height: 0;
	padding: 10px 0 0 !important;
	font-size: 15px;
	font-weight: 600;
	text-align: right;
	color: #334155;
}

body.pg_register .rfm td.tipcol,
body.pg_logging .rfm td.tipcol,
#fwin_login .rfm td.tipcol {
	font-size: 13px;
	line-height: 1.45;
	color: #64748b;
}

body.pg_register .rfm .p_tip,
body.pg_register .rfm .p_chk,
body.pg_logging .rfm .p_tip,
body.pg_logging .rfm .p_chk,
#fwin_login .rfm .p_tip,
#fwin_login .rfm .p_chk {
	position: static;
	width: auto;
	max-width: 100%;
	padding: 0;
	background: transparent;
	white-space: normal;
	box-sizing: border-box;
}

body.pg_register .rfm .px,
body.pg_register .rfm select,
body.pg_register .rfm textarea,
body.pg_logging .rfm .px,
body.pg_logging .rfm select,
body.pg_logging .rfm textarea,
#fwin_login .rfm .px,
#fwin_login .rfm select,
#fwin_login .rfm textarea {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	min-height: 42px;
	margin: 0 !important;
	padding: 8px 10px;
	border: 1px solid #cfd7df;
	border-radius: 4px;
	background: #fff;
	font-size: 16px;
	line-height: 1.35;
	box-sizing: border-box;
}

body.pg_register .rfm .px:focus,
body.pg_register .rfm select:focus,
body.pg_logging .rfm .px:focus,
body.pg_logging .rfm select:focus,
#fwin_login .rfm .px:focus,
#fwin_login .rfm select:focus {
	border-color: #cf2933;
	box-shadow: 0 0 0 3px rgba(207, 41, 51, .11);
	outline: 0;
}

body.pg_register .login_slct,
body.pg_register .login_slct select,
body.pg_logging .login_slct,
body.pg_logging .login_slct select,
#fwin_login .login_slct,
#fwin_login .login_slct select {
	float: none !important;
	display: block;
	width: 100% !important;
}

body.pg_register .rfm input[id^="seccodeverify_"],
body.pg_logging .rfm input[id^="seccodeverify_"],
#fwin_login .rfm input[id^="seccodeverify_"] {
	display: inline-block !important;
	width: 136px !important;
	margin-right: 8px !important;
	vertical-align: middle;
}

body.pg_register [id^="seccode_"] img,
body.pg_logging [id^="seccode_"] img,
#fwin_login [id^="seccode_"] img {
	max-width: 100%;
	height: auto;
	margin-top: 7px;
}

body.pg_register #layer_reginfo_b,
body.pg_logging .rfm.bw0 {
	box-sizing: border-box;
}

body.pg_register #layer_reginfo_b {
	padding: 0 24px 22px;
}

body.pg_register #layer_reginfo_b .rfm:last-child,
body.pg_logging .rfm:last-child {
	border-bottom: 0 !important;
}

body.pg_register #layer_reginfo_b .rfm tr,
body.pg_logging .rfm.bw0 tr {
	align-items: center;
}

body.pg_register #layer_reginfo_b .pn,
body.pg_logging .rfm .pn,
#fwin_login .rfm .pn {
	min-width: 104px;
	min-height: 42px;
	margin: 0 !important;
	padding: 0 22px;
	border: 0;
	border-radius: 4px;
	background: #cf2933;
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	line-height: 42px;
	box-shadow: none;
}

body.pg_register #layer_reginfo_b .pn:hover,
body.pg_logging .rfm .pn:hover,
#fwin_login .rfm .pn:hover {
	background: #b5202b;
}

body.pg_register #layer_reginfo_b .pn strong,
body.pg_logging .rfm .pn strong,
#fwin_login .rfm .pn strong {
	color: #fff !important;
}

body.pg_logging .nfl {
	min-height: 0;
}

body.pg_logging #main_message > .bm > div {
	width: 100%;
	box-sizing: border-box;
}

/* Discuz floating login remains native; only its box model is normalized. */
#fwin_login.fwinmask {
	max-width: calc(100vw - 32px);
	box-sizing: border-box;
}

#fwin_login .fwin,
#fwin_login .m_c,
#fwin_content_login,
#fwin_content_login > div,
#fwin_content_login [id^="main_messaqge_"],
#fwin_content_login [id^="layer_login_"] {
	min-width: 0 !important;
	box-sizing: border-box;
}

#fwin_login .m_c {
	width: 540px;
	max-width: calc(100vw - 32px);
	padding: 0 !important;
	border: 0;
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 18px 50px rgba(15, 39, 64, .24);
	overflow: hidden;
}

#fwin_login .flb {
	display: flex;
	min-height: 50px;
	height: auto;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 0 18px;
	border-bottom: 1px solid #e4e8ed;
	background: #fff;
	line-height: 1.4;
	box-sizing: border-box;
}

#fwin_login .flb em,
#fwin_login .flb em a {
	font-size: 18px;
	font-weight: 700;
	color: #17253a;
}

#fwin_login .flbc {
	position: static !important;
	flex: 0 0 30px;
	width: 30px;
	height: 30px;
	margin: 0 !important;
	border-radius: 50%;
	background: #f1f4f7 !important;
	color: #475569;
	font-size: 0;
	line-height: 30px;
	text-align: center;
	text-indent: 0;
}

#fwin_login .flbc::before {
	content: "\00d7";
	font-size: 22px;
}

#fwin_login form .c {
	padding: 12px 18px 16px !important;
}

#fwin_login .rfm tr {
	display: grid;
	width: 100%;
	grid-template-columns: 112px minmax(0, 1fr) 76px;
	align-items: center;
	column-gap: 10px;
	box-sizing: border-box;
}

#fwin_login .rfm.bw0 tr {
	grid-template-columns: 112px minmax(0, 1fr);
}

#fwin_login .rfm.bw0 td:last-child {
	grid-column: 2;
}

@media (max-width: 700px) {
	body.pg_register.usz-global-chrome #main-content.usz-native-main #ct.wp,
	body.pg_logging.usz-global-chrome #main-content.usz-native-main #ct.wp {
		width: calc(100% - 24px) !important;
		max-width: 520px !important;
		margin: 16px auto 32px !important;
	}

	body.pg_register #main_hnav,
	body.pg_logging #main_message > .bm > .bm_h {
		min-height: 52px;
		gap: 10px;
		padding: 0 16px;
	}

	body.pg_register #main_hnav h3,
	body.pg_logging #main_message > .bm > .bm_h h3 {
		font-size: 18px;
	}

	body.pg_register #main_hnav .y,
	body.pg_logging #main_message > .bm > .bm_h .y {
		font-size: 14px;
		text-align: right;
	}

	body.pg_register #layer_reg,
	body.pg_logging #main_message > .bm > div > [id^="main_messaqge_"] {
		padding: 12px 16px 16px;
	}

	body.pg_register #layer_reginfo_b {
		padding: 0 16px 16px;
	}

	body.pg_register #reginfo_a > .rfm,
	body.pg_register #layer_reginfo_b > .rfm,
	body.pg_logging .rfm {
		padding: 9px 0 !important;
	}

	body.pg_register .rfm tr,
	body.pg_logging .rfm tr {
		grid-template-columns: minmax(0, 1fr);
		align-items: stretch;
		row-gap: 6px;
	}

	body.pg_register .rfm th,
	body.pg_logging .rfm th {
		grid-column: 1;
		padding-top: 0 !important;
		font-size: 15px;
		text-align: left;
	}

	body.pg_register .rfm td,
	body.pg_logging .rfm td {
		grid-column: 1;
	}

	body.pg_register .rfm td.tipcol,
	body.pg_logging .rfm td.tipcol {
		padding-top: 0 !important;
		font-size: 13px;
		text-align: left !important;
	}

	body.pg_register .rfm .px,
	body.pg_register .rfm select,
	body.pg_logging .rfm .px,
	body.pg_logging .rfm select {
		min-height: 44px;
	}

	body.pg_register #layer_reginfo_b .rfm th,
	body.pg_logging .rfm.bw0 th {
		display: none;
	}

	body.pg_register #layer_reginfo_b .rfm td,
	body.pg_logging .rfm.bw0 td {
		grid-column: 1;
	}

	body.pg_register #layer_reginfo_b .pn,
	body.pg_logging .rfm .pn {
		width: 100%;
		min-height: 46px;
		font-size: 16px;
		line-height: 46px;
	}

	#fwin_login.fwinmask {
		position: fixed !important;
		top: 50% !important;
		left: 50% !important;
		width: calc(100vw - 32px) !important;
		max-width: 380px !important;
		max-height: calc(100dvh - 32px) !important;
		margin: 0 !important;
		transform: translate(-50%, -50%);
		overflow-x: hidden;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	#fwin_login .fwin,
	#fwin_login .m_c {
		width: 100% !important;
		max-width: 100% !important;
		table-layout: fixed;
	}

	#fwin_login .t_l,
	#fwin_login .t_c,
	#fwin_login .t_r,
	#fwin_login .m_l,
	#fwin_login .m_r,
	#fwin_login .b_l,
	#fwin_login .b_c,
	#fwin_login .b_r {
		display: none !important;
	}

	#fwin_login .flb {
		min-height: 48px;
		padding: 0 14px;
	}

	#fwin_login .flb em,
	#fwin_login .flb em a {
		font-size: 17px;
	}

	#fwin_login form .c {
		padding: 8px 14px 14px !important;
	}

	#fwin_login .rfm {
		padding: 7px 0 !important;
	}

	#fwin_login .rfm tr,
	#fwin_login .rfm.bw0 tr {
		grid-template-columns: minmax(0, 1fr);
		align-items: stretch;
		row-gap: 5px;
	}

	#fwin_login .rfm th,
	#fwin_login .rfm td,
	#fwin_login .rfm.bw0 td:last-child {
		grid-column: 1;
		text-align: left !important;
	}

	#fwin_login .rfm th {
		font-size: 14px;
	}

	#fwin_login .rfm td.tipcol {
		grid-column: 1 !important;
		font-size: 13px;
		text-align: right !important;
	}

	#fwin_login .rfm .px,
	#fwin_login .rfm select {
		min-height: 42px;
		font-size: 16px;
	}

	#fwin_login .rfm.bw0 th {
		display: none;
	}

	#fwin_login .rfm .pn {
		width: 100%;
		min-height: 44px;
		font-size: 16px;
		line-height: 44px;
	}
}
