/* Email Checker — layout only; colors/buttons/cards/fields/badges come from shared/css/free-tools-shared.css. */

.ec {
	display: flex;
	flex-direction: column;
	gap: var(--ft-space-5);
}

.ec__intro {
	margin: 0;
	color: var(--ft-color-text-muted);
	max-width: 60ch;
}

.ec__tabs {
	border: none;
}

.ec__tab[aria-selected="true"] {
	background: var(--ft-color-primary);
	border-color: var(--ft-color-primary);
	color: var(--ft-color-primary-contrast);
}

.ec__panel {
	display: flex;
	flex-direction: column;
	gap: var(--ft-space-3);
}

.ec__single-result {
	border-top: 1px solid var(--ft-color-border);
	padding-top: var(--ft-space-3);
	display: flex;
	flex-direction: column;
	gap: var(--ft-space-2);
}

.ec__single-result dl {
	display: grid;
	grid-template-columns: max-content 1fr;
	gap: var(--ft-space-1) var(--ft-space-3);
	margin: 0;
}
.ec__single-result dt { font-weight: 600; color: var(--ft-color-text-muted); }
.ec__single-result dd { margin: 0; }

.ec__progress {
	font-weight: 600;
}

.ec__results {
	display: flex;
	flex-direction: column;
	gap: var(--ft-space-4);
}

.ec__summary {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	gap: var(--ft-space-3);
}

.ec__summary-card {
	background: var(--ft-color-surface);
	border: 1px solid var(--ft-color-border);
	border-radius: var(--ft-radius-md);
	padding: var(--ft-space-3) var(--ft-space-4);
	text-align: center;
}
.ec__summary-card__value { display: block; font-size: 1.5rem; font-weight: 700; line-height: 1.2; }
.ec__summary-card__label { display: block; font-size: 0.8125rem; color: var(--ft-color-text-muted); margin-top: 2px; }

.ec__summary-card--delivery_unknown .ec__summary-card__value { color: var(--ft-color-success); }
.ec__summary-card--invalid .ec__summary-card__value,
.ec__summary-card--no_mx .ec__summary-card__value { color: var(--ft-color-danger); }
.ec__summary-card--disposable .ec__summary-card__value,
.ec__summary-card--role_account .ec__summary-card__value,
.ec__summary-card--typo_suspected .ec__summary-card__value { color: var(--ft-color-warning); }

.ec__filters { border: none; }
.ec__filter-btn[aria-pressed="true"] {
	background: var(--ft-color-primary);
	border-color: var(--ft-color-primary);
	color: var(--ft-color-primary-contrast);
}

.ec__table-wrap {
	overflow-x: auto;
	border: 1px solid var(--ft-color-border);
	border-radius: var(--ft-radius-md);
	max-height: 640px;
	overflow-y: auto;
}
.ec__table { width: 100%; border-collapse: collapse; font-size: 0.875rem; min-width: 720px; }
.ec__table th, .ec__table td {
	text-align: left;
	padding: var(--ft-space-2) var(--ft-space-3);
	border-bottom: 1px solid var(--ft-color-border);
	vertical-align: top;
}
.ec__table th { background: var(--ft-color-surface); font-weight: 600; white-space: nowrap; position: sticky; top: 0; }
.ec__table td.ec__cell-email { max-width: 260px; word-break: break-all; }
.ec__table tbody tr:last-child td { border-bottom: none; }

@media (max-width: 640px) {
	.ec__table-wrap { border: none; }
	.ec__table, .ec__table thead, .ec__table tbody, .ec__table th, .ec__table td, .ec__table tr { display: block; width: 100%; }
	.ec__table thead { position: absolute; left: -9999px; }
	.ec__table tr { border: 1px solid var(--ft-color-border); border-radius: var(--ft-radius-md); margin-bottom: var(--ft-space-3); padding: var(--ft-space-3); }
	.ec__table td { border-bottom: none; padding: var(--ft-space-1) 0; }
	.ec__table td::before {
		content: attr(data-label);
		display: block;
		font-weight: 600;
		font-size: 0.75rem;
		color: var(--ft-color-text-muted);
		margin-bottom: 2px;
	}
}
