/* Register choice page — 婚恋主题 · 分栏 + 双通道卡片（与旧版 hero/横条/双格完全不同） */

.inner .body.register-shell{
	max-width:1120px !important;
	width:calc(100% - 32px) !important;
	margin-left:auto !important;
	margin-right:auto !important;
	padding:0 !important;
	overflow:hidden !important;
	border-radius:24px !important;
}

.reg-matchpage{
	padding:0;
	text-align:left;
}

/* 顶部「喜帖」式标题区 */
.reg-matchpage__masthead{
	display:flex;
	align-items:flex-start;
	gap:20px;
	padding:32px 32px 28px;
	background:linear-gradient(165deg, rgba(255,248,252,0.95) 0%, rgba(255,240,245,0.92) 45%, rgba(255,252,248,0.9) 100%);
	border-bottom:1px solid rgba(255,185,204,0.45);
	position:relative;
	overflow:hidden;
}
.reg-matchpage__masthead::after{
	content:"";
	position:absolute;
	right:-80px;
	top:-60px;
	width:240px;
	height:240px;
	border-radius:50%;
	background:radial-gradient(circle, rgba(255,182,193,0.35), transparent 65%);
	pointer-events:none;
}
.reg-matchpage__seal{
	flex:0 0 auto;
	width:64px;
	height:64px;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:28px;
	font-weight:900;
	color:#c13f75;
	background:rgba(255,255,255,0.75);
	border:2px solid rgba(255,111,145,0.45);
	box-shadow:0 12px 40px rgba(193,63,117,0.15);
	line-height:1;
}
.reg-matchpage__masthead-text{
	position:relative;
	min-width:0;
}
.reg-matchpage__title{
	margin:0;
	font-size:clamp(22px,2.8vw,30px);
	font-weight:900;
	color:#5c1f3d;
	letter-spacing:-0.02em;
	line-height:1.2;
}
.reg-matchpage__lead{
	margin:12px 0 0;
	font-size:14px;
	line-height:1.75;
	font-weight:600;
	color:rgba(84,32,54,0.82);
	max-width:52em;
}

/* 主网格：左栏说明 + 右栏入口 */
.reg-matchpage__grid{
	display:grid;
	grid-template-columns:minmax(240px,320px) 1fr;
	gap:0;
	align-items:stretch;
	min-height:420px;
}
.reg-matchpage__side{
	padding:26px 24px 32px;
	background:linear-gradient(180deg, rgba(255,255,255,0.42) 0%, rgba(255,245,248,0.55) 100%);
	border-right:1px solid rgba(255,185,204,0.35);
	display:flex;
	flex-direction:column;
	gap:22px;
}
.reg-matchpage__side-card{
	background:rgba(255,255,255,0.65);
	border:1px solid rgba(255,190,208,0.5);
	border-radius:18px;
	padding:18px 16px 16px;
	box-shadow:0 14px 40px rgba(193,70,120,0.08);
}
.reg-matchpage__side-title{
	margin:0 0 12px;
	font-size:15px;
	font-weight:900;
	color:#7b264a;
	letter-spacing:0.06em;
}
.reg-matchpage__values{
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	flex-direction:column;
	gap:12px;
}
.reg-matchpage__values li{
	display:flex;
	align-items:flex-start;
	gap:10px;
	font-size:13px;
	font-weight:800;
	color:rgba(84,32,54,0.88);
	line-height:1.45;
}
.reg-matchpage__values i{
	margin-top:2px;
	color:#d64f84;
	font-size:14px;
	width:1.2em;
	flex:0 0 auto;
}
.reg-matchpage__note{
	margin:14px 0 0;
	padding-top:12px;
	border-top:1px dashed rgba(215,109,152,0.4);
	font-size:12px;
	font-weight:700;
	color:rgba(123,38,74,0.68);
	line-height:1.5;
}

/* 左侧竖向步骤（与旧版横向三步条区分） */
.reg-matchpage__steps{
	display:flex;
	flex-direction:column;
	gap:0;
	padding-left:4px;
}
.reg-matchpage__step{
	display:flex;
	align-items:center;
	gap:12px;
	padding:10px 0;
}
.reg-matchpage__step-no{
	width:36px;
	height:36px;
	border-radius:12px;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:11px;
	font-weight:900;
	color:#9a355f;
	background:rgba(255,255,255,0.7);
	border:1px solid rgba(255,185,204,0.5);
	flex:0 0 auto;
}
.reg-matchpage__step-txt{
	font-size:13px;
	font-weight:900;
	color:rgba(84,32,54,0.75);
}
.reg-matchpage__step--on .reg-matchpage__step-no{
	color:#fff;
	background:linear-gradient(135deg,#ff6f91 0%,#ff9671 100%);
	border-color:transparent;
	box-shadow:0 10px 28px rgba(255,111,145,0.28);
}
.reg-matchpage__step--on .reg-matchpage__step-txt{
	color:#7b264a;
}
.reg-matchpage__rail{
	height:14px;
	margin:-2px 0 -2px 17px;
	width:2px;
	background:linear-gradient(180deg, rgba(255,111,145,0.45), rgba(255,185,204,0.35));
	border-radius:2px;
}

/* 右侧入口区 */
.reg-matchpage__gate{
	padding:26px 28px 32px;
	background:rgba(255,255,255,0.38);
	backdrop-filter:blur(14px);
	-webkit-backdrop-filter:blur(14px);
	display:flex;
	flex-direction:column;
	gap:16px;
	align-items:stretch;
}
.reg-matchpage__gate-label{
	margin:0 0 4px;
	font-size:12px;
	font-weight:900;
	letter-spacing:0.16em;
	text-transform:uppercase;
	color:rgba(193,63,117,0.85);
}

/* 双通道：主卡片全宽 + 次卡片错位缩进 */
.reg-path{
	position:relative;
	display:flex;
	flex-direction:row;
	align-items:center;
	gap:18px;
	padding:20px 20px 20px 18px;
	border-radius:20px;
	text-decoration:none;
	overflow:hidden;
	border:1px solid rgba(255,190,208,0.55);
	box-shadow:0 18px 50px rgba(193,70,120,0.12);
	transition:transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}
.reg-path--member{
	background:linear-gradient(135deg, rgba(255,255,255,0.92) 0%, rgba(255,248,252,0.95) 50%, rgba(255,240,245,0.9) 100%);
	margin-top:4px;
}
.reg-path--org{
	background:linear-gradient(135deg, rgba(255,255,255,0.88) 0%, rgba(252,250,255,0.92) 55%, rgba(255,248,252,0.9) 100%);
	margin-left:clamp(0px, 6vw, 48px);
	margin-top:8px;
	transform:rotate(-0.4deg);
}
.reg-path--org:hover{
	transform:rotate(0deg) translateY(-3px);
}
.reg-path:hover{
	border-color:rgba(255,111,145,0.55);
	box-shadow:0 24px 64px rgba(193,70,120,0.16);
}
.reg-path--member:hover{
	transform:translateY(-3px);
}
.reg-path__ribbon{
	position:absolute;
	top:14px;
	right:-36px;
	transform:rotate(38deg);
	transform-origin:center;
	padding:6px 40px;
	font-size:11px;
	font-weight:900;
	letter-spacing:0.08em;
	color:#fff;
	background:linear-gradient(90deg,#ff6f91,#ff9671);
	box-shadow:0 6px 20px rgba(255,111,145,0.35);
	pointer-events:none;
}
.reg-path__ribbon--muted{
	background:linear-gradient(90deg,#b87aa8,#d370c5);
	box-shadow:0 6px 20px rgba(179,122,168,0.28);
}
.reg-path__iconwrap{
	width:56px;
	height:56px;
	border-radius:18px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(255,111,145,0.14);
	color:#c13f75;
	font-size:22px;
	flex:0 0 auto;
	box-shadow:0 12px 32px rgba(255,111,145,0.12);
}
.reg-path__iconwrap--alt{
	background:rgba(179,122,168,0.16);
	color:#8b4a8a;
}
.reg-path__content{
	display:flex;
	flex-direction:column;
	gap:6px;
	align-items:flex-start;
	min-width:0;
	flex:1;
}
.reg-path__eyebrow{
	font-size:11px;
	font-weight:900;
	letter-spacing:0.12em;
	text-transform:uppercase;
	color:rgba(193,63,117,0.75);
}
.reg-path__name{
	font-size:19px;
	font-weight:900;
	color:#5c1f3d;
	letter-spacing:-0.02em;
}
.reg-path__desc{
	font-size:13px;
	font-weight:600;
	line-height:1.55;
	color:rgba(84,32,54,0.72);
}
.reg-path__action{
	margin-top:8px;
	font-size:14px;
	font-weight:900;
	color:#c13f75;
	display:inline-flex;
	align-items:center;
	gap:8px;
}
.reg-path__action i{
	font-size:15px;
	transition:transform 0.2s ease;
}
.reg-path:hover .reg-path__action i{
	transform:translateX(4px);
}

/* 底部登录行 */
.reg-matchpage__loginline{
	margin:0;
	padding:18px 24px 22px;
	text-align:center;
	font-size:15px;
	font-weight:800;
	color:rgba(84,32,54,0.75);
	background:rgba(255,255,255,0.25);
	border-top:1px solid rgba(255,185,204,0.35);
}
.reg-matchpage__loginlink{
	color:#c13f75 !important;
	font-weight:900 !important;
	text-decoration:none;
}
.reg-matchpage__loginlink:hover{
	text-decoration:underline;
}

@media (max-width: 900px){
	.inner .body.register-shell{
		width:100% !important;
		max-width:min(560px,100%) !important;
	}
	.reg-matchpage__grid{
		grid-template-columns:1fr;
		min-height:0;
	}
	.reg-matchpage__side{
		border-right:none;
		border-bottom:1px solid rgba(255,185,204,0.35);
		padding:22px 20px 20px;
	}
	.reg-matchpage__steps{
		flex-direction:row;
		flex-wrap:wrap;
		gap:8px 16px;
		padding-left:0;
	}
	.reg-matchpage__rail{
		display:none;
	}
	.reg-path--org{
		margin-left:0;
		transform:none;
	}
	.reg-path{
		flex-direction:column;
		align-items:flex-start;
		gap:14px;
	}
	.reg-path__iconwrap{
		width:48px;
		height:48px;
		font-size:20px;
	}
	.reg-matchpage__masthead{
		flex-direction:column;
		align-items:center;
		text-align:center;
		padding:26px 20px 22px;
	}
	.reg-matchpage__masthead-text{
		text-align:center;
	}
}
