.dni-app{max-width:920px;margin:1.5rem auto}.dni-form,.dni-card{padding:1.25rem;border:1px solid #dcdcde;border-radius:10px;background:#fff}.dni-form label{display:block;margin-bottom:.5rem;font-weight:700}.dni-search-row{display:flex;gap:.75rem}.dni-search-row input{flex:1;min-width:0;padding:.75rem;border:1px solid #8c8f94;border-radius:6px}.dni-search-row button{padding:.75rem 1.25rem;border:0;border-radius:6px;background:#2271b1;color:#fff;font-weight:700;cursor:pointer}.dni-search-row button:disabled{opacity:.55;cursor:not-allowed}.dni-help,.dni-privacy{font-size:.875rem;color:#646970}.dni-status{min-height:1.5em;margin:.75rem 0;font-weight:600}.dni-card h2,.dni-card h3{margin-top:0}.dni-summary{display:grid;gap:0;border:1px solid #dcdcde;border-bottom:0}.dni-summary>div{display:grid;grid-template-columns:minmax(130px,220px) 1fr;border-bottom:1px solid #dcdcde}.dni-summary dt,.dni-summary dd{margin:0;padding:.65rem .8rem;overflow-wrap:anywhere}.dni-summary dt{background:#f6f7f7;font-weight:700}.dni-details{margin-top:.75rem;border:1px solid #dcdcde;border-radius:6px}.dni-details summary{padding:.7rem .85rem;cursor:pointer;font-weight:700}.dni-details pre{max-height:420px;margin:0;padding:1rem;overflow:auto;background:#f6f7f7;white-space:pre-wrap;word-break:break-word}.dni-error,.dni-warning{padding:.8rem 1rem;border-left:4px solid #d63638;background:#fcf0f1}.dni-warning{border-color:#dba617;background:#fcf9e8}@media(max-width:640px){.dni-search-row{display:block}.dni-search-row button{width:100%;margin-top:.6rem}.dni-summary>div{grid-template-columns:1fr}.dni-summary dt{border-bottom:1px solid #dcdcde}}

.dni-diagnostics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.dni-diagnostic{padding:.9rem;border-left:4px solid #dba617;background:#fcf9e8}.dni-diagnostic p{margin:.35rem 0 0}.dni-level-good{border-color:#00a32a;background:#edfaef}.dni-level-danger{border-color:#d63638;background:#fcf0f1}@media(max-width:640px){.dni-diagnostics{grid-template-columns:1fr}}
.dni-dns-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.65rem;margin-bottom:1rem}.dni-dns-card{display:grid;grid-template-columns:1fr auto;gap:.25rem .6rem;align-items:center;padding:.8rem;border:1px solid #dcdcde;border-radius:7px;background:#f6f7f7}.dni-dns-card strong{font-size:1rem}.dni-dns-card span{font-size:.85rem;color:#646970}.dni-diagnostic code{display:block;margin-top:.55rem;padding:.45rem;overflow-wrap:anywhere;background:rgba(255,255,255,.65);font-size:.78rem}
.dni-result-hero{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #dcdcde}.dni-result-hero h2{margin:.15rem 0 0;font-size:clamp(1.45rem,3vw,2rem)}.dni-result-eyebrow{margin:0;color:#646970;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}.dni-result-badge{display:inline-flex;padding:.35rem .7rem;border-radius:999px;font-size:.82rem;font-weight:700}.dni-expiry{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:.8rem;align-items:center;margin:0 0 1rem;padding:.9rem 1rem;border-left:5px solid #00a32a;background:#edfaef}.dni-expiry em{font-style:normal;font-weight:700}.dni-expiry-warning{border-color:#dba617;background:#fcf9e8}.dni-expiry-danger{border-color:#d63638;background:#fcf0f1}.dni-summary dd small{display:block;margin-top:.3rem;color:#646970;font-size:.78rem}.dni-line{display:block;margin:.15rem 0}.dni-status-list .dni-line{font-weight:600}.dni-dns-list{display:grid;gap:.75rem;margin-bottom:1rem}.dni-dns-section{border:1px solid #dcdcde;border-radius:8px;overflow:hidden}.dni-dns-heading{display:flex;justify-content:space-between;align-items:center;padding:.65rem .8rem;background:#f6f7f7}.dni-dns-heading span{color:#646970;font-size:.85rem}.dni-dns-section ul{margin:0;padding:.75rem 1rem .75rem 2rem}.dni-dns-section li{margin:.25rem 0;overflow-wrap:anywhere}@media(max-width:640px){.dni-result-hero{align-items:flex-start;flex-direction:column}.dni-expiry{grid-template-columns:1fr}.dni-result-badge{align-self:flex-start}}

.dni-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0 20px}.dni-overview-card{border:1px solid #dcdcde;border-left:4px solid #72aee6;border-radius:6px;background:#fff;padding:14px;min-width:0}.dni-overview-card.dni-level-good{border-left-color:#00a32a;background:#f0f8f1}.dni-overview-card.dni-level-warning{border-left-color:#dba617;background:#fcf9e8}.dni-overview-card.dni-level-danger{border-left-color:#d63638;background:#fcf0f1}.dni-overview-label{display:block;font-size:12px;color:#50575e;margin-bottom:6px}.dni-overview-card strong{display:block;font-size:19px;line-height:1.35;overflow-wrap:anywhere}.dni-overview-card small{display:block;margin-top:6px;color:#646970;line-height:1.5}@media(max-width:640px){.dni-overview{grid-template-columns:1fr}}


/* v1.0.0-rc.1: DNS records are collapsed by default. */
.dni-dns-card > summary,
.dni-dns-group > summary,
.dni-dns-item > summary,
.dni-dns-record > summary {
	cursor: pointer;
	list-style: disclosure-closed;
}
.dni-dns-card[open] > summary,
.dni-dns-group[open] > summary,
.dni-dns-item[open] > summary,
.dni-dns-record[open] > summary {
	list-style: disclosure-open;
}


/* DNS record groups are collapsed by default. */
.dni-dns-section > .dni-dns-heading {
	cursor: pointer;
	list-style: disclosure-closed;
}
.dni-dns-section[open] > .dni-dns-heading {
	list-style: disclosure-open;
}


/* v1.0.0-rc.2: final front-end spacing and visual polish */
.dni-wrap {
	--dni-space-1: 8px;
	--dni-space-2: 12px;
	--dni-space-3: 18px;
	--dni-space-4: 24px;
	--dni-space-5: 32px;
	--dni-radius: 12px;
	line-height: 1.7;
}

.dni-search-box,
.dni-result {
	border-radius: var(--dni-radius);
}

.dni-search-box {
	padding: 24px;
	margin-bottom: 28px;
}

.dni-search-box label {
	display: block;
	margin-bottom: 10px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
}

.dni-search-row {
	gap: 12px;
	align-items: stretch;
}

.dni-search-row input[type="text"],
.dni-search-row input[type="url"] {
	min-height: 48px;
	padding: 10px 14px;
}

.dni-search-row button {
	min-height: 48px;
	padding-inline: 22px;
}

.dni-help {
	margin-top: 8px;
	line-height: 1.6;
}

.dni-cooldown {
	margin: 0 0 18px;
	font-weight: 700;
}

.dni-result {
	padding: 24px;
}

.dni-result-header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #e3e7eb;
}

.dni-result-header h2,
.dni-result-header h3 {
	margin: 4px 0 0;
	line-height: 1.3;
	letter-spacing: .01em;
}

.dni-result-kicker {
	display: block;
	margin-bottom: 6px;
	font-size: .78rem;
	letter-spacing: .08em;
	color: #68727d;
}

.dni-summary-grid {
	gap: 14px;
	margin: 0 0 24px;
}

.dni-summary-card {
	min-height: 108px;
	padding: 16px 18px;
	border-radius: 10px;
}

.dni-summary-card__label {
	margin-bottom: 6px;
	font-size: .8rem;
	line-height: 1.5;
}

.dni-summary-card__value {
	font-size: 1.06rem;
	line-height: 1.45;
}

.dni-summary-card__meta {
	margin-top: 5px;
	line-height: 1.5;
}

.dni-domain-table {
	margin: 0 0 28px;
	border-radius: 10px;
	overflow: hidden;
}

.dni-domain-table th,
.dni-domain-table td {
	padding: 15px 16px;
	vertical-align: top;
	line-height: 1.65;
}

.dni-domain-table th {
	width: 29%;
}

.dni-domain-table small,
.dni-field-help {
	display: block;
	margin-top: 5px;
	line-height: 1.55;
}

.dni-section-title {
	margin: 30px 0 14px;
	padding-bottom: 9px;
	border-bottom: 2px solid #eef1f3;
	font-size: 1.28rem;
	line-height: 1.4;
}

.dni-mail-grid {
	gap: 14px;
	margin-bottom: 28px;
}

.dni-mail-card {
	padding: 18px;
	border-radius: 10px;
}

.dni-mail-card strong {
	display: block;
	margin-bottom: 8px;
}

.dni-mail-card p {
	margin: 0 0 8px;
	line-height: 1.65;
}

.dni-mail-card code,
.dni-mail-card pre {
	display: block;
	margin-top: 10px;
	padding: 10px 12px;
	border-radius: 6px;
	white-space: pre-wrap;
	overflow-wrap: anywhere;
	line-height: 1.55;
}

.dni-dns-list {
	display: grid;
	gap: 10px;
	margin-top: 12px;
}

.dni-dns-section,
.dni-raw-details {
	margin: 0;
	border-radius: 8px;
	overflow: hidden;
}

.dni-dns-heading,
.dni-raw-details > summary {
	min-height: 46px;
	padding: 12px 14px;
	align-items: center;
	line-height: 1.5;
}

.dni-dns-heading strong {
	letter-spacing: .01em;
}

.dni-dns-section > ul {
	margin: 0;
	padding: 14px 18px 16px 34px;
	background: #fff;
}

.dni-dns-section > ul li + li {
	margin-top: 7px;
}

.dni-raw-list {
	display: grid;
	gap: 10px;
	margin-top: 14px;
}

.dni-raw-details pre {
	margin: 0;
	padding: 14px;
	line-height: 1.55;
	overflow-x: auto;
}

.dni-notice,
.dni-warning {
	margin: 16px 0 22px;
	padding: 14px 16px;
	line-height: 1.65;
	border-radius: 8px;
}

.dni-privacy-note {
	margin-top: 14px;
	line-height: 1.65;
	color: #616b74;
}

@media (max-width: 782px) {
	.dni-search-box,
	.dni-result {
		padding: 18px;
	}

	.dni-result-header {
		flex-direction: column;
		gap: 12px;
	}

	.dni-search-row {
		flex-direction: column;
	}

	.dni-search-row button {
		width: 100%;
	}

	.dni-domain-table,
	.dni-domain-table tbody,
	.dni-domain-table tr,
	.dni-domain-table th,
	.dni-domain-table td {
		display: block;
		width: 100%;
	}

	.dni-domain-table tr {
		border-bottom: 1px solid #e3e7eb;
	}

	.dni-domain-table th {
		padding-bottom: 6px;
		border-bottom: 0;
	}

	.dni-domain-table td {
		padding-top: 4px;
	}

	.dni-section-title {
		margin-top: 24px;
		font-size: 1.16rem;
	}

	.dni-summary-card {
		min-height: auto;
	}
}

@media (max-width: 480px) {
	.dni-wrap {
		--dni-space-4: 20px;
	}

	.dni-search-box,
	.dni-result {
		padding: 15px;
		border-radius: 10px;
	}

	.dni-domain-table th,
	.dni-domain-table td {
		padding-left: 12px;
		padding-right: 12px;
	}

	.dni-dns-heading,
	.dni-raw-details > summary {
		padding: 11px 12px;
	}
}
.dni-provider-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.dni-provider-link{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:6px;background:#1d4ed8;color:#fff!important;text-decoration:none;font-weight:600}.dni-provider-link:hover{opacity:.9;color:#fff!important}
