/* 域名优惠码筛选器 /domains/filter */
.domain-chooser,
.domain-chooser * { box-sizing: border-box; max-width: 100%; }

.domain-intro {
	margin: 0 0 16px;
	line-height: 1.7;
	color: #444;
	font-size: 14px;
}

/* SEO 兜底表格：默认显示（无 JS 用户/爬虫可见），JS 启用后隐藏 */
.domain-fallback { margin-bottom: 18px; overflow-x: auto; }
.domain-fallback table { width: 100%; border-collapse: collapse; font-size: 13px; }
.domain-fallback th,
.domain-fallback td { border: 1px solid #e5e5e5; padding: 8px 10px; text-align: left; }
.domain-fallback th { background: #f7f7f7; }

/* 筛选区：位于内容上方 */
.dc-filters {
	border: 1px solid #e5e5e5;
	border-radius: 10px;
	padding: 14px;
	margin-bottom: 16px;
	background: #fafafa;
}
.dc-row-top {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	margin-bottom: 14px;
}
.dc-types { display: flex; gap: 6px; }
.dc-chip {
	padding: 6px 16px;
	border: 1px solid #cbd5e1;
	background: #fff;
	border-radius: 20px;
	cursor: pointer;
	font-size: 13px;
	color: #334155;
	transition: all .15s ease;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.dc-chip:hover { border-color: #2684e1; }
.dc-chip.active[data-type="register"] { background: #16a34a; color: #fff; border-color: transparent; }
.dc-chip.active[data-type="renew"] { background: #d97706; color: #fff; border-color: transparent; }
.dc-chip.active[data-type="transfer"] { background: #7c3aed; color: #fff; border-color: transparent; }
.dc-search-wrap {
	position: relative;
	flex: 1 1 200px;
	min-width: 160px;
	display: inline-flex;
	align-items: center;
}
.dc-search-wrap .dc-icon {
	position: absolute;
	left: 10px;
	color: #94a3b8;
	pointer-events: none;
}
.dc-search-wrap .dc-search {
	width: 100%;
	padding: 8px 12px 8px 34px;
	border: 1px solid #cbd5e1;
	border-radius: 6px;
	font-size: 14px;
	-webkit-appearance: none;
	appearance: none;
}
.dc-sort {
	padding: 8px 10px;
	border: 1px solid #cbd5e1;
	border-radius: 6px;
	font-size: 13px;
	background: #fff;
}
.dc-view,
.dc-reset {
	padding: 8px 14px;
	border: 1px solid #cbd5e1;
	background: #fff;
	border-radius: 6px;
	cursor: pointer;
	font-size: 13px;
	color: #334155;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.dc-icon,
.dc-icon svg {
	width: 1em;
	height: 1em;
	display: inline-block;
	flex: 0 0 auto;
}
.dc-view.active {
	background: var(--global-color-14, #2684e1);
	color: #fff;
	border-color: transparent;
}

.dc-row-facets { display: flex; gap: 20px; flex-wrap: wrap; }
.dc-facet { flex: 1 1 280px; min-width: 240px; }
.dc-facet h4 { margin: 0 0 6px; font-size: 13px; color: #555; }
.dc-box {
	max-height: 170px;
	overflow: auto;
	border: 1px solid #e5e5e5;
	border-radius: 6px;
	padding: 8px 10px;
	background: #fff;
	display: flex;
	flex-wrap: wrap;
	gap: 4px 12px;
}
.dc-chk { font-size: 13px; display: flex; align-items: center; gap: 4px; cursor: pointer; }

.dc-summary { margin: 4px 0 12px; color: #666; font-size: 13px; }
.dc-empty { color: #888; padding: 30px; text-align: center; }

/* 卡片网格 */
.dc-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
}
.dc-card {
	border: 1px solid #e5e5e5;
	border-radius: 10px;
	padding: 14px;
	background: #fff;
	transition: box-shadow .15s ease;
}
.dc-card:hover { box-shadow: 0 4px 14px rgba(0,0,0,.08); border-color: #aa9d88; }
.dc-card-head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 6px; }
.dc-reg { font-weight: 700; font-size: 14px; }
.dc-tld {
	background: #eef4ff;
	color: #2684e1;
	padding: 1px 9px;
	border-radius: 10px;
	font-size: 12px;
	font-weight: 600;
}
.dc-type { font-size: 11px; padding: 1px 9px; border-radius: 10px; color: #fff; margin-left: auto; }
.dc-type-register { background: #16a34a; }
.dc-type-renew { background: #d97706; }
.dc-type-transfer { background: #7c3aed; }
.dc-price { font-size: 22px; font-weight: 700; color: #aa9d88; margin: 4px 0; }
.dc-unit { font-size: 12px; color: #888; font-weight: 400; margin-left: 2px; }
.dc-code { font-size: 13px; margin: 6px 0; }
.dc-code code { background: #f3f4f6; padding: 2px 7px; border-radius: 4px; font-weight: 700; color: #b91c1c; }
.dc-copy {
	margin-left: 4px;
	padding: 2px 8px;
	border: 1px solid #cbd5e1;
	background: #fff;
	border-radius: 4px;
	cursor: pointer;
	font-size: 12px;
	color: #2684e1;
}
.dc-copy:hover { background: #2684e1; color: #fff; border-color: transparent; }
.dc-limit, .dc-valid { font-size: 12px; color: #888; margin: 2px 0; }
.dc-card .dc-btn {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-top: 8px;
	background: var(--global-color-14, #2684e1);
	color: #fff;
	padding: 4px 14px;
	border-radius: 6px;
	text-decoration: none;
	font-size: 13px;
	font-weight: 600;
}
.dc-card .dc-btn .dc-arrow { width: 14px; height: 14px; display: inline-block; flex: none; }
.dc-card .dc-btn .dc-arrow svg { width: 100%; height: 100%; display: block; }
.dc-card .dc-btn:hover { color: #fff; background: var(--global-color-8, #1c6fc4); }

/* 表格（列表）模式：前往链接同样为蓝色按钮、白字、新窗口打开 */
.dc-table .dc-go {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	background: var(--global-color-14, #2684e1);
	color: #fff;
	padding: 4px 12px;
	border-radius: 6px;
	text-decoration: none;
	font-size: 13px;
	font-weight: 600;
}
.dc-table .dc-go .dc-arrow { width: 13px; height: 13px; display: inline-block; flex: none; }
.dc-table .dc-go .dc-arrow svg { width: 100%; height: 100%; display: block; }
.dc-table .dc-go:hover { color: #fff; background: var(--global-color-8, #1c6fc4); }

/* 优惠码点击复制 */
.dc-code-val { cursor: pointer; user-select: all; }
.dc-code-val:hover { text-decoration: underline; }
.dc-code-val.dc-copied { background: #dcfce7; color: #15803d; }

/* 表格视图 */
.dc-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.dc-tbl-price { color: #aa9d88; font-weight: 700; }
.dc-table th, .dc-table td { border: 1px solid #e5e5e5; padding: 8px 10px; text-align: left; }
.dc-table th { background: #f7f7f7; }
.dc-table .dc-idx { width: 48px; text-align: center; color: #888; font-weight: 600; }
.dc-table .dc-reg-link { color: var(--global-color-14, #2684e1); text-decoration: none; font-weight: 600; }
.dc-table .dc-reg-link:hover { text-decoration: underline; }

@media (max-width: 900px) {
	.dc-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
	.dc-grid { grid-template-columns: 1fr; }
	.dc-row-facets { flex-direction: column; }
	.dc-row-top { gap: 8px; }
}
