.person-page { padding-bottom: 40px; }
.person-hero {
	padding: 32px 36px;
	margin-bottom: 20px;
	border-radius: 16px;
	background: linear-gradient(135deg, #eef2ff 0%, #f7f8fc 58%, #fff 100%);
	border: 1px solid #e6ebf5;
}
.person-hero-kicker {
	display: inline-block;
	margin-bottom: 10px;
	padding: 3px 10px;
	border-radius: 999px;
	background: rgba(78,110,242,.12);
	color: #4e6ef2;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 1px;
}
.person-hero h1 { margin: 0 0 10px; color: #1a1a1a; font-size: 28px; line-height: 1.35; }
.person-hero p { margin: 0; max-width: 760px; color: #646973; font-size: 15px; line-height: 1.8; }
.person-hero-points { margin: 16px 0 0; padding: 0; color: #4e5969; font-size: 14px; line-height: 1.9; }
.person-hero-points li { list-style: disc; margin-left: 1.2em; }
.person-report { margin-top: 16px; color: #4e5969; font-size: 14px; }
.person-report strong { margin-right: 12px; color: #1a1a1a; }
.person-report span { margin-right: 16px; }
.person-search {
	background: #fff;
	border-radius: 12px;
	padding: 20px 24px 24px;
	box-shadow: 0 0 8px rgb(0 0 0 / 6%);
	margin-bottom: 20px;
}
.person-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.person-tabs a {
	display: inline-flex; align-items: center; height: 32px; padding: 0 14px;
	border-radius: 16px; border: 1px solid #eef1f5; background: #fff; color: #4e5969; font-size: 13px;
}
.person-tabs a.on, .person-tabs a:hover { border-color: #4e6ef2; color: #4e6ef2; background: #f1f4fe; }
.person-search-bar { display: flex; max-width: 640px; height: 48px; border: 1px solid #dbe3f2; border-radius: 10px; overflow: hidden; background: #fff; }
.person-search-bar input { flex: 1; min-width: 0; height: 48px; border: 0; padding: 0 16px; font-size: 15px; }
.person-search-bar button { width: 128px; border: 0; background: #4e6ef2; color: #fff; font-size: 15px; font-weight: 600; cursor: pointer; }
.person-search-bar button:hover { background: #3d5de0; color: #fff; }
.person-guide, .person-empty, .person-result-bar {
	background: #fff; border-radius: 12px; padding: 20px 24px; color: #646973; font-size: 14px;
}
.person-empty { border: 1px solid #ffe2c4; background: #fff8f0; }
.person-empty strong { display: block; margin-bottom: 8px; color: #d9480f; font-size: 18px; }
.person-empty p { margin: 0; line-height: 1.8; }
.person-empty-contact { margin-top: 10px !important; color: #4e5969; }
.person-result-bar { margin-bottom: 12px; }
.person-result-bar strong { color: #4e6ef2; }
.person-list { display: flex; flex-direction: column; gap: 12px; }
.person-card {
	display: flex; gap: 16px; background: #fff; border-radius: 12px; padding: 18px 20px;
	box-shadow: 0 0 8px rgb(0 0 0 / 6%);
}
.person-avatar { width: 72px; height: 72px; border-radius: 10px; overflow: hidden; background: #eef1f5; flex: none; }
.person-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.person-main { flex: 1; min-width: 0; }
.person-name { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
.person-name strong { font-size: 18px; color: #1a1a1a; }
.person-role {
	display: inline-flex; height: 22px; padding: 0 8px; border-radius: 6px;
	background: #f1f4fe; color: #4e6ef2; font-size: 12px; font-style: normal; line-height: 22px;
}
.person-role.role-2 { background: #fff6e8; color: #c47b16; }
.person-role.role-3 { background: #ecf9f1; color: #22a35a; }
.person-main ul { margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 24px; }
.person-main li { list-style: none; color: #1a1a1a; font-size: 13px; line-height: 22px; }
.person-main li span { color: #8590a6; margin-right: 8px; }
