.pst-tc {
	--pst-accent: #1a56db;
	--pst-accent-dark: #1442a8;
	--pst-text: #111827;
	--pst-muted: #6b7280;
	--pst-border: #e5e7eb;
	--pst-bg: #ffffff;
	--pst-soft: #f3f6fd;
	--pst-error: #b91c1c;
	max-width: 760px;
	margin: 24px auto;
	padding: 24px;
	background: var(--pst-bg);
	border: 1px solid var(--pst-border);
	border-radius: 14px;
	color: var(--pst-text);
	font-family: inherit;
	box-sizing: border-box;
}
.pst-tc *, .pst-tc *::before, .pst-tc *::after { box-sizing: border-box; }

.pst-tc__label { display: block; font-weight: 600; margin-bottom: 8px; }
.pst-tc__row { display: flex; gap: 8px; flex-wrap: wrap; }
.pst-tc__input, .pst-tc__select {
	height: 48px;
	padding: 0 14px;
	font-size: 16px;
	border: 1px solid var(--pst-border);
	border-radius: 10px;
	background: #fff;
	color: var(--pst-text);
}
.pst-tc__input { flex: 1 1 240px; min-width: 0; }
.pst-tc__select { flex: 0 1 200px; }
.pst-tc__input:focus, .pst-tc__select:focus {
	outline: none;
	border-color: var(--pst-accent);
	box-shadow: 0 0 0 3px rgba(26, 86, 219, .18);
}
.pst-tc__btn {
	height: 48px;
	padding: 0 22px;
	font-size: 16px;
	font-weight: 600;
	color: #fff;
	background: var(--pst-accent);
	border: 0;
	border-radius: 10px;
	cursor: pointer;
}
.pst-tc__btn:hover { background: var(--pst-accent-dark); }
.pst-tc__btn:disabled { opacity: .65; cursor: wait; }

.pst-tc__status { margin-top: 12px; min-height: 1.2em; color: var(--pst-muted); }
.pst-tc__status.is-error { color: var(--pst-error); }

.pst-tc__result { margin-top: 20px; }
.pst-tc__domain { margin: 0; font-size: 22px; word-break: break-all; }
.pst-tc__scope { margin: 4px 0 16px; color: var(--pst-muted); font-size: 14px; }

.pst-tc__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 10px;
}
.pst-tc__card {
	background: var(--pst-soft);
	border-radius: 10px;
	padding: 14px;
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.pst-tc__value { font-size: 24px; font-weight: 700; color: var(--pst-accent-dark); }
.pst-tc__mlabel { font-size: 13px; color: var(--pst-muted); }

.pst-tc__htitle { margin: 24px 0 10px; font-size: 16px; }
.pst-tc__chart {
	display: flex;
	align-items: flex-end;
	gap: 6px;
	height: 200px;
	padding-top: 8px;
	border-bottom: 1px solid var(--pst-border);
	overflow-x: auto;
}
.pst-tc__bar {
	flex: 1 0 36px;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
}
.pst-tc__fill {
	width: 70%;
	max-width: 44px;
	background: var(--pst-accent);
	border-radius: 6px 6px 0 0;
}
.pst-tc__barval { font-size: 11px; color: var(--pst-muted); margin-bottom: 4px; }
.pst-tc__barlab { font-size: 11px; color: var(--pst-muted); margin-top: 6px; white-space: nowrap; }

.pst-tc__note { margin-top: 16px; font-size: 12px; color: var(--pst-muted); }

@media (max-width: 480px) {
	.pst-tc { padding: 16px; }
	.pst-tc__btn, .pst-tc__select { flex: 1 1 100%; }
	.pst-tc__value { font-size: 20px; }
}

.pst-tc__value:not(:empty) { word-break: break-word; }
.pst-tc__value.is-text { font-size: 17px; line-height: 1.3; }
