/* 智能人才分析 */
.lx-ta {
	--ta-bg: #060a14;
	--ta-panel: rgba(8, 18, 36, 0.92);
	--ta-border: rgba(62, 203, 255, 0.28);
	--ta-cyan: #3ecbff;
	--ta-mag: #ff00aa;
	--ta-text: #e8f4ff;
	--ta-muted: #8aa4bc;
	--ta-ok: #3dcea0;
	--ta-warn: #f0c040;
	--ta-bad: #ff5a7a;
	color: var(--ta-text);
	font-family: "Segoe UI", "Microsoft YaHei", system-ui, sans-serif;
	max-width: 1180px;
	margin: 0 auto;
	padding: 12px 8px 48px;
}
.lx-ta-hero {
	padding: 28px 24px;
	margin-bottom: 18px;
	border: 1px solid var(--ta-border);
	background:
		radial-gradient(ellipse 70% 80% at 10% 0%, rgba(62, 203, 255, 0.14), transparent 55%),
		radial-gradient(ellipse 50% 60% at 90% 20%, rgba(255, 0, 170, 0.08), transparent 50%),
		linear-gradient(180deg, #0a1424 0%, #060a14 100%);
}
.lx-ta-hero__badge {
	font-size: 11px;
	letter-spacing: 0.16em;
	color: var(--ta-cyan);
	font-weight: 800;
	margin-bottom: 8px;
}
.lx-ta-hero__title {
	margin: 0 0 10px;
	font-size: 22px;
	font-weight: 800;
	color: #fff;
}
.lx-ta-hero__desc {
	margin: 0 0 14px;
	max-width: 56em;
	line-height: 1.6;
	color: #c5d9ee;
	font-size: 14px;
}
.lx-ta-hero__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.lx-ta-hero__tags span {
	padding: 4px 10px;
	border: 1px solid rgba(62, 203, 255, 0.3);
	font-size: 12px;
	font-weight: 700;
	color: #bfe9ff;
}
.lx-ta-layout {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
	margin-bottom: 18px;
}
@media (max-width: 900px) {
	.lx-ta-layout { grid-template-columns: 1fr; }
}
.lx-ta-panel,
.lx-ta-card,
.lx-ta-chart-card {
	border: 1px solid var(--ta-border);
	background: var(--ta-panel);
	padding: 16px 18px;
}
.lx-ta-panel h2,
.lx-ta-card h3,
.lx-ta-chart-card h3 {
	margin: 0 0 10px;
	font-size: 16px;
	color: var(--ta-cyan);
}
.lx-ta-muted {
	color: var(--ta-muted);
	font-size: 13px;
	line-height: 1.5;
}
.lx-ta-presets {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	margin: 10px 0 14px;
}
@media (max-width: 600px) {
	.lx-ta-presets { grid-template-columns: 1fr; }
}
.lx-ta-check {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	padding: 8px 10px;
	border: 1px solid rgba(62, 203, 255, 0.18);
	background: rgba(0, 12, 24, 0.45);
	font-size: 13px;
	cursor: pointer;
	color: #d7eafc;
}
.lx-ta-check input { margin-top: 2px; }
.lx-ta-label {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin-bottom: 12px;
	font-size: 12px;
	font-weight: 700;
	color: #9ec9e8;
}
.lx-ta-input,
.lx-ta-textarea {
	width: 100%;
	padding: 9px 11px;
	border: 1px solid rgba(62, 203, 255, 0.28);
	background: rgba(0, 10, 22, 0.85);
	color: #fff;
	font: inherit;
	font-size: 14px;
	font-weight: 500;
}
.lx-ta-textarea--lg { min-height: 220px; line-height: 1.5; }
.lx-ta-actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin-top: 8px;
}
.lx-ta-btn {
	padding: 8px 16px;
	border: 1px solid rgba(62, 203, 255, 0.35);
	background: rgba(0, 24, 48, 0.7);
	color: #d7eafc;
	font: inherit;
	font-weight: 700;
	font-size: 13px;
	cursor: pointer;
}
.lx-ta-btn:hover { border-color: var(--ta-cyan); color: #fff; }
.lx-ta-btn--primary {
	background: linear-gradient(90deg, #1a8fd4, #3ecbff);
	color: #041018;
	border-color: transparent;
}
.lx-ta-btn--lg { padding: 11px 22px; font-size: 14px; }
.lx-ta-btn:disabled { opacity: 0.5; cursor: not-allowed; }
.lx-ta-btn.is-loading { pointer-events: none; opacity: 0.75; }

.lx-ta-result { margin-top: 8px; }
.lx-ta-result[hidden] { display: none !important; }
.lx-ta-result__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 12px;
}
.lx-ta-result__head h2 {
	margin: 0;
	font-size: 20px;
	color: #fff;
}
.lx-ta-verdict {
	padding: 8px 14px;
	font-weight: 800;
	font-size: 13px;
	border: 1px solid rgba(62, 203, 255, 0.35);
}
.lx-ta-verdict.is-hire {
	color: #041018;
	background: linear-gradient(90deg, #2ecc9a, #3ecbff);
	border-color: transparent;
}
.lx-ta-verdict.is-cautious {
	color: #1a1400;
	background: linear-gradient(90deg, #f0c040, #ff9f43);
	border-color: transparent;
}
.lx-ta-verdict.is-reject {
	color: #fff;
	background: linear-gradient(90deg, #c0392b, #ff5a7a);
	border-color: transparent;
}
.lx-ta-summary {
	padding: 14px 16px;
	margin-bottom: 14px;
	border: 1px solid rgba(62, 203, 255, 0.22);
	background: rgba(0, 20, 40, 0.45);
	line-height: 1.65;
	font-size: 14px;
	color: #d5e8fa;
}
.lx-ta-charts {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin-bottom: 14px;
}
@media (max-width: 800px) {
	.lx-ta-charts { grid-template-columns: 1fr; }
}
.lx-ta-chart-card canvas {
	display: block;
	width: 100% !important;
	max-width: 100%;
	height: auto !important;
}
.lx-ta-grid2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin-bottom: 12px;
}
@media (max-width: 800px) {
	.lx-ta-grid2 { grid-template-columns: 1fr; }
}
.lx-ta-card--focus { border-color: rgba(62, 203, 255, 0.45); }
.lx-ta-card--pass { border-color: rgba(61, 206, 160, 0.45); }
.lx-ta-card--fail { border-color: rgba(255, 90, 122, 0.45); }
.lx-ta-qlist,
.lx-ta-list {
	margin: 0;
	padding-left: 1.2em;
	line-height: 1.55;
	font-size: 13px;
	color: #d0e4f6;
}
.lx-ta-qlist li,
.lx-ta-list li {
	margin-bottom: 8px;
}
.lx-ta-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.lx-ta-tag {
	padding: 5px 10px;
	font-size: 12px;
	font-weight: 700;
	border: 1px solid rgba(62, 203, 255, 0.3);
}
.lx-ta-tag.is-good {
	color: #9ef0d0;
	border-color: rgba(61, 206, 160, 0.45);
	background: rgba(20, 60, 48, 0.35);
}
.lx-ta-tag.is-risk {
	color: #ffb3c0;
	border-color: rgba(255, 90, 122, 0.45);
	background: rgba(60, 16, 28, 0.35);
}

.lx-ta-loading {
	position: fixed;
	inset: 0;
	z-index: 100200;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 14px;
	background: rgba(4, 8, 16, 0.72);
	backdrop-filter: blur(3px);
	color: #e8f4ff;
	font-weight: 700;
}
.lx-ta-loading[hidden] { display: none !important; }
.lx-ta-loading__spin {
	width: 44px;
	height: 44px;
	border: 3px solid rgba(62, 203, 255, 0.2);
	border-top-color: var(--ta-cyan);
	border-radius: 50%;
	animation: lx-ta-spin 0.75s linear infinite;
}
@keyframes lx-ta-spin {
	to { transform: rotate(360deg); }
}

.lx-ta-toast {
	position: fixed;
	right: 18px;
	bottom: 18px;
	z-index: 100300;
	max-width: 360px;
	padding: 12px 16px;
	font-size: 13px;
	line-height: 1.45;
	color: #fff;
	background: linear-gradient(90deg, rgba(0, 40, 50, 0.95), rgba(0, 20, 30, 0.95));
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
	border: 1px solid rgba(62, 203, 255, 0.35);
}
.lx-ta-toast.is-err {
	background: linear-gradient(90deg, rgba(50, 0, 20, 0.95), rgba(30, 0, 10, 0.95));
	border-color: rgba(255, 90, 122, 0.45);
}

.lx-ta-modal {
	position: fixed;
	inset: 0;
	z-index: 100250;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	background: rgba(4, 8, 16, 0.78);
}
.lx-ta-modal[hidden] { display: none !important; }
.lx-ta-modal__panel {
	width: min(420px, 100%);
	padding: 18px;
	border: 1px solid var(--ta-border);
	background: #0a1424;
}
.lx-ta-modal__panel h3 {
	margin: 0 0 10px;
	color: var(--ta-cyan);
}
.lx-ta-modal__foot {
	display: flex;
	justify-content: flex-end;
	gap: 8px;
	margin-top: 14px;
}
.lx-ta-modal__foot a.lx-ta-btn {
	text-decoration: none;
	display: inline-flex;
	align-items: center;
}

/* 案例库 */
.lx-ta-cases {
	margin-bottom: 20px;
	padding: 16px 18px 12px;
	border: 1px solid var(--ta-border);
	background: var(--ta-panel);
}
.lx-ta-cases__head h2 {
	margin: 0 0 6px;
	font-size: 18px;
	color: #fff;
}
.lx-ta-case-filters {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 12px 0;
}
.lx-ta-case-filters__primary {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}
.lx-ta-case-filters__tags {
	border: 1px solid rgba(62, 203, 255, 0.18);
	background: rgba(0, 12, 28, 0.35);
	border-radius: 10px;
	overflow: hidden;
}
.lx-ta-case-filters__toggle {
	appearance: none;
	width: 100%;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 14px;
	border: 0;
	background: linear-gradient(90deg, rgba(62, 203, 255, 0.08), transparent 70%);
	color: #d6eefc;
	font: inherit;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	text-align: left;
}
.lx-ta-case-filters__toggle:hover {
	background: linear-gradient(90deg, rgba(62, 203, 255, 0.14), transparent 75%);
}
.lx-ta-case-filters__toggle-label {
	flex: 1 1 auto;
	min-width: 0;
}
.lx-ta-case-filters__toggle-meta {
	flex: 0 0 auto;
	padding: 2px 8px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	color: var(--ta-cyan);
	background: rgba(62, 203, 255, 0.12);
	border: 1px solid rgba(62, 203, 255, 0.28);
}
.lx-ta-case-filters__toggle-chev {
	flex: 0 0 auto;
	font-size: 12px;
	color: #9ec9e8;
	padding: 2px 8px;
	border-radius: 6px;
	border: 1px solid rgba(62, 203, 255, 0.22);
	background: rgba(0, 16, 32, 0.45);
}
.lx-ta-case-filters__tags.is-open .lx-ta-case-filters__toggle-chev {
	border-color: rgba(255, 0, 170, 0.35);
	color: #ff9ad4;
}
.lx-ta-case-filters__panel {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 4px 12px 12px;
	border-top: 1px solid rgba(62, 203, 255, 0.12);
	animation: lx-ta-filters-in 0.22s ease-out;
}
.lx-ta-case-filters__panel[hidden] {
	display: none !important;
}
@keyframes lx-ta-filters-in {
	from {
		opacity: 0;
		transform: translateY(-4px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
.lx-ta-case-filters__active-chip {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 0 12px 10px;
}
.lx-ta-case-filters__clear {
	appearance: none;
	width: 28px;
	height: 28px;
	border-radius: 8px;
	border: 1px solid rgba(62, 203, 255, 0.28);
	background: rgba(0, 16, 32, 0.55);
	color: #9ec9e8;
	font-size: 16px;
	line-height: 1;
	cursor: pointer;
	padding: 0;
}
.lx-ta-case-filters__clear:hover {
	border-color: #ff00aa;
	color: #ff9ad4;
}
.lx-ta-case-filter {
	padding: 5px 12px;
	border: 1px solid rgba(62, 203, 255, 0.28);
	background: rgba(0, 16, 32, 0.55);
	color: #c5e0f6;
	font: inherit;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
	border-radius: 6px;
}
.lx-ta-case-filter.is-active,
.lx-ta-case-filter:hover {
	border-color: var(--ta-cyan);
	color: #041018;
	background: linear-gradient(90deg, #1a8fd4, #3ecbff);
}
.lx-ta-case-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
}
@media (max-width: 1000px) {
	.lx-ta-case-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
	.lx-ta-case-grid { grid-template-columns: 1fr; }
}
.lx-ta-case-card {
	padding: 14px;
	border: 1px solid rgba(62, 203, 255, 0.22);
	background: rgba(0, 12, 28, 0.55);
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.lx-ta-case-card__top {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 8px;
}
.lx-ta-case-card__tag {
	font-size: 11px;
	font-weight: 800;
	padding: 2px 8px;
	border: 1px solid rgba(62, 203, 255, 0.35);
	color: #9ef0ff;
}
.lx-ta-case-card__verdict {
	font-size: 11px;
	font-weight: 800;
	padding: 2px 8px;
}
.lx-ta-case-card__verdict.is-hire {
	color: #041018;
	background: #3dcea0;
}
.lx-ta-case-card__verdict.is-cautious {
	color: #1a1400;
	background: #f0c040;
}
.lx-ta-case-card__verdict.is-reject {
	color: #fff;
	background: #ff5a7a;
}
.lx-ta-case-card__title {
	margin: 4px 0 0;
	font-size: 16px;
	color: #fff;
}
.lx-ta-case-card__role {
	margin: 0;
	font-size: 13px;
	color: #9ec9e8;
	font-weight: 600;
}
.lx-ta-case-card__purpose {
	margin: 0;
	font-size: 12px;
	line-height: 1.45;
	color: var(--ta-muted);
	flex: 1;
}
.lx-ta-case-card__scores {
	display: flex;
	gap: 14px;
	font-size: 12px;
	color: #b8d4ea;
}
.lx-ta-case-card__scores b {
	color: var(--ta-cyan);
	font-size: 16px;
}
.lx-ta-case-card__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 6px;
}
.lx-ta-btn--sm {
	padding: 5px 10px;
	font-size: 12px;
}
.lx-ta-case-pager {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-top: 14px;
	flex-wrap: wrap;
}

/* Tabs */
.lx-ta-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 16px;
	padding: 6px;
	border: 1px solid var(--ta-border);
	background: rgba(8, 18, 36, 0.85);
	border-radius: 10px;
}
.lx-ta-tab {
	appearance: none;
	border: 1px solid transparent;
	background: transparent;
	color: var(--ta-muted);
	font-size: 13px;
	font-weight: 700;
	padding: 10px 14px;
	border-radius: 8px;
	cursor: pointer;
	transition: 0.15s ease;
}
.lx-ta-tab:hover {
	color: var(--ta-text);
	border-color: rgba(62, 203, 255, 0.25);
}
.lx-ta-tab.is-active {
	color: #061018;
	background: linear-gradient(135deg, #3ecbff, #1a8fd4);
	border-color: transparent;
	box-shadow: 0 0 18px rgba(62, 203, 255, 0.35);
}
.lx-ta-tab-panel[hidden] {
	display: none !important;
}
.lx-ta-layout--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 980px) {
	.lx-ta-layout--3 {
		grid-template-columns: 1fr;
	}
}
.lx-ta-panel--hint {
	opacity: 0.95;
}
.lx-ta-table-wrap {
	overflow-x: auto;
	border: 1px solid var(--ta-border);
	border-radius: 8px;
	margin-top: 8px;
}
.lx-ta-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 13px;
	min-width: 640px;
}
.lx-ta-table th,
.lx-ta-table td {
	border-bottom: 1px solid rgba(62, 203, 255, 0.12);
	padding: 10px 12px;
	text-align: left;
	vertical-align: top;
}
.lx-ta-table th {
	background: rgba(62, 203, 255, 0.08);
	color: var(--ta-cyan);
	font-weight: 700;
	white-space: nowrap;
}
.lx-ta-table tr:last-child td {
	border-bottom: none;
}
.lx-ta-table__criteria {
	color: #b8d4ea;
	line-height: 1.45;
	max-width: 280px;
}
.lx-ta-input--score {
	width: 88px;
	padding: 6px 8px;
	font-size: 13px;
}
#lx-ta-rt-trend-card canvas {
	width: 100% !important;
	max-width: 100%;
}

/* body scroll lock when modal open */
body.lx-ta-modal-open {
	overflow: hidden;
}

/* ───── 案例酷炫加载 ───── */
.lx-ta-case-loader {
	position: fixed;
	inset: 0;
	z-index: 100280;
	display: flex;
	align-items: center;
	justify-content: center;
	background:
		radial-gradient(ellipse 60% 50% at 50% 40%, rgba(62, 203, 255, 0.12), transparent 60%),
		radial-gradient(ellipse 40% 40% at 70% 70%, rgba(255, 0, 170, 0.1), transparent 55%),
		rgba(3, 6, 14, 0.88);
	backdrop-filter: blur(8px);
	overflow: hidden;
}
.lx-ta-case-loader[hidden] {
	display: none !important;
}
.lx-ta-case-loader__core {
	position: relative;
	width: min(420px, 92vw);
	padding: 36px 28px 28px;
	text-align: center;
	border: 1px solid rgba(62, 203, 255, 0.35);
	background: linear-gradient(165deg, rgba(10, 24, 44, 0.95), rgba(6, 10, 20, 0.98));
	box-shadow:
		0 0 40px rgba(62, 203, 255, 0.15),
		inset 0 0 60px rgba(62, 203, 255, 0.04);
	animation: lx-ta-loader-in 0.45s ease-out;
}
@keyframes lx-ta-loader-in {
	from {
		opacity: 0;
		transform: scale(0.92) translateY(12px);
	}
	to {
		opacity: 1;
		transform: scale(1) translateY(0);
	}
}
.lx-ta-case-loader__rings {
	position: relative;
	width: 140px;
	height: 140px;
	margin: 0 auto 18px;
}
.lx-ta-case-loader__rings .r {
	position: absolute;
	inset: 0;
	border-radius: 50%;
	border: 2px solid transparent;
}
.lx-ta-case-loader__rings .r1 {
	border-top-color: #3ecbff;
	border-right-color: rgba(62, 203, 255, 0.25);
	animation: lx-ta-spin 1.1s linear infinite;
}
.lx-ta-case-loader__rings .r2 {
	inset: 12px;
	border-bottom-color: #ff00aa;
	border-left-color: rgba(255, 0, 170, 0.3);
	animation: lx-ta-spin 1.6s linear infinite reverse;
}
.lx-ta-case-loader__rings .r3 {
	inset: 26px;
	border: 1px dashed rgba(62, 203, 255, 0.45);
	animation: lx-ta-spin 3s linear infinite;
}
.lx-ta-case-loader__orb {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 28px;
	height: 28px;
	margin: -14px 0 0 -14px;
	border-radius: 50%;
	background: radial-gradient(circle at 30% 30%, #fff, #3ecbff 40%, #1a8fd4 70%, transparent);
	box-shadow: 0 0 24px #3ecbff, 0 0 48px rgba(255, 0, 170, 0.4);
	animation: lx-ta-orb-pulse 1.2s ease-in-out infinite;
}
@keyframes lx-ta-orb-pulse {
	0%,
	100% {
		transform: scale(1);
		opacity: 1;
	}
	50% {
		transform: scale(1.18);
		opacity: 0.85;
	}
}
.lx-ta-case-loader__scan {
	position: absolute;
	left: 8%;
	right: 8%;
	top: 0;
	height: 2px;
	background: linear-gradient(90deg, transparent, #3ecbff, #ff00aa, transparent);
	box-shadow: 0 0 12px #3ecbff;
	animation: lx-ta-scan 2s ease-in-out infinite;
	pointer-events: none;
}
@keyframes lx-ta-scan {
	0% {
		top: 8%;
		opacity: 0;
	}
	15% {
		opacity: 1;
	}
	85% {
		opacity: 1;
	}
	100% {
		top: 92%;
		opacity: 0;
	}
}
.lx-ta-case-loader__title {
	font-size: 11px;
	letter-spacing: 0.22em;
	font-weight: 800;
	color: var(--ta-cyan);
	margin-bottom: 8px;
}
.lx-ta-case-loader__name {
	font-size: 16px;
	font-weight: 800;
	color: #fff;
	margin-bottom: 10px;
	line-height: 1.35;
}
.lx-ta-case-loader__step {
	font-size: 13px;
	color: #9ec9e8;
	min-height: 1.4em;
	margin-bottom: 14px;
	transition: opacity 0.2s;
}
.lx-ta-case-loader__step.is-flash {
	animation: lx-ta-step-flash 0.45s ease;
}
@keyframes lx-ta-step-flash {
	0% {
		opacity: 0.35;
		transform: translateY(4px);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}
.lx-ta-case-loader__bar {
	height: 6px;
	border-radius: 4px;
	background: rgba(62, 203, 255, 0.12);
	overflow: hidden;
	border: 1px solid rgba(62, 203, 255, 0.25);
}
.lx-ta-case-loader__bar i {
	display: block;
	height: 100%;
	width: 0%;
	border-radius: 4px;
	background: linear-gradient(90deg, #1a8fd4, #3ecbff, #ff00aa);
	background-size: 200% 100%;
	animation: lx-ta-bar-flow 1.2s linear infinite;
	box-shadow: 0 0 12px rgba(62, 203, 255, 0.6);
	transition: width 0.12s linear;
}
@keyframes lx-ta-bar-flow {
	to {
		background-position: 200% 0;
	}
}
.lx-ta-case-loader__pct {
	margin-top: 8px;
	font-size: 12px;
	font-weight: 800;
	color: var(--ta-cyan);
	font-variant-numeric: tabular-nums;
}
.lx-ta-case-loader__grid {
	position: absolute;
	inset: 0;
	pointer-events: none;
	opacity: 0.08;
	background-image:
		linear-gradient(rgba(62, 203, 255, 0.5) 1px, transparent 1px),
		linear-gradient(90deg, rgba(62, 203, 255, 0.5) 1px, transparent 1px);
	background-size: 24px 24px;
	mask-image: radial-gradient(ellipse at center, #000 20%, transparent 75%);
}

/* ───── 案例结果弹窗 ───── */
.lx-ta-case-modal {
	position: fixed;
	inset: 0;
	z-index: 100270;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding: 24px 12px 32px;
	overflow-y: auto;
	background: rgba(2, 6, 14, 0.72);
	backdrop-filter: blur(6px);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.28s ease;
}
.lx-ta-case-modal[hidden] {
	display: none !important;
}
.lx-ta-case-modal.is-open {
	opacity: 1;
	pointer-events: auto;
}
.lx-ta-case-modal__panel {
	position: relative;
	width: min(1040px, 100%);
	margin: auto;
	border: 1px solid rgba(62, 203, 255, 0.4);
	background:
		radial-gradient(ellipse 80% 40% at 0% 0%, rgba(62, 203, 255, 0.12), transparent 50%),
		radial-gradient(ellipse 50% 30% at 100% 0%, rgba(255, 0, 170, 0.08), transparent 45%),
		linear-gradient(180deg, #0b1528 0%, #070d18 100%);
	box-shadow:
		0 24px 80px rgba(0, 0, 0, 0.55),
		0 0 0 1px rgba(62, 203, 255, 0.08),
		0 0 60px rgba(62, 203, 255, 0.12);
	transform: translateY(24px) scale(0.96);
	transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
	overflow: hidden;
}
.lx-ta-case-modal.is-open .lx-ta-case-modal__panel {
	transform: translateY(0) scale(1);
	animation: lx-ta-modal-shine 0.9s ease-out;
}
@keyframes lx-ta-modal-shine {
	0% {
		box-shadow:
			0 24px 80px rgba(0, 0, 0, 0.55),
			0 0 0 1px rgba(62, 203, 255, 0.08),
			0 0 0 rgba(62, 203, 255, 0);
	}
	40% {
		box-shadow:
			0 24px 80px rgba(0, 0, 0, 0.55),
			0 0 0 1px rgba(62, 203, 255, 0.35),
			0 0 80px rgba(62, 203, 255, 0.35);
	}
	100% {
		box-shadow:
			0 24px 80px rgba(0, 0, 0, 0.55),
			0 0 0 1px rgba(62, 203, 255, 0.08),
			0 0 60px rgba(62, 203, 255, 0.12);
	}
}
.lx-ta-case-modal__glow {
	position: absolute;
	left: -20%;
	top: -40%;
	width: 60%;
	height: 80%;
	background: radial-gradient(circle, rgba(62, 203, 255, 0.14), transparent 65%);
	pointer-events: none;
}
.lx-ta-case-modal__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	padding: 18px 20px 12px;
	border-bottom: 1px solid rgba(62, 203, 255, 0.18);
	position: sticky;
	top: 0;
	z-index: 2;
	background: linear-gradient(180deg, rgba(11, 21, 40, 0.98), rgba(11, 21, 40, 0.92));
	backdrop-filter: blur(8px);
}
.lx-ta-case-modal__badge {
	font-size: 10px;
	letter-spacing: 0.18em;
	font-weight: 800;
	color: var(--ta-cyan);
	margin-bottom: 4px;
}
.lx-ta-case-modal__title {
	margin: 0 0 4px;
	font-size: 20px;
	font-weight: 800;
	color: #fff;
}
.lx-ta-case-modal__sub {
	margin: 0;
	font-size: 12px;
	color: var(--ta-muted);
	line-height: 1.45;
	max-width: 48em;
}
.lx-ta-case-modal__close {
	appearance: none;
	border: 1px solid rgba(62, 203, 255, 0.35);
	background: rgba(0, 20, 40, 0.5);
	color: #e8f4ff;
	width: 36px;
	height: 36px;
	border-radius: 8px;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	flex-shrink: 0;
}
.lx-ta-case-modal__close:hover {
	border-color: #ff00aa;
	color: #ff9ad4;
	box-shadow: 0 0 16px rgba(255, 0, 170, 0.25);
}
.lx-ta-case-modal__body {
	padding: 12px 16px 8px;
	max-height: min(70vh, 820px);
	overflow-y: auto;
	overflow-x: hidden;
	scrollbar-width: thin;
	scrollbar-color: rgba(62, 203, 255, 0.55) rgba(6, 14, 28, 0.85);
}
.lx-ta-case-modal__body::-webkit-scrollbar {
	width: 8px;
}
.lx-ta-case-modal__body::-webkit-scrollbar-track {
	margin: 6px 0;
	background: linear-gradient(180deg, rgba(8, 18, 34, 0.9), rgba(4, 10, 20, 0.95));
	border-radius: 8px;
	border: 1px solid rgba(62, 203, 255, 0.12);
}
.lx-ta-case-modal__body::-webkit-scrollbar-thumb {
	border-radius: 8px;
	background: linear-gradient(180deg, #3ecbff 0%, #1a8fd4 55%, #ff00aa 100%);
	box-shadow: 0 0 10px rgba(62, 203, 255, 0.35);
	border: 2px solid rgba(6, 14, 28, 0.9);
	background-clip: padding-box;
}
.lx-ta-case-modal__body::-webkit-scrollbar-thumb:hover {
	background: linear-gradient(180deg, #7adeff 0%, #3ecbff 50%, #ff5ec4 100%);
	box-shadow: 0 0 14px rgba(62, 203, 255, 0.55);
}
.lx-ta-case-modal__body::-webkit-scrollbar-corner {
	background: transparent;
}
/* 外层遮罩滚动条（内容超高时） */
.lx-ta-case-modal {
	scrollbar-width: thin;
	scrollbar-color: rgba(62, 203, 255, 0.4) transparent;
}
.lx-ta-case-modal::-webkit-scrollbar {
	width: 10px;
}
.lx-ta-case-modal::-webkit-scrollbar-track {
	background: transparent;
}
.lx-ta-case-modal::-webkit-scrollbar-thumb {
	border-radius: 10px;
	background: linear-gradient(180deg, rgba(62, 203, 255, 0.55), rgba(255, 0, 170, 0.4));
	border: 2px solid transparent;
	background-clip: padding-box;
}
.lx-ta-result--modal {
	border: none;
	background: transparent;
	padding: 0;
	margin: 0;
}
.lx-ta-result--modal .lx-ta-result__head h2 {
	font-size: 15px;
}
.lx-ta-case-modal__foot {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	padding: 12px 16px 16px;
	border-top: 1px solid rgba(62, 203, 255, 0.15);
	background: rgba(6, 12, 22, 0.9);
	position: sticky;
	bottom: 0;
}
.lx-ta-case-card .lx-ta-case-view.is-loading {
	position: relative;
	pointer-events: none;
	opacity: 0.75;
}
